summaryrefslogtreecommitdiff
path: root/cmake
diff options
context:
space:
mode:
authoriphydf <iphydf@users.noreply.github.com>2016-10-06 15:13:47 +0100
committeriphydf <iphydf@users.noreply.github.com>2016-10-11 14:05:41 +0200
commit1ce4c3fe135fe9b018f4d493dce1edcfad33688d (patch)
treeba99a003f5ac877121623fd1188ac37e2e8dac7a /cmake
parentd9f37e4c3342d467920c295031bac58af6b92675 (diff)
Install libraries with RPATH.
This makes deployment easier, as the install libpath is used to look up dependent libraries.
Diffstat (limited to 'cmake')
-rw-r--r--cmake/MacRpath.cmake24
1 files changed, 24 insertions, 0 deletions
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 @@
1# Taken from https://cmake.org/Wiki/CMake_RPATH_handling#Always_full_RPATH.
2#
3# In many cases you will want to make sure that the required libraries are
4# always found independent from LD_LIBRARY_PATH and the install location. Then
5# you can use these settings:
6
7# Use, i.e. don't skip the full RPATH for the build tree.
8set(CMAKE_SKIP_BUILD_RPATH FALSE)
9
10# When building, don't use the install RPATH already
11# (but later on when installing).
12set(CMAKE_BUILD_WITH_INSTALL_RPATH FALSE)
13
14set(CMAKE_INSTALL_RPATH "${CMAKE_INSTALL_PREFIX}/lib")
15
16# Add the automatically determined parts of the RPATH
17# which point to directories outside the build tree to the install RPATH.
18set(CMAKE_INSTALL_RPATH_USE_LINK_PATH TRUE)
19
20# The RPATH to be used when installing, but only if it's not a system directory.
21list(FIND CMAKE_PLATFORM_IMPLICIT_LINK_DIRECTORIES "${CMAKE_INSTALL_PREFIX}/lib" isSystemDir)
22if("${isSystemDir}" STREQUAL "-1")
23 set(CMAKE_INSTALL_RPATH "${CMAKE_INSTALL_PREFIX}/lib")
24endif()