Files
pkgsrc-ng/lang/libLLVM/patches/patch-tools_llvm-shlib_CMakeLists.txt
2016-11-18 22:39:22 +01:00

22 lines
900 B
Plaintext

$NetBSD: patch-tools_llvm-shlib_CMakeLists.txt,v 1.1 2016/03/08 21:06:50 tnn Exp $
Use the Linux style linking everywhere except Darwin.
--- ./tools/llvm-shlib/CMakeLists.txt.orig 2015-11-04 23:11:12.000000000 +0000
+++ ./tools/llvm-shlib/CMakeLists.txt
@@ -41,11 +41,10 @@ endif()
add_llvm_library(LLVM SHARED DISABLE_LLVM_LINK_LLVM_DYLIB SONAME ${SOURCES})
list(REMOVE_DUPLICATES LIB_NAMES)
-if("${CMAKE_SYSTEM_NAME}" STREQUAL "Linux") # FIXME: It should be "GNU ld for elf"
- # GNU ld doesn't resolve symbols in the version script.
- set(LIB_NAMES -Wl,--whole-archive ${LIB_NAMES} -Wl,--no-whole-archive)
-elseif("${CMAKE_SYSTEM_NAME}" STREQUAL "Darwin")
+if("${CMAKE_SYSTEM_NAME}" STREQUAL "Darwin")
set(LIB_NAMES -Wl,-all_load ${LIB_NAMES})
+else()
+ set(LIB_NAMES -Wl,--whole-archive ${LIB_NAMES} -Wl,--no-whole-archive)
endif()
target_link_libraries(LLVM PRIVATE ${LIB_NAMES})