From da08f55dc8d6fb7135ae6cd478fc960c8af4a78c95f57ddd93b0e65a8c8479fb Mon Sep 17 00:00:00 2001 From: Andreas Schwab Date: Wed, 31 May 2017 16:11:37 +0000 Subject: [PATCH] Accepting request 500196 from home:Andreas_Schwab:Factory - fts-symbol-redirect.patch: Fix symbol redirect for fts_set (bsc#1041123, BZ #21289) - test-math-vector-sincos-aliasing.patch: Fix test-math-vector-sincos.h aliasing - add-locales.patch: renamed from glibc-2.3.locales.diff.bz2, drop en_BE locales (bsc#1039502) - Remove glibc-testsuite.patch, no longer relevant OBS-URL: https://build.opensuse.org/request/show/500196 OBS-URL: https://build.opensuse.org/package/show/Base:System/glibc?expand=0&rev=457 --- add-locales.patch | 29 +++++++++++ fts-symbol-redirect.patch | 18 +++++++ glibc-2.3.locales.diff.bz2 | 3 -- glibc-testsuite.patch | 15 ------ glibc.changes | 23 +++++++++ glibc.spec | 25 +++++----- test-math-vector-sincos-aliasing.patch | 69 ++++++++++++++++++++++++++ 7 files changed, 151 insertions(+), 31 deletions(-) create mode 100644 add-locales.patch create mode 100644 fts-symbol-redirect.patch delete mode 100644 glibc-2.3.locales.diff.bz2 delete mode 100644 glibc-testsuite.patch create mode 100644 test-math-vector-sincos-aliasing.patch diff --git a/add-locales.patch b/add-locales.patch new file mode 100644 index 0000000..7a18cd1 --- /dev/null +++ b/add-locales.patch @@ -0,0 +1,29 @@ +Index: glibc-2.25/localedata/SUPPORTED +=================================================================== +--- glibc-2.25.orig/localedata/SUPPORTED ++++ glibc-2.25/localedata/SUPPORTED +@@ -129,6 +129,7 @@ en_CA.UTF-8/UTF-8 \ + en_CA/ISO-8859-1 \ + en_DK.UTF-8/UTF-8 \ + en_DK/ISO-8859-1 \ ++en_GB.ISO-8859-15/ISO-8859-15 \ + en_GB.UTF-8/UTF-8 \ + en_GB/ISO-8859-1 \ + en_HK.UTF-8/UTF-8 \ +@@ -145,6 +146,7 @@ en_PH.UTF-8/UTF-8 \ + en_PH/ISO-8859-1 \ + en_SG.UTF-8/UTF-8 \ + en_SG/ISO-8859-1 \ ++en_US.ISO-8859-15/ISO-8859-15 \ + en_US.UTF-8/UTF-8 \ + en_US/ISO-8859-1 \ + en_ZA.UTF-8/UTF-8 \ +@@ -269,6 +271,8 @@ it_IT/ISO-8859-1 \ + it_IT@euro/ISO-8859-15 \ + iu_CA/UTF-8 \ + ja_JP.EUC-JP/EUC-JP \ ++ja_JP.SHIFT_JISX0213/SHIFT_JISX0213 \ ++ja_JP.SJIS/SHIFT_JIS \ + ja_JP.UTF-8/UTF-8 \ + ka_GE.UTF-8/UTF-8 \ + ka_GE/GEORGIAN-PS \ diff --git a/fts-symbol-redirect.patch b/fts-symbol-redirect.patch new file mode 100644 index 0000000..fd07005 --- /dev/null +++ b/fts-symbol-redirect.patch @@ -0,0 +1,18 @@ +2017-03-31 Slava Barinov + + [BZ #21289] + * io/fts.h (fts_set): Replace __REDIRECT with __REDIRECT_NTH. + +Index: glibc-2.25/io/fts.h +=================================================================== +--- glibc-2.25.orig/io/fts.h ++++ glibc-2.25/io/fts.h +@@ -193,7 +193,7 @@ FTS *__REDIRECT (fts_open, (char * const + int (*)(const FTSENT **, const FTSENT **)), + fts64_open); + FTSENT *__REDIRECT (fts_read, (FTS *), fts64_read); +-int __REDIRECT (fts_set, (FTS *, FTSENT *, int), fts64_set) __THROW; ++int __REDIRECT_NTH (fts_set, (FTS *, FTSENT *, int), fts64_set); + # else + # define fts_children fts64_children + # define fts_close fts64_close diff --git a/glibc-2.3.locales.diff.bz2 b/glibc-2.3.locales.diff.bz2 deleted file mode 100644 index 4d5120f..0000000 --- a/glibc-2.3.locales.diff.bz2 +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:88419776f97fb76adac25cec0540b5be19c90d7a745cd56512f79bb523b7da37 -size 328722 diff --git a/glibc-testsuite.patch b/glibc-testsuite.patch deleted file mode 100644 index bb60587..0000000 --- a/glibc-testsuite.patch +++ /dev/null @@ -1,15 +0,0 @@ -test-lfs runs for ever on ReiserFS. Let's disable it completely. - -Index: glibc-2.17.90/io/Makefile -=================================================================== ---- glibc-2.17.90.orig/io/Makefile -+++ glibc-2.17.90/io/Makefile -@@ -63,7 +63,7 @@ static-only-routines = stat fstat lstat - - others := pwd - test-srcs := ftwtest --tests := test-utime test-stat test-stat2 test-lfs tst-getcwd \ -+tests := test-utime test-stat test-stat2 tst-getcwd \ - tst-fcntl bug-ftw1 bug-ftw2 bug-ftw3 bug-ftw4 tst-statvfs \ - tst-openat tst-unlinkat tst-fstatat tst-futimesat \ - tst-renameat tst-fchownat tst-fchmodat tst-faccessat \ diff --git a/glibc.changes b/glibc.changes index 9d6cafa..68db6c5 100644 --- a/glibc.changes +++ b/glibc.changes @@ -1,3 +1,26 @@ +------------------------------------------------------------------- +Wed May 31 10:35:31 UTC 2017 - schwab@suse.de + +- fts-symbol-redirect.patch: Fix symbol redirect for fts_set (bsc#1041123, + BZ #21289) + +------------------------------------------------------------------- +Mon May 29 18:10:31 UTC 2017 - schwab@suse.de + +- test-math-vector-sincos-aliasing.patch: Fix test-math-vector-sincos.h + aliasing + +------------------------------------------------------------------- +Mon May 29 10:24:22 UTC 2017 - schwab@suse.de + +- add-locales.patch: renamed from glibc-2.3.locales.diff.bz2, drop en_BE + locales (bsc#1039502) + +------------------------------------------------------------------- +Tue May 23 09:54:08 UTC 2017 - schwab@suse.de + +- Remove glibc-testsuite.patch, no longer relevant + ------------------------------------------------------------------- Mon May 22 10:04:59 UTC 2017 - schwab@suse.de diff --git a/glibc.spec b/glibc.spec index 2593759..0553b0f 100644 --- a/glibc.spec +++ b/glibc.spec @@ -16,26 +16,22 @@ # -%define build_snapshot 0 - -# PLEASE run pre_checkin.sh in this directory before submitting -# this package. Otherwise the .spec and .changes for glibc-testsuite -# and glibc-utils aren't updated. - # Run with osc --with=fast_build to have a shorter turnaround # It will avoid building some parts of glibc %bcond_with fast_build %define crypt_bf_version 1.3 +%define build_snapshot 0 -%define normal_build ("@BUILD_FLAVOR@" == "" || "@BUILD_FLAVOR@" == "i686") %define utils_build ("@BUILD_FLAVOR@" == "utils") %define testsuite_build ("@BUILD_FLAVOR@" == "testsuite") +%define normal_build !(%utils_build || %testsuite_build) + %if %normal_build Name: glibc Summary: Standard Shared Libraries (from the GNU C Library) -License: LGPL-2.1+ -Group: Development/Languages/C and C++ +License: LGPL-2.1+ and SUSE-LGPL-2.1+-with-GCC-exception and GPL-2.0+ +Group: System/Libraries %endif %if %utils_build Name: glibc-utils @@ -224,8 +220,6 @@ Patch8: glibc-nscd.conf.patch Patch9: glibc-nodate.patch # PATCH-FIX-OPENSUSE -- add some extra information to version output - kukuk@suse.de Patch10: glibc-version.diff -# PATCH-FIX-OPENSUSE remove lfs test from testsuite aj@suse.de -Patch11: glibc-testsuite.patch # PATCH-FIX-OPENSUSE handle old glibc binaries Patch12: glibc-2.3.90-noversion.diff # PATCH-FIX-OPENSUSE -- Make --no-archive default for localedef - kukuk@suse.de @@ -243,7 +237,7 @@ Patch21: powerpc-elision-enable-envvar.patch ### Locale related patches # PATCH-FIX-OPENSUSE Add additional locales -Patch100: glibc-2.3.locales.diff.bz2 +Patch100: add-locales.patch # PATCH-FIX-OPENSUSE -- Add no_NO back (XXX: Still needed?) Patch102: glibc-2.4.90-no_NO.diff # PATCH-FIX-OPENSUSE -- Renames for China @@ -274,6 +268,10 @@ Patch1000: tunables-bigendian.patch Patch1001: i686-memchr-sse.patch # PATCH-FIX-UPSTREAM Avoid use-after-free read access in clntudp_call (BZ #21115) Patch1002: sunrpc-use-after-free.patch +# PATCH-FIX-UPSTREAM Fix test-math-vector-sincos.h aliasing +Patch1003: test-math-vector-sincos-aliasing.patch +# PATCH-FIX-UPSTREAM Fix symbol redirect for fts_set (BZ #21289) +Patch1004: fts-symbol-redirect.patch ### # Patches awaiting upstream approval @@ -486,7 +484,6 @@ touch -r nscd/nscd_stat.c nscd/s-stamp touch -r nscd/s-stamp nscd/nscd_stat.c rm nscd/s-stamp %patch10 -p1 -%patch11 -p1 %patch12 -p1 %patch13 -p1 %patch14 -p1 @@ -509,6 +506,8 @@ rm nscd/s-stamp %patch1000 -p1 %patch1001 -p1 %patch1002 -p1 +%patch1003 -p1 +%patch1004 -p1 %patch2000 -p1 %patch2001 -p1 diff --git a/test-math-vector-sincos-aliasing.patch b/test-math-vector-sincos-aliasing.patch new file mode 100644 index 0000000..3d69ab1 --- /dev/null +++ b/test-math-vector-sincos-aliasing.patch @@ -0,0 +1,69 @@ +2017-03-15 Joseph Myers + + * sysdeps/x86/fpu/test-math-vector-sincos.h (INIT_VEC_PTRS_LOOP): + Use a union when storing pointers. + (VECTOR_WRAPPER_fFF_2): Do not take address of integer vector and + cast result when passing to INIT_VEC_PTRS_LOOP. + (VECTOR_WRAPPER_fFF_3): Likewise. + (VECTOR_WRAPPER_fFF_4): Likewise. + +Index: glibc-2.25/sysdeps/x86/fpu/test-math-vector-sincos.h +=================================================================== +--- glibc-2.25.orig/sysdeps/x86/fpu/test-math-vector-sincos.h ++++ glibc-2.25/sysdeps/x86/fpu/test-math-vector-sincos.h +@@ -17,14 +17,14 @@ + License along with the GNU C Library; if not, see + . */ + +-#define INIT_VEC_PTRS_LOOP(vec, val, len) \ +- do \ +- { \ +- for (i = 0; i < len; i++) \ +- { \ +- vec[i] = &val[i]; \ +- } \ +- } \ ++#define INIT_VEC_PTRS_LOOP(vec, val, len) \ ++ do \ ++ { \ ++ union { VEC_INT_TYPE v; __typeof__ ((val)[0]) *a[(len)]; } u; \ ++ for (i = 0; i < len; i++) \ ++ u.a[i] = &(val)[i]; \ ++ (vec) = u.v; \ ++ } \ + while (0) + + /* Wrapper for vector sincos/sincosf compatible with x86_64 and x32 variants +@@ -40,8 +40,8 @@ void scalar_func (FLOAT x, FLOAT * r, FL + VEC_TYPE mx; \ + VEC_INT_TYPE mr, mr1; \ + INIT_VEC_LOOP (mx, x, VEC_LEN); \ +- INIT_VEC_PTRS_LOOP (((FLOAT **) &mr), r_loc, VEC_LEN); \ +- INIT_VEC_PTRS_LOOP (((FLOAT **) &mr1), r1_loc, VEC_LEN); \ ++ INIT_VEC_PTRS_LOOP (mr, r_loc, VEC_LEN); \ ++ INIT_VEC_PTRS_LOOP (mr1, r1_loc, VEC_LEN); \ + vector_func (mx, mr, mr1); \ + TEST_VEC_LOOP (r_loc, VEC_LEN); \ + TEST_VEC_LOOP (r1_loc, VEC_LEN); \ +@@ -63,8 +63,8 @@ void scalar_func (FLOAT x, FLOAT * r, FL + VEC_TYPE mx; \ + VEC_INT_TYPE mr, mr1; \ + INIT_VEC_LOOP (mx, x, VEC_LEN); \ +- INIT_VEC_PTRS_LOOP (((FLOAT **) &mr), r_loc, VEC_LEN/2); \ +- INIT_VEC_PTRS_LOOP (((FLOAT **) &mr1), r1_loc, VEC_LEN/2); \ ++ INIT_VEC_PTRS_LOOP (mr, r_loc, VEC_LEN/2); \ ++ INIT_VEC_PTRS_LOOP (mr1, r1_loc, VEC_LEN/2); \ + vector_func (mx, mr, mr, mr1, mr1); \ + TEST_VEC_LOOP (r_loc, VEC_LEN/2); \ + TEST_VEC_LOOP (r1_loc, VEC_LEN/2); \ +@@ -87,8 +87,8 @@ void scalar_func (FLOAT x, FLOAT * r, FL + VEC_TYPE mx; \ + VEC_INT_TYPE mr, mr1; \ + INIT_VEC_LOOP (mx, x, VEC_LEN); \ +- INIT_VEC_PTRS_LOOP (((FLOAT **) &mr), r_loc, VEC_LEN/4); \ +- INIT_VEC_PTRS_LOOP (((FLOAT **) &mr1), r1_loc, VEC_LEN/4); \ ++ INIT_VEC_PTRS_LOOP (mr, r_loc, VEC_LEN/4); \ ++ INIT_VEC_PTRS_LOOP (mr1, r1_loc, VEC_LEN/4); \ + vector_func (mx, mr, mr, mr, mr, mr1, mr1, mr1, mr1); \ + TEST_VEC_LOOP (r_loc, VEC_LEN/4); \ + TEST_VEC_LOOP (r1_loc, VEC_LEN/4); \