From: Martin Quinson Date: Wed, 31 May 2017 08:49:49 +0000 (+0200) Subject: try to sanitize the lib rpath on Apple X-Git-Tag: v3.16~175 X-Git-Url: http://info.iut-bm.univ-fcomte.fr/pub/gitweb/simgrid.git/commitdiff_plain/936f6bb44dc4aba8236df101a19511f1046bc931?hp=783573d576fa9ac43c007c6031bce185d882f92b try to sanitize the lib rpath on Apple --- diff --git a/CMakeLists.txt b/CMakeLists.txt index 8fede4c2b3..58d7dbb5de 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -156,10 +156,6 @@ if(NOT PYTHONINTERP_FOUND) message(FATAL_ERROR "Please install Python (version 3 or higher).") endif() -if (APPLE) - set(CMAKE_INSTALL_RPATH "${CMAKE_INSTALL_PREFIX}/lib") - set(CMAKE_INSTALL_RPATH_USE_LINK_PATH TRUE) -endif() SET(LIBRARY_OUTPUT_PATH ${CMAKE_BINARY_DIR}/lib) ### Compute the include paths diff --git a/tools/cmake/MakeLib.cmake b/tools/cmake/MakeLib.cmake index d7c456a5fd..6f4cf6b299 100644 --- a/tools/cmake/MakeLib.cmake +++ b/tools/cmake/MakeLib.cmake @@ -4,10 +4,13 @@ # See https://cmake.org/Wiki/CMake_RPATH_handling and Java.cmake set(MACOSX_RPATH ON) if(APPLE) + SET(CMAKE_INSTALL_RPATH_USE_LINK_PATH TRUE) # When installed, use system path + set(CMAKE_SKIP_BUILD_RPATH FALSE) # When executing from build tree, take the lib from the build path if exists + set(CMAKE_BUILD_WITH_INSTALL_RPATH FALSE) # When executing from build tree, take the lib from the system path if exists + # add the current location of libsimgrid-java.dynlib as a location for libsimgrid.dynlib # (useful when unpacking the native libraries from the jarfile) - set(CMAKE_INSTALL_RPATH "@loader_path/.") - SET(CMAKE_INSTALL_RPATH_USE_LINK_PATH TRUE) + set(CMAKE_INSTALL_RPATH "@loader_path/.;@rpath/.") endif() ###############################