[llvm] a33ae9a - [NFC][CMake] Explicitly link to MC when needed

Roman Lebedev via llvm-commits llvm-commits at lists.llvm.org
Tue Dec 13 05:25:10 PST 2022


Author: Roman Lebedev
Date: 2022-12-13T16:24:46+03:00
New Revision: a33ae9ac3593d999e16eacc8aa22e8bd8e220409

URL: https://github.com/llvm/llvm-project/commit/a33ae9ac3593d999e16eacc8aa22e8bd8e220409
DIFF: https://github.com/llvm/llvm-project/commit/a33ae9ac3593d999e16eacc8aa22e8bd8e220409.diff

LOG: [NFC][CMake] Explicitly link to MC when needed

These targets use `MCInst`, but don't explicitly link
to the library providing it (MC), and just rely on it
being pulled transitively through e.g. MCDisassembler,
but that only pulls includes, and does not link to it.

Case in point, when i add explicit destructor to `MCInst`,
defined in `.cpp`, these targets were failing to link.

Added: 
    

Modified: 
    llvm/lib/Target/ARM/Disassembler/CMakeLists.txt
    llvm/lib/Target/AVR/Disassembler/CMakeLists.txt
    llvm/lib/Target/BPF/Disassembler/CMakeLists.txt
    llvm/lib/Target/MSP430/Disassembler/CMakeLists.txt
    llvm/lib/Target/Mips/Disassembler/CMakeLists.txt
    llvm/lib/Target/PowerPC/Disassembler/CMakeLists.txt
    llvm/lib/Target/Sparc/Disassembler/CMakeLists.txt
    llvm/lib/Target/VE/Disassembler/CMakeLists.txt
    llvm/lib/Target/XCore/Disassembler/CMakeLists.txt
    llvm/tools/llvm-exegesis/lib/AArch64/CMakeLists.txt
    llvm/tools/llvm-exegesis/lib/Mips/CMakeLists.txt
    llvm/tools/llvm-exegesis/lib/PowerPC/CMakeLists.txt
    llvm/tools/llvm-exegesis/lib/X86/CMakeLists.txt

Removed: 
    


