diff options
Diffstat (limited to 'test/eigen2/CMakeLists.txt')
-rw-r--r-- | test/eigen2/CMakeLists.txt | 174 |
1 files changed, 50 insertions, 124 deletions
diff --git a/test/eigen2/CMakeLists.txt b/test/eigen2/CMakeLists.txt index 9b128396f..45b0bbd84 100644 --- a/test/eigen2/CMakeLists.txt +++ b/test/eigen2/CMakeLists.txt @@ -1,132 +1,58 @@ -add_custom_target(buildtests_eigen2) -add_custom_target(check_eigen2 COMMAND "ctest") -add_dependencies(check_eigen2 buildtests_eigen2) +add_custom_target(eigen2_buildtests) +add_custom_target(eigen2_check COMMAND "ctest -R eigen2") +add_dependencies(eigen2_check eigen2_buildtests) +add_dependencies(buildtests eigen2_buildtests) add_definitions("-DEIGEN2_SUPPORT_STAGE10_FULL_EIGEN2_API") -# Macro to add a test -# -# the unique parameter testname must correspond to a file -# <testname>.cpp which follows this pattern: -# -# #include "main.h" -# void test_<testname>() { ... } -# -# this macro add an executable test_<testname> as well as a ctest test -# named <testname> -# -# On platforms with bash simply run: -# "ctest -V" or "ctest -V -R <testname>" -# On other platform use ctest as usual -# -macro(ei_add_test_eigen2 testname) - - set(targetname test_eigen2_${testname}) - - set(filename ${testname}.cpp) - add_executable(${targetname} ${filename}) - add_dependencies(buildtests_eigen2 ${targetname}) - - if(NOT EIGEN_NO_ASSERTION_CHECKING) - - if(MSVC) - set_target_properties(${targetname} PROPERTIES COMPILE_FLAGS "/EHsc") - else(MSVC) - set_target_properties(${targetname} PROPERTIES COMPILE_FLAGS "-fexceptions") - endif(MSVC) - - option(EIGEN_DEBUG_ASSERTS "Enable debuging of assertions" OFF) - if(EIGEN_DEBUG_ASSERTS) - set_target_properties(${targetname} PROPERTIES COMPILE_DEFINITIONS "EIGEN_DEBUG_ASSERTS=1") - endif(EIGEN_DEBUG_ASSERTS) - - endif(NOT EIGEN_NO_ASSERTION_CHECKING) - - if(${ARGC} GREATER 1) - ei_add_target_property(${targetname} COMPILE_FLAGS "${ARGV1}") - endif(${ARGC} GREATER 1) - - ei_add_target_property(${targetname} COMPILE_FLAGS "-DEIGEN_TEST_FUNC=${testname}") - - if(TEST_LIB) - target_link_libraries(${targetname} Eigen2) - endif(TEST_LIB) - - if(EIGEN_STANDARD_LIBRARIES_TO_LINK_TO) - target_link_libraries(${targetname} ${EIGEN_STANDARD_LIBRARIES_TO_LINK_TO}) - endif() - - target_link_libraries(${targetname} ${EXTERNAL_LIBS}) - if(${ARGC} GREATER 2) - string(STRIP "${ARGV2}" ARGV2_stripped) - string(LENGTH "${ARGV2_stripped}" ARGV2_stripped_length) - if(${ARGV2_stripped_length} GREATER 0) - target_link_libraries(${targetname} ${ARGV2}) - endif(${ARGV2_stripped_length} GREATER 0) - endif(${ARGC} GREATER 2) - - if(WIN32) - add_test(${testname} "${targetname}") - else(WIN32) - add_test(${testname} "${CMAKE_CURRENT_SOURCE_DIR}/runtest.sh" "${testname}") - endif(WIN32) - -endmacro(ei_add_test_eigen2) - -enable_testing() - -if(TEST_LIB) - add_definitions("-DEIGEN_EXTERN_INSTANTIATIONS=1") -endif(TEST_LIB) - -ei_add_test_eigen2(meta) -ei_add_test_eigen2(sizeof) -ei_add_test_eigen2(dynalloc) -ei_add_test_eigen2(nomalloc) -ei_add_test_eigen2(first_aligned) -ei_add_test_eigen2(mixingtypes) -ei_add_test_eigen2(packetmath) -ei_add_test_eigen2(unalignedassert) -#ei_add_test_eigen2(vectorization_logic) -ei_add_test_eigen2(basicstuff) -ei_add_test_eigen2(linearstructure) -ei_add_test_eigen2(cwiseop) -ei_add_test_eigen2(sum) -ei_add_test_eigen2(product_small) -ei_add_test_eigen2(product_large ${EI_OFLAG}) -ei_add_test_eigen2(adjoint) -ei_add_test_eigen2(submatrices) -ei_add_test_eigen2(miscmatrices) -ei_add_test_eigen2(commainitializer) -ei_add_test_eigen2(smallvectors) -ei_add_test_eigen2(map) -ei_add_test_eigen2(array) -ei_add_test_eigen2(triangular) -ei_add_test_eigen2(cholesky " " "${GSL_LIBRARIES}") -ei_add_test_eigen2(lu ${EI_OFLAG}) -ei_add_test_eigen2(determinant ${EI_OFLAG}) -ei_add_test_eigen2(inverse) -ei_add_test_eigen2(qr) -ei_add_test_eigen2(eigensolver " " "${GSL_LIBRARIES}") -ei_add_test_eigen2(svd) -ei_add_test_eigen2(geometry) -ei_add_test_eigen2(hyperplane) -ei_add_test_eigen2(parametrizedline) -ei_add_test_eigen2(alignedbox) -ei_add_test_eigen2(regression) -ei_add_test_eigen2(stdvector) -ei_add_test_eigen2(newstdvector) +ei_add_test(eigen2_meta) +ei_add_test(eigen2_sizeof) +ei_add_test(eigen2_dynalloc) +ei_add_test(eigen2_nomalloc) +#ei_add_test(eigen2_first_aligned) +ei_add_test(eigen2_mixingtypes) +ei_add_test(eigen2_packetmath) +ei_add_test(eigen2_unalignedassert) +#ei_add_test(eigen2_vectorization_logic) +ei_add_test(eigen2_basicstuff) +ei_add_test(eigen2_linearstructure) +ei_add_test(eigen2_cwiseop) +ei_add_test(eigen2_sum) +ei_add_test(eigen2_product_small) +ei_add_test(eigen2_product_large ${EI_OFLAG}) +ei_add_test(eigen2_adjoint) +ei_add_test(eigen2_submatrices) +ei_add_test(eigen2_miscmatrices) +ei_add_test(eigen2_commainitializer) +ei_add_test(eigen2_smallvectors) +ei_add_test(eigen2_map) +ei_add_test(eigen2_array) +ei_add_test(eigen2_triangular) +ei_add_test(eigen2_cholesky " " "${GSL_LIBRARIES}") +ei_add_test(eigen2_lu ${EI_OFLAG}) +ei_add_test(eigen2_determinant ${EI_OFLAG}) +ei_add_test(eigen2_inverse) +ei_add_test(eigen2_qr) +ei_add_test(eigen2_eigensolver " " "${GSL_LIBRARIES}") +ei_add_test(eigen2_svd) +ei_add_test(eigen2_geometry) +ei_add_test(eigen2_hyperplane) +ei_add_test(eigen2_parametrizedline) +ei_add_test(eigen2_alignedbox) +ei_add_test(eigen2_regression) +ei_add_test(eigen2_stdvector) +ei_add_test(eigen2_newstdvector) if(QT4_FOUND) - ei_add_test_eigen2(qtvector " " "${QT_QTCORE_LIBRARY}") + ei_add_test(eigen2_qtvector " " "${QT_QTCORE_LIBRARY}") endif(QT4_FOUND) if(NOT EIGEN_DEFAULT_TO_ROW_MAJOR) - ei_add_test_eigen2(sparse_vector) - ei_add_test_eigen2(sparse_basic) - ei_add_test_eigen2(sparse_solvers " " "${SPARSE_LIBS}") - ei_add_test_eigen2(sparse_product) + ei_add_test(eigen2_sparse_vector) + ei_add_test(eigen2_sparse_basic) + ei_add_test(eigen2_sparse_solvers " " "${SPARSE_LIBS}") + ei_add_test(eigen2_sparse_product) endif() -ei_add_test_eigen2(swap) -ei_add_test_eigen2(visitor) -ei_add_test_eigen2(bug_132) +ei_add_test(eigen2_swap) +ei_add_test(eigen2_visitor) +ei_add_test(eigen2_bug_132) -ei_add_test_eigen2(prec_inverse_4x4 ${EI_OFLAG}) +ei_add_test(eigen2_prec_inverse_4x4 ${EI_OFLAG}) |