]> CyberLeo.Net >> Repos - FreeBSD/FreeBSD.git/blob - gnu/usr.bin/binutils/ld/Makefile
Upgrade Unbound to 1.6.6. More to follow.
[FreeBSD/FreeBSD.git] / gnu / usr.bin / binutils / ld / Makefile
1 # $FreeBSD$
2
3 ELF_SCR_EXT=    x xbn xc xd xdc xdw xn xr xs xsc xsw xu xw
4 .include "../Makefile.inc0"
5 .include <src.opts.mk>
6
7 .PATH: ${SRCDIR}/ld
8
9 PROG=   ld.bfd
10 .if ${MK_LLD_IS_LD} == "no"
11 MAN=    ld.1
12 .else
13 MAN=    ld.bfd.1
14 CLEANFILES+=    ld.bfd.1
15 ld.bfd.1:       ld.1
16         ${CP} ${.ALLSRC} ${.TARGET}
17 .endif
18
19 SCRIPTDIR= /usr/libdata/ldscripts
20 SRCS+=  ldcref.c \
21         ldctor.c \
22         ldemul-list.h \
23         ldemul.c \
24         ldexp.c \
25         ldfile.c \
26         ldgram.y \
27         ldlang.c \
28         ldlex.l \
29         ldmain.c \
30         ldmisc.c \
31         ldver.c \
32         ldwrite.c \
33         lexsup.c \
34         mri.c
35
36 CFLAGS+= -DTARGET=\"${TARGET_TUPLE}\"
37 CFLAGS+= -DDEFAULT_EMULATION=\"${NATIVE_EMULATION}\"
38 CFLAGS+= -DSCRIPTDIR=\"${TOOLS_PREFIX}/usr/libdata\"
39 CFLAGS+= -DBFD_VERSION_STRING=\"${VERSION}\"
40 CFLAGS+= -DBINDIR=\"${BINDIR}\"
41 .if defined(TOOLS_PREFIX)
42 CFLAGS+= -DTARGET_SYSTEM_ROOT=\"${TOOLS_PREFIX}\"
43 .else
44 CFLAGS+= -DTARGET_SYSTEM_ROOT=\"/\"
45 .endif
46 CFLAGS+= -DTOOLBINDIR=\"${TOOLS_PREFIX}/${BINDIR}/libexec\"
47 CFLAGS+= -D_GNU_SOURCE
48 CFLAGS+= -I${SRCDIR}/ld -I${SRCDIR}/bfd
49 .if ${MK_SHARED_TOOLCHAIN} == "no"
50 NO_SHARED?= yes
51 .endif
52 DPADD=  ${GNURELTOP}/libbfd/libbfd.a
53 DPADD+= ${GNURELTOP}/libiberty/libiberty.a
54 LDADD=  ${DPADD}
55 CLEANDIRS+=     ldscripts
56 CLEANFILES+=    ldemul-list.h stringify.sed
57
58 FILES=          ${LDSCRIPTS:S|^|ldscripts/|}
59 FILESDIR=       ${SCRIPTDIR}
60 .if ${MK_LLD_IS_LD} == "no"
61 LINKS=          ${BINDIR}/ld.bfd ${BINDIR}/ld
62 .endif
63
64 HOST=           ${TARGET_TUPLE}
65 LIBSEARCHPATH=  \"=/lib\":\"=/usr/lib\"
66 .for ext in ${ELF_SCR_EXT}
67 LDSCRIPTS+=     ${NATIVE_EMULATION}.${ext}
68 ldscripts/${NATIVE_EMULATION}.${ext}: e${NATIVE_EMULATION}.c
69 .endfor
70
71 EMXFR=
72 EMLST=
73 .for _e in ${NATIVE_EMULATION} ${EMS}
74 EMXFR+= extern ld_emulation_xfer_type ld_${_e}_emulation;
75 EMLST+= &ld_${_e}_emulation,
76 .endfor
77
78 ldemul-list.h:
79         echo "${EMXFR}" > ${.TARGET}
80         echo "#define EMULATION_LIST ${EMLST} 0" >> ${.TARGET}
81
82 stringify.sed: ${SRCDIR}/ld/emultempl/astring.sed .NOMETA
83         ln -sf ${.ALLSRC} ${.TARGET}
84
85 GENDIRDEPS_FILTER.host+= Nusr.bin/yacc
86
87 .include <bsd.prog.mk>