Makefile revision 203434
1# $FreeBSD: head/gnu/usr.bin/binutils/libbfd/Makefile 203434 2010-02-03 18:29:35Z imp $
2
3.include "../Makefile.inc0"
4
5.PATH: ${SRCDIR}/bfd ${SRCDIR}/opcodes
6
7LIB=	bfd
8SRCS+=	archive.c archive64.c archures.c bfd.c bfdwin.c binary.c cache.c \
9	coffgen.c corefile.c elf.c elf-eh-frame.c elf-strtab.c format.c \
10	hash.c ihex.c init.c libbfd.c linker.c merge.c opncls.c reloc.c \
11	section.c srec.c stab-syms.c stabs.c syms.c targets.c tekhex.c \
12	targmatch.h dwarf1.c dwarf2.c config.h bfdver.h bfdio.c simple.c
13WARNS?=	0
14.if (${TARGET_ARCH} == "ia64" || ${TARGET_ARCH} == "sparc64")
15WARNS?=	2
16.endif
17CFLAGS+= -D_GNU_SOURCE
18CFLAGS+= -I${SRCDIR}/bfd
19INTERNALLIB=
20CLEANFILES+=	bfdver.h config.h targmatch.h
21
22SELARCH=
23.if ${TARGET_ARCH} == "amd64"
24SELARCH= &bfd_i386_arch
25.elif ${TARGET_ARCH} == "sparc64"
26SELARCH= &bfd_sparc_arch
27.else
28.for _a in ${ARCHS}
29.if ${SELARCH} == ""
30SELARCH+= &bfd_${_a}_arch
31.else
32SELARCH+= ,&bfd_${_a}_arch
33.endif
34.endfor
35.endif
36CFLAGS+= -DSELECT_ARCHITECTURES="${SELARCH}"
37
38SELVEC=
39.for _v in ${VECS}
40CFLAGS+= -DHAVE_${_v}
41.if ${SELVEC} == ""
42SELVEC+= &${_v}
43.else
44SELVEC+= ,&${_v}
45.endif
46.endfor
47CFLAGS+= -DSELECT_VECS="${SELVEC}"
48CFLAGS+= -DDEFAULT_VECTOR=${DEFAULT_VECTOR}
49
50# XXX:DEO should grab BFD_VERSION_DATE from ${VERSION}...
51bfdver.h: Makefile
52	echo '#define BFD_VERSION	215000000'	> ${.TARGET}
53	echo '#define BFD_VERSION_DATE	20040517'	>> ${.TARGET}
54	echo '#define BFD_VERSION_STRING ${VERSION}'	>> ${.TARGET}
55
56targmatch.h: targmatch.sed config.bfd
57	sed -f ${.ALLSRC:M*.sed} ${.ALLSRC:M*.bfd} > ${.TARGET}
58
59config.h: config.h.fbsd
60.if ${TARGET_ARCH} == "i386"
61	sed -e 's,!!TRAD_HEADER!!,"hosts/i386bsd.h",g' ${.ALLSRC} > ${.TARGET}
62.else
63	sed -e 's,!!TRAD_HEADER!!,,g' ${.ALLSRC} > ${.TARGET}
64.endif
65
66CLEANFILES+=	elf32-target.h elf64-target.h
67elf32-target.h: elfxx-target.h
68	sed -e s/NN/32/g ${.ALLSRC} > ${.TARGET}
69
70elf64-target.h: elfxx-target.h
71	sed -e s/NN/64/g ${.ALLSRC} > ${.TARGET}
72
73.include <bsd.lib.mk>
74