]> CyberLeo.Net >> Repos - FreeBSD/FreeBSD.git/blob - usr.bin/clang/llvm-objcopy/Makefile
Add WITH_LLVM_BINUTILS to install LLVM binutils instead of Elftoolchain
[FreeBSD/FreeBSD.git] / usr.bin / clang / llvm-objcopy / Makefile
1 # $FreeBSD$
2
3 .include <src.opts.mk>
4
5 PROG_CXX=       llvm-objcopy
6
7 SRCDIR=         llvm/tools/llvm-objcopy
8 SRCS+=          Buffer.cpp
9 SRCS+=          COFF/COFFObjcopy.cpp
10 SRCS+=          COFF/Object.cpp
11 SRCS+=          COFF/Reader.cpp
12 SRCS+=          COFF/Writer.cpp
13 SRCS+=          CopyConfig.cpp
14 SRCS+=          ELF/ELFConfig.cpp
15 SRCS+=          ELF/ELFObjcopy.cpp
16 SRCS+=          ELF/Object.cpp
17 SRCS+=          MachO/MachOLayoutBuilder.cpp
18 SRCS+=          MachO/MachOObjcopy.cpp
19 SRCS+=          MachO/MachOReader.cpp
20 SRCS+=          MachO/MachOWriter.cpp
21 SRCS+=          MachO/Object.cpp
22 SRCS+=          llvm-objcopy.cpp
23 SRCS+=          wasm/Object.cpp
24 SRCS+=          wasm/Reader.cpp
25 SRCS+=          wasm/WasmObjcopy.cpp
26 SRCS+=          wasm/Writer.cpp
27
28 .include "${SRCTOP}/lib/clang/llvm.pre.mk"
29
30 CFLAGS+=        -I${.OBJDIR}
31 CFLAGS+=        -I${LLVM_BASE}/${SRCDIR}
32
33 .for hdr in BitcodeStripOpts InstallNameToolOpts ObjcopyOpts StripOpts
34 ${hdr}.inc: ${LLVM_BASE}/${SRCDIR}/${hdr}.td
35         ${LLVM_TBLGEN} -gen-opt-parser-defs \
36             -I ${LLVM_SRCS}/tools/llvm-objcopy -I ${LLVM_SRCS}/include \
37             -d ${.TARGET}.d -o ${.TARGET} ${LLVM_BASE}/${SRCDIR}/${hdr}.td
38 TGHDRS+=        ${hdr}.inc
39 .endfor
40
41 DEPENDFILES+=   ${TGHDRS:C/$/.d/}
42 DPSRCS+=        ${TGHDRS}
43 CLEANFILES+=    ${TGHDRS} ${TGHDRS:C/$/.d/}
44
45 LIBADD+=        z
46
47 LINKS=          ${BINDIR}/llvm-objcopy ${BINDIR}/llvm-strip
48
49 .if ${MK_LLVM_BINUTILS} != "no"
50 LINKS+=         ${BINDIR}/llvm-objcopy ${BINDIR}/objcopy \
51                 ${BINDIR}/llvm-strip ${BINDIR}/strip
52 MLINKS=         llvm-objcopy.1 objcopy.1
53 .endif
54
55 .include "../llvm.prog.mk"