Date: Monday, May 2, 2016 @ 13:56:00 Author: allan Revision: 266748 archrelease: copy trunk to staging-i686, staging-x86_64
Added: binutils/repos/staging-i686/ binutils/repos/staging-i686/PKGBUILD (from rev 266747, binutils/trunk/PKGBUILD) binutils/repos/staging-i686/binutils-e9c1bdad.patch (from rev 266747, binutils/trunk/binutils-e9c1bdad.patch) binutils/repos/staging-x86_64/ binutils/repos/staging-x86_64/PKGBUILD (from rev 266747, binutils/trunk/PKGBUILD) binutils/repos/staging-x86_64/binutils-e9c1bdad.patch (from rev 266747, binutils/trunk/binutils-e9c1bdad.patch) ----------------------------------------+ staging-i686/PKGBUILD | 69 +++++++++++++++++++++++++++ staging-i686/binutils-e9c1bdad.patch | 78 +++++++++++++++++++++++++++++++ staging-x86_64/PKGBUILD | 69 +++++++++++++++++++++++++++ staging-x86_64/binutils-e9c1bdad.patch | 78 +++++++++++++++++++++++++++++++ 4 files changed, 294 insertions(+) Copied: binutils/repos/staging-i686/PKGBUILD (from rev 266747, binutils/trunk/PKGBUILD) =================================================================== --- staging-i686/PKGBUILD (rev 0) +++ staging-i686/PKGBUILD 2016-05-02 11:56:00 UTC (rev 266748) @@ -0,0 +1,69 @@ +# $Id$ +# Maintainer: Allan McRae <al...@archlinux.org> + +# toolchain build order: linux-api-headers->glibc->binutils->gcc->binutils->glibc + +pkgname=binutils +pkgver=2.26 +pkgrel=4 +_commit=43e2c3de +pkgdesc="A set of programs to assemble and manipulate binary and object files" +arch=('i686' 'x86_64') +url="http://www.gnu.org/software/binutils/" +license=('GPL') +groups=('base-devel') +depends=('glibc>=2.23' 'zlib') +makedepends=('git') +checkdepends=('dejagnu' 'bc') +conflicts=('binutils-multilib') +replaces=('binutils-multilib') +options=('staticlibs' '!distcc' '!ccache') +source=(git://sourceware.org/git/binutils-gdb.git#commit=${_commit}) +md5sums=('SKIP') + +prepare() { + cd binutils-gdb + + # hack! - libiberty configure tests for header files using "$CPP $CPPFLAGS" + sed -i "/ac_cpp=/s/\$CPPFLAGS/\$CPPFLAGS -O2/" libiberty/configure + + mkdir ${srcdir}/binutils-build +} + +build() { + cd binutils-build + + ../binutils-gdb/configure --prefix=/usr \ + --with-lib-path=/usr/lib:/usr/local/lib \ + --with-bugurl=https://bugs.archlinux.org/ \ + --enable-threads --enable-shared --with-pic \ + --enable-ld=default --enable-gold --enable-plugins \ + --enable-deterministic-archives \ + --disable-werror --disable-gdb + + # check the host environment and makes sure all the necessary tools are available + make configure-host + + make tooldir=/usr +} + +check() { + cd binutils-build + + # unset LDFLAGS as testsuite makes assumptions about which ones are active + # ignore failures in gold testsuite... + make -k LDFLAGS="" check || true +} + +package() { + cd binutils-build + make prefix=${pkgdir}/usr tooldir=${pkgdir}/usr install + + # Remove unwanted files + rm ${pkgdir}/usr/share/man/man1/{dlltool,nlmconv,windres,windmc}* + + # No shared linking to these files outside binutils + rm ${pkgdir}/usr/lib/lib{bfd,opcodes}.so + echo "INPUT ( /usr/lib/libbfd.a -liberty -lz -ldl )" > "$pkgdir"/usr/lib/libbfd.so + echo "INPUT ( /usr/lib/libopcodes.a -lbfd )" > "$pkgdir"/usr/lib/libopcodes.so +} Copied: binutils/repos/staging-i686/binutils-e9c1bdad.patch (from rev 266747, binutils/trunk/binutils-e9c1bdad.patch) =================================================================== --- staging-i686/binutils-e9c1bdad.patch (rev 0) +++ staging-i686/binutils-e9c1bdad.patch 2016-05-02 11:56:00 UTC (rev 266748) @@ -0,0 +1,78 @@ +diff --git a/gold/layout.cc b/gold/layout.cc +index bcdaac8..7836640 100644 +--- a/gold/layout.cc ++++ b/gold/layout.cc +@@ -4873,7 +4873,8 @@ Layout::finish_dynamic_section(const Input_objects* input_objects, + flags |= elfcpp::DF_STATIC_TLS; + if (parameters->options().origin()) + flags |= elfcpp::DF_ORIGIN; +- if (parameters->options().Bsymbolic()) ++ if (parameters->options().Bsymbolic() ++ && !parameters->options().have_dynamic_list()) + { + flags |= elfcpp::DF_SYMBOLIC; + // Add DT_SYMBOLIC for compatibility with older loaders. +diff --git a/gold/options.cc b/gold/options.cc +index 7eb8f27..7f1f69e 100644 +--- a/gold/options.cc ++++ b/gold/options.cc +@@ -1200,13 +1200,6 @@ General_options::finalize() + // in the path, as appropriate. + this->add_sysroot(); + +- // --dynamic-list overrides -Bsymbolic and -Bsymbolic-functions. +- if (this->have_dynamic_list()) +- { +- this->set_Bsymbolic(false); +- this->set_Bsymbolic_functions(false); +- } +- + // Now that we've normalized the options, check for contradictory ones. + if (this->shared() && this->is_static()) + gold_fatal(_("-shared and -static are incompatible")); +diff --git a/gold/symtab.h b/gold/symtab.h +index aa0cb68..9413360 100644 +--- a/gold/symtab.h ++++ b/gold/symtab.h +@@ -604,10 +604,8 @@ class Symbol + if (parameters->options().in_dynamic_list(this->name())) + return true; + +- // If the user used -Bsymbolic or provided a --dynamic-list script, +- // then nothing (else) is preemptible. +- if (parameters->options().Bsymbolic() +- || parameters->options().have_dynamic_list()) ++ // If the user used -Bsymbolic, then nothing (else) is preemptible. ++ if (parameters->options().Bsymbolic()) + return false; + + // If the user used -Bsymbolic-functions, then functions are not +diff --git a/gold/testsuite/Makefile.am b/gold/testsuite/Makefile.am +index f767c21..7b73f9d 100644 +--- a/gold/testsuite/Makefile.am ++++ b/gold/testsuite/Makefile.am +@@ -1518,7 +1518,7 @@ dynamic_list_lib1.o: dynamic_list_lib1.cc + $(CXXCOMPILE) -c -fpic -o $@ $< + + dynamic_list_lib2.so: gcctestdir/ld dynamic_list_lib2.o $(srcdir)/dynamic_list_2.t +- $(CXXLINK) -Bgcctestdir/ -shared -Wl,--dynamic-list,$(srcdir)/dynamic_list_2.t dynamic_list_lib2.o ++ $(CXXLINK) -Bgcctestdir/ -shared -Wl,-Bsymbolic-functions -Wl,--dynamic-list,$(srcdir)/dynamic_list_2.t dynamic_list_lib2.o + dynamic_list_lib2.o: dynamic_list_lib2.cc + $(CXXCOMPILE) -c -fpic -o $@ $< + +diff --git a/gold/testsuite/Makefile.in b/gold/testsuite/Makefile.in +index 217e472..b4ae3fd 100644 +--- a/gold/testsuite/Makefile.in ++++ b/gold/testsuite/Makefile.in +@@ -5319,7 +5319,7 @@ uninstall-am: + @GCC_TRUE@@NATIVE_LINKER_TRUE@ $(CXXCOMPILE) -c -fpic -o $@ $< + + @GCC_TRUE@@NATIVE_LINKER_TRUE@dynamic_list_lib2.so: gcctestdir/ld dynamic_list_lib2.o $(srcdir)/dynamic_list_2.t +-@GCC_TRUE@@NATIVE_LINKER_TRUE@ $(CXXLINK) -Bgcctestdir/ -shared -Wl,--dynamic-list,$(srcdir)/dynamic_list_2.t dynamic_list_lib2.o ++@GCC_TRUE@@NATIVE_LINKER_TRUE@ $(CXXLINK) -Bgcctestdir/ -shared -Wl,-Bsymbolic-functions -Wl,--dynamic-list,$(srcdir)/dynamic_list_2.t dynamic_list_lib2.o + @GCC_TRUE@@NATIVE_LINKER_TRUE@dynamic_list_lib2.o: dynamic_list_lib2.cc + @GCC_TRUE@@NATIVE_LINKER_TRUE@ $(CXXCOMPILE) -c -fpic -o $@ $< + +-- +1.9.4 + Copied: binutils/repos/staging-x86_64/PKGBUILD (from rev 266747, binutils/trunk/PKGBUILD) =================================================================== --- staging-x86_64/PKGBUILD (rev 0) +++ staging-x86_64/PKGBUILD 2016-05-02 11:56:00 UTC (rev 266748) @@ -0,0 +1,69 @@ +# $Id$ +# Maintainer: Allan McRae <al...@archlinux.org> + +# toolchain build order: linux-api-headers->glibc->binutils->gcc->binutils->glibc + +pkgname=binutils +pkgver=2.26 +pkgrel=4 +_commit=43e2c3de +pkgdesc="A set of programs to assemble and manipulate binary and object files" +arch=('i686' 'x86_64') +url="http://www.gnu.org/software/binutils/" +license=('GPL') +groups=('base-devel') +depends=('glibc>=2.23' 'zlib') +makedepends=('git') +checkdepends=('dejagnu' 'bc') +conflicts=('binutils-multilib') +replaces=('binutils-multilib') +options=('staticlibs' '!distcc' '!ccache') +source=(git://sourceware.org/git/binutils-gdb.git#commit=${_commit}) +md5sums=('SKIP') + +prepare() { + cd binutils-gdb + + # hack! - libiberty configure tests for header files using "$CPP $CPPFLAGS" + sed -i "/ac_cpp=/s/\$CPPFLAGS/\$CPPFLAGS -O2/" libiberty/configure + + mkdir ${srcdir}/binutils-build +} + +build() { + cd binutils-build + + ../binutils-gdb/configure --prefix=/usr \ + --with-lib-path=/usr/lib:/usr/local/lib \ + --with-bugurl=https://bugs.archlinux.org/ \ + --enable-threads --enable-shared --with-pic \ + --enable-ld=default --enable-gold --enable-plugins \ + --enable-deterministic-archives \ + --disable-werror --disable-gdb + + # check the host environment and makes sure all the necessary tools are available + make configure-host + + make tooldir=/usr +} + +check() { + cd binutils-build + + # unset LDFLAGS as testsuite makes assumptions about which ones are active + # ignore failures in gold testsuite... + make -k LDFLAGS="" check || true +} + +package() { + cd binutils-build + make prefix=${pkgdir}/usr tooldir=${pkgdir}/usr install + + # Remove unwanted files + rm ${pkgdir}/usr/share/man/man1/{dlltool,nlmconv,windres,windmc}* + + # No shared linking to these files outside binutils + rm ${pkgdir}/usr/lib/lib{bfd,opcodes}.so + echo "INPUT ( /usr/lib/libbfd.a -liberty -lz -ldl )" > "$pkgdir"/usr/lib/libbfd.so + echo "INPUT ( /usr/lib/libopcodes.a -lbfd )" > "$pkgdir"/usr/lib/libopcodes.so +} Copied: binutils/repos/staging-x86_64/binutils-e9c1bdad.patch (from rev 266747, binutils/trunk/binutils-e9c1bdad.patch) =================================================================== --- staging-x86_64/binutils-e9c1bdad.patch (rev 0) +++ staging-x86_64/binutils-e9c1bdad.patch 2016-05-02 11:56:00 UTC (rev 266748) @@ -0,0 +1,78 @@ +diff --git a/gold/layout.cc b/gold/layout.cc +index bcdaac8..7836640 100644 +--- a/gold/layout.cc ++++ b/gold/layout.cc +@@ -4873,7 +4873,8 @@ Layout::finish_dynamic_section(const Input_objects* input_objects, + flags |= elfcpp::DF_STATIC_TLS; + if (parameters->options().origin()) + flags |= elfcpp::DF_ORIGIN; +- if (parameters->options().Bsymbolic()) ++ if (parameters->options().Bsymbolic() ++ && !parameters->options().have_dynamic_list()) + { + flags |= elfcpp::DF_SYMBOLIC; + // Add DT_SYMBOLIC for compatibility with older loaders. +diff --git a/gold/options.cc b/gold/options.cc +index 7eb8f27..7f1f69e 100644 +--- a/gold/options.cc ++++ b/gold/options.cc +@@ -1200,13 +1200,6 @@ General_options::finalize() + // in the path, as appropriate. + this->add_sysroot(); + +- // --dynamic-list overrides -Bsymbolic and -Bsymbolic-functions. +- if (this->have_dynamic_list()) +- { +- this->set_Bsymbolic(false); +- this->set_Bsymbolic_functions(false); +- } +- + // Now that we've normalized the options, check for contradictory ones. + if (this->shared() && this->is_static()) + gold_fatal(_("-shared and -static are incompatible")); +diff --git a/gold/symtab.h b/gold/symtab.h +index aa0cb68..9413360 100644 +--- a/gold/symtab.h ++++ b/gold/symtab.h +@@ -604,10 +604,8 @@ class Symbol + if (parameters->options().in_dynamic_list(this->name())) + return true; + +- // If the user used -Bsymbolic or provided a --dynamic-list script, +- // then nothing (else) is preemptible. +- if (parameters->options().Bsymbolic() +- || parameters->options().have_dynamic_list()) ++ // If the user used -Bsymbolic, then nothing (else) is preemptible. ++ if (parameters->options().Bsymbolic()) + return false; + + // If the user used -Bsymbolic-functions, then functions are not +diff --git a/gold/testsuite/Makefile.am b/gold/testsuite/Makefile.am +index f767c21..7b73f9d 100644 +--- a/gold/testsuite/Makefile.am ++++ b/gold/testsuite/Makefile.am +@@ -1518,7 +1518,7 @@ dynamic_list_lib1.o: dynamic_list_lib1.cc + $(CXXCOMPILE) -c -fpic -o $@ $< + + dynamic_list_lib2.so: gcctestdir/ld dynamic_list_lib2.o $(srcdir)/dynamic_list_2.t +- $(CXXLINK) -Bgcctestdir/ -shared -Wl,--dynamic-list,$(srcdir)/dynamic_list_2.t dynamic_list_lib2.o ++ $(CXXLINK) -Bgcctestdir/ -shared -Wl,-Bsymbolic-functions -Wl,--dynamic-list,$(srcdir)/dynamic_list_2.t dynamic_list_lib2.o + dynamic_list_lib2.o: dynamic_list_lib2.cc + $(CXXCOMPILE) -c -fpic -o $@ $< + +diff --git a/gold/testsuite/Makefile.in b/gold/testsuite/Makefile.in +index 217e472..b4ae3fd 100644 +--- a/gold/testsuite/Makefile.in ++++ b/gold/testsuite/Makefile.in +@@ -5319,7 +5319,7 @@ uninstall-am: + @GCC_TRUE@@NATIVE_LINKER_TRUE@ $(CXXCOMPILE) -c -fpic -o $@ $< + + @GCC_TRUE@@NATIVE_LINKER_TRUE@dynamic_list_lib2.so: gcctestdir/ld dynamic_list_lib2.o $(srcdir)/dynamic_list_2.t +-@GCC_TRUE@@NATIVE_LINKER_TRUE@ $(CXXLINK) -Bgcctestdir/ -shared -Wl,--dynamic-list,$(srcdir)/dynamic_list_2.t dynamic_list_lib2.o ++@GCC_TRUE@@NATIVE_LINKER_TRUE@ $(CXXLINK) -Bgcctestdir/ -shared -Wl,-Bsymbolic-functions -Wl,--dynamic-list,$(srcdir)/dynamic_list_2.t dynamic_list_lib2.o + @GCC_TRUE@@NATIVE_LINKER_TRUE@dynamic_list_lib2.o: dynamic_list_lib2.cc + @GCC_TRUE@@NATIVE_LINKER_TRUE@ $(CXXCOMPILE) -c -fpic -o $@ $< + +-- +1.9.4 +