From 1ce4c3fe135fe9b018f4d493dce1edcfad33688d Mon Sep 17 00:00:00 2001 From: iphydf Date: Thu, 6 Oct 2016 15:13:47 +0100 Subject: Install libraries with RPATH. This makes deployment easier, as the install libpath is used to look up dependent libraries. --- cmake/MacRpath.cmake | 24 ++++++++++++++++++++++++ 1 file changed, 24 insertions(+) create mode 100644 cmake/MacRpath.cmake (limited to 'cmake') diff --git a/cmake/MacRpath.cmake b/cmake/MacRpath.cmake new file mode 100644 index 00000000..ae5429dc --- /dev/null +++ b/cmake/MacRpath.cmake @@ -0,0 +1,24 @@ +# Taken from https://cmake.org/Wiki/CMake_RPATH_handling#Always_full_RPATH. +# +# In many cases you will want to make sure that the required libraries are +# always found independent from LD_LIBRARY_PATH and the install location. Then +# you can use these settings: + +# 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) + +set(CMAKE_INSTALL_RPATH "${CMAKE_INSTALL_PREFIX}/lib") + +# 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) + +# The RPATH to be used when installing, but only if it's not a system directory. +list(FIND CMAKE_PLATFORM_IMPLICIT_LINK_DIRECTORIES "${CMAKE_INSTALL_PREFIX}/lib" isSystemDir) +if("${isSystemDir}" STREQUAL "-1") + set(CMAKE_INSTALL_RPATH "${CMAKE_INSTALL_PREFIX}/lib") +endif() -- cgit v1.2.3