From a33ae9ac3593d999e16eacc8aa22e8bd8e220409 Mon Sep 17 00:00:00 2001 From: Roman Lebedev Date: Tue, 13 Dec 2022 16:13:34 +0300 Subject: [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. --- llvm/lib/Target/ARM/Disassembler/CMakeLists.txt | 1 + llvm/lib/Target/AVR/Disassembler/CMakeLists.txt | 3 ++- llvm/lib/Target/BPF/Disassembler/CMakeLists.txt | 1 + llvm/lib/Target/MSP430/Disassembler/CMakeLists.txt | 1 + llvm/lib/Target/Mips/Disassembler/CMakeLists.txt | 1 + llvm/lib/Target/PowerPC/Disassembler/CMakeLists.txt | 1 + llvm/lib/Target/Sparc/Disassembler/CMakeLists.txt | 1 + llvm/lib/Target/VE/Disassembler/CMakeLists.txt | 1 + llvm/lib/Target/XCore/Disassembler/CMakeLists.txt | 1 + llvm/tools/llvm-exegesis/lib/AArch64/CMakeLists.txt | 1 + llvm/tools/llvm-exegesis/lib/Mips/CMakeLists.txt | 1 + llvm/tools/llvm-exegesis/lib/PowerPC/CMakeLists.txt | 1 + llvm/tools/llvm-exegesis/lib/X86/CMakeLists.txt | 1 + 13 files changed, 14 insertions(+), 1 deletion(-) (limited to 'llvm') diff --git a/llvm/lib/Target/ARM/Disassembler/CMakeLists.txt b/llvm/lib/Target/ARM/Disassembler/CMakeLists.txt index ad7022f..f02607a 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 35a22cc..aa7b563 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 10db730..a23b9c2 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 9c99b19..93d7c74 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 eaeb9d4..dbc7069 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 60ce3a0..e839206 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 287e813..b6efd08 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 896f023..9f7df34 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 cf4a63b..52da6cc 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 e416d80..554eabd 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 ecf6590..9ceabb5 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 29e7f57..0d3c467 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 da30b9b..7eddb36 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 -- cgit v1.1