xref: /llvm-project/bolt/lib/Rewrite/CMakeLists.txt (revision e7244d8659f1ee7b6dcf8fc90e33d81cda178f45)
1set(LLVM_LINK_COMPONENTS
2  Core
3  DebugInfoDWARF
4  JITLink
5  MC
6  Object
7  Support
8  DWARFLinker
9  DWARFLinkerClassic
10  AsmPrinter
11  TargetParser
12  )
13
14add_llvm_library(LLVMBOLTRewrite
15  BinaryPassManager.cpp
16  BoltDiff.cpp
17  DWARFRewriter.cpp
18  ExecutableFileMemoryManager.cpp
19  JITLinkLinker.cpp
20  LinuxKernelRewriter.cpp
21  MachORewriteInstance.cpp
22  MetadataManager.cpp
23  BuildIDRewriter.cpp
24  PseudoProbeRewriter.cpp
25  RewriteInstance.cpp
26  SDTRewriter.cpp
27
28  NO_EXPORT
29  DISABLE_LLVM_LINK_LLVM_DYLIB
30
31  LINK_LIBS
32  ${LLVM_PTHREAD_LIB}
33  )
34
35target_link_libraries(LLVMBOLTRewrite
36  PRIVATE
37  LLVMBOLTCore
38  LLVMBOLTPasses
39  LLVMBOLTProfile
40  LLVMBOLTRuntimeLibs
41  LLVMBOLTUtils
42  )
43
44foreach (tgt ${BOLT_TARGETS_TO_BUILD})
45  target_link_libraries(LLVMBOLTRewrite PRIVATE LLVMBOLTTarget${tgt})
46  string(TOUPPER "${tgt}" upper)
47  target_compile_definitions(LLVMBOLTRewrite PRIVATE ${upper}_AVAILABLE)
48endforeach()
49