diff options
author | Oscar Fuentes <ofv@wanadoo.es> | 2011-07-28 02:33:52 +0000 |
---|---|---|
committer | Oscar Fuentes <ofv@wanadoo.es> | 2011-07-28 02:33:52 +0000 |
commit | 4ebc5916e9b3a43af8aff8e1b8744b1644457a4b (patch) | |
tree | 25ad65cf48677e75960a958590c0fa14c172a3f7 | |
parent | 3f01f673e5ed86b3994c4262577112c0dee8ebb0 (diff) | |
download | llvm-4ebc5916e9b3a43af8aff8e1b8744b1644457a4b.tar.gz llvm-4ebc5916e9b3a43af8aff8e1b8744b1644457a4b.tar.bz2 llvm-4ebc5916e9b3a43af8aff8e1b8744b1644457a4b.tar.xz |
Explicitly declare a library dependency of LLVM*Desc to
LLVM*AsmPrinter.
GenLibDeps.pl fails to detect vtable references. As this is the only
referenced symbol from LLVM*Desc to LLVM*AsmPrinter on optimized
builds, the algorithm that creates the list of libraries to be linked
into tools doesn't know about the dependency and sometimes places the
libraries on the wrong order, yielding error messages like this:
../../lib/libLLVMARMDesc.a(ARMMCTargetDesc.cpp.o): In function
`llvm::ARMInstPrinter::ARMInstPrinter(llvm::MCAsmInfo const&)':
ARMMCTargetDesc.cpp:(.text._ZN4llvm14ARMInstPrinterC1ERKNS_9MCAsmInfoE
[llvm::ARMInstPrinter::ARMInstPrinter(llvm::MCAsmInfo
const&)]+0x2a): undefined reference to `vtable for
llvm::ARMInstPrinter'
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@136328 91177308-0d34-0410-b5e6-96231b3b80d8
-rw-r--r-- | lib/Target/ARM/MCTargetDesc/CMakeLists.txt | 2 | ||||
-rw-r--r-- | lib/Target/MBlaze/MCTargetDesc/CMakeLists.txt | 2 | ||||
-rw-r--r-- | lib/Target/MSP430/MCTargetDesc/CMakeLists.txt | 2 | ||||
-rw-r--r-- | lib/Target/Mips/MCTargetDesc/CMakeLists.txt | 2 | ||||
-rw-r--r-- | lib/Target/PowerPC/MCTargetDesc/CMakeLists.txt | 2 | ||||
-rw-r--r-- | lib/Target/X86/MCTargetDesc/CMakeLists.txt | 2 |
6 files changed, 12 insertions, 0 deletions
diff --git a/lib/Target/ARM/MCTargetDesc/CMakeLists.txt b/lib/Target/ARM/MCTargetDesc/CMakeLists.txt index aca5671677..df2cf81be2 100644 --- a/lib/Target/ARM/MCTargetDesc/CMakeLists.txt +++ b/lib/Target/ARM/MCTargetDesc/CMakeLists.txt @@ -10,3 +10,5 @@ add_dependencies(LLVMARMDesc ARMCommonTableGen) # Hack: we need to include 'main' target directory to grab private headers include_directories(${CMAKE_CURRENT_SOURCE_DIR}/.. ${CMAKE_CURRENT_BINARY_DIR}/..) + +target_link_libraries(LLVMARMDesc LLVMARMAsmPrinter) diff --git a/lib/Target/MBlaze/MCTargetDesc/CMakeLists.txt b/lib/Target/MBlaze/MCTargetDesc/CMakeLists.txt index ef8d679d74..247dfe884e 100644 --- a/lib/Target/MBlaze/MCTargetDesc/CMakeLists.txt +++ b/lib/Target/MBlaze/MCTargetDesc/CMakeLists.txt @@ -5,3 +5,5 @@ add_llvm_library(LLVMMBlazeDesc MBlazeMCTargetDesc.cpp ) add_dependencies(LLVMMBlazeDesc MBlazeCommonTableGen) + +target_link_libraries(LLVMMBlazeDesc LLVMMBlazeAsmPrinter) diff --git a/lib/Target/MSP430/MCTargetDesc/CMakeLists.txt b/lib/Target/MSP430/MCTargetDesc/CMakeLists.txt index f30317b606..45b9ae8895 100644 --- a/lib/Target/MSP430/MCTargetDesc/CMakeLists.txt +++ b/lib/Target/MSP430/MCTargetDesc/CMakeLists.txt @@ -3,3 +3,5 @@ add_llvm_library(LLVMMSP430Desc MSP430MCAsmInfo.cpp ) add_dependencies(LLVMMSP430Desc MSP430CommonTableGen) + +target_link_libraries(LLVMMSP430Desc LLVMMSP430AsmPrinter) diff --git a/lib/Target/Mips/MCTargetDesc/CMakeLists.txt b/lib/Target/Mips/MCTargetDesc/CMakeLists.txt index 332c1a0a8b..98760c5cd2 100644 --- a/lib/Target/Mips/MCTargetDesc/CMakeLists.txt +++ b/lib/Target/Mips/MCTargetDesc/CMakeLists.txt @@ -3,3 +3,5 @@ add_llvm_library(LLVMMipsDesc MipsMCAsmInfo.cpp ) add_dependencies(LLVMMipsDesc MipsCommonTableGen) + +target_link_libraries(LLVMMipsDesc LLVMMipsAsmPrinter) diff --git a/lib/Target/PowerPC/MCTargetDesc/CMakeLists.txt b/lib/Target/PowerPC/MCTargetDesc/CMakeLists.txt index a2b20b29c7..78e7ab5a80 100644 --- a/lib/Target/PowerPC/MCTargetDesc/CMakeLists.txt +++ b/lib/Target/PowerPC/MCTargetDesc/CMakeLists.txt @@ -6,3 +6,5 @@ add_llvm_library(LLVMPowerPCDesc PPCPredicates.cpp ) add_dependencies(LLVMPowerPCDesc PowerPCCommonTableGen) + +target_link_libraries(LLVMPowerPCDesc LLVMPowerPCAsmPrinter) diff --git a/lib/Target/X86/MCTargetDesc/CMakeLists.txt b/lib/Target/X86/MCTargetDesc/CMakeLists.txt index be113711c0..4e7995d76b 100644 --- a/lib/Target/X86/MCTargetDesc/CMakeLists.txt +++ b/lib/Target/X86/MCTargetDesc/CMakeLists.txt @@ -9,3 +9,5 @@ add_dependencies(LLVMX86Desc X86CommonTableGen) # Hack: we need to include 'main' target directory to grab private headers include_directories(${CMAKE_CURRENT_SOURCE_DIR}/.. ${CMAKE_CURRENT_BINARY_DIR}/..) + +target_link_libraries(LLVMX86Desc LLVMX86AsmPrinter) |