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