summaryrefslogtreecommitdiff
path: root/sys-devel/llvm/files
diff options
context:
space:
mode:
authorV3n3RiX <venerix@redcorelinux.org>2020-06-21 17:50:24 +0100
committerV3n3RiX <venerix@redcorelinux.org>2020-06-21 17:50:24 +0100
commitfeb0daf81d888e9160f9f94502de09b66f2a63fd (patch)
treeb6e5c40ce2abef3da27ed50a023153f475e0ddef /sys-devel/llvm/files
parent9452a6e87b6c2c70513bc47a2470bf9f1168920e (diff)
gentoo resync : 21.06.2020
Diffstat (limited to 'sys-devel/llvm/files')
-rw-r--r--sys-devel/llvm/files/10.0.1/0001-llvm-Avoid-linking-llvm-cfi-verify-to-duplicate-libs.patch48
-rw-r--r--sys-devel/llvm/files/10.0.1/0002-llvm-Disable-linking-llvm-exegesis-to-dylib.patch29
2 files changed, 77 insertions, 0 deletions
diff --git a/sys-devel/llvm/files/10.0.1/0001-llvm-Avoid-linking-llvm-cfi-verify-to-duplicate-libs.patch b/sys-devel/llvm/files/10.0.1/0001-llvm-Avoid-linking-llvm-cfi-verify-to-duplicate-libs.patch
new file mode 100644
index 000000000000..445cb6de2c32
--- /dev/null
+++ b/sys-devel/llvm/files/10.0.1/0001-llvm-Avoid-linking-llvm-cfi-verify-to-duplicate-libs.patch
@@ -0,0 +1,48 @@
+From bc3be897be6994da7f52ba1b5735aa81150084a4 Mon Sep 17 00:00:00 2001
+From: =?UTF-8?q?Micha=C5=82=20G=C3=B3rny?= <mgorny@gentoo.org>
+Date: Tue, 16 Jun 2020 12:16:52 +0200
+Subject: [PATCH 1/4] [llvm] Avoid linking llvm-cfi-verify to duplicate libs
+
+Fix the CMake rules for LLVMCFIVerify library not to pull duplicate
+LLVM .a libraries when linking to the dylib. This prevents problems
+due to duplicate symbols and apparently fixes mingw32.
+
+This is an alternative approach to D44650 that just forces .a libraries
+instead. However, there doesn't seem to be any reason to do that.
+---
+ llvm/tools/llvm-cfi-verify/lib/CMakeLists.txt | 20 +++++++++++--------
+ 1 file changed, 12 insertions(+), 8 deletions(-)
+
+diff --git a/llvm/tools/llvm-cfi-verify/lib/CMakeLists.txt b/llvm/tools/llvm-cfi-verify/lib/CMakeLists.txt
+index 82ca42e624a..41d55ed9321 100644
+--- a/llvm/tools/llvm-cfi-verify/lib/CMakeLists.txt
++++ b/llvm/tools/llvm-cfi-verify/lib/CMakeLists.txt
+@@ -7,13 +7,17 @@ add_library(LLVMCFIVerify
+ )
+
+ llvm_update_compile_flags(LLVMCFIVerify)
+-llvm_map_components_to_libnames(libs
+- DebugInfoDWARF
+- MC
+- MCParser
+- Object
+- Support
+- Symbolize
+- )
++if (LLVM_LINK_LLVM_DYLIB)
++ set(libs LLVM)
++else()
++ llvm_map_components_to_libnames(libs
++ DebugInfoDWARF
++ MC
++ MCParser
++ Object
++ Support
++ Symbolize
++ )
++endif()
+ target_link_libraries(LLVMCFIVerify ${libs})
+ set_target_properties(LLVMCFIVerify PROPERTIES FOLDER "Libraries")
+--
+2.27.0
+
diff --git a/sys-devel/llvm/files/10.0.1/0002-llvm-Disable-linking-llvm-exegesis-to-dylib.patch b/sys-devel/llvm/files/10.0.1/0002-llvm-Disable-linking-llvm-exegesis-to-dylib.patch
new file mode 100644
index 000000000000..24786905c4d9
--- /dev/null
+++ b/sys-devel/llvm/files/10.0.1/0002-llvm-Disable-linking-llvm-exegesis-to-dylib.patch
@@ -0,0 +1,29 @@
+From 07b6fdcde1ed64043244965b97788a2b12af4d6d Mon Sep 17 00:00:00 2001
+From: =?UTF-8?q?Micha=C5=82=20G=C3=B3rny?= <mgorny@gentoo.org>
+Date: Tue, 16 Jun 2020 12:31:36 +0200
+Subject: [PATCH 2/4] [llvm] Disable linking llvm-exegesis to dylib
+
+Force linking llvm-exegesis to static LLVM libraries instead of dylib
+to prevent duplicate symbols due to linking both. Ideally, we'd want
+to link to the dylib only here but the target sub-libraries use hidden
+symbols from LLVM target libraries and therefore linking the dylib
+fails.
+---
+ llvm/tools/llvm-exegesis/CMakeLists.txt | 1 +
+ 1 file changed, 1 insertion(+)
+
+diff --git a/llvm/tools/llvm-exegesis/CMakeLists.txt b/llvm/tools/llvm-exegesis/CMakeLists.txt
+index a59e1b74024..0575f2a06bb 100644
+--- a/llvm/tools/llvm-exegesis/CMakeLists.txt
++++ b/llvm/tools/llvm-exegesis/CMakeLists.txt
+@@ -5,6 +5,7 @@ set(LLVM_LINK_COMPONENTS
+ )
+
+ add_llvm_tool(llvm-exegesis
++ DISABLE_LLVM_LINK_LLVM_DYLIB
+ llvm-exegesis.cpp
+ )
+
+--
+2.27.0
+