OpenPKG CVS Repository
http://cvs.openpkg.org/
____________________________________________________________________________
Server: cvs.openpkg.org Name: Ralf S. Engelschall
Root: /e/openpkg/cvs Email: [EMAIL PROTECTED]
Module: openpkg-src Date: 25-Nov-2004 11:55:26
Branch: HEAD Handle: 2004112510552500
Modified files:
openpkg-src/binutils binutils.patch binutils.spec
Log:
GNU binutils 2.15 segfaulted in the past when built with GNU gcc 3.4.0
under at least Sun Solaris. Now with gcc 3.4.3 this seems to be no
longer happening, so try again to upgrade to GNU binutils 2.15. This is
especially needed for supporting amd64-freebsd5.3.
Summary:
Revision Changes Path
1.10 +9 -76 openpkg-src/binutils/binutils.patch
1.54 +3 -4 openpkg-src/binutils/binutils.spec
____________________________________________________________________________
patch -p0 <<'@@ .'
Index: openpkg-src/binutils/binutils.patch
============================================================================
$ cvs diff -u -r1.9 -r1.10 binutils.patch
--- openpkg-src/binutils/binutils.patch 29 May 2004 07:22:12 -0000
1.9
+++ openpkg-src/binutils/binutils.patch 25 Nov 2004 10:55:25 -0000
1.10
@@ -2,9 +2,9 @@
This is similar to what the vendor ld(1) does on this platform.
Index: bfd/elf.c
---- bfd/elf.c.orig 2002-07-30 20:19:42.000000000 +0200
-+++ bfd/elf.c 2002-08-22 17:41:47.000000000 +0200
-@@ -4235,6 +4235,12 @@
+--- bfd/elf.c.orig 2004-05-17 21:35:57 +0200
++++ bfd/elf.c 2004-11-24 13:21:56 +0100
+@@ -4327,6 +4327,12 @@
else
i_ehdrp->e_type = ET_REL;
@@ -20,87 +20,20 @@
-----------------------------------------------------------------------------
-Fix the linker under Solaris/SPARC.
-
-Index: bfd/elf64-sparc.c
---- bfd/elf64-sparc.c.orig 2003-06-20 09:42:19.000000000 +0200
-+++ bfd/elf64-sparc.c 2003-06-20 09:42:40.000000000 +0200
-@@ -2684,7 +2684,7 @@
- overflows. We don't, but this breaks stabs debugging
- info, whose relocations are only 32-bits wide. Ignore
- overflows for discarded entries. */
-- if (r_type == R_SPARC_32
-+ if ((r_type == R_SPARC_32 || r_type == R_SPARC_DISP32)
- && _bfd_elf_section_offset (output_bfd, info, input_section,
- rel->r_offset) == (bfd_vma) -1)
- break;
-
------------------------------------------------------------------------------
-
-Support FreeBSD 4.10 by fixing platform detection.
+Support FreeBSD >= 4.10 by fixing platform detection.
Index: bfd/configure
---- bfd/configure.orig 2003-06-12 16:25:46.000000000 +0200
-+++ bfd/configure 2004-04-30 22:01:31.000000000 +0200
-@@ -5133,6 +5133,10 @@
- i[3456]86-*-bsdi)
+--- bfd/configure.orig 2004-05-17 21:35:57 +0200
++++ bfd/configure 2004-11-24 15:14:05 +0100
+@@ -5312,6 +5312,10 @@
+ i[3-7]86-*-bsdi)
COREFILE=
;;
+ i[3456]86-*-freebsd4.1[0-9]*)
+ COREFILE=''
+ TRAD_HEADER='"hosts/i386bsd.h"'
+ ;;
- i[3456]86-*-bsd* | i[34567]86-*-freebsd[123] |
i[34567]86-*-freebsd[123]\.* | i[34567]86-*-freebsd4\.[01234]* |
i[34567]86-*-freebsd*aout*)
+ i[3-7]86-*-bsd* | i[3-7]86-*-freebsd[123] | i[3-7]86-*-freebsd[123]\.* |
i[3-7]86-*-freebsd4\.[01234]* | i[3-7]86-*-freebsd*aout*)
COREFILE=trad-core.lo
TRAD_HEADER='"hosts/i386bsd.h"'
------------------------------------------------------------------------------
-
-Accept (and ignore) --as-needed/--no-as-needed options from GNU binutils
-2.15 in our GNU binutils 2.14 to resolve a chicken and egg problem under
-platforms (like Fedora Core 2) which already run GNU binutils 2.15: the
-vendor cc(1) knows that it has ld(1) from GNU binutils 2.15 and hence
-always uses the --as-needed option when calling ld(1). Unfortunately,
-between having built "binutils" and "gcc" packages, this will break
-OpenPKG because the vendor cc(1) would run the OpenPKG ld(1) with an
-option is (still) does not understand. The only workaround is to let our
-ld(1) accept and ignore this option. Once our cc(1) from "gcc" package
-is installed, the problem is gone, because our "gcc" package correctly
-detects that our ld(1) still does ot understand --as-needed.
-
-Index: ld/lexsup.c
---- ld/lexsup.c.orig 2003-03-31 20:12:52.000000000 +0200
-+++ ld/lexsup.c 2004-05-05 16:52:46.000000000 +0200
-@@ -112,7 +112,9 @@
- #define OPTION_SPLIT_BY_RELOC (OPTION_WARN_SECTION_ALIGN + 1)
- #define OPTION_SPLIT_BY_FILE (OPTION_SPLIT_BY_RELOC + 1)
- #define OPTION_WHOLE_ARCHIVE (OPTION_SPLIT_BY_FILE + 1)
--#define OPTION_WRAP (OPTION_WHOLE_ARCHIVE + 1)
-+#define OPTION_AS_NEEDED (OPTION_WHOLE_ARCHIVE + 1)
-+#define OPTION_NO_AS_NEEDED (OPTION_AS_NEEDED + 1)
-+#define OPTION_WRAP (OPTION_NO_AS_NEEDED + 1)
- #define OPTION_FORCE_EXE_SUFFIX (OPTION_WRAP + 1)
- #define OPTION_GC_SECTIONS (OPTION_FORCE_EXE_SUFFIX + 1)
- #define OPTION_NO_GC_SECTIONS (OPTION_GC_SECTIONS + 1)
-@@ -423,6 +425,10 @@
- TWO_DASHES },
- { {"whole-archive", no_argument, NULL, OPTION_WHOLE_ARCHIVE},
- '\0', NULL, N_("Include all objects from following archives"),
TWO_DASHES },
-+ { {"as-needed", no_argument, NULL, OPTION_AS_NEEDED},
-+ '\0', NULL, N_("Only set DT_NEEDED for following dynamic libs if
used"), TWO_DASHES },
-+ { {"no-as-needed", no_argument, NULL, OPTION_NO_AS_NEEDED},
-+ '\0', NULL, N_("Always set DT_NEEDED for following dynamic libs"),
TWO_DASHES },
- { {"wrap", required_argument, NULL, OPTION_WRAP},
- '\0', N_("SYMBOL"), N_("Use wrapper functions for SYMBOL"),
TWO_DASHES },
- { {"mpc860c0", optional_argument, NULL, OPTION_MPC860C0},
-@@ -823,6 +829,10 @@
- case OPTION_NO_WHOLE_ARCHIVE:
- whole_archive = FALSE;
- break;
-+ case OPTION_AS_NEEDED:
-+ case OPTION_NO_AS_NEEDED:
-+ einfo("%P: warning: options --as-needed and --no-as-needed still not
supported\n");
-+ break;
- case 'O':
- /* FIXME "-O<non-digits> <value>" used to set the address of
- section <non-digits>. Was this for compatibility with
@@ .
patch -p0 <<'@@ .'
Index: openpkg-src/binutils/binutils.spec
============================================================================
$ cvs diff -u -r1.53 -r1.54 binutils.spec
--- openpkg-src/binutils/binutils.spec 30 May 2004 07:29:30 -0000
1.53
+++ openpkg-src/binutils/binutils.spec 25 Nov 2004 10:55:25 -0000
1.54
@@ -33,8 +33,8 @@
Class: CORE
Group: Utility
License: GPL
-Version: 2.14
-Release: 20040530
+Version: 2.15
+Release: 20041125
# list of sources
Source0:
ftp://sources.redhat.com/pub/binutils/releases/binutils-%{version}.tar.bz2
@@ -63,10 +63,9 @@
%track
prog binutils = {
- comment = "rse: 2.15 is broken (segfaults on multiple platforms
once built with gcc 3.4.0)"
version = %{version}
url = ftp://sources.redhat.com/pub/binutils/releases/
- regex = binutils-(\d+\.(14|15\.\d+|1[6-9](\.\d+)?))\.tar\.bz2
+ regex = binutils-(__VER__)\.tar\.bz2
}
%prep
@@ .
______________________________________________________________________
The OpenPKG Project www.openpkg.org
CVS Repository Commit List [EMAIL PROTECTED]