Makefile revision 291974
1# $FreeBSD: stable/10/gnu/usr.bin/binutils/ld/Makefile 291974 2015-12-08 00:24:41Z bdrewery $
2
3ELF_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"
10CFLAGS+= -O1
11.endif
12
13PROG=	ld
14SCRIPTDIR= /usr/libdata/ldscripts
15SRCS+=	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
31CFLAGS+= -DTARGET=\"${TARGET_TUPLE}\"
32CFLAGS+= -DDEFAULT_EMULATION=\"${NATIVE_EMULATION}\"
33CFLAGS+= -DSCRIPTDIR=\"${TOOLS_PREFIX}/usr/libdata\"
34CFLAGS+= -DBFD_VERSION_STRING=\"${VERSION}\"
35CFLAGS+= -DBINDIR=\"${BINDIR}\"
36.if defined(TOOLS_PREFIX)
37CFLAGS+= -DTARGET_SYSTEM_ROOT=\"${TOOLS_PREFIX}\"
38.else
39CFLAGS+= -DTARGET_SYSTEM_ROOT=\"/\"
40.endif
41CFLAGS+= -DTOOLBINDIR=\"${TOOLS_PREFIX}/${BINDIR}/libexec\"
42CFLAGS+= -D_GNU_SOURCE
43CFLAGS+= -I${SRCDIR}/ld -I${SRCDIR}/bfd
44.if ${MK_SHARED_TOOLCHAIN} == "no"
45NO_SHARED?= yes
46.endif
47DPADD=	${RELTOP}/libbfd/libbfd.a
48DPADD+=	${RELTOP}/libiberty/libiberty.a
49LDADD=	${DPADD}
50CLEANDIRS+=	ldscripts
51CLEANFILES+=	ldemul-list.h stringify.sed
52
53FILES=		${LDSCRIPTS:S|^|ldscripts/|}
54FILESDIR=	${SCRIPTDIR}
55
56HOST=		${TARGET_TUPLE}
57LIBSEARCHPATH=	\"=/lib\":\"=/usr/lib\"
58.for ext in ${ELF_SCR_EXT}
59LDSCRIPTS+=	${NATIVE_EMULATION}.${ext}
60ldscripts/${NATIVE_EMULATION}.${ext}: e${NATIVE_EMULATION}.c
61.endfor
62
63EMXFR=
64EMLST=
65.for _e in ${NATIVE_EMULATION} ${EMS}
66EMXFR+=	extern ld_emulation_xfer_type ld_${_e}_emulation;
67EMLST+=	&ld_${_e}_emulation,
68.endfor
69
70ldemul-list.h:
71	echo "${EMXFR}" > ${.TARGET}
72	echo "#define EMULATION_LIST ${EMLST} 0" >> ${.TARGET}
73
74stringify.sed:
75	ln -sf ${SRCDIR}/ld/emultempl/astring.sed ${.TARGET}
76
77.include <bsd.prog.mk>
78