3 ELF_SCR_EXT= x xbn xc xd xdc xdw xn xr xs xsc xsw xu xw
4 .include "../Makefile.inc0"
10 .if (!defined(TOOLS_PREFIX) && ${MK_LLD_IS_LD} == "no") || \
11 (defined(TOOLS_PREFIX) && ${MK_LLD_BOOTSTRAP} == "no")
13 LINKS= ${BINDIR}/ld.bfd ${BINDIR}/ld
18 ${CP} ${.ALLSRC} ${.TARGET}
21 SCRIPTDIR= /usr/libdata/ldscripts
38 CFLAGS+= -DTARGET=\"${TARGET_TUPLE}\"
39 CFLAGS+= -DDEFAULT_EMULATION=\"${NATIVE_EMULATION}\"
40 CFLAGS+= -DSCRIPTDIR=\"${TOOLS_PREFIX}/usr/libdata\"
41 CFLAGS+= -DBFD_VERSION_STRING=\"${VERSION}\"
42 CFLAGS+= -DBINDIR=\"${BINDIR}\"
43 .if defined(TOOLS_PREFIX)
44 CFLAGS+= -DTARGET_SYSTEM_ROOT=\"${TOOLS_PREFIX}\"
46 CFLAGS+= -DTARGET_SYSTEM_ROOT=\"/\"
48 CFLAGS+= -DTOOLBINDIR=\"${TOOLS_PREFIX}/${BINDIR}/libexec\"
49 CFLAGS+= -D_GNU_SOURCE
50 CFLAGS+= -I${SRCDIR}/ld -I${SRCDIR}/bfd
51 .if ${MK_SHARED_TOOLCHAIN} == "no"
54 DPADD= ${GNURELTOP}/libbfd/libbfd.a
55 DPADD+= ${GNURELTOP}/libiberty/libiberty.a
58 CLEANFILES+= ldemul-list.h stringify.sed
60 FILES= ${LDSCRIPTS:S|^|ldscripts/|}
61 FILESDIR= ${SCRIPTDIR}
64 LIBSEARCHPATH= \"=/lib\":\"=/usr/lib\"
65 .for ext in ${ELF_SCR_EXT}
66 LDSCRIPTS+= ${NATIVE_EMULATION}.${ext}
67 ldscripts/${NATIVE_EMULATION}.${ext}: e${NATIVE_EMULATION}.c
72 .for _e in ${NATIVE_EMULATION} ${EMS}
73 EMXFR+= extern ld_emulation_xfer_type ld_${_e}_emulation;
74 EMLST+= &ld_${_e}_emulation,
78 echo "${EMXFR}" > ${.TARGET}
79 echo "#define EMULATION_LIST ${EMLST} 0" >> ${.TARGET}
81 stringify.sed: ${SRCDIR}/ld/emultempl/astring.sed .NOMETA
82 ln -sf ${.ALLSRC} ${.TARGET}
84 GENDIRDEPS_FILTER.host+= Nusr.bin/yacc
86 .include <bsd.prog.mk>