xref: /dragonfly/gnu/usr.bin/gdb/libbfd/Makefile (revision e0b1d537)
1.include "../Makefile.inc"
2
3LIB=	bfd
4INTERNALLIB=	true
5
6CONTRIBDIR=	${BASEDIR}/bfd
7.PATH:	${CONTRIBDIR}
8
9CFLAGS+=	-I${BASEDIR}/include -I${CONTRIBDIR} -I${.CURDIR} -I${.OBJDIR}
10# XXX no clue what DEBUGDIR is for
11CFLAGS+=	-DDEBUGDIR='"/usr/lib/debug"'
12
13SRCS=	archive.c archures.c bfd.c bfdio.c bfdwin.c \
14	cache.c coffgen.c corefile.c format.c init.c libbfd.c \
15	opncls.c reloc.c section.c syms.c targets.c hash.c \
16	linker.c srec.c binary.c tekhex.c ihex.c stabs.c \
17	stab-syms.c merge.c dwarf2.c simple.c compress.c \
18	verilog.c elf-nacl.c
19
20SRCS+=		targmatch.h elf32-target.h elf64-target.h
21CLEANFILES+=	elf64-target.h elf32-target.h targmatch.h
22
23targmatch.h: config.bfd targmatch.sed
24	sed -f ${CONTRIBDIR}/targmatch.sed < ${CONTRIBDIR}/config.bfd > ${.TARGET}
25
26elf32-target.h: elfxx-target.h
27	sed -e s/NN/32/g < ${CONTRIBDIR}/elfxx-target.h > ${.TARGET}
28elf64-target.h: elfxx-target.h
29	sed -e s/NN/64/g < ${CONTRIBDIR}/elfxx-target.h > ${.TARGET}
30
31TARGET_ARCH?=	${MACHINE_ARCH}
32.include "Makefile.${TARGET_ARCH}"
33
34_selvec=
35.for _v in ${VECTORS}
36CFLAGS+= -DHAVE_${_v}
37.if !empty(_selvec)
38_selvec+= ,
39.endif
40_selvec+= &${_v}
41.endfor
42CFLAGS+= -DSELECT_VECS='${_selvec}'
43CFLAGS+= -DSELECT_ARCHITECTURES='${ARCHITECTURES:S/^/\&/:S/$/,/} 0'
44CFLAGS+= -DDEFAULT_VECTOR=${DEFAULT_VECTOR}
45
46
47SRCS+=		bfd.h
48CLEANFILES+=	bfd.h
49
50# Used to do keyword replacement in bfd-X.h
51#
52BFD_HOST_64_BIT_DEFINED?=1
53BFD_HOST_LONG_LONG?=1
54.include "Makefile.host.${MACHINE_ARCH}"
55
56bfd.h: 	${CONTRIBDIR}/bfd-in2.h
57	sed -e "s/@wordsize@/${BFD_ARCH_SIZE}/g" \
58	    -e "s/@bfd_default_target_size@/${BFD_DEFAULT_TARGET_SIZE}/g" \
59	    -e "s/@BFD_HOST_64BIT_LONG@/${BFD_HOST_64BIT_LONG}/g" \
60	    -e "s/@BFD_HOST_64BIT_LONG_LONG@/${BFD_HOST_64BIT_LONG_LONG}/g" \
61	    -e "s/@BFD_HOST_64_BIT@/${BFD_HOST_64_BIT}/g" \
62	    -e "s/@BFD_HOST_U_64_BIT@/${BFD_HOST_U_64_BIT}/g" \
63	    -e "s/@BFD_HOST_64_BIT_DEFINED@/${BFD_HOST_64_BIT_DEFINED}/g" \
64	    -e "s/@BFD_HOST_LONG_LONG@/${BFD_HOST_LONG_LONG}/g" \
65	    -e "s/@bfd_file_ptr@/${BFD_HOST_64_BIT}/g" \
66	    -e "s/@BFD_HOSTPTR_T@/${BFD_HOSTPTR_T}/g" \
67	    < ${CONTRIBDIR}/bfd-in2.h > bfd.h.new
68	mv -f bfd.h.new bfd.h
69
70SRCS+=		bfd_stdint.h
71CLEANFILES+=	bfd_stdint.h
72
73bfd_stdint.h:
74	touch ${.TARGET}
75
76.include <bsd.lib.mk>
77