set(LLVM_LINK_COMPONENTS Core DebugInfoDWARF JITLink MC Object Support DWARFLinker DWARFLinkerClassic AsmPrinter TargetParser ) add_llvm_library(LLVMBOLTRewrite BinaryPassManager.cpp BoltDiff.cpp DWARFRewriter.cpp ExecutableFileMemoryManager.cpp JITLinkLinker.cpp LinuxKernelRewriter.cpp MachORewriteInstance.cpp MetadataManager.cpp BuildIDRewriter.cpp PseudoProbeRewriter.cpp RewriteInstance.cpp SDTRewriter.cpp DISABLE_LLVM_LINK_LLVM_DYLIB LINK_LIBS ${LLVM_PTHREAD_LIB} ) target_link_libraries(LLVMBOLTRewrite PRIVATE LLVMBOLTCore LLVMBOLTPasses LLVMBOLTProfile LLVMBOLTRuntimeLibs LLVMBOLTUtils ) foreach (tgt ${BOLT_TARGETS_TO_BUILD}) target_link_libraries(LLVMBOLTRewrite PRIVATE LLVMBOLTTarget${tgt}) string(TOUPPER "${tgt}" upper) target_compile_definitions(LLVMBOLTRewrite PRIVATE ${upper}_AVAILABLE) endforeach()