xref: /openbsd-src/gnu/llvm/llvm/tools/llvm-objcopy/CMakeLists.txt (revision f1dd7b858388b4a23f4f67a4957ec5ff656ebbe8)
1set(LLVM_LINK_COMPONENTS
2  Object
3  Option
4  Support
5  MC
6  )
7
8set(LLVM_TARGET_DEFINITIONS ObjcopyOpts.td)
9tablegen(LLVM ObjcopyOpts.inc -gen-opt-parser-defs)
10add_public_tablegen_target(ObjcopyOptsTableGen)
11
12set(LLVM_TARGET_DEFINITIONS InstallNameToolOpts.td)
13tablegen(LLVM InstallNameToolOpts.inc -gen-opt-parser-defs)
14add_public_tablegen_target(InstallNameToolOptsTableGen)
15
16set(LLVM_TARGET_DEFINITIONS StripOpts.td)
17tablegen(LLVM StripOpts.inc -gen-opt-parser-defs)
18add_public_tablegen_target(StripOptsTableGen)
19
20add_llvm_tool(llvm-objcopy
21  Buffer.cpp
22  CopyConfig.cpp
23  llvm-objcopy.cpp
24  COFF/COFFObjcopy.cpp
25  COFF/Object.cpp
26  COFF/Reader.cpp
27  COFF/Writer.cpp
28  ELF/ELFConfig.cpp
29  ELF/ELFObjcopy.cpp
30  ELF/Object.cpp
31  MachO/MachOObjcopy.cpp
32  MachO/MachOReader.cpp
33  MachO/MachOWriter.cpp
34  MachO/MachOLayoutBuilder.cpp
35  MachO/Object.cpp
36  wasm/Object.cpp
37  wasm/Reader.cpp
38  wasm/Writer.cpp
39  wasm/WasmObjcopy.cpp
40  DEPENDS
41  ObjcopyOptsTableGen
42  InstallNameToolOptsTableGen
43  StripOptsTableGen
44  )
45
46add_llvm_tool_symlink(llvm-install-name-tool llvm-objcopy)
47add_llvm_tool_symlink(llvm-strip llvm-objcopy)
48
49if(LLVM_INSTALL_BINUTILS_SYMLINKS)
50  add_llvm_tool_symlink(objcopy llvm-objcopy)
51  add_llvm_tool_symlink(strip llvm-objcopy)
52endif()
53