summaryrefslogtreecommitdiffstats
path: root/gnu
diff options
context:
space:
mode:
authorimp <imp@FreeBSD.org>2008-12-11 08:18:45 +0000
committerimp <imp@FreeBSD.org>2008-12-11 08:18:45 +0000
commit0ca6a3767d10fcff00d550f249475ccf6d759048 (patch)
treedafea6283842321d639672611484794502906afe /gnu
parent0c666bc344042b3fb57313df777549ac7cee0cf9 (diff)
downloadFreeBSD-src-0ca6a3767d10fcff00d550f249475ccf6d759048.zip
FreeBSD-src-0ca6a3767d10fcff00d550f249475ccf6d759048.tar.gz
Push mips support for ld into the tree.
Diffstat (limited to 'gnu')
-rw-r--r--gnu/usr.bin/binutils/ld/Makefile.mips24
-rwxr-xr-xgnu/usr.bin/binutils/ld/elf32btsmip_fbsd.sh4
-rwxr-xr-xgnu/usr.bin/binutils/ld/elf32ltsmip_fbsd.sh4
-rwxr-xr-xgnu/usr.bin/binutils/ld/elf64btsmip_fbsd.sh4
-rwxr-xr-xgnu/usr.bin/binutils/ld/elf64ltsmip_fbsd.sh4
5 files changed, 40 insertions, 0 deletions
diff --git a/gnu/usr.bin/binutils/ld/Makefile.mips b/gnu/usr.bin/binutils/ld/Makefile.mips
new file mode 100644
index 0000000..cf58c70
--- /dev/null
+++ b/gnu/usr.bin/binutils/ld/Makefile.mips
@@ -0,0 +1,24 @@
+# $FreeBSD$
+
+#xxxIMPxxx: size?
+#xxxIMPxxx: TARGET_BIG_ENDIAN is lame. We should use the netbsd convention
+# of mipsel and mips.
+_sz?=32
+.if defined(TARGET_BIG_ENDIAN)
+NATIVE_EMULATION=elf${_sz}btsmip_fbsd
+.else
+NATIVE_EMULATION=elf${_sz}ltsmip_fbsd
+.endif
+
+SRCS+= e${NATIVE_EMULATION}.c
+CLEANFILES+= e${NATIVE_EMULATION}.c
+
+# nb: elf32 handles both elf32 and elf64 targets
+e${NATIVE_EMULATION}.c: ${.CURDIR}/${NATIVE_EMULATION}.sh emultempl/elf32.em \
+ scripttempl/elf.sc genscripts.sh stringify.sed
+ sh ${.CURDIR}/genscripts.sh ${SRCDIR}/ld ${LIBSERACHPATH} \
+ ${TOOLS_PREFIX}/usr \
+ ${HOST} ${TARGET_TUPLE} ${TARGET_TUPLE} \
+ ${NATIVE_EMULATION} "" no ${NATIVE_EMULATION} ${TARGET_TUPLE} \
+ ${.CURDIR}/${NATIVE_EMULATION}.sh
+
diff --git a/gnu/usr.bin/binutils/ld/elf32btsmip_fbsd.sh b/gnu/usr.bin/binutils/ld/elf32btsmip_fbsd.sh
new file mode 100755
index 0000000..ef5afbc
--- /dev/null
+++ b/gnu/usr.bin/binutils/ld/elf32btsmip_fbsd.sh
@@ -0,0 +1,4 @@
+# $FreeBSD$
+. ${srcdir}/emulparams/elf32btsmip.sh
+. ${srcdir}/emulparams/elf_fbsd.sh
+GENERATE_PIE_SCRIPT=yes
diff --git a/gnu/usr.bin/binutils/ld/elf32ltsmip_fbsd.sh b/gnu/usr.bin/binutils/ld/elf32ltsmip_fbsd.sh
new file mode 100755
index 0000000..89c13d8
--- /dev/null
+++ b/gnu/usr.bin/binutils/ld/elf32ltsmip_fbsd.sh
@@ -0,0 +1,4 @@
+# $FreeBSD$
+. ${srcdir}/emulparams/elf32ltsmip.sh
+. ${srcdir}/emulparams/elf_fbsd.sh
+GENERATE_PIE_SCRIPT=yes
diff --git a/gnu/usr.bin/binutils/ld/elf64btsmip_fbsd.sh b/gnu/usr.bin/binutils/ld/elf64btsmip_fbsd.sh
new file mode 100755
index 0000000..e6ca55ab
--- /dev/null
+++ b/gnu/usr.bin/binutils/ld/elf64btsmip_fbsd.sh
@@ -0,0 +1,4 @@
+# $FreeBSD$
+. ${srcdir}/emulparams/elf64btsmip.sh
+. ${srcdir}/emulparams/elf_fbsd.sh
+GENERATE_PIE_SCRIPT=yes
diff --git a/gnu/usr.bin/binutils/ld/elf64ltsmip_fbsd.sh b/gnu/usr.bin/binutils/ld/elf64ltsmip_fbsd.sh
new file mode 100755
index 0000000..9326001
--- /dev/null
+++ b/gnu/usr.bin/binutils/ld/elf64ltsmip_fbsd.sh
@@ -0,0 +1,4 @@
+# $FreeBSD$
+. ${srcdir}/emulparams/elf64ltsmip.sh
+. ${srcdir}/emulparams/elf_fbsd.sh
+GENERATE_PIE_SCRIPT=yes
OpenPOWER on IntegriCloud