xref: /llvm-project/llvm/tools/llvm-objdump/CMakeLists.txt (revision eb601430d3d7f45c30ef8d793a45cbcedf910577)
1set(LLVM_LINK_COMPONENTS
2  AllTargetsDescs
3  AllTargetsDisassemblers
4  AllTargetsInfos
5  BinaryFormat
6  DebugInfoBTF
7  DebugInfoDWARF
8  Demangle
9  MC
10  MCDisassembler
11  Object
12  Option
13  Support
14  Symbolize
15  TargetParser
16  )
17
18set(LLVM_TARGET_DEFINITIONS ObjdumpOpts.td)
19tablegen(LLVM ObjdumpOpts.inc -gen-opt-parser-defs)
20add_public_tablegen_target(ObjdumpOptsTableGen)
21
22set(LLVM_TARGET_DEFINITIONS OtoolOpts.td)
23tablegen(LLVM OtoolOpts.inc -gen-opt-parser-defs)
24add_public_tablegen_target(OtoolOptsTableGen)
25
26add_llvm_tool(llvm-objdump
27  llvm-objdump.cpp
28  SourcePrinter.cpp
29  COFFDump.cpp
30  ELFDump.cpp
31  MachODump.cpp
32  OffloadDump.cpp
33  WasmDump.cpp
34  XCOFFDump.cpp
35  DEPENDS
36  ObjdumpOptsTableGen
37  OtoolOptsTableGen
38  GENERATE_DRIVER
39  )
40
41if(NOT LLVM_TOOL_LLVM_DRIVER_BUILD)
42  target_link_libraries(llvm-objdump PRIVATE LLVMDebuginfod)
43endif()
44
45add_llvm_tool_symlink(llvm-otool llvm-objdump)
46
47if(LLVM_INSTALL_BINUTILS_SYMLINKS)
48  add_llvm_tool_symlink(objdump llvm-objdump)
49endif()
50
51if(LLVM_INSTALL_CCTOOLS_SYMLINKS)
52  add_llvm_tool_symlink(otool llvm-otool)
53endif()
54