mirror of
https://git.yoctoproject.org/poky
synced 2026-05-08 05:09:24 +00:00
binutils: Drop versions 2.17 and earlier
This commit is contained in:
-91
@@ -1,91 +0,0 @@
|
||||
|
||||
#
|
||||
# Patch managed by http://www.holgerschurig.de/patcher.html
|
||||
#
|
||||
|
||||
--- src/bfd/doc/Makefile.am~binutils-100_cflags_for_build.patch
|
||||
+++ src/bfd/doc/Makefile.am
|
||||
@@ -55,10 +55,10 @@
|
||||
MKDOC = chew$(EXEEXT_FOR_BUILD)
|
||||
|
||||
$(MKDOC): chew.o
|
||||
- $(CC_FOR_BUILD) -o $(MKDOC) chew.o $(CFLAGS) $(LOADLIBES) $(LDFLAGS)
|
||||
+ $(CC_FOR_BUILD) -o $(MKDOC) chew.o $(CFLAGS_FOR_BUILD) $(LOADLIBES) $(LDFLAGS_FOR_BUILD)
|
||||
|
||||
chew.o: chew.c
|
||||
- $(CC_FOR_BUILD) -c -I.. -I$(srcdir)/.. -I$(srcdir)/../../include -I$(srcdir)/../../intl -I../../intl $(H_CFLAGS) $(CFLAGS) $(srcdir)/chew.c
|
||||
+ $(CC_FOR_BUILD) -c -I.. -I$(srcdir)/.. -I$(srcdir)/../../include -I$(srcdir)/../../intl -I../../intl $(H_CFLAGS) $(CFLAGS_FOR_BUILD) $(srcdir)/chew.c
|
||||
|
||||
protos: libbfd.h libcoff.h bfd.h
|
||||
|
||||
--- src/binutils/Makefile.am~binutils-100_cflags_for_build.patch
|
||||
+++ src/binutils/Makefile.am
|
||||
@@ -219,20 +219,20 @@
|
||||
./sysinfo$(EXEEXT_FOR_BUILD) -d <$(srcdir)/sysroff.info >sysroff.h
|
||||
|
||||
sysinfo$(EXEEXT_FOR_BUILD): sysinfo.o syslex.o
|
||||
- $(CC_FOR_BUILD) $(CFLAGS) $(LDFLAGS) -o $@ sysinfo.o syslex.o
|
||||
+ $(CC_FOR_BUILD) $(CFLAGS_FOR_BUILD) $(LDFLAGS_FOR_BUILD) -o $@ sysinfo.o syslex.o
|
||||
|
||||
syslex.o: syslex.c sysinfo.h
|
||||
if [ -r syslex.c ]; then \
|
||||
- $(CC_FOR_BUILD) -c -I. $(CFLAGS) syslex.c ; \
|
||||
+ $(CC_FOR_BUILD) -c -I. $(CFLAGS_FOR_BUILD) syslex.c ; \
|
||||
else \
|
||||
- $(CC_FOR_BUILD) -c -I. -I$(srcdir) $(CFLAGS) $(srcdir)/syslex.c ;\
|
||||
+ $(CC_FOR_BUILD) -c -I. -I$(srcdir) $(CFLAGS_FOR_BUILD) $(srcdir)/syslex.c ;\
|
||||
fi
|
||||
|
||||
sysinfo.o: sysinfo.c
|
||||
if [ -r sysinfo.c ]; then \
|
||||
- $(CC_FOR_BUILD) -c -I. $(CFLAGS) sysinfo.c ; \
|
||||
+ $(CC_FOR_BUILD) -c -I. $(CFLAGS_FOR_BUILD) sysinfo.c ; \
|
||||
else \
|
||||
- $(CC_FOR_BUILD) -c -I. $(CFLAGS) $(srcdir)/sysinfo.c ; \
|
||||
+ $(CC_FOR_BUILD) -c -I. $(CFLAGS_FOR_BUILD) $(srcdir)/sysinfo.c ; \
|
||||
fi
|
||||
|
||||
# We need these for parallel make.
|
||||
--- src/bfd/doc/Makefile.in~binutils-100_cflags_for_build.patch
|
||||
+++ src/bfd/doc/Makefile.in
|
||||
@@ -470,10 +470,10 @@
|
||||
|
||||
|
||||
$(MKDOC): chew.o
|
||||
- $(CC_FOR_BUILD) -o $(MKDOC) chew.o $(CFLAGS) $(LOADLIBES) $(LDFLAGS)
|
||||
+ $(CC_FOR_BUILD) -o $(MKDOC) chew.o $(CFLAGS_FOR_BUILD) $(LOADLIBES) $(LDFLAGS_FOR_BUILD)
|
||||
|
||||
chew.o: chew.c
|
||||
- $(CC_FOR_BUILD) -c -I.. -I$(srcdir)/.. -I$(srcdir)/../../include -I$(srcdir)/../../intl -I../../intl $(H_CFLAGS) $(CFLAGS) $(srcdir)/chew.c
|
||||
+ $(CC_FOR_BUILD) -c -I.. -I$(srcdir)/.. -I$(srcdir)/../../include -I$(srcdir)/../../intl -I../../intl $(H_CFLAGS) $(CFLAGS_FOR_BUILD) $(srcdir)/chew.c
|
||||
|
||||
protos: libbfd.h libcoff.h bfd.h
|
||||
|
||||
--- src/binutils/Makefile.in~binutils-100_cflags_for_build.patch
|
||||
+++ src/binutils/Makefile.in
|
||||
@@ -978,20 +978,20 @@
|
||||
./sysinfo$(EXEEXT_FOR_BUILD) -d <$(srcdir)/sysroff.info >sysroff.h
|
||||
|
||||
sysinfo$(EXEEXT_FOR_BUILD): sysinfo.o syslex.o
|
||||
- $(CC_FOR_BUILD) $(CFLAGS) $(LDFLAGS) -o $@ sysinfo.o syslex.o
|
||||
+ $(CC_FOR_BUILD) $(CFLAGS_FOR_BUILD) $(LDFLAGS_FOR_BUILD) -o $@ sysinfo.o syslex.o
|
||||
|
||||
syslex.o: syslex.c sysinfo.h
|
||||
if [ -r syslex.c ]; then \
|
||||
- $(CC_FOR_BUILD) -c -I. $(CFLAGS) syslex.c ; \
|
||||
+ $(CC_FOR_BUILD) -c -I. $(CFLAGS_FOR_BUILD) syslex.c ; \
|
||||
else \
|
||||
- $(CC_FOR_BUILD) -c -I. -I$(srcdir) $(CFLAGS) $(srcdir)/syslex.c ;\
|
||||
+ $(CC_FOR_BUILD) -c -I. -I$(srcdir) $(CFLAGS_FOR_BUILD) $(srcdir)/syslex.c ;\
|
||||
fi
|
||||
|
||||
sysinfo.o: sysinfo.c
|
||||
if [ -r sysinfo.c ]; then \
|
||||
- $(CC_FOR_BUILD) -c -I. $(CFLAGS) sysinfo.c ; \
|
||||
+ $(CC_FOR_BUILD) -c -I. $(CFLAGS_FOR_BUILD) sysinfo.c ; \
|
||||
else \
|
||||
- $(CC_FOR_BUILD) -c -I. $(CFLAGS) $(srcdir)/sysinfo.c ; \
|
||||
+ $(CC_FOR_BUILD) -c -I. $(CFLAGS_FOR_BUILD) $(srcdir)/sysinfo.c ; \
|
||||
fi
|
||||
|
||||
# We need these for parallel make.
|
||||
-75
@@ -1,75 +0,0 @@
|
||||
Fix found here: http://www.freelists.org/archives/openbeos/11-2005/msg00090.html
|
||||
|
||||
Fixes:
|
||||
In file included from ./targ-cpu.h:1,
|
||||
from /home/dank/crosstool-new/build/i686-unknown-linux-gnu/gcc-2.95.3-glibc-2.2.2/binutils-2.15/gas/config/obj-elf.h:42,
|
||||
from ./obj-format.h:1,
|
||||
from /home/dank/crosstool-new/build/i686-unknown-linux-gnu/gcc-2.95.3-glibc-2.2.2/binutils-2.15/gas/config/te-linux.h:4,
|
||||
from ./targ-env.h:1,
|
||||
from /home/dank/crosstool-new/build/i686-unknown-linux-gnu/gcc-2.95.3-glibc-2.2.2/binutils-2.15/gas/as.h:626,
|
||||
from /home/dank/crosstool-new/build/i686-unknown-linux-gnu/gcc-2.95.3-glibc-2.2.2/binutils-2.15/gas/app.c:30:
|
||||
/home/dank/crosstool-new/build/i686-unknown-linux-gnu/gcc-2.95.3-glibc-2.2.2/binutils-2.15/gas/config/tc-i386.h:451: error: array type has incomplete element type
|
||||
make[3]: *** [app.o] Error 1
|
||||
make[3]: Leaving directory `/home/dank/crosstool-new/build/i686-unknown-linux-gnu/gcc-2.95.3-glibc-2.2.2/build-binutils/gas'
|
||||
|
||||
when building binutils-2.15 with gcc-4.0
|
||||
|
||||
|
||||
diff -ur binutils-2.15.old/gas/as.h binutils-2.15/gas/as.h
|
||||
--- binutils-2.15.old/gas/as.h 2003-11-22 18:14:21.000000000 -0800
|
||||
+++ binutils-2.15/gas/as.h 2006-02-14 22:05:35.000000000 -0800
|
||||
@@ -605,7 +605,26 @@
|
||||
struct expressionS;
|
||||
struct fix;
|
||||
typedef struct symbol symbolS;
|
||||
-struct relax_type;
|
||||
+
|
||||
+/* JF moved this here from as.h under the theory that nobody except MACHINE.c
|
||||
+ and write.c care about it anyway. */
|
||||
+/* [zooey]: the above no longer holds with gcc4, as it keeps bugging about
|
||||
+ incomplete element types in arrays, if relax_type isn't defined
|
||||
+ here. So I moved the definition back from tc.h to here. */
|
||||
+struct relax_type
|
||||
+{
|
||||
+ /* Forward reach. Signed number. > 0. */
|
||||
+ long rlx_forward;
|
||||
+ /* Backward reach. Signed number. < 0. */
|
||||
+ long rlx_backward;
|
||||
+
|
||||
+ /* Bytes length of this address. */
|
||||
+ unsigned char rlx_length;
|
||||
+
|
||||
+ /* Next longer relax-state. 0 means there is no 'next' relax-state. */
|
||||
+ relax_substateT rlx_more;
|
||||
+};
|
||||
+
|
||||
typedef struct frag fragS;
|
||||
|
||||
#ifdef BFD_ASSEMBLER
|
||||
diff -ur binutils-2.15.old/gas/tc.h binutils-2.15/gas/tc.h
|
||||
--- binutils-2.15.old/gas/tc.h 2003-12-03 15:39:38.000000000 -0800
|
||||
+++ binutils-2.15/gas/tc.h 2006-02-14 22:03:35.000000000 -0800
|
||||
@@ -24,23 +24,6 @@
|
||||
|
||||
extern const pseudo_typeS md_pseudo_table[];
|
||||
|
||||
-/* JF moved this here from as.h under the theory that nobody except MACHINE.c
|
||||
- and write.c care about it anyway. */
|
||||
-
|
||||
-struct relax_type
|
||||
-{
|
||||
- /* Forward reach. Signed number. > 0. */
|
||||
- long rlx_forward;
|
||||
- /* Backward reach. Signed number. < 0. */
|
||||
- long rlx_backward;
|
||||
-
|
||||
- /* Bytes length of this address. */
|
||||
- unsigned char rlx_length;
|
||||
-
|
||||
- /* Next longer relax-state. 0 means there is no 'next' relax-state. */
|
||||
- relax_substateT rlx_more;
|
||||
-};
|
||||
-
|
||||
typedef struct relax_type relax_typeS;
|
||||
|
||||
extern const int md_reloc_size; /* Size of a relocation record */
|
||||
Vendored
-33
@@ -1,33 +0,0 @@
|
||||
|
||||
#
|
||||
# Patch managed by http://www.holgerschurig.de/patcher.html
|
||||
#
|
||||
|
||||
--- src/configure~binutils-2.15.90.0.3-uclibc-200-build_modules.patch
|
||||
+++ src/configure
|
||||
@@ -940,6 +940,11 @@
|
||||
build_configdirs=`echo ${build_libs} ${build_tools}`
|
||||
fi
|
||||
|
||||
+case "$target" in
|
||||
+ *-*-*-uclibc*)
|
||||
+ build_modules=
|
||||
+ ;;
|
||||
+esac
|
||||
################################################################################
|
||||
|
||||
srcname="gnu development package"
|
||||
--- src/configure.in~binutils-2.15.90.0.3-uclibc-200-build_modules.patch
|
||||
+++ src/configure.in
|
||||
@@ -189,6 +189,11 @@
|
||||
build_configdirs=`echo ${build_libs} ${build_tools}`
|
||||
fi
|
||||
|
||||
+case "$target" in
|
||||
+ *-*-*-uclibc*)
|
||||
+ build_modules=
|
||||
+ ;;
|
||||
+esac
|
||||
################################################################################
|
||||
|
||||
srcname="gnu development package"
|
||||
-30
@@ -1,30 +0,0 @@
|
||||
--- binutils-2.15.90.0.3/bfd/doc/Makefile.am.cflags 2004-01-14 16:07:44.000000000 -0500
|
||||
+++ binutils-2.15.90.0.3/bfd/doc/Makefile.am 2004-04-22 22:06:35.000000000 -0400
|
||||
@@ -55,10 +55,10 @@
|
||||
MKDOC = chew$(EXEEXT_FOR_BUILD)
|
||||
|
||||
$(MKDOC): chew.o
|
||||
- $(CC_FOR_BUILD) -o $(MKDOC) chew.o $(CFLAGS) $(LOADLIBES) $(LDFLAGS)
|
||||
+ $(CC_FOR_BUILD) -o $(MKDOC) chew.o $(CFLAGS_FOR_BUILD) $(LOADLIBES) $(LDFLAGS)
|
||||
|
||||
chew.o: chew.c
|
||||
- $(CC_FOR_BUILD) -c -I.. -I$(srcdir)/.. -I$(srcdir)/../../include -I$(srcdir)/../../intl -I../../intl $(H_CFLAGS) $(CFLAGS) $(srcdir)/chew.c
|
||||
+ $(CC_FOR_BUILD) -c -I.. -I$(srcdir)/.. -I$(srcdir)/../../include -I$(srcdir)/../../intl -I../../intl $(H_CFLAGS) $(CFLAGS_FOR_BUILD) $(srcdir)/chew.c
|
||||
|
||||
protos: libbfd.h libcoff.h bfd.h
|
||||
|
||||
--- binutils-2.15.90.0.3/bfd/doc/Makefile.in.cflags 2004-04-12 15:56:34.000000000 -0400
|
||||
+++ binutils-2.15.90.0.3/bfd/doc/Makefile.in 2004-04-22 22:06:35.000000000 -0400
|
||||
@@ -472,10 +472,10 @@
|
||||
|
||||
|
||||
$(MKDOC): chew.o
|
||||
- $(CC_FOR_BUILD) -o $(MKDOC) chew.o $(CFLAGS) $(LOADLIBES) $(LDFLAGS)
|
||||
+ $(CC_FOR_BUILD) -o $(MKDOC) chew.o $(CFLAGS_FOR_BUILD) $(LOADLIBES) $(LDFLAGS)
|
||||
|
||||
chew.o: chew.c
|
||||
- $(CC_FOR_BUILD) -c -I.. -I$(srcdir)/.. -I$(srcdir)/../../include -I$(srcdir)/../../intl -I../../intl $(H_CFLAGS) $(CFLAGS) $(srcdir)/chew.c
|
||||
+ $(CC_FOR_BUILD) -c -I.. -I$(srcdir)/.. -I$(srcdir)/../../include -I$(srcdir)/../../intl -I../../intl $(H_CFLAGS) $(CFLAGS_FOR_BUILD) $(srcdir)/chew.c
|
||||
|
||||
protos: libbfd.h libcoff.h bfd.h
|
||||
|
||||
-604
@@ -1,604 +0,0 @@
|
||||
|
||||
#
|
||||
# Patch managed by http://www.holgerschurig.de/patcher.html
|
||||
#
|
||||
|
||||
--- binutils-2.15.94.0.1/bfd/config.bfd~binutils-2.15.91.0.1-uclibc-100-conf
|
||||
+++ binutils-2.15.94.0.1/bfd/config.bfd
|
||||
@@ -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*-*-elf* | ia64*-*-linux-uclibc* | 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
|
||||
;;
|
||||
@@ -237,7 +237,7 @@
|
||||
;;
|
||||
arm-*-elf | arm-*-freebsd* | arm*-*-linux-gnu* | arm*-*-conix* | \
|
||||
arm*-*-uclinux* | arm-*-kfreebsd*-gnu | arm-*-vxworks | \
|
||||
- arm*-*-eabi* )
|
||||
+ arm*-*-eabi* | arm*-*-linux-uclibc* )
|
||||
targ_defvec=bfd_elf32_littlearm_vec
|
||||
targ_selvecs=bfd_elf32_bigarm_vec
|
||||
;;
|
||||
@@ -381,7 +381,7 @@
|
||||
;;
|
||||
|
||||
#ifdef BFD64
|
||||
- hppa*64*-*-linux-gnu*)
|
||||
+ hppa*64*-*-linux-gnu* | hppa*64*-*-linux-uclibc*)
|
||||
targ_defvec=bfd_elf64_hppa_linux_vec
|
||||
targ_selvecs=bfd_elf64_hppa_vec
|
||||
;;
|
||||
@@ -392,7 +392,7 @@
|
||||
;;
|
||||
#endif
|
||||
|
||||
- hppa*-*-linux-gnu*)
|
||||
+ hppa*-*-linux-gnu* | hppa*-*-linux-uclibc*)
|
||||
targ_defvec=bfd_elf32_hppa_linux_vec
|
||||
targ_selvecs=bfd_elf32_hppa_vec
|
||||
;;
|
||||
@@ -525,7 +525,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
|
||||
@@ -539,7 +539,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"
|
||||
;;
|
||||
@@ -715,7 +715,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
|
||||
;;
|
||||
@@ -1001,7 +1001,8 @@
|
||||
;;
|
||||
#endif
|
||||
powerpc-*-*bsd* | powerpc-*-elf* | powerpc-*-sysv4* | powerpc-*-eabi* | \
|
||||
- powerpc-*-solaris2* | powerpc-*-linux-gnu* | powerpc-*-rtems* | \
|
||||
+ 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"
|
||||
@@ -1038,8 +1039,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"
|
||||
@@ -1206,7 +1207,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"
|
||||
;;
|
||||
@@ -1253,7 +1254,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"
|
||||
;;
|
||||
--- binutils-2.15.94.0.1/bfd/configure~binutils-2.15.91.0.1-uclibc-100-conf
|
||||
+++ binutils-2.15.94.0.1/bfd/configure
|
||||
@@ -3583,6 +3583,11 @@
|
||||
lt_cv_file_magic_test_file=`echo /lib/libc.so* /lib/libc-*.so`
|
||||
;;
|
||||
|
||||
+linux-uclibc*)
|
||||
+ lt_cv_deplibs_check_method=pass_all
|
||||
+ lt_cv_file_magic_test_file=`echo /lib/libuClibc-*.so`
|
||||
+ ;;
|
||||
+
|
||||
netbsd* | knetbsd*-gnu)
|
||||
if echo __ELF__ | $CC -E - | grep __ELF__ > /dev/null; then
|
||||
lt_cv_deplibs_check_method='match_pattern /lib[^/\.]+\.so\.[0-9]+\.[0-9]+$'
|
||||
@@ -9914,7 +9919,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"'
|
||||
;;
|
||||
@@ -9978,7 +9983,7 @@
|
||||
COREFILE=trad-core.lo
|
||||
TRAD_HEADER='"hosts/i386mach3.h"'
|
||||
;;
|
||||
- i[3-7]86-*-linux-gnu*)
|
||||
+ i[3-7]86-*-linux-gnu* | i[3-7]86-*-linux-uclibc*)
|
||||
COREFILE=trad-core.lo
|
||||
TRAD_HEADER='"hosts/i386linux.h"'
|
||||
;;
|
||||
@@ -10016,7 +10021,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"'
|
||||
;;
|
||||
--- binutils-2.15.94.0.1/bfd/configure.in~binutils-2.15.91.0.1-uclibc-100-conf
|
||||
+++ binutils-2.15.94.0.1/bfd/configure.in
|
||||
@@ -163,7 +163,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"'
|
||||
;;
|
||||
@@ -248,7 +248,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"'
|
||||
@@ -289,7 +289,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"'
|
||||
;;
|
||||
--- binutils-2.15.94.0.1/gas/configure~binutils-2.15.91.0.1-uclibc-100-conf
|
||||
+++ binutils-2.15.94.0.1/gas/configure
|
||||
@@ -3420,6 +3420,11 @@
|
||||
lt_cv_file_magic_test_file=`echo /lib/libc.so* /lib/libc-*.so`
|
||||
;;
|
||||
|
||||
+linux-uclibc*)
|
||||
+ lt_cv_deplibs_check_method=pass_all
|
||||
+ lt_cv_file_magic_test_file=`echo /lib/libuClibc-*.so`
|
||||
+ ;;
|
||||
+
|
||||
netbsd* | knetbsd*-gnu)
|
||||
if echo __ELF__ | $CC -E - | grep __ELF__ > /dev/null; then
|
||||
lt_cv_deplibs_check_method='match_pattern /lib[^/\.]+\.so\.[0-9]+\.[0-9]+$'
|
||||
@@ -4256,6 +4261,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 ;;
|
||||
|
||||
@@ -4271,6 +4277,7 @@
|
||||
arm*-*-conix*) fmt=elf ;;
|
||||
arm-*-linux*aout*) fmt=aout em=linux ;;
|
||||
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 ;;
|
||||
@@ -4284,6 +4291,7 @@
|
||||
|
||||
cris-*-linux-gnu* | crisv32-*-linux-gnu*)
|
||||
fmt=multi bfd_gas=yes em=linux ;;
|
||||
+ cris-*-linux-uclibc*) fmt=multi bfd_gas=yes em=linux ;;
|
||||
cris-*-* | crisv32-*-*) fmt=multi bfd_gas=yes ;;
|
||||
|
||||
crx-*-elf*) fmt=elf ;;
|
||||
@@ -4343,7 +4351,9 @@
|
||||
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 ;;
|
||||
x86_64-*-linux-gnu*) fmt=elf em=linux ;;
|
||||
+ x86_64-*-linux-uclibc*) fmt=elf em=linux ;;
|
||||
i386-*-lynxos*) fmt=elf em=lynx bfd_gas=yes ;;
|
||||
i386-*-sysv[45]*) fmt=elf ;;
|
||||
i386-*-solaris*) fmt=elf ;;
|
||||
@@ -4403,6 +4413,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 ;;
|
||||
|
||||
@@ -4430,6 +4441,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-*-lynxos*) fmt=coff em=lynx ;;
|
||||
@@ -4504,7 +4516,7 @@
|
||||
ppc-*-beos*) fmt=coff ;;
|
||||
ppc-*-*n*bsd* | ppc-*-elf*) fmt=elf ;;
|
||||
ppc-*-eabi* | ppc-*-sysv4*) fmt=elf ;;
|
||||
- ppc-*-linux-gnu*) fmt=elf em=linux
|
||||
+ ppc-*-linux-uclibc* | ppc-*-linux-gnu*) fmt=elf em=linux
|
||||
case "$endian" in
|
||||
big) ;;
|
||||
*) { { echo "$as_me:$LINENO: error: GNU/Linux must be configured big endian" >&5
|
||||
@@ -4531,7 +4543,9 @@
|
||||
ppc-*-lynxos*) fmt=elf em=lynx bfd_gas=yes ;;
|
||||
|
||||
s390x-*-linux-gnu*) fmt=elf em=linux ;;
|
||||
+ s390x-*-linux-uclibc*) fmt=elf em=linux ;;
|
||||
s390-*-linux-gnu*) fmt=elf em=linux ;;
|
||||
+ s390-*-linux-uclibc*) fmt=elf em=linux ;;
|
||||
|
||||
sh*-*-linux*) fmt=elf em=linux
|
||||
case ${cpu} in
|
||||
@@ -4566,6 +4580,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-*-lynxos*) fmt=coff em=lynx ;;
|
||||
sparc-fujitsu-none) fmt=aout ;;
|
||||
sparc-*-elf) fmt=elf ;;
|
||||
--- binutils-2.15.94.0.1/gas/configure.in~binutils-2.15.91.0.1-uclibc-100-conf
|
||||
+++ binutils-2.15.94.0.1/gas/configure.in
|
||||
@@ -202,6 +202,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 ;;
|
||||
|
||||
@@ -217,6 +218,7 @@
|
||||
arm*-*-conix*) fmt=elf ;;
|
||||
arm-*-linux*aout*) fmt=aout em=linux ;;
|
||||
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 ;;
|
||||
@@ -230,6 +232,7 @@
|
||||
|
||||
cris-*-linux-gnu* | crisv32-*-linux-gnu*)
|
||||
fmt=multi bfd_gas=yes em=linux ;;
|
||||
+ cris-*-linux-uclibc*) fmt=multi bfd_gas=yes em=linux ;;
|
||||
cris-*-* | crisv32-*-*) fmt=multi bfd_gas=yes ;;
|
||||
|
||||
crx-*-elf*) fmt=elf ;;
|
||||
@@ -289,7 +292,9 @@
|
||||
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 ;;
|
||||
x86_64-*-linux-gnu*) fmt=elf em=linux ;;
|
||||
+ x86_64-*-linux-uclibc*) fmt=elf em=linux ;;
|
||||
i386-*-lynxos*) fmt=elf em=lynx bfd_gas=yes ;;
|
||||
changequote(,)dnl
|
||||
i386-*-sysv[45]*) fmt=elf ;;
|
||||
@@ -342,6 +347,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 ;;
|
||||
|
||||
@@ -369,6 +375,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-*-lynxos*) fmt=coff em=lynx ;;
|
||||
@@ -440,7 +447,7 @@
|
||||
ppc-*-beos*) fmt=coff ;;
|
||||
ppc-*-*n*bsd* | ppc-*-elf*) fmt=elf ;;
|
||||
ppc-*-eabi* | ppc-*-sysv4*) fmt=elf ;;
|
||||
- ppc-*-linux-gnu*) fmt=elf em=linux
|
||||
+ ppc-*-linux-uclibc* | ppc-*-linux-gnu*) fmt=elf em=linux
|
||||
case "$endian" in
|
||||
big) ;;
|
||||
*) AC_MSG_ERROR(GNU/Linux must be configured big endian) ;;
|
||||
@@ -460,7 +467,9 @@
|
||||
ppc-*-lynxos*) fmt=elf em=lynx bfd_gas=yes ;;
|
||||
|
||||
s390x-*-linux-gnu*) fmt=elf em=linux ;;
|
||||
+ s390x-*-linux-uclibc*) fmt=elf em=linux ;;
|
||||
s390-*-linux-gnu*) fmt=elf em=linux ;;
|
||||
+ s390-*-linux-uclibc*) fmt=elf em=linux ;;
|
||||
|
||||
sh*-*-linux*) fmt=elf em=linux
|
||||
case ${cpu} in
|
||||
@@ -491,6 +500,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-*-lynxos*) fmt=coff em=lynx ;;
|
||||
sparc-fujitsu-none) fmt=aout ;;
|
||||
sparc-*-elf) fmt=elf ;;
|
||||
--- binutils-2.15.94.0.1/ld/configure~binutils-2.15.91.0.1-uclibc-100-conf
|
||||
+++ binutils-2.15.94.0.1/ld/configure
|
||||
@@ -1579,6 +1579,11 @@
|
||||
lt_cv_file_magic_test_file=`echo /lib/libc.so* /lib/libc-*.so`
|
||||
;;
|
||||
|
||||
+linux-uclibc*)
|
||||
+ lt_cv_deplibs_check_method=pass_all
|
||||
+ lt_cv_file_magic_test_file=`echo /lib/libuClibc-*.so`
|
||||
+ ;;
|
||||
+
|
||||
netbsd* | knetbsd*-gnu)
|
||||
if echo __ELF__ | $CC -E - | grep __ELF__ > /dev/null; then
|
||||
lt_cv_deplibs_check_method='match_pattern /lib[^/\.]+\.so\.[0-9]+\.[0-9]+$'
|
||||
--- binutils-2.15.94.0.1/ld/configure.tgt~binutils-2.15.91.0.1-uclibc-100-conf
|
||||
+++ binutils-2.15.94.0.1/ld/configure.tgt
|
||||
@@ -32,6 +32,7 @@
|
||||
targ_extra_libpath=$targ_extra_emuls ;;
|
||||
cris-*-linux-gnu* | cris-*-linux-gnu*)
|
||||
targ_emul=crislinux ;;
|
||||
+cris-*-linux-uclibc*) targ_emul=crislinux ;;
|
||||
cris-*-* | crisv32-*-*) targ_emul=criself
|
||||
targ_extra_emuls="crisaout crislinux"
|
||||
targ_extra_libpath=$targ_extra_emuls ;;
|
||||
@@ -62,14 +63,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
|
||||
@@ -132,7 +135,7 @@
|
||||
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 ;;
|
||||
@@ -156,14 +159,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/'`
|
||||
@@ -263,11 +268,14 @@
|
||||
arm-*-kaos*) targ_emul=armelf ;;
|
||||
arm9e-*-elf) targ_emul=armelf ;;
|
||||
arm*b-*-linux-gnu*) targ_emul=armelfb_linux; targ_extra_emuls=armelfb ;;
|
||||
+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-uclibc*) targ_emul=armelf_linux; targ_extra_emuls=armelf ;;
|
||||
arm*-*-uclinux*) targ_emul=armelf_linux; targ_extra_emuls=armelf ;;
|
||||
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 ;;
|
||||
@@ -371,7 +379,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 +397,9 @@
|
||||
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 ;;
|
||||
@@ -436,16 +445,20 @@
|
||||
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"
|
||||
;;
|
||||
-mips64*-*-linux-gnu*) targ_emul=elf32btsmipn32
|
||||
+mips64*-*-linux-gnu* | mips64*-*-linux-uclibc*)
|
||||
+ targ_emul=elf32btsmipn32
|
||||
targ_extra_emuls="elf32ltsmipn32 elf32btsmip elf32ltsmip elf64btsmip elf64ltsmip"
|
||||
;;
|
||||
-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 ;;
|
||||
@@ -468,6 +481,10 @@
|
||||
alpha*-*-linux-gnu*) targ_emul=elf64alpha targ_extra_emuls=alpha
|
||||
tdir_alpha=`echo ${targ_alias} | sed -e 's/linux/linuxecoff/'`
|
||||
;;
|
||||
+alpha*-*-linux-uclibc*) targ_emul=elf64alpha targ_extra_emuls=alpha
|
||||
+ # The following needs to be checked...
|
||||
+ tdir_alpha=`echo ${targ_alias} | sed -e 's/linux/linuxecoff/'`
|
||||
+ ;;
|
||||
alpha*-*-osf*) targ_emul=alpha ;;
|
||||
alpha*-*-gnu*) targ_emul=elf64alpha ;;
|
||||
alpha*-*-netware*) targ_emul=alpha ;;
|
||||
--- binutils-2.15.94.0.1/configure~binutils-2.15.91.0.1-uclibc-100-conf
|
||||
+++ binutils-2.15.94.0.1/configure
|
||||
@@ -1341,6 +1341,18 @@
|
||||
i[3456789]86-*-coff | i[3456789]86-*-elf)
|
||||
noconfigdirs="$noconfigdirs ${libgcj}"
|
||||
;;
|
||||
+ i[3456789]86-*-linux-uclibc)
|
||||
+ # This section makes it possible to build newlib natively on linux.
|
||||
+ # If we are using a cross compiler then don't configure newlib.
|
||||
+ if test x${is_cross_compiler} != xno ; then
|
||||
+ noconfigdirs="$noconfigdirs target-newlib"
|
||||
+ fi
|
||||
+ noconfigdirs="$noconfigdirs target-libgloss"
|
||||
+ # If we are not using a cross compiler, do configure newlib.
|
||||
+ # Note however, that newlib will only be configured in this situation
|
||||
+ # if the --with-newlib option has been given, because otherwise
|
||||
+ # 'target-newlib' will appear in skipdirs.
|
||||
+ ;;
|
||||
i[3456789]86-*-linux*)
|
||||
# The GCC port for glibc1 has no MD_FALLBACK_FRAME_STATE_FOR, so let's
|
||||
# not build java stuff by default.
|
||||
--- binutils-2.15.94.0.1/configure.in~binutils-2.15.91.0.1-uclibc-100-conf
|
||||
+++ binutils-2.15.94.0.1/configure.in
|
||||
@@ -563,6 +563,19 @@
|
||||
i[[3456789]]86-*-coff | i[[3456789]]86-*-elf)
|
||||
noconfigdirs="$noconfigdirs ${libgcj}"
|
||||
;;
|
||||
+ i[3456789]86-*-linux-uclibc)
|
||||
+ # This section makes it possible to build newlib natively on linux.
|
||||
+ # If we are using a cross compiler then don't configure newlib.
|
||||
+ if test x${is_cross_compiler} != xno ; then
|
||||
+ noconfigdirs="$noconfigdirs target-newlib"
|
||||
+ fi
|
||||
+ noconfigdirs="$noconfigdirs target-libgloss"
|
||||
+ build_modules=
|
||||
+ # If we are not using a cross compiler, do configure newlib.
|
||||
+ # Note however, that newlib will only be configured in this situation
|
||||
+ # if the --with-newlib option has been given, because otherwise
|
||||
+ # 'target-newlib' will appear in skipdirs.
|
||||
+ ;;
|
||||
i[[3456789]]86-*-linux*)
|
||||
# The GCC port for glibc1 has no MD_FALLBACK_FRAME_STATE_FOR, so let's
|
||||
# not build java stuff by default.
|
||||
--- binutils-2.15.94.0.1/libtool.m4~binutils-2.15.91.0.1-uclibc-100-conf
|
||||
+++ binutils-2.15.94.0.1/libtool.m4
|
||||
@@ -645,6 +645,11 @@
|
||||
lt_cv_file_magic_test_file=`echo /lib/libc.so* /lib/libc-*.so`
|
||||
;;
|
||||
|
||||
+linux-uclibc*)
|
||||
+ lt_cv_deplibs_check_method=pass_all
|
||||
+ lt_cv_file_magic_test_file=`echo /lib/libuClibc-*.so`
|
||||
+ ;;
|
||||
+
|
||||
netbsd* | knetbsd*-gnu)
|
||||
if echo __ELF__ | $CC -E - | grep __ELF__ > /dev/null; then
|
||||
[lt_cv_deplibs_check_method='match_pattern /lib[^/\.]+\.so\.[0-9]+\.[0-9]+$']
|
||||
--- binutils-2.15.94.0.1/ltconfig~binutils-2.15.91.0.1-uclibc-100-conf
|
||||
+++ binutils-2.15.94.0.1/ltconfig
|
||||
@@ -603,6 +603,7 @@
|
||||
# Transform linux* to *-*-linux-gnu*, to support old configure scripts.
|
||||
case $host_os in
|
||||
linux-gnu*) ;;
|
||||
+linux-uclibc*) ;;
|
||||
linux*) host=`echo $host | sed 's/^\(.*-.*-linux\)\(.*\)$/\1-gnu\2/'`
|
||||
esac
|
||||
|
||||
@@ -1270,6 +1271,24 @@
|
||||
dynamic_linker='GNU/Linux ld.so'
|
||||
;;
|
||||
|
||||
+linux-uclibc*)
|
||||
+ version_type=linux
|
||||
+ need_lib_prefix=no
|
||||
+ need_version=no
|
||||
+ library_names_spec='${libname}${release}.so$versuffix ${libname}${release}.so$major $libname.so'
|
||||
+ soname_spec='${libname}${release}.so$major'
|
||||
+ finish_cmds='PATH="\$PATH:/sbin" ldconfig -n $libdir'
|
||||
+ shlibpath_var=LD_LIBRARY_PATH
|
||||
+ shlibpath_overrides_runpath=no
|
||||
+ # This implies no fast_install, which is unacceptable.
|
||||
+ # Some rework will be needed to allow for fast_install
|
||||
+ # before this can be enabled.
|
||||
+ # Note: copied from linux-gnu, and may not be appropriate.
|
||||
+ hardcode_into_libs=yes
|
||||
+ # Assume using the uClibc dynamic linker.
|
||||
+ dynamic_linker="uClibc ld.so"
|
||||
+ ;;
|
||||
+
|
||||
netbsd*)
|
||||
need_lib_prefix=no
|
||||
need_version=no
|
||||
-35
@@ -1,35 +0,0 @@
|
||||
---
|
||||
configure | 2 +-
|
||||
configure.in | 2 +-
|
||||
2 files changed, 2 insertions(+), 2 deletions(-)
|
||||
|
||||
--- binutils-2.17pre.orig/configure
|
||||
+++ binutils-2.17pre/configure
|
||||
@@ -3541,11 +3541,11 @@ case " $build_configdirs " in
|
||||
*)
|
||||
|
||||
# For an installed makeinfo, we require it to be from texinfo 4.2 or
|
||||
# higher, else we use the "missing" dummy.
|
||||
if ${MAKEINFO} --version \
|
||||
- | egrep 'texinfo[^0-9]*([1-3][0-9]|4\.[2-9]|[5-9])' >/dev/null 2>&1; then
|
||||
+ | egrep 'texinfo[^0-9]*(4\.([6-9]|[1-9][0-9])|[5-9]|[1-9][0-9])' >/dev/null 2>&1; then
|
||||
:
|
||||
else
|
||||
MAKEINFO="$MISSING makeinfo"
|
||||
fi
|
||||
;;
|
||||
--- binutils-2.17pre.orig/configure.in
|
||||
+++ binutils-2.17pre/configure.in
|
||||
@@ -2126,11 +2126,11 @@ case " $build_configdirs " in
|
||||
*)
|
||||
changequote(,)
|
||||
# For an installed makeinfo, we require it to be from texinfo 4.2 or
|
||||
# higher, else we use the "missing" dummy.
|
||||
if ${MAKEINFO} --version \
|
||||
- | egrep 'texinfo[^0-9]*([1-3][0-9]|4\.[2-9]|[5-9])' >/dev/null 2>&1; then
|
||||
+ | egrep 'texinfo[^0-9]*(4\.([6-9]|[1-9][0-9])|[5-9]|[1-9][0-9])' >/dev/null 2>&1; then
|
||||
:
|
||||
else
|
||||
MAKEINFO="$MISSING makeinfo"
|
||||
fi
|
||||
;;
|
||||
Vendored
-31
@@ -1,31 +0,0 @@
|
||||
# strip (and objcopy) fail to set the error code if there is no
|
||||
# output file name and the rename of the stripped (or copied) file
|
||||
# fails, yet the command fails to do anything. This fixes both
|
||||
# objcopy and strip.
|
||||
#
|
||||
# modification by bero: Ported to 2.16.91.0.6
|
||||
#
|
||||
#Signed-off-by: John Bowler <jbowler@acm.org>
|
||||
#Signed-off-by: Bernhard Rosenkraenzer <bero@arklinux.org>
|
||||
--- binutils-2.16.91.0.6/binutils/objcopy.c.ark 2006-03-11 15:59:07.000000000 +0100
|
||||
+++ binutils-2.16.91.0.6/binutils/objcopy.c 2006-03-11 15:59:45.000000000 +0100
|
||||
@@ -2593,7 +2593,8 @@
|
||||
if (preserve_dates)
|
||||
set_times (tmpname, &statbuf);
|
||||
if (output_file == NULL)
|
||||
- smart_rename (tmpname, argv[i], preserve_dates);
|
||||
+ if(smart_rename (tmpname, argv[i], preserve_dates))
|
||||
+ hold_status = 1;
|
||||
status = hold_status;
|
||||
}
|
||||
else
|
||||
@@ -3184,7 +3185,8 @@
|
||||
{
|
||||
if (preserve_dates)
|
||||
set_times (tmpname, &statbuf);
|
||||
- smart_rename (tmpname, input_filename, preserve_dates);
|
||||
+ if (smart_rename (tmpname, input_filename, preserve_dates))
|
||||
+ status = 1;
|
||||
}
|
||||
else
|
||||
unlink (tmpname);
|
||||
-35
@@ -1,35 +0,0 @@
|
||||
---
|
||||
configure | 2 +-
|
||||
configure.in | 2 +-
|
||||
2 files changed, 2 insertions(+), 2 deletions(-)
|
||||
|
||||
--- binutils-2.16.91.0.7.orig/configure
|
||||
+++ binutils-2.16.91.0.7/configure
|
||||
@@ -3629,11 +3629,11 @@ case " $build_configdirs " in
|
||||
*)
|
||||
|
||||
# For an installed makeinfo, we require it to be from texinfo 4.2 or
|
||||
# higher, else we use the "missing" dummy.
|
||||
if ${MAKEINFO} --version \
|
||||
- | egrep 'texinfo[^0-9]*([1-3][0-9]|4\.[2-9]|[5-9])' >/dev/null 2>&1; then
|
||||
+ | egrep 'texinfo[^0-9]*(4\.([6-9]|[1-9][0-9])|[5-9]|[1-9][0-9])' >/dev/null 2>&1; then
|
||||
:
|
||||
else
|
||||
MAKEINFO="$MISSING makeinfo"
|
||||
fi
|
||||
;;
|
||||
--- binutils-2.16.91.0.7.orig/configure.in
|
||||
+++ binutils-2.16.91.0.7/configure.in
|
||||
@@ -2204,11 +2204,11 @@ case " $build_configdirs " in
|
||||
*)
|
||||
changequote(,)
|
||||
# For an installed makeinfo, we require it to be from texinfo 4.2 or
|
||||
# higher, else we use the "missing" dummy.
|
||||
if ${MAKEINFO} --version \
|
||||
- | egrep 'texinfo[^0-9]*([1-3][0-9]|4\.[2-9]|[5-9])' >/dev/null 2>&1; then
|
||||
+ | egrep 'texinfo[^0-9]*(4\.([6-9]|[1-9][0-9])|[5-9]|[1-9][0-9])' >/dev/null 2>&1; then
|
||||
:
|
||||
else
|
||||
MAKEINFO="$MISSING makeinfo"
|
||||
fi
|
||||
;;
|
||||
-139
@@ -1,139 +0,0 @@
|
||||
--- binutils-2.16.91.0.7/bfd/configure
|
||||
+++ binutils-2.16.91.0.7/bfd/configure
|
||||
@@ -3576,7 +3576,7 @@
|
||||
;;
|
||||
|
||||
# This must be Linux ELF.
|
||||
-linux-gnu*)
|
||||
+linux-gnu*|linux-uclibc*)
|
||||
lt_cv_deplibs_check_method=pass_all
|
||||
;;
|
||||
|
||||
--- binutils-2.16.91.0.7/binutils/configure
|
||||
+++ binutils-2.16.91.0.7/binutils/configure
|
||||
@@ -3411,7 +3411,7 @@
|
||||
;;
|
||||
|
||||
# This must be Linux ELF.
|
||||
-linux-gnu*)
|
||||
+linux-gnu*|linux-uclibc*)
|
||||
lt_cv_deplibs_check_method=pass_all
|
||||
;;
|
||||
|
||||
--- binutils-2.16.91.0.7/configure
|
||||
+++ binutils-2.16.91.0.7/configure
|
||||
@@ -1270,7 +1270,7 @@
|
||||
am33_2.0-*-linux*)
|
||||
noconfigdirs="$noconfigdirs ${libgcj} target-newlib target-libgloss"
|
||||
;;
|
||||
- sh-*-linux*)
|
||||
+ sh*-*-linux*)
|
||||
noconfigdirs="$noconfigdirs ${libgcj} target-newlib target-libgloss"
|
||||
;;
|
||||
sh*-*-pe|mips*-*-pe|*arm-wince-pe)
|
||||
@@ -1578,7 +1578,7 @@
|
||||
romp-*-*)
|
||||
noconfigdirs="$noconfigdirs bfd binutils ld gas opcodes target-libgloss ${libgcj}"
|
||||
;;
|
||||
- sh-*-* | sh64-*-*)
|
||||
+ sh*-*-* | sh64-*-*)
|
||||
case "${host}" in
|
||||
i[3456789]86-*-vsta) ;; # don't add gprof back in
|
||||
i[3456789]86-*-go32*) ;; # don't add gprof back in
|
||||
--- binutils-2.16.91.0.7/configure.in
|
||||
+++ binutils-2.16.91.0.7/configure.in
|
||||
@@ -468,7 +468,7 @@
|
||||
am33_2.0-*-linux*)
|
||||
noconfigdirs="$noconfigdirs ${libgcj} target-newlib target-libgloss"
|
||||
;;
|
||||
- sh-*-linux*)
|
||||
+ sh*-*-linux*)
|
||||
noconfigdirs="$noconfigdirs ${libgcj} target-newlib target-libgloss"
|
||||
;;
|
||||
sh*-*-pe|mips*-*-pe|*arm-wince-pe)
|
||||
@@ -776,7 +776,7 @@
|
||||
romp-*-*)
|
||||
noconfigdirs="$noconfigdirs bfd binutils ld gas opcodes target-libgloss ${libgcj}"
|
||||
;;
|
||||
- sh-*-* | sh64-*-*)
|
||||
+ sh*-*-* | sh64-*-*)
|
||||
case "${host}" in
|
||||
i[[3456789]]86-*-vsta) ;; # don't add gprof back in
|
||||
i[[3456789]]86-*-go32*) ;; # don't add gprof back in
|
||||
--- binutils-2.16.91.0.7/gas/configure
|
||||
+++ binutils-2.16.91.0.7/gas/configure
|
||||
@@ -3411,7 +3411,7 @@
|
||||
;;
|
||||
|
||||
# This must be Linux ELF.
|
||||
-linux-gnu*)
|
||||
+linux-gnu*|linux-uclibc*)
|
||||
lt_cv_deplibs_check_method=pass_all
|
||||
;;
|
||||
|
||||
--- binutils-2.16.91.0.7/gprof/configure
|
||||
+++ binutils-2.16.91.0.7/gprof/configure
|
||||
@@ -3419,6 +3419,11 @@
|
||||
lt_cv_file_magic_test_file=`echo /lib/libc.so* /lib/libc-*.so`
|
||||
;;
|
||||
|
||||
+linux-uclibc*)
|
||||
+ lt_cv_deplibs_check_method=pass_all
|
||||
+ lt_cv_file_magic_test_file=`echo /lib/libuClibc-*.so`
|
||||
+ ;;
|
||||
+
|
||||
netbsd* | knetbsd*-gnu)
|
||||
if echo __ELF__ | $CC -E - | grep __ELF__ > /dev/null; then
|
||||
lt_cv_deplibs_check_method='match_pattern /lib[^/\.]+\.so\.[0-9]+\.[0-9]+$'
|
||||
--- binutils-2.16.91.0.7/ld/configure
|
||||
+++ binutils-2.16.91.0.7/ld/configure
|
||||
@@ -3413,7 +3413,7 @@
|
||||
;;
|
||||
|
||||
# This must be Linux ELF.
|
||||
-linux-gnu*)
|
||||
+linux-gnu*|linux-uclibc*)
|
||||
lt_cv_deplibs_check_method=pass_all
|
||||
;;
|
||||
|
||||
--- binutils-2.16.91.0.7/libtool.m4
|
||||
+++ binutils-2.16.91.0.7/libtool.m4
|
||||
@@ -739,7 +739,7 @@
|
||||
;;
|
||||
|
||||
# This must be Linux ELF.
|
||||
-linux-gnu*)
|
||||
+linux-gnu*|linux-uclibc*)
|
||||
lt_cv_deplibs_check_method=pass_all
|
||||
;;
|
||||
|
||||
--- binutils-2.16.91.0.7/ltconfig
|
||||
+++ binutils-2.16.91.0.7/ltconfig
|
||||
@@ -602,6 +602,7 @@
|
||||
|
||||
# Transform linux* to *-*-linux-gnu*, to support old configure scripts.
|
||||
case $host_os in
|
||||
+linux-uclibc*) ;;
|
||||
linux-gnu*) ;;
|
||||
linux*) host=`echo $host | sed 's/^\(.*-.*-linux\)\(.*\)$/\1-gnu\2/'`
|
||||
esac
|
||||
@@ -1247,7 +1248,7 @@
|
||||
;;
|
||||
|
||||
# This must be Linux ELF.
|
||||
-linux-gnu*)
|
||||
+linux-gnu*|linux-uclibc*)
|
||||
version_type=linux
|
||||
need_lib_prefix=no
|
||||
need_version=no
|
||||
--- binutils-2.16.91.0.7/opcodes/configure
|
||||
+++ binutils-2.16.91.0.7/opcodes/configure
|
||||
@@ -3579,7 +3579,7 @@
|
||||
;;
|
||||
|
||||
# This must be Linux ELF.
|
||||
-linux-gnu*)
|
||||
+linux-gnu*|linux-uclibc*)
|
||||
lt_cv_deplibs_check_method=pass_all
|
||||
;;
|
||||
|
||||
Vendored
-50
@@ -1,50 +0,0 @@
|
||||
#!/bin/sh -e
|
||||
## 001_ld_makefile_patch.dpatch
|
||||
##
|
||||
## All lines beginning with `## DP:' are a description of the patch.
|
||||
## DP: Description: correct where ld scripts are installed
|
||||
## DP: Author: Chris Chimelis <chris@debian.org>
|
||||
## DP: Upstream status: N/A
|
||||
## DP: Date: ??
|
||||
|
||||
if [ $# -ne 1 ]; then
|
||||
echo >&2 "`basename $0`: script expects -patch|-unpatch as argument"
|
||||
exit 1
|
||||
fi
|
||||
|
||||
[ -f debian/patches/00patch-opts ] && . debian/patches/00patch-opts
|
||||
patch_opts="${patch_opts:--f --no-backup-if-mismatch}"
|
||||
|
||||
case "$1" in
|
||||
-patch) patch $patch_opts -p1 < $0;;
|
||||
-unpatch) patch $patch_opts -p1 -R < $0;;
|
||||
*)
|
||||
echo >&2 "`basename $0`: script expects -patch|-unpatch as argument"
|
||||
exit 1;;
|
||||
esac
|
||||
|
||||
exit 0
|
||||
|
||||
@DPATCH@
|
||||
--- binutils-2.16.91.0.1/ld/Makefile.am
|
||||
+++ binutils-2.16.91.0.1/ld/Makefile.am
|
||||
@@ -20,7 +20,7 @@
|
||||
# We put the scripts in the directory $(scriptdir)/ldscripts.
|
||||
# We can't put the scripts in $(datadir) because the SEARCH_DIR
|
||||
# directives need to be different for native and cross linkers.
|
||||
-scriptdir = $(tooldir)/lib
|
||||
+scriptdir = $(libdir)
|
||||
|
||||
EMUL = @EMUL@
|
||||
EMULATION_OFILES = @EMULATION_OFILES@
|
||||
--- binutils-2.16.91.0.1/ld/Makefile.in
|
||||
+++ binutils-2.16.91.0.1/ld/Makefile.in
|
||||
@@ -268,7 +268,7 @@
|
||||
# We put the scripts in the directory $(scriptdir)/ldscripts.
|
||||
# We can't put the scripts in $(datadir) because the SEARCH_DIR
|
||||
# directives need to be different for native and cross linkers.
|
||||
-scriptdir = $(tooldir)/lib
|
||||
+scriptdir = $(libdir)
|
||||
BASEDIR = $(srcdir)/..
|
||||
BFDDIR = $(BASEDIR)/bfd
|
||||
INCDIR = $(BASEDIR)/include
|
||||
Vendored
-43
@@ -1,43 +0,0 @@
|
||||
#!/bin/sh -e
|
||||
## 006_better_file_error.dpatch by David Kimdon <dwhedon@gordian.com>
|
||||
##
|
||||
## All lines beginning with `## DP:' are a description of the patch.
|
||||
## DP: Specify which filename is causing an error if the filename is a
|
||||
## DP: directory. (#45832)
|
||||
|
||||
if [ $# -ne 1 ]; then
|
||||
echo >&2 "`basename $0`: script expects -patch|-unpatch as argument"
|
||||
exit 1
|
||||
fi
|
||||
|
||||
[ -f debian/patches/00patch-opts ] && . debian/patches/00patch-opts
|
||||
patch_opts="${patch_opts:--f --no-backup-if-mismatch}"
|
||||
|
||||
case "$1" in
|
||||
-patch) patch $patch_opts -p1 < $0;;
|
||||
-unpatch) patch $patch_opts -p1 -R < $0;;
|
||||
*)
|
||||
echo >&2 "`basename $0`: script expects -patch|-unpatch as argument"
|
||||
exit 1;;
|
||||
esac
|
||||
|
||||
exit 0
|
||||
|
||||
@DPATCH@
|
||||
diff -urNad /home/james/debian/packages/binutils/binutils-2.14.90.0.6/bfd/opncls.c binutils-2.14.90.0.6/bfd/opncls.c
|
||||
--- /home/james/debian/packages/binutils/binutils-2.14.90.0.6/bfd/opncls.c 2003-07-23 16:08:09.000000000 +0100
|
||||
+++ binutils-2.14.90.0.6/bfd/opncls.c 2003-09-10 22:35:00.000000000 +0100
|
||||
@@ -150,6 +150,13 @@
|
||||
{
|
||||
bfd *nbfd;
|
||||
const bfd_target *target_vec;
|
||||
+ struct stat s;
|
||||
+
|
||||
+ if (stat (filename, &s) == 0)
|
||||
+ if (S_ISDIR(s.st_mode)) {
|
||||
+ bfd_set_error (bfd_error_file_not_recognized);
|
||||
+ return NULL;
|
||||
+ }
|
||||
|
||||
nbfd = _bfd_new_bfd ();
|
||||
if (nbfd == NULL)
|
||||
Vendored
-47
@@ -1,47 +0,0 @@
|
||||
#!/bin/sh -e
|
||||
## 012_check_ldrunpath_length.dpatch by Chris Chimelis <chris@debian.org>
|
||||
##
|
||||
## All lines beginning with `## DP:' are a description of the patch.
|
||||
## DP: Only generate an RPATH entry if LD_RUN_PATH is not empty, for
|
||||
## DP: cases where -rpath isn't specified. (#151024)
|
||||
|
||||
if [ $# -ne 1 ]; then
|
||||
echo >&2 "`basename $0`: script expects -patch|-unpatch as argument"
|
||||
exit 1
|
||||
fi
|
||||
|
||||
[ -f debian/patches/00patch-opts ] && . debian/patches/00patch-opts
|
||||
patch_opts="${patch_opts:--f --no-backup-if-mismatch}"
|
||||
|
||||
case "$1" in
|
||||
-patch) patch $patch_opts -p1 < $0;;
|
||||
-unpatch) patch $patch_opts -p1 -R < $0;;
|
||||
*)
|
||||
echo >&2 "`basename $0`: script expects -patch|-unpatch as argument"
|
||||
exit 1;;
|
||||
esac
|
||||
|
||||
exit 0
|
||||
|
||||
@DPATCH@
|
||||
diff -urNad /home/james/debian/packages/binutils/new/binutils-2.15/ld/emultempl/elf32.em binutils-2.15/ld/emultempl/elf32.em
|
||||
--- /home/james/debian/packages/binutils/new/binutils-2.15/ld/emultempl/elf32.em 2004-05-21 23:12:58.000000000 +0100
|
||||
+++ binutils-2.15/ld/emultempl/elf32.em 2004-05-21 23:12:59.000000000 +0100
|
||||
@@ -692,6 +692,8 @@
|
||||
&& command_line.rpath == NULL)
|
||||
{
|
||||
lib_path = (const char *) getenv ("LD_RUN_PATH");
|
||||
+ if ((lib_path) && (strlen (lib_path) == 0))
|
||||
+ lib_path = NULL;
|
||||
if (gld${EMULATION_NAME}_search_needed (lib_path, &n,
|
||||
force))
|
||||
break;
|
||||
@@ -871,6 +873,8 @@
|
||||
rpath = command_line.rpath;
|
||||
if (rpath == NULL)
|
||||
rpath = (const char *) getenv ("LD_RUN_PATH");
|
||||
+ if ((rpath) && (strlen (rpath) == 0))
|
||||
+ rpath = NULL;
|
||||
if (! (bfd_elf_size_dynamic_sections
|
||||
(output_bfd, command_line.soname, rpath,
|
||||
command_line.filter_shlib,
|
||||
Vendored
-26
@@ -1,26 +0,0 @@
|
||||
--- binutils/bfd/elf32-mips.c~
|
||||
+++ binutils/bfd/elf32-mips.c
|
||||
@@ -1613,7 +1613,9 @@
|
||||
|
||||
/* The SVR4 MIPS ABI says that this should be 0x10000, and Linux uses
|
||||
page sizes of up to that limit, so we need to respect it. */
|
||||
-#define ELF_MAXPAGESIZE 0x10000
|
||||
+/*#define ELF_MAXPAGESIZE 0x10000*/
|
||||
+/* Use 4K to shrink the elf header. NOT for general use! */
|
||||
+#define ELF_MAXPAGESIZE 0x1000
|
||||
#define elf32_bed elf32_tradbed
|
||||
|
||||
/* Include the target file again for this target. */
|
||||
--- binutils/bfd/elfn32-mips.c~
|
||||
+++ binutils/bfd/elfn32-mips.c
|
||||
@@ -2399,7 +2399,9 @@
|
||||
|
||||
/* The SVR4 MIPS ABI says that this should be 0x10000, and Linux uses
|
||||
page sizes of up to that limit, so we need to respect it. */
|
||||
-#define ELF_MAXPAGESIZE 0x10000
|
||||
+/*#define ELF_MAXPAGESIZE 0x10000*/
|
||||
+/* Use 4K to shrink the elf header. NOT for general use! */
|
||||
+#define ELF_MAXPAGESIZE 0x1000
|
||||
#define elf32_bed elf32_tradbed
|
||||
|
||||
/* Include the target file again for this target. */
|
||||
Vendored
-93
@@ -1,93 +0,0 @@
|
||||
Retrieved from http://sources.redhat.com/ml/binutils/2004-04/msg00646.html
|
||||
Fixes
|
||||
localealias.s:544: Error: junk at end of line, first unrecognized character is `,'
|
||||
when building glibc-2.3.2 with gcc-3.4.0 and binutils-2.15.90.0.3
|
||||
|
||||
Paths adjusted to match crosstool's patcher.
|
||||
|
||||
Message-Id: m3n052qw2g.fsf@whitebox.m5r.de
|
||||
From: Andreas Schwab <schwab at suse dot de>
|
||||
To: Nathan Sidwell <nathan at codesourcery dot com>
|
||||
Cc: Ian Lance Taylor <ian at wasabisystems dot com>, binutils at sources dot redhat dot com
|
||||
Date: Fri, 23 Apr 2004 22:27:19 +0200
|
||||
Subject: Re: demand_empty_rest_of_line and ignore_rest_of_line
|
||||
|
||||
Nathan Sidwell <nathan@codesourcery.com> writes:
|
||||
|
||||
> Index: read.c
|
||||
> ===================================================================
|
||||
> RCS file: /cvs/src/src/gas/read.c,v
|
||||
> retrieving revision 1.76
|
||||
> diff -c -3 -p -r1.76 read.c
|
||||
> *** read.c 12 Mar 2004 17:48:12 -0000 1.76
|
||||
> --- read.c 18 Mar 2004 09:56:05 -0000
|
||||
> *************** read_a_source_file (char *name)
|
||||
> *** 1053,1059 ****
|
||||
> #endif
|
||||
> input_line_pointer--;
|
||||
> /* Report unknown char as ignored. */
|
||||
> ! ignore_rest_of_line ();
|
||||
> }
|
||||
>
|
||||
> #ifdef md_after_pass_hook
|
||||
> --- 1053,1059 ----
|
||||
> #endif
|
||||
> input_line_pointer--;
|
||||
> /* Report unknown char as ignored. */
|
||||
> ! demand_empty_rest_of_line ();
|
||||
> }
|
||||
>
|
||||
> #ifdef md_after_pass_hook
|
||||
|
||||
This means that the unknown character is no longer ignored, despite the
|
||||
comment. As a side effect a line starting with a line comment character
|
||||
not followed by APP in NO_APP mode now triggers an error instead of just a
|
||||
warning, breaking builds of glibc on m68k-linux. Earlier in
|
||||
read_a_source_file where #APP is handled there is another comment that
|
||||
claims that unknown comments are ignored, when in fact they aren't (only
|
||||
the initial line comment character is skipped).
|
||||
|
||||
Note that the presence of #APP will mess up the line counters, but
|
||||
that appears to be difficult to fix.
|
||||
|
||||
Andreas.
|
||||
|
||||
2004-04-23 Andreas Schwab <schwab@suse.de>
|
||||
|
||||
* read.c (read_a_source_file): Ignore unknown text after line
|
||||
comment character. Fix misleading comment.
|
||||
|
||||
--- binutils/gas/read.c.~1.78.~ 2004-04-23 08:58:23.000000000 +0200
|
||||
+++ binutils/gas/read.c 2004-04-23 21:49:01.000000000 +0200
|
||||
@@ -950,10 +950,14 @@ read_a_source_file (char *name)
|
||||
unsigned int new_length;
|
||||
char *tmp_buf = 0;
|
||||
|
||||
- bump_line_counters ();
|
||||
s = input_line_pointer;
|
||||
if (strncmp (s, "APP\n", 4))
|
||||
- continue; /* We ignore it */
|
||||
+ {
|
||||
+ /* We ignore it */
|
||||
+ ignore_rest_of_line ();
|
||||
+ continue;
|
||||
+ }
|
||||
+ bump_line_counters ();
|
||||
s += 4;
|
||||
|
||||
sb_new (&sbuf);
|
||||
@@ -1052,7 +1056,7 @@ read_a_source_file (char *name)
|
||||
continue;
|
||||
#endif
|
||||
input_line_pointer--;
|
||||
- /* Report unknown char as ignored. */
|
||||
+ /* Report unknown char as error. */
|
||||
demand_empty_rest_of_line ();
|
||||
}
|
||||
|
||||
|
||||
--
|
||||
Andreas Schwab, SuSE Labs, schwab@suse.de
|
||||
SuSE Linux AG, MaxfeldstraÃe 5, 90409 NÃrnberg, Germany
|
||||
Key fingerprint = 58CA 54C7 6D53 942B 1756 01D3 44D5 214B 8276 4ED5
|
||||
"And now for something completely different."
|
||||
@@ -1,28 +0,0 @@
|
||||
--- binutils-2.16/binutils/Makefile.am.old 2005-06-05 16:59:47.000000000 +0100
|
||||
+++ binutils-2.16/binutils/Makefile.am 2005-06-05 17:00:39.000000000 +0100
|
||||
@@ -219,20 +219,20 @@
|
||||
./sysinfo$(EXEEXT_FOR_BUILD) -d <$(srcdir)/sysroff.info >sysroff.h
|
||||
|
||||
sysinfo$(EXEEXT_FOR_BUILD): sysinfo.o syslex.o
|
||||
- $(CC_FOR_BUILD) $(CFLAGS) $(LDFLAGS) -o $@ sysinfo.o syslex.o
|
||||
+ $(CC_FOR_BUILD) $(CFLAGS_FOR_BUILD) $(LDFLAGS_FOR_BUILD) -o $@ sysinfo.o syslex.o
|
||||
|
||||
syslex.o:
|
||||
if [ -r syslex.c ]; then \
|
||||
- $(CC_FOR_BUILD) -c -I. $(AM_CFLAGS) $(CFLAGS) syslex.c ; \
|
||||
+ $(CC_FOR_BUILD) -c -I. $(AM_CFLAGS) $(CFLAGS_FOR_BUILD) syslex.c ; \
|
||||
else \
|
||||
- $(CC_FOR_BUILD) -c -I. -I$(srcdir) $(AM_CFLAGS) $(CFLAGS) $(srcdir)/syslex.c ;\
|
||||
+ $(CC_FOR_BUILD) -c -I. -I$(srcdir) $(AM_CFLAGS) $(CFLAGS_FOR_BUILD) $(srcdir)/syslex.c ;\
|
||||
fi
|
||||
|
||||
sysinfo.o:
|
||||
if [ -r sysinfo.c ]; then \
|
||||
- $(CC_FOR_BUILD) -c -I. $(AM_CFLAGS) $(CFLAGS) sysinfo.c ; \
|
||||
+ $(CC_FOR_BUILD) -c -I. $(AM_CFLAGS) $(CFLAGS_FOR_BUILD) sysinfo.c ; \
|
||||
else \
|
||||
- $(CC_FOR_BUILD) -c -I. $(AM_CFLAGS) $(CFLAGS) $(srcdir)/sysinfo.c ; \
|
||||
+ $(CC_FOR_BUILD) -c -I. $(AM_CFLAGS) $(CFLAGS_FOR_BUILD) $(srcdir)/sysinfo.c ; \
|
||||
fi
|
||||
|
||||
# We need these for parallel make.
|
||||
@@ -1,700 +0,0 @@
|
||||
# This patch adds 'linux-uclibc' to all cases which otherwise only
|
||||
# fire for 'linux' - most of the time the 'linux-gnu*' cases. This
|
||||
# ensures that by default *-*-linux-uclibc is handled in the same way
|
||||
# as *-*-linux-gnu
|
||||
#
|
||||
--- binutils-2.16/bfd/config.bfd.orig 2005-09-06 19:58:39.153670708 -0700
|
||||
+++ binutils-2.16/bfd/config.bfd 2005-09-06 20:03:14.959026045 -0700
|
||||
@@ -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,7 +235,7 @@
|
||||
targ_defvec=bfd_elf32_littlearm_vec
|
||||
targ_selvecs=bfd_elf32_bigarm_vec
|
||||
;;
|
||||
- arm-*-elf | arm-*-freebsd* | arm*-*-linux-gnu* | arm*-*-conix* | \
|
||||
+ 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
|
||||
@@ -385,7 +385,7 @@
|
||||
;;
|
||||
|
||||
#ifdef BFD64
|
||||
- hppa*64*-*-linux-gnu*)
|
||||
+ hppa*64*-*-linux-gnu* | hppa*64*-*-linux-uclibc*)
|
||||
targ_defvec=bfd_elf64_hppa_linux_vec
|
||||
targ_selvecs=bfd_elf64_hppa_vec
|
||||
;;
|
||||
@@ -396,7 +396,7 @@
|
||||
;;
|
||||
#endif
|
||||
|
||||
- hppa*-*-linux-gnu*)
|
||||
+ hppa*-*-linux-gnu* | hppa*-*-linux-uclibc*)
|
||||
targ_defvec=bfd_elf32_hppa_linux_vec
|
||||
targ_selvecs=bfd_elf32_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
|
||||
@@ -543,7 +543,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"
|
||||
;;
|
||||
@@ -719,7 +719,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
|
||||
;;
|
||||
@@ -1005,7 +1005,7 @@
|
||||
;;
|
||||
#endif
|
||||
powerpc-*-*bsd* | powerpc-*-elf* | powerpc-*-sysv4* | powerpc-*-eabi* | \
|
||||
- powerpc-*-solaris2* | powerpc-*-linux-gnu* | powerpc-*-rtems* | \
|
||||
+ 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"
|
||||
@@ -1042,7 +1042,7 @@
|
||||
targ_selvecs="rs6000coff_vec bfd_elf32_powerpc_vec ppcboot_vec"
|
||||
;;
|
||||
powerpcle-*-elf* | powerpcle-*-sysv4* | powerpcle-*-eabi* | \
|
||||
- powerpcle-*-solaris2* | powerpcle-*-linux-gnu* | powerpcle-*-vxworks* |\
|
||||
+ 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"
|
||||
@@ -1213,7 +1213,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"
|
||||
;;
|
||||
@@ -1260,7 +1260,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"
|
||||
;;
|
||||
@@ -1329,7 +1329,7 @@
|
||||
targ_underscore=yes
|
||||
;;
|
||||
|
||||
- vax-*-linux-gnu*)
|
||||
+ vax-*-linux-gnu* | vax-*-linux-uclibc*)
|
||||
targ_defvec=bfd_elf32_vax_vec
|
||||
;;
|
||||
|
||||
--- binutils-2.16/bfd/configure.in.orig 2005-09-06 20:25:48.848220921 -0700
|
||||
+++ binutils-2.16/bfd/configure.in 2005-09-06 20:26:58.628611924 -0700
|
||||
@@ -163,7 +163,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"'
|
||||
;;
|
||||
@@ -248,7 +248,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"'
|
||||
@@ -289,7 +289,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"'
|
||||
;;
|
||||
@@ -375,7 +375,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"'
|
||||
;;
|
||||
--- binutils-2.16/bfd/configure.orig 2005-09-06 20:03:14.991028059 -0700
|
||||
+++ binutils-2.16/bfd/configure 2005-09-06 20:04:48.512913020 -0700
|
||||
@@ -3572,7 +3572,7 @@
|
||||
;;
|
||||
|
||||
# This must be Linux ELF.
|
||||
-linux-gnu*)
|
||||
+linux-gnu* | linux-uclibc*)
|
||||
case $host_cpu in
|
||||
alpha* | mips* | hppa* | i*86 | powerpc* | sparc* | ia64* )
|
||||
lt_cv_deplibs_check_method=pass_all ;;
|
||||
@@ -9918,7 +9918,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"'
|
||||
;;
|
||||
@@ -9982,7 +9982,7 @@
|
||||
COREFILE=trad-core.lo
|
||||
TRAD_HEADER='"hosts/i386mach3.h"'
|
||||
;;
|
||||
- i[3-7]86-*-linux-gnu*)
|
||||
+ i[3-7]86-*-linux-gnu* | i[3-7]86-*-linux-uclibc*)
|
||||
COREFILE=trad-core.lo
|
||||
TRAD_HEADER='"hosts/i386linux.h"'
|
||||
;;
|
||||
@@ -10020,7 +10020,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"'
|
||||
;;
|
||||
@@ -10154,7 +10154,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"'
|
||||
;;
|
||||
--- binutils-2.16/binutils/configure.orig 2005-09-06 20:26:58.676614945 -0700
|
||||
+++ binutils-2.16/binutils/configure 2005-09-06 20:27:21.230034142 -0700
|
||||
@@ -1564,7 +1564,7 @@
|
||||
;;
|
||||
|
||||
# This must be Linux ELF.
|
||||
-linux-gnu*)
|
||||
+linux-gnu* | linux-uclibc*)
|
||||
case $host_cpu in
|
||||
alpha* | mips* | hppa* | i*86 | powerpc* | sparc* | ia64* )
|
||||
lt_cv_deplibs_check_method=pass_all ;;
|
||||
--- binutils-2.16/configure.in.orig 2005-09-06 20:31:11.872547560 -0700
|
||||
+++ binutils-2.16/configure.in 2005-09-06 20:31:47.322778302 -0700
|
||||
@@ -346,7 +346,7 @@
|
||||
;;
|
||||
"")
|
||||
case "${target}" in
|
||||
- *-*-linux*-gnu | *-*-gnu* | *-*-k*bsd*-gnu)
|
||||
+ *-*-linux*-gnu | *-*-linux*-uclibc | *-*-gnu* | *-*-k*bsd*-gnu)
|
||||
# Enable libmudflap by default in GNU and friends.
|
||||
;;
|
||||
*-*-freebsd*)
|
||||
--- binutils-2.16/configure.orig 2005-09-06 20:30:00.120032459 -0700
|
||||
+++ binutils-2.16/configure 2005-09-06 20:31:11.832545043 -0700
|
||||
@@ -1142,7 +1142,7 @@
|
||||
;;
|
||||
"")
|
||||
case "${target}" in
|
||||
- *-*-linux*-gnu | *-*-gnu* | *-*-k*bsd*-gnu)
|
||||
+ *-*-linux*-gnu | *-*-linux*-uclibc | *-*-gnu* | *-*-k*bsd*-gnu)
|
||||
# Enable libmudflap by default in GNU and friends.
|
||||
;;
|
||||
*-*-freebsd*)
|
||||
--- binutils-2.16/gas/configure.in.orig 2005-09-06 20:32:36.993903909 -0700
|
||||
+++ binutils-2.16/gas/configure.in 2005-09-06 20:32:55.667078938 -0700
|
||||
@@ -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) ;;
|
||||
--- binutils-2.16/gas/configure.orig 2005-09-06 20:31:55.247276960 -0700
|
||||
+++ binutils-2.16/gas/configure 2005-09-06 20:32:36.961901896 -0700
|
||||
@@ -3409,7 +3409,7 @@
|
||||
;;
|
||||
|
||||
# This must be Linux ELF.
|
||||
-linux-gnu*)
|
||||
+linux-gnu* | linux-uclibc*)
|
||||
case $host_cpu in
|
||||
alpha* | mips* | hppa* | i*86 | powerpc* | sparc* | ia64* )
|
||||
lt_cv_deplibs_check_method=pass_all ;;
|
||||
@@ -4462,7 +4462,7 @@
|
||||
_ACEOF
|
||||
|
||||
;;
|
||||
- ppc-*-linux-gnu*)
|
||||
+ ppc-*-linux-gnu* | ppc-*-linux-uclibc*)
|
||||
case "$endian" in
|
||||
big) ;;
|
||||
*) { { echo "$as_me:$LINENO: error: GNU/Linux must be configured big endian" >&5
|
||||
--- binutils-2.16/gas/configure.tgt.orig 2005-09-06 20:32:55.695080700 -0700
|
||||
+++ binutils-2.16/gas/configure.tgt 2005-09-06 20:35:59.482645723 -0700
|
||||
@@ -100,7 +100,7 @@
|
||||
alpha-*-*vms*) fmt=evax ;;
|
||||
alpha-*-osf*) fmt=ecoff ;;
|
||||
alpha-*-linuxecoff*) fmt=ecoff ;;
|
||||
- alpha-*-linux-gnu*) fmt=elf em=linux ;;
|
||||
+ alpha-*-linux-gnu* | alpha-*-linux-uclibc*) fmt=elf em=linux ;;
|
||||
alpha-*-netbsd*) fmt=elf em=nbsd ;;
|
||||
alpha-*-openbsd*) fmt=elf em=obsd ;;
|
||||
|
||||
@@ -116,7 +116,7 @@
|
||||
arm-*-conix*) fmt=elf ;;
|
||||
arm-*-linux*aout*) fmt=aout em=linux ;;
|
||||
arm-*-linux-gnueabi*) fmt=elf em=armlinuxeabi ;;
|
||||
- arm-*-linux-gnu*) fmt=elf em=linux ;;
|
||||
+ arm-*-linux-gnu* | 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 +128,7 @@
|
||||
|
||||
avr-*-*) fmt=elf ;;
|
||||
|
||||
- cris-*-linux-gnu* | crisv32-*-linux-gnu*)
|
||||
+ cris-*-linux-gnu* | crisv32-*-linux-gnu* | cris-*-linux-uclibc* | crisv32-*-linux-uclibc*)
|
||||
fmt=multi bfd_gas=yes em=linux ;;
|
||||
cris-*-* | crisv32-*-*) fmt=multi bfd_gas=yes ;;
|
||||
|
||||
@@ -192,7 +192,7 @@
|
||||
i386-*-linux*aout*) fmt=aout em=linux ;;
|
||||
i386-*-linux*oldld) fmt=aout em=linux ;;
|
||||
i386-*-linux*coff*) fmt=coff em=linux ;;
|
||||
- i386-*-linux-gnu*) fmt=elf em=linux ;;
|
||||
+ i386-*-linux-gnu* | 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 ;;
|
||||
@@ -238,7 +238,7 @@
|
||||
|
||||
ia64-*-elf*) fmt=elf ;;
|
||||
ia64-*-aix*) fmt=elf em=ia64aix ;;
|
||||
- ia64-*-linux-gnu*) fmt=elf em=linux ;;
|
||||
+ ia64-*-linux-gnu* | ia64-*-linux-uclibc*) fmt=elf em=linux ;;
|
||||
ia64-*-hpux*) fmt=elf em=hpux ;;
|
||||
ia64-*-netbsd*) fmt=elf em=nbsd ;;
|
||||
|
||||
@@ -265,7 +265,7 @@
|
||||
m68k-*-rtems*) fmt=elf ;;
|
||||
m68k-*-hpux*) fmt=hp300 em=hp300 ;;
|
||||
m68k-*-linux*aout*) fmt=aout em=linux ;;
|
||||
- m68k-*-linux-gnu*) fmt=elf em=linux ;;
|
||||
+ m68k-*-linux-gnu* | m68k-*-linux-uclibc*) fmt=elf em=linux ;;
|
||||
m68k-*-uclinux*) fmt=elf ;;
|
||||
m68k-*-gnu*) fmt=elf ;;
|
||||
m68k-*-netbsdelf*) fmt=elf em=nbsd ;;
|
||||
@@ -332,7 +332,7 @@
|
||||
ppc-*-beos*) fmt=coff ;;
|
||||
ppc-*-*n*bsd* | ppc-*-elf*) fmt=elf ;;
|
||||
ppc-*-eabi* | ppc-*-sysv4*) fmt=elf ;;
|
||||
- ppc-*-linux-gnu*) fmt=elf em=linux ;;
|
||||
+ ppc-*-linux-gnu* | ppc-*-linux-uclibc*) fmt=elf em=linux ;;
|
||||
ppc-*-solaris*) fmt=elf ;;
|
||||
ppc-*-rtems*) fmt=elf ;;
|
||||
ppc-*-macos*) fmt=coff em=macos ;;
|
||||
@@ -340,7 +340,7 @@
|
||||
ppc-*-kaos*) fmt=elf ;;
|
||||
ppc-*-lynxos*) fmt=elf em=lynx bfd_gas=yes ;;
|
||||
|
||||
- s390-*-linux-gnu*) fmt=elf em=linux ;;
|
||||
+ s390-*-linux-gnu* | s390-*-linux-uclibc*) fmt=elf em=linux ;;
|
||||
s390-*-tpf*) fmt=elf ;;
|
||||
|
||||
sh*-*-linux*) fmt=elf em=linux
|
||||
@@ -369,7 +369,7 @@
|
||||
sparc-*-aout | sparc*-*-vxworks*) fmt=aout em=sparcaout ;;
|
||||
sparc-*-coff) fmt=coff ;;
|
||||
sparc-*-linux*aout*) fmt=aout em=linux ;;
|
||||
- sparc-*-linux-gnu*) fmt=elf em=linux ;;
|
||||
+ sparc-*-linux-gnu* | sparc-*-linux-uclibc*) fmt=elf em=linux ;;
|
||||
sparc-fujitsu-none) fmt=aout ;;
|
||||
sparc-*-elf) fmt=elf ;;
|
||||
sparc-*-sysv4*) fmt=elf ;;
|
||||
@@ -398,7 +398,7 @@
|
||||
vax-*-netbsdelf*) fmt=elf em=nbsd ;;
|
||||
vax-*-netbsd*) fmt=aout em=nbsd ;;
|
||||
vax-*-bsd* | vax-*-ultrix*) fmt=aout ;;
|
||||
- vax-*-linux-gnu*) fmt=elf em=linux bfd_gas=yes ;;
|
||||
+ vax-*-linux-gnu* | vax-*-linux-uclibc*) fmt=elf em=linux bfd_gas=yes ;;
|
||||
|
||||
w65-*-*) fmt=coff ;;
|
||||
|
||||
--- binutils-2.16/gprof/configure.orig 2005-09-06 20:36:04.850983531 -0700
|
||||
+++ binutils-2.16/gprof/configure 2005-09-06 20:36:26.344336022 -0700
|
||||
@@ -3407,7 +3407,7 @@
|
||||
;;
|
||||
|
||||
# This must be Linux ELF.
|
||||
-linux-gnu*)
|
||||
+linux-gnu* | linux-uclibc*)
|
||||
case $host_cpu in
|
||||
alpha* | mips* | hppa* | i*86 | powerpc* | sparc* | ia64* )
|
||||
lt_cv_deplibs_check_method=pass_all ;;
|
||||
--- binutils-2.16/ld/configure.host.orig 2005-09-06 20:37:46.085353808 -0700
|
||||
+++ binutils-2.16/ld/configure.host 2005-09-06 20:40:03.381993341 -0700
|
||||
@@ -83,7 +83,7 @@
|
||||
HOSTING_CRT0=`echo "$HOSTING_CRT0" | sed -e "s,ld\[^ \]\*,ld-linux,g"`
|
||||
;;
|
||||
|
||||
-arm*-*-linux-gnu*)
|
||||
+arm*-*-linux-gnu* | arm*-*-linux-uclibc*)
|
||||
HOSTING_CRT0='-p '`echo "$HOSTING_CRT0" | sed -e "s,ld\[^ \]\*,ld-linux,g"`
|
||||
;;
|
||||
|
||||
@@ -141,7 +141,7 @@
|
||||
HOSTING_LIBS="$HOSTING_LIBS"' -lcygwin -L/usr/lib/w32api -luser32 -lkernel32 -ladvapi32 -lshell32 `if [ -f ../gcc/libgcc.a ] ; then echo ../gcc/libgcc.a ; else ${CC} -print-libgcc-file-name; fi`'
|
||||
;;
|
||||
|
||||
-ia64-*-linux-gnu*)
|
||||
+ia64-*-linux-gnu* | ia64-*-linux-uclibc*)
|
||||
HOSTING_CRT0=`echo "$HOSTING_CRT0" | sed -e "s,ld\[^ \]*\*,ld-linux-ia64,g"`
|
||||
;;
|
||||
|
||||
@@ -155,11 +155,11 @@
|
||||
HOSTING_LIBS='-L/usr/lib32 '"$HOSTING_LIBS"' `if [ -f ../gcc/crtend.o ]; then echo ../gcc/crtend.o ; else ${CC} -print-file-name=crtend.o; fi` /usr/lib32/crtn.o -init __do_global_ctors -fini __do_global_dtors'
|
||||
;;
|
||||
|
||||
-mips*-*-linux-gnu*)
|
||||
+mips*-*-linux-gnu* | mips*-*-linux-uclibc*)
|
||||
HOSTING_CRT0=`echo "$HOSTING_CRT0" | sed -e "s,\\\`specs.*\"\\\`,/lib/ld.so.1,"`
|
||||
;;
|
||||
|
||||
-m68*-*-linux-gnu*)
|
||||
+m68*-*-linux-gnu* | m68*-*-linux-uclibc*)
|
||||
HOSTING_CRT0=`echo "$HOSTING_CRT0" | sed -e "s,\\\`specs.*\"\\\`,/lib/ld.so.1,"`
|
||||
;;
|
||||
|
||||
@@ -183,19 +183,19 @@
|
||||
HOSTING_LIBS="$HOSTING_LIBS"' `if [ -f ../gcc/crtend.o ]; then echo ../gcc/crtend.o; else ${CC} -print-file-name=crtend.o; fi`'
|
||||
;;
|
||||
|
||||
-powerpc64*-*-linux-gnu*)
|
||||
+powerpc64*-*-linux-gnu* | powerpc64*-*-linux-uclibc*)
|
||||
HOSTING_CRT0=`echo "$HOSTING_CRT0" | sed -e "s,\\\`specs.*\"\\\`,/lib64/ld64.so.1,"`
|
||||
;;
|
||||
|
||||
-powerpc*-*-linux-gnu*)
|
||||
+powerpc*-*-linux-gnu* | powerpc*-*-linux-uclibc*)
|
||||
HOSTING_CRT0=`echo "$HOSTING_CRT0" | sed -e "s,\\\`specs.*\"\\\`,/lib/ld.so.1,"`
|
||||
;;
|
||||
|
||||
-s390x-*-linux-gnu*)
|
||||
+s390x-*-linux-gnu* | s390x-*-linux-uclibc*)
|
||||
HOSTING_CRT0=`echo "$HOSTING_CRT0" | sed -e "s,\\\`specs.*\"\\\`,/lib/ld64.so.1,"`
|
||||
;;
|
||||
|
||||
-s390-*-linux-gnu*)
|
||||
+s390-*-linux-gnu* | s390-*-linux-uclibc*)
|
||||
HOSTING_CRT0=`echo "$HOSTING_CRT0" | sed -e "s,\\\`specs.*\"\\\`,/lib/ld.so.1,"`
|
||||
;;
|
||||
|
||||
@@ -209,15 +209,15 @@
|
||||
HOSTING_LIBS="$HOSTING_LIBS"' `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`'
|
||||
;;
|
||||
|
||||
-sparc-*-linux-gnu*)
|
||||
+sparc-*-linux-gnu* | sparc-*-linux-uclibc*)
|
||||
HOSTING_CRT0=`echo "$HOSTING_CRT0" | sed -e "s,\\\`specs.*\"\\\`,/lib/ld-linux.so.2,"`
|
||||
;;
|
||||
|
||||
-sparc64-*-linux-gnu*)
|
||||
+sparc64-*-linux-gnu* | sparc64-*-linux-uclibc*)
|
||||
HOSTING_CRT0=`echo "$HOSTING_CRT0" | sed -e "s,\\\`specs.*\"\\\`,/lib64/ld-linux.so.2,"`
|
||||
;;
|
||||
|
||||
-x86_64-*-linux-gnu*)
|
||||
+x86_64-*-linux-gnu* | x86_64-*-linux-uclibc*)
|
||||
HOSTING_CRT0=`echo "$HOSTING_CRT0" | sed -e "s,\\\`specs.*\"\\\`,/lib64/ld-linux-x86-64.so.2,"`
|
||||
;;
|
||||
|
||||
--- binutils-2.16/ld/configure.orig 2005-09-06 20:37:34.700637413 -0700
|
||||
+++ binutils-2.16/ld/configure 2005-09-06 20:37:46.013349277 -0700
|
||||
@@ -1568,7 +1568,7 @@
|
||||
;;
|
||||
|
||||
# This must be Linux ELF.
|
||||
-linux-gnu*)
|
||||
+linux-gnu* | linux-uclibc*)
|
||||
case $host_cpu in
|
||||
alpha* | mips* | hppa* | i*86 | powerpc* | sparc* | ia64* )
|
||||
lt_cv_deplibs_check_method=pass_all ;;
|
||||
--- binutils-2.16/ld/configure.tgt.orig 2005-09-06 20:40:03.413995355 -0700
|
||||
+++ binutils-2.16/ld/configure.tgt 2005-09-06 20:45:48.111685813 -0700
|
||||
@@ -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-gnu* | cris-*-linux-uclibc* | cris-*-linux-uclibc*)
|
||||
targ_emul=crislinux ;;
|
||||
cris-*-* | crisv32-*-*) targ_emul=criself
|
||||
targ_extra_emuls="crisaout crislinux"
|
||||
@@ -62,14 +62,14 @@
|
||||
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 +119,8 @@
|
||||
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 +131,7 @@
|
||||
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 +155,14 @@
|
||||
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 +262,14 @@
|
||||
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 ;;
|
||||
+thumbb-*-linux-gnu* | thumbb-*-linux-uclibc* | thumbb-*-uclinux*) targ_emul=armelfb_linux; targ_extra_emuls=armelfb ;;
|
||||
strongarm-*-coff) targ_emul=armcoff ;;
|
||||
strongarm-*-elf) targ_emul=armelf ;;
|
||||
strongarm-*-kaos*) targ_emul=armelf ;;
|
||||
@@ -372,7 +373,7 @@
|
||||
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 +389,9 @@
|
||||
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 +403,7 @@
|
||||
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 +437,18 @@
|
||||
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 +468,7 @@
|
||||
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 ;;
|
||||
--- binutils-2.16/ld/emultempl/elf32.em.orig 2005-09-06 20:45:48.247694371 -0700
|
||||
+++ binutils-2.16/ld/emultempl/elf32.em 2005-09-06 20:46:39.158898011 -0700
|
||||
@@ -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>
|
||||
@@ -350,7 +350,7 @@
|
||||
|
||||
EOF
|
||||
case ${target} in
|
||||
- *-*-linux-gnu*)
|
||||
+ *-*-linux-gnu* | *-*-linux-uclibc*)
|
||||
cat >>e${EMULATION_NAME}.c <<EOF
|
||||
{
|
||||
struct bfd_link_needed_list *l;
|
||||
@@ -522,7 +522,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
|
||||
@@ -932,7 +932,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;
|
||||
--- binutils-2.16/libtool.m4.orig 2005-09-06 20:46:55.131903129 -0700
|
||||
+++ binutils-2.16/libtool.m4 2005-09-06 20:47:07.364672889 -0700
|
||||
@@ -634,7 +634,7 @@
|
||||
;;
|
||||
|
||||
# This must be Linux ELF.
|
||||
-linux-gnu*)
|
||||
+linux-gnu* | linux-uclibc*)
|
||||
case $host_cpu in
|
||||
alpha* | mips* | hppa* | i*86 | powerpc* | sparc* | ia64* )
|
||||
lt_cv_deplibs_check_method=pass_all ;;
|
||||
--- binutils-2.16/ltconfig.orig 2005-09-06 20:47:13.965088227 -0700
|
||||
+++ binutils-2.16/ltconfig 2005-09-06 20:49:12.944575134 -0700
|
||||
@@ -1247,7 +1247,7 @@
|
||||
;;
|
||||
|
||||
# This must be Linux ELF.
|
||||
-linux-gnu*)
|
||||
+linux-gnu* | linux-uclibc*)
|
||||
version_type=linux
|
||||
need_lib_prefix=no
|
||||
need_version=no
|
||||
--- binutils-2.16/ltmain.sh.orig 2005-09-06 20:49:12.980577399 -0700
|
||||
+++ binutils-2.16/ltmain.sh 2005-09-06 20:50:15.180491393 -0700
|
||||
@@ -2600,7 +2600,7 @@
|
||||
versuffix="$major.$revision"
|
||||
;;
|
||||
|
||||
- linux)
|
||||
+ linux | linux-uclibc)
|
||||
major=.`expr $current - $age`
|
||||
versuffix="$major.$age.$revision"
|
||||
;;
|
||||
--- binutils-2.16/opcodes/configure.orig 2005-09-06 20:50:15.220493910 -0700
|
||||
+++ binutils-2.16/opcodes/configure 2005-09-06 20:50:38.053930728 -0700
|
||||
@@ -3576,7 +3576,7 @@
|
||||
;;
|
||||
|
||||
# This must be Linux ELF.
|
||||
-linux-gnu*)
|
||||
+linux-gnu* | linux-uclibc*)
|
||||
case $host_cpu in
|
||||
alpha* | mips* | hppa* | i*86 | powerpc* | sparc* | ia64* )
|
||||
lt_cv_deplibs_check_method=pass_all ;;
|
||||
-29
@@ -1,29 +0,0 @@
|
||||
# strip (and objcopy) fail to set the error code if there is no
|
||||
# output file name and the rename of the stripped (or copied) file
|
||||
# fails, yet the command fails to do anything. This fixes both
|
||||
# objcopy and strip.
|
||||
#
|
||||
#Signed-off-by: John Bowler <jbowler@acm.org>
|
||||
|
||||
--- binutils-2.16/binutils/objcopy.c.orig 2006-01-31 11:15:38.797318519 -0800
|
||||
+++ binutils-2.16/binutils/objcopy.c 2006-01-31 11:15:40.463318516 -0800
|
||||
@@ -2434,7 +2434,8 @@ strip_main (int argc, char *argv[])
|
||||
if (preserve_dates)
|
||||
set_times (tmpname, &statbuf);
|
||||
if (output_file == NULL)
|
||||
- smart_rename (tmpname, argv[i], preserve_dates);
|
||||
+ if (smart_rename (tmpname, argv[i], preserve_dates))
|
||||
+ hold_status = 1;
|
||||
status = hold_status;
|
||||
}
|
||||
else
|
||||
@@ -3013,7 +3014,8 @@ copy_main (int argc, char *argv[])
|
||||
{
|
||||
if (preserve_dates)
|
||||
set_times (tmpname, &statbuf);
|
||||
- smart_rename (tmpname, input_filename, preserve_dates);
|
||||
+ if (smart_rename (tmpname, input_filename, preserve_dates))
|
||||
+ status = 1;
|
||||
}
|
||||
else
|
||||
unlink (tmpname);
|
||||
@@ -1,76 +0,0 @@
|
||||
# The ARM->Thumb glue uses an ldr of the target function address, this
|
||||
# simply doesn't work for PIC code, changed to use 4 word PIC glue
|
||||
#
|
||||
--- binutils-2.16/.pc/binutils-2.16-thumb-glue.patch/bfd/elf32-arm.c 2005-09-18 03:52:15.465165051 -0700
|
||||
+++ binutils-2.16/bfd/elf32-arm.c 2005-09-18 03:52:33.546302825 -0700
|
||||
@@ -1493,19 +1493,20 @@
|
||||
return myh;
|
||||
}
|
||||
|
||||
-/* ARM->Thumb glue:
|
||||
+/* ARM->Thumb glue (PIC version):
|
||||
|
||||
.arm
|
||||
__func_from_arm:
|
||||
ldr r12, __func_addr
|
||||
+ add r12, r12, pc @ pc is __func_addr, so r12 is func
|
||||
bx r12
|
||||
__func_addr:
|
||||
- .word func @ behave as if you saw a ARM_32 reloc. */
|
||||
+ .word func-.+1 @ offset to actual function, low bit set */
|
||||
|
||||
-#define ARM2THUMB_GLUE_SIZE 12
|
||||
-static const insn32 a2t1_ldr_insn = 0xe59fc000;
|
||||
-static const insn32 a2t2_bx_r12_insn = 0xe12fff1c;
|
||||
-static const insn32 a2t3_func_addr_insn = 0x00000001;
|
||||
+#define ARM2THUMB_GLUE_SIZE 16
|
||||
+static const insn32 a2t1_ldr_insn = 0xe59fc004;
|
||||
+static const insn32 a2t2_add_r12_insn = 0xe08fc00c;
|
||||
+static const insn32 a2t3_bx_r12_insn = 0xe12fff1c;
|
||||
|
||||
/* Thumb->ARM: Thumb->(non-interworking aware) ARM
|
||||
|
||||
@@ -2187,6 +2188,8 @@
|
||||
|
||||
if ((my_offset & 0x01) == 0x01)
|
||||
{
|
||||
+ long int ret_offset;
|
||||
+
|
||||
if (sym_sec != NULL
|
||||
&& sym_sec->owner != NULL
|
||||
&& !INTERWORK_FLAG (sym_sec->owner))
|
||||
@@ -2203,12 +2206,31 @@
|
||||
bfd_put_32 (output_bfd, (bfd_vma) a2t1_ldr_insn,
|
||||
s->contents + my_offset);
|
||||
|
||||
- bfd_put_32 (output_bfd, (bfd_vma) a2t2_bx_r12_insn,
|
||||
+ bfd_put_32 (output_bfd, (bfd_vma) a2t2_add_r12_insn,
|
||||
s->contents + my_offset + 4);
|
||||
|
||||
- /* It's a thumb address. Add the low order bit. */
|
||||
- bfd_put_32 (output_bfd, val | a2t3_func_addr_insn,
|
||||
+ bfd_put_32 (output_bfd, (bfd_vma) a2t3_bx_r12_insn,
|
||||
s->contents + my_offset + 8);
|
||||
+
|
||||
+ /* Calculate the offset to the actual function. */
|
||||
+ ret_offset =
|
||||
+ /* Address of destination of the stub. */
|
||||
+ ((bfd_signed_vma) val)
|
||||
+ - ((bfd_signed_vma)
|
||||
+ /* Offset from the start of the current section
|
||||
+ to the start of the stubs. */
|
||||
+ (s->output_offset
|
||||
+ /* Offset of the start of this stub from the start of the stubs. */
|
||||
+ + my_offset
|
||||
+ /* Address of the start of the current section. */
|
||||
+ + s->output_section->vma)
|
||||
+ /* The word is 12 bytes into the stub. */
|
||||
+ + 12
|
||||
+ /* The destination is a thumb function so the bottom bit must be set. */
|
||||
+ - 1);
|
||||
+
|
||||
+ bfd_put_32 (output_bfd, (bfd_vma) ret_offset,
|
||||
+ s->contents + my_offset + 12);
|
||||
}
|
||||
|
||||
BFD_ASSERT (my_offset <= globals->arm_glue_size);
|
||||
@@ -1,292 +0,0 @@
|
||||
--- binutils-2.16/.pc/binutils-2.16-thumb-trampoline.patch/bfd/elf32-arm.c 2005-05-02 12:43:06.000000000 -0700
|
||||
+++ binutils-2.16/bfd/elf32-arm.c 2005-09-19 22:58:49.834931044 -0700
|
||||
@@ -24,6 +24,8 @@
|
||||
#include "libbfd.h"
|
||||
#include "elf-bfd.h"
|
||||
|
||||
+#define NOTE_DEBUG 0
|
||||
+
|
||||
#ifndef NUM_ELEM
|
||||
#define NUM_ELEM(a) (sizeof (a) / (sizeof (a)[0]))
|
||||
#endif
|
||||
@@ -1127,6 +1129,10 @@
|
||||
used, we need to record the index into .got.plt instead of
|
||||
recomputing it from the PLT offset. */
|
||||
bfd_signed_vma plt_got_offset;
|
||||
+
|
||||
+ /* This is used to sanity check that the Thumb trampoline space
|
||||
+ really was allocated. */
|
||||
+ int accomodate_trampoline;
|
||||
};
|
||||
|
||||
/* Traverse an arm ELF linker hash table. */
|
||||
@@ -1219,9 +1225,15 @@
|
||||
table, string));
|
||||
if (ret != NULL)
|
||||
{
|
||||
+#if NOTE_DEBUG
|
||||
+ _bfd_error_handler(
|
||||
+ _("NOTE: %x(%s): New hash entry (plt refcount %d)"),
|
||||
+ ret, string, ret->root.plt.refcount);
|
||||
+#endif
|
||||
ret->relocs_copied = NULL;
|
||||
ret->plt_thumb_refcount = 0;
|
||||
ret->plt_got_offset = -1;
|
||||
+ ret->accomodate_trampoline = 0;
|
||||
}
|
||||
|
||||
return (struct bfd_hash_entry *) ret;
|
||||
@@ -1335,16 +1347,38 @@
|
||||
eind->relocs_copied = NULL;
|
||||
}
|
||||
|
||||
- /* If the direct symbol already has an associated PLT entry, the
|
||||
- indirect symbol should not. If it doesn't, swap refcount information
|
||||
- from the indirect symbol. */
|
||||
- if (edir->plt_thumb_refcount == 0)
|
||||
+ if (ind->root.type == bfd_link_hash_indirect)
|
||||
{
|
||||
- edir->plt_thumb_refcount = eind->plt_thumb_refcount;
|
||||
- eind->plt_thumb_refcount = 0;
|
||||
+ bfd_signed_vma tmp;
|
||||
+ bfd_signed_vma lowest_valid = bed->can_refcount;
|
||||
+
|
||||
+ /* If the direct symbol already has an associated PLT entry, the
|
||||
+ indirect symbol should not. If it doesn't, swap refcount information
|
||||
+ from the indirect symbol. */
|
||||
+#if NOTE_DEBUG
|
||||
+ _bfd_error_handler(_("NOTE: %x(%s,%d,%d) <== %x(%s,%d,%d)"),
|
||||
+ dir, dir->root.root.string, dir->plt.refcount, edir->plt_thumb_refcount,
|
||||
+ ind, ind->root.root.string, ind->plt.refcount, eind->plt_thumb_refcount);
|
||||
+#endif
|
||||
+
|
||||
+ /* Copy over the global and procedure linkage table refcount entries.
|
||||
+ These may have been already set up by a check_relocs routine. This
|
||||
+ code duplicates that for the plt refcount in elf.c
|
||||
+ _bfd_elf_link_hash_copy_indirect */
|
||||
+ tmp = dir->plt.refcount;
|
||||
+ /* this obfuscated test evaluates to bed->can_refcount && plt.refcount == 0
|
||||
+ * || plt.refcount < 0.
|
||||
+ */
|
||||
+ if (tmp < lowest_valid)
|
||||
+ {
|
||||
+ tmp = edir->plt_thumb_refcount;
|
||||
+ edir->plt_thumb_refcount = eind->plt_thumb_refcount;
|
||||
+ eind->plt_thumb_refcount = tmp;
|
||||
+ BFD_ASSERT(eind->accomodate_trampoline == 0);
|
||||
+ }
|
||||
+ else
|
||||
+ BFD_ASSERT (eind->plt_thumb_refcount == 0);
|
||||
}
|
||||
- else
|
||||
- BFD_ASSERT (eind->plt_thumb_refcount == 0);
|
||||
|
||||
_bfd_elf_link_hash_copy_indirect (bed, dir, ind);
|
||||
}
|
||||
@@ -2060,7 +2094,7 @@
|
||||
(*_bfd_error_handler)
|
||||
(_("%B(%s): warning: interworking not enabled.\n"
|
||||
" first occurrence: %B: thumb call to arm"),
|
||||
- sym_sec->owner, input_bfd, name);
|
||||
+ sym_sec->owner, name, input_bfd);
|
||||
|
||||
return FALSE;
|
||||
}
|
||||
@@ -2165,7 +2199,7 @@
|
||||
(*_bfd_error_handler)
|
||||
(_("%B(%s): warning: interworking not enabled.\n"
|
||||
" first occurrence: %B: arm call to thumb"),
|
||||
- sym_sec->owner, input_bfd, name);
|
||||
+ sym_sec->owner, name, input_bfd);
|
||||
}
|
||||
|
||||
--my_offset;
|
||||
@@ -2481,7 +2515,7 @@
|
||||
instruction instead ? */
|
||||
if (sym_flags != STT_ARM_TFUNC)
|
||||
(*_bfd_error_handler)
|
||||
- (_("\%B: Warning: Arm BLX instruction targets Arm function '%s'."),
|
||||
+ (_("%B: Warning: Arm BLX instruction targets Arm function '%s'."),
|
||||
input_bfd,
|
||||
h ? h->root.root.string : "(local)");
|
||||
}
|
||||
@@ -2697,6 +2731,20 @@
|
||||
/* Handle calls via the PLT. */
|
||||
if (h != NULL && splt != NULL && h->plt.offset != (bfd_vma) -1)
|
||||
{
|
||||
+ struct elf32_arm_link_hash_entry *eh;
|
||||
+ eh = (struct elf32_arm_link_hash_entry *) h;
|
||||
+ if (!eh->accomodate_trampoline)
|
||||
+ {
|
||||
+ /* %B of output_bfd crashes here, so %x is used instead */
|
||||
+ _bfd_error_handler(
|
||||
+ _("ERROR: %B: %x(%s): missing thumb trampoline, refcount(thumb %d, plt %d) in %x at %x+%x+%x"),
|
||||
+ input_bfd, h, h->root.root.string, eh->plt_thumb_refcount,
|
||||
+ h->plt.refcount, output_bfd, splt->output_section->vma,
|
||||
+ splt->output_offset, h->plt.offset);
|
||||
+ /* The relocation would point to garbage, it gets skipped... */
|
||||
+ return bfd_reloc_dangerous;
|
||||
+ }
|
||||
+
|
||||
value = (splt->output_section->vma
|
||||
+ splt->output_offset
|
||||
+ h->plt.offset);
|
||||
@@ -3525,8 +3573,9 @@
|
||||
{
|
||||
_bfd_error_handler
|
||||
(_("ERROR: Source object %B has EABI version %d, but target %B has EABI version %d"),
|
||||
- ibfd, obfd,
|
||||
+ ibfd,
|
||||
(in_flags & EF_ARM_EABIMASK) >> 24,
|
||||
+ obfd,
|
||||
(out_flags & EF_ARM_EABIMASK) >> 24);
|
||||
return FALSE;
|
||||
}
|
||||
@@ -3538,8 +3587,9 @@
|
||||
{
|
||||
_bfd_error_handler
|
||||
(_("ERROR: %B is compiled for APCS-%d, whereas target %B uses APCS-%d"),
|
||||
- ibfd, obfd,
|
||||
+ ibfd,
|
||||
in_flags & EF_ARM_APCS_26 ? 26 : 32,
|
||||
+ obfd,
|
||||
out_flags & EF_ARM_APCS_26 ? 26 : 32);
|
||||
flags_compatible = FALSE;
|
||||
}
|
||||
@@ -3903,10 +3953,18 @@
|
||||
eh = (struct elf32_arm_link_hash_entry *) h;
|
||||
|
||||
if (h->plt.refcount > 0)
|
||||
+ h->plt.refcount -= 1;
|
||||
+
|
||||
+ if (ELF32_R_TYPE (rel->r_info) == R_ARM_THM_PC22)
|
||||
{
|
||||
- h->plt.refcount -= 1;
|
||||
- if (ELF32_R_TYPE (rel->r_info) == R_ARM_THM_PC22)
|
||||
- eh->plt_thumb_refcount--;
|
||||
+ BFD_ASSERT (eh->plt_thumb_refcount > 0);
|
||||
+ eh->plt_thumb_refcount--;
|
||||
+ BFD_ASSERT (eh->accomodate_trampoline == 0);
|
||||
+#if NOTE_DEBUG
|
||||
+ _bfd_error_handler(
|
||||
+ _("NOTE: %B: %x(%s): Thumb refcount decremented to %d (plt refcount %d)"),
|
||||
+ abfd, h, h->root.root.string, eh->plt_thumb_refcount, h->plt.refcount);
|
||||
+#endif
|
||||
}
|
||||
|
||||
if (r_type == R_ARM_ABS32
|
||||
@@ -3994,6 +4052,10 @@
|
||||
h = sym_hashes[r_symndx - symtab_hdr->sh_info];
|
||||
|
||||
eh = (struct elf32_arm_link_hash_entry *) h;
|
||||
+#if NOTE_DEBUG
|
||||
+ if (h != NULL)
|
||||
+ _bfd_error_handler(_("NOTE: %B: %x(%s): verify relocation"), abfd, h, h->root.root.string);
|
||||
+#endif
|
||||
|
||||
switch (r_type)
|
||||
{
|
||||
@@ -4078,10 +4140,30 @@
|
||||
|
||||
/* If we create a PLT entry, this relocation will reference
|
||||
it, even if it's an ABS32 relocation. */
|
||||
- h->plt.refcount += 1;
|
||||
+ if (h->plt.refcount >= 0)
|
||||
+ h->plt.refcount += 1;
|
||||
+ else
|
||||
+ {
|
||||
+ /* This happens, I suspect it happens with glue code because,
|
||||
+ * somehow, the backend data had can_refcount==0. Expert required...
|
||||
+ */
|
||||
+ _bfd_error_handler(
|
||||
+ _("WARNING: %B: %x(%s): PLT refcount was %d (set to 1)"),
|
||||
+ abfd, h, h->root.root.string, h->plt.refcount);
|
||||
+ h->plt.refcount = 1;
|
||||
+ }
|
||||
|
||||
if (r_type == R_ARM_THM_PC22)
|
||||
- eh->plt_thumb_refcount += 1;
|
||||
+ {
|
||||
+ eh->plt_thumb_refcount += 1;
|
||||
+ BFD_ASSERT (eh->plt_thumb_refcount <= h->plt.refcount);
|
||||
+ BFD_ASSERT (eh->accomodate_trampoline == 0);
|
||||
+#if NOTE_DEBUG
|
||||
+ _bfd_error_handler(
|
||||
+ _("NOTE: %B: %x(%s): Thumb refcount incremented to %d (plt refcount %d)"),
|
||||
+ abfd, h, h->root.root.string, eh->plt_thumb_refcount, h->plt.refcount);
|
||||
+#endif
|
||||
+ }
|
||||
}
|
||||
|
||||
/* If we are creating a shared library or relocatable executable,
|
||||
@@ -4376,8 +4458,15 @@
|
||||
object, or if all references were garbage collected. In
|
||||
such a case, we don't actually need to build a procedure
|
||||
linkage table, and we can just do a PC24 reloc instead. */
|
||||
+#if NOTE_DEBUG
|
||||
+ _bfd_error_handler(
|
||||
+ _("NOTE: %x(%s): Thumb refcount zeroed (plt refcount %d, thumb %d) (%s)"),
|
||||
+ h, h->root.root.string, h->plt.refcount, eh->plt_thumb_refcount,
|
||||
+ SYMBOL_CALLS_LOCAL (info, h) ? "local call" : "invisible");
|
||||
+#endif
|
||||
h->plt.offset = (bfd_vma) -1;
|
||||
eh->plt_thumb_refcount = 0;
|
||||
+ BFD_ASSERT (eh->accomodate_trampoline == 0);
|
||||
h->needs_plt = 0;
|
||||
}
|
||||
|
||||
@@ -4390,8 +4479,14 @@
|
||||
in check_relocs. We can't decide accurately between function
|
||||
and non-function syms in check-relocs; Objects loaded later in
|
||||
the link may change h->type. So fix it now. */
|
||||
+#if NOTE_DEBUG
|
||||
+ _bfd_error_handler(
|
||||
+ _("NOTE: %x(%s): Thumb refcount zeroed (%d, plt refcount %d)"),
|
||||
+ h, h->root.root.string, eh->plt_thumb_refcount, h->plt.refcount);
|
||||
+#endif
|
||||
h->plt.offset = (bfd_vma) -1;
|
||||
eh->plt_thumb_refcount = 0;
|
||||
+ BFD_ASSERT (eh->accomodate_trampoline == 0);
|
||||
}
|
||||
|
||||
/* If this is a weak symbol, and there is a real definition, the
|
||||
@@ -4521,8 +4616,14 @@
|
||||
for it. */
|
||||
if (!htab->symbian_p && eh->plt_thumb_refcount > 0)
|
||||
{
|
||||
+#if NOTE_DEBUG
|
||||
+ _bfd_error_handler(_("NOTE: %x(%s): Thumb trampoline created at %x"),
|
||||
+ h, h->root.root.string, h->plt.offset);
|
||||
+#endif
|
||||
h->plt.offset += PLT_THUMB_STUB_SIZE;
|
||||
s->size += PLT_THUMB_STUB_SIZE;
|
||||
+ BFD_ASSERT (eh->accomodate_trampoline == 0);
|
||||
+ eh->accomodate_trampoline = 1;
|
||||
}
|
||||
|
||||
/* If this symbol is not defined in a regular file, and we are
|
||||
@@ -5014,10 +5115,20 @@
|
||||
|
||||
if (eh->plt_thumb_refcount > 0)
|
||||
{
|
||||
- bfd_put_16 (output_bfd, elf32_arm_plt_thumb_stub[0],
|
||||
- splt->contents + h->plt.offset - 4);
|
||||
- bfd_put_16 (output_bfd, elf32_arm_plt_thumb_stub[1],
|
||||
- splt->contents + h->plt.offset - 2);
|
||||
+ if (eh->accomodate_trampoline == 1)
|
||||
+ {
|
||||
+ bfd_put_16 (output_bfd, elf32_arm_plt_thumb_stub[0],
|
||||
+ splt->contents + h->plt.offset - 4);
|
||||
+ bfd_put_16 (output_bfd, elf32_arm_plt_thumb_stub[1],
|
||||
+ splt->contents + h->plt.offset - 2);
|
||||
+ }
|
||||
+ else
|
||||
+ {
|
||||
+ (*_bfd_error_handler) (
|
||||
+ _("%B: no space for THUMB trampoline at %x[%x]"),
|
||||
+ output_bfd, h->plt.offset, got_offset);
|
||||
+ return FALSE;
|
||||
+ }
|
||||
}
|
||||
|
||||
bfd_put_32 (output_bfd, elf32_arm_plt_entry[0] | ((got_displacement & 0x0ff00000) >> 20),
|
||||
@@ -1,24 +0,0 @@
|
||||
diff -urN binutils-2.16.91.0.7.orig/configure binutils-2.16.91.0.7/configure
|
||||
--- binutils-2.16.91.0.7.orig/configure 2006-05-31 14:54:24.000000000 +0300
|
||||
+++ binutils-2.16.91.0.7/configure 2006-05-31 14:55:53.000000000 +0300
|
||||
@@ -1299,7 +1299,7 @@
|
||||
arm-*-elf* | strongarm-*-elf* | xscale-*-elf* | arm*-*-eabi* )
|
||||
noconfigdirs="$noconfigdirs target-libffi target-qthreads"
|
||||
;;
|
||||
- arm*-*-linux-gnueabi)
|
||||
+ arm*-*-linux-gnueabi | arm*-*-linux-uclibcgnueabi)
|
||||
noconfigdirs="$noconfigdirs target-libffi target-qthreads"
|
||||
noconfigdirs="$noconfigdirs target-libjava target-libobjc"
|
||||
;;
|
||||
diff -urN binutils-2.16.91.0.7.orig/configure.in binutils-2.16.91.0.7/configure.in
|
||||
--- binutils-2.16.91.0.7.orig/configure.in 2006-05-31 14:54:24.000000000 +0300
|
||||
+++ binutils-2.16.91.0.7/configure.in 2006-05-31 14:55:53.000000000 +0300
|
||||
@@ -497,7 +497,7 @@
|
||||
arm-*-elf* | strongarm-*-elf* | xscale-*-elf* | arm*-*-eabi* )
|
||||
noconfigdirs="$noconfigdirs target-libffi target-qthreads"
|
||||
;;
|
||||
- arm*-*-linux-gnueabi)
|
||||
+ arm*-*-linux-gnueabi | arm*-*-linux-uclibcgnueabi)
|
||||
noconfigdirs="$noconfigdirs target-libffi target-qthreads"
|
||||
noconfigdirs="$noconfigdirs target-libjava target-libobjc"
|
||||
;;
|
||||
Vendored
-31
@@ -1,31 +0,0 @@
|
||||
# strip (and objcopy) fail to set the error code if there is no
|
||||
# output file name and the rename of the stripped (or copied) file
|
||||
# fails, yet the command fails to do anything. This fixes both
|
||||
# objcopy and strip.
|
||||
#
|
||||
# modification by bero: Ported to 2.16.91.0.6
|
||||
#
|
||||
#Signed-off-by: John Bowler <jbowler@acm.org>
|
||||
#Signed-off-by: Bernhard Rosenkraenzer <bero@arklinux.org>
|
||||
--- binutils-2.16.91.0.6/binutils/objcopy.c.ark 2006-03-11 15:59:07.000000000 +0100
|
||||
+++ binutils-2.16.91.0.6/binutils/objcopy.c 2006-03-11 15:59:45.000000000 +0100
|
||||
@@ -2593,7 +2593,8 @@
|
||||
if (preserve_dates)
|
||||
set_times (tmpname, &statbuf);
|
||||
if (output_file == NULL)
|
||||
- smart_rename (tmpname, argv[i], preserve_dates);
|
||||
+ if(smart_rename (tmpname, argv[i], preserve_dates))
|
||||
+ hold_status = 1;
|
||||
status = hold_status;
|
||||
}
|
||||
else
|
||||
@@ -3184,7 +3185,8 @@
|
||||
{
|
||||
if (preserve_dates)
|
||||
set_times (tmpname, &statbuf);
|
||||
- smart_rename (tmpname, input_filename, preserve_dates);
|
||||
+ if (smart_rename (tmpname, input_filename, preserve_dates))
|
||||
+ status = 1;
|
||||
}
|
||||
else
|
||||
unlink (tmpname);
|
||||
-139
@@ -1,139 +0,0 @@
|
||||
--- binutils-2.16.91.0.7/bfd/configure
|
||||
+++ binutils-2.16.91.0.7/bfd/configure
|
||||
@@ -3576,7 +3576,7 @@
|
||||
;;
|
||||
|
||||
# This must be Linux ELF.
|
||||
-linux-gnu*)
|
||||
+linux-gnu*|linux-uclibc*)
|
||||
lt_cv_deplibs_check_method=pass_all
|
||||
;;
|
||||
|
||||
--- binutils-2.16.91.0.7/binutils/configure
|
||||
+++ binutils-2.16.91.0.7/binutils/configure
|
||||
@@ -3411,7 +3411,7 @@
|
||||
;;
|
||||
|
||||
# This must be Linux ELF.
|
||||
-linux-gnu*)
|
||||
+linux-gnu*|linux-uclibc*)
|
||||
lt_cv_deplibs_check_method=pass_all
|
||||
;;
|
||||
|
||||
--- binutils-2.16.91.0.7/configure
|
||||
+++ binutils-2.16.91.0.7/configure
|
||||
@@ -1270,7 +1270,7 @@
|
||||
am33_2.0-*-linux*)
|
||||
noconfigdirs="$noconfigdirs ${libgcj} target-newlib target-libgloss"
|
||||
;;
|
||||
- sh-*-linux*)
|
||||
+ sh*-*-linux*)
|
||||
noconfigdirs="$noconfigdirs ${libgcj} target-newlib target-libgloss"
|
||||
;;
|
||||
sh*-*-pe|mips*-*-pe|*arm-wince-pe)
|
||||
@@ -1578,7 +1578,7 @@
|
||||
romp-*-*)
|
||||
noconfigdirs="$noconfigdirs bfd binutils ld gas opcodes target-libgloss ${libgcj}"
|
||||
;;
|
||||
- sh-*-* | sh64-*-*)
|
||||
+ sh*-*-* | sh64-*-*)
|
||||
case "${host}" in
|
||||
i[3456789]86-*-vsta) ;; # don't add gprof back in
|
||||
i[3456789]86-*-go32*) ;; # don't add gprof back in
|
||||
--- binutils-2.16.91.0.7/configure.in
|
||||
+++ binutils-2.16.91.0.7/configure.in
|
||||
@@ -468,7 +468,7 @@
|
||||
am33_2.0-*-linux*)
|
||||
noconfigdirs="$noconfigdirs ${libgcj} target-newlib target-libgloss"
|
||||
;;
|
||||
- sh-*-linux*)
|
||||
+ sh*-*-linux*)
|
||||
noconfigdirs="$noconfigdirs ${libgcj} target-newlib target-libgloss"
|
||||
;;
|
||||
sh*-*-pe|mips*-*-pe|*arm-wince-pe)
|
||||
@@ -776,7 +776,7 @@
|
||||
romp-*-*)
|
||||
noconfigdirs="$noconfigdirs bfd binutils ld gas opcodes target-libgloss ${libgcj}"
|
||||
;;
|
||||
- sh-*-* | sh64-*-*)
|
||||
+ sh*-*-* | sh64-*-*)
|
||||
case "${host}" in
|
||||
i[[3456789]]86-*-vsta) ;; # don't add gprof back in
|
||||
i[[3456789]]86-*-go32*) ;; # don't add gprof back in
|
||||
--- binutils-2.16.91.0.7/gas/configure
|
||||
+++ binutils-2.16.91.0.7/gas/configure
|
||||
@@ -3411,7 +3411,7 @@
|
||||
;;
|
||||
|
||||
# This must be Linux ELF.
|
||||
-linux-gnu*)
|
||||
+linux-gnu*|linux-uclibc*)
|
||||
lt_cv_deplibs_check_method=pass_all
|
||||
;;
|
||||
|
||||
--- binutils-2.16.91.0.7/gprof/configure
|
||||
+++ binutils-2.16.91.0.7/gprof/configure
|
||||
@@ -3419,6 +3419,11 @@
|
||||
lt_cv_file_magic_test_file=`echo /lib/libc.so* /lib/libc-*.so`
|
||||
;;
|
||||
|
||||
+linux-uclibc*)
|
||||
+ lt_cv_deplibs_check_method=pass_all
|
||||
+ lt_cv_file_magic_test_file=`echo /lib/libuClibc-*.so`
|
||||
+ ;;
|
||||
+
|
||||
netbsd* | knetbsd*-gnu)
|
||||
if echo __ELF__ | $CC -E - | grep __ELF__ > /dev/null; then
|
||||
lt_cv_deplibs_check_method='match_pattern /lib[^/\.]+\.so\.[0-9]+\.[0-9]+$'
|
||||
--- binutils-2.16.91.0.7/ld/configure
|
||||
+++ binutils-2.16.91.0.7/ld/configure
|
||||
@@ -3413,7 +3413,7 @@
|
||||
;;
|
||||
|
||||
# This must be Linux ELF.
|
||||
-linux-gnu*)
|
||||
+linux-gnu*|linux-uclibc*)
|
||||
lt_cv_deplibs_check_method=pass_all
|
||||
;;
|
||||
|
||||
--- binutils-2.16.91.0.7/libtool.m4
|
||||
+++ binutils-2.16.91.0.7/libtool.m4
|
||||
@@ -739,7 +739,7 @@
|
||||
;;
|
||||
|
||||
# This must be Linux ELF.
|
||||
-linux-gnu*)
|
||||
+linux-gnu*|linux-uclibc*)
|
||||
lt_cv_deplibs_check_method=pass_all
|
||||
;;
|
||||
|
||||
--- binutils-2.16.91.0.7/ltconfig
|
||||
+++ binutils-2.16.91.0.7/ltconfig
|
||||
@@ -602,6 +602,7 @@
|
||||
|
||||
# Transform linux* to *-*-linux-gnu*, to support old configure scripts.
|
||||
case $host_os in
|
||||
+linux-uclibc*) ;;
|
||||
linux-gnu*) ;;
|
||||
linux*) host=`echo $host | sed 's/^\(.*-.*-linux\)\(.*\)$/\1-gnu\2/'`
|
||||
esac
|
||||
@@ -1247,7 +1248,7 @@
|
||||
;;
|
||||
|
||||
# This must be Linux ELF.
|
||||
-linux-gnu*)
|
||||
+linux-gnu*|linux-uclibc*)
|
||||
version_type=linux
|
||||
need_lib_prefix=no
|
||||
need_version=no
|
||||
--- binutils-2.16.91.0.7/opcodes/configure
|
||||
+++ binutils-2.16.91.0.7/opcodes/configure
|
||||
@@ -3579,7 +3579,7 @@
|
||||
;;
|
||||
|
||||
# This must be Linux ELF.
|
||||
-linux-gnu*)
|
||||
+linux-gnu*|linux-uclibc*)
|
||||
lt_cv_deplibs_check_method=pass_all
|
||||
;;
|
||||
|
||||
Vendored
-50
@@ -1,50 +0,0 @@
|
||||
#!/bin/sh -e
|
||||
## 001_ld_makefile_patch.dpatch
|
||||
##
|
||||
## All lines beginning with `## DP:' are a description of the patch.
|
||||
## DP: Description: correct where ld scripts are installed
|
||||
## DP: Author: Chris Chimelis <chris@debian.org>
|
||||
## DP: Upstream status: N/A
|
||||
## DP: Date: ??
|
||||
|
||||
if [ $# -ne 1 ]; then
|
||||
echo >&2 "`basename $0`: script expects -patch|-unpatch as argument"
|
||||
exit 1
|
||||
fi
|
||||
|
||||
[ -f debian/patches/00patch-opts ] && . debian/patches/00patch-opts
|
||||
patch_opts="${patch_opts:--f --no-backup-if-mismatch}"
|
||||
|
||||
case "$1" in
|
||||
-patch) patch $patch_opts -p1 < $0;;
|
||||
-unpatch) patch $patch_opts -p1 -R < $0;;
|
||||
*)
|
||||
echo >&2 "`basename $0`: script expects -patch|-unpatch as argument"
|
||||
exit 1;;
|
||||
esac
|
||||
|
||||
exit 0
|
||||
|
||||
@DPATCH@
|
||||
--- binutils-2.16.91.0.1/ld/Makefile.am
|
||||
+++ binutils-2.16.91.0.1/ld/Makefile.am
|
||||
@@ -20,7 +20,7 @@
|
||||
# We put the scripts in the directory $(scriptdir)/ldscripts.
|
||||
# We can't put the scripts in $(datadir) because the SEARCH_DIR
|
||||
# directives need to be different for native and cross linkers.
|
||||
-scriptdir = $(tooldir)/lib
|
||||
+scriptdir = $(libdir)
|
||||
|
||||
EMUL = @EMUL@
|
||||
EMULATION_OFILES = @EMULATION_OFILES@
|
||||
--- binutils-2.16.91.0.1/ld/Makefile.in
|
||||
+++ binutils-2.16.91.0.1/ld/Makefile.in
|
||||
@@ -268,7 +268,7 @@
|
||||
# We put the scripts in the directory $(scriptdir)/ldscripts.
|
||||
# We can't put the scripts in $(datadir) because the SEARCH_DIR
|
||||
# directives need to be different for native and cross linkers.
|
||||
-scriptdir = $(tooldir)/lib
|
||||
+scriptdir = $(libdir)
|
||||
BASEDIR = $(srcdir)/..
|
||||
BFDDIR = $(BASEDIR)/bfd
|
||||
INCDIR = $(BASEDIR)/include
|
||||
Vendored
-43
@@ -1,43 +0,0 @@
|
||||
#!/bin/sh -e
|
||||
## 006_better_file_error.dpatch by David Kimdon <dwhedon@gordian.com>
|
||||
##
|
||||
## All lines beginning with `## DP:' are a description of the patch.
|
||||
## DP: Specify which filename is causing an error if the filename is a
|
||||
## DP: directory. (#45832)
|
||||
|
||||
if [ $# -ne 1 ]; then
|
||||
echo >&2 "`basename $0`: script expects -patch|-unpatch as argument"
|
||||
exit 1
|
||||
fi
|
||||
|
||||
[ -f debian/patches/00patch-opts ] && . debian/patches/00patch-opts
|
||||
patch_opts="${patch_opts:--f --no-backup-if-mismatch}"
|
||||
|
||||
case "$1" in
|
||||
-patch) patch $patch_opts -p1 < $0;;
|
||||
-unpatch) patch $patch_opts -p1 -R < $0;;
|
||||
*)
|
||||
echo >&2 "`basename $0`: script expects -patch|-unpatch as argument"
|
||||
exit 1;;
|
||||
esac
|
||||
|
||||
exit 0
|
||||
|
||||
@DPATCH@
|
||||
diff -urNad /home/james/debian/packages/binutils/binutils-2.14.90.0.6/bfd/opncls.c binutils-2.14.90.0.6/bfd/opncls.c
|
||||
--- /home/james/debian/packages/binutils/binutils-2.14.90.0.6/bfd/opncls.c 2003-07-23 16:08:09.000000000 +0100
|
||||
+++ binutils-2.14.90.0.6/bfd/opncls.c 2003-09-10 22:35:00.000000000 +0100
|
||||
@@ -150,6 +150,13 @@
|
||||
{
|
||||
bfd *nbfd;
|
||||
const bfd_target *target_vec;
|
||||
+ struct stat s;
|
||||
+
|
||||
+ if (stat (filename, &s) == 0)
|
||||
+ if (S_ISDIR(s.st_mode)) {
|
||||
+ bfd_set_error (bfd_error_file_not_recognized);
|
||||
+ return NULL;
|
||||
+ }
|
||||
|
||||
nbfd = _bfd_new_bfd ();
|
||||
if (nbfd == NULL)
|
||||
Vendored
-47
@@ -1,47 +0,0 @@
|
||||
#!/bin/sh -e
|
||||
## 012_check_ldrunpath_length.dpatch by Chris Chimelis <chris@debian.org>
|
||||
##
|
||||
## All lines beginning with `## DP:' are a description of the patch.
|
||||
## DP: Only generate an RPATH entry if LD_RUN_PATH is not empty, for
|
||||
## DP: cases where -rpath isn't specified. (#151024)
|
||||
|
||||
if [ $# -ne 1 ]; then
|
||||
echo >&2 "`basename $0`: script expects -patch|-unpatch as argument"
|
||||
exit 1
|
||||
fi
|
||||
|
||||
[ -f debian/patches/00patch-opts ] && . debian/patches/00patch-opts
|
||||
patch_opts="${patch_opts:--f --no-backup-if-mismatch}"
|
||||
|
||||
case "$1" in
|
||||
-patch) patch $patch_opts -p1 < $0;;
|
||||
-unpatch) patch $patch_opts -p1 -R < $0;;
|
||||
*)
|
||||
echo >&2 "`basename $0`: script expects -patch|-unpatch as argument"
|
||||
exit 1;;
|
||||
esac
|
||||
|
||||
exit 0
|
||||
|
||||
@DPATCH@
|
||||
diff -urNad /home/james/debian/packages/binutils/new/binutils-2.15/ld/emultempl/elf32.em binutils-2.15/ld/emultempl/elf32.em
|
||||
--- /home/james/debian/packages/binutils/new/binutils-2.15/ld/emultempl/elf32.em 2004-05-21 23:12:58.000000000 +0100
|
||||
+++ binutils-2.15/ld/emultempl/elf32.em 2004-05-21 23:12:59.000000000 +0100
|
||||
@@ -692,6 +692,8 @@
|
||||
&& command_line.rpath == NULL)
|
||||
{
|
||||
lib_path = (const char *) getenv ("LD_RUN_PATH");
|
||||
+ if ((lib_path) && (strlen (lib_path) == 0))
|
||||
+ lib_path = NULL;
|
||||
if (gld${EMULATION_NAME}_search_needed (lib_path, &n,
|
||||
force))
|
||||
break;
|
||||
@@ -871,6 +873,8 @@
|
||||
rpath = command_line.rpath;
|
||||
if (rpath == NULL)
|
||||
rpath = (const char *) getenv ("LD_RUN_PATH");
|
||||
+ if ((rpath) && (strlen (rpath) == 0))
|
||||
+ rpath = NULL;
|
||||
if (! (bfd_elf_size_dynamic_sections
|
||||
(output_bfd, command_line.soname, rpath,
|
||||
command_line.filter_shlib,
|
||||
@@ -1,3 +0,0 @@
|
||||
require binutils_${PV}.bb
|
||||
require binutils-cross-sdk.inc
|
||||
PR = "r0"
|
||||
@@ -1,3 +0,0 @@
|
||||
require binutils_${PV}.bb
|
||||
require binutils-cross-sdk.inc
|
||||
PR = "r3"
|
||||
@@ -1,3 +0,0 @@
|
||||
require binutils_${PV}.bb
|
||||
require binutils-cross-sdk.inc
|
||||
PR = "r3"
|
||||
@@ -1,3 +0,0 @@
|
||||
require binutils_${PV}.bb
|
||||
require binutils-cross.inc
|
||||
FILESDIR = "${@os.path.dirname(bb.data.getVar('FILE',d,1))}/binutils-${PV}"
|
||||
@@ -1,3 +0,0 @@
|
||||
require binutils_${PV}.bb
|
||||
require binutils-cross.inc
|
||||
FILESDIR = "${@os.path.dirname(bb.data.getVar('FILE',d,1))}/binutils-${PV}"
|
||||
@@ -1,3 +0,0 @@
|
||||
FILESDIR = "${@os.path.dirname(bb.data.getVar('FILE',d,1))}/binutils-${PV}"
|
||||
require binutils_${PV}.bb
|
||||
require binutils-cross.inc
|
||||
@@ -1,3 +0,0 @@
|
||||
require binutils_${PV}.bb
|
||||
require binutils-cross.inc
|
||||
FILESDIR = "${@os.path.dirname(bb.data.getVar('FILE',d,1))}/binutils-${PV}"
|
||||
@@ -1,3 +0,0 @@
|
||||
require binutils_csl-arm-2005q3-2.bb
|
||||
require binutils-cross.inc
|
||||
S = "${WORKDIR}/binutils-2.17pre"
|
||||
@@ -1,7 +1,7 @@
|
||||
DESCRIPTION = "A GNU collection of binary utilities"
|
||||
HOMEPAGE = "http://www.gnu.org/software/binutils/"
|
||||
SECTION = "devel"
|
||||
LICENSE = "GPL"
|
||||
LICENSE = "GPLv2"
|
||||
|
||||
inherit autotools gettext
|
||||
|
||||
|
||||
@@ -1,123 +0,0 @@
|
||||
DESCRIPTION = "A GNU collection of binary utilities"
|
||||
HOMEPAGE = "http://www.gnu.org/software/binutils/"
|
||||
SECTION = "devel"
|
||||
LICENSE = "GPL"
|
||||
PR = "r3"
|
||||
|
||||
inherit autotools gettext
|
||||
|
||||
PACKAGES += "${PN}-symlinks"
|
||||
|
||||
FILES_${PN} = " \
|
||||
${bindir}/${TARGET_PREFIX}* \
|
||||
${libdir}/lib*-*.so \
|
||||
${prefix}/${TARGET_SYS}/bin/*"
|
||||
|
||||
FILES_${PN}-dev = " \
|
||||
${includedir} \
|
||||
${libdir}/*.a \
|
||||
${libdir}/*.la \
|
||||
${libdir}/libbfd.so \
|
||||
${libdir}/libopcodes.so"
|
||||
|
||||
FILES_${PN}-symlinks = " \
|
||||
${bindir}/addr2line \
|
||||
${bindir}/ar \
|
||||
${bindir}/as \
|
||||
${bindir}/c++filt \
|
||||
${bindir}/gprof \
|
||||
${bindir}/ld \
|
||||
${bindir}/nm \
|
||||
${bindir}/objcopy \
|
||||
${bindir}/objdump \
|
||||
${bindir}/ranlib \
|
||||
${bindir}/readelf \
|
||||
${bindir}/size \
|
||||
${bindir}/strings \
|
||||
${bindir}/strip"
|
||||
|
||||
SRC_URI = \
|
||||
"http://ftp.kernel.org/pub/linux/devel/binutils/binutils-${PV}.tar.bz2 \
|
||||
file://ld_makefile.patch;patch=1 \
|
||||
file://better_file_error.patch;patch=1 \
|
||||
file://signed_char_fix.patch;patch=1 \
|
||||
file://objdump_fix.patch;patch=1 \
|
||||
file://binutils-100_cflags_for_build.patch;patch=1 \
|
||||
file://binutils-2.15.91.0.1-uclibc-100-conf.patch;patch=1 \
|
||||
file://binutils-2.15.90.0.3-uclibc-200-build_modules.patch;patch=1 \
|
||||
file://binutils-2.15-allow-gcc-4.0.patch;patch=1"
|
||||
S = "${WORKDIR}/binutils-${PV}"
|
||||
B = "${S}/build.${HOST_SYS}.${TARGET_SYS}"
|
||||
|
||||
EXTRA_OECONF = "--program-prefix=${TARGET_PREFIX} \
|
||||
--enable-shared"
|
||||
|
||||
# This is necessary due to a bug in the binutils Makefiles
|
||||
EXTRA_OEMAKE = "configure-build-libiberty all"
|
||||
|
||||
export AR = "${HOST_PREFIX}ar"
|
||||
export AS = "${HOST_PREFIX}as"
|
||||
export LD = "${HOST_PREFIX}ld"
|
||||
export NM = "${HOST_PREFIX}nm"
|
||||
export RANLIB = "${HOST_PREFIX}ranlib"
|
||||
export OBJCOPY = "${HOST_PREFIX}objcopy"
|
||||
export OBJDUMP = "${HOST_PREFIX}objdump"
|
||||
|
||||
export AR_FOR_TARGET = "${TARGET_PREFIX}ar"
|
||||
export AS_FOR_TARGET = "${TARGET_PREFIX}as"
|
||||
export LD_FOR_TARGET = "${TARGET_PREFIX}ld"
|
||||
export NM_FOR_TARGET = "${TARGET_PREFIX}nm"
|
||||
export RANLIB_FOR_TARGET = "${TARGET_PREFIX}ranlib"
|
||||
|
||||
export CC_FOR_HOST = "${CCACHE} ${HOST_PREFIX}gcc ${HOST_CC_ARCH}"
|
||||
export CXX_FOR_HOST = "${CCACHE} ${HOST_PREFIX}gcc ${HOST_CC_ARCH}"
|
||||
|
||||
export CC_FOR_BUILD = "${BUILD_CC}"
|
||||
export CPP_FOR_BUILD = "${BUILD_CPP}"
|
||||
export CFLAGS_FOR_BUILD = "${BUILD_CFLAGS}"
|
||||
|
||||
export CC = "${CCACHE} ${HOST_PREFIX}gcc ${HOST_CC_ARCH}"
|
||||
|
||||
do_configure () {
|
||||
(cd ${S}; gnu-configize) || die "Failed to run gnu-configize"
|
||||
oe_runconf
|
||||
}
|
||||
|
||||
do_stage () {
|
||||
oe_libinstall -so -a -C opcodes libopcodes ${STAGING_LIBDIR}/
|
||||
oe_libinstall -a -C libiberty libiberty ${STAGING_LIBDIR}/
|
||||
oe_libinstall -so -a -C bfd libbfd ${STAGING_LIBDIR}/
|
||||
install -m 0644 ${S}/include/dis-asm.h ${STAGING_INCDIR}/
|
||||
install -m 0644 ${S}/include/symcat.h ${STAGING_INCDIR}/
|
||||
install -m 0644 ${S}/include/libiberty.h ${STAGING_INCDIR}/
|
||||
install -m 0644 ${S}/include/ansidecl.h ${STAGING_INCDIR}/
|
||||
install -m 0644 ${S}/include/bfdlink.h ${STAGING_INCDIR}/
|
||||
install -m 0644 bfd/bfd.h ${STAGING_INCDIR}/
|
||||
}
|
||||
|
||||
do_install () {
|
||||
autotools_do_install
|
||||
|
||||
# We don't really need these, so we'll remove them...
|
||||
rm -rf ${D}${libdir}/ldscripts
|
||||
|
||||
# Fix the /usr/${TARGET_SYS}/bin/* links
|
||||
for l in ${D}${prefix}/${TARGET_SYS}/bin/*; do
|
||||
rm -f $l
|
||||
ln -sf `echo ${prefix}/${TARGET_SYS}/bin \
|
||||
| tr -s / \
|
||||
| sed -e 's,^/,,' -e 's,[^/]*,..,g'`${bindir}/${TARGET_PREFIX}`basename $l` $l
|
||||
done
|
||||
|
||||
# Install the libiberty header
|
||||
install -d ${D}${includedir}
|
||||
install -m 644 ${S}/include/ansidecl.h ${D}${includedir}
|
||||
install -m 644 ${S}/include/libiberty.h ${D}${includedir}
|
||||
|
||||
cd ${D}${bindir}
|
||||
|
||||
# Symlinks for ease of running these on the native target
|
||||
for p in ${TARGET_SYS}-* ; do
|
||||
ln -sf $p `echo $p | sed -e s,${TARGET_SYS}-,,`
|
||||
done
|
||||
}
|
||||
@@ -1,124 +0,0 @@
|
||||
DESCRIPTION = "A GNU collection of binary utilities"
|
||||
HOMEPAGE = "http://www.gnu.org/software/binutils/"
|
||||
SECTION = "devel"
|
||||
LICENSE = "GPL"
|
||||
DEFAULT_PREFERENCE = "-1"
|
||||
|
||||
inherit autotools gettext
|
||||
|
||||
PACKAGES += "${PN}-symlinks"
|
||||
|
||||
FILES_${PN} = " \
|
||||
${bindir}/${TARGET_PREFIX}* \
|
||||
${libdir}/lib*-*.so \
|
||||
${prefix}/${TARGET_SYS}/bin/*"
|
||||
|
||||
FILES_${PN}-dev = " \
|
||||
${includedir} \
|
||||
${libdir}/*.a \
|
||||
${libdir}/*.la \
|
||||
${libdir}/libbfd.so \
|
||||
${libdir}/libopcodes.so"
|
||||
|
||||
FILES_${PN}-symlinks = " \
|
||||
${bindir}/addr2line \
|
||||
${bindir}/ar \
|
||||
${bindir}/as \
|
||||
${bindir}/c++filt \
|
||||
${bindir}/gprof \
|
||||
${bindir}/ld \
|
||||
${bindir}/nm \
|
||||
${bindir}/objcopy \
|
||||
${bindir}/objdump \
|
||||
${bindir}/ranlib \
|
||||
${bindir}/readelf \
|
||||
${bindir}/size \
|
||||
${bindir}/strings \
|
||||
${bindir}/strip"
|
||||
|
||||
SRC_URI = "\
|
||||
http://ftp.kernel.org/pub/linux/devel/binutils/binutils-${PV}.tar.bz2 \
|
||||
file://binutils-2.16.91.0.6-objcopy-rename-errorcode.patch;patch=1 \
|
||||
file://binutils-uclibc-100-uclibc-conf.patch;patch=1 \
|
||||
file://binutils-uclibc-300-001_ld_makefile_patch.patch;patch=1 \
|
||||
file://binutils-uclibc-300-006_better_file_error.patch;patch=1 \
|
||||
file://binutils-uclibc-300-012_check_ldrunpath_length.patch;patch=1 \
|
||||
file://binutils-uclibc-400-mips-ELF_MAXPAGESIZE-4K.patch;patch=1 \
|
||||
file://binutils-uclibc-702-binutils-skip-comments.patch;patch=1 \
|
||||
file://binutils-configure-texinfo-version.patch;patch=1"
|
||||
|
||||
S = "${WORKDIR}/binutils-${PV}"
|
||||
B = "${S}/build.${HOST_SYS}.${TARGET_SYS}"
|
||||
|
||||
EXTRA_OECONF = "--program-prefix=${TARGET_PREFIX} \
|
||||
--enable-shared"
|
||||
|
||||
# This is necessary due to a bug in the binutils Makefiles
|
||||
EXTRA_OEMAKE = "configure-build-libiberty all"
|
||||
|
||||
export AR = "${HOST_PREFIX}ar"
|
||||
export AS = "${HOST_PREFIX}as"
|
||||
export LD = "${HOST_PREFIX}ld"
|
||||
export NM = "${HOST_PREFIX}nm"
|
||||
export RANLIB = "${HOST_PREFIX}ranlib"
|
||||
export OBJCOPY = "${HOST_PREFIX}objcopy"
|
||||
export OBJDUMP = "${HOST_PREFIX}objdump"
|
||||
|
||||
export AR_FOR_TARGET = "${TARGET_PREFIX}ar"
|
||||
export AS_FOR_TARGET = "${TARGET_PREFIX}as"
|
||||
export LD_FOR_TARGET = "${TARGET_PREFIX}ld"
|
||||
export NM_FOR_TARGET = "${TARGET_PREFIX}nm"
|
||||
export RANLIB_FOR_TARGET = "${TARGET_PREFIX}ranlib"
|
||||
|
||||
export CC_FOR_HOST = "${CCACHE} ${HOST_PREFIX}gcc ${HOST_CC_ARCH}"
|
||||
export CXX_FOR_HOST = "${CCACHE} ${HOST_PREFIX}gcc ${HOST_CC_ARCH}"
|
||||
|
||||
export CC_FOR_BUILD = "${BUILD_CC}"
|
||||
export CPP_FOR_BUILD = "${BUILD_CPP}"
|
||||
export CFLAGS_FOR_BUILD = "${BUILD_CFLAGS}"
|
||||
|
||||
export CC = "${CCACHE} ${HOST_PREFIX}gcc ${HOST_CC_ARCH}"
|
||||
|
||||
do_configure () {
|
||||
(cd ${S}; gnu-configize) || die "Failed to run gnu-configize"
|
||||
oe_runconf
|
||||
}
|
||||
|
||||
do_stage () {
|
||||
oe_libinstall -so -a -C opcodes libopcodes ${STAGING_LIBDIR}/
|
||||
oe_libinstall -a -C libiberty libiberty ${STAGING_LIBDIR}/
|
||||
oe_libinstall -so -a -C bfd libbfd ${STAGING_LIBDIR}/
|
||||
install -m 0644 ${S}/include/dis-asm.h ${STAGING_INCDIR}/
|
||||
install -m 0644 ${S}/include/symcat.h ${STAGING_INCDIR}/
|
||||
install -m 0644 ${S}/include/libiberty.h ${STAGING_INCDIR}/
|
||||
install -m 0644 ${S}/include/ansidecl.h ${STAGING_INCDIR}/
|
||||
install -m 0644 ${S}/include/bfdlink.h ${STAGING_INCDIR}/
|
||||
install -m 0644 bfd/bfd.h ${STAGING_INCDIR}/
|
||||
}
|
||||
|
||||
do_install () {
|
||||
autotools_do_install
|
||||
|
||||
# We don't really need these, so we'll remove them...
|
||||
rm -rf ${D}${libdir}/ldscripts
|
||||
|
||||
# Fix the /usr/${TARGET_SYS}/bin/* links
|
||||
for l in ${D}${prefix}/${TARGET_SYS}/bin/*; do
|
||||
rm -f $l
|
||||
ln -sf `echo ${prefix}/${TARGET_SYS}/bin \
|
||||
| tr -s / \
|
||||
| sed -e 's,^/,,' -e 's,[^/]*,..,g'`${bindir}/${TARGET_PREFIX}`basename $l` $l
|
||||
done
|
||||
|
||||
# Install the libiberty header
|
||||
install -d ${D}${includedir}
|
||||
install -m 644 ${S}/include/ansidecl.h ${D}${includedir}
|
||||
install -m 644 ${S}/include/libiberty.h ${D}${includedir}
|
||||
|
||||
cd ${D}${bindir}
|
||||
|
||||
# Symlinks for ease of running these on the native target
|
||||
for p in ${TARGET_SYS}-* ; do
|
||||
ln -sf $p `echo $p | sed -e s,${TARGET_SYS}-,,`
|
||||
done
|
||||
}
|
||||
@@ -1,18 +0,0 @@
|
||||
require binutils.inc
|
||||
|
||||
PR = "r8"
|
||||
|
||||
SRC_URI = "\
|
||||
http://ftp.gnu.org/gnu/binutils/binutils-${PV}.tar.bz2 \
|
||||
file://ld_makefile.patch;patch=1 \
|
||||
file://better_file_error.patch;patch=1 \
|
||||
file://signed_char_fix.patch;patch=1 \
|
||||
file://binutils-2.16-objcopy-rename-errorcode.patch;patch=1 \
|
||||
file://binutils-100_cflags_for_build.patch;patch=1"
|
||||
|
||||
# uclibc patches
|
||||
SRC_URI += "file://binutils-2.16-linux-uclibc.patch;patch=1"
|
||||
|
||||
# thumb support patches
|
||||
SRC_URI += "file://binutils-2.16-thumb-trampoline.patch;patch=1"
|
||||
SRC_URI += "file://binutils-2.16-thumb-glue.patch;patch=1"
|
||||
@@ -1,13 +0,0 @@
|
||||
require binutils.inc
|
||||
|
||||
PR = "r1"
|
||||
|
||||
SRC_URI = "\
|
||||
http://www.kernel.org/pub/linux/devel/binutils/binutils-${PV}.tar.bz2 \
|
||||
file://binutils-2.16.91.0.6-objcopy-rename-errorcode.patch;patch=1 \
|
||||
file://binutils-uclibc-100-uclibc-conf.patch;patch=1 \
|
||||
file://110-arm-eabi-conf.patch;patch=1 \
|
||||
file://binutils-uclibc-300-001_ld_makefile_patch.patch;patch=1 \
|
||||
file://binutils-uclibc-300-006_better_file_error.patch;patch=1 \
|
||||
file://binutils-uclibc-300-012_check_ldrunpath_length.patch;patch=1 \
|
||||
"
|
||||
@@ -1,130 +0,0 @@
|
||||
DESCRIPTION = "A GNU collection of binary utilities"
|
||||
HOMEPAGE = "http://www.gnu.org/software/binutils/"
|
||||
SECTION = "devel"
|
||||
LICENSE = "GPL"
|
||||
DEFAULT_PREFERENCE = "-1"
|
||||
|
||||
BINV = "2.16"
|
||||
PV = "2.16+csl-arm-2005q3-2"
|
||||
|
||||
FILESDIR = "${FILE_DIRNAME}/binutils-${PV}"
|
||||
|
||||
S = "${WORKDIR}/binutils-2.17pre"
|
||||
|
||||
inherit autotools gettext
|
||||
|
||||
PACKAGES = "${PN} ${PN}-dev ${PN}-doc ${PN}-symlinks"
|
||||
|
||||
FILES_${PN} = " \
|
||||
${bindir}/${TARGET_PREFIX}* \
|
||||
${libdir}/lib*-*.so \
|
||||
${prefix}/${TARGET_SYS}/bin/*"
|
||||
|
||||
FILES_${PN}-dev = " \
|
||||
${includedir} \
|
||||
${libdir}/*.a \
|
||||
${libdir}/*.la \
|
||||
${libdir}/libbfd.so \
|
||||
${libdir}/libopcodes.so"
|
||||
|
||||
FILES_${PN}-symlinks = " \
|
||||
${bindir}/addr2line \
|
||||
${bindir}/ar \
|
||||
${bindir}/as \
|
||||
${bindir}/c++filt \
|
||||
${bindir}/gprof \
|
||||
${bindir}/ld \
|
||||
${bindir}/nm \
|
||||
${bindir}/objcopy \
|
||||
${bindir}/objdump \
|
||||
${bindir}/ranlib \
|
||||
${bindir}/readelf \
|
||||
${bindir}/size \
|
||||
${bindir}/strings \
|
||||
${bindir}/strip"
|
||||
|
||||
SRC_URI = "http://www.codesourcery.com/public/gnu_toolchain/arm-none-linux-gnueabi/arm-2005q3-2-arm-none-linux-gnueabi.src.tar.bz2 \
|
||||
file://binutils-configure-texinfo-version.patch;patch=1"
|
||||
|
||||
do_unpack2() {
|
||||
cd ${WORKDIR}
|
||||
pwd
|
||||
tar -xvjf ./arm-2005q3-2-arm-none-linux-gnueabi/binutils-2005q3-2.tar.bz2
|
||||
}
|
||||
|
||||
addtask unpack2 after do_unpack before do_patch
|
||||
|
||||
B = "${S}/build.${HOST_SYS}.${TARGET_SYS}"
|
||||
|
||||
EXTRA_OECONF = "--program-prefix=${TARGET_PREFIX} \
|
||||
--enable-shared"
|
||||
|
||||
# This is necessary due to a bug in the binutils Makefiles
|
||||
EXTRA_OEMAKE = "configure-build-libiberty all"
|
||||
|
||||
export AR = "${HOST_PREFIX}ar"
|
||||
export AS = "${HOST_PREFIX}as"
|
||||
export LD = "${HOST_PREFIX}ld"
|
||||
export NM = "${HOST_PREFIX}nm"
|
||||
export RANLIB = "${HOST_PREFIX}ranlib"
|
||||
export OBJCOPY = "${HOST_PREFIX}objcopy"
|
||||
export OBJDUMP = "${HOST_PREFIX}objdump"
|
||||
|
||||
export AR_FOR_TARGET = "${TARGET_PREFIX}ar"
|
||||
export AS_FOR_TARGET = "${TARGET_PREFIX}as"
|
||||
export LD_FOR_TARGET = "${TARGET_PREFIX}ld"
|
||||
export NM_FOR_TARGET = "${TARGET_PREFIX}nm"
|
||||
export RANLIB_FOR_TARGET = "${TARGET_PREFIX}ranlib"
|
||||
|
||||
export CC_FOR_HOST = "${CCACHE} ${HOST_PREFIX}gcc ${HOST_CC_ARCH}"
|
||||
export CXX_FOR_HOST = "${CCACHE} ${HOST_PREFIX}gcc ${HOST_CC_ARCH}"
|
||||
|
||||
export CC_FOR_BUILD = "${BUILD_CC}"
|
||||
export CPP_FOR_BUILD = "${BUILD_CPP}"
|
||||
export CFLAGS_FOR_BUILD = "${BUILD_CFLAGS}"
|
||||
|
||||
export CC = "${CCACHE} ${HOST_PREFIX}gcc ${HOST_CC_ARCH}"
|
||||
|
||||
do_configure () {
|
||||
(cd ${S}; gnu-configize) || die "Failed to run gnu-configize"
|
||||
oe_runconf
|
||||
}
|
||||
|
||||
do_stage () {
|
||||
oe_libinstall -so -a -C opcodes libopcodes ${STAGING_LIBDIR}/
|
||||
oe_libinstall -a -C libiberty libiberty ${STAGING_LIBDIR}/
|
||||
oe_libinstall -so -a -C bfd libbfd ${STAGING_LIBDIR}/
|
||||
install -m 0644 ${S}/include/dis-asm.h ${STAGING_INCDIR}/
|
||||
install -m 0644 ${S}/include/symcat.h ${STAGING_INCDIR}/
|
||||
install -m 0644 ${S}/include/libiberty.h ${STAGING_INCDIR}/
|
||||
install -m 0644 ${S}/include/ansidecl.h ${STAGING_INCDIR}/
|
||||
install -m 0644 ${S}/include/bfdlink.h ${STAGING_INCDIR}/
|
||||
install -m 0644 bfd/bfd.h ${STAGING_INCDIR}/
|
||||
}
|
||||
|
||||
do_install () {
|
||||
autotools_do_install
|
||||
|
||||
# We don't really need these, so we'll remove them...
|
||||
rm -rf ${D}${libdir}/ldscripts
|
||||
|
||||
# Fix the /usr/${TARGET_SYS}/bin/* links
|
||||
for l in ${D}${prefix}/${TARGET_SYS}/bin/*; do
|
||||
rm -f $l
|
||||
ln -sf `echo ${prefix}/${TARGET_SYS}/bin \
|
||||
| tr -s / \
|
||||
| sed -e 's,^/,,' -e 's,[^/]*,..,g'`${bindir}/${TARGET_PREFIX}`basename $l` $l
|
||||
done
|
||||
|
||||
# Install the libiberty header
|
||||
install -d ${D}${includedir}
|
||||
install -m 644 ${S}/include/ansidecl.h ${D}${includedir}
|
||||
install -m 644 ${S}/include/libiberty.h ${D}${includedir}
|
||||
|
||||
cd ${D}${bindir}
|
||||
|
||||
# Symlinks for ease of running these on the native target
|
||||
for p in ${TARGET_SYS}-* ; do
|
||||
ln -sf $p `echo $p | sed -e s,${TARGET_SYS}-,,`
|
||||
done
|
||||
}
|
||||
Reference in New Issue
Block a user