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