From 98bf2ac3fdd6f7bcb6ce45c932fc13c07fecc03f Mon Sep 17 00:00:00 2001 From: root Date: Wed, 25 Apr 2012 00:01:35 +0000 Subject: Wed Apr 25 00:01:35 UTC 2012 --- testing/binutils/PKGBUILD | 14 ++++++++++---- testing/binutils/binutils-2.22-ld-13621.patch | 27 +++++++++++++++++++++++++++ 2 files changed, 37 insertions(+), 4 deletions(-) create mode 100644 testing/binutils/binutils-2.22-ld-13621.patch (limited to 'testing/binutils') 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 # 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 -- cgit v1.2.3-54-g00ecf