From bafff30232031445256a7e1f3204320b606f94cc Mon Sep 17 00:00:00 2001 From: Thomas White Date: Tue, 23 Mar 2021 17:09:30 +0100 Subject: CMake: ensure RPATH is always set for libcrystfel This helps with finding dependencies installed in non-system locations. --- libcrystfel/CMakeLists.txt | 10 +++++++++- 1 file changed, 9 insertions(+), 1 deletion(-) (limited to 'libcrystfel') diff --git a/libcrystfel/CMakeLists.txt b/libcrystfel/CMakeLists.txt index fe2a6f30..fa963c22 100644 --- a/libcrystfel/CMakeLists.txt +++ b/libcrystfel/CMakeLists.txt @@ -123,7 +123,15 @@ add_library(${PROJECT_NAME} SHARED ${LIBCRYSTFEL_FFTW_SOURCES} ${LIBCRYSTFEL_HEADERS}) -set_target_properties(${PROJECT_NAME} PROPERTIES INSTALL_RPATH_USE_LINK_PATH 1) +set_target_properties(${PROJECT_NAME} PROPERTIES INSTALL_RPATH_USE_LINK_PATH TRUE) +set_target_properties(${PROJECT_NAME} PROPERTIES BUILD_WITH_INSTALL_RPATH TRUE) +#set_target_properties(${PROJECT_NAME} PROPERTIES SKIP_BUILD_RPATH FALSE) + +list(FIND CMAKE_PLATFORM_IMPLICIT_LINK_DIRECTORIES "${CMAKE_INSTALL_LIBDIR}" isSystemDir) +if("${isSystemDir}" STREQUAL "-1") + set_target_properties(${PROJECT_NAME} + PROPERTIES INSTALL_RPATH "${CMAKE_INSTALL_FULL_LIBDIR};${CMAKE_INSTALL_RPATH}") +endif("${isSystemDir}" STREQUAL "-1") set_target_properties(${PROJECT_NAME} PROPERTIES SOVERSION ${CRYSTFEL_API_VERSION}) set_target_properties(${PROJECT_NAME} PROPERTIES VERSION ${CRYSTFEL_SHORT_VERSION}) -- cgit v1.2.3