Hello community, here is the log from the commit of package glibc for openSUSE:Factory checked in at 2016-04-22 16:15:59 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Comparing /work/SRC/openSUSE:Factory/glibc (Old) and /work/SRC/openSUSE:Factory/.glibc.new (New) ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "glibc" Changes: -------- --- /work/SRC/openSUSE:Factory/glibc/glibc-testsuite.changes 2016-02-22 10:09:56.000000000 +0100 +++ /work/SRC/openSUSE:Factory/.glibc.new/glibc-testsuite.changes 2016-04-22 16:16:00.000000000 +0200 @@ -1,0 +2,82 @@ +Mon Apr 11 08:00:07 UTC 2016 - [email protected] + +- Add compatibility symlinks for LSB 3.0 (fate#318933) + +------------------------------------------------------------------- +Mon Mar 21 11:57:49 UTC 2016 - [email protected] + +- powerpc-elision-enable-envvar.patch: enable TLE only if + GLIBC_ELISION_ENABLE=yes is defined (bsc#967594, fate#318236) + +------------------------------------------------------------------- +Tue Mar 15 10:44:46 UTC 2016 - [email protected] + +- ldd-system-interp.patch: Restore warning about execution permission, it + is still needed for noexec mounts (bsc#915985) + +------------------------------------------------------------------- +Tue Mar 8 15:28:16 UTC 2016 - [email protected] + +- Add C.UTF-8 locale (see https://sourceware.org/glibc/wiki/Proposals/C.UTF-8) + and rh#902094 . Added with glibc-c-utf8-locale.patch. +- Add glibc-disable-gettext-for-c-utf8.patch to disable gettext for + C.UTF-8 same as C locale. + +------------------------------------------------------------------- +Mon Mar 7 14:47:50 UTC 2016 - [email protected] + +- Move %install_info_delete to %preun +- crypt_blowfish-1.3.tar.gz.sign: Remove, the sign key is no longer + acceptable + +------------------------------------------------------------------- +Tue Feb 23 16:11:36 UTC 2016 - [email protected] + +- no-long-double.patch: Don't use long double functions if NO_LONG_DOUBLE + +------------------------------------------------------------------- +Mon Feb 22 11:05:12 UTC 2016 - [email protected] + +- Update to glibc 2.23 release. + * Unicode 8.0.0 Support + * sched_setaffinity, pthread_setaffinity_np no longer attempt to guess + the kernel-internal CPU set size + * The fts.h header can now be used with -D_FILE_OFFSET_BITS=64 + * getaddrinfo now detects certain invalid responses on an internal + netlink socket + * A defect in the malloc implementation, present since glibc 2.15 (2012) + or glibc 2.10 via --enable-experimental-malloc (2009), could result in + the unnecessary serialization of memory allocation requests across + threads + * The obsolete header <regexp.h> has been removed + * The obsolete functions bdflush, create_module, get_kernel_syms, + query_module and uselib are no longer available to newly linked + binaries + * Optimized string, wcsmbs and memory functions for IBM z13. + * Newly linked programs that define a variable called signgam will no + longer have it set by the lgamma, lgammaf and lgammal functions +- Removed patches: + * dont-remove-nodelete-flag.patch + * openat64-readd-o-largefile.patch + * mntent-blank-line.patch + * opendir-o-directory-check.patch + * strcoll-remove-strdiff-opt.patch + * ld-pointer-guard.patch + * tls-dtor-list-mangling.patch + * powerpc-lock-elision-race.patch + * prelink-elf-rtype-class.patch + * vector-finite-math-aliases.patch + * powerpc-elision-adapt-param.patch + * catopen-unbound-alloca.patch + * strftime-range-check.patch + * hcreate-overflow-check.patch + * errorcheck-mutex-no-elision.patch + * refactor-nan-parsing.patch + * send-dg-buffer-overflow.patch + * isinf-cxx11-conflict.patch + * ibm93x-redundant-shift-si.patch + * iconv-reset-input-buffer.patch + * tzset-tzname.patch + * static-dlopen.patch + +------------------------------------------------------------------- @@ -42 +124 @@ - on fork (BZ #19282) + on fork (bsc#958315, BZ #19282) @@ -47 +129 @@ -- resolv-mem-leak.patch: Fix resource leak in resolver (BZ #19257) +- resolv-mem-leak.patch: Fix resource leak in resolver (bsc#955647, BZ #19257) @@ -59,2 +141,2 @@ -- ld-pointer-guard.patch: Always enable pointer guard (bsc#950944, BZ - #18928) +- ld-pointer-guard.patch: Always enable pointer guard (CVE-2015-8777, + bsc#950944, BZ #18928) @@ -118 +200 @@ - requests has been fixed. + requests has been fixed. (CVE-2015-1781) @@ -128,0 +211,2 @@ + * bsc#905313 bsc#920338 bsc#927080 bsc#928723 bsc#931480 bsc#939211 + bsc#940195 bsc#940332 @@ -192 +276 @@ - getXXent and getXXbyYY NSS calls (bsc#918187, BZ #18007) + getXXent and getXXbyYY NSS calls (CVE-2014-8121, bsc#918187, BZ #18007) @@ -232,0 +317,2 @@ + * CVE-2015-1472 CVE-2015-1473 CVE-2104-7817 CVE-2012-3406 CVE-2014-9402 + CVE-2014-7817 bsc#864081 bsc#906371 bsc#909053 bsc#910599 bsc#916222 @@ -271,0 +358 @@ + * CVE-2013-7423 bsc#915526 bsc#934084 glibc-utils.changes: same change glibc.changes: same change Old: ---- catopen-unbound-alloca.patch crypt_blowfish-1.3.tar.gz.sign dont-remove-nodelete-flag.patch errorcheck-mutex-no-elision.patch glibc-2.22.tar.xz glibc-2.22.tar.xz.sig hcreate-overflow-check.patch ibm93x-redundant-shift-si.patch isinf-cxx11-conflict.patch ld-pointer-guard.patch mntent-blank-line.patch openat64-readd-o-largefile.patch opendir-o-directory-check.patch powerpc-elision-adapt-param.patch powerpc-lock-elision-race.patch prelink-elf-rtype-class.patch refactor-nan-parsing.patch send-dg-buffer-overflow.patch static-dlopen.patch strcoll-remove-strdiff-opt.patch strftime-range-check.patch tls-dtor-list-mangling.patch tzset-tzname.patch vector-finite-math-aliases.patch New: ---- glibc-2.23.tar.xz glibc-2.23.tar.xz.sig glibc-c-utf8-locale.patch glibc-disable-gettext-for-c-utf8.patch no-long-double.patch powerpc-elision-enable-envvar.patch ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ glibc-testsuite.spec ++++++ --- /var/tmp/diff_new_pack.hjF9cU/_old 2016-04-22 16:16:03.000000000 +0200 +++ /var/tmp/diff_new_pack.hjF9cU/_new 2016-04-22 16:16:03.000000000 +0200 @@ -45,6 +45,7 @@ BuildRequires: xz %if %{testsuite_build} BuildRequires: gcc-c++ +BuildRequires: glibc-devel-static BuildRequires: libstdc++-devel %endif %if %{utils_build} @@ -102,9 +103,9 @@ # 3.1 is the openSUSE 12.1 kernel %define enablekernel 3.0 -Version: 2.22 +Version: 2.23 Release: 0 -%define git_id bbab82c25da9 +%define git_id 10ed3a0ffbb4 Url: http://www.gnu.org/software/libc/libc.html BuildRoot: %{_tmppath}/%{name}-%{version}-build #Source: glibc-%{version}-%{git_id}.tar.xz @@ -123,7 +124,8 @@ Source21: nscd.service # crypt_blowfish Source50: http://www.openwall.com/crypt/crypt_blowfish-%{crypt_bf_version}.tar.gz -Source51: http://www.openwall.com/crypt/crypt_blowfish-%{crypt_bf_version}.tar.gz.sign +# The sign key uses MD5 which is no longer accepted by gpg +#Source51: http://www.openwall.com/crypt/crypt_blowfish-%{crypt_bf_version}.tar.gz.sign %if %{normal_build} # ngpt was used in 8.1 and SLES8 @@ -208,6 +210,8 @@ Patch18: glibc-cpusetsize.diff # PATCH-FEATURE-SLE Use nscd user for nscd Patch19: nscd-server-user.patch +# PATCH-FEATURE-SLE powerpc: enable TLE only if GLIBC_ELISION_ENABLE=yes is defined +Patch21: powerpc-elision-enable-envvar.patch ### Locale related patches # PATCH-FIX-OPENSUSE Add additional locales @@ -216,6 +220,10 @@ Patch102: glibc-2.4.90-no_NO.diff # PATCH-FIX-OPENSUSE -- Renames for China Patch103: glibc-2.4-china.diff +# PATCH-FIX-OPENSUSE -- Add C.UTF-8 locale +Patch104: glibc-c-utf8-locale.patch +# PATCH-FIX-OPENSUSE -- Disable gettext for C.UTF-8 locale +Patch105: glibc-disable-gettext-for-c-utf8.patch ### Broken patches in glibc that we revert for now: @@ -232,42 +240,10 @@ ### # Patches from upstream ### -# PATCH-FIX-UPSTREAM Clear DF_1_NODELETE flag only for failed to load library (BZ #18778) -Patch1000: dont-remove-nodelete-flag.patch -# PATCH-FIX-UPSTREAM Readd O_LARGEFILE flag for openat64 (BZ #18781) -Patch1001: openat64-readd-o-largefile.patch -# PATCH-FIX-UPSTREAM getmntent: fix memory corruption w/blank lines (BZ #18887) -Patch1002: mntent-blank-line.patch -# PATCH-FIX-UPSTREAM Fix opendir inverted o_directory_works test (BZ #18921) -Patch1003: opendir-o-directory-check.patch -# PATCH-FIX-UPSTREAM strcoll: Remove incorrect STRDIFF-based optimization (BZ #18589) -Patch1004: strcoll-remove-strdiff-opt.patch -# PATCH-FIX-UPSTREAM Always enable pointer guard (BZ #18928) -Patch1005: ld-pointer-guard.patch -# PATCH-FIX-UPSTREAM Harden tls_dtor_list with pointer mangling (BZ #19018) -Patch1006: tls-dtor-list-mangling.patch -# PATCH-FIX-UPSTREAM PowerPC: Fix a race condition when eliding a lock (BZ #18743) -Patch1007: powerpc-lock-elision-race.patch -# PATCH-FIX-UPSTREAM Keep only ELF_RTYPE_CLASS_{PLT|COPY} bits for prelink (BZ #19178) -Patch1008: prelink-elf-rtype-class.patch -# PATCH-FIX-UPSTREAM Better workaround for aliases of *_finite symbols in vector math library (BZ# 19058) -Patch1009: vector-finite-math-aliases.patch -# PATCH-FIX-UPSTREAM powerpc: Fix usage of elision transient failure adapt param (BZ #19174) -Patch1010: powerpc-elision-adapt-param.patch -# PATCH-FIX-UPSTREAM Fix unbound alloca in catopen (CVE-2015-8779, BZ #17905) -Patch1011: catopen-unbound-alloca.patch -# PATCH-FIX-UPSTREAM Add range check on time fields (CVE-2015-8776, BZ #18985) -Patch1012: strftime-range-check.patch -# PATCH-FIX-UPSTREAM Handle overflow in hcreate (CVE-2015-8778, BZ #18240) -Patch1013: hcreate-overflow-check.patch -# PATCH-FIX-UPSTREAM Don't do lock elision on an error checking mutex (BZ #17514) -Patch1014: errorcheck-mutex-no-elision.patch -# PATCH-FIX-UPSTREAM Refactor strtod parsing of NaN payloads (CVE-2014-9761, BZ #16962) -Patch1015: refactor-nan-parsing.patch -# PATCH-FIX-UPSTREAM Fix getaddrinfo stack-based buffer overflow (CVE-2015-7547, BZ #18665) -Patch1016: send-dg-buffer-overflow.patch -# PATCH-FIX-UPSTREAM Fix isinf/isnan declaration conflict with C++11 (BZ #19439) -Patch1017: isinf-cxx11-conflict.patch +# PATCH-FIX-UPSTREAM Fix resource leak in resolver (BZ #19257) +Patch1000: resolv-mem-leak.patch +# PATCH-FIX-UPSTREAM Don't use long double functions if NO_LONG_DOUBLE +Patch1001: no-long-double.patch ### # Patches awaiting upstream approval @@ -275,27 +251,19 @@ # PATCH-FIX-UPSTREAM Always to locking when accessing streams (BZ #15142) Patch2000: fix-locking-in-_IO_cleanup.patch # PATCH-FIX-UPSTREAM Never try to execute the file in ldd (BZ #16750) -Patch2002: ldd-system-interp.patch +Patch2001: ldd-system-interp.patch # PATCH-FIX-UPSTREAM Don't close or flush stdio streams on abort (BZ #15436) -Patch2003: abort-no-flush.patch +Patch2002: abort-no-flush.patch # PATCH-FIX-UPSTREAM Speedup memset on x86-64 for large block sizes (BZ #16830) -Patch2005: glibc-memset-nontemporal.diff -# PATCH-FIX-UPSTREAM Avoid redundant shift character in iconv output at block boundary (BZ #17197) -Patch2006: ibm93x-redundant-shift-si.patch -# PATCH-FIX-UPSTREAM Static dlopen default library search path fix (BZ #17250) -Patch2007: static-dlopen.patch +Patch2003: glibc-memset-nontemporal.diff # PATCH-FIX-UPSTREAM Fix fnmatch handling of collating elements (BZ #17396, BZ #16976) -Patch2008: fnmatch-collating-elements.patch +Patch2004: fnmatch-collating-elements.patch # PATCH-FIX-UPSTREAM Properly reread entry after failure in nss_files getent function (BZ #18991) -Patch2009: nss-files-long-lines-2.patch +Patch2005: nss-files-long-lines-2.patch # PATCH-FIX-UPSTREAM Fix iconv buffer handling with IGNORE error handler (BZ #18830) -Patch2010: iconv-reset-input-buffer.patch -# PATCH-FIX-UPSTREAM Force rereading TZDEFRULES after it was used to set DST rules only (BZ #19253) -Patch2011: tzset-tzname.patch -# PATCH-FIX-UPSTREAM Fix resource leak in resolver (BZ #19257) -Patch2012: resolv-mem-leak.patch +Patch2006: iconv-reset-input-buffer.patch # PATCH-FIX-UPSTREAM Reinitialize dl_load_write_lock on fork (BZ #19282) -Patch2013: reinitialize-dl_load_write_lock.patch +Patch2008: reinitialize-dl_load_write_lock.patch # Non-glibc patches # PATCH-FIX-OPENSUSE Remove debianisms from manpages @@ -312,7 +280,7 @@ License: GFDL-1.1 Group: Documentation/Other Requires(post): %{install_info_prereq} -Requires(postun): %{install_info_prereq} +Requires(preun): %{install_info_prereq} BuildArch: noarch %description info @@ -485,10 +453,13 @@ %patch15 -p1 %patch18 -p1 %patch19 -p1 +%patch21 -p1 %patch100 -p1 %patch102 -p1 %patch103 -p1 +%patch104 -p1 +%patch105 -p1 %patch300 -p1 %patch301 -p1 @@ -497,35 +468,15 @@ %patch1000 -p1 %patch1001 -p1 -%patch1002 -p1 -%patch1003 -p1 -%patch1004 -p1 -%patch1005 -p1 -%patch1006 -p1 -%patch1007 -p1 -%patch1008 -p1 -%patch1009 -p1 -%patch1010 -p1 -%patch1011 -p1 -%patch1012 -p1 -%patch1013 -p1 -%patch1014 -p1 -%patch1015 -p1 -%patch1016 -p1 -%patch1017 -p1 %patch2000 -p1 +%patch2001 -p1 %patch2002 -p1 %patch2003 -p1 +%patch2004 -p1 %patch2005 -p1 %patch2006 -p1 -%patch2007 -p1 %patch2008 -p1 -%patch2009 -p1 -%patch2010 -p1 -%patch2011 -p1 -%patch2012 -p1 -%patch2013 -p1 %patch3000 @@ -680,7 +631,8 @@ %endif --enable-kernel=%{enablekernel} \ --with-bugurl=http://bugs.opensuse.org \ - --enable-bind-now --enable-obsolete-rpc + --enable-bind-now --enable-obsolete-rpc \ + --disable-timezone-tools # Should we enable --enable-systemtap? # Should we enable --enable-nss-crypt to build use freebl3 hash functions? # explicitly set CFLAGS to use the full CFLAGS (not the reduced one for configure) @@ -920,10 +872,6 @@ mkdir -p %{buildroot}/%{_lib}/obsolete %endif -# NPTL <bits/stdio-lock.h> is not usable outside of glibc, so include -# the generic one (RH#162634) -cp -av bits/stdio-lock.h %{buildroot}%{_includedir}/bits/stdio-lock.h - # Miscelanna: install -m 0700 glibc_post_upgrade %{buildroot}%{_sbindir} @@ -997,11 +945,7 @@ # Don't look at ldd! We don't wish a /bin/sh requires chmod 644 %{buildroot}%{_bindir}/ldd -# Remove timezone data, now coming in standalone package: -for i in sbin/sln usr/bin/tzselect usr/sbin/zic usr/sbin/zdump etc/localtime; do - rm -f %{buildroot}/$i -done -rm -rf %{buildroot}%{_datadir}/zoneinfo +rm -f %{buildroot}/sbin/sln # Remove the buildflags tracking section and the build-id for o in %{buildroot}/%{_libdir}/crt[1in].o %{buildroot}/%{_libdir}/lib*_nonshared.a; do @@ -1043,6 +987,26 @@ rm -rf %{buildroot}/run/nscd %endif # i686 +# LSB +%ifarch %ix86 +ln -sf /%{_lib}/ld-linux.so.2 $RPM_BUILD_ROOT/%{_lib}/ld-lsb.so.3 +%endif +%ifarch x86_64 +ln -sf /%{_lib}/ld-linux-x86-64.so.2 $RPM_BUILD_ROOT/%{_lib}/ld-lsb-x86-64.so.3 +%endif +%ifarch ppc +ln -sf /%{_lib}/ld.so.1 $RPM_BUILD_ROOT/%{_lib}/ld-lsb-ppc32.so.3 +%endif +%ifarch ppc64 +ln -sf /%{_lib}/ld64.so.1 $RPM_BUILD_ROOT/%{_lib}/ld-lsb-ppc64.so.3 +%endif +%ifarch s390 +ln -sf /%{_lib}/ld.so.1 $RPM_BUILD_ROOT/%{_lib}/ld-lsb-s390.so.3 +%endif +%ifarch s390x +ln -sf /%{_lib}/ld64.so.1 $RPM_BUILD_ROOT/%{_lib}/ld-lsb-s390x.so.3 +%endif + %endif # %{normal_build} %if %{utils_build} @@ -1084,7 +1048,7 @@ %post info %install_info --info-dir=%{_infodir} %{_infodir}/libc.info.gz -%postun info +%preun info %install_info_delete --info-dir=%{_infodir} %{_infodir}/libc.info.gz %pre -n nscd @@ -1168,6 +1132,10 @@ /lib/ld-linux-aarch64.so.1 /%{_lib}/ld-linux-aarch64.so.1 %endif +%ifarch %ix86 x86_64 ppc ppc64 s390 s390x +# LSB +/%{_lib}/*-lsb*.so.3 +%endif /%{_lib}/libBrokenLocale-%{version}.so /%{_lib}/libBrokenLocale.so.1 glibc-utils.spec: same change ++++++ glibc.spec ++++++ --- /var/tmp/diff_new_pack.hjF9cU/_old 2016-04-22 16:16:03.000000000 +0200 +++ /var/tmp/diff_new_pack.hjF9cU/_new 2016-04-22 16:16:03.000000000 +0200 @@ -45,6 +45,7 @@ BuildRequires: xz %if %{testsuite_build} BuildRequires: gcc-c++ +BuildRequires: glibc-devel-static BuildRequires: libstdc++-devel %endif %if %{utils_build} @@ -102,9 +103,9 @@ # 3.1 is the openSUSE 12.1 kernel %define enablekernel 3.0 -Version: 2.22 +Version: 2.23 Release: 0 -%define git_id bbab82c25da9 +%define git_id 10ed3a0ffbb4 Url: http://www.gnu.org/software/libc/libc.html BuildRoot: %{_tmppath}/%{name}-%{version}-build #Source: glibc-%{version}-%{git_id}.tar.xz @@ -123,7 +124,8 @@ Source21: nscd.service # crypt_blowfish Source50: http://www.openwall.com/crypt/crypt_blowfish-%{crypt_bf_version}.tar.gz -Source51: http://www.openwall.com/crypt/crypt_blowfish-%{crypt_bf_version}.tar.gz.sign +# The sign key uses MD5 which is no longer accepted by gpg +#Source51: http://www.openwall.com/crypt/crypt_blowfish-%{crypt_bf_version}.tar.gz.sign %if %{normal_build} # ngpt was used in 8.1 and SLES8 @@ -208,6 +210,8 @@ Patch18: glibc-cpusetsize.diff # PATCH-FEATURE-SLE Use nscd user for nscd Patch19: nscd-server-user.patch +# PATCH-FEATURE-SLE powerpc: enable TLE only if GLIBC_ELISION_ENABLE=yes is defined +Patch21: powerpc-elision-enable-envvar.patch ### Locale related patches # PATCH-FIX-OPENSUSE Add additional locales @@ -216,6 +220,10 @@ Patch102: glibc-2.4.90-no_NO.diff # PATCH-FIX-OPENSUSE -- Renames for China Patch103: glibc-2.4-china.diff +# PATCH-FIX-OPENSUSE -- Add C.UTF-8 locale +Patch104: glibc-c-utf8-locale.patch +# PATCH-FIX-OPENSUSE -- Disable gettext for C.UTF-8 locale +Patch105: glibc-disable-gettext-for-c-utf8.patch ### Broken patches in glibc that we revert for now: @@ -232,42 +240,10 @@ ### # Patches from upstream ### -# PATCH-FIX-UPSTREAM Clear DF_1_NODELETE flag only for failed to load library (BZ #18778) -Patch1000: dont-remove-nodelete-flag.patch -# PATCH-FIX-UPSTREAM Readd O_LARGEFILE flag for openat64 (BZ #18781) -Patch1001: openat64-readd-o-largefile.patch -# PATCH-FIX-UPSTREAM getmntent: fix memory corruption w/blank lines (BZ #18887) -Patch1002: mntent-blank-line.patch -# PATCH-FIX-UPSTREAM Fix opendir inverted o_directory_works test (BZ #18921) -Patch1003: opendir-o-directory-check.patch -# PATCH-FIX-UPSTREAM strcoll: Remove incorrect STRDIFF-based optimization (BZ #18589) -Patch1004: strcoll-remove-strdiff-opt.patch -# PATCH-FIX-UPSTREAM Always enable pointer guard (BZ #18928) -Patch1005: ld-pointer-guard.patch -# PATCH-FIX-UPSTREAM Harden tls_dtor_list with pointer mangling (BZ #19018) -Patch1006: tls-dtor-list-mangling.patch -# PATCH-FIX-UPSTREAM PowerPC: Fix a race condition when eliding a lock (BZ #18743) -Patch1007: powerpc-lock-elision-race.patch -# PATCH-FIX-UPSTREAM Keep only ELF_RTYPE_CLASS_{PLT|COPY} bits for prelink (BZ #19178) -Patch1008: prelink-elf-rtype-class.patch -# PATCH-FIX-UPSTREAM Better workaround for aliases of *_finite symbols in vector math library (BZ# 19058) -Patch1009: vector-finite-math-aliases.patch -# PATCH-FIX-UPSTREAM powerpc: Fix usage of elision transient failure adapt param (BZ #19174) -Patch1010: powerpc-elision-adapt-param.patch -# PATCH-FIX-UPSTREAM Fix unbound alloca in catopen (CVE-2015-8779, BZ #17905) -Patch1011: catopen-unbound-alloca.patch -# PATCH-FIX-UPSTREAM Add range check on time fields (CVE-2015-8776, BZ #18985) -Patch1012: strftime-range-check.patch -# PATCH-FIX-UPSTREAM Handle overflow in hcreate (CVE-2015-8778, BZ #18240) -Patch1013: hcreate-overflow-check.patch -# PATCH-FIX-UPSTREAM Don't do lock elision on an error checking mutex (BZ #17514) -Patch1014: errorcheck-mutex-no-elision.patch -# PATCH-FIX-UPSTREAM Refactor strtod parsing of NaN payloads (CVE-2014-9761, BZ #16962) -Patch1015: refactor-nan-parsing.patch -# PATCH-FIX-UPSTREAM Fix getaddrinfo stack-based buffer overflow (CVE-2015-7547, BZ #18665) -Patch1016: send-dg-buffer-overflow.patch -# PATCH-FIX-UPSTREAM Fix isinf/isnan declaration conflict with C++11 (BZ #19439) -Patch1017: isinf-cxx11-conflict.patch +# PATCH-FIX-UPSTREAM Fix resource leak in resolver (BZ #19257) +Patch1000: resolv-mem-leak.patch +# PATCH-FIX-UPSTREAM Don't use long double functions if NO_LONG_DOUBLE +Patch1001: no-long-double.patch ### # Patches awaiting upstream approval @@ -275,27 +251,19 @@ # PATCH-FIX-UPSTREAM Always to locking when accessing streams (BZ #15142) Patch2000: fix-locking-in-_IO_cleanup.patch # PATCH-FIX-UPSTREAM Never try to execute the file in ldd (BZ #16750) -Patch2002: ldd-system-interp.patch +Patch2001: ldd-system-interp.patch # PATCH-FIX-UPSTREAM Don't close or flush stdio streams on abort (BZ #15436) -Patch2003: abort-no-flush.patch +Patch2002: abort-no-flush.patch # PATCH-FIX-UPSTREAM Speedup memset on x86-64 for large block sizes (BZ #16830) -Patch2005: glibc-memset-nontemporal.diff -# PATCH-FIX-UPSTREAM Avoid redundant shift character in iconv output at block boundary (BZ #17197) -Patch2006: ibm93x-redundant-shift-si.patch -# PATCH-FIX-UPSTREAM Static dlopen default library search path fix (BZ #17250) -Patch2007: static-dlopen.patch +Patch2003: glibc-memset-nontemporal.diff # PATCH-FIX-UPSTREAM Fix fnmatch handling of collating elements (BZ #17396, BZ #16976) -Patch2008: fnmatch-collating-elements.patch +Patch2004: fnmatch-collating-elements.patch # PATCH-FIX-UPSTREAM Properly reread entry after failure in nss_files getent function (BZ #18991) -Patch2009: nss-files-long-lines-2.patch +Patch2005: nss-files-long-lines-2.patch # PATCH-FIX-UPSTREAM Fix iconv buffer handling with IGNORE error handler (BZ #18830) -Patch2010: iconv-reset-input-buffer.patch -# PATCH-FIX-UPSTREAM Force rereading TZDEFRULES after it was used to set DST rules only (BZ #19253) -Patch2011: tzset-tzname.patch -# PATCH-FIX-UPSTREAM Fix resource leak in resolver (BZ #19257) -Patch2012: resolv-mem-leak.patch +Patch2006: iconv-reset-input-buffer.patch # PATCH-FIX-UPSTREAM Reinitialize dl_load_write_lock on fork (BZ #19282) -Patch2013: reinitialize-dl_load_write_lock.patch +Patch2008: reinitialize-dl_load_write_lock.patch # Non-glibc patches # PATCH-FIX-OPENSUSE Remove debianisms from manpages @@ -312,7 +280,7 @@ License: GFDL-1.1 Group: Documentation/Other Requires(post): %{install_info_prereq} -Requires(postun): %{install_info_prereq} +Requires(preun): %{install_info_prereq} BuildArch: noarch %description info @@ -485,10 +453,13 @@ %patch15 -p1 %patch18 -p1 %patch19 -p1 +%patch21 -p1 %patch100 -p1 %patch102 -p1 %patch103 -p1 +%patch104 -p1 +%patch105 -p1 %patch300 -p1 %patch301 -p1 @@ -497,35 +468,15 @@ %patch1000 -p1 %patch1001 -p1 -%patch1002 -p1 -%patch1003 -p1 -%patch1004 -p1 -%patch1005 -p1 -%patch1006 -p1 -%patch1007 -p1 -%patch1008 -p1 -%patch1009 -p1 -%patch1010 -p1 -%patch1011 -p1 -%patch1012 -p1 -%patch1013 -p1 -%patch1014 -p1 -%patch1015 -p1 -%patch1016 -p1 -%patch1017 -p1 %patch2000 -p1 +%patch2001 -p1 %patch2002 -p1 %patch2003 -p1 +%patch2004 -p1 %patch2005 -p1 %patch2006 -p1 -%patch2007 -p1 %patch2008 -p1 -%patch2009 -p1 -%patch2010 -p1 -%patch2011 -p1 -%patch2012 -p1 -%patch2013 -p1 %patch3000 @@ -680,7 +631,8 @@ %endif --enable-kernel=%{enablekernel} \ --with-bugurl=http://bugs.opensuse.org \ - --enable-bind-now --enable-obsolete-rpc + --enable-bind-now --enable-obsolete-rpc \ + --disable-timezone-tools # Should we enable --enable-systemtap? # Should we enable --enable-nss-crypt to build use freebl3 hash functions? # explicitly set CFLAGS to use the full CFLAGS (not the reduced one for configure) @@ -920,10 +872,6 @@ mkdir -p %{buildroot}/%{_lib}/obsolete %endif -# NPTL <bits/stdio-lock.h> is not usable outside of glibc, so include -# the generic one (RH#162634) -cp -av bits/stdio-lock.h %{buildroot}%{_includedir}/bits/stdio-lock.h - # Miscelanna: install -m 0700 glibc_post_upgrade %{buildroot}%{_sbindir} @@ -997,11 +945,7 @@ # Don't look at ldd! We don't wish a /bin/sh requires chmod 644 %{buildroot}%{_bindir}/ldd -# Remove timezone data, now coming in standalone package: -for i in sbin/sln usr/bin/tzselect usr/sbin/zic usr/sbin/zdump etc/localtime; do - rm -f %{buildroot}/$i -done -rm -rf %{buildroot}%{_datadir}/zoneinfo +rm -f %{buildroot}/sbin/sln # Remove the buildflags tracking section and the build-id for o in %{buildroot}/%{_libdir}/crt[1in].o %{buildroot}/%{_libdir}/lib*_nonshared.a; do @@ -1043,6 +987,26 @@ rm -rf %{buildroot}/run/nscd %endif # i686 +# LSB +%ifarch %ix86 +ln -sf /%{_lib}/ld-linux.so.2 $RPM_BUILD_ROOT/%{_lib}/ld-lsb.so.3 +%endif +%ifarch x86_64 +ln -sf /%{_lib}/ld-linux-x86-64.so.2 $RPM_BUILD_ROOT/%{_lib}/ld-lsb-x86-64.so.3 +%endif +%ifarch ppc +ln -sf /%{_lib}/ld.so.1 $RPM_BUILD_ROOT/%{_lib}/ld-lsb-ppc32.so.3 +%endif +%ifarch ppc64 +ln -sf /%{_lib}/ld64.so.1 $RPM_BUILD_ROOT/%{_lib}/ld-lsb-ppc64.so.3 +%endif +%ifarch s390 +ln -sf /%{_lib}/ld.so.1 $RPM_BUILD_ROOT/%{_lib}/ld-lsb-s390.so.3 +%endif +%ifarch s390x +ln -sf /%{_lib}/ld64.so.1 $RPM_BUILD_ROOT/%{_lib}/ld-lsb-s390x.so.3 +%endif + %endif # %{normal_build} %if %{utils_build} @@ -1084,7 +1048,7 @@ %post info %install_info --info-dir=%{_infodir} %{_infodir}/libc.info.gz -%postun info +%preun info %install_info_delete --info-dir=%{_infodir} %{_infodir}/libc.info.gz %pre -n nscd @@ -1168,6 +1132,10 @@ /lib/ld-linux-aarch64.so.1 /%{_lib}/ld-linux-aarch64.so.1 %endif +%ifarch %ix86 x86_64 ppc ppc64 s390 s390x +# LSB +/%{_lib}/*-lsb*.so.3 +%endif /%{_lib}/libBrokenLocale-%{version}.so /%{_lib}/libBrokenLocale.so.1 ++++++ fix-locking-in-_IO_cleanup.patch ++++++ --- /var/tmp/diff_new_pack.hjF9cU/_old 2016-04-22 16:16:03.000000000 +0200 +++ /var/tmp/diff_new_pack.hjF9cU/_new 2016-04-22 16:16:03.000000000 +0200 @@ -186,7 +186,7 @@ if (! dealloc_buffers && !(fp->_flags & _IO_USER_BUF)) @@ -980,8 +934,8 @@ _IO_unbuffer_write (void) - _IO_SETBUF (fp, NULL, 0); + _IO_wsetb (fp, NULL, NULL, 0); #ifdef _IO_MTSAFE_IO - if (cnt < MAXTRIES && fp->_lock != NULL) ++++++ glibc-2.14-crypt.diff ++++++ --- /var/tmp/diff_new_pack.hjF9cU/_old 2016-04-22 16:16:03.000000000 +0200 +++ /var/tmp/diff_new_pack.hjF9cU/_new 2016-04-22 16:16:03.000000000 +0200 @@ -44,11 +44,11 @@ */ char * --__crypt_r (key, salt, data) -+__des_crypt_r (key, salt, data) - const char *key; - const char *salt; - struct crypt_data * __restrict data; +-__crypt_r (const char *key, const char *salt, ++__des_crypt_r (const char *key, const char *salt, + struct crypt_data * __restrict data) + { + ufc_long res[4]; @@ -145,6 +145,7 @@ __crypt_r (key, salt, data) _ufc_output_conversion_r (res[0], res[1], salt, data); return data->crypt_3_buf; @@ -91,269 +91,242 @@ =================================================================== --- /dev/null +++ glibc-2.20/sysdeps/unix/sysv/linux/aarch64/libowcrypt.abilist -@@ -0,0 +1,5 @@ -+OW_CRYPT_1.0 -+ OW_CRYPT_1.0 A -+ crypt_gensalt F -+ crypt_gensalt_ra F -+ crypt_gensalt_rn F +@@ -0,0 +1,4 @@ ++OW_CRYPT_1.0 OW_CRYPT_1.0 A ++OW_CRYPT_1.0 crypt_gensalt F ++OW_CRYPT_1.0 crypt_gensalt_ra F ++OW_CRYPT_1.0 crypt_gensalt_rn F Index: glibc-2.20/sysdeps/unix/sysv/linux/alpha/libowcrypt.abilist =================================================================== --- /dev/null +++ glibc-2.20/sysdeps/unix/sysv/linux/alpha/libowcrypt.abilist -@@ -0,0 +1,5 @@ -+OW_CRYPT_1.0 -+ OW_CRYPT_1.0 A -+ crypt_gensalt F -+ crypt_gensalt_ra F -+ crypt_gensalt_rn F +@@ -0,0 +1,4 @@ ++OW_CRYPT_1.0 OW_CRYPT_1.0 A ++OW_CRYPT_1.0 crypt_gensalt F ++OW_CRYPT_1.0 crypt_gensalt_ra F ++OW_CRYPT_1.0 crypt_gensalt_rn F Index: glibc-2.20/sysdeps/unix/sysv/linux/arm/libowcrypt.abilist =================================================================== --- /dev/null +++ glibc-2.20/sysdeps/unix/sysv/linux/arm/libowcrypt.abilist -@@ -0,0 +1,5 @@ -+OW_CRYPT_1.0 -+ OW_CRYPT_1.0 A -+ crypt_gensalt F -+ crypt_gensalt_ra F -+ crypt_gensalt_rn F +@@ -0,0 +1,4 @@ ++OW_CRYPT_1.0 OW_CRYPT_1.0 A ++OW_CRYPT_1.0 crypt_gensalt F ++OW_CRYPT_1.0 crypt_gensalt_ra F ++OW_CRYPT_1.0 crypt_gensalt_rn F Index: glibc-2.20/sysdeps/unix/sysv/linux/hppa/libowcrypt.abilist =================================================================== --- /dev/null +++ glibc-2.20/sysdeps/unix/sysv/linux/hppa/libowcrypt.abilist -@@ -0,0 +1,5 @@ -+OW_CRYPT_1.0 -+ OW_CRYPT_1.0 A -+ crypt_gensalt F -+ crypt_gensalt_ra F -+ crypt_gensalt_rn F +@@ -0,0 +1,4 @@ ++OW_CRYPT_1.0 OW_CRYPT_1.0 A ++OW_CRYPT_1.0 crypt_gensalt F ++OW_CRYPT_1.0 crypt_gensalt_ra F ++OW_CRYPT_1.0 crypt_gensalt_rn F Index: glibc-2.20/sysdeps/unix/sysv/linux/i386/libowcrypt.abilist =================================================================== --- /dev/null +++ glibc-2.20/sysdeps/unix/sysv/linux/i386/libowcrypt.abilist -@@ -0,0 +1,5 @@ -+OW_CRYPT_1.0 -+ OW_CRYPT_1.0 A -+ crypt_gensalt F -+ crypt_gensalt_ra F -+ crypt_gensalt_rn F +@@ -0,0 +1,4 @@ ++OW_CRYPT_1.0 OW_CRYPT_1.0 A ++OW_CRYPT_1.0 crypt_gensalt F ++OW_CRYPT_1.0 crypt_gensalt_ra F ++OW_CRYPT_1.0 crypt_gensalt_rn F Index: glibc-2.20/sysdeps/unix/sysv/linux/ia64/libowcrypt.abilist =================================================================== --- /dev/null +++ glibc-2.20/sysdeps/unix/sysv/linux/ia64/libowcrypt.abilist -@@ -0,0 +1,5 @@ -+OW_CRYPT_1.0 -+ OW_CRYPT_1.0 A -+ crypt_gensalt F -+ crypt_gensalt_ra F -+ crypt_gensalt_rn F +@@ -0,0 +1,4 @@ ++OW_CRYPT_1.0 OW_CRYPT_1.0 A ++OW_CRYPT_1.0 crypt_gensalt F ++OW_CRYPT_1.0 crypt_gensalt_ra F ++OW_CRYPT_1.0 crypt_gensalt_rn F Index: glibc-2.20/sysdeps/unix/sysv/linux/m68k/coldfire/libowcrypt.abilist =================================================================== --- /dev/null +++ glibc-2.20/sysdeps/unix/sysv/linux/m68k/coldfire/libowcrypt.abilist -@@ -0,0 +1,5 @@ -+OW_CRYPT_1.0 -+ OW_CRYPT_1.0 A -+ crypt_gensalt F -+ crypt_gensalt_ra F -+ crypt_gensalt_rn F +@@ -0,0 +1,4 @@ ++OW_CRYPT_1.0 OW_CRYPT_1.0 A ++OW_CRYPT_1.0 crypt_gensalt F ++OW_CRYPT_1.0 crypt_gensalt_ra F ++OW_CRYPT_1.0 crypt_gensalt_rn F Index: glibc-2.20/sysdeps/unix/sysv/linux/m68k/m680x0/libowcrypt.abilist =================================================================== --- /dev/null +++ glibc-2.20/sysdeps/unix/sysv/linux/m68k/m680x0/libowcrypt.abilist -@@ -0,0 +1,5 @@ -+OW_CRYPT_1.0 -+ OW_CRYPT_1.0 A -+ crypt_gensalt F -+ crypt_gensalt_ra F -+ crypt_gensalt_rn F +@@ -0,0 +1,4 @@ ++OW_CRYPT_1.0 OW_CRYPT_1.0 A ++OW_CRYPT_1.0 crypt_gensalt F ++OW_CRYPT_1.0 crypt_gensalt_ra F ++OW_CRYPT_1.0 crypt_gensalt_rn F Index: glibc-2.20/sysdeps/unix/sysv/linux/microblaze/libowcrypt.abilist =================================================================== --- /dev/null +++ glibc-2.20/sysdeps/unix/sysv/linux/microblaze/libowcrypt.abilist -@@ -0,0 +1,5 @@ -+OW_CRYPT_1.0 -+ OW_CRYPT_1.0 A -+ crypt_gensalt F -+ crypt_gensalt_ra F -+ crypt_gensalt_rn F +@@ -0,0 +1,4 @@ ++OW_CRYPT_1.0 OW_CRYPT_1.0 A ++OW_CRYPT_1.0 crypt_gensalt F ++OW_CRYPT_1.0 crypt_gensalt_ra F ++OW_CRYPT_1.0 crypt_gensalt_rn F Index: glibc-2.20/sysdeps/unix/sysv/linux/mips/mips32/fpu/libowcrypt.abilist =================================================================== --- /dev/null +++ glibc-2.20/sysdeps/unix/sysv/linux/mips/mips32/fpu/libowcrypt.abilist -@@ -0,0 +1,5 @@ -+OW_CRYPT_1.0 -+ OW_CRYPT_1.0 A -+ crypt_gensalt F -+ crypt_gensalt_ra F -+ crypt_gensalt_rn F +@@ -0,0 +1,4 @@ ++OW_CRYPT_1.0 OW_CRYPT_1.0 A ++OW_CRYPT_1.0 crypt_gensalt F ++OW_CRYPT_1.0 crypt_gensalt_ra F ++OW_CRYPT_1.0 crypt_gensalt_rn F Index: glibc-2.20/sysdeps/unix/sysv/linux/mips/mips32/nofpu/libowcrypt.abilist =================================================================== --- /dev/null +++ glibc-2.20/sysdeps/unix/sysv/linux/mips/mips32/nofpu/libowcrypt.abilist -@@ -0,0 +1,5 @@ -+OW_CRYPT_1.0 -+ OW_CRYPT_1.0 A -+ crypt_gensalt F -+ crypt_gensalt_ra F -+ crypt_gensalt_rn F +@@ -0,0 +1,4 @@ ++OW_CRYPT_1.0 OW_CRYPT_1.0 A ++OW_CRYPT_1.0 crypt_gensalt F ++OW_CRYPT_1.0 crypt_gensalt_ra F ++OW_CRYPT_1.0 crypt_gensalt_rn F Index: glibc-2.20/sysdeps/unix/sysv/linux/mips/mips64/n32/libowcrypt.abilist =================================================================== --- /dev/null +++ glibc-2.20/sysdeps/unix/sysv/linux/mips/mips64/n32/libowcrypt.abilist -@@ -0,0 +1,5 @@ -+OW_CRYPT_1.0 -+ OW_CRYPT_1.0 A -+ crypt_gensalt F -+ crypt_gensalt_ra F -+ crypt_gensalt_rn F +@@ -0,0 +1,4 @@ ++OW_CRYPT_1.0 OW_CRYPT_1.0 A ++OW_CRYPT_1.0 crypt_gensalt F ++OW_CRYPT_1.0 crypt_gensalt_ra F ++OW_CRYPT_1.0 crypt_gensalt_rn F Index: glibc-2.20/sysdeps/unix/sysv/linux/mips/mips64/n64/libowcrypt.abilist =================================================================== --- /dev/null +++ glibc-2.20/sysdeps/unix/sysv/linux/mips/mips64/n64/libowcrypt.abilist -@@ -0,0 +1,5 @@ -+OW_CRYPT_1.0 -+ OW_CRYPT_1.0 A -+ crypt_gensalt F -+ crypt_gensalt_ra F -+ crypt_gensalt_rn F +@@ -0,0 +1,4 @@ ++OW_CRYPT_1.0 OW_CRYPT_1.0 A ++OW_CRYPT_1.0 crypt_gensalt F ++OW_CRYPT_1.0 crypt_gensalt_ra F ++OW_CRYPT_1.0 crypt_gensalt_rn F Index: glibc-2.20/sysdeps/unix/sysv/linux/powerpc/powerpc32/fpu/libowcrypt.abilist =================================================================== --- /dev/null +++ glibc-2.20/sysdeps/unix/sysv/linux/powerpc/powerpc32/fpu/libowcrypt.abilist -@@ -0,0 +1,5 @@ -+OW_CRYPT_1.0 -+ OW_CRYPT_1.0 A -+ crypt_gensalt F -+ crypt_gensalt_ra F -+ crypt_gensalt_rn F +@@ -0,0 +1,4 @@ ++OW_CRYPT_1.0 OW_CRYPT_1.0 A ++OW_CRYPT_1.0 crypt_gensalt F ++OW_CRYPT_1.0 crypt_gensalt_ra F ++OW_CRYPT_1.0 crypt_gensalt_rn F Index: glibc-2.20/sysdeps/unix/sysv/linux/powerpc/powerpc32/nofpu/libowcrypt.abilist =================================================================== --- /dev/null +++ glibc-2.20/sysdeps/unix/sysv/linux/powerpc/powerpc32/nofpu/libowcrypt.abilist -@@ -0,0 +1,5 @@ -+OW_CRYPT_1.0 -+ OW_CRYPT_1.0 A -+ crypt_gensalt F -+ crypt_gensalt_ra F -+ crypt_gensalt_rn F +@@ -0,0 +1,4 @@ ++OW_CRYPT_1.0 OW_CRYPT_1.0 A ++OW_CRYPT_1.0 crypt_gensalt F ++OW_CRYPT_1.0 crypt_gensalt_ra F ++OW_CRYPT_1.0 crypt_gensalt_rn F Index: glibc-2.20/sysdeps/unix/sysv/linux/powerpc/powerpc64/libowcrypt-le.abilist =================================================================== --- /dev/null +++ glibc-2.20/sysdeps/unix/sysv/linux/powerpc/powerpc64/libowcrypt-le.abilist -@@ -0,0 +1,5 @@ -+OW_CRYPT_1.0 -+ OW_CRYPT_1.0 A -+ crypt_gensalt F -+ crypt_gensalt_ra F -+ crypt_gensalt_rn F +@@ -0,0 +1,4 @@ ++OW_CRYPT_1.0 OW_CRYPT_1.0 A ++OW_CRYPT_1.0 crypt_gensalt F ++OW_CRYPT_1.0 crypt_gensalt_ra F ++OW_CRYPT_1.0 crypt_gensalt_rn F Index: glibc-2.20/sysdeps/unix/sysv/linux/powerpc/powerpc64/libowcrypt.abilist =================================================================== --- /dev/null +++ glibc-2.20/sysdeps/unix/sysv/linux/powerpc/powerpc64/libowcrypt.abilist -@@ -0,0 +1,5 @@ -+OW_CRYPT_1.0 -+ OW_CRYPT_1.0 A -+ crypt_gensalt F -+ crypt_gensalt_ra F -+ crypt_gensalt_rn F +@@ -0,0 +1,4 @@ ++OW_CRYPT_1.0 OW_CRYPT_1.0 A ++OW_CRYPT_1.0 crypt_gensalt F ++OW_CRYPT_1.0 crypt_gensalt_ra F ++OW_CRYPT_1.0 crypt_gensalt_rn F Index: glibc-2.20/sysdeps/unix/sysv/linux/s390/s390-32/libowcrypt.abilist =================================================================== --- /dev/null +++ glibc-2.20/sysdeps/unix/sysv/linux/s390/s390-32/libowcrypt.abilist -@@ -0,0 +1,5 @@ -+OW_CRYPT_1.0 -+ OW_CRYPT_1.0 A -+ crypt_gensalt F -+ crypt_gensalt_ra F -+ crypt_gensalt_rn F +@@ -0,0 +1,4 @@ ++OW_CRYPT_1.0 OW_CRYPT_1.0 A ++OW_CRYPT_1.0 crypt_gensalt F ++OW_CRYPT_1.0 crypt_gensalt_ra F ++OW_CRYPT_1.0 crypt_gensalt_rn F Index: glibc-2.20/sysdeps/unix/sysv/linux/s390/s390-64/libowcrypt.abilist =================================================================== --- /dev/null +++ glibc-2.20/sysdeps/unix/sysv/linux/s390/s390-64/libowcrypt.abilist -@@ -0,0 +1,5 @@ -+OW_CRYPT_1.0 -+ OW_CRYPT_1.0 A -+ crypt_gensalt F -+ crypt_gensalt_ra F -+ crypt_gensalt_rn F +@@ -0,0 +1,4 @@ ++OW_CRYPT_1.0 OW_CRYPT_1.0 A ++OW_CRYPT_1.0 crypt_gensalt F ++OW_CRYPT_1.0 crypt_gensalt_ra F ++OW_CRYPT_1.0 crypt_gensalt_rn F Index: glibc-2.20/sysdeps/unix/sysv/linux/sh/libowcrypt.abilist =================================================================== --- /dev/null +++ glibc-2.20/sysdeps/unix/sysv/linux/sh/libowcrypt.abilist -@@ -0,0 +1,5 @@ -+OW_CRYPT_1.0 -+ OW_CRYPT_1.0 A -+ crypt_gensalt F -+ crypt_gensalt_ra F -+ crypt_gensalt_rn F +@@ -0,0 +1,4 @@ ++OW_CRYPT_1.0 OW_CRYPT_1.0 A ++OW_CRYPT_1.0 crypt_gensalt F ++OW_CRYPT_1.0 crypt_gensalt_ra F ++OW_CRYPT_1.0 crypt_gensalt_rn F Index: glibc-2.20/sysdeps/unix/sysv/linux/sparc/sparc32/libowcrypt.abilist =================================================================== --- /dev/null +++ glibc-2.20/sysdeps/unix/sysv/linux/sparc/sparc32/libowcrypt.abilist -@@ -0,0 +1,5 @@ -+OW_CRYPT_1.0 -+ OW_CRYPT_1.0 A -+ crypt_gensalt F -+ crypt_gensalt_ra F -+ crypt_gensalt_rn F +@@ -0,0 +1,4 @@ ++OW_CRYPT_1.0 OW_CRYPT_1.0 A ++OW_CRYPT_1.0 crypt_gensalt F ++OW_CRYPT_1.0 crypt_gensalt_ra F ++OW_CRYPT_1.0 crypt_gensalt_rn F Index: glibc-2.20/sysdeps/unix/sysv/linux/sparc/sparc64/libowcrypt.abilist =================================================================== --- /dev/null +++ glibc-2.20/sysdeps/unix/sysv/linux/sparc/sparc64/libowcrypt.abilist -@@ -0,0 +1,5 @@ -+OW_CRYPT_1.0 -+ OW_CRYPT_1.0 A -+ crypt_gensalt F -+ crypt_gensalt_ra F -+ crypt_gensalt_rn F +@@ -0,0 +1,4 @@ ++OW_CRYPT_1.0 OW_CRYPT_1.0 A ++OW_CRYPT_1.0 crypt_gensalt F ++OW_CRYPT_1.0 crypt_gensalt_ra F ++OW_CRYPT_1.0 crypt_gensalt_rn F Index: glibc-2.20/sysdeps/unix/sysv/linux/tile/tilegx/tilegx32/libowcrypt.abilist =================================================================== --- /dev/null +++ glibc-2.20/sysdeps/unix/sysv/linux/tile/tilegx/tilegx32/libowcrypt.abilist -@@ -0,0 +1,5 @@ -+OW_CRYPT_1.0 -+ OW_CRYPT_1.0 A -+ crypt_gensalt F -+ crypt_gensalt_ra F -+ crypt_gensalt_rn F +@@ -0,0 +1,4 @@ ++OW_CRYPT_1.0 OW_CRYPT_1.0 A ++OW_CRYPT_1.0 crypt_gensalt F ++OW_CRYPT_1.0 crypt_gensalt_ra F ++OW_CRYPT_1.0 crypt_gensalt_rn F Index: glibc-2.20/sysdeps/unix/sysv/linux/tile/tilegx/tilegx64/libowcrypt.abilist =================================================================== --- /dev/null +++ glibc-2.20/sysdeps/unix/sysv/linux/tile/tilegx/tilegx64/libowcrypt.abilist -@@ -0,0 +1,5 @@ -+OW_CRYPT_1.0 -+ OW_CRYPT_1.0 A -+ crypt_gensalt F -+ crypt_gensalt_ra F -+ crypt_gensalt_rn F +@@ -0,0 +1,4 @@ ++OW_CRYPT_1.0 OW_CRYPT_1.0 A ++OW_CRYPT_1.0 crypt_gensalt F ++OW_CRYPT_1.0 crypt_gensalt_ra F ++OW_CRYPT_1.0 crypt_gensalt_rn F Index: glibc-2.20/sysdeps/unix/sysv/linux/tile/tilepro/libowcrypt.abilist =================================================================== --- /dev/null +++ glibc-2.20/sysdeps/unix/sysv/linux/tile/tilepro/libowcrypt.abilist -@@ -0,0 +1,5 @@ -+OW_CRYPT_1.0 -+ OW_CRYPT_1.0 A -+ crypt_gensalt F -+ crypt_gensalt_ra F -+ crypt_gensalt_rn F +@@ -0,0 +1,4 @@ ++OW_CRYPT_1.0 OW_CRYPT_1.0 A ++OW_CRYPT_1.0 crypt_gensalt F ++OW_CRYPT_1.0 crypt_gensalt_ra F ++OW_CRYPT_1.0 crypt_gensalt_rn F Index: glibc-2.20/sysdeps/unix/sysv/linux/x86_64/64/libowcrypt.abilist =================================================================== --- /dev/null +++ glibc-2.20/sysdeps/unix/sysv/linux/x86_64/64/libowcrypt.abilist -@@ -0,0 +1,5 @@ -+OW_CRYPT_1.0 -+ OW_CRYPT_1.0 A -+ crypt_gensalt F -+ crypt_gensalt_ra F -+ crypt_gensalt_rn F +@@ -0,0 +1,4 @@ ++OW_CRYPT_1.0 OW_CRYPT_1.0 A ++OW_CRYPT_1.0 crypt_gensalt F ++OW_CRYPT_1.0 crypt_gensalt_ra F ++OW_CRYPT_1.0 crypt_gensalt_rn F Index: glibc-2.20/sysdeps/unix/sysv/linux/x86_64/x32/libowcrypt.abilist =================================================================== --- /dev/null +++ glibc-2.20/sysdeps/unix/sysv/linux/x86_64/x32/libowcrypt.abilist -@@ -0,0 +1,5 @@ -+OW_CRYPT_1.0 -+ OW_CRYPT_1.0 A -+ crypt_gensalt F -+ crypt_gensalt_ra F -+ crypt_gensalt_rn F +@@ -0,0 +1,4 @@ ++OW_CRYPT_1.0 OW_CRYPT_1.0 A ++OW_CRYPT_1.0 crypt_gensalt F ++OW_CRYPT_1.0 crypt_gensalt_ra F ++OW_CRYPT_1.0 crypt_gensalt_rn F ++++++ glibc-2.22.tar.xz -> glibc-2.23.tar.xz ++++++ /work/SRC/openSUSE:Factory/glibc/glibc-2.22.tar.xz /work/SRC/openSUSE:Factory/.glibc.new/glibc-2.23.tar.xz differ: char 26, line 1 ++++++ glibc-c-utf8-locale.patch ++++++ >From 2eda7b462b415105f5a05c1323372d4e39d46439 Mon Sep 17 00:00:00 2001 From: Mike FABIAN <[email protected]> Date: Mon, 10 Aug 2015 15:58:12 +0200 Subject: [PATCH] Add a C.UTF-8 locale --- localedata/SUPPORTED | 1 + localedata/locales/C | 238 +++++++++++++++++++++++++++++++++++++++++++++++++++ 2 files changed, 239 insertions(+) create mode 100644 localedata/locales/C diff --git a/localedata/SUPPORTED b/localedata/SUPPORTED index 8ca023e..2a78391 100644 --- a/localedata/SUPPORTED +++ b/localedata/SUPPORTED @@ -1,6 +1,7 @@ # This file names the currently supported and somewhat tested locales. # If you have any additions please file a glibc bug report. SUPPORTED-LOCALES=\ +C.UTF-8/UTF-8 \ aa_DJ.UTF-8/UTF-8 \ aa_DJ/ISO-8859-1 \ aa_ER/UTF-8 \ diff --git a/localedata/locales/C b/localedata/locales/C new file mode 100644 index 0000000..fdf460e --- /dev/null +++ b/localedata/locales/C @@ -0,0 +1,238 @@ +escape_char / +comment_char % +% Locale for C locale in UTF-8 + +LC_IDENTIFICATION +title "C locale" +source "" +address "" +contact "" +email "[email protected]" +tel "" +fax "" +language "C" +territory "" +revision "1.0" +date "2015-08-10" +% +category "C:2015";LC_IDENTIFICATION +category "C:2015";LC_CTYPE +category "C:2015";LC_COLLATE +category "C:2015";LC_TIME +category "C:2015";LC_NUMERIC +category "C:2015";LC_MONETARY +category "C:2015";LC_MESSAGES +category "C:2015";LC_PAPER +category "C:2015";LC_NAME +category "C:2015";LC_ADDRESS +category "C:2015";LC_TELEPHONE +category "C:2015";LC_MEASUREMENT +END LC_IDENTIFICATION + +LC_CTYPE +copy "i18n" + +translit_start +include "translit_combining";"" +translit_end + +END LC_CTYPE + +LC_COLLATE +order_start forward +<U0000> +.. +<UFFFF> +<U10000> +.. +<U1FFFF> +<U20000> +.. +<U2FFFF> +<UE0000> +.. +<UEFFFF> +<UF0000> +.. +<UFFFFF> +<U100000> +.. +<U10FFFF> +UNDEFINED +order_end +END LC_COLLATE + +LC_MONETARY +% This is the 14652 i18n fdcc-set definition for +% the LC_MONETARY category +% (except for the int_curr_symbol and currency_symbol, they are empty in +% the 14652 i18n fdcc-set definition and also empty in +% glibc/locale/C-monetary.c. But localedef complains in that case). +% +% Using "USD" for int_curr_symbol. But maybe "XXX" would be better? +% XXX is "No currency" (https://en.wikipedia.org/wiki/ISO_4217) +int_curr_symbol "<U0055><U0053><U0044><U0020>" +% Using "$" for currency_symbol. But maybe <U00A4> would be better? +% U+00A4 is the "generic currency symbol" +% (https://en.wikipedia.org/wiki/Currency_sign_%28typography%29) +currency_symbol "<U0024>" +mon_decimal_point "<U002E>" +mon_thousands_sep "" +mon_grouping -1 +positive_sign "" +negative_sign "<U002D>" +int_frac_digits -1 +frac_digits -1 +p_cs_precedes -1 +int_p_sep_by_space -1 +p_sep_by_space -1 +n_cs_precedes -1 +int_n_sep_by_space -1 +n_sep_by_space -1 +p_sign_posn -1 +n_sign_posn -1 +% +END LC_MONETARY + +LC_NUMERIC +% This is the POSIX Locale definition for +% the LC_NUMERIC category. +% +decimal_point "<U002E>" +thousands_sep "" +grouping -1 +END LC_NUMERIC + +LC_TIME +% This is the POSIX Locale definition for +% the LC_TIME category. +% +% Abbreviated weekday names (%a) +abday "<U0053><U0075><U006E>";"<U004D><U006F><U006E>";/ + "<U0054><U0075><U0065>";"<U0057><U0065><U0064>";/ + "<U0054><U0068><U0075>";"<U0046><U0072><U0069>";/ + "<U0053><U0061><U0074>" + +% Full weekday names (%A) +day "<U0053><U0075><U006E><U0064><U0061><U0079>";/ + "<U004D><U006F><U006E><U0064><U0061><U0079>";/ + "<U0054><U0075><U0065><U0073><U0064><U0061><U0079>";/ + "<U0057><U0065><U0064><U006E><U0065><U0073><U0064><U0061><U0079>";/ + "<U0054><U0068><U0075><U0072><U0073><U0064><U0061><U0079>";/ + "<U0046><U0072><U0069><U0064><U0061><U0079>";/ + "<U0053><U0061><U0074><U0075><U0072><U0064><U0061><U0079>" + +% Abbreviated month names (%b) +abmon "<U004A><U0061><U006E>";"<U0046><U0065><U0062>";/ + "<U004D><U0061><U0072>";"<U0041><U0070><U0072>";/ + "<U004D><U0061><U0079>";"<U004A><U0075><U006E>";/ + "<U004A><U0075><U006C>";"<U0041><U0075><U0067>";/ + "<U0053><U0065><U0070>";"<U004F><U0063><U0074>";/ + "<U004E><U006F><U0076>";"<U0044><U0065><U0063>" + +% Full month names (%B) +mon "<U004A><U0061><U006E><U0075><U0061><U0072><U0079>";/ + "<U0046><U0065><U0062><U0072><U0075><U0061><U0072><U0079>";/ + "<U004D><U0061><U0072><U0063><U0068>";/ + "<U0041><U0070><U0072><U0069><U006C>";/ + "<U004D><U0061><U0079>";/ + "<U004A><U0075><U006E><U0065>";/ + "<U004A><U0075><U006C><U0079>";/ + "<U0041><U0075><U0067><U0075><U0073><U0074>";/ + "<U0053><U0065><U0070><U0074><U0065><U006D><U0062><U0065><U0072>";/ + "<U004F><U0063><U0074><U006F><U0062><U0065><U0072>";/ + "<U004E><U006F><U0076><U0065><U006D><U0062><U0065><U0072>";/ + "<U0044><U0065><U0063><U0065><U006D><U0062><U0065><U0072>" + +% Week description, consists of three fields: +% 1. Number of days in a week. +% 2. Gregorian date that is a first weekday (19971130 for Sunday, 19971201 for Monday). +% 3. The weekday number to be contained in the first week of the year. +% +% ISO 8601 conforming applications should use the values 7, 19971201 (a +% Monday), and 4 (Thursday), respectively. +week 7;19971201;4 +first_weekday 1 +first_workday 1 + +% Appropriate date and time representation (%c) +% "%a %b %e %H:%M:%S %Y" +d_t_fmt "<U0025><U0061><U0020><U0025><U0062><U0020><U0025><U0065><U0020><U0025><U0048><U003A><U0025><U004D><U003A><U0025><U0053><U0020><U0025><U0059>" + +% Appropriate date representation (%x) +% "%m/%d/%y" +d_fmt "<U0025><U006D><U002F><U0025><U0064><U002F><U0025><U0079>" + +% Appropriate time representation (%X) +% "%H:%M:%S" +t_fmt "<U0025><U0048><U003A><U0025><U004D><U003A><U0025><U0053>" + +% Appropriate AM/PM time representation (%r) +% "%I:%M:%S %p" +t_fmt_ampm "<U0025><U0049><U003A><U0025><U004D><U003A><U0025><U0053><U0020><U0025><U0070>" + +% Equivalent of AM/PM (%p) "AM"/"PM" +% +am_pm "<U0041><U004D>";"<U0050><U004D>" + +% Appropriate date representation (date(1)) "%a %b %e %H:%M:%S %Z %Y" +date_fmt "<U0025><U0061><U0020><U0025><U0062><U0020><U0025><U0065><U0020><U0025><U0048><U003A><U0025><U004D><U003A><U0025><U0053><U0020><U0025><U005A><U0020><U0025><U0059>" +END LC_TIME + +LC_MESSAGES +% This is the POSIX Locale definition for +% the LC_NUMERIC category. +% +yesexpr "<U005E><U005B><U0079><U0059><U005D>" +noexpr "<U005E><U005B><U006E><U004E><U005D>" +yesstr "<U0059><U0065><U0073>" +nostr "<U004E><U006F>" +END LC_MESSAGES + +LC_PAPER +% This is the ISO/IEC 14652 "i18n" definition for +% the LC_PAPER category. +% (A4 paper, this is also used in the built in C/POSIX +% locale in glibc/locale/C-paper.c) +height 297 +width 210 +END LC_PAPER + +LC_NAME +% This is the ISO/IEC 14652 "i18n" definition for +% the LC_NAME category. +% "%p%t%g%t%m%t%f" +% (also used in the built in C/POSIX locale in glibc/locale/C-name.c) +name_fmt "<U0025><U0070><U0025><U0074><U0025><U0067><U0025><U0074>/ +<U0025><U006D><U0025><U0074><U0025><U0066>" +END LC_NAME + +LC_ADDRESS +% This is the ISO/IEC 14652 "i18n" definition for +% the LC_ADDRESS category. +% "%a%N%f%N%d%N%b%N%s %h %e %r%N%C-%z %T%N%c%N" +% (also used in the built in C/POSIX locale in glibc/locale/C-address.c) +postal_fmt "<U0025><U0061><U0025><U004E><U0025><U0066><U0025><U004E>/ +<U0025><U0064><U0025><U004E><U0025><U0062><U0025><U004E><U0025><U0073>/ +<U0020><U0025><U0068><U0020><U0025><U0065><U0020><U0025><U0072><U0025>/ +<U004E><U0025><U0043><U002D><U0025><U007A><U0020><U0025><U0054><U0025>/ +<U004E><U0025><U0063><U0025><U004E>" +END LC_ADDRESS + +LC_TELEPHONE +% This is the ISO/IEC 14652 "i18n" definition for +% the LC_TELEPHONE category. +% "+%c %a %l" +tel_int_fmt "<U002B><U0025><U0063><U0020><U0025><U0061><U0020><U0025>/ +<U006C>" +% (also used in the built in C/POSIX locale in glibc/locale/C-telephone.c) +END LC_TELEPHONE + +LC_MEASUREMENT +% This is the ISO/IEC 14652 "i18n" definition for +% the LC_MEASUREMENT category. +% (same as in the built in C/POSIX locale in glibc/locale/C-measurement.c) +%metric +measurement 1 +END LC_MEASUREMENT + -- 2.4.3 ++++++ glibc-disable-gettext-for-c-utf8.patch ++++++ Index: glibc-2.23/intl/dcigettext.c =================================================================== --- glibc-2.23.orig/intl/dcigettext.c +++ glibc-2.23/intl/dcigettext.c @@ -714,6 +714,7 @@ DCIGETTEXT (const char *domainname, cons /* If the current locale value is C (or POSIX) we don't load a domain. Return the MSGID. */ if (strcmp (single_locale, "C") == 0 + || strcmp (single_locale, "C.UTF-8") == 0 || strcmp (single_locale, "POSIX") == 0) break; ++++++ glibc-memset-nontemporal.diff ++++++ --- /var/tmp/diff_new_pack.hjF9cU/_old 2016-04-22 16:16:03.000000000 +0200 +++ /var/tmp/diff_new_pack.hjF9cU/_new 2016-04-22 16:16:03.000000000 +0200 @@ -5,9 +5,9 @@ --- a/sysdeps/x86_64/memset.S +++ b/sysdeps/x86_64/memset.S @@ -84,6 +84,9 @@ L(loop_start): - movdqu %xmm8, -48(%rdi,%rdx) - movdqu %xmm8, 48(%rdi) - movdqu %xmm8, -64(%rdi,%rdx) + movdqu %xmm0, -48(%rdi,%rdx) + movdqu %xmm0, 48(%rdi) + movdqu %xmm0, -64(%rdi,%rdx) + mov __x86_shared_cache_size(%rip),%r9d # The largest cache size + cmp %r9,%rdx + ja L(nt_move) @@ -25,10 +25,10 @@ + je L(return) + .p2align 4 +L(nt_loop): -+ movntdq %xmm8, (%rcx) -+ movntdq %xmm8, 16(%rcx) -+ movntdq %xmm8, 32(%rcx) -+ movntdq %xmm8, 48(%rcx) ++ movntdq %xmm0, (%rcx) ++ movntdq %xmm0, 16(%rcx) ++ movntdq %xmm0, 32(%rcx) ++ movntdq %xmm0, 48(%rcx) + addq $64, %rcx + cmpq %rcx, %rdx + jne L(nt_loop) @@ -36,5 +36,5 @@ + rep + ret L(less_16_bytes): - movq %xmm8, %rcx + movq %xmm0, %rcx testb $24, %dl ++++++ glibc-resolv-reload.diff ++++++ --- /var/tmp/diff_new_pack.hjF9cU/_old 2016-04-22 16:16:03.000000000 +0200 +++ /var/tmp/diff_new_pack.hjF9cU/_new 2016-04-22 16:16:03.000000000 +0200 @@ -79,7 +79,7 @@ @@ -22,7 +22,7 @@ #include <arpa/nameser.h> #include <resolv.h> - #include <bits/libc-lock.h> + #include <libc-lock.h> - +#include <sys/stat.h> ++++++ glibc-version.diff ++++++ --- /var/tmp/diff_new_pack.hjF9cU/_old 2016-04-22 16:16:03.000000000 +0200 +++ /var/tmp/diff_new_pack.hjF9cU/_new 2016-04-22 16:16:03.000000000 +0200 @@ -8,7 +8,7 @@ static const char banner[] = -"GNU C Library "PKGVERSION RELEASE" release version "VERSION", by Roland McGrath et al.\n\ +"GNU C Library "PKGVERSION RELEASE" release version "VERSION" (git "GITID"), by Roland McGrath et al.\n\ - Copyright (C) 2015 Free Software Foundation, Inc.\n\ + Copyright (C) 2016 Free Software Foundation, Inc.\n\ This is free software; see the source for copying conditions.\n\ There is NO warranty; not even for MERCHANTABILITY or FITNESS FOR A\n\ PARTICULAR PURPOSE.\n\ ++++++ iconv-reset-input-buffer.patch ++++++ --- /var/tmp/diff_new_pack.hjF9cU/_old 2016-04-22 16:16:03.000000000 +0200 +++ /var/tmp/diff_new_pack.hjF9cU/_new 2016-04-22 16:16:03.000000000 +0200 @@ -179,7 +179,7 @@ +#endif /* We have a problem in one of the functions below. Undo the conversion upto the error point. */ - size_t nstatus; + size_t nstatus __attribute__ ((unused)); @@ -682,9 +694,9 @@ FUNCTION_NAME (struct __gconv_step *step outbuf = outstart; ++++++ ldd-system-interp.patch ++++++ --- /var/tmp/diff_new_pack.hjF9cU/_old 2016-04-22 16:16:03.000000000 +0200 +++ /var/tmp/diff_new_pack.hjF9cU/_new 2016-04-22 16:16:03.000000000 +0200 @@ -5,23 +5,13 @@ good dynamic linker. * elf/ldd.bash.in: Always run through the dynamic linker, even if - the file has its own interpreter. Remove unneeded executable - check. + the file has its own interpreter. Index: glibc-2.19/elf/ldd.bash.in =================================================================== --- glibc-2.19.orig/elf/ldd.bash.in +++ glibc-2.19/elf/ldd.bash.in -@@ -150,8 +150,6 @@ for file do - echo "ldd: ${file}:" $"not regular file" >&2 - result=1 - elif test -r "$file"; then -- test -x "$file" || echo 'ldd:' $"\ --warning: you do not have execution permission for" "\`$file'" >&2 - RTLD= - ret=1 - for rtld in ${RTLDLIST}; do -@@ -164,18 +162,6 @@ warning: you do not have execution permi +@@ -164,18 +164,6 @@ warning: you do not have execution permi fi done case $ret in @@ -40,7 +30,7 @@ 1) # This can be a non-ELF binary or no binary at all. nonelf "$file" || { -@@ -183,7 +169,7 @@ warning: you do not have execution permi +@@ -183,7 +171,7 @@ warning: you do not have execution permi result=1 } ;; ++++++ no-long-double.patch ++++++ Index: glibc-2.22/math/test-math-isinff.cc =================================================================== --- glibc-2.22.orig/math/test-math-isinff.cc +++ glibc-2.22/math/test-math-isinff.cc @@ -30,12 +30,17 @@ do_test (void) header fix this test will not compile. */ if (isinff (1.0f) || !isinff (INFINITY) +#ifndef NO_LONG_DOUBLE || isinfl (1.0L) || !isinfl (INFINITY) +#endif || isnanf (2.0f) || !isnanf (NAN) +#ifndef NO_LONG_DOUBLE || isnanl (2.0L) - || !isnanl (NAN)) + || !isnanl (NAN) +#endif + ) { printf ("FAIL: Failed to call is* functions.\n"); exit (1); ++++++ powerpc-elision-enable-envvar.patch ++++++ 2016-02-11 Paul E. Murphy <[email protected]> * sysdeps/unix/sysv/linux/powerpc/elision-conf.c (elision_init): Further restrict enablement based on whether GLIBC_ELISION_ENABLE=yes is in the env. --- sysdeps/unix/sysv/linux/powerpc/elision-conf.c | 14 +++++++++++++- 1 file changed, 13 insertions(+), 1 deletion(-) Index: glibc-2.22/sysdeps/unix/sysv/linux/powerpc/elision-conf.c =================================================================== --- glibc-2.22.orig/sysdeps/unix/sysv/linux/powerpc/elision-conf.c +++ glibc-2.22/sysdeps/unix/sysv/linux/powerpc/elision-conf.c @@ -21,6 +21,7 @@ #include <elision-conf.h> #include <unistd.h> #include <dl-procinfo.h> +#include <string.h> /* Reasonable initial tuning values, may be revised in the future. This is a conservative initial value. */ @@ -61,7 +62,18 @@ elision_init (int argc __attribute__ ((u { #ifdef ENABLE_LOCK_ELISION int elision_available = (GLRO (dl_hwcap2) & PPC_FEATURE2_HAS_HTM) ? 1 : 0; - __pthread_force_elision = __libc_enable_secure ? 0 : elision_available; + + /* Scan the environment and conditionally enable TLE. */ + if (elision_available != 0 && __libc_enable_secure == 0) + { + for ( ; *environ != NULL; environ++) + if (**environ == 'G' && + strcmp (*environ,"GLIBC_ELISION_ENABLE=yes") == 0) + { + __pthread_force_elision = elision_available; + break; + } + } #endif if (!__pthread_force_elision) /* Disable elision on rwlocks. */
