* uclibc patches
@ 2005-03-19 2:21 Peter S. Mazinger
2005-03-20 17:16 ` Nick Clifton
2005-03-20 20:24 ` Simon Richter
0 siblings, 2 replies; 9+ messages in thread
From: Peter S. Mazinger @ 2005-03-19 2:21 UTC (permalink / raw)
To: binutils
Hello!
Would patches to add support for tuple
arch-*-linux-uclibc*
be acceptable?
Thanks, Peter
--
Peter S. Mazinger <ps dot m at gmx dot net> ID: 0xA5F059F2
Key fingerprint = 92A4 31E1 56BC 3D5A 2D08 BB6E C389 975E A5F0 59F2
^ permalink raw reply [flat|nested] 9+ messages in thread
* Re: uclibc patches
2005-03-19 2:21 uclibc patches Peter S. Mazinger
@ 2005-03-20 17:16 ` Nick Clifton
2005-03-21 9:41 ` Mike Frysinger
2005-03-20 20:24 ` Simon Richter
1 sibling, 1 reply; 9+ messages in thread
From: Nick Clifton @ 2005-03-20 17:16 UTC (permalink / raw)
To: Peter S. Mazinger; +Cc: binutils
Hi Peter,
> Would patches to add support for tuple
> arch-*-linux-uclibc*
> be acceptable?
Yes - provided that the copyright holder for the patches has a binutils
FSF copyright assignment in place, or if the patches are small enough
and simple enough to qualify as obvious.
Cheers
Nick
^ permalink raw reply [flat|nested] 9+ messages in thread
* Re: uclibc patches
2005-03-19 2:21 uclibc patches Peter S. Mazinger
2005-03-20 17:16 ` Nick Clifton
@ 2005-03-20 20:24 ` Simon Richter
2005-03-27 17:55 ` Peter S. Mazinger
1 sibling, 1 reply; 9+ messages in thread
From: Simon Richter @ 2005-03-20 20:24 UTC (permalink / raw)
To: Peter S. Mazinger; +Cc: binutils
[-- Attachment #1: Type: text/plain, Size: 710 bytes --]
Hi,
Peter S. Mazinger schrieb:
> Would patches to add support for tuple
> arch-*-linux-uclibc*
> be acceptable?
I'm not sure *-*-linux-uclibc would be the right choice, as it suggests
running Linux with uclibc as your C library, which is something the
binutils need not care about. I could, however, see a case for
*-*-uclinux due to the ABI differences and the need for relocation
information in fully linked executables.
I am working on implementing "armelf_uclinux" and "armelfb_uclinux"
emulations which would emit ELF binaries with relocation information for
ARM CPUs. I'm, however, unsure about whom to contact for a hint on what
to change to denote the ABI differences in the ELF files.
Simon
[-- Attachment #2: OpenPGP digital signature --]
[-- Type: application/pgp-signature, Size: 375 bytes --]
^ permalink raw reply [flat|nested] 9+ messages in thread
* Re: uclibc patches
2005-03-20 17:16 ` Nick Clifton
@ 2005-03-21 9:41 ` Mike Frysinger
2005-03-22 2:01 ` Christopher Faylor
0 siblings, 1 reply; 9+ messages in thread
From: Mike Frysinger @ 2005-03-21 9:41 UTC (permalink / raw)
To: binutils
[-- Attachment #1: Type: text/plain, Size: 608 bytes --]
On Sunday 20 March 2005 07:19 am, Nick Clifton wrote:
> > Would patches to add support for tuple
> > arch-*-linux-uclibc*
> > be acceptable?
>
> Yes - provided that the copyright holder for the patches has a binutils
> FSF copyright assignment in place, or if the patches are small enough
> and simple enough to qualify as obvious.
basically every place you see '-linux-gnu*', add a similar '-linux-uclibc*'
match ... files that we're talking about here:
bfd/config.bfd
bfd/configure.in
gas/configure.in
gas/configure.tgt
ld/configure.tgt
ld/emultempl/elf32.em
find attached patches for these files
-mike
[-- Attachment #2: uclibc-bfd-config.bfd.patch --]
[-- Type: text/x-diff, Size: 4725 bytes --]
Index: bfd/config.bfd
===================================================================
RCS file: /cvs/src/src/bfd/config.bfd,v
retrieving revision 1.182
diff -u -r1.182 config.bfd
--- bfd/config.bfd 15 Mar 2005 14:14:08 -0000 1.182
+++ bfd/config.bfd 21 Mar 2005 00:31:22 -0000
@@ -140,7 +140,7 @@
targ_defvec=ecoffalpha_little_vec
targ_selvecs=bfd_elf64_alpha_vec
;;
- alpha*-*-linux-gnu* | alpha*-*-elf*)
+ alpha*-*-linux-gnu* | alpha*-*-linux-uclibc* | alpha*-*-elf*)
targ_defvec=bfd_elf64_alpha_vec
targ_selvecs=ecoffalpha_little_vec
;;
@@ -150,7 +150,7 @@
alpha*-*-*)
targ_defvec=ecoffalpha_little_vec
;;
- ia64*-*-freebsd* | ia64*-*-netbsd* | ia64*-*-linux-gnu* | ia64*-*-elf* | ia64*-*-kfreebsd*-gnu)
+ ia64*-*-freebsd* | ia64*-*-netbsd* | ia64*-*-linux-gnu* | ia64*-*-linux-uclibc* | ia64*-*-elf* | ia64*-*-kfreebsd*-gnu)
targ_defvec=bfd_elf64_ia64_little_vec
targ_selvecs="bfd_elf64_ia64_big_vec bfd_efi_app_ia64_vec"
;;
@@ -227,7 +227,7 @@
targ_defvec=bfd_elf32_littlearm_vec
targ_selvecs=bfd_elf32_bigarm_vec
;;
- armeb-*-elf | arm*b-*-linux-gnu*)
+ armeb-*-elf | arm*b-*-linux-gnu* | arm*b-*-linux-uclibc*)
targ_defvec=bfd_elf32_bigarm_vec
targ_selvecs=bfd_elf32_littlearm_vec
;;
@@ -235,8 +235,8 @@
targ_defvec=bfd_elf32_littlearm_vec
targ_selvecs=bfd_elf32_bigarm_vec
;;
- arm-*-elf | arm-*-freebsd* | arm*-*-linux-gnu* | arm*-*-conix* | \
- arm*-*-uclinux* | arm-*-kfreebsd*-gnu | \
+ arm-*-elf | arm-*-freebsd* | arm*-*-linux-gnu* | arm*-*-linux-uclibc* | \
+ arm*-*-conix* | arm*-*-uclinux* | arm-*-kfreebsd*-gnu | \
arm*-*-eabi* )
targ_defvec=bfd_elf32_littlearm_vec
targ_selvecs=bfd_elf32_bigarm_vec
@@ -385,7 +385,7 @@
;;
#ifdef BFD64
- hppa*64*-*-linux-gnu*)
+ hppa*64*-*-linux-gnu* | hppa*-*-linux-uclibc*)
targ_defvec=bfd_elf64_hppa_linux_vec
targ_selvecs=bfd_elf64_hppa_vec
;;
@@ -529,7 +529,7 @@
targ_selvecs=bfd_elf32_i386_vec
targ_underscore=yes
;;
- i[3-7]86-*-linux-gnu*)
+ i[3-7]86-*-linux-gnu* | i[3-7]86-*-linux-uclibc*)
targ_defvec=bfd_elf32_i386_vec
targ_selvecs="i386linux_vec bfd_efi_app_ia32_vec"
targ64_selvecs=bfd_elf64_x86_64_vec
@@ -547,7 +547,7 @@
targ_defvec=bfd_elf64_x86_64_vec
targ_selvecs="bfd_elf32_i386_vec i386netbsd_vec i386coff_vec bfd_efi_app_ia32_vec"
;;
- x86_64-*-linux-gnu*)
+ x86_64-*-linux-gnu* | x86_64-*-linux-uclibc*)
targ_defvec=bfd_elf64_x86_64_vec
targ_selvecs="bfd_elf32_i386_vec i386linux_vec bfd_efi_app_ia32_vec"
;;
@@ -723,7 +723,7 @@
targ_selvecs=bfd_elf32_m68k_vec
targ_underscore=yes
;;
- m68*-*-linux-gnu*)
+ m68*-*-linux-gnu* | m68*-*-linux-uclibc*)
targ_defvec=bfd_elf32_m68k_vec
targ_selvecs=m68klinux_vec
;;
@@ -1009,8 +1009,8 @@
;;
#endif
powerpc-*-*bsd* | powerpc-*-elf* | powerpc-*-sysv4* | powerpc-*-eabi* | \
- powerpc-*-solaris2* | powerpc-*-linux-gnu* | powerpc-*-rtems* | \
- powerpc-*-chorus* | powerpc-*-vxworks* | powerpc-*-windiss*)
+ powerpc-*-solaris2* | powerpc-*-linux-gnu* | powerpc-*-linux-uclibc* | \
+ powerpc-*-rtems* | powerpc-*-chorus* | powerpc-*-vxworks* | powerpc-*-windiss*)
targ_defvec=bfd_elf32_powerpc_vec
targ_selvecs="rs6000coff_vec bfd_elf32_powerpcle_vec ppcboot_vec"
targ64_selvecs="bfd_elf64_powerpc_vec bfd_elf64_powerpcle_vec"
@@ -1046,8 +1046,8 @@
targ_selvecs="rs6000coff_vec bfd_elf32_powerpc_vec ppcboot_vec"
;;
powerpcle-*-elf* | powerpcle-*-sysv4* | powerpcle-*-eabi* | \
- powerpcle-*-solaris2* | powerpcle-*-linux-gnu* | powerpcle-*-vxworks* |\
- powerpcle-*-rtems*)
+ powerpcle-*-solaris2* | powerpcle-*-linux-gnu* | powerpcle-*-linux-uclibc* | \
+ powerpcle-*-vxworks* | powerpcle-*-rtems*)
targ_defvec=bfd_elf32_powerpcle_vec
targ_selvecs="rs6000coff_vec bfd_elf32_powerpc_vec ppcboot_vec"
targ64_selvecs="bfd_elf64_powerpc_vec bfd_elf64_powerpcle_vec"
@@ -1217,7 +1217,7 @@
targ_selvecs="bfd_elf32_sparc_vec sunos_big_vec"
targ_underscore=yes
;;
- sparc-*-linux-gnu*)
+ sparc-*-linux-gnu* | sparc-*-linux-uclibc*)
targ_defvec=bfd_elf32_sparc_vec
targ_selvecs="sparclinux_vec bfd_elf64_sparc_vec sunos_big_vec"
;;
@@ -1264,7 +1264,7 @@
targ_defvec=sunos_big_vec
targ_underscore=yes
;;
- sparc64-*-linux-gnu*)
+ sparc64-*-linux-gnu* | sparc64-*-linux-uclibc*)
targ_defvec=bfd_elf64_sparc_vec
targ_selvecs="bfd_elf32_sparc_vec sparclinux_vec sunos_big_vec"
;;
@@ -1333,7 +1333,7 @@
targ_underscore=yes
;;
- vax-*-linux-gnu*)
+ vax-*-linux-gnu* | vax-*-linux-uclibc*)
targ_defvec=bfd_elf32_vax_vec
;;
[-- Attachment #3: uclibc-ld-configure.tgt.patch --]
[-- Type: text/x-diff, Size: 6839 bytes --]
Index: ld/configure.tgt
===================================================================
RCS file: /cvs/src/src/ld/configure.tgt,v
retrieving revision 1.165
diff -u -r1.165 configure.tgt
--- ld/configure.tgt 8 Feb 2005 19:54:27 -0000 1.165
+++ ld/configure.tgt 21 Mar 2005 00:48:25 -0000
@@ -30,7 +30,7 @@
cris-*-*aout*) targ_emul=crisaout
targ_extra_emuls="criself crislinux"
targ_extra_libpath=$targ_extra_emuls ;;
-cris-*-linux-gnu* | cris-*-linux-gnu*)
+cris-*-linux-gnu* | cris-*-linux-uclibc*)
targ_emul=crislinux ;;
cris-*-* | crisv32-*-*) targ_emul=criself
targ_extra_emuls="crisaout crislinux"
@@ -62,14 +62,16 @@
tdir_elf32_sparc=`echo ${targ_alias} | sed -e 's/aout//'`
tdir_sun4=sparc-sun-sunos4
;;
-sparc64-*-linux-gnu*) targ_emul=elf64_sparc
+sparc64-*-linux-gnu* | sparc64-*-linux-uclibc*)
+ targ_emul=elf64_sparc
targ_extra_emuls="elf32_sparc sparclinux sun4"
targ_extra_libpath=elf32_sparc
tdir_elf32_sparc=`echo ${targ_alias} | sed -e 's/64//'`
tdir_sparclinux=${tdir_elf32_sparc}aout
tdir_sun4=sparc-sun-sunos4
;;
-sparc*-*-linux-gnu*) targ_emul=elf32_sparc
+sparc*-*-linux-gnu* | sparc*-*-linux-uclibc*)
+ targ_emul=elf32_sparc
targ_extra_emuls="sparclinux elf64_sparc sun4"
targ_extra_libpath=elf64_sparc
tdir_sparclinux=${targ_alias}aout
@@ -119,8 +121,10 @@
ia64-*-aix*) targ_emul=elf64_aix ;;
m32r*le-*-elf*) targ_emul=m32rlelf ;;
m32r*-*-elf*) targ_emul=m32relf ;;
-m32r*le-*-linux-gnu*) targ_emul=m32rlelf_linux ;;
-m32r*-*-linux-gnu*) targ_emul=m32relf_linux ;;
+m32r*le-*-linux-gnu* | m32r*le-*-linux-uclibc*)
+ targ_emul=m32rlelf_linux ;;
+m32r*-*-linux-gnu* | m32r*-*-linux-uclibc*)
+ targ_emul=m32relf_linux ;;
m68hc11-*-*|m6811-*-*) targ_emul=m68hc11elf
targ_extra_emuls="m68hc11elfb m68hc12elf m68hc12elfb" ;;
m68hc12-*-*|m6812-*-*) targ_emul=m68hc12elf
@@ -131,7 +135,8 @@
m68*-apple-aux*) targ_emul=m68kaux ;;
maxq-*-coff) targ_emul=maxqcoff;;
*-tandem-none) targ_emul=st2000 ;;
-i370-*-elf* | i370-*-linux-gnu*) targ_emul=elf32i370 ;;
+i370-*-elf* | i370-*-linux-gnu* | i370-*-linux-uclibc*)
+ targ_emul=elf32i370 ;;
i[3-7]86-*-nto-qnx*) targ_emul=i386nto ;;
i[3-7]86-*-vsta) targ_emul=vsta ;;
i[3-7]86-go32-rtems*) targ_emul=i386go32 ;;
@@ -155,14 +160,16 @@
tdir_elf_i386=`echo ${targ_alias} | sed -e 's/aout//'`
;;
i[3-7]86-*-linux*oldld) targ_emul=i386linux; targ_extra_emuls=elf_i386 ;;
-i[3-7]86-*-linux-gnu*) targ_emul=elf_i386
+i[3-7]86-*-linux-gnu* | i[3-7]86-*-linux-uclibc*)
+ targ_emul=elf_i386
targ_extra_emuls=i386linux
if test x${want64} = xtrue; then
targ_extra_emuls="$targ_extra_emuls elf_x86_64"
fi
tdir_i386linux=${targ_alias}aout
;;
-x86_64-*-linux-gnu*) targ_emul=elf_x86_64
+x86_64-*-linux-gnu* | x86_64-*-linux-uclibc*)
+ targ_emul=elf_x86_64
targ_extra_emuls="elf_i386 i386linux"
targ_extra_libpath=elf_i386
tdir_i386linux=`echo ${targ_alias}aout | sed -e 's/x86_64/i386/'`
@@ -262,13 +269,16 @@
arm-*-kaos*) targ_emul=armelf ;;
arm9e-*-elf) targ_emul=armelf ;;
arm*b-*-linux-gnueabi) targ_emul=armelfb_linux_eabi ;;
-arm*b-*-linux-gnu*) targ_emul=armelfb_linux; targ_extra_emuls=armelfb ;;
+arm*b-*-linux-gnu* | arm*b-*-linux-uclibc*)
+ targ_emul=armelfb_linux; targ_extra_emuls=armelfb ;;
arm*-*-linux-gnueabi) targ_emul=armelf_linux_eabi ;;
-arm*-*-linux-gnu*) targ_emul=armelf_linux; targ_extra_emuls=armelf ;;
+arm*-*-linux-gnu* | arm*-*-linux-uclibc*)
+ targ_emul=armelf_linux; targ_extra_emuls=armelf ;;
arm*-*-uclinux*) targ_emul=armelf_linux; targ_extra_emuls=armelf ;;
arm-*-vxworks) targ_emul=armelf_vxworks ;;
arm*-*-conix*) targ_emul=armelf ;;
-thumb-*-linux-gnu* | thumb-*-uclinux*) targ_emul=armelf_linux; targ_extra_emuls=armelf ;;
+thumb-*-linux-gnu* | thumb-*-linux-uclibc* | thumb-*-uclinux*)
+ targ_emul=armelf_linux; targ_extra_emuls=armelf ;;
strongarm-*-coff) targ_emul=armcoff ;;
strongarm-*-elf) targ_emul=armelf ;;
strongarm-*-kaos*) targ_emul=armelf ;;
@@ -372,7 +382,8 @@
targ_extra_emuls=m68kelf
tdir_m68kelf=`echo ${targ_alias} | sed -e 's/aout//'`
;;
-m68k-*-linux-gnu*) targ_emul=m68kelf
+m68k-*-linux-gnu* | m68k-*-linux-uclibc*)
+ targ_emul=m68kelf
targ_extra_emuls=m68klinux
tdir_m68klinux=`echo ${targ_alias} | sed -e 's/linux/linuxaout/'`
;;
@@ -388,9 +399,11 @@
m68*-*-psos*) targ_emul=m68kpsos ;;
m68*-*-rtemscoff*) targ_emul=m68kcoff ;;
m68*-*-rtems*) targ_emul=m68kelf ;;
-hppa*64*-*-linux-gnu*) targ_emul=hppa64linux ;;
+hppa*64*-*-linux-gnu* | hppa*64*-*-linux-uclibc*)
+ targ_emul=hppa64linux ;;
hppa*64*-*) targ_emul=elf64hppa ;;
-hppa*-*-linux-gnu*) targ_emul=hppalinux ;;
+hppa*-*-linux-gnu* | hppa*-*-linux-uclibc*)
+ targ_emul=hppalinux ;;
hppa*-*-*elf*) targ_emul=hppaelf ;;
hppa*-*-lites*) targ_emul=hppaelf ;;
hppa*-*-netbsd*) targ_emul=hppanbsd ;;
@@ -402,7 +415,8 @@
vax-*-netbsdaout* | vax-*-netbsd*)
targ_emul=vaxnbsd
targ_extra_emuls=elf32vax ;;
-vax-*-linux-gnu*) targ_emul=elf32vax ;;
+vax-*-linux-gnu* | vax-*-linux-uclibc*)
+ targ_emul=elf32vax ;;
mips*-*-pe) targ_emul=mipspe ;
targ_extra_ofiles="deffilep.o pe-dll.o" ;;
mips*-dec-ultrix*) targ_emul=mipslit ;;
@@ -436,18 +450,22 @@
mips*-*-vxworks*) targ_emul=elf32ebmip
targ_extra_emuls="elf32elmip" ;;
mips*-*-windiss) targ_emul=elf32mipswindiss ;;
-mips64*el-*-linux-gnu*) targ_emul=elf32ltsmipn32
+mips64*el-*-linux-gnu* | mips64*el-*-linux-uclibc*)
+ targ_emul=elf32ltsmipn32
targ_extra_emuls="elf32btsmipn32 elf32ltsmip elf32btsmip elf64ltsmip elf64btsmip"
targ_extra_libpath="elf32ltsmip elf64ltsmip"
;;
-mips64*-*-linux-gnu*) targ_emul=elf32btsmipn32
+mips64*-*-linux-gnu* | mips64*-*-linux-uclibc*)
+ targ_emul=elf32btsmipn32
targ_extra_emuls="elf32ltsmipn32 elf32btsmip elf32ltsmip elf64btsmip elf64ltsmip"
targ_extra_libpath="elf32btsmip elf64btsmip"
;;
-mips*el-*-linux-gnu*) targ_emul=elf32ltsmip
+mips*el-*-linux-gnu* | mips*el-*-linux-uclibc*)
+ targ_emul=elf32ltsmip
targ_extra_emuls="elf32btsmip elf32ltsmipn32 elf64ltsmip elf32btsmipn32 elf64btsmip"
;;
-mips*-*-linux-gnu*) targ_emul=elf32btsmip
+mips*-*-linux-gnu* | mips*-*-linux-uclibc*)
+ targ_emul=elf32btsmip
targ_extra_emuls="elf32ltsmip elf32btsmipn32 elf64btsmip elf32ltsmipn32 elf64ltsmip"
;;
mips*-*-lnews*) targ_emul=mipslnews ;;
@@ -467,7 +485,8 @@
alpha*-*-linuxecoff*) targ_emul=alpha targ_extra_emuls=elf64alpha
tdir_elf64alpha=`echo ${targ_alias} | sed -e 's/ecoff//'`
;;
-alpha*-*-linux-gnu*) targ_emul=elf64alpha targ_extra_emuls=alpha
+alpha*-*-linux-gnu* | alpha*-*-linux-uclibc*)
+ targ_emul=elf64alpha targ_extra_emuls=alpha
tdir_alpha=`echo ${targ_alias} | sed -e 's/linux/linuxecoff/'`
;;
alpha*-*-osf*) targ_emul=alpha ;;
[-- Attachment #4: uclibc-ld-emultempl-elf32.em.patch --]
[-- Type: text/x-diff, Size: 1264 bytes --]
Index: ld/emultempl/elf32.em
===================================================================
RCS file: /cvs/src/src/ld/emultempl/elf32.em,v
retrieving revision 1.131
diff -u -r1.131 elf32.em
--- ld/emultempl/elf32.em 22 Feb 2005 13:00:26 -0000 1.131
+++ ld/emultempl/elf32.em 21 Mar 2005 00:48:38 -0000
@@ -65,7 +65,7 @@
if [ "x${USE_LIBPATH}" = xyes ] ; then
case ${target} in
- *-*-linux-gnu*)
+ *-*-linux-gnu* | *-*-linux-uclibc*)
cat >>e${EMULATION_NAME}.c <<EOF
#ifdef HAVE_GLOB
#include <glob.h>
@@ -347,7 +347,7 @@
EOF
case ${target} in
- *-*-linux-gnu*)
+ *-*-linux-gnu* | *-*-linux-uclibc*)
cat >>e${EMULATION_NAME}.c <<EOF
{
struct bfd_link_needed_list *l;
@@ -519,7 +519,7 @@
EOF
case ${target} in
- *-*-linux-gnu*)
+ *-*-linux-gnu* | *-*-linux-uclibc*)
cat >>e${EMULATION_NAME}.c <<EOF
/* For a native linker, check the file /etc/ld.so.conf for directories
in which we may find shared libraries. /etc/ld.so.conf is really
@@ -922,7 +922,7 @@
EOF
if [ "x${USE_LIBPATH}" = xyes ] ; then
case ${target} in
- *-*-linux-gnu*)
+ *-*-linux-gnu* *-*-linux-uclibc*)
cat >>e${EMULATION_NAME}.c <<EOF
if (gld${EMULATION_NAME}_check_ld_so_conf (l->name, force))
break;
[-- Attachment #5: uclibc-bfd-configure.in.patch --]
[-- Type: text/x-diff, Size: 1183 bytes --]
Index: bfd/configure.in
===================================================================
RCS file: /cvs/src/src/bfd/configure.in,v
retrieving revision 1.170
diff -u -r1.170 configure.in
--- bfd/configure.in 16 Mar 2005 17:18:15 -0000 1.170
+++ bfd/configure.in 21 Mar 2005 00:31:31 -0000
@@ -179,7 +179,7 @@
alpha*-*-freebsd* | alpha*-*-kfreebsd*-gnu)
COREFILE=''
;;
- alpha*-*-linux-gnu*)
+ alpha*-*-linux-gnu* | alpha*-*-linux-uclibc*)
COREFILE=trad-core.lo
TRAD_HEADER='"hosts/alphalinux.h"'
;;
@@ -264,7 +264,7 @@
TRAD_HEADER='"hosts/i386mach3.h"'
;;
changequote(,)dnl
- i[3-7]86-*-linux-gnu*)
+ i[3-7]86-*-linux-gnu* | i[3-7]86-*-linux-uclibc*)
changequote([,])dnl
COREFILE=trad-core.lo
TRAD_HEADER='"hosts/i386linux.h"'
@@ -305,7 +305,7 @@
COREFILE=trad-core.lo
TRAD_HEADER='"hosts/hp300bsd.h"'
;;
- m68*-*-linux-gnu*)
+ m68*-*-linux-gnu* | m68*-*-linux-uclibc*)
COREFILE=trad-core.lo
TRAD_HEADER='"hosts/m68klinux.h"'
;;
@@ -391,7 +391,7 @@
COREFILE=trad-core.lo
TRAD_HEADER='"hosts/vaxult2.h"'
;;
- vax-*-linux-gnu*)
+ vax-*-linux-gnu* | vax-*-linux-uclibc*)
COREFILE=trad-core.lo
TRAD_HEADER='"hosts/vaxlinux.h"'
;;
[-- Attachment #6: uclibc-gas-configure.in.patch --]
[-- Type: text/x-diff, Size: 574 bytes --]
Index: gas/configure.in
===================================================================
RCS file: /cvs/src/src/gas/configure.in,v
retrieving revision 1.170
diff -u -r1.170 configure.in
--- gas/configure.in 11 Mar 2005 19:52:50 -0000 1.170
+++ gas/configure.in 21 Mar 2005 00:38:25 -0000
@@ -161,7 +161,7 @@
AC_DEFINE(AIX_WEAK_SUPPORT, 1,
[Define if using AIX 5.2 value for C_WEAKEXT.])
;;
- ppc-*-linux-gnu*)
+ ppc-*-linux-gnu* | ppc-*-linux-uclibc*)
case "$endian" in
big) ;;
*) AC_MSG_ERROR(GNU/Linux must be configured big endian) ;;
[-- Attachment #7: uclibc-gas-configure.tgt.patch --]
[-- Type: text/x-diff, Size: 3130 bytes --]
Index: gas/configure.tgt
===================================================================
RCS file: /cvs/src/src/gas/configure.tgt,v
retrieving revision 1.3
diff -u -r1.3 configure.tgt
--- gas/configure.tgt 31 Jan 2005 17:18:51 -0000 1.3
+++ gas/configure.tgt 21 Mar 2005 00:38:14 -0000
@@ -101,6 +101,7 @@
alpha-*-osf*) fmt=ecoff ;;
alpha-*-linuxecoff*) fmt=ecoff ;;
alpha-*-linux-gnu*) fmt=elf em=linux ;;
+ alpha-*-linux-uclibc*) fmt=elf em=linux ;;
alpha-*-netbsd*) fmt=elf em=nbsd ;;
alpha-*-openbsd*) fmt=elf em=obsd ;;
@@ -117,6 +118,7 @@
arm-*-linux*aout*) fmt=aout em=linux ;;
arm-*-linux-gnueabi*) fmt=elf em=armlinuxeabi ;;
arm-*-linux-gnu*) fmt=elf em=linux ;;
+ arm-*-linux-uclibc*) fmt=elf em=linux ;;
arm-*-uclinux*) fmt=elf em=linux ;;
arm-*-netbsdelf*) fmt=elf em=nbsd ;;
arm-*-*n*bsd*) fmt=aout em=nbsd ;;
@@ -128,7 +130,7 @@
avr-*-*) fmt=elf ;;
- cris-*-linux-gnu* | crisv32-*-linux-gnu*)
+ cris-*-linux-gnu* | cris-*-linux-uclibc* | crisv32-*-linux-gnu*)
fmt=multi bfd_gas=yes em=linux ;;
cris-*-* | crisv32-*-*) fmt=multi bfd_gas=yes ;;
@@ -193,6 +195,7 @@
i386-*-linux*oldld) fmt=aout em=linux ;;
i386-*-linux*coff*) fmt=coff em=linux ;;
i386-*-linux-gnu*) fmt=elf em=linux ;;
+ i386-*-linux-uclibc*) fmt=elf em=linux ;;
i386-*-lynxos*) fmt=elf em=lynx bfd_gas=yes ;;
i386-*-sysv[45]*) fmt=elf ;;
i386-*-solaris*) fmt=elf ;;
@@ -239,6 +242,7 @@
ia64-*-elf*) fmt=elf ;;
ia64-*-aix*) fmt=elf em=ia64aix ;;
ia64-*-linux-gnu*) fmt=elf em=linux ;;
+ ia64-*-linux-uclibc*) fmt=elf em=linux ;;
ia64-*-hpux*) fmt=elf em=hpux ;;
ia64-*-netbsd*) fmt=elf em=nbsd ;;
@@ -266,6 +270,7 @@
m68k-*-hpux*) fmt=hp300 em=hp300 ;;
m68k-*-linux*aout*) fmt=aout em=linux ;;
m68k-*-linux-gnu*) fmt=elf em=linux ;;
+ m68k-*-linux-uclibc*) fmt=elf em=linux ;;
m68k-*-uclinux*) fmt=elf ;;
m68k-*-gnu*) fmt=elf ;;
m68k-*-netbsdelf*) fmt=elf em=nbsd ;;
@@ -333,6 +338,7 @@
ppc-*-*n*bsd* | ppc-*-elf*) fmt=elf ;;
ppc-*-eabi* | ppc-*-sysv4*) fmt=elf ;;
ppc-*-linux-gnu*) fmt=elf em=linux ;;
+ ppc-*-linux-uclibc*) fmt=elf em=linux ;;
ppc-*-solaris*) fmt=elf ;;
ppc-*-rtems*) fmt=elf ;;
ppc-*-macos*) fmt=coff em=macos ;;
@@ -341,6 +347,7 @@
ppc-*-lynxos*) fmt=elf em=lynx bfd_gas=yes ;;
s390-*-linux-gnu*) fmt=elf em=linux ;;
+ s390-*-linux-uclibc*) fmt=elf em=linux ;;
s390-*-tpf*) fmt=elf ;;
sh*-*-linux*) fmt=elf em=linux
@@ -370,6 +377,7 @@
sparc-*-coff) fmt=coff ;;
sparc-*-linux*aout*) fmt=aout em=linux ;;
sparc-*-linux-gnu*) fmt=elf em=linux ;;
+ sparc-*-linux-uclibc*) fmt=elf em=linux ;;
sparc-fujitsu-none) fmt=aout ;;
sparc-*-elf) fmt=elf ;;
sparc-*-sysv4*) fmt=elf ;;
@@ -399,6 +407,7 @@
vax-*-netbsd*) fmt=aout em=nbsd ;;
vax-*-bsd* | vax-*-ultrix*) fmt=aout ;;
vax-*-linux-gnu*) fmt=elf em=linux bfd_gas=yes ;;
+ vax-*-linux-uclibc*) fmt=elf em=linux bfd_gas=yes ;;
w65-*-*) fmt=coff ;;
^ permalink raw reply [flat|nested] 9+ messages in thread
* Re: uclibc patches
2005-03-21 9:41 ` Mike Frysinger
@ 2005-03-22 2:01 ` Christopher Faylor
2005-03-22 2:10 ` Mike Frysinger
0 siblings, 1 reply; 9+ messages in thread
From: Christopher Faylor @ 2005-03-22 2:01 UTC (permalink / raw)
To: binutils
On Sun, Mar 20, 2005 at 07:49:59PM -0500, Mike Frysinger wrote:
>On Sunday 20 March 2005 07:19 am, Nick Clifton wrote:
>> > Would patches to add support for tuple
>> > arch-*-linux-uclibc*
>> > be acceptable?
>>
>> Yes - provided that the copyright holder for the patches has a binutils
>> FSF copyright assignment in place, or if the patches are small enough
>> and simple enough to qualify as obvious.
>
>basically every place you see '-linux-gnu*', add a similar '-linux-uclibc*'
>match ... files that we're talking about here:
>bfd/config.bfd
>bfd/configure.in
>gas/configure.in
>gas/configure.tgt
>ld/configure.tgt
>ld/emultempl/elf32.em
>
>find attached patches for these files
Perhaps it is politically incorrect to suggest this, but wouldn't it
make sense to just allow -linux-* rather than add a bunch of
linux-uclibc's everywhere?
cgf
^ permalink raw reply [flat|nested] 9+ messages in thread
* Re: uclibc patches
2005-03-22 2:01 ` Christopher Faylor
@ 2005-03-22 2:10 ` Mike Frysinger
2005-03-24 0:37 ` Nick Clifton
0 siblings, 1 reply; 9+ messages in thread
From: Mike Frysinger @ 2005-03-22 2:10 UTC (permalink / raw)
To: binutils
On Monday 21 March 2005 04:49 pm, Christopher Faylor wrote:
> On Sun, Mar 20, 2005 at 07:49:59PM -0500, Mike Frysinger wrote:
> >On Sunday 20 March 2005 07:19 am, Nick Clifton wrote:
> >> > Would patches to add support for tuple
> >> > arch-*-linux-uclibc*
> >> > be acceptable?
> >>
> >> Yes - provided that the copyright holder for the patches has a binutils
> >> FSF copyright assignment in place, or if the patches are small enough
> >> and simple enough to qualify as obvious.
> >
> >basically every place you see '-linux-gnu*', add a similar
> > '-linux-uclibc*' match
>
> Perhaps it is politically incorrect to suggest this, but wouldn't it
> make sense to just allow -linux-* rather than add a bunch of
> linux-uclibc's everywhere?
it doesnt matter to me which is used so long as 'it works' :)
although i dont use dietlibc, i think this kind of change would also benefit
them (iirc, they use -linux-dietlibc in their tuples) ... anyone know if
klibc does something like this too ?
-mike
^ permalink raw reply [flat|nested] 9+ messages in thread
* Re: uclibc patches
2005-03-22 2:10 ` Mike Frysinger
@ 2005-03-24 0:37 ` Nick Clifton
0 siblings, 0 replies; 9+ messages in thread
From: Nick Clifton @ 2005-03-24 0:37 UTC (permalink / raw)
To: Mike Frysinger; +Cc: binutils
[-- Attachment #1: Type: text/plain, Size: 1259 bytes --]
Hi Mike,
>>>basically every place you see '-linux-gnu*', add a similar
>>>'-linux-uclibc*' match
>>
>>Perhaps it is politically incorrect to suggest this, but wouldn't it
>>make sense to just allow -linux-* rather than add a bunch of
>>linux-uclibc's everywhere?
> it doesnt matter to me which is used so long as 'it works' :)
I like this idea. So I have checked in the attached variant of your
patch together with these ChangeLog entries:
bfd/ChangeLog
2005-03-23 Mike Frysinger <vapier@gentoo.org>
Nick Clifton <nickc@redhat.com>
* config.bfd: Accept any C library to accompany a GNU Linux
implementation, not just the GNU C library.
* configure.in: Likewise.
* configure: Regenerate.
gas/ChangeLog
2005-03-23 Mike Frysinger <vapier@gentoo.org>
Nick Clifton <nickc@redhat.com>
* configure.tgt: Accept any C library to accompany a GNU Linux
implementation, not just the GNU C library.
* configure.in: Likewise.
* configure: Regenerate.
ld/ChangeLog
2005-03-23 Mike Frysinger <vapier@gentoo.org>
Nick Clifton <nickc@redhat.com>
* configure.host: Accept any C library to accompany a GNU Linux
implementation, not just the GNU C library.
* configure.tgt: Likewise.
* emultempl/elf32.em: Likewise.
Cheers
Nick
[-- Attachment #2: anylibc.patch.bz2 --]
[-- Type: application/x-bzip2, Size: 5031 bytes --]
^ permalink raw reply [flat|nested] 9+ messages in thread
* Re: uclibc patches
2005-03-20 20:24 ` Simon Richter
@ 2005-03-27 17:55 ` Peter S. Mazinger
2005-03-28 2:35 ` Simon Richter
0 siblings, 1 reply; 9+ messages in thread
From: Peter S. Mazinger @ 2005-03-27 17:55 UTC (permalink / raw)
To: Simon Richter; +Cc: binutils
On Sun, 20 Mar 2005, Simon Richter wrote:
> Hi,
>
> Peter S. Mazinger schrieb:
>
> > Would patches to add support for tuple
> > arch-*-linux-uclibc*
> > be acceptable?
>
> I'm not sure *-*-linux-uclibc would be the right choice, as it suggests
> running Linux with uclibc as your C library, which is something the
> binutils need not care about. I could, however, see a case for
> *-*-uclinux due to the ABI differences and the need for relocation
> information in fully linked executables.
Maybe for binutils it does not make sense, but for gcc (libstdc++)
it will be needed.
Peter
>
> I am working on implementing "armelf_uclinux" and "armelfb_uclinux"
> emulations which would emit ELF binaries with relocation information for
> ARM CPUs. I'm, however, unsure about whom to contact for a hint on what
> to change to denote the ABI differences in the ELF files.
>
> Simon
>
--
Peter S. Mazinger <ps dot m at gmx dot net> ID: 0xA5F059F2
Key fingerprint = 92A4 31E1 56BC 3D5A 2D08 BB6E C389 975E A5F0 59F2
^ permalink raw reply [flat|nested] 9+ messages in thread
* Re: uclibc patches
2005-03-27 17:55 ` Peter S. Mazinger
@ 2005-03-28 2:35 ` Simon Richter
0 siblings, 0 replies; 9+ messages in thread
From: Simon Richter @ 2005-03-28 2:35 UTC (permalink / raw)
To: Peter S. Mazinger; +Cc: binutils, gcc
[-- Attachment #1: Type: text/plain, Size: 736 bytes --]
Hi,
Peter S. Mazinger schrieb:
>>I'm not sure *-*-linux-uclibc would be the right choice, as it suggests
>>running Linux with uclibc as your C library, which is something the
>>binutils need not care about. I could, however, see a case for
>>*-*-uclinux due to the ABI differences and the need for relocation
>>information in fully linked executables.
> Maybe for binutils it does not make sense, but for gcc (libstdc++)
> it will be needed.
I think it may be much better to teach gcc how to switch its standard
libraries easily, possibly removing the fixincludes step from the
all-host target as a working gcc without system includes may be required
to bring the C library into a state where it can install its headers.
Simon
[-- Attachment #2: OpenPGP digital signature --]
[-- Type: application/pgp-signature, Size: 375 bytes --]
^ permalink raw reply [flat|nested] 9+ messages in thread
end of thread, other threads:[~2005-03-27 3:32 UTC | newest]
Thread overview: 9+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2005-03-19 2:21 uclibc patches Peter S. Mazinger
2005-03-20 17:16 ` Nick Clifton
2005-03-21 9:41 ` Mike Frysinger
2005-03-22 2:01 ` Christopher Faylor
2005-03-22 2:10 ` Mike Frysinger
2005-03-24 0:37 ` Nick Clifton
2005-03-20 20:24 ` Simon Richter
2005-03-27 17:55 ` Peter S. Mazinger
2005-03-28 2:35 ` Simon Richter
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).