| From c6c2c1b5f079c9f3d26a820ff375b729f253b5b1 Mon Sep 17 00:00:00 2001 |
| From: Robin Sommer <robin@icir.org> |
| Date: Mon, 1 Sep 2014 09:02:33 -0700 |
| Subject: [PATCH] Adapting library's install_name on Darwin to installation |
| prefix. |
| |
| --- |
| lib/CMakeLists.txt | 13 ++++++++----- |
| 1 file changed, 8 insertions(+), 5 deletions(-) |
| |
| diff --git a/lib/CMakeLists.txt b/lib/CMakeLists.txt |
| index be8df5c..53c98ac 100644 |
| --- a/lib/CMakeLists.txt |
| +++ b/lib/CMakeLists.txt |
| @@ -59,8 +59,8 @@ if ( APPLE ) |
| list(APPEND link_flags |
| "-compatibility_version 1" |
| "-current_version ${LIBCXX_VERSION}" |
| - "-install_name /usr/lib/libc++.1.dylib" |
| - "-Wl,-reexport_library,/usr/lib/libc++abi.dylib" |
| + "-install_name ${CMAKE_INSTALL_PREFIX}/lib/libc++.1.dylib" |
| + "-Wl,-reexport_library,${CMAKE_INSTALL_PREFIX}/lib/libc++abi.dylib" |
| "-Wl,-unexported_symbols_list,${CMAKE_CURRENT_SOURCE_DIR}/libc++unexp.exp" |
| "/usr/lib/libSystem.B.dylib") |
| else() |
| @@ -75,16 +75,18 @@ if ( APPLE ) |
| "-Wl,-reexport_library,${CMAKE_OSX_SYSROOT}/usr/lib/libc++abi.dylib") |
| endif() |
| else() |
| - set (OSX_RE_EXPORT_LINE "/usr/lib/libc++abi.dylib -Wl,-reexported_symbols_list,${CMAKE_CURRENT_SOURCE_DIR}/libc++abi${LIBCXX_LIBCPPABI_VERSION}.exp") |
| + get_property(abiloc TARGET cxxabi PROPERTY LOCATION) |
| + set(OSX_RE_EXPORT_LINE "-Wl,-reexport_library,${abiloc}") |
| endif() |
| |
| list(APPEND link_flags |
| "-compatibility_version 1" |
| - "-install_name /usr/lib/libc++.1.dylib" |
| + "-install_name ${CMAKE_INSTALL_PREFIX}/lib/libc++.1.dylib" |
| "-Wl,-unexported_symbols_list,${CMAKE_CURRENT_SOURCE_DIR}/libc++unexp.exp" |
| "${OSX_RE_EXPORT_LINE}" |
| "-Wl,-force_symbols_not_weak_list,${CMAKE_CURRENT_SOURCE_DIR}/notweak.exp" |
| - "-Wl,-force_symbols_weak_list,${CMAKE_CURRENT_SOURCE_DIR}/weak.exp") |
| + "-Wl,-force_symbols_weak_list,${CMAKE_CURRENT_SOURCE_DIR}/weak.exp" |
| + "-nodefaultlibs") |
| endif() |
| endif() |
| |
| @@ -97,6 +99,7 @@ set_target_properties(cxx |
| OUTPUT_NAME "c++" |
| VERSION "1.0" |
| SOVERSION "1" |
| + INSTALL_NAME_DIR "${CMAKE_INSTALL_PREFIX}/lib" |
| ) |
| |
| install(TARGETS cxx |
| -- |
| 2.1.0 |
| |