################################################################################
diff  --git a/llvm/lib/Target/ARM/Disassembler/CMakeLists.txt b/llvm/lib/Target/ARM/Disassembler/CMakeLists.txt
index ad7022fd6ff0f..f02607ab53b59 100644
--- a/llvm/lib/Target/ARM/Disassembler/CMakeLists.txt
+++ b/llvm/lib/Target/ARM/Disassembler/CMakeLists.txt
@@ -5,6 +5,7 @@ add_llvm_component_library(LLVMARMDisassembler
   ARMDesc
   ARMInfo
   MCDisassembler
+  MC
   Support
   ARMUtils
 

diff  --git a/llvm/lib/Target/AVR/Disassembler/CMakeLists.txt b/llvm/lib/Target/AVR/Disassembler/CMakeLists.txt
index 35a22cccfe143..aa7b563ad85ee 100644
--- a/llvm/lib/Target/AVR/Disassembler/CMakeLists.txt
+++ b/llvm/lib/Target/AVR/Disassembler/CMakeLists.txt
@@ -3,8 +3,9 @@ add_llvm_component_library(LLVMAVRDisassembler
 
   LINK_COMPONENTS
   MCDisassembler
-  AVRInfo
+  MC
   Support
+  AVRInfo
 
   ADD_TO_COMPONENT
   AVR

diff  --git a/llvm/lib/Target/BPF/Disassembler/CMakeLists.txt b/llvm/lib/Target/BPF/Disassembler/CMakeLists.txt
index 10db730e26ce2..a23b9c25d5389 100644
--- a/llvm/lib/Target/BPF/Disassembler/CMakeLists.txt
+++ b/llvm/lib/Target/BPF/Disassembler/CMakeLists.txt
@@ -3,6 +3,7 @@ add_llvm_component_library(LLVMBPFDisassembler
 
   LINK_COMPONENTS
   MCDisassembler
+  MC
   BPFInfo
   Support
 

diff  --git a/llvm/lib/Target/MSP430/Disassembler/CMakeLists.txt b/llvm/lib/Target/MSP430/Disassembler/CMakeLists.txt
index 9c99b1902eac3..93d7c74042ac3 100644
--- a/llvm/lib/Target/MSP430/Disassembler/CMakeLists.txt
+++ b/llvm/lib/Target/MSP430/Disassembler/CMakeLists.txt
@@ -3,6 +3,7 @@ add_llvm_component_library(LLVMMSP430Disassembler
 
   LINK_COMPONENTS
   MCDisassembler
+  MC
   MSP430Info
   Support
 

diff  --git a/llvm/lib/Target/Mips/Disassembler/CMakeLists.txt b/llvm/lib/Target/Mips/Disassembler/CMakeLists.txt
index eaeb9d4cc790f..dbc7069dce520 100644
--- a/llvm/lib/Target/Mips/Disassembler/CMakeLists.txt
+++ b/llvm/lib/Target/Mips/Disassembler/CMakeLists.txt
@@ -3,6 +3,7 @@ add_llvm_component_library(LLVMMipsDisassembler
 
   LINK_COMPONENTS
   MCDisassembler
+  MC
   MipsInfo
   Support
 

diff  --git a/llvm/lib/Target/PowerPC/Disassembler/CMakeLists.txt b/llvm/lib/Target/PowerPC/Disassembler/CMakeLists.txt
index 60ce3a0005d96..e83920664da4f 100644
--- a/llvm/lib/Target/PowerPC/Disassembler/CMakeLists.txt
+++ b/llvm/lib/Target/PowerPC/Disassembler/CMakeLists.txt
@@ -3,6 +3,7 @@ add_llvm_component_library(LLVMPowerPCDisassembler
 
   LINK_COMPONENTS
   MCDisassembler
+  MC
   PowerPCInfo
   Support
 

diff  --git a/llvm/lib/Target/Sparc/Disassembler/CMakeLists.txt b/llvm/lib/Target/Sparc/Disassembler/CMakeLists.txt
index 287e813299280..b6efd0834207c 100644
--- a/llvm/lib/Target/Sparc/Disassembler/CMakeLists.txt
+++ b/llvm/lib/Target/Sparc/Disassembler/CMakeLists.txt
@@ -3,6 +3,7 @@ add_llvm_component_library(LLVMSparcDisassembler
 
   LINK_COMPONENTS
   MCDisassembler
+  MC
   SparcInfo
   Support
 

diff  --git a/llvm/lib/Target/VE/Disassembler/CMakeLists.txt b/llvm/lib/Target/VE/Disassembler/CMakeLists.txt
index 896f023e94cd8..9f7df343fc838 100644
--- a/llvm/lib/Target/VE/Disassembler/CMakeLists.txt
+++ b/llvm/lib/Target/VE/Disassembler/CMakeLists.txt
@@ -3,6 +3,7 @@ add_llvm_component_library(LLVMVEDisassembler
 
   LINK_COMPONENTS
   MCDisassembler
+  MC
   VEInfo
   Support
 

diff  --git a/llvm/lib/Target/XCore/Disassembler/CMakeLists.txt b/llvm/lib/Target/XCore/Disassembler/CMakeLists.txt
index cf4a63bb34e0c..52da6cc1fcd7f 100644
--- a/llvm/lib/Target/XCore/Disassembler/CMakeLists.txt
+++ b/llvm/lib/Target/XCore/Disassembler/CMakeLists.txt
@@ -3,6 +3,7 @@ add_llvm_component_library(LLVMXCoreDisassembler
 
   LINK_COMPONENTS
   MCDisassembler
+  MC
   Support
   XCoreInfo
 

diff  --git a/llvm/tools/llvm-exegesis/lib/AArch64/CMakeLists.txt b/llvm/tools/llvm-exegesis/lib/AArch64/CMakeLists.txt
index e416d806de62d..554eabdc16244 100644
--- a/llvm/tools/llvm-exegesis/lib/AArch64/CMakeLists.txt
+++ b/llvm/tools/llvm-exegesis/lib/AArch64/CMakeLists.txt
@@ -8,6 +8,7 @@ set(LLVM_LINK_COMPONENTS
   Exegesis
   Core
   Support
+  MC
   )
 
 add_llvm_library(LLVMExegesisAArch64

diff  --git a/llvm/tools/llvm-exegesis/lib/Mips/CMakeLists.txt b/llvm/tools/llvm-exegesis/lib/Mips/CMakeLists.txt
index ecf659037fed3..9ceabb52c934e 100644
--- a/llvm/tools/llvm-exegesis/lib/Mips/CMakeLists.txt
+++ b/llvm/tools/llvm-exegesis/lib/Mips/CMakeLists.txt
@@ -8,6 +8,7 @@ set(LLVM_LINK_COMPONENTS
   Exegesis
   Core
   Support
+  MC
   )
 
 add_llvm_library(LLVMExegesisMips

diff  --git a/llvm/tools/llvm-exegesis/lib/PowerPC/CMakeLists.txt b/llvm/tools/llvm-exegesis/lib/PowerPC/CMakeLists.txt
index 29e7f5783432a..0d3c46720a5cc 100644
--- a/llvm/tools/llvm-exegesis/lib/PowerPC/CMakeLists.txt
+++ b/llvm/tools/llvm-exegesis/lib/PowerPC/CMakeLists.txt
@@ -8,6 +8,7 @@ set(LLVM_LINK_COMPONENTS
   Exegesis
   Core
   Support
+  MC
   )
 
 add_llvm_library(LLVMExegesisPowerPC

diff  --git a/llvm/tools/llvm-exegesis/lib/X86/CMakeLists.txt b/llvm/tools/llvm-exegesis/lib/X86/CMakeLists.txt
index da30b9bf5897a..7eddb360127a9 100644
--- a/llvm/tools/llvm-exegesis/lib/X86/CMakeLists.txt
+++ b/llvm/tools/llvm-exegesis/lib/X86/CMakeLists.txt
@@ -9,6 +9,7 @@ set(LLVM_LINK_COMPONENTS
   Core
   Support
   CodeGen
+  MC
   )
 
 add_llvm_library(LLVMExegesisX86


        


More information about the llvm-commits mailing list