forked from OSchip/llvm-project
The TableGen parts of the CMake build are seriously broken. This fixes
one aspect of them by having them use the (annoying, if not broken) proper library dependency model for adding the LLVMTableGen library as a dependency. This could manifest as a link order issue in the presence of separate LLVM / Clang source builds with CMake and a linker that really cares about such things. Also, add the Support dependency to llvm-tblgen itself so that it doesn't rely on TableGen's transitive Support dependency. A parallel change for clang-tblgen will be forthcoming. llvm-svn: 143531
This commit is contained in:
parent
1d9269a8d6
commit
39bf89b382
|
@ -76,7 +76,10 @@ endif()
|
|||
macro(add_tablegen target project)
|
||||
set(CMAKE_RUNTIME_OUTPUT_DIRECTORY ${LLVM_TOOLS_BINARY_DIR})
|
||||
|
||||
set(${target}_OLD_LLVM_LINK_COMPONENTS ${LLVM_LINK_COMPONENTS})
|
||||
set(LLVM_LINK_COMPONENTS ${LLVM_LINK_COMPONENTS} TableGen)
|
||||
add_llvm_utility(${target} ${ARGN})
|
||||
set(LLVM_LINK_COMPONENTS ${target}_OLD_LLVM_LINK_COMPONENTS)
|
||||
|
||||
set(${project}_TABLEGEN "${target}" CACHE
|
||||
STRING "Native TableGen executable. Saves building one when cross-compiling.")
|
||||
|
@ -110,7 +113,6 @@ macro(add_tablegen target project)
|
|||
endif()
|
||||
endif()
|
||||
|
||||
target_link_libraries(${target} LLVMSupport LLVMTableGen)
|
||||
if( MINGW )
|
||||
target_link_libraries(${target} imagehlp psapi)
|
||||
if(CMAKE_SIZEOF_VOID_P MATCHES "8")
|
||||
|
|
|
@ -1,5 +1,6 @@
|
|||
set(LLVM_REQUIRES_EH 1)
|
||||
set(LLVM_REQUIRES_RTTI 1)
|
||||
set(LLVM_LINK_COMPONENTS Support)
|
||||
|
||||
add_tablegen(llvm-tblgen LLVM
|
||||
ARMDecoderEmitter.cpp
|
||||
|
|
Loading…
Reference in New Issue