This is the mail archive of the binutils@sources.redhat.com mailing list for the binutils project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: Problems compiling elfxx-sparc.c


On 22 Apr 2005 09:23:29 -0400
Ian Lance Taylor <ian@airs.com> wrote:

> I do see now that there is a special case for mips at the very end of
> config.bfd:
> 
> case "${targ_defvec} ${targ_selvecs}" in
>   *bfd_elf64* | *bfd_elf32_n*mips*)
> 
> Perhaps we need to add a special case for sparc there as well.

Yep, that seems to be the missing bit.  I wish I could somehow
deal better with the 24 hour turnaround time for testing with
Nick.  He seems to go to sleep when I wake up and work on
test fix patches. :-)

Anyways, Nick, please give this a test.

2005-04-22  David S. Miller  <davem@davemloft.net>

	* config.bfd (sparc*-*-*): If 32-bit elf specified, set
	want64 to true.  When bfd_elf32_sparc is specified add
	64-bit vectors to targ_selvecs.

--- config.bfd.~1.183.~	2005-03-23 07:35:43.000000000 -0800
+++ config.bfd	2005-04-22 11:59:36.000000000 -0700
@@ -1208,14 +1208,17 @@
     ;;
   sparclite-*-elf* | sparc86x-*-elf*)
     targ_defvec=bfd_elf32_sparc_vec
+    want64=true
     ;;
   sparc*-*-chorus*)
     targ_defvec=bfd_elf32_sparc_vec
+    want64=true
     ;;
   sparc-*-linux*aout*)
     targ_defvec=sparclinux_vec
     targ_selvecs="bfd_elf32_sparc_vec sunos_big_vec"
     targ_underscore=yes
+    want64=true
     ;;
   sparc-*-linux-*)
     targ_defvec=bfd_elf32_sparc_vec
@@ -1228,11 +1231,13 @@
   sparc-*-netbsdelf*)
     targ_defvec=bfd_elf32_sparc_vec
     targ_selvecs=sparcnetbsd_vec
+    want64=true
     ;;
   sparc-*-netbsdaout* | sparc-*-netbsd*)
     targ_defvec=sparcnetbsd_vec
     targ_selvecs=bfd_elf32_sparc_vec
     targ_underscore=yes
+    want64=true
     ;;
   sparc-*-openbsd[0-2].* | sparc-*-openbsd3.[0-1])
     targ_defvec=sparcnetbsd_vec
@@ -1241,10 +1246,12 @@
   sparc-*-openbsd*)
     targ_defvec=bfd_elf32_sparc_vec
     targ_selvecs=sparcnetbsd_vec
+    want64=true
     ;;
   sparc-*-elf* | sparc-*-solaris2.[0-6] | sparc-*-solaris2.[0-6].*)
     targ_defvec=bfd_elf32_sparc_vec
     targ_selvecs=sunos_big_vec
+    want64=true
     ;;
 #ifdef BFD64
   sparc-*-solaris2* | sparcv9-*-solaris2* | sparc64-*-solaris2*)
@@ -1254,10 +1261,12 @@
 #endif
   sparc-*-sysv4*)
     targ_defvec=bfd_elf32_sparc_vec
+    want64=true
     ;;
   sparc-*-netware*)
     targ_defvec=bfd_elf32_sparc_vec
     targ_selvecs="nlm32_sparc_vec sunos_big_vec"
+    want64=true
     ;;
 #ifdef BFD64
   sparc64-*-aout*)
@@ -1280,10 +1289,12 @@
     targ_defvec=sunos_big_vec
     targ_selvecs="bfd_elf32_sparc_vec sparccoff_vec"
     targ_underscore=yes
+    want64=true
     ;;
   sparc*-*-rtems* | sparc*-*-rtemself*)
     targ_defvec=bfd_elf32_sparc_vec
     targ_selvecs="sunos_big_vec sparccoff_vec"
+    want64=true
     ;;
   sparc*-*-* | sparc*-*-rtems*)
     targ_defvec=sunos_big_vec
@@ -1400,7 +1411,7 @@
 # to be used on an arbitrary ELF file for anything other than
 # relocation information.
 case "${targ_defvec} ${targ_selvecs}" in
-  *bfd_elf64* | *bfd_elf32_n*mips*)
+  *bfd_elf64* | *bfd_elf32_n*mips* | *bfd_elf32_sparc*)
     targ_selvecs="${targ_selvecs} bfd_elf64_little_generic_vec bfd_elf64_big_generic_vec bfd_elf32_little_generic_vec bfd_elf32_big_generic_vec"
     ;;
   *bfd_elf32*)


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]