prefix all Eigen cmake variable with EIGEN_ and switched to lowercase for all cmake files

This commit is contained in:
Gael Guennebaud 2008-12-02 12:59:10 +00:00
parent eb9dadf3b2
commit 20c11bc52c
6 changed files with 100 additions and 94 deletions

View File

@ -1,64 +1,73 @@
PROJECT(Eigen) project(Eigen)
SET(EIGEN_VERSION_NUMBER "2.0-beta1") set(EIGEN_VERSION_NUMBER "2.0-beta1")
#if the svnversion program is absent, this will leave the SVN_REVISION string empty, #if the svnversion program is absent, this will leave the SVN_REVISION string empty,
#but won't stop CMake. #but won't stop CMake.
EXECUTE_PROCESS(COMMAND svnversion -n ${CMAKE_SOURCE_DIR} execute_process(COMMAND svnversion -n ${CMAKE_SOURCE_DIR}
OUTPUT_VARIABLE EIGEN_SVN_REVISION) OUTPUT_VARIABLE EIGEN_SVN_REVISION)
IF(EIGEN_SVN_REVISION) if(EIGEN_SVN_REVISION)
SET(EIGEN_VERSION "${EIGEN_VERSION_NUMBER} (SVN revision ${EIGEN_SVN_REVISION})") set(EIGEN_VERSION "${EIGEN_VERSION_NUMBER} (SVN revision ${EIGEN_SVN_REVISION})")
ELSE(EIGEN_SVN_REVISION) else(EIGEN_SVN_REVISION)
SET(EIGEN_VERSION "${EIGEN_VERSION_NUMBER}") set(EIGEN_VERSION "${EIGEN_VERSION_NUMBER}")
ENDIF(EIGEN_SVN_REVISION) endif(EIGEN_SVN_REVISION)
CMAKE_MINIMUM_REQUIRED(VERSION 2.4) cmake_minimum_required(VERSION 2.4)
set(CMAKE_MODULE_PATH ${PROJECT_SOURCE_DIR}/cmake) set(CMAKE_MODULE_PATH ${PROJECT_SOURCE_DIR}/cmake)
OPTION(BUILD_TESTS "Build tests" OFF) option(EIGEN_BUILD_TESTS "Build tests" OFF)
OPTION(BUILD_DEMOS "Build demos" OFF) option(EIGEN_BUILD_DEMOS "Build demos" OFF)
OPTION(BUILD_LIB "Build the binary shared library" OFF) if(NOT WIN32)
OPTION(BUILD_BTL "Build benchmark suite" OFF) option(EIGEN_BUILD_LIB "Build the binary shared library" OFF)
endif(NOT WIN32)
option(EIGEN_BUILD_BTL "Build benchmark suite" OFF)
IF(BUILD_LIB) if(EIGEN_BUILD_LIB)
OPTION(TEST_LIB "Build the unit tests using the library (disable -pedantic)" OFF) option(EIGEN_TEST_LIB "Build the unit tests using the library (disable -pedantic)" OFF)
ENDIF(BUILD_LIB) endif(EIGEN_BUILD_LIB)
SET(CMAKE_INCLUDE_CURRENT_DIR ON) set(CMAKE_INCLUDE_CURRENT_DIR ON)
IF(CMAKE_COMPILER_IS_GNUCXX) if(CMAKE_COMPILER_IS_GNUCXX)
IF(CMAKE_SYSTEM_NAME MATCHES Linux) if(CMAKE_SYSTEM_NAME MATCHES Linux)
SET(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -Wnon-virtual-dtor -Wno-long-long -ansi -Wundef -Wcast-align -Wchar-subscripts -Wall -W -Wpointer-arith -Wwrite-strings -Wformat-security -fno-exceptions -fno-check-new -fno-common -fstrict-aliasing") set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -Wnon-virtual-dtor -Wno-long-long -ansi -Wundef -Wcast-align -Wchar-subscripts -Wall -W -Wpointer-arith -Wwrite-strings -Wformat-security -fno-exceptions -fno-check-new -fno-common -fstrict-aliasing")
IF(NOT TEST_LIB) if(NOT EIGEN_TEST_LIB)
SET(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -pedantic") set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -pedantic")
ENDIF(NOT TEST_LIB) endif(NOT EIGEN_TEST_LIB)
IF(TEST_SSE2) if(EIGEN_TEST_SSE2)
SET(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -msse2") set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -msse2")
MESSAGE("Enabling SSE2 in tests/examples") message("Enabling SSE2 in tests/examples")
ENDIF(TEST_SSE2) endif(EIGEN_TEST_SSE2)
IF(TEST_SSE3) if(EIGEN_TEST_SSE3)
SET(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -msse3") set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -msse3")
MESSAGE("Enabling SSE3 in tests/examples") message("Enabling SSE3 in tests/examples")
ENDIF(TEST_SSE3) endif(EIGEN_TEST_SSE3)
IF(TEST_SSSE3) if(EIGEN_TEST_SSSE3)
SET(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -mssse3") set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -mssse3")
MESSAGE("Enabling SSSE3 in tests/examples") message("Enabling SSSE3 in tests/examples")
ENDIF(TEST_SSSE3) endif(EIGEN_TEST_SSSE3)
IF(TEST_ALTIVEC) if(EIGEN_TEST_ALTIVEC)
SET(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -maltivec -mabi=altivec") set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -maltivec -mabi=altivec")
MESSAGE("Enabling AltiVec in tests/examples") message("Enabling AltiVec in tests/examples")
ENDIF(TEST_ALTIVEC) endif(EIGEN_TEST_ALTIVEC)
ENDIF(CMAKE_SYSTEM_NAME MATCHES Linux) endif(CMAKE_SYSTEM_NAME MATCHES Linux)
ENDIF(CMAKE_COMPILER_IS_GNUCXX) endif(CMAKE_COMPILER_IS_GNUCXX)
INCLUDE_DIRECTORIES(${CMAKE_CURRENT_SOURCE_DIR} ${CMAKE_CURRENT_BINARY_DIR}) include_directories(${CMAKE_CURRENT_SOURCE_DIR} ${CMAKE_CURRENT_BINARY_DIR})
ADD_SUBDIRECTORY(Eigen) add_subdirectory(Eigen)
ADD_SUBDIRECTORY(test)
ADD_SUBDIRECTORY(doc)
ADD_SUBDIRECTORY(demos)
IF(BUILD_BTL) if(EIGEN_BUILD_TESTS)
ADD_SUBDIRECTORY(bench/btl) add_subdirectory(test)
ENDIF(BUILD_BTL) endif(EIGEN_BUILD_TESTS)
add_subdirectory(doc)
if(EIGEN_BUILD_DEMOS)
add_subdirectory(demos)
endif(EIGEN_BUILD_DEMOS)
if(EIGEN_BUILD_BTL)
add_subdirectory(bench/btl)
endif(EIGEN_BUILD_BTL)

