# List of tests that will be build and run during Eigen's smoke testing. If one
# of these tests doesn't exists or cannot be build with the current configuration
# it will just be skipped.
set(ei_smoke_test_list
  adjoint_1
  alignedvector3
  array_cwise_7
  array_cwise_8
  array_for_matrix_1
  array_of_string
  array_replicate_1
  array_reverse_1
  autodiff_1
  autodiff_scalar_1
  bandmatrix
  bdcsvd_9
  bessel_functions_1
  bfloat16_float
  blasutil_1
  block_5
  BVH
  cholesky_1
  cholmod_support_23
  cholmod_support_24
  conservative_resize_1
  constructor_1
  corners_1
  ctorleakmiscmatrices_4
  dense_storage
  determinant_1
  diagonal_1
  diagonal_2
  diagonalmatrices_1
  dynalloc
  eigensolver_complex_1
  eigensolver_selfadjoint_8
  EulerAngles_1
  exceptions
  fastmath
  first_aligned
  geo_alignedbox_2
  geo_eulerangles_1
  geo_homogeneous_1
  geo_hyperplane_1
  geo_orthomethods_1
  geo_parametrizedline_1
  geo_transformations_7
  half_float
  hessenberg_1
  hessenberg_6qr_10
  householder_8
  indexed_view_1
  inplace_decomposition_1
  integer_types_1
  inverse_1
  is_same_dense
  jacobi_1
  jacobisvd_1
  kronecker_product
  linearstructure_1
  mapped_matrix_1
  mapstaticmethods_1
  mapstride_1
  unaryviewstride_1
  unaryviewstride_2
  unaryviewstride_3
  matrix_square_root_1
  meta
  minres_2
  miscmatrices_1
  mixingtypes_7
  nestbyvalue
  nesting_ops_1
  nomalloc_1
  nullary_1
  num_dimensions
  NumericalDiff
  numext
  packetmath
  permutationmatrices_1
  polynomialsolver_1
  prec_inverse_4x4_1
  product_extra_5
  product_selfadjoint_1
  product_small_7
  product_symm_1
  product_syrk_1
  product_trmm_1
  product_trmv_1
  product_trsolve_5
  qr_1
  qr_colpivoting_7
  qr_fullpivoting_4
  rand_1
  real_qz_1
  redux_1
  ref_1
  resize
  rvalue_types_1
  schur_complex_1
  schur_real_1
  selfadjoint_1
  sizeof
  sizeoverflow
  smallvectors
  sparse_basic_1
  sparse_basic_3
  sparse_block_1
  sparse_extra_4
  sparse_permutations_2
  sparse_product_4
  sparse_ref_1
  sparse_solvers_1
  sparse_vector_1
  special_functions_1
  special_numbers_1
  special_packetmath_1
  spqr_support_2
  stable_norm_1
  stddeque_1
  stddeque_overload_1
  stdlist_1
  stdlist_overload_1
  stdvector_1
  stdvector_overload_1
  stl_iterators_1
  swap_1
  symbolic_index_1
  triangular_1
  type_aliaslu_9
  umeyama_3
  unalignedassert
  unalignedcount
  vectorwiseop_1
  visitor_1
  vectorization_logic_1)
