From 01e40b31fe0b9fd318f5b6ceb00c6d46f7c91c9a Mon Sep 17 00:00:00 2001 From: Allen Byrne Date: Wed, 26 Sep 2018 09:39:32 -0500 Subject: Use relative RPATH paths --- config/cmake_ext_mod/HDFMacros.cmake | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/config/cmake_ext_mod/HDFMacros.cmake b/config/cmake_ext_mod/HDFMacros.cmake index aa18022..bd9d62e 100644 --- a/config/cmake_ext_mod/HDFMacros.cmake +++ b/config/cmake_ext_mod/HDFMacros.cmake @@ -358,6 +358,16 @@ macro (HDF_DIR_PATHS package_prefix) endif () endif () + set (CMAKE_SKIP_BUILD_RPATH FALSE) + set (CMAKE_INSTALL_RPATH_USE_LINK_PATH FALSE) + set (CMAKE_BUILD_WITH_INSTALL_RPATH ON) + if (APPLE) + set (CMAKE_INSTALL_NAME_DIR "@rpath") + set (CMAKE_INSTALL_RPATH "@executable_path/../${${package_prefix}_INSTALL_LIB_DIR}") + else () + set (CMAKE_INSTALL_RPATH "\$ORIGIN/../${${package_prefix}_INSTALL_LIB_DIR}") + endif () + if (DEFINED ADDITIONAL_CMAKE_PREFIX_PATH AND EXISTS "${ADDITIONAL_CMAKE_PREFIX_PATH}") set (CMAKE_PREFIX_PATH ${ADDITIONAL_CMAKE_PREFIX_PATH} ${CMAKE_PREFIX_PATH}) endif () -- cgit v0.12 From 5527dbfac2d0e4b0bb48a3f479a1a9dfd5dddb79 Mon Sep 17 00:00:00 2001 From: Allen Byrne Date: Wed, 26 Sep 2018 12:05:43 -0500 Subject: Add extra path option for build location --- config/cmake_ext_mod/HDFMacros.cmake | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/config/cmake_ext_mod/HDFMacros.cmake b/config/cmake_ext_mod/HDFMacros.cmake index bd9d62e..bb16946 100644 --- a/config/cmake_ext_mod/HDFMacros.cmake +++ b/config/cmake_ext_mod/HDFMacros.cmake @@ -363,9 +363,9 @@ macro (HDF_DIR_PATHS package_prefix) set (CMAKE_BUILD_WITH_INSTALL_RPATH ON) if (APPLE) set (CMAKE_INSTALL_NAME_DIR "@rpath") - set (CMAKE_INSTALL_RPATH "@executable_path/../${${package_prefix}_INSTALL_LIB_DIR}") + set (CMAKE_INSTALL_RPATH "@executable_path/../${${package_prefix}_INSTALL_LIB_DIR}:@executable_path/") else () - set (CMAKE_INSTALL_RPATH "\$ORIGIN/../${${package_prefix}_INSTALL_LIB_DIR}") + set (CMAKE_INSTALL_RPATH "\$ORIGIN/../${${package_prefix}_INSTALL_LIB_DIR}:\$ORIGIN/") endif () if (DEFINED ADDITIONAL_CMAKE_PREFIX_PATH AND EXISTS "${ADDITIONAL_CMAKE_PREFIX_PATH}") -- cgit v0.12 From ebec5c6117375f616196ea0bc11419ce8414ba24 Mon Sep 17 00:00:00 2001 From: Allen Byrne Date: Wed, 26 Sep 2018 12:25:02 -0500 Subject: HDFFV-10594 - Add rpath configuration note --- release_docs/RELEASE.txt | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/release_docs/RELEASE.txt b/release_docs/RELEASE.txt index 393a9b2..3acc1ed 100644 --- a/release_docs/RELEASE.txt +++ b/release_docs/RELEASE.txt @@ -48,6 +48,16 @@ New Features Configuration: ------------- + - Add default rpath to targets + + Default rpaths should be set in shared executables and + libraries to allow the use of loading dependent libraries + without requiring LD_LIBRARY_PATH to be set. The default + path should be relative using @rpath on osx and $ORIGIN + on linux. Windows is not affected. + + (ADB - 2018/09/26, HDFFV-10594) + - Add missing USE_110_API_DEFAULT option. Option USE_110_API_DEFAULT sets the default version of -- cgit v0.12 From d26bb4d26ce5a23804a80c16dcb53e5f3eb957e4 Mon Sep 17 00:00:00 2001 From: Allen Byrne Date: Wed, 26 Sep 2018 15:12:44 -0500 Subject: HDFFV-10594 - mac must be space separated --- config/cmake_ext_mod/HDFMacros.cmake | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/config/cmake_ext_mod/HDFMacros.cmake b/config/cmake_ext_mod/HDFMacros.cmake index bb16946..147ae2f 100644 --- a/config/cmake_ext_mod/HDFMacros.cmake +++ b/config/cmake_ext_mod/HDFMacros.cmake @@ -363,7 +363,12 @@ macro (HDF_DIR_PATHS package_prefix) set (CMAKE_BUILD_WITH_INSTALL_RPATH ON) if (APPLE) set (CMAKE_INSTALL_NAME_DIR "@rpath") - set (CMAKE_INSTALL_RPATH "@executable_path/../${${package_prefix}_INSTALL_LIB_DIR}:@executable_path/") + set (CMAKE_INSTALL_RPATH + "@executable_path/../${${package_prefix}_INSTALL_LIB_DIR}" + "@executable_path/" + "@loader_path/../${${package_prefix}_INSTALL_LIB_DIR}" + "@loader_path/" + ) else () set (CMAKE_INSTALL_RPATH "\$ORIGIN/../${${package_prefix}_INSTALL_LIB_DIR}:\$ORIGIN/") endif () -- cgit v0.12