aboutsummaryrefslogtreecommitdiff
path: root/mlir/lib/TableGen/CMakeLists.txt
blob: 55a2e355d6a3996cf1132183b4de7b1f74d48a22 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
# 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 dependence on MLIRIR, which must depend on libLLVM.so).  This works
# in this special case because this library is static.

llvm_add_library(MLIRTableGen STATIC
  Argument.cpp
  Attribute.cpp
  AttrOrTypeDef.cpp
  Builder.cpp
  Class.cpp
  Constraint.cpp
  Dialect.cpp
  Format.cpp
  GenInfo.cpp
  Interfaces.cpp
  Operator.cpp
  Pass.cpp
  Pattern.cpp
  Predicate.cpp
  Region.cpp
  SideEffects.cpp
  Successor.cpp
  Trait.cpp
  Type.cpp

  DISABLE_LLVM_LINK_LLVM_DYLIB

  ADDITIONAL_HEADER_DIRS
  ${MLIR_MAIN_INCLUDE_DIR}/mlir/TableGen
)

mlir_check_all_link_libraries(MLIRTableGen)

add_mlir_library_install(MLIRTableGen)