mirror of
https://github.com/motioneye-project/motioneyeos.git
synced 2025-07-29 06:06:32 +00:00
Add support for soon to be released binutils-2.16 as well as
GCC-4.1.0. These tool versions are needed so that NPTL support can be added into uClibc. Backporting NPTL from GCC-4.1.0 into GCC-4.0 may be possible, but not recommended.
This commit is contained in:
parent
719bb81a16
commit
8a5d57bbb2
141
toolchain/binutils/2.16/100-uclibc-conf.patch
Normal file
141
toolchain/binutils/2.16/100-uclibc-conf.patch
Normal file
@ -0,0 +1,141 @@
|
|||||||
|
diff -ur binutils-2.16.90.0.1.orig/bfd/configure binutils-2.16.90.0.1/bfd/configure
|
||||||
|
--- binutils-2.16.90.0.1.orig/bfd/configure 2005-04-11 02:19:41.000000000 -0400
|
||||||
|
+++ binutils-2.16.90.0.1/bfd/configure 2005-04-11 02:19:54.000000000 -0400
|
||||||
|
@@ -3584,6 +3584,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]+$'
|
||||||
|
diff -ur binutils-2.16.90.0.1.orig/binutils/configure binutils-2.16.90.0.1/binutils/configure
|
||||||
|
--- binutils-2.16.90.0.1.orig/binutils/configure 2005-04-11 02:19:42.000000000 -0400
|
||||||
|
+++ binutils-2.16.90.0.1/binutils/configure 2005-04-11 02:19:54.000000000 -0400
|
||||||
|
@@ -1555,6 +1555,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]+$'
|
||||||
|
diff -ur binutils-2.16.90.0.1.orig/gas/configure binutils-2.16.90.0.1/gas/configure
|
||||||
|
--- binutils-2.16.90.0.1.orig/gas/configure 2005-04-11 02:19:42.000000000 -0400
|
||||||
|
+++ binutils-2.16.90.0.1/gas/configure 2005-04-11 02:19:54.000000000 -0400
|
||||||
|
@@ -3421,6 +3421,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]+$'
|
||||||
|
diff -ur binutils-2.16.90.0.1.orig/gprof/configure binutils-2.16.90.0.1/gprof/configure
|
||||||
|
--- binutils-2.16.90.0.1.orig/gprof/configure 2005-04-11 02:19:43.000000000 -0400
|
||||||
|
+++ binutils-2.16.90.0.1/gprof/configure 2005-04-11 02:19:54.000000000 -0400
|
||||||
|
@@ -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]+$'
|
||||||
|
diff -ur binutils-2.16.90.0.1.orig/ld/configure binutils-2.16.90.0.1/ld/configure
|
||||||
|
--- binutils-2.16.90.0.1.orig/ld/configure 2005-04-11 02:19:43.000000000 -0400
|
||||||
|
+++ binutils-2.16.90.0.1/ld/configure 2005-04-11 02:19:54.000000000 -0400
|
||||||
|
@@ -1581,6 +1581,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]+$'
|
||||||
|
diff -ur binutils-2.16.90.0.1.orig/libtool.m4 binutils-2.16.90.0.1/libtool.m4
|
||||||
|
--- binutils-2.16.90.0.1.orig/libtool.m4 2005-04-11 02:19:42.000000000 -0400
|
||||||
|
+++ binutils-2.16.90.0.1/libtool.m4 2005-04-11 02:19:54.000000000 -0400
|
||||||
|
@@ -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]+$']
|
||||||
|
diff -ur binutils-2.16.90.0.1.orig/ltconfig binutils-2.16.90.0.1/ltconfig
|
||||||
|
--- binutils-2.16.90.0.1.orig/ltconfig 2005-04-11 02:19:42.000000000 -0400
|
||||||
|
+++ binutils-2.16.90.0.1/ltconfig 2005-04-11 02:19:54.000000000 -0400
|
||||||
|
@@ -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
|
||||||
|
diff -ur binutils-2.16.90.0.1.orig/opcodes/configure binutils-2.16.90.0.1/opcodes/configure
|
||||||
|
--- binutils-2.16.90.0.1.orig/opcodes/configure 2005-04-11 02:19:44.000000000 -0400
|
||||||
|
+++ binutils-2.16.90.0.1/opcodes/configure 2005-04-11 02:19:54.000000000 -0400
|
||||||
|
@@ -3588,6 +3588,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]+$'
|
15
toolchain/binutils/2.16/101-uclibc_ld_configure.patch
Normal file
15
toolchain/binutils/2.16/101-uclibc_ld_configure.patch
Normal file
@ -0,0 +1,15 @@
|
|||||||
|
--- binutils-2.16/ld/configure.tgt 2005-04-22 21:53:27.895421000 -0500
|
||||||
|
+++ binutils-2.16-patched/ld/configure.tgt 2005-04-22 21:49:26.757507746 -0500
|
||||||
|
@@ -444,10 +444,10 @@
|
||||||
|
targ_extra_emuls="elf32ltsmipn32 elf32btsmip elf32ltsmip elf64btsmip elf64ltsmip"
|
||||||
|
targ_extra_libpath="elf32btsmip elf64btsmip"
|
||||||
|
;;
|
||||||
|
-mips*el-*-linux-gnu*) targ_emul=elf32ltsmip
|
||||||
|
+mips*el-*-linux-*) targ_emul=elf32ltsmip
|
||||||
|
targ_extra_emuls="elf32btsmip elf32ltsmipn32 elf64ltsmip elf32btsmipn32 elf64btsmip"
|
||||||
|
;;
|
||||||
|
-mips*-*-linux-gnu*) targ_emul=elf32btsmip
|
||||||
|
+mips*-*-linux-*) targ_emul=elf32btsmip
|
||||||
|
targ_extra_emuls="elf32ltsmip elf32btsmipn32 elf64btsmip elf32ltsmipn32 elf64ltsmip"
|
||||||
|
;;
|
||||||
|
mips*-*-lnews*) targ_emul=mipslnews ;;
|
15
toolchain/binutils/2.16/200-disable_werror_configure.patch
Normal file
15
toolchain/binutils/2.16/200-disable_werror_configure.patch
Normal file
@ -0,0 +1,15 @@
|
|||||||
|
--- binutils-2.16/configure 2005-04-03 09:16:17.000000000 -0500
|
||||||
|
+++ binutils-2.16-patched/configure 2005-04-22 20:58:35.377578864 -0500
|
||||||
|
@@ -4818,10 +4818,10 @@
|
||||||
|
# Change the default to "no" on release branches.
|
||||||
|
# Check whether --enable-werror or --disable-werror was given.
|
||||||
|
if test "${enable_werror+set}" = set; then
|
||||||
|
- enableval="$enable_werror"
|
||||||
|
+ enableval="no"
|
||||||
|
:
|
||||||
|
else
|
||||||
|
- enable_werror=yes
|
||||||
|
+ enable_werror=no
|
||||||
|
fi
|
||||||
|
|
||||||
|
case ${enable_werror} in
|
52
toolchain/binutils/2.16/300-001_ld_makefile_patch.patch
Normal file
52
toolchain/binutils/2.16/300-001_ld_makefile_patch.patch
Normal file
@ -0,0 +1,52 @@
|
|||||||
|
#!/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@
|
||||||
|
diff -urNad /home/james/debian/packages/binutils/binutils-2.14.90.0.6/ld/Makefile.am binutils-2.14.90.0.6/ld/Makefile.am
|
||||||
|
--- /home/james/debian/packages/binutils/binutils-2.14.90.0.6/ld/Makefile.am 2003-08-21 16:28:48.000000000 +0100
|
||||||
|
+++ binutils-2.14.90.0.6/ld/Makefile.am 2003-09-10 23:12:09.000000000 +0100
|
||||||
|
@@ -19,7 +19,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@
|
||||||
|
diff -urNad /home/james/debian/packages/binutils/binutils-2.14.90.0.6/ld/Makefile.in binutils-2.14.90.0.6/ld/Makefile.in
|
||||||
|
--- /home/james/debian/packages/binutils/binutils-2.14.90.0.6/ld/Makefile.in 2003-08-21 16:28:48.000000000 +0100
|
||||||
|
+++ binutils-2.14.90.0.6/ld/Makefile.in 2003-09-10 23:12:09.000000000 +0100
|
||||||
|
@@ -128,7 +128,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@
|
43
toolchain/binutils/2.16/300-006_better_file_error.patch
Normal file
43
toolchain/binutils/2.16/300-006_better_file_error.patch
Normal file
@ -0,0 +1,43 @@
|
|||||||
|
#!/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)
|
47
toolchain/binutils/2.16/300-012_check_ldrunpath_length.patch
Normal file
47
toolchain/binutils/2.16/300-012_check_ldrunpath_length.patch
Normal file
@ -0,0 +1,47 @@
|
|||||||
|
#!/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,
|
@ -0,0 +1,41 @@
|
|||||||
|
#! /bin/sh -e
|
||||||
|
## 120_mips_xgot_multigot_workaround.dpatch
|
||||||
|
##
|
||||||
|
## DP: Description: Make multigot/xgot handling mutually exclusive.
|
||||||
|
## DP: Author: Thiemo Seufer <seufer@csv.ica.uni-stuttgart.de>
|
||||||
|
## DP: Upstream status: Not submitted
|
||||||
|
## DP: Date: 2004-09-17
|
||||||
|
|
||||||
|
if [ $# -lt 1 ]; then
|
||||||
|
echo "`basename $0`: script expects -patch|-unpatch as argument" >&2
|
||||||
|
exit 1
|
||||||
|
fi
|
||||||
|
|
||||||
|
[ -f debian/patches/00patch-opts ] && . debian/patches/00patch-opts
|
||||||
|
patch_opts="${patch_opts:--f --no-backup-if-mismatch} ${2:+-d $2}"
|
||||||
|
|
||||||
|
case "$1" in
|
||||||
|
-patch) patch -p1 ${patch_opts} < $0;;
|
||||||
|
-unpatch) patch -R -p1 ${patch_opts} < $0;;
|
||||||
|
*)
|
||||||
|
echo "`basename $0`: script expects -patch|-unpatch as argument" >&2
|
||||||
|
exit 1;;
|
||||||
|
esac
|
||||||
|
|
||||||
|
exit 0
|
||||||
|
|
||||||
|
@DPATCH@
|
||||||
|
diff -urNad /home/james/debian/packages/binutils/binutils-2.15/bfd/elfxx-mips.c binutils-2.15/bfd/elfxx-mips.c
|
||||||
|
--- /home/james/debian/packages/binutils/binutils-2.15/bfd/elfxx-mips.c 2004-09-23 22:41:37.156466673 +0100
|
||||||
|
+++ binutils-2.15/bfd/elfxx-mips.c 2004-09-23 22:42:15.998362861 +0100
|
||||||
|
@@ -6594,7 +6594,9 @@
|
||||||
|
|
||||||
|
mips_elf_resolve_final_got_entries (g);
|
||||||
|
|
||||||
|
- if (s->size > MIPS_ELF_GOT_MAX_SIZE (output_bfd))
|
||||||
|
+ if (s->size > MIPS_ELF_GOT_MAX_SIZE (output_bfd)
|
||||||
|
+ && g->global_gotno <= (MIPS_ELF_GOT_MAX_SIZE (output_bfd)
|
||||||
|
+ / MIPS_ELF_GOT_SIZE (output_bfd)))
|
||||||
|
{
|
||||||
|
if (! mips_elf_multi_got (output_bfd, info, g, s, local_gotno))
|
||||||
|
return FALSE;
|
26
toolchain/binutils/2.16/400-mips-ELF_MAXPAGESIZE-4K.patch
Normal file
26
toolchain/binutils/2.16/400-mips-ELF_MAXPAGESIZE-4K.patch
Normal file
@ -0,0 +1,26 @@
|
|||||||
|
--- 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. */
|
93
toolchain/binutils/2.16/702-binutils-skip-comments.patch
Normal file
93
toolchain/binutils/2.16/702-binutils-skip-comments.patch
Normal file
@ -0,0 +1,93 @@
|
|||||||
|
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."
|
@ -44,6 +44,9 @@ choice
|
|||||||
config BR2_BINUTILS_VERSION_2_15_94_0_2_2
|
config BR2_BINUTILS_VERSION_2_15_94_0_2_2
|
||||||
bool "binutils 2.15.94.0.2.2"
|
bool "binutils 2.15.94.0.2.2"
|
||||||
|
|
||||||
|
config BR2_BINUTILS_VERSION_2_16
|
||||||
|
bool "binutils 2.16"
|
||||||
|
|
||||||
config BR2_BINUTILS_VERSION_2_16_90_0_1
|
config BR2_BINUTILS_VERSION_2_16_90_0_1
|
||||||
bool "binutils 2.16.90.0.1"
|
bool "binutils 2.16.90.0.1"
|
||||||
|
|
||||||
@ -64,4 +67,5 @@ config BR2_BINUTILS_VERSION
|
|||||||
default "2.15.92.0.2" if BR2_BINUTILS_VERSION_2_15_92_0_2
|
default "2.15.92.0.2" if BR2_BINUTILS_VERSION_2_15_92_0_2
|
||||||
default "2.15.94.0.1" if BR2_BINUTILS_VERSION_2_15_94_0_1
|
default "2.15.94.0.1" if BR2_BINUTILS_VERSION_2_15_94_0_1
|
||||||
default "2.15.94.0.2.2" if BR2_BINUTILS_VERSION_2_15_94_0_2_2
|
default "2.15.94.0.2.2" if BR2_BINUTILS_VERSION_2_15_94_0_2_2
|
||||||
|
default "2.16" if BR2_BINUTILS_VERSION_2_16
|
||||||
default "2.16.90.0.1" if BR2_BINUTILS_VERSION_2_16_90_0_1
|
default "2.16.90.0.1" if BR2_BINUTILS_VERSION_2_16_90_0_1
|
||||||
|
410
toolchain/gcc/4.1.0/100-uclibc-conf.patch
Normal file
410
toolchain/gcc/4.1.0/100-uclibc-conf.patch
Normal file
@ -0,0 +1,410 @@
|
|||||||
|
diff -urN gcc-4.1.0/boehm-gc/configure gcc-4.1.0-patched/boehm-gc/configure
|
||||||
|
--- gcc-4.1.0/boehm-gc/configure 2005-04-13 19:31:24.000000000 -0500
|
||||||
|
+++ gcc-4.1.0-patched/boehm-gc/configure 2005-04-25 20:47:19.919723167 -0500
|
||||||
|
@@ -4320,6 +4320,11 @@
|
||||||
|
lt_cv_deplibs_check_method=pass_all
|
||||||
|
;;
|
||||||
|
|
||||||
|
+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]+$'
|
||||||
|
diff -urN gcc-4.1.0/gcc/config/arm/linux-elf.h gcc-4.1.0-patched/gcc/config/arm/linux-elf.h
|
||||||
|
--- gcc-4.1.0/gcc/config/arm/linux-elf.h 2005-03-02 10:27:42.000000000 -0600
|
||||||
|
+++ gcc-4.1.0-patched/gcc/config/arm/linux-elf.h 2005-04-25 20:45:31.795953620 -0500
|
||||||
|
@@ -82,6 +82,18 @@
|
||||||
|
"%{!shared:crtend.o%s} %{shared:crtendS.o%s} crtn.o%s"
|
||||||
|
|
||||||
|
#undef LINK_SPEC
|
||||||
|
+#ifdef USE_UCLIBC
|
||||||
|
+#define LINK_SPEC "%{h*} %{version:-v} \
|
||||||
|
+ %{b} %{Wl,*:%*} \
|
||||||
|
+ %{static:-Bstatic} \
|
||||||
|
+ %{shared:-shared} \
|
||||||
|
+ %{symbolic:-Bsymbolic} \
|
||||||
|
+ %{rdynamic:-export-dynamic} \
|
||||||
|
+ %{!dynamic-linker:-dynamic-linker /lib/ld-uClibc.so.0} \
|
||||||
|
+ -X \
|
||||||
|
+ %{mbig-endian:-EB}" \
|
||||||
|
+ SUBTARGET_EXTRA_LINK_SPEC
|
||||||
|
+#else
|
||||||
|
#define LINK_SPEC "%{h*} %{version:-v} \
|
||||||
|
%{b} %{Wl,*:%*} \
|
||||||
|
%{static:-Bstatic} \
|
||||||
|
@@ -92,6 +104,7 @@
|
||||||
|
-X \
|
||||||
|
%{mbig-endian:-EB}" \
|
||||||
|
SUBTARGET_EXTRA_LINK_SPEC
|
||||||
|
+#endif
|
||||||
|
|
||||||
|
#define TARGET_OS_CPP_BUILTINS() \
|
||||||
|
do \
|
||||||
|
diff -urN gcc-4.1.0/gcc/config/cris/linux.h gcc-4.1.0-patched/gcc/config/cris/linux.h
|
||||||
|
--- gcc-4.1.0/gcc/config/cris/linux.h 2005-04-23 23:01:27.000000000 -0500
|
||||||
|
+++ gcc-4.1.0-patched/gcc/config/cris/linux.h 2005-04-25 20:45:31.796953451 -0500
|
||||||
|
@@ -73,6 +73,25 @@
|
||||||
|
#undef CRIS_DEFAULT_CPU_VERSION
|
||||||
|
#define CRIS_DEFAULT_CPU_VERSION CRIS_CPU_NG
|
||||||
|
|
||||||
|
+#ifdef USE_UCLIBC
|
||||||
|
+
|
||||||
|
+#undef CRIS_SUBTARGET_VERSION
|
||||||
|
+#define CRIS_SUBTARGET_VERSION " - cris-axis-linux-uclibc"
|
||||||
|
+
|
||||||
|
+#undef CRIS_LINK_SUBTARGET_SPEC
|
||||||
|
+#define CRIS_LINK_SUBTARGET_SPEC \
|
||||||
|
+ "-mcrislinux\
|
||||||
|
+ -rpath-link include/asm/../..%s\
|
||||||
|
+ %{shared} %{static}\
|
||||||
|
+ %{symbolic:-Bdynamic} %{shlib:-Bdynamic} %{static:-Bstatic}\
|
||||||
|
+ %{!shared: \
|
||||||
|
+ %{!static: \
|
||||||
|
+ %{rdynamic:-export-dynamic} \
|
||||||
|
+ %{!dynamic-linker:-dynamic-linker /lib/ld-uClibc.so.0}}} \
|
||||||
|
+ %{!r:%{O2|O3: --gc-sections}}"
|
||||||
|
+
|
||||||
|
+#else /* USE_UCLIBC */
|
||||||
|
+
|
||||||
|
#undef CRIS_SUBTARGET_VERSION
|
||||||
|
#define CRIS_SUBTARGET_VERSION " - cris-axis-linux-gnu"
|
||||||
|
|
||||||
|
@@ -87,6 +106,8 @@
|
||||||
|
%{!shared:%{!static:%{rdynamic:-export-dynamic}}}\
|
||||||
|
%{!r:%{O2|O3: --gc-sections}}"
|
||||||
|
|
||||||
|
+#endif /* USE_UCLIBC */
|
||||||
|
+
|
||||||
|
|
||||||
|
/* Node: Run-time Target */
|
||||||
|
|
||||||
|
diff -urN gcc-4.1.0/gcc/config/cris/t-linux-uclibc gcc-4.1.0-patched/gcc/config/cris/t-linux-uclibc
|
||||||
|
--- gcc-4.1.0/gcc/config/cris/t-linux-uclibc 1969-12-31 18:00:00.000000000 -0600
|
||||||
|
+++ gcc-4.1.0-patched/gcc/config/cris/t-linux-uclibc 2005-04-25 20:45:31.797953283 -0500
|
||||||
|
@@ -0,0 +1,3 @@
|
||||||
|
+T_CFLAGS = -DUSE_UCLIBC
|
||||||
|
+TARGET_LIBGCC2_CFLAGS += -fPIC
|
||||||
|
+CRTSTUFF_T_CFLAGS_S = $(TARGET_LIBGCC2_CFLAGS)
|
||||||
|
diff -urN gcc-4.1.0/gcc/config/i386/linux.h gcc-4.1.0-patched/gcc/config/i386/linux.h
|
||||||
|
--- gcc-4.1.0/gcc/config/i386/linux.h 2004-11-27 10:45:14.000000000 -0600
|
||||||
|
+++ gcc-4.1.0-patched/gcc/config/i386/linux.h 2005-04-25 21:21:05.828409973 -0500
|
||||||
|
@@ -104,8 +104,13 @@
|
||||||
|
|
||||||
|
/* If ELF is the default format, we should not use /lib/elf. */
|
||||||
|
|
||||||
|
+#if defined USE_UCLIBC
|
||||||
|
+#define LINK_EMULATION "elf_i386"
|
||||||
|
+#define DYNAMIC_LINKER "/lib/ld-uClibc.so.0"
|
||||||
|
+#else
|
||||||
|
#define LINK_EMULATION "elf_i386"
|
||||||
|
#define DYNAMIC_LINKER "/lib/ld-linux.so.2"
|
||||||
|
+#endif
|
||||||
|
|
||||||
|
#undef SUBTARGET_EXTRA_SPECS
|
||||||
|
#define SUBTARGET_EXTRA_SPECS \
|
||||||
|
@@ -144,6 +149,7 @@
|
||||||
|
} \
|
||||||
|
} while (0)
|
||||||
|
#endif
|
||||||
|
+#endif
|
||||||
|
|
||||||
|
/* Handle special EH pointer encodings. Absolute, pc-relative, and
|
||||||
|
indirect are handled automatically. */
|
||||||
|
diff -urN gcc-4.1.0/gcc/config/mips/linux.h gcc-4.1.0-patched/gcc/config/mips/linux.h
|
||||||
|
--- gcc-4.1.0/gcc/config/mips/linux.h 2005-01-25 20:04:46.000000000 -0600
|
||||||
|
+++ gcc-4.1.0-patched/gcc/config/mips/linux.h 2005-04-25 20:45:31.809951259 -0500
|
||||||
|
@@ -108,6 +108,17 @@
|
||||||
|
|
||||||
|
/* Borrowed from sparc/linux.h */
|
||||||
|
#undef LINK_SPEC
|
||||||
|
+#ifdef USE_UCLIBC
|
||||||
|
+#define LINK_SPEC \
|
||||||
|
+ "%(endian_spec) \
|
||||||
|
+ %{shared:-shared} \
|
||||||
|
+ %{!shared: \
|
||||||
|
+ %{!ibcs: \
|
||||||
|
+ %{!static: \
|
||||||
|
+ %{rdynamic:-export-dynamic} \
|
||||||
|
+ %{!dynamic-linker:-dynamic-linker /lib/ld-uClibc.so.0}} \
|
||||||
|
+ %{static:-static}}}"
|
||||||
|
+#else
|
||||||
|
#define LINK_SPEC \
|
||||||
|
"%(endian_spec) \
|
||||||
|
%{shared:-shared} \
|
||||||
|
@@ -117,6 +128,7 @@
|
||||||
|
%{rdynamic:-export-dynamic} \
|
||||||
|
%{!dynamic-linker:-dynamic-linker /lib/ld.so.1}} \
|
||||||
|
%{static:-static}}}"
|
||||||
|
+#endif
|
||||||
|
|
||||||
|
#undef SUBTARGET_ASM_SPEC
|
||||||
|
#define SUBTARGET_ASM_SPEC "%{mabi=64: -64} %{!mno-abicalls:-KPIC}"
|
||||||
|
diff -urN gcc-4.1.0/gcc/config/rs6000/linux.h gcc-4.1.0-patched/gcc/config/rs6000/linux.h
|
||||||
|
--- gcc-4.1.0/gcc/config/rs6000/linux.h 2004-12-01 20:21:28.000000000 -0600
|
||||||
|
+++ gcc-4.1.0-patched/gcc/config/rs6000/linux.h 2005-04-25 20:45:31.810951091 -0500
|
||||||
|
@@ -69,7 +69,11 @@
|
||||||
|
#define LINK_START_DEFAULT_SPEC "%(link_start_linux)"
|
||||||
|
|
||||||
|
#undef LINK_OS_DEFAULT_SPEC
|
||||||
|
+#ifdef USE_UCLIBC
|
||||||
|
+#define LINK_OS_DEFAULT_SPEC "%(link_os_linux_uclibc)"
|
||||||
|
+#else
|
||||||
|
#define LINK_OS_DEFAULT_SPEC "%(link_os_linux)"
|
||||||
|
+#endif
|
||||||
|
|
||||||
|
#define LINK_GCC_C_SEQUENCE_SPEC \
|
||||||
|
"%{static:--start-group} %G %L %{static:--end-group}%{!static:%G}"
|
||||||
|
diff -urN gcc-4.1.0/gcc/config/rs6000/sysv4.h gcc-4.1.0-patched/gcc/config/rs6000/sysv4.h
|
||||||
|
--- gcc-4.1.0/gcc/config/rs6000/sysv4.h 2005-04-13 19:26:50.000000000 -0500
|
||||||
|
+++ gcc-4.1.0-patched/gcc/config/rs6000/sysv4.h 2005-04-25 20:45:31.812950754 -0500
|
||||||
|
@@ -957,6 +957,7 @@
|
||||||
|
mcall-linux : %(link_os_linux) ; \
|
||||||
|
mcall-gnu : %(link_os_gnu) ; \
|
||||||
|
mcall-netbsd : %(link_os_netbsd) ; \
|
||||||
|
+ mcall-linux-uclibc : %(link_os_linux_uclibc); \
|
||||||
|
mcall-openbsd: %(link_os_openbsd) ; \
|
||||||
|
: %(link_os_default) }"
|
||||||
|
|
||||||
|
@@ -1135,6 +1136,10 @@
|
||||||
|
%{rdynamic:-export-dynamic} \
|
||||||
|
%{!dynamic-linker:-dynamic-linker /lib/ld.so.1}}}"
|
||||||
|
|
||||||
|
+#define LINK_OS_LINUX_UCLIBC_SPEC "-m elf32ppclinux %{!shared: %{!static: \
|
||||||
|
+ %{rdynamic:-export-dynamic} \
|
||||||
|
+ %{!dynamic-linker:-dynamic-linker /lib/ld-uClibc.so.0}}}"
|
||||||
|
+
|
||||||
|
#if defined(HAVE_LD_EH_FRAME_HDR)
|
||||||
|
# define LINK_EH_SPEC "%{!static:--eh-frame-hdr} "
|
||||||
|
#endif
|
||||||
|
@@ -1301,6 +1306,7 @@
|
||||||
|
{ "link_os_sim", LINK_OS_SIM_SPEC }, \
|
||||||
|
{ "link_os_freebsd", LINK_OS_FREEBSD_SPEC }, \
|
||||||
|
{ "link_os_linux", LINK_OS_LINUX_SPEC }, \
|
||||||
|
+ { "link_os_linux_uclibc", LINK_OS_LINUX_UCLIBC_SPEC }, \
|
||||||
|
{ "link_os_gnu", LINK_OS_GNU_SPEC }, \
|
||||||
|
{ "link_os_netbsd", LINK_OS_NETBSD_SPEC }, \
|
||||||
|
{ "link_os_openbsd", LINK_OS_OPENBSD_SPEC }, \
|
||||||
|
diff -urN gcc-4.1.0/gcc/config/sh/linux.h gcc-4.1.0-patched/gcc/config/sh/linux.h
|
||||||
|
--- gcc-4.1.0/gcc/config/sh/linux.h 2005-02-28 21:39:03.000000000 -0600
|
||||||
|
+++ gcc-4.1.0-patched/gcc/config/sh/linux.h 2005-04-25 20:45:31.814950416 -0500
|
||||||
|
@@ -55,12 +55,21 @@
|
||||||
|
#undef SUBTARGET_LINK_EMUL_SUFFIX
|
||||||
|
#define SUBTARGET_LINK_EMUL_SUFFIX "_linux"
|
||||||
|
#undef SUBTARGET_LINK_SPEC
|
||||||
|
+#ifdef USE_UCLIBC
|
||||||
|
+#define SUBTARGET_LINK_SPEC \
|
||||||
|
+ "%{shared:-shared} \
|
||||||
|
+ %{!static: \
|
||||||
|
+ %{rdynamic:-export-dynamic} \
|
||||||
|
+ %{!dynamic-linker:-dynamic-linker /lib/ld-uClibc.so.0}} \
|
||||||
|
+ %{static:-static}"
|
||||||
|
+#else
|
||||||
|
#define SUBTARGET_LINK_SPEC \
|
||||||
|
"%{shared:-shared} \
|
||||||
|
%{!static: \
|
||||||
|
%{rdynamic:-export-dynamic} \
|
||||||
|
%{!dynamic-linker:-dynamic-linker /lib/ld-linux.so.2}} \
|
||||||
|
%{static:-static}"
|
||||||
|
+#endif
|
||||||
|
|
||||||
|
/* Output assembler code to STREAM to call the profiler. */
|
||||||
|
|
||||||
|
diff -urN gcc-4.1.0/gcc/config/sh/t-linux-uclibc gcc-4.1.0-patched/gcc/config/sh/t-linux-uclibc
|
||||||
|
--- gcc-4.1.0/gcc/config/sh/t-linux-uclibc 1969-12-31 18:00:00.000000000 -0600
|
||||||
|
+++ gcc-4.1.0-patched/gcc/config/sh/t-linux-uclibc 2005-04-25 20:45:31.814950416 -0500
|
||||||
|
@@ -0,0 +1,13 @@
|
||||||
|
+T_CFLAGS = -DUSE_UCLIBC
|
||||||
|
+
|
||||||
|
+TARGET_LIBGCC2_CFLAGS = -fpic -DNO_FPSCR_VALUES
|
||||||
|
+LIB1ASMFUNCS_CACHE = _ic_invalidate
|
||||||
|
+
|
||||||
|
+LIB2FUNCS_EXTRA=
|
||||||
|
+
|
||||||
|
+MULTILIB_OPTIONS= $(MULTILIB_ENDIAN) m3e/m4
|
||||||
|
+MULTILIB_DIRNAMES=
|
||||||
|
+MULTILIB_MATCHES =
|
||||||
|
+MULTILIB_EXCEPTIONS=
|
||||||
|
+
|
||||||
|
+EXTRA_MULTILIB_PARTS= crtbegin.o crtend.o crtbeginS.o crtendS.o crtbeginT.o
|
||||||
|
diff -urN gcc-4.1.0/gcc/config/sh/t-sh64-uclibc gcc-4.1.0-patched/gcc/config/sh/t-sh64-uclibc
|
||||||
|
--- gcc-4.1.0/gcc/config/sh/t-sh64-uclibc 1969-12-31 18:00:00.000000000 -0600
|
||||||
|
+++ gcc-4.1.0-patched/gcc/config/sh/t-sh64-uclibc 2005-04-25 20:45:31.815950248 -0500
|
||||||
|
@@ -0,0 +1,13 @@
|
||||||
|
+EXTRA_MULTILIB_PARTS= crt1.o crti.o crtn.o crtbegin.o crtend.o
|
||||||
|
+
|
||||||
|
+LIB1ASMFUNCS = \
|
||||||
|
+ _sdivsi3 _sdivsi3_i4 _udivsi3 _udivsi3_i4 _set_fpscr \
|
||||||
|
+ _shcompact_call_trampoline _shcompact_return_trampoline \
|
||||||
|
+ _shcompact_incoming_args _ic_invalidate _nested_trampoline \
|
||||||
|
+ _push_pop_shmedia_regs \
|
||||||
|
+ _udivdi3 _divdi3 _umoddi3 _moddi3
|
||||||
|
+
|
||||||
|
+MULTILIB_OPTIONS = $(MULTILIB_ENDIAN) m5-32media-nofpu/m5-compact/m5-compact-nofpu/m5-64media/m5-64media-nofpu
|
||||||
|
+MULTILIB_DIRNAMES= $(MULTILIB_ENDIAN) nofpu compact nofpu/compact media64 nofpu/media64
|
||||||
|
+MULTILIB_MATCHES=
|
||||||
|
+MULTILIB_EXCEPTIONS=
|
||||||
|
diff -urN gcc-4.1.0/gcc/config/t-linux-uclibc gcc-4.1.0-patched/gcc/config/t-linux-uclibc
|
||||||
|
--- gcc-4.1.0/gcc/config/t-linux-uclibc 1969-12-31 18:00:00.000000000 -0600
|
||||||
|
+++ gcc-4.1.0-patched/gcc/config/t-linux-uclibc 2005-04-25 20:45:31.815950248 -0500
|
||||||
|
@@ -0,0 +1,15 @@
|
||||||
|
+T_CFLAGS = -DUSE_UCLIBC
|
||||||
|
+
|
||||||
|
+# Compile crtbeginS.o and crtendS.o with pic.
|
||||||
|
+CRTSTUFF_T_CFLAGS_S = $(CRTSTUFF_T_CFLAGS) -fPIC
|
||||||
|
+# Compile libgcc2.a with pic.
|
||||||
|
+TARGET_LIBGCC2_CFLAGS = -fPIC
|
||||||
|
+
|
||||||
|
+# Override t-slibgcc-elf-ver to export some libgcc symbols with
|
||||||
|
+# the symbol versions that glibc used.
|
||||||
|
+#SHLIB_MAPFILES += $(srcdir)/config/libgcc-glibc.ver
|
||||||
|
+
|
||||||
|
+# Use unwind-dw2-fde
|
||||||
|
+LIB2ADDEH = $(srcdir)/unwind-dw2.c $(srcdir)/unwind-dw2-fde.c \
|
||||||
|
+ $(srcdir)/unwind-sjlj.c $(srcdir)/gthr-gnat.c $(srcdir)/unwind-c.c
|
||||||
|
+LIB2ADDEHDEP = unwind.inc unwind-dw2-fde.h
|
||||||
|
diff -urN gcc-4.1.0/gcc/config.gcc gcc-4.1.0-patched/gcc/config.gcc
|
||||||
|
--- gcc-4.1.0/gcc/config.gcc 2005-04-23 23:01:23.000000000 -0500
|
||||||
|
+++ gcc-4.1.0-patched/gcc/config.gcc 2005-04-25 21:12:43.375594576 -0500
|
||||||
|
@@ -448,7 +448,14 @@
|
||||||
|
case ${enable_threads} in
|
||||||
|
"" | yes | posix) thread_file='posix' ;;
|
||||||
|
esac
|
||||||
|
- tmake_file="t-slibgcc-elf-ver t-linux"
|
||||||
|
+ case ${target} in
|
||||||
|
+ *-linux*uclibc*)
|
||||||
|
+ tmake_file="t-slibgcc-elf-ver t-linux-uclibc"
|
||||||
|
+ ;;
|
||||||
|
+ *)
|
||||||
|
+ tmake_file="t-slibgcc-elf-ver t-linux"
|
||||||
|
+ ;;
|
||||||
|
+ esac
|
||||||
|
;;
|
||||||
|
*-*-gnu*)
|
||||||
|
# On the Hurd, the setup is just about the same on
|
||||||
|
@@ -667,6 +674,12 @@
|
||||||
|
extra_parts=""
|
||||||
|
use_collect2=yes
|
||||||
|
;;
|
||||||
|
+arm*-*-linux-uclibc*) # ARM GNU/Linux with ELF - uClibc
|
||||||
|
+ tm_file="dbxelf.h elfos.h linux.h arm/elf.h arm/linux-gas.h arm/linux-elf.h arm/aout.h arm/arm.h"
|
||||||
|
+ tmake_file="t-slibgcc-elf-ver t-linux-uclibc arm/t-linux"
|
||||||
|
+ extra_parts="crtbegin.o crtbeginS.o crtend.o crtendS.o"
|
||||||
|
+ gnu_ld=yes
|
||||||
|
+ ;;
|
||||||
|
arm*-*-linux*) # ARM GNU/Linux with ELF
|
||||||
|
tm_file="dbxelf.h elfos.h linux.h arm/elf.h arm/linux-gas.h arm/linux-elf.h arm/aout.h arm/arm.h"
|
||||||
|
tmake_file="${tmake_file} arm/t-arm arm/t-linux"
|
||||||
|
@@ -765,6 +778,10 @@
|
||||||
|
gas=yes
|
||||||
|
extra_options="${extra_options} cris/elf.opt"
|
||||||
|
;;
|
||||||
|
+cris-*-linux-uclibc*)
|
||||||
|
+ tm_file="dbxelf.h elfos.h svr4.h ${tm_file} linux.h cris/linux.h"
|
||||||
|
+ tmake_file="cris/t-cris t-slibgcc-elf-ver cris/t-linux-uclibc"
|
||||||
|
+ ;;
|
||||||
|
cris-*-linux*)
|
||||||
|
tm_file="dbxelf.h elfos.h svr4.h ${tm_file} linux.h cris/linux.h"
|
||||||
|
# We need to avoid using t-linux, so override default tmake_file
|
||||||
|
@@ -1443,6 +1460,16 @@
|
||||||
|
gnu_ld=yes
|
||||||
|
gas=yes
|
||||||
|
;;
|
||||||
|
+mips*-*-linux-uclibc*) # Linux MIPS, either endian. uClibc
|
||||||
|
+ tm_file="dbxelf.h elfos.h svr4.h linux.h ${tm_file} mips/linux.h"
|
||||||
|
+ case ${target} in
|
||||||
|
+ mipsisa32*-*)
|
||||||
|
+ target_cpu_default="MASK_SOFT_FLOAT"
|
||||||
|
+ tm_defines="MIPS_ISA_DEFAULT=32"
|
||||||
|
+ ;;
|
||||||
|
+ esac
|
||||||
|
+ tmake_file="t-slibgcc-elf-ver t-linux-uclibc"
|
||||||
|
+ ;;
|
||||||
|
mips*-*-linux*) # Linux MIPS, either endian.
|
||||||
|
tm_file="dbxelf.h elfos.h svr4.h linux.h ${tm_file} mips/linux.h"
|
||||||
|
case ${target} in
|
||||||
|
@@ -1659,6 +1686,10 @@
|
||||||
|
tm_file="${tm_file} dbxelf.h elfos.h svr4.h freebsd-spec.h rs6000/sysv4.h rs6000/linux.h rs6000/linuxspe.h"
|
||||||
|
tmake_file="rs6000/t-fprules rs6000/t-ppcos ${tmake_file} rs6000/t-ppccomm"
|
||||||
|
;;
|
||||||
|
+powerpc-*-linux-uclibc*)
|
||||||
|
+ tm_file="${tm_file} dbxelf.h elfos.h svr4.h freebsd-spec.h rs6000/sysv4.h rs6000/linux.h"
|
||||||
|
+ tmake_file="rs6000/t-fprules rs6000/t-ppcos t-slibgcc-elf-ver t-linux-uclibc rs6000/t-ppccomm"
|
||||||
|
+ ;;
|
||||||
|
powerpc-*-linux*)
|
||||||
|
tm_file="${tm_file} dbxelf.h elfos.h svr4.h freebsd-spec.h rs6000/sysv4.h"
|
||||||
|
tmake_file="rs6000/t-fprules rs6000/t-ppcos ${tmake_file} rs6000/t-ppccomm"
|
||||||
|
@@ -1821,6 +1852,8 @@
|
||||||
|
esac
|
||||||
|
tm_file="${tm_file} sh/elf.h"
|
||||||
|
case ${target} in
|
||||||
|
+ sh*-*-linux-uclibc*) tmake_file="${tmake_file} t-linux-uclibc sh/t-linux-uclibc"
|
||||||
|
+ tm_file="${tm_file} linux.h sh/linux.h" ;;
|
||||||
|
sh*-*-linux*) tmake_file="${tmake_file} sh/t-linux"
|
||||||
|
tm_file="${tm_file} linux.h sh/linux.h" ;;
|
||||||
|
sh*-*-kaos*) tm_file="${tm_file} sh/embed-elf.h kaos.h sh/kaos-sh.h"
|
||||||
|
@@ -1840,6 +1873,11 @@
|
||||||
|
*-*-netbsd)
|
||||||
|
tmake_file="${tmake_file} sh/t-netbsd"
|
||||||
|
;;
|
||||||
|
+ sh64*-*-linux-uclibc*)
|
||||||
|
+ tmake_file="${tmake_file} sh/t-sh64-uclibc"
|
||||||
|
+ tm_file="${tm_file} sh/sh64.h"
|
||||||
|
+ extra_headers="shmedia.h ushmedia.h sshmedia.h"
|
||||||
|
+ ;;
|
||||||
|
sh64*-*-linux*)
|
||||||
|
tmake_file="${tmake_file} sh/t-sh64 sh/t-linux64"
|
||||||
|
tm_file="${tm_file} sh/sh64.h"
|
||||||
|
diff -urN gcc-4.1.0/libtool.m4 gcc-4.1.0-patched/libtool.m4
|
||||||
|
--- gcc-4.1.0/libtool.m4 2005-04-13 19:31:24.000000000 -0500
|
||||||
|
+++ gcc-4.1.0-patched/libtool.m4 2005-04-25 20:47:51.679369687 -0500
|
||||||
|
@@ -743,6 +743,11 @@
|
||||||
|
lt_cv_deplibs_check_method=pass_all
|
||||||
|
;;
|
||||||
|
|
||||||
|
+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]+$']
|
||||||
|
diff -urN gcc-4.1.0/ltconfig gcc-4.1.0-patched/ltconfig
|
||||||
|
--- gcc-4.1.0/ltconfig 2004-10-02 11:33:06.000000000 -0500
|
||||||
|
+++ gcc-4.1.0-patched/ltconfig 2005-04-25 20:45:31.836946707 -0500
|
||||||
|
@@ -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
|
||||||
|
@@ -1273,6 +1274,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
|
3213
toolchain/gcc/4.1.0/200-uclibc-locale.patch
Normal file
3213
toolchain/gcc/4.1.0/200-uclibc-locale.patch
Normal file
File diff suppressed because it is too large
Load Diff
46
toolchain/gcc/4.1.0/300-libstdc++-pic.patch
Normal file
46
toolchain/gcc/4.1.0/300-libstdc++-pic.patch
Normal file
@ -0,0 +1,46 @@
|
|||||||
|
# DP: Build and install libstdc++_pic.a library.
|
||||||
|
|
||||||
|
--- gcc-4.1.0/libstdc++-v3/src/Makefile.am 2004-11-15 17:33:05.000000000 -0600
|
||||||
|
+++ gcc-4.1.0-patched/libstdc++-v3/src/Makefile.am 2005-04-25 20:05:59.186930896 -0500
|
||||||
|
@@ -214,6 +214,10 @@
|
||||||
|
$(OPT_LDFLAGS) $(SECTION_LDFLAGS) $(AM_CXXFLAGS) $(LDFLAGS) -o $@
|
||||||
|
|
||||||
|
|
||||||
|
+install-exec-local:
|
||||||
|
+ $(AR) cru libstdc++_pic.a .libs/*.o $(top_builddir)/libsupc++/*.o
|
||||||
|
+ $(INSTALL_DATA) libstdc++_pic.a $(DESTDIR)$(toolexeclibdir)
|
||||||
|
+
|
||||||
|
# Added bits to build debug library.
|
||||||
|
if GLIBCXX_BUILD_DEBUG
|
||||||
|
all-local: build_debug
|
||||||
|
--- gcc-4.1.0/libstdc++-v3/src/Makefile.in 2005-04-11 19:13:08.000000000 -0500
|
||||||
|
+++ gcc-4.1.0-patched/libstdc++-v3/src/Makefile.in 2005-04-25 20:12:33.284316275 -0500
|
||||||
|
@@ -627,7 +627,7 @@
|
||||||
|
|
||||||
|
install-data-am: install-data-local
|
||||||
|
|
||||||
|
-install-exec-am: install-toolexeclibLTLIBRARIES
|
||||||
|
+install-exec-am: install-toolexeclibLTLIBRARIES install-exec-local
|
||||||
|
|
||||||
|
install-info: install-info-am
|
||||||
|
|
||||||
|
@@ -660,6 +660,7 @@
|
||||||
|
distclean-libtool distclean-tags distdir dvi dvi-am html \
|
||||||
|
html-am info info-am install install-am install-data \
|
||||||
|
install-data-am install-data-local install-exec \
|
||||||
|
+ install-exec-local \
|
||||||
|
install-exec-am install-info install-info-am install-man \
|
||||||
|
install-strip install-toolexeclibLTLIBRARIES installcheck \
|
||||||
|
installcheck-am installdirs maintainer-clean \
|
||||||
|
@@ -745,6 +746,11 @@
|
||||||
|
install_debug:
|
||||||
|
(cd ${debugdir} && $(MAKE) \
|
||||||
|
toolexeclibdir=$(glibcxx_toolexeclibdir)/debug install)
|
||||||
|
+
|
||||||
|
+install-exec-local:
|
||||||
|
+ $(AR) cru libstdc++_pic.a .libs/*.o $(top_builddir)/libsupc++/*.o
|
||||||
|
+ $(INSTALL_DATA) libstdc++_pic.a $(DESTDIR)$(toolexeclibdir)
|
||||||
|
+
|
||||||
|
# Tell versions [3.59,3.63) of GNU make to not export all variables.
|
||||||
|
# Otherwise a system limit (for SysV at least) may be exceeded.
|
||||||
|
.NOEXPORT:
|
20
toolchain/gcc/4.1.0/602-sdk-libstdc++-includes.patch
Normal file
20
toolchain/gcc/4.1.0/602-sdk-libstdc++-includes.patch
Normal file
@ -0,0 +1,20 @@
|
|||||||
|
--- gcc-4.1.0/libstdc++-v3/fragment.am 2005-03-21 11:40:14.000000000 -0600
|
||||||
|
+++ gcc-4.1.0-patched/libstdc++-v3/fragment.am 2005-04-25 20:14:39.856251785 -0500
|
||||||
|
@@ -21,5 +21,5 @@
|
||||||
|
$(WARN_FLAGS) $(WERROR) -fdiagnostics-show-location=once
|
||||||
|
|
||||||
|
# -I/-D flags to pass when compiling.
|
||||||
|
-AM_CPPFLAGS = $(GLIBCXX_INCLUDES)
|
||||||
|
+AM_CPPFLAGS = $(GLIBCXX_INCLUDES) -I$(toplevel_srcdir)/include
|
||||||
|
|
||||||
|
--- gcc-4.1.0/libstdc++-v3/libmath/Makefile.am 2005-03-21 11:40:18.000000000 -0600
|
||||||
|
+++ gcc-4.1.0-patched/libstdc++-v3/libmath/Makefile.am 2005-04-25 20:14:39.682280735 -0500
|
||||||
|
@@ -35,7 +35,7 @@
|
||||||
|
|
||||||
|
libmath_la_SOURCES = stubs.c
|
||||||
|
|
||||||
|
-AM_CPPFLAGS = $(CANADIAN_INCLUDES)
|
||||||
|
+AM_CPPFLAGS = $(CANADIAN_INCLUDES) -I$(toplevel_srcdir)/include
|
||||||
|
|
||||||
|
# Only compiling "C" sources in this directory.
|
||||||
|
LIBTOOL = @LIBTOOL@ --tag CC
|
@ -35,6 +35,9 @@ choice
|
|||||||
config BR2_GCC_VERSION_3_4_3
|
config BR2_GCC_VERSION_3_4_3
|
||||||
bool "gcc 3.4.3"
|
bool "gcc 3.4.3"
|
||||||
|
|
||||||
|
config BR2_GCC_VERSION_4_1_0
|
||||||
|
bool "gcc 4.1.0"
|
||||||
|
|
||||||
endchoice
|
endchoice
|
||||||
|
|
||||||
config BR2_GCC_VERSION
|
config BR2_GCC_VERSION
|
||||||
@ -47,6 +50,7 @@ config BR2_GCC_VERSION
|
|||||||
default "3.4.1" if BR2_GCC_VERSION_3_4_1
|
default "3.4.1" if BR2_GCC_VERSION_3_4_1
|
||||||
default "3.4.2" if BR2_GCC_VERSION_3_4_2
|
default "3.4.2" if BR2_GCC_VERSION_3_4_2
|
||||||
default "3.4.3" if BR2_GCC_VERSION_3_4_3
|
default "3.4.3" if BR2_GCC_VERSION_3_4_3
|
||||||
|
default "4.1.0" if BR2_GCC_VERSION_4_1_0
|
||||||
|
|
||||||
|
|
||||||
config BR2_GCC_USE_SJLJ_EXCEPTIONS
|
config BR2_GCC_USE_SJLJ_EXCEPTIONS
|
||||||
|
Loading…
x
Reference in New Issue
Block a user