summaryrefslogtreecommitdiff
path: root/testing/binutils
diff options
context:
space:
mode:
authorroot <root@rshg054.dnsready.net>2012-04-25 00:01:35 +0000
committerroot <root@rshg054.dnsready.net>2012-04-25 00:01:35 +0000
commit98bf2ac3fdd6f7bcb6ce45c932fc13c07fecc03f (patch)
tree00d9cdbfdc8ef5d7a4a7159a8c6439008509e662 /testing/binutils
parent9988621f899d7d4ae5fd0a4a32a4ba3abc5a527d (diff)
Wed Apr 25 00:01:35 UTC 2012
Diffstat (limited to 'testing/binutils')
-rw-r--r--testing/binutils/PKGBUILD14
-rw-r--r--testing/binutils/binutils-2.22-ld-13621.patch27
2 files changed, 37 insertions, 4 deletions
diff --git a/testing/binutils/PKGBUILD b/testing/binutils/PKGBUILD
index 9f922516f..03c267fd6 100644
--- a/testing/binutils/PKGBUILD
+++ b/testing/binutils/PKGBUILD
@@ -1,11 +1,11 @@
-# $Id: PKGBUILD 154190 2012-03-24 08:47:35Z allan $
+# $Id: PKGBUILD 157082 2012-04-23 13:46:38Z allan $
# Maintainer: Allan McRae <allan@archlinux.org>
# toolchain build order: linux-api-headers->glibc->binutils->gcc->binutils->glibc
pkgname=binutils
pkgver=2.22
-pkgrel=5
+pkgrel=6
_date=20120323
pkgdesc="A set of programs to assemble and manipulate binary and object files"
arch=('i686' 'x86_64')
@@ -16,8 +16,10 @@ depends=('glibc>=2.15' 'zlib')
checkdepends=('dejagnu')
options=('!libtool' '!distcc' '!ccache')
install=binutils.install
-source=(ftp://ftp.archlinux.org/other/${pkgname}/${pkgname}-${pkgver}_${_date}.tar.bz2)
-md5sums=('de2ac4298732827f8af706fc24020330')
+source=(ftp://ftp.archlinux.org/other/${pkgname}/${pkgname}-${pkgver}_${_date}.tar.bz2
+ binutils-2.22-ld-13621.patch)
+md5sums=('de2ac4298732827f8af706fc24020330'
+ '86d9445914c9d51bfe575ecbac265be0')
mksource() {
mkdir ${pkgname}-${_date}
@@ -30,6 +32,10 @@ mksource() {
}
build() {
+ cd ${srcdir}/binutils
+ # http://sourceware.org/bugzilla/show_bug.cgi?id=13621
+ patch -p1 -i $srcdir/binutils-2.22-ld-13621.patch
+
cd ${srcdir}
mkdir binutils-build && cd binutils-build
diff --git a/testing/binutils/binutils-2.22-ld-13621.patch b/testing/binutils/binutils-2.22-ld-13621.patch
new file mode 100644
index 000000000..ffb2ab825
--- /dev/null
+++ b/testing/binutils/binutils-2.22-ld-13621.patch
@@ -0,0 +1,27 @@
+diff --git a/bfd/linker.c b/bfd/linker.c
+index c51c5df..0404474 100644
+--- a/bfd/linker.c
++++ b/bfd/linker.c
+@@ -3208,6 +3208,12 @@ fix_syms (struct bfd_link_hash_entry *h, void *data)
+ op = op1;
+ }
+
++ /* Refuse to choose a section for which we are out of bounds. */
++ /* ??? This may make most of the above moot. */
++ if (h->u.def.value < op->vma
++ || h->u.def.value > op->vma + op->size)
++ op = bfd_abs_section_ptr;
++
+ h->u.def.value -= op->vma;
+ h->u.def.section = op;
+ }
+index 95b7ef4..a9c05f9 100644
+--- a/ld/testsuite/ld-elf/warn2.d
++++ b/ld/testsuite/ld-elf/warn2.d
+@@ -13,5 +13,5 @@
+ # construct and that the symbol still appears as expected.
+
+ #...
+- +[0-9]+: +[0-9a-f]+ +20 +OBJECT +GLOBAL +DEFAULT +[1-9] Foo
++ +[0-9]+: +[0-9a-f]+ +20 +OBJECT +GLOBAL +DEFAULT +ABS Foo
+ #pass