xref: /netbsd-src/external/apache2/llvm/bin/llvm-objcopy/Makefile (revision 53d1339bf7f9c7367b35a9e1ebe693f9b047a47b)
1#	$NetBSD: Makefile,v 1.2 2021/05/30 01:56:48 joerg Exp $
2
3PROG_CXX=	llvm-objcopy
4NOMAN=		yes
5
6.include <bsd.init.mk>
7
8.PATH: ${LLVM_SRCDIR}/tools/llvm-objcopy
9
10CPPFLAGS+=	-I${LLVM_SRCDIR}/tools/llvm-objcopy
11
12SRCS=	llvm-objcopy.cpp \
13	ConfigManager.cpp
14
15.PATH: ${LLVM_SRCDIR}/tools/llvm-objcopy/COFF
16SRCS+=	COFFObjcopy.cpp \
17	Object.cpp \
18	Reader.cpp \
19	Writer.cpp
20
21.PATH: ${LLVM_SRCDIR}/tools/llvm-objcopy/ELF
22SRCS+=	ELFObjcopy.cpp \
23	ELFObject.cpp
24
25ELFObject.cpp: ${LLVM_SRCDIR}/tools/llvm-objcopy/ELF/Object.cpp
26	cat ${LLVM_SRCDIR}/tools/llvm-objcopy/ELF/Object.cpp > ELFObject.cpp
27
28CPPFLAGS.ELFObject.cpp+=	-I${LLVM_SRCDIR}/tools/llvm-objcopy/ELF
29
30.PATH: ${LLVM_SRCDIR}/tools/llvm-objcopy/MachO
31SRCS+=	MachOLayoutBuilder.cpp \
32	MachOObjcopy.cpp \
33	MachOObject.cpp \
34	MachOReader.cpp \
35	MachOWriter.cpp
36
37MachOObject.cpp: ${LLVM_SRCDIR}/tools/llvm-objcopy/MachO/Object.cpp
38	cat ${LLVM_SRCDIR}/tools/llvm-objcopy/MachO/Object.cpp > MachOObject.cpp
39
40CPPFLAGS.MachOObject.cpp+=	-I${LLVM_SRCDIR}/tools/llvm-objcopy/MachO
41
42.PATH: ${LLVM_SRCDIR}/tools/llvm-objcopy/wasm
43SRCS+=	WasmObjcopy.cpp \
44	WasmObject.cpp \
45	wasmReader.cpp \
46	wasmWriter.cpp
47
48WasmObject.cpp: ${LLVM_SRCDIR}/tools/llvm-objcopy/wasm/Object.cpp
49	cat ${LLVM_SRCDIR}/tools/llvm-objcopy/wasm/Object.cpp > WasmObject.cpp
50WasmReader.cpp: ${LLVM_SRCDIR}/tools/llvm-objcopy/wasm/Reader.cpp
51	cat ${LLVM_SRCDIR}/tools/llvm-objcopy/wasm/Reader.cpp > WasmReader.cpp
52WasmWriter.cpp: ${LLVM_SRCDIR}/tools/llvm-objcopy/wasm/Writer.cpp
53	cat ${LLVM_SRCDIR}/tools/llvm-objcopy/wasm/Writer.cpp > WasmWriter.cpp
54
55TABLEGEN_SRC=		CommonOpts.td ObjcopyOpts.td StripOpts.td
56
57TABLEGEN_OUTPUT.CommonOpts.td= \
58	CommonOpts.inc|-gen-opt-parser-defs
59
60TABLEGEN_OUTPUT.ObjcopyOpts.td= \
61	ObjcopyOpts.inc|-gen-opt-parser-defs
62
63TABLEGEN_OUTPUT.StripOpts.td= \
64	StripOpts.inc|-gen-opt-parser-defs
65.include "${.PARSEDIR}/../../tablegen.mk"
66
67LDADD+=	-lz
68DPADD+=	${LIBZ}
69
70LLVM_LIBS+= \
71	Object \
72	BitReader \
73	BitstreamReader \
74	MCParser \
75	MC \
76	IR \
77	BinaryFormat \
78	Option \
79	Support \
80	Demangle
81
82.include "${.PARSEDIR}/../../link.mk"
83
84.include <bsd.prog.mk>
85