[packages/glibc] - remove unused and brokn cross-gcc_eh patch - workaround for broken echo in mksh (-e on by default)
baggins
baggins at pld-linux.org
Sat Dec 20 23:32:01 CET 2014
commit d96a9968cb69a9c25fd1dc8c803fdc2ac371fc05
Author: Jan Rękorajski <baggins at pld-linux.org>
Date: Sat Dec 20 23:32:09 2014 +0100
- remove unused and brokn cross-gcc_eh patch
- workaround for broken echo in mksh (-e on by default)
- add x32 arch bits
fix-broken-echo.patch | 44 ++++++++++++++++++++++++++++++++++++++++++++
glibc-cross-gcc_eh.patch | 18 ------------------
glibc.spec | 16 +++++++++-------
3 files changed, 53 insertions(+), 25 deletions(-)
---
diff --git a/glibc.spec b/glibc.spec
index 7062bcd..35cf1f7 100644
--- a/glibc.spec
+++ b/glibc.spec
@@ -13,7 +13,7 @@
%bcond_without selinux # without SELinux support (in nscd)
%bcond_with tests # perform "make test"
%bcond_without localedb # don't build localedb-all (is time consuming)
-%bcond_with cross # build using crossgcc (without libgcc_eh)
+%bcond_with cross # make a cross build, skip native programs
%bcond_without nss_crypt # disable nss-crypt
#
%{!?min_kernel:%global min_kernel 2.6.32}
@@ -76,7 +76,6 @@ Patch17: %{name}-morelocales.patch
Patch18: %{name}-locale_fixes.patch
Patch19: %{name}-ZA_collate.patch
Patch20: %{name}-thread_start.patch
-Patch21: %{name}-cross-gcc_eh.patch
Patch22: %{name}-with-stroke.patch
Patch23: %{name}-pt_pax.patch
Patch25: %{name}-cv_gnu89_inline.patch
@@ -88,7 +87,7 @@ Patch29: %{name}-arm-alignment-fix.patch
Patch30: glibc-rh1124987.patch
Patch31: %{name}-origin.patch
Patch32: %{name}-Os-fail-workaround.patch
-
+Patch33: fix-broken-echo.patch
Patch38: 1055_all_glibc-resolv-dynamic.patch
URL: http://www.gnu.org/software/libc/
%{?with_selinux:BuildRequires: audit-libs-devel}
@@ -138,7 +137,7 @@ Conflicts: poldek < 0.18.8-5
Conflicts: rc-scripts < 0.3.1-13
Conflicts: rpm < 4.1
Conflicts: xorg-driver-video-nvidia-libs < 1:295.33
-ExclusiveArch: i486 i586 i686 pentium3 pentium4 athlon %{x8664} ia64 alpha s390 s390x sparc sparc64 sparcv9 ppc ppc64 armv5tel
+ExclusiveArch: i486 i586 i686 pentium3 pentium4 athlon %{x8664} x32 ia64 alpha s390 s390x sparc sparc64 sparcv9 ppc ppc64 armv5tel
BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
# avoid -s here (ld.so must not be stripped to allow any program debugging)
@@ -969,7 +968,6 @@ exit 1
%patch18 -p1
%patch19 -p1
%patch20 -p1
-%{?with_cross:%patch21 -p1}
%patch22 -p1
%patch23 -p0
@@ -981,6 +979,7 @@ exit 1
%patch30 -p1
%patch31 -p1
%patch32 -p1
+%patch33 -p1
%patch38 -p1
@@ -1382,10 +1381,13 @@ fi
%ifarch %{x8664}
%attr(755,root,root) /%{_lib}/ld-linux-x86-64.so.2
%endif
+%ifarch x32
+%attr(755,root,root) /%{_lib}/ld-linux-x32.so.2
+%endif
%ifarch ppc64 s390x
%attr(755,root,root) /%{_lib}/ld64.so.1
%endif
-%ifnarch %{ix86} sparc sparcv9 sparc64 alpha sh ia64 %{x8664} ppc64 s390x %{arm}
+%ifnarch %{ix86} sparc sparcv9 sparc64 alpha sh ia64 %{x8664} x32 ppc64 s390x %{arm}
%attr(755,root,root) /%{_lib}/ld.so.1
%endif
%attr(755,root,root) /%{_lib}/libBrokenLocale-%{core_version}.so
@@ -1689,7 +1691,7 @@ fi
%endif
%{_libdir}/libpthread_nonshared.a
%{_libdir}/librpcsvc.a
-%ifarch %{ix86} %{x8664} ppc ppc64 s390 s390x sparc sparcv9 sparc64
+%ifarch %{ix86} %{x8664} x32 ppc ppc64 s390 s390x sparc sparcv9 sparc64
# ABI-dependent headers
%{_includedir}/gnu/stubs-*.h
%endif
diff --git a/fix-broken-echo.patch b/fix-broken-echo.patch
new file mode 100644
index 0000000..a29761c
--- /dev/null
+++ b/fix-broken-echo.patch
@@ -0,0 +1,44 @@
+--- glibc-2.20/sysdeps/unix/make-syscalls.sh.orig 2014-12-20 14:00:04.210261443 +0100
++++ glibc-2.20/sysdeps/unix/make-syscalls.sh 2014-12-20 14:01:10.059904705 +0100
+@@ -276,27 +276,27 @@
+ vdso_symbol="${vdso_syscall%@*}"
+ vdso_symver="${vdso_syscall#*@}"
+ vdso_symver=`echo "$vdso_symver" | sed 's/\./_/g'`
+- echo "\
++ echo -E "\
+ \$(foreach p,\$(sysd-rules-targets),\$(objpfx)\$(patsubst %,\$p,$file).os): \\
+ \$(..)sysdeps/unix/make-syscalls.sh\
+ \$(make-target-directory)
+- (echo '#include <dl-vdso.h>'; \\
+- echo 'extern void *${strong}_ifunc (void) __asm (\"${strong}\");'; \\
+- echo 'void *'; \\
+- echo '${strong}_ifunc (void)'; \\
+- echo '{'; \\
+- echo ' PREPARE_VERSION_KNOWN (symver, ${vdso_symver});'; \\
+- echo ' return _dl_vdso_vsym (\"${vdso_symbol}\", &symver);'; \\
+- echo '}'; \\
+- echo 'asm (\".type ${strong}, %gnu_indirect_function\");'; \\"
++ (echo -E '#include <dl-vdso.h>'; \\
++ echo -E 'extern void *${strong}_ifunc (void) __asm (\"${strong}\");'; \\
++ echo -E 'void *'; \\
++ echo -E '${strong}_ifunc (void)'; \\
++ echo -E '{'; \\
++ echo -E ' PREPARE_VERSION_KNOWN (symver, ${vdso_symver});'; \\
++ echo -E ' return _dl_vdso_vsym (\"${vdso_symbol}\", &symver);'; \\
++ echo -E '}'; \\
++ echo -E 'asm (\".type ${strong}, %gnu_indirect_function\");'; \\"
+ # This is doing "libc_hidden_def (${strong})", but the compiler
+ # doesn't know that we've defined ${strong} in the same file, so
+ # we can't do it the normal way.
+- echo "\
+- echo 'asm (\".globl __GI_${strong}\\n\"'; \\
+- echo ' \"__GI_${strong} = ${strong}\");'; \\"
++ echo -E "\
++ echo -E 'asm (\".globl __GI_${strong}\\n\"'; \\
++ echo -E ' \"__GI_${strong} = ${strong}\");'; \\"
+ emit_weak_aliases
+- echo ' ) | $(compile-stdin.c) '"\
++ echo -E ' ) | $(compile-stdin.c) '"\
+ \$(foreach p,\$(patsubst %$file,%,\$(basename \$(@F))),\$(\$(p)CPPFLAGS))"
+ fi
+
diff --git a/glibc-cross-gcc_eh.patch b/glibc-cross-gcc_eh.patch
deleted file mode 100644
index a9979da..0000000
--- a/glibc-cross-gcc_eh.patch
+++ /dev/null
@@ -1,18 +0,0 @@
---- libc/Makeconfig.orig 2004-12-31 20:33:44.918457704 +0100
-+++ libc/Makeconfig 2004-12-31 20:55:54.452337832 +0100
-@@ -514,12 +514,12 @@
- libunwind = -lunwind
- endif
- ifneq ($(have-as-needed),yes)
-- libgcc_eh := -lgcc_eh $(libunwind)
-+ libgcc_eh := $(libunwind)
- else
- libgcc_eh := -Wl,--as-needed -lgcc_s$(libgcc_s_suffix) $(libunwind) -Wl,--no-as-needed
- endif
- gnulib := -lgcc $(libgcc_eh)
--static-gnulib := -lgcc -lgcc_eh $(libunwind)
-+static-gnulib := -lgcc $(libunwind)
- libc.so-gnulib := -lgcc
- endif
- ifeq ($(elf),yes)
-
================================================================
---- gitweb:
http://git.pld-linux.org/gitweb.cgi/packages/glibc.git/commitdiff/d96a9968cb69a9c25fd1dc8c803fdc2ac371fc05
More information about the pld-cvs-commit
mailing list