diff --git a/CMakeLists.txt b/CMakeLists.txt index 0e290b53e..a03780332 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -462,13 +462,15 @@ if(BUILD_TESTING) endif() endif() -if(EIGEN_LEAVE_TEST_IN_ALL_TARGET) - add_subdirectory(blas) - add_subdirectory(lapack) -else() - add_subdirectory(blas EXCLUDE_FROM_ALL) - add_subdirectory(lapack EXCLUDE_FROM_ALL) -endif() +if (NOT CMAKE_CROSSCOMPILING) + if(EIGEN_LEAVE_TEST_IN_ALL_TARGET) + add_subdirectory(blas) + add_subdirectory(lapack) + else() + add_subdirectory(blas EXCLUDE_FROM_ALL) + add_subdirectory(lapack EXCLUDE_FROM_ALL) + endif() +endif(CMAKE_CROSSCOMPILING) # add SYCL option(EIGEN_TEST_SYCL "Add Sycl support." OFF) diff --git a/blas/CMakeLists.txt b/blas/CMakeLists.txt index 351b43a9d..a71ecc946 100644 --- a/blas/CMakeLists.txt +++ b/blas/CMakeLists.txt @@ -4,10 +4,9 @@ project(EigenBlas CXX) include("../cmake/language_support.cmake") workaround_9220(Fortran EIGEN_Fortran_COMPILER_WORKS) - if(EIGEN_Fortran_COMPILER_WORKS) enable_language(Fortran OPTIONAL) - if(CMAKE_CROSSCOMPILING OR NOT CMAKE_Fortran_COMPILER) + if(NOT CMAKE_Fortran_COMPILER) set(EIGEN_Fortran_COMPILER_WORKS OFF) endif() endif() diff --git a/test/CMakeLists.txt b/test/CMakeLists.txt index 81d79f949..e3ce600c3 100644 --- a/test/CMakeLists.txt +++ b/test/CMakeLists.txt @@ -287,36 +287,38 @@ ei_add_test(fastmath " ${EIGEN_FASTMATH_FLAGS} ") # # ei_add_test(denseLM) -if(QT4_FOUND) - ei_add_test(qtvector "" "${QT_QTCORE_LIBRARY}") -endif(QT4_FOUND) +if (NOT CMAKE_CROSSCOMPILING) + if(QT4_FOUND) + ei_add_test(qtvector "" "${QT_QTCORE_LIBRARY}") + endif(QT4_FOUND) -if(UMFPACK_FOUND) - ei_add_test(umfpack_support "" "${UMFPACK_ALL_LIBS}") -endif() + if(UMFPACK_FOUND) + ei_add_test(umfpack_support "" "${UMFPACK_ALL_LIBS}") + endif() -if(SUPERLU_FOUND) - ei_add_test(superlu_support "" "${SUPERLU_ALL_LIBS}") -endif() + if(SUPERLU_FOUND) + ei_add_test(superlu_support "" "${SUPERLU_ALL_LIBS}") + endif() -if(CHOLMOD_FOUND) - ei_add_test(cholmod_support "" "${CHOLMOD_ALL_LIBS}") -endif() + if(CHOLMOD_FOUND) + ei_add_test(cholmod_support "" "${CHOLMOD_ALL_LIBS}") + endif() -if(PARDISO_FOUND) - ei_add_test(pardiso_support "" "${PARDISO_ALL_LIBS}") -endif() + if(PARDISO_FOUND) + ei_add_test(pardiso_support "" "${PARDISO_ALL_LIBS}") + endif() -if(PASTIX_FOUND AND (SCOTCH_FOUND OR METIS_FOUND)) - ei_add_test(pastix_support "" "${PASTIX_ALL_LIBS}") -endif() + if(PASTIX_FOUND AND (SCOTCH_FOUND OR METIS_FOUND)) + ei_add_test(pastix_support "" "${PASTIX_ALL_LIBS}") + endif() -if(SPQR_FOUND AND CHOLMOD_FOUND) - ei_add_test(spqr_support "" "${SPQR_ALL_LIBS}") -endif() + if(SPQR_FOUND AND CHOLMOD_FOUND AND EIGEN_TEST_CXX11) + ei_add_test(spqr_support "" "${SPQR_ALL_LIBS}") + endif() -if(METIS_FOUND) -ei_add_test(metis_support "" "${METIS_LIBRARIES}") + if(METIS_FOUND) + ei_add_test(metis_support "" "${METIS_LIBRARIES}") + endif() endif() string(TOLOWER "${CMAKE_CXX_COMPILER}" cmake_cxx_compiler_tolower) diff --git a/unsupported/test/CMakeLists.txt b/unsupported/test/CMakeLists.txt index 17f9f61bc..c3c68f3ab 100644 --- a/unsupported/test/CMakeLists.txt +++ b/unsupported/test/CMakeLists.txt @@ -79,34 +79,36 @@ endif() ei_add_test(sparse_extra "" "") -find_package(FFTW) -if(FFTW_FOUND) - ei_add_property(EIGEN_TESTED_BACKENDS "fftw, ") - include_directories( ${FFTW_INCLUDES} ) - if(FFTWL_LIB) - ei_add_test(FFTW "-DEIGEN_FFTW_DEFAULT -DEIGEN_HAS_FFTWL" "${FFTW_LIBRARIES}" ) +if (NOT CMAKE_CROSSCOMPILING) + find_package(FFTW) + if(FFTW_FOUND) + ei_add_property(EIGEN_TESTED_BACKENDS "fftw, ") + include_directories( ${FFTW_INCLUDES} ) + if(FFTWL_LIB) + ei_add_test(FFTW "-DEIGEN_FFTW_DEFAULT -DEIGEN_HAS_FFTWL" "${FFTW_LIBRARIES}" ) + else() + ei_add_test(FFTW "-DEIGEN_FFTW_DEFAULT" "${FFTW_LIBRARIES}" ) + endif() else() - ei_add_test(FFTW "-DEIGEN_FFTW_DEFAULT" "${FFTW_LIBRARIES}" ) + ei_add_property(EIGEN_MISSING_BACKENDS "fftw, ") endif() -else() - ei_add_property(EIGEN_MISSING_BACKENDS "fftw, ") -endif() -option(EIGEN_TEST_NO_OPENGL "Disable OpenGL support in unit tests" OFF) -if(NOT EIGEN_TEST_NO_OPENGL) - find_package(OpenGL) - find_package(GLUT) - find_package(GLEW) - if(OPENGL_FOUND AND GLUT_FOUND AND GLEW_FOUND) - include_directories(${OPENGL_INCLUDE_DIR} ${GLUT_INCLUDE_DIR} ${GLEW_INCLUDE_DIRS}) - ei_add_property(EIGEN_TESTED_BACKENDS "OpenGL, ") - set(EIGEN_GL_LIB ${GLUT_LIBRARIES} ${GLEW_LIBRARIES} ${OPENGL_LIBRARIES}) - ei_add_test(openglsupport "" "${EIGEN_GL_LIB}" ) + option(EIGEN_TEST_NO_OPENGL "Disable OpenGL support in unit tests" OFF) + if(NOT EIGEN_TEST_NO_OPENGL) + find_package(OpenGL) + find_package(GLUT) + find_package(GLEW) + if(OPENGL_FOUND AND GLUT_FOUND AND GLEW_FOUND) + include_directories(${OPENGL_INCLUDE_DIR} ${GLUT_INCLUDE_DIR} ${GLEW_INCLUDE_DIRS}) + ei_add_property(EIGEN_TESTED_BACKENDS "OpenGL, ") + set(EIGEN_GL_LIB ${GLUT_LIBRARIES} ${GLEW_LIBRARIES} ${OPENGL_LIBRARIES}) + ei_add_test(openglsupport "" "${EIGEN_GL_LIB}" ) + else() + ei_add_property(EIGEN_MISSING_BACKENDS "OpenGL, ") + endif() else() - ei_add_property(EIGEN_MISSING_BACKENDS "OpenGL, ") + ei_add_property(EIGEN_MISSING_BACKENDS "OpenGL, ") endif() -else() - ei_add_property(EIGEN_MISSING_BACKENDS "OpenGL, ") endif() ei_add_test(polynomialsolver)