Moved system eigen switch to top-level CMakeLists so that it's used in all files
parent
58bade6aa3
commit
fe07dee964
|
@ -126,12 +126,38 @@ else()
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
|
|
||||||
|
###############################################################################
|
||||||
|
# Option for using system Eigen or GTSAM-bundled Eigen
|
||||||
|
option(GTSAM_USE_SYSTEM_EIGEN "Find and use system-installed Eigen. If 'off', use the one bundled with GTSAM" OFF)
|
||||||
|
|
||||||
|
# Switch for using system Eigen or GTSAM-bundled Eigen
|
||||||
|
if(GTSAM_USE_SYSTEM_EIGEN)
|
||||||
|
# Use generic Eigen include paths e.g. <Eigen/Core>
|
||||||
|
set(GTSAM_EIGEN_INCLUDE_PREFIX "")
|
||||||
|
|
||||||
|
find_package(Eigen3 REQUIRED)
|
||||||
|
include_directories(AFTER EIGEN3_INCLUDE_DIR)
|
||||||
|
else()
|
||||||
|
# Use bundled Eigen include paths e.g. <gtsam/3rdparty/Eigen/Eigen/Core>
|
||||||
|
set(GTSAM_EIGEN_INCLUDE_PREFIX "gtsam/3rdparty/Eigen/")
|
||||||
|
|
||||||
|
# Clear any variables set by FindEigen3
|
||||||
|
if(EIGEN3_INCLUDE_DIR)
|
||||||
|
set(EIGEN3_INCLUDE_DIR NOTFOUND)
|
||||||
|
endif()
|
||||||
|
endif()
|
||||||
|
|
||||||
|
# Write Eigen include file with the paths for either the system Eigen or the GTSAM-bundled Eigen
|
||||||
|
configure_file(gtsam/3rdparty/gtsam_eigen_includes.h.in gtsam/3rdparty/gtsam_eigen_includes.h)
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
###############################################################################
|
###############################################################################
|
||||||
# Global compile options
|
# Global compile options
|
||||||
|
|
||||||
# General build settings
|
# General build settings
|
||||||
include_directories(
|
include_directories(BEFORE
|
||||||
gtsam/3rdparty/UFconfig
|
gtsam/3rdparty/UFconfig
|
||||||
gtsam/3rdparty/CCOLAMD/Include
|
gtsam/3rdparty/CCOLAMD/Include
|
||||||
${CMAKE_SOURCE_DIR}
|
${CMAKE_SOURCE_DIR}
|
||||||
|
|
|
@ -2,25 +2,7 @@
|
||||||
install(FILES CCOLAMD/Include/ccolamd.h DESTINATION include/gtsam/3rdparty/CCOLAMD)
|
install(FILES CCOLAMD/Include/ccolamd.h DESTINATION include/gtsam/3rdparty/CCOLAMD)
|
||||||
install(FILES UFconfig/UFconfig.h DESTINATION include/gtsam/3rdparty/UFconfig)
|
install(FILES UFconfig/UFconfig.h DESTINATION include/gtsam/3rdparty/UFconfig)
|
||||||
|
|
||||||
# Option for using system Eigen or GTSAM-bundled Eigen
|
if(NOT GTSAM_USE_SYSTEM_EIGEN)
|
||||||
option(GTSAM_USE_SYSTEM_EIGEN "Find and use system-installed Eigen. If 'off', use the one bundled with GTSAM" OFF)
|
|
||||||
|
|
||||||
# Switch for using system Eigen or GTSAM-bundled Eigen
|
|
||||||
if(GTSAM_USE_SYSTEM_EIGEN)
|
|
||||||
# Use generic Eigen include paths e.g. <Eigen/Core>
|
|
||||||
set(GTSAM_EIGEN_INCLUDE_PREFIX "")
|
|
||||||
|
|
||||||
find_package(Eigen3 REQUIRED)
|
|
||||||
include_directories(EIGEN3_INCLUDE_DIR)
|
|
||||||
else()
|
|
||||||
# Use bundled Eigen include paths e.g. <gtsam/3rdparty/Eigen/Eigen/Core>
|
|
||||||
set(GTSAM_EIGEN_INCLUDE_PREFIX "gtsam/3rdparty/Eigen/")
|
|
||||||
|
|
||||||
# Clear any variables set by FindEigen3
|
|
||||||
if(EIGEN3_INCLUDE_DIR)
|
|
||||||
set(EIGEN3_INCLUDE_DIR NOTFOUND)
|
|
||||||
endif()
|
|
||||||
|
|
||||||
# install Eigen - only the headers in our 3rdparty directory
|
# install Eigen - only the headers in our 3rdparty directory
|
||||||
install(DIRECTORY Eigen/Eigen
|
install(DIRECTORY Eigen/Eigen
|
||||||
DESTINATION include/gtsam/3rdparty/Eigen
|
DESTINATION include/gtsam/3rdparty/Eigen
|
||||||
|
@ -35,6 +17,3 @@ else()
|
||||||
endif()
|
endif()
|
||||||
endforeach(eigen_dir)
|
endforeach(eigen_dir)
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
# Write Eigen include file with the paths for either the system Eigen or the GTSAM-bundled Eigen
|
|
||||||
configure_file(gtsam_eigen_includes.h.in gtsam_eigen_includes.h)
|
|
||||||
|
|
Loading…
Reference in New Issue