150472Speter# $FreeBSD$ 234495Sjdp 3289241SbdreweryELF_SCR_EXT= x xbn xc xd xdc xdw xn xr xs xsc xsw xu xw 434495Sjdp.include "../Makefile.inc0" 5234782Skib.include <bsd.own.mk> 634495Sjdp 734495Sjdp.PATH: ${SRCDIR}/ld 834495Sjdp 9172326Smarcel.if ${TARGET_ARCH} == "ia64" 10172326SmarcelCFLAGS+= -O1 11172326Smarcel.endif 12172326Smarcel 1384910SobrienPROG= ld 1484910SobrienSCRIPTDIR= /usr/libdata/ldscripts 15218822SdimSRCS+= ldcref.c \ 16218822Sdim ldctor.c \ 17218822Sdim ldemul-list.h \ 18218822Sdim ldemul.c \ 19218822Sdim ldexp.c \ 20218822Sdim ldfile.c \ 21218822Sdim ldgram.y \ 22218822Sdim ldlang.c \ 23218822Sdim ldlex.l \ 24218822Sdim ldmain.c \ 25218822Sdim ldmisc.c \ 26218822Sdim ldver.c \ 27218822Sdim ldwrite.c \ 28218822Sdim lexsup.c \ 29218822Sdim mri.c 3083877Sru 31131832SobrienCFLAGS+= -DTARGET=\"${TARGET_TUPLE}\" 32131832SobrienCFLAGS+= -DDEFAULT_EMULATION=\"${NATIVE_EMULATION}\" 3390330SobrienCFLAGS+= -DSCRIPTDIR=\"${TOOLS_PREFIX}/usr/libdata\" 3489886SobrienCFLAGS+= -DBFD_VERSION_STRING=\"${VERSION}\" 35257662SbrooksCFLAGS+= -DBINDIR=\"${BINDIR}\" 36257662Sbrooks.if defined(TOOLS_PREFIX) 37257662SbrooksCFLAGS+= -DTARGET_SYSTEM_ROOT=\"${TOOLS_PREFIX}\" 38257662Sbrooks.else 39257662SbrooksCFLAGS+= -DTARGET_SYSTEM_ROOT=\"/\" 40257662Sbrooks.endif 41130757SobrienCFLAGS+= -DTOOLBINDIR=\"${TOOLS_PREFIX}/${BINDIR}/libexec\" 42130575SobrienCFLAGS+= -D_GNU_SOURCE 4384910SobrienCFLAGS+= -I${SRCDIR}/ld -I${SRCDIR}/bfd 44234782Skib.if ${MK_SHARED_TOOLCHAIN} == "no" 45139112SruNO_SHARED?= yes 46234782Skib.endif 47113398SruDPADD= ${RELTOP}/libbfd/libbfd.a 48113398SruDPADD+= ${RELTOP}/libiberty/libiberty.a 4984910SobrienLDADD= ${DPADD} 5034495SjdpCLEANDIRS+= ldscripts 5160777SobrienCLEANFILES+= ldemul-list.h stringify.sed 5234495Sjdp 53289242SbdreweryFILES= ${LDSCRIPTS:S|^|ldscripts/|} 54289242SbdreweryFILESDIR= ${SCRIPTDIR} 55292898SemasteLINKS= ${BINDIR}/ld ${BINDIR}/ld.bfd 56289242Sbdrewery 57131832SobrienHOST= ${TARGET_TUPLE} 58291974SbdreweryLIBSEARCHPATH= \"=/lib\":\"=/usr/lib\" 59131832Sobrien.for ext in ${ELF_SCR_EXT} 60131832SobrienLDSCRIPTS+= ${NATIVE_EMULATION}.${ext} 61289241Sbdreweryldscripts/${NATIVE_EMULATION}.${ext}: e${NATIVE_EMULATION}.c 62131832Sobrien.endfor 6352938Sjb 6435717SjbEMXFR= 6535717SjbEMLST= 66218822Sdim.for _e in ${NATIVE_EMULATION} ${EMS} 6793361SobrienEMXFR+= extern ld_emulation_xfer_type ld_${_e}_emulation; 6893361SobrienEMLST+= &ld_${_e}_emulation, 6935717Sjb.endfor 7035717Sjb 7135717Sjbldemul-list.h: 7284910Sobrien echo "${EMXFR}" > ${.TARGET} 7384910Sobrien echo "#define EMULATION_LIST ${EMLST} 0" >> ${.TARGET} 7435717Sjb 7560777Sobrienstringify.sed: 7669164Sobrien ln -sf ${SRCDIR}/ld/emultempl/astring.sed ${.TARGET} 7760777Sobrien 7834495Sjdp.include <bsd.prog.mk> 79