1 2 set_property(GLOBAL PROPERTY EIGEN_CURRENT_SUBPROJECT "Unsupported") 3 add_custom_target(BuildUnsupported) 4 5 include_directories(../../test ../../unsupported ../../Eigen 6 ${CMAKE_CURRENT_BINARY_DIR}/../../test) 7 8 find_package(GoogleHash) 9 if(GOOGLEHASH_FOUND) 10 add_definitions("-DEIGEN_GOOGLEHASH_SUPPORT") 11 include_directories(${GOOGLEHASH_INCLUDES}) 12 ei_add_property(EIGEN_TESTED_BACKENDS "GoogleHash, ") 13 else(GOOGLEHASH_FOUND) 14 ei_add_property(EIGEN_MISSING_BACKENDS "GoogleHash, ") 15 endif(GOOGLEHASH_FOUND) 16 17 find_package(Adolc) 18 if(ADOLC_FOUND) 19 include_directories(${ADOLC_INCLUDES}) 20 ei_add_property(EIGEN_TESTED_BACKENDS "Adolc, ") 21 ei_add_test(forward_adolc "" ${ADOLC_LIBRARIES}) 22 else(ADOLC_FOUND) 23 ei_add_property(EIGEN_MISSING_BACKENDS "Adolc, ") 24 endif(ADOLC_FOUND) 25 26 # this test seems to never have been successful on x87, so is considered to contain a FP-related bug. 27 # see thread: "non-linear optimization test summary" 28 ei_add_test(NonLinearOptimization) 29 30 ei_add_test(NumericalDiff) 31 ei_add_test(autodiff) 32 33 if (NOT CMAKE_CXX_COMPILER MATCHES "clang\\+\\+$") 34 ei_add_test(BVH) 35 endif() 36 37 ei_add_test(matrix_exponential) 38 ei_add_test(matrix_function) 39 ei_add_test(matrix_power) 40 ei_add_test(matrix_square_root) 41 ei_add_test(alignedvector3) 42 ei_add_test(FFT) 43 44 find_package(MPFR 2.3.0) 45 find_package(GMP) 46 if(MPFR_FOUND) 47 include_directories(${MPFR_INCLUDES} ./mpreal) 48 ei_add_property(EIGEN_TESTED_BACKENDS "MPFR C++, ") 49 set(EIGEN_MPFR_TEST_LIBRARIES ${MPFR_LIBRARIES} ${GMP_LIBRARIES}) 50 ei_add_test(mpreal_support "" "${EIGEN_MPFR_TEST_LIBRARIES}" ) 51 else() 52 ei_add_property(EIGEN_MISSING_BACKENDS "MPFR C++, ") 53 endif() 54 55 ei_add_test(sparse_extra "" "") 56 57 find_package(FFTW) 58 if(FFTW_FOUND) 59 ei_add_property(EIGEN_TESTED_BACKENDS "fftw, ") 60 include_directories( ${FFTW_INCLUDES} ) 61 if(FFTWL_LIB) 62 ei_add_test(FFTW "-DEIGEN_FFTW_DEFAULT -DEIGEN_HAS_FFTWL" "${FFTW_LIBRARIES}" ) 63 else() 64 ei_add_test(FFTW "-DEIGEN_FFTW_DEFAULT" "${FFTW_LIBRARIES}" ) 65 endif() 66 else() 67 ei_add_property(EIGEN_MISSING_BACKENDS "fftw, ") 68 endif() 69 70 option(EIGEN_TEST_NO_OPENGL "Disable OpenGL support in unit tests" OFF) 71 if(NOT EIGEN_TEST_NO_OPENGL) 72 find_package(OpenGL) 73 find_package(GLUT) 74 find_package(GLEW) 75 if(OPENGL_FOUND AND GLUT_FOUND AND GLEW_FOUND) 76 ei_add_property(EIGEN_TESTED_BACKENDS "OpenGL, ") 77 set(EIGEN_GL_LIB ${GLUT_LIBRARIES} ${GLEW_LIBRARIES}) 78 ei_add_test(openglsupport "" "${EIGEN_GL_LIB}" ) 79 else() 80 ei_add_property(EIGEN_MISSING_BACKENDS "OpenGL, ") 81 endif() 82 else() 83 ei_add_property(EIGEN_MISSING_BACKENDS "OpenGL, ") 84 endif() 85 86 ei_add_test(polynomialsolver) 87 ei_add_test(polynomialutils) 88 ei_add_test(kronecker_product) 89 ei_add_test(splines) 90 ei_add_test(gmres) 91 ei_add_test(minres) 92 ei_add_test(levenberg_marquardt) 93 ei_add_test(bdcsvd) 94