xref: /openbsd-src/gnu/llvm/llvm/tools/llvm-objcopy/CMakeLists.txt (revision 1a8dbaac879b9f3335ad7fb25429ce63ac1d6bac)
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  DEPENDS
37  ObjcopyOptsTableGen
38  InstallNameToolOptsTableGen
39  StripOptsTableGen
40  )
41
42add_llvm_tool_symlink(llvm-install-name-tool llvm-objcopy)
43add_llvm_tool_symlink(llvm-strip llvm-objcopy)
44
45if(LLVM_INSTALL_BINUTILS_SYMLINKS)
46  add_llvm_tool_symlink(objcopy llvm-objcopy)
47  add_llvm_tool_symlink(strip llvm-objcopy)
48endif()
49