From 9287570b714031956c2e68e3fdbebcb6ac692fcc Mon Sep 17 00:00:00 2001 From: Mathieu Labbe Date: Tue, 9 Dec 2014 20:17:03 -0500 Subject: [PATCH] Updated library install directory, removing explicitly setting RPATH --- CMakeLists.txt | 23 +++-------------------- corelib/src/CMakeLists.txt | 7 +++++++ guilib/src/CMakeLists.txt | 7 +++++++ utilite/src/CMakeLists.txt | 8 ++++++++ 4 files changed, 25 insertions(+), 20 deletions(-) diff --git a/CMakeLists.txt b/CMakeLists.txt index 32c0685f..94e846e7 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -16,7 +16,7 @@ SET(CMAKE_MODULE_PATH "${PROJECT_SOURCE_DIR}/cmake_modules") ####################### SET(RTABMAP_MAJOR_VERSION 0) SET(RTABMAP_MINOR_VERSION 7) -SET(RTABMAP_PATCH_VERSION 3) +SET(RTABMAP_PATCH_VERSION 4) SET(RTABMAP_VERSION ${RTABMAP_MAJOR_VERSION}.${RTABMAP_MINOR_VERSION}.${RTABMAP_PATCH_VERSION}) @@ -87,23 +87,6 @@ ENDIF() # link dynamically [UTILITE_EXP __declspec( dllimport )] or statically (UTILITE_EXP "nothing"). OPTION( BUILD_SHARED_LIBS "Set to OFF to build static libraries" ON ) -####### SET RPATH ######### -# When RPATH is activated (supported on most UNIX systems), -# the user doesn't need to change LD_LIBRARY_PATH - -# use, i.e. don't skip the full RPATH for the build tree -SET(CMAKE_SKIP_BUILD_RPATH FALSE) - -# when building, don't use the install RPATH already -# (but later on when installing) -SET(CMAKE_BUILD_WITH_INSTALL_RPATH FALSE) - -# the RPATH to be used when installing -SET(CMAKE_INSTALL_RPATH "${CMAKE_INSTALL_PREFIX}/lib/${PROJECT_PREFIX}-${RTABMAP_MAJOR_VERSION}.${RTABMAP_MINOR_VERSION}") - -# add the automatically determined parts of the RPATH -# which point to directories outside the build tree to the install RPATH -SET(CMAKE_INSTALL_RPATH_USE_LINK_PATH TRUE) ####### OUTPUT DIR ####### SET(CMAKE_LIBRARY_OUTPUT_DIRECTORY ${PROJECT_SOURCE_DIR}/bin) @@ -112,14 +95,14 @@ SET(CMAKE_ARCHIVE_OUTPUT_DIRECTORY ${PROJECT_SOURCE_DIR}/lib) ####### INSTALL DIR ####### # Offer the user the choice of overriding the installation directories -set(INSTALL_LIB_DIR lib/${PROJECT_PREFIX}-${RTABMAP_MAJOR_VERSION}.${RTABMAP_MINOR_VERSION} CACHE PATH "Installation directory for libraries") +set(INSTALL_LIB_DIR lib CACHE PATH "Installation directory for libraries") set(INSTALL_BIN_DIR bin CACHE PATH "Installation directory for executables") set(INSTALL_INCLUDE_DIR include/${PROJECT_PREFIX}-${RTABMAP_MAJOR_VERSION}.${RTABMAP_MINOR_VERSION} CACHE PATH "Installation directory for header files") if(WIN32 AND NOT CYGWIN) set(DEF_INSTALL_CMAKE_DIR CMake) else() - set(DEF_INSTALL_CMAKE_DIR lib/${PROJECT_PREFIX}-${RTABMAP_MAJOR_VERSION}.${RTABMAP_MINOR_VERSION}) + set(DEF_INSTALL_CMAKE_DIR share/${PROJECT_PREFIX}-${RTABMAP_MAJOR_VERSION}.${RTABMAP_MINOR_VERSION}) endif() set(INSTALL_CMAKE_DIR ${DEF_INSTALL_CMAKE_DIR} CACHE PATH "Installation directory for CMake files") diff --git a/corelib/src/CMakeLists.txt b/corelib/src/CMakeLists.txt index 28a0951f..ad37508d 100644 --- a/corelib/src/CMakeLists.txt +++ b/corelib/src/CMakeLists.txt @@ -118,6 +118,13 @@ INCLUDE_DIRECTORIES(${INCLUDE_DIRS}) ADD_LIBRARY(rtabmap_core ${SRC_FILES} ${RESOURCES_HEADERS}) TARGET_LINK_LIBRARIES(rtabmap_core rtabmap_utilite ${LIBRARIES}) +SET_TARGET_PROPERTIES( + rtabmap_core + PROPERTIES + VERSION ${RTABMAP_VERSION} + SOVERSION ${RTABMAP_MAJOR_VERSION}.${RTABMAP_MINOR_VERSION} +) + INSTALL(TARGETS rtabmap_core RUNTIME DESTINATION "${INSTALL_BIN_DIR}" COMPONENT runtime LIBRARY DESTINATION "${INSTALL_LIB_DIR}" COMPONENT devel diff --git a/guilib/src/CMakeLists.txt b/guilib/src/CMakeLists.txt index 77dbe129..9b883afb 100644 --- a/guilib/src/CMakeLists.txt +++ b/guilib/src/CMakeLists.txt @@ -114,6 +114,13 @@ ADD_LIBRARY(rtabmap_gui ${SRC_FILES}) # Linking with Qt libraries TARGET_LINK_LIBRARIES(rtabmap_gui rtabmap_core rtabmap_utilite ${LIBRARIES}) +SET_TARGET_PROPERTIES( + rtabmap_gui + PROPERTIES + VERSION ${RTABMAP_VERSION} + SOVERSION ${RTABMAP_MAJOR_VERSION}.${RTABMAP_MINOR_VERSION} +) + INSTALL(TARGETS rtabmap_gui RUNTIME DESTINATION "${INSTALL_BIN_DIR}" COMPONENT runtime LIBRARY DESTINATION "${INSTALL_LIB_DIR}" COMPONENT devel diff --git a/utilite/src/CMakeLists.txt b/utilite/src/CMakeLists.txt index 02e0a287..3a69f9b8 100644 --- a/utilite/src/CMakeLists.txt +++ b/utilite/src/CMakeLists.txt @@ -30,6 +30,14 @@ ELSE() TARGET_LINK_LIBRARIES(rtabmap_utilite ${PTHREADS_LIBRARY}) ENDIF() + +SET_TARGET_PROPERTIES( + rtabmap_utilite + PROPERTIES + VERSION ${RTABMAP_VERSION} + SOVERSION ${RTABMAP_MAJOR_VERSION}.${RTABMAP_MINOR_VERSION} +) + INSTALL(TARGETS rtabmap_utilite RUNTIME DESTINATION "${INSTALL_BIN_DIR}" COMPONENT runtime LIBRARY DESTINATION "${INSTALL_LIB_DIR}" COMPONENT devel