[glibc/f14/master] fix build on s390(x)

Dan Horák sharkcz at fedoraproject.org
Mon Nov 15 13:47:37 UTC 2010


commit f0a4b537056a49e7ab83c890f9e1bb16f8a5cdea
Author: Dan Horák <dan at danny.cz>
Date:   Mon Nov 15 14:48:05 2010 +0100

    fix build on s390(x)

 glibc-s390.patch |   12 ++++++++++++
 glibc.spec       |    8 +++++++-
 2 files changed, 19 insertions(+), 1 deletions(-)
---
diff --git a/glibc-s390.patch b/glibc-s390.patch
new file mode 100644
index 0000000..05876e0
--- /dev/null
+++ b/glibc-s390.patch
@@ -0,0 +1,12 @@
+diff -up glibc-2.12-192-g7c08a05/sysdeps/ieee754/ldbl-128/s_fmal.c.orig glibc-2.12-192-g7c08a05/sysdeps/ieee754/ldbl-128/s_fmal.c
+--- glibc-2.12-192-g7c08a05/sysdeps/ieee754/ldbl-128/s_fmal.c.orig	2010-10-27 09:29:29.257597749 -0400
++++ glibc-2.12-192-g7c08a05/sysdeps/ieee754/ldbl-128/s_fmal.c	2010-10-27 09:29:38.897491500 -0400
+@@ -176,7 +176,7 @@ __fmal (long double x, long double y, lo
+ 	u.ieee.mantissa3 |= fetestexcept (FE_INEXACT) != 0;
+       v.d = a1 + u.d;
+       /* Ensure the addition is not scheduled after fetestexcept call.  */
+-      asm volatile ("" : "m" (v));
++      asm volatile ("" : : "m" (v));
+       int j = fetestexcept (FE_INEXACT) != 0;
+       feupdateenv (&env);
+       /* Ensure the following computations are performed in default rounding
diff --git a/glibc.spec b/glibc.spec
index f07a195..a9defad 100644
--- a/glibc.spec
+++ b/glibc.spec
@@ -24,7 +24,7 @@
 Summary: The GNU libc libraries
 Name: glibc
 Version: %{glibcversion}
-Release: 19
+Release: 19.1
 # GPLv2+ is used in a bunch of programs, LGPLv2+ is used for libraries.
 # Things that are linked directly into dynamically linked programs
 # and shared libraries (e.g. crt files, lib*_nonshared.a) have an additional
@@ -38,6 +38,8 @@ Source1: %{?glibc_release_url}%{glibcportsdir}.tar.xz
 Source2: %{glibcsrcdir}-fedora.tar.xz
 Patch0: %{name}-fedora.patch
 Patch1: %{name}-ia64-lib64.patch
+# https://bugzilla.redhat.com/show_bug.cgi?id=645910
+Patch2: %{name}-s390.patch
 Buildroot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n)
 Obsoletes: glibc-profile < 2.4
 Provides: ldconfig
@@ -251,6 +253,7 @@ rm -rf %{glibcportsdir}
 %patch1 -p1
 %endif
 %endif
+%patch2 -p1
 
 # A lot of programs still misuse memcpy when they have to use
 # memmove. The memcpy implementation below is not tolerant at
@@ -1044,6 +1047,9 @@ rm -f *.filelist*
 %endif
 
 %changelog
+* Mon Nov 15 2010 Dan Horák <dan[at]danny.cz> - 2.12.90-19.1
+- fix build on s390(x) using http://sources.redhat.com/ml/libc-hacker/2010-10/msg00009.html
+
 * Fri Nov 12 2010 Andreas Schwab <schwab at redhat.com> - 2.12.90-19
 - Update from master
   - Fix memory leak in fnmatch


More information about the scm-commits mailing list