forked from OSchip/llvm-project
[MLIR][cmake] Fix unittest/Tablegen by special casing LLVMMLIRTableGen
unittest/Tablegen generates an executable that depends on MLIRIR and LLVMMLIRTableGen. Avoid specifying linkage dependence on LLVM libraries here because then everyone has to depend on those libraries. Differential Revision: https://reviews.llvm.org/D80093
This commit is contained in:
parent
8697d443ab
commit
d6b3b8a1a3
|
@ -1,7 +1,13 @@
|
|||
# This library is unusual, since mlir-tblgen depends on it.
|
||||
# For non-obvious reasons, linking mlir-tblgen fails with
|
||||
# LLVM_BUILD_LLVM_DYLIB and LLVM_LINK_LLVM_DYLIB unless
|
||||
# DISABLE_LLVM_LINK_LLVM_DYLIB is set.
|
||||
# This library is unusual, since mlir-tblgen depends on it, which is
|
||||
# built with DISABLE_LLVM_LINK_LLVM_DYLIB, this must also be built
|
||||
# with that option. Otherwise builds with LLVM_BUILD_LLVM_DYLIB and
|
||||
# LLVM_LINK_LLVM_DYLIB fail. (Note that even if this has no llvm
|
||||
# component dependencies, LLVM_LINK_LLVM_DYLIB tends to introduce a
|
||||
# dependence on libLLVM.so) However, it must also be linkable against
|
||||
# libMLIR.so in some contexts (see unittests/Tablegen, for instance, which
|
||||
# has a dependance on MLIRIR, which must depend on libLLVM.so). This works
|
||||
# in this special case because this library is static.
|
||||
|
||||
llvm_add_library(LLVMMLIRTableGen STATIC
|
||||
Argument.cpp
|
||||
Attribute.cpp
|
||||
|
@ -24,10 +30,6 @@ llvm_add_library(LLVMMLIRTableGen STATIC
|
|||
|
||||
ADDITIONAL_HEADER_DIRS
|
||||
${MLIR_MAIN_INCLUDE_DIR}/mlir/TableGen
|
||||
|
||||
LINK_COMPONENTS
|
||||
TableGen
|
||||
Demangle
|
||||
)
|
||||
)
|
||||
|
||||
mlir_check_all_link_libraries(LLVMMLIRTableGen)
|
||||
|
|
Loading…
Reference in New Issue