View File

@ -1,34 +1,34 @@
SET(Eigen_HEADERS Core LU Cholesky QR Geometry Sparse Array SVD Regression) set(Eigen_HEADERS Core LU Cholesky QR Geometry Sparse Array SVD Regression)
IF(BUILD_LIB) if(EIGEN_BUILD_LIB)
SET(Eigen_SRCS set(Eigen_SRCS
src/Core/CoreInstantiations.cpp src/Core/CoreInstantiations.cpp
src/Cholesky/CholeskyInstantiations.cpp src/Cholesky/CholeskyInstantiations.cpp
src/QR/QrInstantiations.cpp src/QR/QrInstantiations.cpp
) )
ADD_LIBRARY(Eigen2 SHARED ${Eigen_SRCS}) add_library(Eigen2 SHARED ${Eigen_SRCS})
INSTALL(TARGETS Eigen2 install(TARGETS Eigen2
RUNTIME DESTINATION bin RUNTIME DESTINATION bin
LIBRARY DESTINATION lib LIBRARY DESTINATION lib
ARCHIVE DESTINATION lib) ARCHIVE DESTINATION lib)
ENDIF(BUILD_LIB) endif(EIGEN_BUILD_LIB)
IF(CMAKE_COMPILER_IS_GNUCXX) if(CMAKE_COMPILER_IS_GNUCXX)
SET(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -g1 -O2") set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -g1 -O2")
SET(CMAKE_CXX_FLAGS_RELWITHDEBINFO "${CMAKE_CXX_FLAGS_RELWITHDEBINFO} -g1 -O2") set(CMAKE_CXX_FLAGS_RELWITHDEBINFO "${CMAKE_CXX_FLAGS_RELWITHDEBINFO} -g1 -O2")
ENDIF(CMAKE_COMPILER_IS_GNUCXX) endif(CMAKE_COMPILER_IS_GNUCXX)
SET(INCLUDE_INSTALL_DIR set(INCLUDE_INSTALL_DIR
"${CMAKE_INSTALL_PREFIX}/include/eigen2" "${CMAKE_INSTALL_PREFIX}/include/eigen2"
CACHE PATH CACHE PATH
"The directory where we install the header files" "The directory where we install the header files"
FORCE) FORCE)
INSTALL(FILES install(FILES
${Eigen_HEADERS} ${Eigen_HEADERS}
DESTINATION ${INCLUDE_INSTALL_DIR}/Eigen DESTINATION ${INCLUDE_INSTALL_DIR}/Eigen
) )
ADD_SUBDIRECTORY(src) add_subdirectory(src)

View File

@ -1,4 +1,3 @@
IF(BUILD_DEMOS)
ADD_SUBDIRECTORY(mandelbrot) add_subdirectory(mandelbrot)
ADD_SUBDIRECTORY(opengl) add_subdirectory(opengl)
ENDIF(BUILD_DEMOS)

View File

