0001-Make-RSC-installable-in-parallel-with-several-versio.patch
3rdparty/CMakeLists.txt | ||
---|---|---|
1 | 1 | |
2 | 2 |
IF(USE_INTERNAL_BOOST_UUID) |
3 | 3 |
FILE(GLOB_RECURSE UUID_FILES RELATIVE "${CMAKE_CURRENT_SOURCE_DIR}" *.hpp) |
4 |
INSTALL(FILES ${UUID_FILES} DESTINATION include/rsc/3rdparty/boost.uuid/boost/uuid)
|
|
4 |
INSTALL(FILES ${UUID_FILES} DESTINATION "include/${INSTALL_PATH_PREFIX}/3rdparty/boost.uuid/boost/uuid")
|
|
5 | 5 |
ENDIF() |
CMakeLists.txt | ||
---|---|---|
35 | 35 |
SET(RSC_NAME "rsc") |
36 | 36 |
SET(RSC_TEST_NAME "rsctest") |
37 | 37 | |
38 |
SET(RSC_CMAKE_PATH "share/cmake") |
|
38 |
SET(INSTALL_PATH_PREFIX "rsc${RSC_VERSION_MAJOR}.${RSC_VERSION_MINOR}" |
|
39 |
CACHE STRING "Prefix path applied to all non-versioned installed files in order to prevent version clashes.") |
|
40 | ||
41 |
SET(RSC_CMAKE_PATH "share/${INSTALL_PATH_PREFIX}/cmake") |
|
39 | 42 |
SET(RSC_CMAKE_MODULE_PATH "${RSC_CMAKE_PATH}/Modules") |
40 | 43 |
SET(RSC_CMAKE_TOOLCHAIN_PATH "${RSC_CMAKE_PATH}/Toolchains") |
41 | 44 | |
... | ... | |
130 | 133 |
IF(NOT USE_INTERNAL_BOOST_UUID) |
131 | 134 |
LIST(APPEND EXTERNAL_INCLUDES ${BOOSTUUID_INCLUDE_DIRS}) |
132 | 135 |
ELSE() |
133 |
LIST(APPEND EXTERNAL_INCLUDES "\${includedir}/rsc/3rdparty/boost.uuid/")
|
|
136 |
LIST(APPEND EXTERNAL_INCLUDES "\${includedir}/${INSTALL_PATH_PREFIX}/3rdparty/boost.uuid/")
|
|
134 | 137 |
ENDIF() |
135 | 138 |
STRING(REPLACE ";" " -I" EXTERNAL_INCLUDE_COMMANDS "${EXTERNAL_INCLUDES}") |
136 | 139 |
STRING(LENGTH "${EXTERNAL_INCLUDE_COMMANDS}" EXT_LENGTH) |
137 | 140 |
IF(${EXT_LENGTH} GREATER 0) |
138 | 141 |
SET(EXTERNAL_INCLUDE_COMMANDS "-I${EXTERNAL_INCLUDE_COMMANDS}") |
139 | 142 |
ENDIF() |
140 |
CONFIGURE_FILE(rsc.pc.in ${CMAKE_BINARY_DIR}/rsc.pc @ONLY)
|
|
141 |
INSTALL(FILES ${CMAKE_BINARY_DIR}/rsc.pc DESTINATION lib/pkgconfig)
|
|
143 |
CONFIGURE_FILE(rsc.pc.in "${CMAKE_BINARY_DIR}/rsc${RSC_VERSION_MAJOR}.${RSC_VERSION_MINOR}.pc" @ONLY)
|
|
144 |
INSTALL(FILES "${CMAKE_BINARY_DIR}/rsc${RSC_VERSION_MAJOR}.${RSC_VERSION_MINOR}.pc" DESTINATION lib/pkgconfig)
|
|
142 | 145 | |
143 | 146 |
# --- cmake config files --- |
144 | 147 | |
... | ... | |
154 | 157 |
IF(CMAKE_LINK_LIBRARY_SUFFIX) |
155 | 158 |
SET(LIB_SUFFIX ${CMAKE_LINK_LIBRARY_SUFFIX}) |
156 | 159 |
ENDIF() |
157 |
CONFIGURE_FILE(RSCConfig.cmake.in ${CMAKE_BINARY_DIR}/RSCConfig.cmake @ONLY)
|
|
158 |
INSTALL(FILES ${CMAKE_BINARY_DIR}/RSCConfig.cmake DESTINATION share/rsc)
|
|
159 |
CONFIGURE_FILE(RSCConfigVersion.cmake.in ${CMAKE_BINARY_DIR}/RSCConfigVersion.cmake @ONLY)
|
|
160 |
INSTALL(FILES ${CMAKE_BINARY_DIR}/RSCConfigVersion.cmake DESTINATION share/rsc)
|
|
160 |
CONFIGURE_FILE(RSCConfig.cmake.in "${CMAKE_BINARY_DIR}/RSCConfig.cmake" @ONLY)
|
|
161 |
INSTALL(FILES "${CMAKE_BINARY_DIR}/RSCConfig.cmake" DESTINATION "share/${INSTALL_PATH_PREFIX}")
|
|
162 |
CONFIGURE_FILE(RSCConfigVersion.cmake.in "${CMAKE_BINARY_DIR}/RSCConfigVersion.cmake" @ONLY)
|
|
163 |
INSTALL(FILES "${CMAKE_BINARY_DIR}/RSCConfigVersion.cmake" DESTINATION "share/${INSTALL_PATH_PREFIX}")
|
|
161 | 164 | |
162 | 165 |
EXPORT(TARGETS ${RSC_NAME} FILE "${CMAKE_BINARY_DIR}/RSCDepends.cmake") |
163 | 166 |
INSTALL(EXPORT RSCDepends |
164 |
DESTINATION "share/rsc")
|
|
167 |
DESTINATION "share/${INSTALL_PATH_PREFIX}")
|
|
165 | 168 | |
166 |
INSTALL(FILES COPYING.txt DESTINATION share/doc/rsc RENAME copyright)
|
|
169 |
INSTALL(FILES COPYING.txt DESTINATION "share/doc/${INSTALL_PATH_PREFIX}" RENAME copyright)
|
|
167 | 170 | |
168 | 171 |
# --- enable unit tests if desired --- |
169 | 172 |
RSCConfig.cmake.in | ||
---|---|---|
7 | 7 |
INCLUDE("${RSC_CONFIG_DIR}/RSCBuildTreeSettings.cmake") |
8 | 8 |
ELSE() |
9 | 9 | |
10 |
SET(RSC_INCLUDE_DIRS "${RSC_CONFIG_DIR}/../../include" |
|
11 |
"${RSC_CONFIG_DIR}/../../include/rsc/3rdparty/boost.uuid")
|
|
10 |
SET(RSC_INCLUDE_DIRS "${RSC_CONFIG_DIR}/../../include/@INSTALL_PATH_PREFIX@"
|
|
11 |
"${RSC_CONFIG_DIR}/../../include/@INSTALL_PATH_PREFIX@/3rdparty/boost.uuid")
|
|
12 | 12 |
SET(RSC_RUNTIME_LIBRARY_DIRS "${RSC_CONFIG_DIR}/../../bin") |
13 | 13 |
SET(RSC_CMAKE_MODULE_PATH "${RSC_CONFIG_DIR}/../../@RSC_CMAKE_MODULE_PATH@") |
14 | 14 |
SET(RSC_CMAKE_TOOLCHAINS_PATH "${RSC_CONFIG_DIR}/../../@RSC_CMAKE_TOOLCHAIN_PATH@") |
rsc.pc.in | ||
---|---|---|
1 | 1 |
prefix=@CMAKE_INSTALL_PREFIX@ |
2 | 2 |
libdir=${prefix}/lib |
3 |
includedir=${prefix}/include |
|
3 |
includedir=${prefix}/include/@INSTALL_PATH_PREFIX@
|
|
4 | 4 | |
5 | 5 |
Name: Robotics Systems Commons |
6 | 6 |
Description: RSC is a Code.CoR-Lab project focused on all aspects of reusable library functions in robotics systems. |
src/CMakeLists.txt | ||
---|---|---|
8 | 8 |
SET(INIT_METHOD_NAME RSC_HAVE_NO_INIT_METHOD_ERROR) |
9 | 9 |
ENDIF() |
10 | 10 |
CONFIGURE_FILE(rsc/config.h.in ${CMAKE_CURRENT_BINARY_DIR}/rsc/config.h @ONLY) |
11 |
INSTALL(FILES ${CMAKE_CURRENT_BINARY_DIR}/rsc/config.h DESTINATION include/rsc)
|
|
11 |
INSTALL(FILES ${CMAKE_CURRENT_BINARY_DIR}/rsc/config.h DESTINATION "include/${INSTALL_PATH_PREFIX}/rsc")
|
|
12 | 12 | |
13 | 13 |
CONFIGURE_FILE(rsc/rscexports.h.in ${CMAKE_CURRENT_BINARY_DIR}/rsc/rscexports.h @ONLY) |
14 |
INSTALL(FILES ${CMAKE_CURRENT_BINARY_DIR}/rsc/rscexports.h DESTINATION include/rsc)
|
|
14 |
INSTALL(FILES ${CMAKE_CURRENT_BINARY_DIR}/rsc/rscexports.h DESTINATION "include/${INSTALL_PATH_PREFIX}/rsc")
|
|
15 | 15 | |
16 | 16 |
# version stuff |
17 | 17 |
INCLUDE(PadString) |
... | ... | |
90 | 90 |
RUNTIME DESTINATION bin |
91 | 91 |
LIBRARY DESTINATION lib |
92 | 92 |
ARCHIVE DESTINATION lib) |
93 |
INSTALL_FILES_RECURSIVE(include HEADERS) |
|
93 |
INSTALL_FILES_RECURSIVE("include/${INSTALL_PATH_PREFIX}" HEADERS) |
|
94 |
- |