add a clean configuration summary for the unit tests (useful to analyze the dashboards)
diff --git a/test/CMakeLists.txt b/test/CMakeLists.txt
index 723885e..bc9a5ca 100644
--- a/test/CMakeLists.txt
+++ b/test/CMakeLists.txt
@@ -7,14 +7,17 @@
endif(GSL_FOUND)
set(SPARSE_LIBS "")
+set(EIGEN_TESTED_BACKENDS "")
+set(EIGEN_MISSING_BACKENDS "")
find_package(Taucs)
if(TAUCS_FOUND)
add_definitions("-DEIGEN_TAUCS_SUPPORT")
include_directories(${TAUCS_INCLUDES})
set(SPARSE_LIBS ${SPARSE_LIBS} ${TAUCS_LIBRARIES})
+ set(EIGEN_TESTED_BACKENDS ${EIGEN_TESTED_BACKENDS} Taucs)
else(TAUCS_FOUND)
- message("TAUCS not found, this optional backend won't be tested")
+ set(EIGEN_MISSING_BACKENDS ${EIGEN_MISSING_BACKENDS} Taucs)
endif(TAUCS_FOUND)
find_package(Cholmod)
@@ -22,8 +25,9 @@
add_definitions("-DEIGEN_CHOLMOD_SUPPORT")
include_directories(${CHOLMOD_INCLUDES})
set(SPARSE_LIBS ${SPARSE_LIBS} ${CHOLMOD_LIBRARIES})
+ set(EIGEN_TESTED_BACKENDS ${EIGEN_TESTED_BACKENDS} Cholmod)
else(CHOLMOD_FOUND)
- message("CHOLMOD not found, this optional backend won't be tested")
+ set(EIGEN_MISSING_BACKENDS ${EIGEN_MISSING_BACKENDS} Cholmod)
endif(CHOLMOD_FOUND)
option(EIGEN_TEST_NO_FORTRAN "Disable Fortran" OFF)
@@ -36,8 +40,9 @@
add_definitions("-DEIGEN_UMFPACK_SUPPORT")
include_directories(${UMFPACK_INCLUDES})
set(SPARSE_LIBS ${SPARSE_LIBS} ${UMFPACK_LIBRARIES})
+ set(EIGEN_TESTED_BACKENDS ${EIGEN_TESTED_BACKENDS} UmfPack)
else(UMFPACK_FOUND)
- message("UMFPACK not found, this optional backend won't be tested")
+ set(EIGEN_MISSING_BACKENDS ${EIGEN_MISSING_BACKENDS} UmfPack)
endif(UMFPACK_FOUND)
find_package(SuperLU)
@@ -45,16 +50,18 @@
add_definitions("-DEIGEN_SUPERLU_SUPPORT")
include_directories(${SUPERLU_INCLUDES})
set(SPARSE_LIBS ${SPARSE_LIBS} ${SUPERLU_LIBRARIES})
+ set(EIGEN_TESTED_BACKENDS ${EIGEN_TESTED_BACKENDS} SuperLU)
else(SUPERLU_FOUND)
- message("SUPERLU not found, this optional backend won't be tested")
+ set(EIGEN_MISSING_BACKENDS ${EIGEN_MISSING_BACKENDS} SuperLU)
endif(SUPERLU_FOUND)
find_package(GoogleHash)
if(GOOGLEHASH_FOUND)
add_definitions("-DEIGEN_GOOGLEHASH_SUPPORT")
include_directories(${GOOGLEHASH_INCLUDES})
+ set(EIGEN_TESTED_BACKENDS ${EIGEN_TESTED_BACKENDS} GoogleHash)
else(GOOGLEHASH_FOUND)
- message("Google's hash library not found, those map implementations won't be tested")
+ set(EIGEN_MISSING_BACKENDS ${EIGEN_MISSING_BACKENDS} GoogleHash)
endif(GOOGLEHASH_FOUND)
if(CMAKE_COMPILER_IS_GNUCXX)
@@ -191,3 +198,56 @@
ei_add_test(sparse_basic)
ei_add_test(sparse_vector)
ei_add_test(sparse_solvers " " "${SPARSE_LIBS}")
+
+# print a summary of the different options
+message("************************************************************")
+message("*** Eigen's unit tests configuration summary ***")
+message("************************************************************")
+if(GSL_FOUND)
+ message("Comparison with GSL: ON")
+else(GSL_FOUND)
+ message("Comparison with GSL: OFF")
+endif(GSL_FOUND)
+
+ message("Enabled backends: ${EIGEN_TESTED_BACKENDS}")
+ message("Disabled backends: ${EIGEN_MISSING_BACKENDS}")
+
+if(EIGEN_TEST_SSE2)
+ message("SSE2: ON")
+else(EIGEN_TEST_SSE2)
+ message("SSE2: AUTO")
+endif(EIGEN_TEST_SSE2)
+
+if(EIGEN_TEST_SSE3)
+ message("SSE3: ON")
+else(EIGEN_TEST_SSE3)
+ message("SSE3: AUTO")
+endif(EIGEN_TEST_SSE3)
+
+if(EIGEN_TEST_SSSE3)
+ message("SSSE3: ON")
+else(EIGEN_TEST_SSSE3)
+ message("SSSE3: AUTO")
+endif(EIGEN_TEST_SSSE3)
+
+if(EIGEN_TEST_ALTIVEC)
+ message("Altivec: ON")
+else(EIGEN_TEST_ALTIVEC)
+ message("Altivec: AUTO")
+endif(EIGEN_TEST_ALTIVEC)
+
+if(EIGEN_TEST_NO_EXPLICIT_VECTORIZATION)
+ message("Explicit vec: OFF")
+else(EIGEN_TEST_NO_EXPLICIT_VECTORIZATION)
+ message("Explicit vec: AUTO")
+endif(EIGEN_TEST_NO_EXPLICIT_VECTORIZATION)
+
+ message("CXX: ${CMAKE_CXX_COMPILER}")
+if(CMAKE_COMPILER_IS_GNUCXX)
+ execute_process(COMMAND ${CMAKE_CXX_COMPILER} --version COMMAND head -n 1 OUTPUT_VARIABLE EIGEN_CXX_VERSION_STRING OUTPUT_STRIP_TRAILING_WHITESPACE)
+ message("CXX_VERSION: ${EIGEN_CXX_VERSION_STRING}")
+endif(CMAKE_COMPILER_IS_GNUCXX)
+ message("CXX_FLAGS: ${CMAKE_CXX_FLAGS}")
+ message("Sparse lib flags: ${SPARSE_LIBS}")
+
+message("************************************************************")