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