CMake scripts compatible with gtsam as git submodule
parent
b384b0cee4
commit
35aeaf5246
|
@ -34,7 +34,7 @@ include(GtsamTesting)
|
||||||
include(GtsamPrinting)
|
include(GtsamPrinting)
|
||||||
|
|
||||||
# guard against in-source builds
|
# guard against in-source builds
|
||||||
if(${CMAKE_SOURCE_DIR} STREQUAL ${CMAKE_BINARY_DIR})
|
if(${GTSAM_SOURCE_DIR} STREQUAL ${GTSAM_BINARY_DIR})
|
||||||
message(FATAL_ERROR "In-source builds not allowed. Please make a new directory (called a build directory) and run CMake from there. You may need to remove CMakeCache.txt. ")
|
message(FATAL_ERROR "In-source builds not allowed. Please make a new directory (called a build directory) and run CMake from there. You may need to remove CMakeCache.txt. ")
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
|
|
|
@ -6,7 +6,7 @@
|
||||||
get_filename_component(OUR_CMAKE_DIR "${CMAKE_CURRENT_LIST_FILE}" PATH)
|
get_filename_component(OUR_CMAKE_DIR "${CMAKE_CURRENT_LIST_FILE}" PATH)
|
||||||
if(EXISTS "${OUR_CMAKE_DIR}/CMakeCache.txt")
|
if(EXISTS "${OUR_CMAKE_DIR}/CMakeCache.txt")
|
||||||
# In build tree
|
# In build tree
|
||||||
set(@PACKAGE_NAME@_INCLUDE_DIR @CMAKE_SOURCE_DIR@ CACHE PATH "@PACKAGE_NAME@ include directory")
|
set(@PACKAGE_NAME@_INCLUDE_DIR @GTSAM_SOURCE_DIR@ CACHE PATH "@PACKAGE_NAME@ include directory")
|
||||||
else()
|
else()
|
||||||
# Find installed library
|
# Find installed library
|
||||||
set(@PACKAGE_NAME@_INCLUDE_DIR "${OUR_CMAKE_DIR}/@CONF_REL_INCLUDE_DIR@" CACHE PATH "@PACKAGE_NAME@ include directory")
|
set(@PACKAGE_NAME@_INCLUDE_DIR "${OUR_CMAKE_DIR}/@CONF_REL_INCLUDE_DIR@" CACHE PATH "@PACKAGE_NAME@ include directory")
|
||||||
|
|
|
@ -204,9 +204,9 @@ endif()
|
||||||
|
|
||||||
# Make common binary output directory when on Windows
|
# Make common binary output directory when on Windows
|
||||||
if(WIN32)
|
if(WIN32)
|
||||||
set(RUNTIME_OUTPUT_PATH "${CMAKE_BINARY_DIR}/bin")
|
set(RUNTIME_OUTPUT_PATH "${GTSAM_BINARY_DIR}/bin")
|
||||||
set(EXECUTABLE_OUTPUT_PATH "${CMAKE_BINARY_DIR}/bin")
|
set(EXECUTABLE_OUTPUT_PATH "${GTSAM_BINARY_DIR}/bin")
|
||||||
set(LIBRARY_OUTPUT_PATH "${CMAKE_BINARY_DIR}/lib")
|
set(LIBRARY_OUTPUT_PATH "${GTSAM_BINARY_DIR}/lib")
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
# Set up build type list for cmake-gui
|
# Set up build type list for cmake-gui
|
||||||
|
|
|
@ -435,4 +435,3 @@ function(install_matlab_scripts source_directory patterns)
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
endfunction()
|
endfunction()
|
||||||
|
|
||||||
|
|
|
@ -42,7 +42,7 @@ else()
|
||||||
set(GTSAM_EIGEN_INCLUDE_FOR_INSTALL "include/gtsam/3rdparty/Eigen/")
|
set(GTSAM_EIGEN_INCLUDE_FOR_INSTALL "include/gtsam/3rdparty/Eigen/")
|
||||||
|
|
||||||
# The actual include directory (for BUILD cmake target interface):
|
# The actual include directory (for BUILD cmake target interface):
|
||||||
set(GTSAM_EIGEN_INCLUDE_FOR_BUILD "${CMAKE_SOURCE_DIR}/gtsam/3rdparty/Eigen/")
|
set(GTSAM_EIGEN_INCLUDE_FOR_BUILD "${GTSAM_SOURCE_DIR}/gtsam/3rdparty/Eigen/")
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
# Detect Eigen version:
|
# Detect Eigen version:
|
||||||
|
|
|
@ -134,12 +134,12 @@ endif()
|
||||||
# of any previously installed GTSAM headers.
|
# of any previously installed GTSAM headers.
|
||||||
target_include_directories(gtsam BEFORE PUBLIC
|
target_include_directories(gtsam BEFORE PUBLIC
|
||||||
# main gtsam includes:
|
# main gtsam includes:
|
||||||
$<BUILD_INTERFACE:${CMAKE_SOURCE_DIR}>
|
$<BUILD_INTERFACE:${GTSAM_SOURCE_DIR}>
|
||||||
$<INSTALL_INTERFACE:include/>
|
$<INSTALL_INTERFACE:include/>
|
||||||
# config.h
|
# config.h
|
||||||
$<BUILD_INTERFACE:${CMAKE_BINARY_DIR}>
|
$<BUILD_INTERFACE:${GTSAM_BINARY_DIR}>
|
||||||
# unit tests:
|
# unit tests:
|
||||||
$<BUILD_INTERFACE:${CMAKE_SOURCE_DIR}/CppUnitLite>
|
$<BUILD_INTERFACE:${GTSAM_SOURCE_DIR}/CppUnitLite>
|
||||||
)
|
)
|
||||||
# 3rdparty libraries: use the "system" flag so they are included via "-isystem"
|
# 3rdparty libraries: use the "system" flag so they are included via "-isystem"
|
||||||
# and warnings (and warnings-considered-errors) in those headers are not
|
# and warnings (and warnings-considered-errors) in those headers are not
|
||||||
|
@ -156,9 +156,9 @@ target_include_directories(gtsam SYSTEM BEFORE PUBLIC
|
||||||
)
|
)
|
||||||
if(GTSAM_SUPPORT_NESTED_DISSECTION)
|
if(GTSAM_SUPPORT_NESTED_DISSECTION)
|
||||||
target_include_directories(gtsam BEFORE PUBLIC
|
target_include_directories(gtsam BEFORE PUBLIC
|
||||||
$<BUILD_INTERFACE:${CMAKE_SOURCE_DIR}/gtsam/3rdparty/metis/include>
|
$<BUILD_INTERFACE:${GTSAM_SOURCE_DIR}/gtsam/3rdparty/metis/include>
|
||||||
$<BUILD_INTERFACE:${CMAKE_SOURCE_DIR}/gtsam/3rdparty/metis/libmetis>
|
$<BUILD_INTERFACE:${GTSAM_SOURCE_DIR}/gtsam/3rdparty/metis/libmetis>
|
||||||
$<BUILD_INTERFACE:${CMAKE_SOURCE_DIR}/gtsam/3rdparty/metis/GKlib>
|
$<BUILD_INTERFACE:${GTSAM_SOURCE_DIR}/gtsam/3rdparty/metis/GKlib>
|
||||||
$<INSTALL_INTERFACE:include/gtsam/3rdparty/metis/>
|
$<INSTALL_INTERFACE:include/gtsam/3rdparty/metis/>
|
||||||
)
|
)
|
||||||
endif()
|
endif()
|
||||||
|
|
Loading…
Reference in New Issue