aboutsummaryrefslogtreecommitdiff
path: root/contrib/binutils/ld/configure.host
diff options
context:
space:
mode:
authorDavid E. O'Brien <obrien@FreeBSD.org>2000-05-13 17:48:08 +0000
committerDavid E. O'Brien <obrien@FreeBSD.org>2000-05-13 17:48:08 +0000
commit7277157f244a66ebe0e96ed6c21c5ee74a7b4872 (patch)
treece21827804881cb709ff38aa3b6d1f150c94f659 /contrib/binutils/ld/configure.host
parentcb51ce8cd9d768fedd95ee26baf6adc3ddfd4ff0 (diff)
downloadsrc-7277157f244a66ebe0e96ed6c21c5ee74a7b4872.tar.gz
src-7277157f244a66ebe0e96ed6c21c5ee74a7b4872.zip
Tweaks for i386, add alpha, ppc, sparc, and strongarm support.
Notes
Notes: svn path=/head/; revision=60524
Diffstat (limited to 'contrib/binutils/ld/configure.host')
-rw-r--r--contrib/binutils/ld/configure.host40
1 files changed, 31 insertions, 9 deletions
diff --git a/contrib/binutils/ld/configure.host b/contrib/binutils/ld/configure.host
index 38ad347218c2..32c9a81dd289 100644
--- a/contrib/binutils/ld/configure.host
+++ b/contrib/binutils/ld/configure.host
@@ -1,3 +1,5 @@
+# $FreeBSD$
+
# This is the linker host specific file. This is invoked by the
# autoconf generated configure script. Putting it in a separate shell
# file lets us skip running autoconf when modifying host specific
@@ -16,6 +18,11 @@ NATIVE_LIB_DIRS=
case "${host}" in
+alpha*-*-freebsd*)
+ HOSTING_CRT0=/usr/lib/crt1.o
+ NATIVE_LIB_DIRS=/usr/lib
+ ;;
+
alpha*-*-linux-gnu*)
HOSTING_CRT0='-dynamic-linker `egrep "ld[^ ]*\.so" \`${CC} --print-file-name=specs\` | sed -e "s,.*-dynamic-linker[ ][ ]*\(.*/ld[^ ]*.so..\).*,\1,"` `${CC} --print-file-name=crt1.o` `${CC} --print-file-name=crti.o` `if [ -f ../gcc/crtbegin.o ]; then echo ../gcc/crtbegin.o; else ${CC} --print-file-name=crtbegin.o; fi`'
HOSTING_LIBS='`if [ -f ../gcc/libgcc.a ] ; then echo ../gcc/libgcc.a ; else ${CC} -print-libgcc-file-name; fi` -L`dirname \`${CC} --print-file-name=libc.so\`` -lc `if [ -f ../gcc/libgcc.a ] ; then echo ../gcc/libgcc.a ; else ${CC} -print-libgcc-file-name; fi` `if [ -f ../gcc/crtend.o ]; then echo ../gcc/crtend.o; else ${CC} --print-file-name=crtend.o; fi` `${CC} --print-file-name=crtn.o`'
@@ -35,32 +42,37 @@ alpha*-*-*)
NATIVE_LIB_DIRS=/usr/ccs/lib
;;
+arm*-*-freebsd*)
+ HOSTING_CRT0=/usr/lib/crt1.o
+ NATIVE_LIB_DIRS=/usr/lib
+ ;;
+
arm*-*-linux-gnu*)
HOSTING_CRT0='-p -dynamic-linker `fgrep ld-linux.so \`${CC} --print-file-name=specs\` | sed -e "s,.*-dynamic-linker[ ][ ]*\(.*/ld-linux.so..\).*,\1,"` `${CC} --print-file-name=crt1.o` `${CC} --print-file-name=crti.o` `if [ -f ../gcc/crtbegin.o ]; then echo ../gcc/crtbegin.o; else ${CC} --print-file-name=crtbegin.o; fi`'
HOSTING_LIBS='`if [ -f ../gcc/libgcc.a ] ; then echo ../gcc/libgcc.a ; else ${CC} -print-libgcc-file-name; fi` -L`dirname \`${CC} --print-file-name=libc.so\`` -lc `if [ -f ../gcc/libgcc.a ] ; then echo ../gcc/libgcc.a ; else ${CC} -print-libgcc-file-name; fi` `if [ -f ../gcc/crtend.o ]; then echo ../gcc/crtend.o; else ${CC} --print-file-name=crtend.o; fi` `${CC} --print-file-name=crtn.o`'
;;
-i[3456]86-*-freebsdelf*)
+i[3456]86-*-bsd* | i[3456]86-*-freebsd[12]* | i[3456]86-*-freebsd[12].* | i[3456]86-*-freebsd*aout* | i[3456]86-*-netbsd*)
# The new BSD `make' has a bug: it doesn't pass empty arguments in
# shell commands. So we need to make this value non-empty in order
# for the genscripts.sh call to work. There's nothing magic about
# the value `/lib'; it's just a dummy.
NATIVE_LIB_DIRS=/lib
- # Older versions of gcc do not use a specs file. In those cases,
- # gcc -print-file-name=specs will simply print specs. We create a
- # dummy specs files to handle this.
- echo "-dynamic-linker /usr/libexec/ld-elf.so.1" > specs
- HOSTING_CRT0='-dynamic-linker `egrep "ld[^ ]*\.so" \`${CC} --print-file-name=specs\` | sed -e "s,.*-dynamic-linker[ ][ ]*\(.*/ld[^ ]*.so..\).*,\1,"` `${CC} --print-file-name=crt1.o` `${CC} --print-file-name=crti.o` `if [ -f ../gcc/crtbegin.o ]; then echo ../gcc/crtbegin.o; else ${CC} --print-file-name=crtbegin.o; fi`'
- HOSTING_LIBS='`if [ -f ../gcc/libgcc.a ] ; then echo ../gcc/libgcc.a ; else ${CC} -print-libgcc-file-name; fi` -L`dirname \`${CC} --print-file-name=libc.so\`` -lc `if [ -f ../gcc/libgcc.a ] ; then echo ../gcc/libgcc.a ; else ${CC} -print-libgcc-file-name; fi` `if [ -f ../gcc/crtend.o ]; then echo ../gcc/crtend.o; else ${CC} --print-file-name=crtend.o; fi` `${CC} --print-file-name=crtn.o`'
+ HOSTING_CRT0=/usr/lib/crt0.o
;;
-i[3456]86-*-bsd* | i[3456]86-*-freebsd* | i[3456]86-*-netbsd*)
+i[3456]86-*-freebsd*)
# The new BSD `make' has a bug: it doesn't pass empty arguments in
# shell commands. So we need to make this value non-empty in order
# for the genscripts.sh call to work. There's nothing magic about
# the value `/lib'; it's just a dummy.
NATIVE_LIB_DIRS=/lib
- HOSTING_CRT0=/usr/lib/crt0.o
+ # Older versions of gcc do not use a specs file. In those cases,
+ # gcc -print-file-name=specs will simply print specs. We create a
+ # dummy specs files to handle this.
+ echo "-dynamic-linker /usr/libexec/ld-elf.so.1" > specs
+ HOSTING_CRT0='/usr/lib/crt1.o /usr/lib/crti.o /usr/lib/crtbegin.o'
+ HOSTING_LIBS='/usr/lib/libgcc.a /usr/lib/libc.so /usr/lib/libgcc.a /usr/lib/crtend.o /usr/lib/crtn.o'
;;
i[3456]86-*-sysv4*)
@@ -188,6 +200,11 @@ m88*-motorola-sysv3)
HOSTING_LIBS='`if [ -f ../gcc/libgcc.a ] ; then echo ../gcc/libgcc.a ; else ${CC} -print-libgcc-file-name; fi` -lc `if [ -f ../gcc/crtend.o ]; then echo ../gcc/crtend.o; else ${CC} -print-file-name=crtend.o; fi` `if [ -f ../gcc/libgcc.a ] ; then echo ../gcc/libgcc.a ; else ${CC} -print-libgcc-file-name; fi`'
;;
+powerpc*-*-freebsd*)
+ HOSTING_CRT0=/usr/lib/crt1.o
+ NATIVE_LIB_DIRS=/usr/lib
+ ;;
+
powerpc*-*-linux-gnu*)
HOSTING_CRT0='-dynamic-linker /lib/ld.so.1 /usr/lib/crt1.o /usr/lib/crti.o `if [ -f ../gcc/crtbegin.o ]; then echo ../gcc/crtbegin.o; else ${CC} --print-file-name=crtbegin.o; fi`'
HOSTING_LIBS='`if [ -f ../gcc/libgcc.a ] ; then echo ../gcc/libgcc.a ; else ${CC} -print-libgcc-file-name; fi` -lc `if [ -f ../gcc/libgcc.a ] ; then echo ../gcc/libgcc.a ; else ${CC} -print-libgcc-file-name; fi` `if [ -f ../gcc/crtend.o ]; then echo ../gcc/crtend.o; else ${CC} --print-file-name=crtend.o; fi` /usr/lib/crtn.o'
@@ -197,6 +214,11 @@ romp-*-*)
HDEFINES=-DNO_VARARGS
;;
+sparc*-*-freebsd*)
+ HOSTING_CRT0=/usr/lib/crt1.o
+ NATIVE_LIB_DIRS=/usr/lib
+ ;;
+
sparc*-*-solaris2*)
HOSTING_CRT0='`if [ -f ../gcc/crt1.o ]; then echo ../gcc/crt1.o; else ${CC} -print-file-name=crt1.o; fi` `if [ -f ../gcc/crti.o ]; then echo ../gcc/crti.o; else ${CC} -print-file-name=crti.o; fi` /usr/ccs/lib/values-Xa.o `if [ -f ../gcc/crtbegin.o ]; then echo ../gcc/crtbegin.o; else ${CC} -print-file-name=crtbegin.o; fi`'
HOSTING_LIBS='`if [ -f ../gcc/libgcc.a ] ; then echo ../gcc/libgcc.a ; else ${CC} -print-libgcc-file-name; fi` -lc `if [ -f ../gcc/crtend.o ]; then echo ../gcc/crtend.o; else ${CC} -print-file-name=crtend.o; fi` `if [ -f ../gcc/crtn.o ]; then echo ../gcc/crtn.o; else ${CC} -print-file-name=crtn.o; fi`'