Blob Blame History Raw
From 352558e69b3691cfdc8e1adc2a1fbb737bc67cbb 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] [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.

Differential Revision: https://reviews.llvm.org/D81921
---
 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.18.1