Compare commits

...

8 Commits
master ... f22

Author SHA1 Message Date
Rex Dieter 7254fda887 add awol patch 2015-08-25 07:56:26 -05:00
Rex Dieter 0b65e605b6 Qt linked with gold crash on startup (#1193044) 2015-08-24 09:43:02 -05:00
Jaromir Capik c8ed53af17 One more STAGE1 bootstrap recipe 2015-06-11 19:01:44 +02:00
Nick Clifton e64e2b824a Forgot to pull before pushing... 2015-06-10 20:27:45 +01:00
Nick Clifton a81291beea Make the AArch64 GOLD port use 64K pages.
Resolves: BZ #1225156 and BZ #1215546
2015-06-10 20:27:11 +01:00
Jaromir Capik d9bbed5e2f Adding STAGE1 bootstrap recipe 2015-06-10 17:03:39 +02:00
Nick Clifton 2da766e3f0 Require the coreutils so that touch is available.
Resolves: BZ #1215242
2015-04-27 17:21:57 +01:00
Nick Clifton b780656bed Enable building GOLD for the AArch64.
Resolves: BZ #1203057
2015-04-21 17:38:55 +01:00
4 changed files with 108 additions and 3 deletions

6
STAGE1-binutils Normal file
View File

@ -0,0 +1,6 @@
srpm binutils
mcd $BUILDDIR/binutils
$SRC/binutils-*/configure $CONFIGARGS
notparallel
make $J
make $J install

6
STAGE1-t-binutils Normal file
View File

@ -0,0 +1,6 @@
srpm binutils
mcd $BUILDDIR/t-binutils
$SRC/binutils-*/configure $TCONFIGARGS
notparallel
make $J
make $J install DESTDIR=${ROOTFS}

View File

@ -0,0 +1,70 @@
diff -up binutils-2.25.1/gold/layout.cc.dynamic_list~ binutils-2.25.1/gold/layout.cc
--- binutils-2.25.1/gold/layout.cc.dynamic_list~ 2014-10-14 02:32:04.000000000 -0500
+++ binutils-2.25.1/gold/layout.cc 2015-08-06 10:45:35.022531546 -0500
@@ -4857,7 +4857,8 @@ Layout::finish_dynamic_section(const Inp
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 -up binutils-2.25.1/gold/options.cc.dynamic_list~ binutils-2.25.1/gold/options.cc
--- binutils-2.25.1/gold/options.cc.dynamic_list~ 2014-10-14 02:32:04.000000000 -0500
+++ binutils-2.25.1/gold/options.cc 2015-08-06 10:45:35.023531554 -0500
@@ -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 -up binutils-2.25.1/gold/symtab.h.dynamic_list~ binutils-2.25.1/gold/symtab.h
--- binutils-2.25.1/gold/symtab.h.dynamic_list~ 2014-10-14 02:32:04.000000000 -0500
+++ binutils-2.25.1/gold/symtab.h 2015-08-06 10:45:35.023531554 -0500
@@ -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 -up binutils-2.25.1/gold/testsuite/Makefile.am.dynamic_list~ binutils-2.25.1/gold/testsuite/Makefile.am
--- binutils-2.25.1/gold/testsuite/Makefile.am.dynamic_list~ 2015-07-21 03:20:58.000000000 -0500
+++ binutils-2.25.1/gold/testsuite/Makefile.am 2015-08-06 10:45:35.024531563 -0500
@@ -1516,7 +1516,7 @@ dynamic_list_lib1.o: dynamic_list_lib1.c
$(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 -up binutils-2.25.1/gold/testsuite/Makefile.in.dynamic_list~ binutils-2.25.1/gold/testsuite/Makefile.in
--- binutils-2.25.1/gold/testsuite/Makefile.in.dynamic_list~ 2015-07-21 03:20:58.000000000 -0500
+++ binutils-2.25.1/gold/testsuite/Makefile.in 2015-08-06 10:45:35.025531571 -0500
@@ -5277,7 +5277,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 $@ $<

View File

@ -19,7 +19,7 @@
Summary: A GNU collection of binary utilities
Name: %{?cross}binutils%{?_with_debug:-debug}
Version: 2.25
Release: 5%{?dist}
Release: 9%{?dist}
License: GPLv3+
Group: Development/Tools
URL: http://sources.redhat.com/binutils
@ -54,13 +54,16 @@ Patch13: binutils-2.23.2-aarch64-em.patch
Patch14: binutils-2.24-ldforcele.patch
# Fix allocation of space for x86_64 PIE relocs.
Patch15: binutils-2.25-x86_64-pie-relocs.patch
# backport https://sourceware.org/git/gitweb.cgi?p=binutils-gdb.git;h=e9c1bdad269c0c3352eebcc9481ed65144001b0b
# Qt linked with gold crash on startup, BZ #1193044
Patch16: binutils-2.25.1-dynamic_list.patch
Provides: bundled(libiberty)
# BZ 1173780: Building GOLD for PPC is not working at the moment.
# %define gold_arches %ix86 x86_64 %arm ppc* %{power64}
%define gold_arches %ix86 x86_64 %arm
# %define gold_arches %ix86 x86_64 %arm aarch64 ppc* %{power64}
%define gold_arches %ix86 x86_64 %arm aarch64
%ifarch %gold_arches
%define build_gold both
@ -136,6 +139,8 @@ Requires(post): /sbin/install-info
Requires(preun): /sbin/install-info
Requires: zlib-devel
Requires: binutils = %{version}-%{release}
# BZ 1215242: We need touch...
Requires: coreutils
%description devel
This package contains BFD and opcodes static and dynamic libraries.
@ -176,12 +181,15 @@ using libelf instead of BFD.
%patch14 -p1 -b .ldforcele~
%endif
%patch15 -p1 -b .x86_64-pie~
%patch16 -p1 -b .dynamic_list~
# We cannot run autotools as there is an exact requirement of autoconf-2.59.
# On ppc64 and aarch64, we might use 64KiB pages
sed -i -e '/#define.*ELF_COMMONPAGESIZE/s/0x1000$/0x10000/' bfd/elf*ppc.c
sed -i -e '/#define.*ELF_COMMONPAGESIZE/s/0x1000$/0x10000/' bfd/elf*aarch64.c
sed -i -e '/common_pagesize/s/4 /64 /' gold/powerpc.cc
sed -i -e '/pagesize/s/0x1000,/0x10000,/' gold/aarch64.cc
# LTP sucks
perl -pi -e 's/i\[3-7\]86/i[34567]86/g' */conf*
sed -i -e 's/%''{release}/%{release}/g' bfd/Makefile{.am,.in}
@ -486,6 +494,21 @@ exit 0
%endif # %{isnative}
%changelog
* Mon Aug 24 2015 Rex Dieter <rdieter@fedoraproject.org> 2.25-9
- Qt linked with gold crash on startup (#1193044)
* Wed Jun 10 2015 Nick Clifton <nickc@redhat.com> - 2.25-8
- Make the AArch64 GOLD port use 64K pages.
- Resolves: BZ #1225156 and BZ #1215546
* Mon Apr 27 2015 Nick Clifton <nickc@redhat.com> - 2.25-7
- Require the coreutils so that touch is available.
- Resolves: BZ #1215242
* Tue Apr 21 2015 Nick Clifton <nickc@redhat.com> - 2.25-6
- Enable building GOLD for the AArch64.
- Resolves: BZ #1203057
* Mon Feb 02 2015 Nick Clifton <nickc@redhat.com> - 2.25-5
- Fix scanning for object symbols in binutils-2.25-kernel-ld-r.patch
- Resolves: BZ #1149660