Adding Eigen header files as source files to show up in IDE projects
parent
67058d0e7a
commit
caa232cca2
|
|
@ -3,17 +3,24 @@ install(FILES CCOLAMD/Include/ccolamd.h DESTINATION include/gtsam/3rdparty/CCOLA
|
||||||
install(FILES UFconfig/UFconfig.h DESTINATION include/gtsam/3rdparty/UFconfig)
|
install(FILES UFconfig/UFconfig.h DESTINATION include/gtsam/3rdparty/UFconfig)
|
||||||
|
|
||||||
if(NOT GTSAM_USE_SYSTEM_EIGEN)
|
if(NOT GTSAM_USE_SYSTEM_EIGEN)
|
||||||
|
# Find plain .h files
|
||||||
|
file(GLOB_RECURSE eigen_headers "${CMAKE_CURRENT_SOURCE_DIR}/Eigen/Eigen/*.h")
|
||||||
|
|
||||||
|
# Find header files without extension
|
||||||
|
file(GLOB eigen_dir_headers_all "Eigen/Eigen/*")
|
||||||
|
foreach(eigen_dir ${eigen_dir_headers_all})
|
||||||
|
get_filename_component(filename ${eigen_dir} NAME)
|
||||||
|
if (NOT ((${filename} MATCHES "CMakeLists.txt") OR (${filename} MATCHES "src") OR (${filename} MATCHES ".svn")))
|
||||||
|
list(APPEND eigen_headers "${CMAKE_CURRENT_SOURCE_DIR}/Eigen/Eigen/${filename}")
|
||||||
|
install(FILES Eigen/Eigen/${filename} DESTINATION include/gtsam/3rdparty/Eigen/Eigen)
|
||||||
|
endif()
|
||||||
|
endforeach(eigen_dir)
|
||||||
|
|
||||||
|
# Add to project source
|
||||||
|
set(eigen_headers ${eigen_headers} PARENT_SCOPE)
|
||||||
|
|
||||||
# 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
|
||||||
FILES_MATCHING PATTERN "*.h")
|
FILES_MATCHING PATTERN "*.h")
|
||||||
file(GLOB eigen_dir_headers_all "Eigen/Eigen/*")
|
|
||||||
|
|
||||||
# ensure that Eigen folders without extensions get added
|
|
||||||
foreach(eigen_dir ${eigen_dir_headers_all})
|
|
||||||
get_filename_component(filename ${eigen_dir} NAME)
|
|
||||||
if (NOT ((${filename} MATCHES "CMakeLists.txt") OR (${filename} MATCHES "src") OR (${filename} MATCHES ".svn")))
|
|
||||||
install(FILES Eigen/Eigen/${filename} DESTINATION include/gtsam/3rdparty/Eigen/Eigen)
|
|
||||||
endif()
|
|
||||||
endforeach(eigen_dir)
|
|
||||||
endif()
|
endif()
|
||||||
|
|
|
||||||
|
|
@ -21,6 +21,7 @@ add_subdirectory(3rdparty)
|
||||||
|
|
||||||
# build convenience library
|
# build convenience library
|
||||||
set (3rdparty_srcs
|
set (3rdparty_srcs
|
||||||
|
${eigen_headers} # Set by 3rdparty/CMakeLists.txt
|
||||||
${CMAKE_CURRENT_SOURCE_DIR}/3rdparty/CCOLAMD/Source/ccolamd.c
|
${CMAKE_CURRENT_SOURCE_DIR}/3rdparty/CCOLAMD/Source/ccolamd.c
|
||||||
${CMAKE_CURRENT_SOURCE_DIR}/3rdparty/CCOLAMD/Source/ccolamd_global.c
|
${CMAKE_CURRENT_SOURCE_DIR}/3rdparty/CCOLAMD/Source/ccolamd_global.c
|
||||||
${CMAKE_CURRENT_SOURCE_DIR}/3rdparty/UFconfig/UFconfig.c)
|
${CMAKE_CURRENT_SOURCE_DIR}/3rdparty/UFconfig/UFconfig.c)
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue