summaryrefslogtreecommitdiffstats
path: root/gnu
diff options
context:
space:
mode:
authorjb <jb@FreeBSD.org>1999-11-06 22:46:45 +0000
committerjb <jb@FreeBSD.org>1999-11-06 22:46:45 +0000
commit5e8870e5439ac382bd1d3732b119bf5cf81405b6 (patch)
tree973c74f5e53123c420692ba13fc76bc0e4a0d846 /gnu
parent7c5467e518d206ba7db51851d488eb699e8acd56 (diff)
downloadFreeBSD-src-5e8870e5439ac382bd1d3732b119bf5cf81405b6.zip
FreeBSD-src-5e8870e5439ac382bd1d3732b119bf5cf81405b6.tar.gz
Use the simplified genscripts.sh and set the cross-compiled library
directory to /usr/cross/${MACHINE_ARCH}-freebsdelf/usr/lib so that the cross tools behave the same way that the host versions do. When building cross tools, Cygnus doesn't set the default library directory. This doesn't suit FreeBSD IMHO. Add WinNT emulation support too. You only get this if you've set BINUTILSDISTDIR because the contrib/binutils repository doesn't contain the required sources.
Diffstat (limited to 'gnu')
-rw-r--r--gnu/usr.bin/binutils/ld/Makefile.i38624
1 files changed, 22 insertions, 2 deletions
diff --git a/gnu/usr.bin/binutils/ld/Makefile.i386 b/gnu/usr.bin/binutils/ld/Makefile.i386
index 174f211..8339a5e 100644
--- a/gnu/usr.bin/binutils/ld/Makefile.i386
+++ b/gnu/usr.bin/binutils/ld/Makefile.i386
@@ -6,6 +6,9 @@
HOST= i386-unknown-freebsdelf
CFLAGS+= -DDEFAULT_EMULATION=\"elf_i386\"
CFLAGS+= -DTARGET=\"i386-unknown-freebsdelf\"
+_i386_path= \"/usr/lib\"
+.else
+_i386_path= \"/usr/cross/i386-freebsdelf/usr/lib\"
.endif
EMS+= ld_elf_i386_emulation
LDSCRIPTS+= elf_i386.x elf_i386.xbn elf_i386.xn elf_i386.xr \
@@ -15,7 +18,24 @@ CLEANFILES+= eelf_i386.c
eelf_i386.c: emulparams/elf_i386.sh emultempl/elf32.em \
scripttempl/elf.sc genscripts.sh emultempl/stringify.sed
- env LIB_PATH="/usr/lib" \
- sh ${SRCDIR}/ld/genscripts.sh ${SRCDIR}/ld ${DESTDIR}/usr/lib \
+ sh ${.CURDIR}/genscripts.sh ${SRCDIR}/ld ${_i386_path} \
${HOST} i386-unknown-freebsdelf i386-unknown-freebsdelf \
elf_i386 "" elf_i386 i386-unknown-freebsdelf
+
+.if defined(BINUTILSDISTDIR) && exists(${BINUTILSDISTDIR})
+EMS+= ld_i386pe_emulation
+LDSCRIPTS+= i386pe.x \
+ i386pe.xbn \
+ i386pe.xn \
+ i386pe.xr \
+ i386pe.xu
+SRCS+= ei386pe.c
+CLEANFILES+= ei386pe.c
+
+ei386pe.c: emulparams/i386pe.sh emultempl/pe.em \
+ scripttempl/pe.sc genscripts.sh emultempl/stringify.sed
+ sh ${.CURDIR}/genscripts.sh ${BINUTILSDISTDIR}/ld \
+ /usr/cross/winnt/lib ${HOST} i386-unknown-freebsdwinnt \
+ i386-unknown-freebsdwinnt i386pe "" i386pe \
+ i386-unknown-freebsdwinnt
+.endif
OpenPOWER on IntegriCloud