This is the mail archive of the
binutils@sourceware.cygnus.com
mailing list for the binutils project.
[PATCH] HOSTING_* definitions for sparc*-*linux-gnu*
- To: binutils@sourceware.cygnus.com
- Subject: [PATCH] HOSTING_* definitions for sparc*-*linux-gnu*
- From: Jakub Jelinek <jj@sunsite.ms.mff.cuni.cz>
- Date: Sun, 8 Aug 1999 13:29:32 +0200
- Cc: Richard Henderson <rth@cygnus.com>, "David S. Miller" <davem@redhat.com>
Hi!
When trying to check ld testsuite I found out sparc*linux does not have any
entries in configure.host, so bootstrap checks all failed.
But after applying this patch, the testsuite passed completely, so I will
have to dig more deeply into the shared libs on Solaris problem.
I recall davem's patch was written exactly because SparcLinux had major
problems with running non-PIC code linked into shared libraries.
1999-08-08 Jakub Jelinek <jj@ultra.linux.cz>
* configure.host: Set up HOSTING_CRT0 and HOSTING_LIBS for
sparc*-*linux-gnu*.
--- ./configure.host.jj Fri Jul 23 15:31:49 1999
+++ ./configure.host Sun Aug 8 10:41:53 1999
@@ -173,4 +173,14 @@ sparc*-*-solaris2*)
NATIVE_LIB_DIRS=/usr/ccs/lib
;;
+sparc-*-linux-gnu*)
+ HOSTING_CRT0='-dynamic-linker /lib/ld-linux.so.2 `gcc --print-file-name=crt1.o` `gcc --print-file-name=crti.o` `if [ -f ../gcc/crtbegin.o ]; then echo ../gcc/crtbegin.o; else gcc --print-file-name=crtbegin.o; fi`'
+ HOSTING_LIBS='`if [ -f ../gcc/libgcc.a ] ; then echo ../gcc/libgcc.a ; else gcc -print-libgcc-file-name; fi` -L`dirname \`gcc --print-file-name=libc.so\`` -lc `if [ -f ../gcc/libgcc.a ] ; then echo ../gcc/libgcc.a ; else gcc -print-libgcc-file-name; fi` `if [ -f ../gcc/crtend.o ]; then echo ../gcc/crtend.o; else gcc --print-file-name=crtend.o; fi` `gcc --print-file-name=crtn.o`'
+ ;;
+
+sparc64-*-linux-gnu*)
+ HOSTING_CRT0='-dynamic-linker /lib64/ld-linux.so.2 `gcc --print-file-name=crt1.o` `gcc --print-file-name=crti.o` `if [ -f ../gcc/crtbegin.o ]; then echo ../gcc/crtbegin.o; else gcc --print-file-name=crtbegin.o; fi`'
+ HOSTING_LIBS='`if [ -f ../gcc/libgcc.a ] ; then echo ../gcc/libgcc.a ; else gcc -print-libgcc-file-name; fi` -L`dirname \`gcc --print-file-name=libc.so\`` -lc `if [ -f ../gcc/libgcc.a ] ; then echo ../gcc/libgcc.a ; else gcc -print-libgcc-file-name; fi` `if [ -f ../gcc/crtend.o ]; then echo ../gcc/crtend.o; else gcc --print-file-name=crtend.o; fi` `gcc --print-file-name=crtn.o`'
+ ;;
+
esac
Cheers,
Jakub
___________________________________________________________________
Jakub Jelinek | jj@sunsite.mff.cuni.cz | http://sunsite.mff.cuni.cz
Administrator of SunSITE Czech Republic, MFF, Charles University
___________________________________________________________________
UltraLinux | http://ultra.linux.cz/ | http://ultra.penguin.cz/
Linux version 2.3.13 on a sparc64 machine (1343.49 BogoMips)
___________________________________________________________________