@ -1,20 +1,20 @@
FIND_PACKAGE(Qt4 REQUIRED) find_package(Qt4 REQUIRED)
SET(CMAKE_INCLUDE_CURRENT_DIR ON) set(CMAKE_INCLUDE_CURRENT_DIR ON)
IF (CMAKE_COMPILER_IS_GNUCXX) if (CMAKE_COMPILER_IS_GNUCXX)
SET ( CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -O2") set ( CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -O2")
ADD_DEFINITIONS ( "-DNDEBUG" ) add_definitions ( "-DNDEBUG" )
ENDIF (CMAKE_COMPILER_IS_GNUCXX) endif (CMAKE_COMPILER_IS_GNUCXX)
INCLUDE_DIRECTORIES( ${QT_INCLUDE_DIR} ) include_directories( ${QT_INCLUDE_DIR} )
SET(mandelbrot_SRCS set(mandelbrot_SRCS
mandelbrot.cpp mandelbrot.cpp
) )
QT4_AUTOMOC(${mandelbrot_SRCS}) qt4_automoc(${mandelbrot_SRCS})
ADD_EXECUTABLE(mandelbrot ${mandelbrot_SRCS}) add_executable(mandelbrot ${mandelbrot_SRCS})
TARGET_LINK_LIBRARIES(mandelbrot ${QT_QTCORE_LIBRARY} ${QT_QTGUI_LIBRARY}) target_link_libraries(mandelbrot ${QT_QTCORE_LIBRARY} ${QT_QTGUI_LIBRARY})

View File

@ -1,34 +1,34 @@
SET_DIRECTORY_PROPERTIES(PROPERTIES EXCLUDE_FROM_ALL TRUE) set_directory_properties(PROPERTIES EXCLUDE_FROM_ALL TRUE)
IF(CMAKE_COMPILER_IS_GNUCXX) if(CMAKE_COMPILER_IS_GNUCXX)
IF(CMAKE_SYSTEM_NAME MATCHES Linux) if(CMAKE_SYSTEM_NAME MATCHES Linux)
SET(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -O1 -g1") set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -O1 -g1")
ENDIF(CMAKE_SYSTEM_NAME MATCHES Linux) endif(CMAKE_SYSTEM_NAME MATCHES Linux)
ENDIF(CMAKE_COMPILER_IS_GNUCXX) endif(CMAKE_COMPILER_IS_GNUCXX)
CONFIGURE_FILE( configure_file(
${CMAKE_CURRENT_SOURCE_DIR}/Doxyfile.in ${CMAKE_CURRENT_SOURCE_DIR}/Doxyfile.in
${CMAKE_CURRENT_BINARY_DIR}/Doxyfile ${CMAKE_CURRENT_BINARY_DIR}/Doxyfile
) )
CONFIGURE_FILE( configure_file(
${CMAKE_CURRENT_SOURCE_DIR}/eigendoxy_header.html.in ${CMAKE_CURRENT_SOURCE_DIR}/eigendoxy_header.html.in
${CMAKE_CURRENT_BINARY_DIR}/eigendoxy_header.html ${CMAKE_CURRENT_BINARY_DIR}/eigendoxy_header.html
) )
CONFIGURE_FILE( configure_file(
${CMAKE_CURRENT_SOURCE_DIR}/eigendoxy_footer.html.in ${CMAKE_CURRENT_SOURCE_DIR}/eigendoxy_footer.html.in
${CMAKE_CURRENT_BINARY_DIR}/eigendoxy_footer.html ${CMAKE_CURRENT_BINARY_DIR}/eigendoxy_footer.html
) )
SET(examples_targets "") set(examples_targets "")
SET(snippets_targets "") set(snippets_targets "")
ADD_SUBDIRECTORY(examples) add_subdirectory(examples)
ADD_SUBDIRECTORY(snippets) add_subdirectory(snippets)
ADD_CUSTOM_TARGET( add_custom_target(
doc doc
ALL ALL
COMMAND ${CMAKE_COMMAND} -E make_directory ${CMAKE_CURRENT_BINARY_DIR}/html/ COMMAND ${CMAKE_COMMAND} -E make_directory ${CMAKE_CURRENT_BINARY_DIR}/html/
@ -42,4 +42,4 @@ ADD_CUSTOM_TARGET(
WORKING_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR} WORKING_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}
) )
ADD_DEPENDENCIES(doc all_snippets all_examples) add_dependencies(doc all_snippets all_examples)

View File

@ -1,4 +1,3 @@
if(BUILD_TESTS)
find_package(GSL) find_package(GSL)
if(GSL_FOUND) if(GSL_FOUND)
@ -174,4 +173,3 @@ ei_add_test(regression)
ei_add_test(sparse_basic " " "${SPARSE_LIBS}") ei_add_test(sparse_basic " " "${SPARSE_LIBS}")
ei_add_test(sparse_solvers " " "${SPARSE_LIBS}") ei_add_test(sparse_solvers " " "${SPARSE_LIBS}")
endif(BUILD_TESTS)