You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

93 lines
2.7 KiB

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