diff options
author | Khem Raj <raj.khem@gmail.com> | 2018-12-13 18:49:01 -0800 |
---|---|---|
committer | Khem Raj <raj.khem@gmail.com> | 2018-12-20 11:36:08 -0800 |
commit | 3bdf1ced1f638227b7276010deaca8df886af66b (patch) | |
tree | dfa5e1dabe9ec4ae32a564df99dae42002a5f92c /meta/recipes-core/glibc/glibc | |
parent | a8bea675048765a9ac6c03735d61ae5d7e59b25e (diff) | |
download | openembedded-core-contrib-kraj/glibc-2.29.tar.gz |
glibc: Upgrade towards 2.29 releasekraj/glibc-2.29
Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
Diffstat (limited to 'meta/recipes-core/glibc/glibc')
35 files changed, 436 insertions, 648 deletions
diff --git a/meta/recipes-core/glibc/glibc/0001-nativesdk-glibc-Look-for-host-system-ld.so.cache-as-.patch b/meta/recipes-core/glibc/glibc/0001-nativesdk-glibc-Look-for-host-system-ld.so.cache-as-.patch index 5df26a8545..bda9c0db8f 100644 --- a/meta/recipes-core/glibc/glibc/0001-nativesdk-glibc-Look-for-host-system-ld.so.cache-as-.patch +++ b/meta/recipes-core/glibc/glibc/0001-nativesdk-glibc-Look-for-host-system-ld.so.cache-as-.patch @@ -1,7 +1,8 @@ -From bd51b3add89a5cb2d8f44029a1027c780b2afff5 Mon Sep 17 00:00:00 2001 +From aee27435f64dfec4b82bb6cd076eec9a1319336c Mon Sep 17 00:00:00 2001 From: Khem Raj <raj.khem@gmail.com> Date: Wed, 18 Mar 2015 01:48:24 +0000 -Subject: [PATCH] nativesdk-glibc: Look for host system ld.so.cache as well +Subject: [PATCH 01/31] nativesdk-glibc: Look for host system ld.so.cache as + well Upstream-Status: Inappropriate [embedded specific] @@ -63,3 +64,6 @@ index c51e4b3718..44bbb69dc4 100644 /* Add another newline when we are tracing the library loading. */ if (__glibc_unlikely (GLRO(dl_debug_mask) & DL_DEBUG_LIBS)) _dl_debug_printf ("\n"); +-- +2.20.1 + diff --git a/meta/recipes-core/glibc/glibc/0002-nativesdk-glibc-Fix-buffer-overrun-with-a-relocated-.patch b/meta/recipes-core/glibc/glibc/0002-nativesdk-glibc-Fix-buffer-overrun-with-a-relocated-.patch index daadec76c7..14fd30ebf1 100644 --- a/meta/recipes-core/glibc/glibc/0002-nativesdk-glibc-Fix-buffer-overrun-with-a-relocated-.patch +++ b/meta/recipes-core/glibc/glibc/0002-nativesdk-glibc-Fix-buffer-overrun-with-a-relocated-.patch @@ -1,7 +1,8 @@ -From fdc8a33ac2c81a0237b8a6d8b1aac7f1cdbb46af Mon Sep 17 00:00:00 2001 +From 61982eda5ecfa644496360bf3032820fb9836989 Mon Sep 17 00:00:00 2001 From: Khem Raj <raj.khem@gmail.com> Date: Wed, 18 Mar 2015 01:50:00 +0000 -Subject: [PATCH] nativesdk-glibc: Fix buffer overrun with a relocated SDK +Subject: [PATCH 02/31] nativesdk-glibc: Fix buffer overrun with a relocated + SDK When ld-linux-*.so.2 is relocated to a path that is longer than the original fixed location, the dynamic loader will crash in open_path @@ -44,3 +45,6 @@ index 44bbb69dc4..74e2e5e962 100644 do { struct r_search_path_elem *this_dir = *dirs; +-- +2.20.1 + diff --git a/meta/recipes-core/glibc/glibc/0003-nativesdk-glibc-Raise-the-size-of-arrays-containing-.patch b/meta/recipes-core/glibc/glibc/0003-nativesdk-glibc-Raise-the-size-of-arrays-containing-.patch index e082540303..32da16f61f 100644 --- a/meta/recipes-core/glibc/glibc/0003-nativesdk-glibc-Raise-the-size-of-arrays-containing-.patch +++ b/meta/recipes-core/glibc/glibc/0003-nativesdk-glibc-Raise-the-size-of-arrays-containing-.patch @@ -1,7 +1,8 @@ -From 055dd46b793168fb08e44913153010b088011ba2 Mon Sep 17 00:00:00 2001 +From 54ec801c5fbbe9e84ce430ba317ffd5705e2ff58 Mon Sep 17 00:00:00 2001 From: Khem Raj <raj.khem@gmail.com> Date: Wed, 18 Mar 2015 01:51:38 +0000 -Subject: [PATCH] nativesdk-glibc: Raise the size of arrays containing dl paths +Subject: [PATCH 03/31] nativesdk-glibc: Raise the size of arrays containing dl + paths This patch puts the dynamic loader path in the binaries, SYSTEM_DIRS strings and lengths as well as ld.so.cache path in the dynamic loader to specific @@ -25,7 +26,7 @@ Signed-off-by: Khem Raj <raj.khem@gmail.com> 7 files changed, 14 insertions(+), 10 deletions(-) diff --git a/elf/dl-cache.c b/elf/dl-cache.c -index 6ee5153ff9..37a5f701fa 100644 +index 6dd99a35b9..776aea1fd5 100644 --- a/elf/dl-cache.c +++ b/elf/dl-cache.c @@ -133,6 +133,10 @@ do \ @@ -107,7 +108,7 @@ index 1b0c74739f..a70a62d31e 100644 ++_dl_skip_args; --_dl_argc; diff --git a/iconv/gconv_conf.c b/iconv/gconv_conf.c -index f173cde71b..5c3205026f 100644 +index 2b73dd8f45..562a7423f3 100644 --- a/iconv/gconv_conf.c +++ b/iconv/gconv_conf.c @@ -36,7 +36,7 @@ @@ -117,8 +118,8 @@ index f173cde71b..5c3205026f 100644 -static const char default_gconv_path[] = GCONV_PATH; +static char default_gconv_path[4096] __attribute__ ((section (".gccrelocprefix"))) = GCONV_PATH; - /* The path elements, as determined by the __gconv_get_path function. - All path elements end in a slash. */ + /* Type to represent search path. */ + struct path_elem diff --git a/sysdeps/generic/dl-cache.h b/sysdeps/generic/dl-cache.h index cf43f1cf3b..7f07adde53 100644 --- a/sysdeps/generic/dl-cache.h @@ -134,3 +135,6 @@ index cf43f1cf3b..7f07adde53 100644 #ifndef add_system_dir # define add_system_dir(dir) add_dir (dir) #endif +-- +2.20.1 + diff --git a/meta/recipes-core/glibc/glibc/0004-nativesdk-glibc-Allow-64-bit-atomics-for-x86.patch b/meta/recipes-core/glibc/glibc/0004-nativesdk-glibc-Allow-64-bit-atomics-for-x86.patch index 1ae2e33b4f..6409dbfcf9 100644 --- a/meta/recipes-core/glibc/glibc/0004-nativesdk-glibc-Allow-64-bit-atomics-for-x86.patch +++ b/meta/recipes-core/glibc/glibc/0004-nativesdk-glibc-Allow-64-bit-atomics-for-x86.patch @@ -1,7 +1,7 @@ -From a237553ccd15276462be2023057a017fa8ee5d7c Mon Sep 17 00:00:00 2001 +From 8080b9ae7f4d673a32b1df892bf3dddb9dff2789 Mon Sep 17 00:00:00 2001 From: Khem Raj <raj.khem@gmail.com> Date: Thu, 31 Dec 2015 14:35:35 -0800 -Subject: [PATCH] nativesdk-glibc: Allow 64 bit atomics for x86 +Subject: [PATCH 04/31] nativesdk-glibc: Allow 64 bit atomics for x86 The fix consist of allowing 64bit atomic ops for x86. This should be safe for i586 and newer CPUs. @@ -13,19 +13,30 @@ Signed-off-by: Juro Bystricky <juro.bystricky@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org> Signed-off-by: Khem Raj <raj.khem@gmail.com> --- - sysdeps/i386/atomic-machine.h | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) + sysdeps/x86/atomic-machine.h | 3 +-- + 1 file changed, 1 insertion(+), 2 deletions(-) -diff --git a/sysdeps/i386/atomic-machine.h b/sysdeps/i386/atomic-machine.h -index 272da5dd8f..409c759f14 100644 ---- a/sysdeps/i386/atomic-machine.h -+++ b/sysdeps/i386/atomic-machine.h -@@ -54,7 +54,7 @@ typedef uintmax_t uatomic_max_t; - # endif +diff --git a/sysdeps/x86/atomic-machine.h b/sysdeps/x86/atomic-machine.h +index b06de58190..ebe572fa80 100644 +--- a/sysdeps/x86/atomic-machine.h ++++ b/sysdeps/x86/atomic-machine.h +@@ -58,15 +58,14 @@ typedef uintmax_t uatomic_max_t; #endif --#define __HAVE_64B_ATOMICS 0 -+#define __HAVE_64B_ATOMICS 1 - #define USE_ATOMIC_COMPILER_BUILTINS 0 - #define ATOMIC_EXCHANGE_USES_CAS 0 + #define USE_ATOMIC_COMPILER_BUILTINS 1 ++# define __HAVE_64B_ATOMICS 1 + #ifdef __x86_64__ +-# define __HAVE_64B_ATOMICS 1 + # define SP_REG "rsp" + # define SEG_REG "fs" + # define BR_CONSTRAINT "q" + # define IBR_CONSTRAINT "iq" + #else +-# define __HAVE_64B_ATOMICS 0 + # define SP_REG "esp" + # define SEG_REG "gs" + # define BR_CONSTRAINT "r" +-- +2.20.1 + diff --git a/meta/recipes-core/glibc/glibc/0005-nativesdk-glibc-Make-relocatable-install-for-locales.patch b/meta/recipes-core/glibc/glibc/0005-nativesdk-glibc-Make-relocatable-install-for-locales.patch index b53f2ef2e2..aae8440199 100644 --- a/meta/recipes-core/glibc/glibc/0005-nativesdk-glibc-Make-relocatable-install-for-locales.patch +++ b/meta/recipes-core/glibc/glibc/0005-nativesdk-glibc-Make-relocatable-install-for-locales.patch @@ -1,7 +1,7 @@ -From e1dc85af1800afa4fbf4eb5a59cc41025495af57 Mon Sep 17 00:00:00 2001 +From ab70f06c11f66db9f17ce717928b5223fbf6760f Mon Sep 17 00:00:00 2001 From: Khem Raj <raj.khem@gmail.com> Date: Fri, 3 Aug 2018 09:55:12 -0700 -Subject: [PATCH] nativesdk-glibc: Make relocatable install for locales +Subject: [PATCH 05/31] nativesdk-glibc: Make relocatable install for locales The glibc locale path is hard-coded to the install prefix, but in SDKs we need to be able to relocate the binaries. Expand the strings to 4K and put them in a @@ -65,3 +65,6 @@ index 68822a6319..537bc35149 100644 /* Load the locale data for CATEGORY from the file specified by *NAME. If *NAME is "", use environment variables as specified by POSIX, and +-- +2.20.1 + diff --git a/meta/recipes-core/glibc/glibc/0006-fsl-e500-e5500-e6500-603e-fsqrt-implementation.patch b/meta/recipes-core/glibc/glibc/0006-fsl-e500-e5500-e6500-603e-fsqrt-implementation.patch index 971700a6df..4d444ca68c 100644 --- a/meta/recipes-core/glibc/glibc/0006-fsl-e500-e5500-e6500-603e-fsqrt-implementation.patch +++ b/meta/recipes-core/glibc/glibc/0006-fsl-e500-e5500-e6500-603e-fsqrt-implementation.patch @@ -1,7 +1,7 @@ -From d23c577b0b70b34335971abaf3f50e617dda615e Mon Sep 17 00:00:00 2001 +From d1faf9a98aa039eda02d0cf1f77f16e2ee6fd001 Mon Sep 17 00:00:00 2001 From: Khem Raj <raj.khem@gmail.com> Date: Wed, 18 Mar 2015 00:01:50 +0000 -Subject: [PATCH] fsl e500/e5500/e6500/603e fsqrt implementation +Subject: [PATCH 06/31] fsl e500/e5500/e6500/603e fsqrt implementation Upstream-Status: Pending Signed-off-by: Edmar Wienskoski <edmar@freescale.com> @@ -1579,3 +1579,6 @@ index 0000000000..04ff8cc181 +++ b/sysdeps/unix/sysv/linux/powerpc/powerpc64/e6500/fpu/Implies @@ -0,0 +1 @@ +powerpc/powerpc64/e6500/fpu +-- +2.20.1 + diff --git a/meta/recipes-core/glibc/glibc/0007-readlib-Add-OECORE_KNOWN_INTERPRETER_NAMES-to-known-.patch b/meta/recipes-core/glibc/glibc/0007-readlib-Add-OECORE_KNOWN_INTERPRETER_NAMES-to-known-.patch index 4871346838..5339c902e8 100644 --- a/meta/recipes-core/glibc/glibc/0007-readlib-Add-OECORE_KNOWN_INTERPRETER_NAMES-to-known-.patch +++ b/meta/recipes-core/glibc/glibc/0007-readlib-Add-OECORE_KNOWN_INTERPRETER_NAMES-to-known-.patch @@ -1,7 +1,8 @@ -From d65f6ee214d7d91445fceabc6a5d6bf55b0e8d4b Mon Sep 17 00:00:00 2001 +From 017b00ab2b18bae5b5b4116fad3950f532a7cf39 Mon Sep 17 00:00:00 2001 From: Khem Raj <raj.khem@gmail.com> Date: Wed, 18 Mar 2015 00:11:22 +0000 -Subject: [PATCH] readlib: Add OECORE_KNOWN_INTERPRETER_NAMES to known names +Subject: [PATCH 07/31] readlib: Add OECORE_KNOWN_INTERPRETER_NAMES to known + names This bolts in a hook for OE to pass its own version of interpreter names into glibc especially for multilib case, where it differs from any @@ -27,3 +28,6 @@ index 573c01476c..d8c7412287 100644 }; static struct known_names known_libs[] = +-- +2.20.1 + diff --git a/meta/recipes-core/glibc/glibc/0008-ppc-sqrt-Fix-undefined-reference-to-__sqrt_finite.patch b/meta/recipes-core/glibc/glibc/0008-ppc-sqrt-Fix-undefined-reference-to-__sqrt_finite.patch index c0d96eb1f5..749623e4d0 100644 --- a/meta/recipes-core/glibc/glibc/0008-ppc-sqrt-Fix-undefined-reference-to-__sqrt_finite.patch +++ b/meta/recipes-core/glibc/glibc/0008-ppc-sqrt-Fix-undefined-reference-to-__sqrt_finite.patch @@ -1,7 +1,7 @@ -From ee3aa1464f40c916c62cf326bf4c18f8b71a229b Mon Sep 17 00:00:00 2001 +From 226cf99513e816eb087464663e3195cdf90cef18 Mon Sep 17 00:00:00 2001 From: Khem Raj <raj.khem@gmail.com> Date: Wed, 18 Mar 2015 00:15:07 +0000 -Subject: [PATCH] ppc/sqrt: Fix undefined reference to `__sqrt_finite' +Subject: [PATCH 08/31] ppc/sqrt: Fix undefined reference to `__sqrt_finite' on ppc fixes the errors like below | ./.libs/libpulsecore-1.1.so: undefined reference to `__sqrt_finite' @@ -203,3 +203,6 @@ index 26fa067abf..9d175122a8 100644 return f_washf (b); } +strong_alias (__ieee754_sqrtf, __sqrtf_finite) +-- +2.20.1 + diff --git a/meta/recipes-core/glibc/glibc/0009-__ieee754_sqrt-f-are-now-inline-functions-and-call-o.patch b/meta/recipes-core/glibc/glibc/0009-__ieee754_sqrt-f-are-now-inline-functions-and-call-o.patch index d0b47cd67b..dbf9119ab8 100644 --- a/meta/recipes-core/glibc/glibc/0009-__ieee754_sqrt-f-are-now-inline-functions-and-call-o.patch +++ b/meta/recipes-core/glibc/glibc/0009-__ieee754_sqrt-f-are-now-inline-functions-and-call-o.patch @@ -1,8 +1,8 @@ -From 17e82d594b2d8d3a6998face953382f9d14fb046 Mon Sep 17 00:00:00 2001 +From 1b7126ea4a0b69d37eec1a80e3c1b6dbf15f6ba1 Mon Sep 17 00:00:00 2001 From: Khem Raj <raj.khem@gmail.com> Date: Wed, 18 Mar 2015 00:16:38 +0000 -Subject: [PATCH] __ieee754_sqrt{,f} are now inline functions and call out - __slow versions +Subject: [PATCH 09/31] __ieee754_sqrt{,f} are now inline functions and call + out __slow versions Upstream-Status: Pending @@ -382,3 +382,6 @@ index 9d175122a8..10de1f0cc3 100644 +} + strong_alias (__ieee754_sqrtf, __sqrtf_finite) +-- +2.20.1 + diff --git a/meta/recipes-core/glibc/glibc/0010-Quote-from-bug-1443-which-explains-what-the-patch-do.patch b/meta/recipes-core/glibc/glibc/0010-Quote-from-bug-1443-which-explains-what-the-patch-do.patch index 86ef3a1059..63f6023fcc 100644 --- a/meta/recipes-core/glibc/glibc/0010-Quote-from-bug-1443-which-explains-what-the-patch-do.patch +++ b/meta/recipes-core/glibc/glibc/0010-Quote-from-bug-1443-which-explains-what-the-patch-do.patch @@ -1,7 +1,8 @@ -From fe8d9b76e7c881cc0a0b728ea2bd637fafca0978 Mon Sep 17 00:00:00 2001 +From 30685cd9738a283cba546416771b102b9d3ac4d4 Mon Sep 17 00:00:00 2001 From: Khem Raj <raj.khem@gmail.com> Date: Wed, 18 Mar 2015 00:20:09 +0000 -Subject: [PATCH] Quote from bug 1443 which explains what the patch does : +Subject: [PATCH 10/31] Quote from bug 1443 which explains what the patch does + : We build some random program and link it with -lust. When we run it, it dies with a SIGSEGV before reaching main(). @@ -56,3 +57,6 @@ index 1a4fd3f17b..a02c47571a 100644 break; case R_ARM_TLS_TPOFF32: +-- +2.20.1 + diff --git a/meta/recipes-core/glibc/glibc/0011-eglibc-run-libm-err-tab.pl-with-specific-dirs-in-S.patch b/meta/recipes-core/glibc/glibc/0011-eglibc-run-libm-err-tab.pl-with-specific-dirs-in-S.patch index 32aae5cd53..866bffc1ed 100644 --- a/meta/recipes-core/glibc/glibc/0011-eglibc-run-libm-err-tab.pl-with-specific-dirs-in-S.patch +++ b/meta/recipes-core/glibc/glibc/0011-eglibc-run-libm-err-tab.pl-with-specific-dirs-in-S.patch @@ -1,7 +1,7 @@ -From 3012cb839a64e7d5c621efa79b643d169290e6e9 Mon Sep 17 00:00:00 2001 +From aee6228742f1c340a72b8e8ce29a9006ce09c3d9 Mon Sep 17 00:00:00 2001 From: Ting Liu <b28495@freescale.com> Date: Wed, 19 Dec 2012 04:39:57 -0600 -Subject: [PATCH] eglibc: run libm-err-tab.pl with specific dirs in ${S} +Subject: [PATCH 11/31] eglibc: run libm-err-tab.pl with specific dirs in ${S} libm-err-tab.pl will parse all the files named "libm-test-ulps" in the given dir recursively. To avoid parsing the one in @@ -18,16 +18,19 @@ Signed-off-by: Ting Liu <b28495@freescale.com> 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/manual/Makefile b/manual/Makefile -index c2756640a7..1b5bb16a96 100644 +index 5f6006dc09..9f8ca6925e 100644 --- a/manual/Makefile +++ b/manual/Makefile -@@ -102,7 +102,8 @@ $(objpfx)libm-err.texi: $(objpfx)stamp-libm-err - $(objpfx)stamp-libm-err: libm-err-tab.pl $(wildcard $(foreach dir,$(sysdirs),\ - $(dir)/libm-test-ulps)) +@@ -103,7 +103,8 @@ $(objpfx)stamp-libm-err: $(..)math/gen-libm-test.py \ + $(wildcard $(foreach dir,$(sysdirs),\ + $(dir)/libm-test-ulps)) pwd=`pwd`; \ -- $(PERL) $< $$pwd/.. > $(objpfx)libm-err-tmp -+ $(PERL) $< $$pwd/../ports > $(objpfx)libm-err-tmp -+ $(PERL) $< $$pwd/../sysdeps >> $(objpfx)libm-err-tmp +- $(PYTHON) $< -s $$pwd/.. -m $(objpfx)libm-err-tmp ++ $(PYTHON) $< -s $$pwd/../ports -m $(objpfx)libm-err-tmp ++ $(PYTHON) $< -s $$pwd/../sysdeps -m $(objpfx)libm-err-tmp $(move-if-change) $(objpfx)libm-err-tmp $(objpfx)libm-err.texi touch $@ +-- +2.20.1 + diff --git a/meta/recipes-core/glibc/glibc/0012-__ieee754_sqrt-f-are-now-inline-functions-and-call-o.patch b/meta/recipes-core/glibc/glibc/0012-__ieee754_sqrt-f-are-now-inline-functions-and-call-o.patch index 93395c389f..74cc007dc1 100644 --- a/meta/recipes-core/glibc/glibc/0012-__ieee754_sqrt-f-are-now-inline-functions-and-call-o.patch +++ b/meta/recipes-core/glibc/glibc/0012-__ieee754_sqrt-f-are-now-inline-functions-and-call-o.patch @@ -1,8 +1,8 @@ -From 93ab69ae4c98303929ba9492130a021fa4a215be Mon Sep 17 00:00:00 2001 +From c8e8874abec09d61c7e3e4320a43ed2fec7e97b7 Mon Sep 17 00:00:00 2001 From: Khem Raj <raj.khem@gmail.com> Date: Wed, 18 Mar 2015 00:24:46 +0000 -Subject: [PATCH] __ieee754_sqrt{,f} are now inline functions and call out - __slow versions +Subject: [PATCH 12/31] __ieee754_sqrt{,f} are now inline functions and call + out __slow versions Upstream-Status: Pending @@ -56,3 +56,6 @@ index 812653558f..10de1f0cc3 100644 float b; #endif { +-- +2.20.1 + diff --git a/meta/recipes-core/glibc/glibc/0013-sysdeps-gnu-configure.ac-handle-correctly-libc_cv_ro.patch b/meta/recipes-core/glibc/glibc/0013-sysdeps-gnu-configure.ac-handle-correctly-libc_cv_ro.patch index 9998691fa4..e7c8ab0fd8 100644 --- a/meta/recipes-core/glibc/glibc/0013-sysdeps-gnu-configure.ac-handle-correctly-libc_cv_ro.patch +++ b/meta/recipes-core/glibc/glibc/0013-sysdeps-gnu-configure.ac-handle-correctly-libc_cv_ro.patch @@ -1,7 +1,7 @@ -From a7bd8aa65f3f2755d6dbd0d5adbfd269c1fb0094 Mon Sep 17 00:00:00 2001 +From 22e24c855674b70d0381bdcbe2b58ec42e2b1da8 Mon Sep 17 00:00:00 2001 From: Khem Raj <raj.khem@gmail.com> Date: Wed, 18 Mar 2015 00:27:10 +0000 -Subject: [PATCH] sysdeps/gnu/configure.ac: handle correctly +Subject: [PATCH 13/31] sysdeps/gnu/configure.ac: handle correctly $libc_cv_rootsbindir Upstream-Status:Pending @@ -37,3 +37,6 @@ index 634fe4de2a..3db1697f4f 100644 + test -n "$libc_cv_rootsbindir" || libc_cv_rootsbindir=/sbin ;; esac +-- +2.20.1 + diff --git a/meta/recipes-core/glibc/glibc/0014-Add-unused-attribute.patch b/meta/recipes-core/glibc/glibc/0014-Add-unused-attribute.patch index 9d6ab30e2c..5941e0dd8f 100644 --- a/meta/recipes-core/glibc/glibc/0014-Add-unused-attribute.patch +++ b/meta/recipes-core/glibc/glibc/0014-Add-unused-attribute.patch @@ -1,7 +1,7 @@ -From 2ce5bc6da23dcb402afdeb967fa44c39eecf6d37 Mon Sep 17 00:00:00 2001 +From 0050001180da6e9957d15761b013495a2c7fc21d Mon Sep 17 00:00:00 2001 From: Khem Raj <raj.khem@gmail.com> Date: Wed, 18 Mar 2015 00:28:41 +0000 -Subject: [PATCH] Add unused attribute +Subject: [PATCH 14/31] Add unused attribute Helps in avoiding gcc warning when header is is included in a source file which does not use both functions @@ -29,3 +29,6 @@ index 123e2a62ce..63cc83ec84 100644 strip (char *wp, const char *s) { int slash_count = 0; +-- +2.20.1 + diff --git a/meta/recipes-core/glibc/glibc/0015-yes-within-the-path-sets-wrong-config-variables.patch b/meta/recipes-core/glibc/glibc/0015-yes-within-the-path-sets-wrong-config-variables.patch index 0267e7a4ec..9931251daa 100644 --- a/meta/recipes-core/glibc/glibc/0015-yes-within-the-path-sets-wrong-config-variables.patch +++ b/meta/recipes-core/glibc/glibc/0015-yes-within-the-path-sets-wrong-config-variables.patch @@ -1,7 +1,7 @@ -From b382138c41ccf6079b44592f1e74f183ca8281bb Mon Sep 17 00:00:00 2001 +From 06ac9918d95ffbd98f0ff324c31a29a70a5b98e0 Mon Sep 17 00:00:00 2001 From: Khem Raj <raj.khem@gmail.com> Date: Wed, 18 Mar 2015 00:31:06 +0000 -Subject: [PATCH] 'yes' within the path sets wrong config variables +Subject: [PATCH 15/31] 'yes' within the path sets wrong config variables It seems that the 'AC_EGREP_CPP(yes...' example is quite popular but being such a short word to grep it is likely to produce @@ -258,3 +258,6 @@ index f9cba6e15d..b21f72f1e4 100644 #endif ], libc_cv_ppc64_def_call_elf=yes, libc_cv_ppc64_def_call_elf=no)]) if test $libc_cv_ppc64_def_call_elf = no; then +-- +2.20.1 + diff --git a/meta/recipes-core/glibc/glibc/0016-timezone-re-written-tzselect-as-posix-sh.patch b/meta/recipes-core/glibc/glibc/0016-timezone-re-written-tzselect-as-posix-sh.patch index 15453ec6ff..439a95554e 100644 --- a/meta/recipes-core/glibc/glibc/0016-timezone-re-written-tzselect-as-posix-sh.patch +++ b/meta/recipes-core/glibc/glibc/0016-timezone-re-written-tzselect-as-posix-sh.patch @@ -1,7 +1,7 @@ -From 04fb7b93dc40c1f96ebc05d29a2f02f9e4f0d572 Mon Sep 17 00:00:00 2001 +From acbad52581e157d3cc2c22b10e545e73cfc4e664 Mon Sep 17 00:00:00 2001 From: Khem Raj <raj.khem@gmail.com> Date: Wed, 18 Mar 2015 00:33:03 +0000 -Subject: [PATCH] timezone: re-written tzselect as posix sh +Subject: [PATCH 16/31] timezone: re-written tzselect as posix sh To avoid the bash dependency. @@ -28,10 +28,10 @@ index 0194aba4a1..58e5405a05 100644 -e '/TZVERSION=/s|see_Makefile|"$(version)"|' \ -e '/PKGVERSION=/s|=.*|="$(PKGVERSION)"|' \ diff --git a/timezone/tzselect.ksh b/timezone/tzselect.ksh -index d2c3a6d1dd..089679f306 100755 +index 18fce27e24..70745f9d36 100755 --- a/timezone/tzselect.ksh +++ b/timezone/tzselect.ksh -@@ -35,7 +35,7 @@ REPORT_BUGS_TO=tz@iana.org +@@ -34,7 +34,7 @@ REPORT_BUGS_TO=tz@iana.org # Specify default values for environment variables if they are unset. : ${AWK=awk} @@ -40,3 +40,6 @@ index d2c3a6d1dd..089679f306 100755 # Output one argument as-is to standard output. # Safer than 'echo', which can mishandle '\' or leading '-'. +-- +2.20.1 + diff --git a/meta/recipes-core/glibc/glibc/0017-Remove-bash-dependency-for-nscd-init-script.patch b/meta/recipes-core/glibc/glibc/0017-Remove-bash-dependency-for-nscd-init-script.patch index 06d2cd1d25..480a7281cf 100644 --- a/meta/recipes-core/glibc/glibc/0017-Remove-bash-dependency-for-nscd-init-script.patch +++ b/meta/recipes-core/glibc/glibc/0017-Remove-bash-dependency-for-nscd-init-script.patch @@ -1,7 +1,7 @@ -From 7a2f244c0980a54ed74f9544ab44a7269ef12bce Mon Sep 17 00:00:00 2001 +From 954152247e9ca6dc6f98b68af57a7c6309c5004f Mon Sep 17 00:00:00 2001 From: Khem Raj <raj.khem@gmail.com> Date: Thu, 31 Dec 2015 14:33:02 -0800 -Subject: [PATCH] Remove bash dependency for nscd init script +Subject: [PATCH 17/31] Remove bash dependency for nscd init script The nscd init script uses #! /bin/bash but only really uses one bashism (translated strings), so remove them and switch the shell to #!/bin/sh. @@ -70,3 +70,6 @@ index a882da7d8b..b02986ec15 100644 RETVAL=1 ;; esac +-- +2.20.1 + diff --git a/meta/recipes-core/glibc/glibc/0018-eglibc-Cross-building-and-testing-instructions.patch b/meta/recipes-core/glibc/glibc/0018-eglibc-Cross-building-and-testing-instructions.patch index 29109a26ea..e731040839 100644 --- a/meta/recipes-core/glibc/glibc/0018-eglibc-Cross-building-and-testing-instructions.patch +++ b/meta/recipes-core/glibc/glibc/0018-eglibc-Cross-building-and-testing-instructions.patch @@ -1,7 +1,7 @@ -From 44a5c79efea09f5b990e524ec42abdeef444056a Mon Sep 17 00:00:00 2001 +From cc8cf263d67fd58825cd5f60a7f43ffbb03e5520 Mon Sep 17 00:00:00 2001 From: Khem Raj <raj.khem@gmail.com> Date: Wed, 18 Mar 2015 00:42:58 +0000 -Subject: [PATCH] eglibc: Cross building and testing instructions +Subject: [PATCH 18/31] eglibc: Cross building and testing instructions Ported from eglibc Upstream-Status: Pending @@ -614,3 +614,6 @@ index 0000000000..b67b468466 +- Some tests require access to libstdc++.so.6 and libgcc_s.so.1; we + simply place copies of these libraries in the top GLIBC build + directory. +-- +2.20.1 + diff --git a/meta/recipes-core/glibc/glibc/0019-eglibc-Help-bootstrap-cross-toolchain.patch b/meta/recipes-core/glibc/glibc/0019-eglibc-Help-bootstrap-cross-toolchain.patch index 71c2ab9180..83b3024efa 100644 --- a/meta/recipes-core/glibc/glibc/0019-eglibc-Help-bootstrap-cross-toolchain.patch +++ b/meta/recipes-core/glibc/glibc/0019-eglibc-Help-bootstrap-cross-toolchain.patch @@ -1,7 +1,7 @@ -From f4ec5527d562d38523abb8587a6c7532e9d21f8a Mon Sep 17 00:00:00 2001 +From 9043dcd30fe569325520c742e30bf680e322bf1f Mon Sep 17 00:00:00 2001 From: Khem Raj <raj.khem@gmail.com> Date: Wed, 18 Mar 2015 00:49:28 +0000 -Subject: [PATCH] eglibc: Help bootstrap cross toolchain +Subject: [PATCH 19/31] eglibc: Help bootstrap cross toolchain Taken from EGLIBC, r1484 + r1525 @@ -29,7 +29,7 @@ Signed-off-by: Khem Raj <raj.khem@gmail.com> create mode 100644 include/stubs-bootstrap.h diff --git a/Makefile b/Makefile -index d3f25a525a..ab383867e2 100644 +index fd73d9bae3..7f9df6b29f 100644 --- a/Makefile +++ b/Makefile @@ -70,9 +70,18 @@ subdir-dirs = include @@ -95,3 +95,6 @@ index 0000000000..1d2b669aff + difficult headers. The <gnu/stubs.h> header depends, via the + EGLIBC subdir 'stubs' make targets, on every .o file in EGLIBC, but + an empty stubs.h like this will do fine for GCC. */ +-- +2.20.1 + diff --git a/meta/recipes-core/glibc/glibc/0020-eglibc-Clear-cache-lines-on-ppc8xx.patch b/meta/recipes-core/glibc/glibc/0020-eglibc-Clear-cache-lines-on-ppc8xx.patch index 6e475a711e..f7bf8021da 100644 --- a/meta/recipes-core/glibc/glibc/0020-eglibc-Clear-cache-lines-on-ppc8xx.patch +++ b/meta/recipes-core/glibc/glibc/0020-eglibc-Clear-cache-lines-on-ppc8xx.patch @@ -1,7 +1,7 @@ -From 6c23660d035e71de0e20b40460ad3050bd057665 Mon Sep 17 00:00:00 2001 +From 1c0d47782668f222299df111054fbcb972e99c39 Mon Sep 17 00:00:00 2001 From: Khem Raj <raj.khem@gmail.com> Date: Thu, 31 Dec 2015 15:15:09 -0800 -Subject: [PATCH] eglibc: Clear cache lines on ppc8xx +Subject: [PATCH 20/31] eglibc: Clear cache lines on ppc8xx 2007-06-13 Nathan Sidwell <nathan@codesourcery.com> Mark Shinwell <shinwell@codesourcery.com> @@ -78,3 +78,6 @@ index f2ad0c355d..3e6773795e 100644 __cache_line_size = av->a_un.a_val; break; #ifndef SHARED +-- +2.20.1 + diff --git a/meta/recipes-core/glibc/glibc/0021-eglibc-Resolve-__fpscr_values-on-SH4.patch b/meta/recipes-core/glibc/glibc/0021-eglibc-Resolve-__fpscr_values-on-SH4.patch index 8aecf2624c..36efcd40e4 100644 --- a/meta/recipes-core/glibc/glibc/0021-eglibc-Resolve-__fpscr_values-on-SH4.patch +++ b/meta/recipes-core/glibc/glibc/0021-eglibc-Resolve-__fpscr_values-on-SH4.patch @@ -1,7 +1,7 @@ -From 55531ef57d04006c5a1e3b32a8e0410372f86007 Mon Sep 17 00:00:00 2001 +From 41cbed8d724f9433e58cc92b4339768529b435c6 Mon Sep 17 00:00:00 2001 From: Khem Raj <raj.khem@gmail.com> Date: Wed, 18 Mar 2015 00:55:53 +0000 -Subject: [PATCH] eglibc: Resolve __fpscr_values on SH4 +Subject: [PATCH 21/31] eglibc: Resolve __fpscr_values on SH4 2010-09-29 Nobuhiro Iwamatsu <iwamatsu@nigauri.org> Andrew Stubbs <ams@codesourcery.com> @@ -51,3 +51,6 @@ index c4e28ffb98..648bae03d5 100644 + .long 0x80000 +weak_alias (___fpscr_values, __fpscr_values) + +-- +2.20.1 + diff --git a/meta/recipes-core/glibc/glibc/0022-eglibc-Forward-port-cross-locale-generation-support.patch b/meta/recipes-core/glibc/glibc/0022-eglibc-Forward-port-cross-locale-generation-support.patch index aa62c6352c..5c37821cb3 100644 --- a/meta/recipes-core/glibc/glibc/0022-eglibc-Forward-port-cross-locale-generation-support.patch +++ b/meta/recipes-core/glibc/glibc/0022-eglibc-Forward-port-cross-locale-generation-support.patch @@ -1,7 +1,7 @@ -From 4bb23fbb07984b93fd14f353fd9325d927b0cd98 Mon Sep 17 00:00:00 2001 +From 584a321509882f372d6967635afc3d9ee171d14a Mon Sep 17 00:00:00 2001 From: Khem Raj <raj.khem@gmail.com> Date: Wed, 18 Mar 2015 01:33:49 +0000 -Subject: [PATCH] eglibc: Forward port cross locale generation support +Subject: [PATCH 22/31] eglibc: Forward port cross locale generation support Upstream-Status: Pending @@ -23,7 +23,7 @@ Signed-off-by: Khem Raj <raj.khem@gmail.com> create mode 100644 locale/catnames.c diff --git a/locale/Makefile b/locale/Makefile -index fd9972279b..176b3946de 100644 +index 951c6154ac..88df85a88d 100644 --- a/locale/Makefile +++ b/locale/Makefile @@ -26,7 +26,8 @@ headers = langinfo.h locale.h bits/locale.h \ @@ -363,18 +363,18 @@ index 3525c8a43d..f8a7fd9c24 100644 size_t bufmax = 56; diff --git a/locale/programs/localedef.c b/locale/programs/localedef.c -index d718d2e9f4..e0a3ad5a83 100644 +index 6c4936be6b..826dbd8301 100644 --- a/locale/programs/localedef.c +++ b/locale/programs/localedef.c -@@ -105,6 +105,7 @@ void (*argp_program_version_hook) (FILE *, struct argp_state *) = print_version; - #define OPT_BIG_ENDIAN 401 +@@ -109,6 +109,7 @@ void (*argp_program_version_hook) (FILE *, struct argp_state *) = print_version; #define OPT_NO_WARN 402 #define OPT_WARN 403 -+#define OPT_UINT32_ALIGN 404 + #define OPT_NO_HARD_LINKS 404 ++#define OPT_UINT32_ALIGN 405 /* Definitions of arguments for argp functions. */ static const struct argp_option options[] = -@@ -147,6 +148,8 @@ static const struct argp_option options[] = +@@ -153,6 +154,8 @@ static const struct argp_option options[] = N_("Generate little-endian output") }, { "big-endian", OPT_BIG_ENDIAN, NULL, 0, N_("Generate big-endian output") }, @@ -383,7 +383,7 @@ index d718d2e9f4..e0a3ad5a83 100644 { NULL, 0, NULL, 0, NULL } }; -@@ -236,12 +239,14 @@ main (int argc, char *argv[]) +@@ -242,12 +245,14 @@ main (int argc, char *argv[]) ctype locale. (P1003.2 4.35.5.2) */ setlocale (LC_CTYPE, "POSIX"); @@ -398,9 +398,9 @@ index d718d2e9f4..e0a3ad5a83 100644 /* Process charmap file. */ charmap = charmap_read (charmap_file, verbose, 1, be_quiet, 1); -@@ -389,6 +394,9 @@ parse_opt (int key, char *arg, struct argp_state *state) - /* Enable the warnings. */ - set_warnings (arg, true); +@@ -399,6 +404,9 @@ parse_opt (int key, char *arg, struct argp_state *state) + /* Do not hard link to other locales. */ + hard_links = false; break; + case OPT_UINT32_ALIGN: + uint32_align_mask = strtol (arg, NULL, 0) - 1; @@ -409,7 +409,7 @@ index d718d2e9f4..e0a3ad5a83 100644 force_output = 1; break; diff --git a/locale/programs/locfile.c b/locale/programs/locfile.c -index 32e5f761f2..b41e77bd8d 100644 +index 1555231deb..5afdb08fc3 100644 --- a/locale/programs/locfile.c +++ b/locale/programs/locfile.c @@ -544,6 +544,9 @@ compare_files (const char *filename1, const char *filename2, size_t size, @@ -561,3 +561,6 @@ index e4de907e1f..b5d8f5c17d 100644 #ifdef NL_CURRENT_INDIRECT # define WEAK_POSTLOAD(postload) weak_extern (postload) #else +-- +2.20.1 + diff --git a/meta/recipes-core/glibc/glibc/0023-Define-DUMMY_LOCALE_T-if-not-defined.patch b/meta/recipes-core/glibc/glibc/0023-Define-DUMMY_LOCALE_T-if-not-defined.patch index 68fad96410..45c37db7af 100644 --- a/meta/recipes-core/glibc/glibc/0023-Define-DUMMY_LOCALE_T-if-not-defined.patch +++ b/meta/recipes-core/glibc/glibc/0023-Define-DUMMY_LOCALE_T-if-not-defined.patch @@ -1,7 +1,7 @@ -From 1b2ceb6c2414e3c98c7bcd029583287ced9f3159 Mon Sep 17 00:00:00 2001 +From 6856e27c1a0c71ade749cef6f0dbcf62bb9b5485 Mon Sep 17 00:00:00 2001 From: Khem Raj <raj.khem@gmail.com> Date: Wed, 20 Apr 2016 21:11:00 -0700 -Subject: [PATCH] Define DUMMY_LOCALE_T if not defined +Subject: [PATCH 23/31] Define DUMMY_LOCALE_T if not defined This is a hack to fix building the locale bits on an older CentOs 5.X machine @@ -27,3 +27,6 @@ index 9956cd8446..04342f3644 100644 /* Use the internal textdomain used for libc messages. */ #define PACKAGE _libc_intl_domainname #ifndef VERSION +-- +2.20.1 + diff --git a/meta/recipes-core/glibc/glibc/0024-elf-dl-deps.c-Make-_dl_build_local_scope-breadth-fir.patch b/meta/recipes-core/glibc/glibc/0024-elf-dl-deps.c-Make-_dl_build_local_scope-breadth-fir.patch index 28cff2b90b..3246f01e4d 100644 --- a/meta/recipes-core/glibc/glibc/0024-elf-dl-deps.c-Make-_dl_build_local_scope-breadth-fir.patch +++ b/meta/recipes-core/glibc/glibc/0024-elf-dl-deps.c-Make-_dl_build_local_scope-breadth-fir.patch @@ -1,7 +1,7 @@ -From a6159c9486745664a5f116ee9cc45837021b7624 Mon Sep 17 00:00:00 2001 +From 7a78feb46b1dbb61ec249ba34c629850e03378f2 Mon Sep 17 00:00:00 2001 From: Mark Hatle <mark.hatle@windriver.com> Date: Thu, 18 Aug 2016 14:07:58 -0500 -Subject: [PATCH] elf/dl-deps.c: Make _dl_build_local_scope breadth first +Subject: [PATCH 24/31] elf/dl-deps.c: Make _dl_build_local_scope breadth first According to the ELF specification: @@ -51,3 +51,6 @@ index 9d9b1ba7f2..8414028c58 100644 return p - list; } +-- +2.20.1 + diff --git a/meta/recipes-core/glibc/glibc/0025-locale-fix-hard-coded-reference-to-gcc-E.patch b/meta/recipes-core/glibc/glibc/0025-locale-fix-hard-coded-reference-to-gcc-E.patch deleted file mode 100644 index 4a7919ff5b..0000000000 --- a/meta/recipes-core/glibc/glibc/0025-locale-fix-hard-coded-reference-to-gcc-E.patch +++ /dev/null @@ -1,35 +0,0 @@ -From 6c6aecba19b3e7947100623532a41b6f16734ace Mon Sep 17 00:00:00 2001 -From: =?UTF-8?q?J=C3=A9r=C3=A9my=20Rosen?= <jeremy.rosen@smile.fr> -Date: Mon, 22 Aug 2016 16:09:25 +0200 -Subject: [PATCH] locale: fix hard-coded reference to gcc -E - -When new version of compilers are published, they may not be compatible with -older versions of software. This is particularly common when software is built -with -Werror. - -Autotools provides a way for a user to specify the name of his compiler using a -set of variables ($CC $CXX $CPP etc.). Those variables are used correctly when -compiling glibc but the script used to generate transliterations in the locale/ -subdirectory directly calls the gcc binary to get the output of the -preprocessor instead of using the $CPP variable provided by the build -environment. - -This patch replaces the hard-coded reference to the gcc binary with the proper -environment variable, thus allowing a user to override it. - -Upstream-Status: Submitted [https://sourceware.org/ml/libc-alpha/2016-08/msg00746.html] ---- - locale/gen-translit.pl | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) - -diff --git a/locale/gen-translit.pl b/locale/gen-translit.pl -index 30d3f2f195..e97653017c 100644 ---- a/locale/gen-translit.pl -+++ b/locale/gen-translit.pl -@@ -1,5 +1,5 @@ - #!/usr/bin/perl -w --open F, "cat C-translit.h.in | gcc -E - |" || die "Cannot preprocess input file"; -+open F, 'cat C-translit.h.in | ${CPP:-gcc -E} - |' || die "Cannot preprocess input file"; - - - sub cstrlen { diff --git a/meta/recipes-core/glibc/glibc/0026-reset-dl_load_write_lock-after-forking.patch b/meta/recipes-core/glibc/glibc/0025-reset-dl_load_write_lock-after-forking.patch index 71ddc1234b..dc00e29d84 100644 --- a/meta/recipes-core/glibc/glibc/0026-reset-dl_load_write_lock-after-forking.patch +++ b/meta/recipes-core/glibc/glibc/0025-reset-dl_load_write_lock-after-forking.patch @@ -1,7 +1,7 @@ -From efb0fca7db742f4195e1771d8ba4c7fba4938819 Mon Sep 17 00:00:00 2001 +From ec36d40071079bdc0868257c71da626f93c7e10d Mon Sep 17 00:00:00 2001 From: Khem Raj <raj.khem@gmail.com> Date: Sat, 27 Jan 2018 10:05:07 -0800 -Subject: [PATCH] reset dl_load_write_lock after forking +Subject: [PATCH 25/31] reset dl_load_write_lock after forking The patch in this Bugzilla entry was requested by a customer: @@ -35,3 +35,6 @@ index ec56a827eb..0f48933ff1 100644 /* Run the handlers registered for the child. */ __run_fork_handlers (atfork_run_child); } +-- +2.20.1 + diff --git a/meta/recipes-core/glibc/glibc/0027-Acquire-ld.so-lock-before-switching-to-malloc_atfork.patch b/meta/recipes-core/glibc/glibc/0026-Acquire-ld.so-lock-before-switching-to-malloc_atfork.patch index dd37f2cd4d..22567a463a 100644 --- a/meta/recipes-core/glibc/glibc/0027-Acquire-ld.so-lock-before-switching-to-malloc_atfork.patch +++ b/meta/recipes-core/glibc/glibc/0026-Acquire-ld.so-lock-before-switching-to-malloc_atfork.patch @@ -1,7 +1,7 @@ -From 6ea962e0946da7564a774b08dd3eda28d64e9e56 Mon Sep 17 00:00:00 2001 +From 35cea882d987facd38b714af1988dedc486b53ca Mon Sep 17 00:00:00 2001 From: Khem Raj <raj.khem@gmail.com> Date: Sat, 27 Jan 2018 10:08:04 -0800 -Subject: [PATCH] Acquire ld.so lock before switching to malloc_atfork +Subject: [PATCH 26/31] Acquire ld.so lock before switching to malloc_atfork The patch is from https://sourceware.org/bugzilla/show_bug.cgi?id=4578 @@ -63,3 +63,6 @@ index 0f48933ff1..eef3f9669b 100644 } return pid; +-- +2.20.1 + diff --git a/meta/recipes-core/glibc/glibc/0029-localedef-add-to-archive-uses-a-hard-coded-locale-pa.patch b/meta/recipes-core/glibc/glibc/0027-localedef-add-to-archive-uses-a-hard-coded-locale-pa.patch index e17f6aa3b9..bb0d99a3d8 100644 --- a/meta/recipes-core/glibc/glibc/0029-localedef-add-to-archive-uses-a-hard-coded-locale-pa.patch +++ b/meta/recipes-core/glibc/glibc/0027-localedef-add-to-archive-uses-a-hard-coded-locale-pa.patch @@ -1,7 +1,8 @@ -From 865651d2496a90f7ae8e7cc19a2e54b6f17a8ad5 Mon Sep 17 00:00:00 2001 +From c31cd87c6528a6798c3a81bc1ea8f632d2bf33b1 Mon Sep 17 00:00:00 2001 From: Khem Raj <raj.khem@gmail.com> Date: Fri, 3 Aug 2018 09:42:06 -0700 -Subject: [PATCH] localedef --add-to-archive uses a hard-coded locale path +Subject: [PATCH 27/31] localedef --add-to-archive uses a hard-coded locale + path it doesn't exist in normal use, and there's no way to pass an alternative filename. @@ -14,11 +15,11 @@ Upstream-Status: Inappropriate (OE-specific) Signed-off-by: Ross Burton <ross.burton@intel.com> Signed-off-by: Khem Raj <raj.khem@gmail.com> --- - locale/programs/locarchive.c | 37 ++++++++++++++++++++++++++---------- - 1 file changed, 27 insertions(+), 10 deletions(-) + locale/programs/locarchive.c | 35 +++++++++++++++++++++++++---------- + 1 file changed, 25 insertions(+), 10 deletions(-) diff --git a/locale/programs/locarchive.c b/locale/programs/locarchive.c -index ca332a345f..91f62da662 100644 +index ca332a345f..588de3c3f8 100644 --- a/locale/programs/locarchive.c +++ b/locale/programs/locarchive.c @@ -340,12 +340,24 @@ enlarge_archive (struct locarhandle *ah, const struct locarhead *head) @@ -34,7 +35,7 @@ index ca332a345f..91f62da662 100644 - if (output_prefix) - memcpy (archivefname, output_prefix, prefix_len); - strcpy (archivefname + prefix_len, ARCHIVE_NAME); -+ if (envarchive != NULL) ++ if (envarchive != NULL) + { + archivefname = xmalloc(strlen(envarchive) + 1); + fname = xmalloc(strlen(envarchive) + sizeof (".XXXXXX")); @@ -51,16 +52,7 @@ index ca332a345f..91f62da662 100644 strcpy (stpcpy (fname, archivefname), ".XXXXXX"); /* Not all of the old file has to be mapped. Change this now this -@@ -551,6 +563,8 @@ enlarge_archive (struct locarhandle *ah, const struct locarhead *head) - - /* Add the information for the new one. */ - *ah = new_ah; -+ free(archivefname); -+ free(fname); - } - - -@@ -569,10 +583,13 @@ open_archive (struct locarhandle *ah, bool readonly) +@@ -569,10 +581,13 @@ open_archive (struct locarhandle *ah, bool readonly) /* If ah has a non-NULL fname open that otherwise open the default. */ if (archivefname == NULL) { @@ -78,7 +70,7 @@ index ca332a345f..91f62da662 100644 } while (1) -@@ -585,7 +602,7 @@ open_archive (struct locarhandle *ah, bool readonly) +@@ -585,7 +600,7 @@ open_archive (struct locarhandle *ah, bool readonly) the default locale archive we ignore the failure and list an empty archive, otherwise we print an error and exit. */ @@ -87,3 +79,6 @@ index ca332a345f..91f62da662 100644 { if (readonly) { +-- +2.20.1 + diff --git a/meta/recipes-core/glibc/glibc/0028-bits-siginfo-consts.h-enum-definition-for-TRAP_HWBKP.patch b/meta/recipes-core/glibc/glibc/0028-bits-siginfo-consts.h-enum-definition-for-TRAP_HWBKP.patch deleted file mode 100644 index fae8d0040d..0000000000 --- a/meta/recipes-core/glibc/glibc/0028-bits-siginfo-consts.h-enum-definition-for-TRAP_HWBKP.patch +++ /dev/null @@ -1,66 +0,0 @@ -From 38fad3e5ab3b45c56810abd35fa11a72fa10b8f1 Mon Sep 17 00:00:00 2001 -From: Pratyush Anand <panand@redhat.com> -Date: Wed, 22 Mar 2017 17:02:38 +0530 -Subject: [PATCH] bits/siginfo-consts.h: enum definition for TRAP_HWBKPT is - missing -MIME-Version: 1.0 -Content-Type: text/plain; charset=UTF-8 -Content-Transfer-Encoding: 8bit - -Compile following linux kernel test code with latest glibc: - -https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/tree/tools/testing/selftests/breakpoints/breakpoint_test_arm64.c - -and we get following error: -breakpoint_test_arm64.c: In function ‘run_test’: -breakpoint_test_arm64.c:171:25: error: ‘TRAP_HWBKPT’ undeclared (first use in this function) - if (siginfo.si_code != TRAP_HWBKPT) { - ^ -I can compile test code by modifying my local -/usr/include/bits/siginfo.h and test works great. Therefore, this patch -will be needed in upstream glibc so that issue is fixed there as well. - -Signed-off-by: Pratyush Anand <panand@redhat.com> - -Upstream-Status: Submitted [https://sourceware.org/bugzilla/show_bug.cgi?id=21286] ---- - bits/siginfo-consts.h | 6 +++++- - sysdeps/unix/sysv/linux/bits/siginfo-consts.h | 6 +++++- - 2 files changed, 10 insertions(+), 2 deletions(-) - -diff --git a/bits/siginfo-consts.h b/bits/siginfo-consts.h -index 7464c1882b..298314527a 100644 ---- a/bits/siginfo-consts.h -+++ b/bits/siginfo-consts.h -@@ -106,8 +106,12 @@ enum - { - TRAP_BRKPT = 1, /* Process breakpoint. */ - # define TRAP_BRKPT TRAP_BRKPT -- TRAP_TRACE /* Process trace trap. */ -+ TRAP_TRACE, /* Process trace trap. */ - # define TRAP_TRACE TRAP_TRACE -+ TRAP_BRANCH, /* Process branch trap. */ -+# define TRAP_BRANCH TRAP_BRANCH -+ TRAP_HWBKPT /* hardware breakpoint/watchpoint */ -+# define TRAP_HWBKPT TRAP_HWBKPT - }; - # endif - -diff --git a/sysdeps/unix/sysv/linux/bits/siginfo-consts.h b/sysdeps/unix/sysv/linux/bits/siginfo-consts.h -index 193bd9c471..3fe852bc5f 100644 ---- a/sysdeps/unix/sysv/linux/bits/siginfo-consts.h -+++ b/sysdeps/unix/sysv/linux/bits/siginfo-consts.h -@@ -141,8 +141,12 @@ enum - { - TRAP_BRKPT = 1, /* Process breakpoint. */ - # define TRAP_BRKPT TRAP_BRKPT -- TRAP_TRACE /* Process trace trap. */ -+ TRAP_TRACE, /* Process trace trap. */ - # define TRAP_TRACE TRAP_TRACE -+ TRAP_BRANCH, /* Process branch trap. */ -+# define TRAP_BRANCH TRAP_BRANCH -+ TRAP_HWBKPT /* hardware breakpoint/watchpoint */ -+# define TRAP_HWBKPT TRAP_HWBKPT - }; - # endif - diff --git a/meta/recipes-core/glibc/glibc/0030-intl-Emit-no-lines-in-bison-generated-files.patch b/meta/recipes-core/glibc/glibc/0028-intl-Emit-no-lines-in-bison-generated-files.patch index db97d91c99..a898602f90 100644 --- a/meta/recipes-core/glibc/glibc/0030-intl-Emit-no-lines-in-bison-generated-files.patch +++ b/meta/recipes-core/glibc/glibc/0028-intl-Emit-no-lines-in-bison-generated-files.patch @@ -1,7 +1,7 @@ -From a54c15d0567d547137066f41b1b22eba4875c27b Mon Sep 17 00:00:00 2001 +From ee7a023899a5291046159cc19320f9624de07f6c Mon Sep 17 00:00:00 2001 From: Khem Raj <raj.khem@gmail.com> Date: Fri, 3 Aug 2018 09:44:00 -0700 -Subject: [PATCH] intl: Emit no lines in bison generated files +Subject: [PATCH 28/31] intl: Emit no lines in bison generated files Improve reproducibility: Do not put any #line preprocessor commands in bison generated files. @@ -29,3 +29,6 @@ index 672edf1b38..d31888d013 100644 $(inst_localedir)/locale.alias: locale.alias $(+force) $(do-install) +-- +2.20.1 + diff --git a/meta/recipes-core/glibc/glibc/0034-inject-file-assembly-directives.patch b/meta/recipes-core/glibc/glibc/0029-inject-file-assembly-directives.patch index 55eba2d43e..08cdcdc94d 100644 --- a/meta/recipes-core/glibc/glibc/0034-inject-file-assembly-directives.patch +++ b/meta/recipes-core/glibc/glibc/0029-inject-file-assembly-directives.patch @@ -1,7 +1,12 @@ -Currently, non-IA builds are not reproducibile since build paths are +From 6e9d8aae434c78ac44900f5e2caa228e236d03a3 Mon Sep 17 00:00:00 2001 +From: Khem Raj <raj.khem@gmail.com> +Date: Thu, 29 Nov 2018 17:29:35 -0800 +Subject: [PATCH 29/31] inject file assembly directives + +Currently, non-IA builds are not reproducibile since build paths are being injected into the debug symbols. These are coming from the use of .S assembler files during the glibc build. No STT_FILE section is added -during the assembly but when linking, ld decides to add one to aid +during the assembly but when linking, ld decides to add one to aid debugging and ensure references between the different object files its linking remain clear. @@ -18,6 +23,30 @@ RP Upstream-Status: Pending +Signed-off-by: Khem Raj <raj.khem@gmail.com> +--- + csu/abi-note.S | 2 ++ + sysdeps/aarch64/crti.S | 2 ++ + sysdeps/aarch64/crtn.S | 2 ++ + sysdeps/aarch64/dl-tlsdesc.S | 2 ++ + sysdeps/aarch64/dl-trampoline.S | 2 ++ + sysdeps/aarch64/start.S | 2 ++ + sysdeps/arm/abi-note.S | 2 ++ + sysdeps/arm/crti.S | 2 ++ + sysdeps/arm/crtn.S | 2 ++ + sysdeps/arm/dl-tlsdesc.S | 2 ++ + sysdeps/arm/dl-trampoline.S | 2 ++ + sysdeps/arm/start.S | 2 ++ + sysdeps/mips/start.S | 2 ++ + sysdeps/powerpc/powerpc32/dl-start.S | 2 ++ + sysdeps/powerpc/powerpc32/start.S | 2 ++ + sysdeps/powerpc/powerpc64/start.S | 2 ++ + sysdeps/unix/sysv/linux/aarch64/__read_tp.S | 2 ++ + sysdeps/unix/sysv/linux/arm/aeabi_read_tp.S | 2 ++ + sysdeps/unix/sysv/linux/arm/libc-do-syscall.S | 2 ++ + sysdeps/unix/sysv/linux/powerpc/dl-brk.S | 2 ++ + 20 files changed, 40 insertions(+) + diff --git a/csu/abi-note.S b/csu/abi-note.S index 5d0ca7803d..8ce41581b1 100644 --- a/csu/abi-note.S @@ -57,32 +86,6 @@ index d72300af80..cb249bf3ca 100644 .section .init,"ax",%progbits ldp x29, x30, [sp], 16 RET -diff --git a/sysdeps/aarch64/start.S b/sysdeps/aarch64/start.S -index bad000f555..5957c028cd 100644 ---- a/sysdeps/aarch64/start.S -+++ b/sysdeps/aarch64/start.S -@@ -18,6 +18,8 @@ - - #include <sysdep.h> - -+ .file "start.S" -+ - /* This is the canonical entry point, usually the first thing in the text - segment. - -diff --git a/sysdeps/unix/sysv/linux/aarch64/__read_tp.S b/sysdeps/unix/sysv/linux/aarch64/__read_tp.S -index 92fc0191a5..715bfcb9e4 100644 ---- a/sysdeps/unix/sysv/linux/aarch64/__read_tp.S -+++ b/sysdeps/unix/sysv/linux/aarch64/__read_tp.S -@@ -18,6 +18,8 @@ - - #include <sysdep.h> - -+ .file "__read_tp.S" -+ - .hidden __read_tp - ENTRY (__read_tp) - mrs x0, tpidr_el0 diff --git a/sysdeps/aarch64/dl-tlsdesc.S b/sysdeps/aarch64/dl-tlsdesc.S index 43a62ef307..42f85cdde9 100644 --- a/sysdeps/aarch64/dl-tlsdesc.S @@ -109,6 +112,19 @@ index a86d0722d4..92edab1d01 100644 #define ip0 x16 #define ip0l PTR_REG (16) #define ip1 x17 +diff --git a/sysdeps/aarch64/start.S b/sysdeps/aarch64/start.S +index bad000f555..5957c028cd 100644 +--- a/sysdeps/aarch64/start.S ++++ b/sysdeps/aarch64/start.S +@@ -18,6 +18,8 @@ + + #include <sysdep.h> + ++ .file "start.S" ++ + /* This is the canonical entry point, usually the first thing in the text + segment. + diff --git a/sysdeps/arm/abi-note.S b/sysdeps/arm/abi-note.S index 07bd4c4619..7213b16f27 100644 --- a/sysdeps/arm/abi-note.S @@ -184,19 +200,6 @@ index adef090717..d22e4128e0 100644 /* Tag_ABI_align8_preserved: This code preserves 8-byte alignment in any callee. */ .eabi_attribute 25, 1 -diff --git a/sysdeps/unix/sysv/linux/arm/aeabi_read_tp.S b/sysdeps/unix/sysv/linux/arm/aeabi_read_tp.S -index 871702317a..20a942dbac 100644 ---- a/sysdeps/unix/sysv/linux/arm/aeabi_read_tp.S -+++ b/sysdeps/unix/sysv/linux/arm/aeabi_read_tp.S -@@ -39,6 +39,8 @@ - a normal function call) in a high page of memory; tail call to the - helper. */ - -+ .file "aeabi_read_tp.S" -+ - .hidden __aeabi_read_tp - ENTRY (__aeabi_read_tp) - #ifdef ARCH_HAS_HARD_TP diff --git a/sysdeps/mips/start.S b/sysdeps/mips/start.S index a4c4ef0fae..d00fff31a8 100644 --- a/sysdeps/mips/start.S @@ -210,14 +213,19 @@ index a4c4ef0fae..d00fff31a8 100644 #ifndef ENTRY_POINT #error ENTRY_POINT needs to be defined for start.S on MIPS/ELF. #endif -diff --git a/sysdeps/unix/sysv/linux/powerpc/dl-brk.S b/sysdeps/unix/sysv/linux/powerpc/dl-brk.S -index eeb96544e3..da182b28f8 100644 ---- a/sysdeps/unix/sysv/linux/powerpc/dl-brk.S -+++ b/sysdeps/unix/sysv/linux/powerpc/dl-brk.S -@@ -1 +1,3 @@ -+ .file "dl-brk.S" +diff --git a/sysdeps/powerpc/powerpc32/dl-start.S b/sysdeps/powerpc/powerpc32/dl-start.S +index 243fb8352b..13247d8f49 100644 +--- a/sysdeps/powerpc/powerpc32/dl-start.S ++++ b/sysdeps/powerpc/powerpc32/dl-start.S +@@ -18,6 +18,8 @@ + + #include <sysdep.h> + ++ .file "dl-start.S" + - #include <brk.S> + /* Initial entry point code for the dynamic linker. + The C function `_dl_start' is the real entry point; + its return value is the user program's entry point. */ diff --git a/sysdeps/powerpc/powerpc32/start.S b/sysdeps/powerpc/powerpc32/start.S index 5c10a22f8a..2b52627f27 100644 --- a/sysdeps/powerpc/powerpc32/start.S @@ -244,19 +252,32 @@ index bd7189310c..2e22b8472d 100644 /* We do not want .eh_frame info for crt1.o since crt1.o is linked before crtbegin.o, the file defining __EH_FRAME_BEGIN__. */ #undef cfi_startproc -diff --git a/sysdeps/powerpc/powerpc32/dl-start.S b/sysdeps/powerpc/powerpc32/dl-start.S -index 244d87fb6d..14d3e2ce14 100644 ---- a/sysdeps/powerpc/powerpc32/dl-start.S -+++ b/sysdeps/powerpc/powerpc32/dl-start.S +diff --git a/sysdeps/unix/sysv/linux/aarch64/__read_tp.S b/sysdeps/unix/sysv/linux/aarch64/__read_tp.S +index 92fc0191a5..715bfcb9e4 100644 +--- a/sysdeps/unix/sysv/linux/aarch64/__read_tp.S ++++ b/sysdeps/unix/sysv/linux/aarch64/__read_tp.S @@ -18,6 +18,8 @@ #include <sysdep.h> -+ .file "dl-start.S" ++ .file "__read_tp.S" + - /* Initial entry point code for the dynamic linker. - The C function `_dl_start' is the real entry point; - its return value is the user program's entry point. */ + .hidden __read_tp + ENTRY (__read_tp) + mrs x0, tpidr_el0 +diff --git a/sysdeps/unix/sysv/linux/arm/aeabi_read_tp.S b/sysdeps/unix/sysv/linux/arm/aeabi_read_tp.S +index 871702317a..20a942dbac 100644 +--- a/sysdeps/unix/sysv/linux/arm/aeabi_read_tp.S ++++ b/sysdeps/unix/sysv/linux/arm/aeabi_read_tp.S +@@ -39,6 +39,8 @@ + a normal function call) in a high page of memory; tail call to the + helper. */ + ++ .file "aeabi_read_tp.S" ++ + .hidden __aeabi_read_tp + ENTRY (__aeabi_read_tp) + #ifdef ARCH_HAS_HARD_TP diff --git a/sysdeps/unix/sysv/linux/arm/libc-do-syscall.S b/sysdeps/unix/sysv/linux/arm/libc-do-syscall.S index d26ad1f8d3..a0de10bf81 100644 --- a/sysdeps/unix/sysv/linux/arm/libc-do-syscall.S @@ -270,3 +291,14 @@ index d26ad1f8d3..a0de10bf81 100644 #if defined(__thumb__) .thumb .syntax unified +diff --git a/sysdeps/unix/sysv/linux/powerpc/dl-brk.S b/sysdeps/unix/sysv/linux/powerpc/dl-brk.S +index eeb96544e3..da182b28f8 100644 +--- a/sysdeps/unix/sysv/linux/powerpc/dl-brk.S ++++ b/sysdeps/unix/sysv/linux/powerpc/dl-brk.S +@@ -1 +1,3 @@ ++ .file "dl-brk.S" ++ + #include <brk.S> +-- +2.20.1 + diff --git a/meta/recipes-core/glibc/glibc/0030-sysdeps-ieee754-prevent-maybe-uninitialized-errors-w.patch b/meta/recipes-core/glibc/glibc/0030-sysdeps-ieee754-prevent-maybe-uninitialized-errors-w.patch new file mode 100644 index 0000000000..350a2567ce --- /dev/null +++ b/meta/recipes-core/glibc/glibc/0030-sysdeps-ieee754-prevent-maybe-uninitialized-errors-w.patch @@ -0,0 +1,138 @@ +From 1eb9f04cf243712155063b848a40b5c103985bf5 Mon Sep 17 00:00:00 2001 +From: Martin Jansa <martin.jansa@gmail.com> +Date: Mon, 17 Dec 2018 21:32:23 +0000 +Subject: [PATCH 30/31] sysdeps/ieee754: prevent maybe-uninitialized errors + with -O [BZ #19444] + +With -O included in CFLAGS it fails to build with: + +../sysdeps/ieee754/ldbl-96/e_jnl.c: In function '__ieee754_jnl': +../sysdeps/ieee754/ldbl-96/e_jnl.c:146:20: error: 'temp' may be used uninitialized in this function [-Werror=maybe-uninitialized] + b = invsqrtpi * temp / sqrtl (x); + ~~~~~~~~~~^~~~~~ +../sysdeps/ieee754/ldbl-96/e_jnl.c: In function '__ieee754_ynl': +../sysdeps/ieee754/ldbl-96/e_jnl.c:375:16: error: 'temp' may be used uninitialized in this function [-Werror=maybe-uninitialized] + b = invsqrtpi * temp / sqrtl (x); + ~~~~~~~~~~^~~~~~ +../sysdeps/ieee754/dbl-64/e_jn.c: In function '__ieee754_jn': +../sysdeps/ieee754/dbl-64/e_jn.c:113:20: error: 'temp' may be used uninitialized in this function [-Werror=maybe-uninitialized] + b = invsqrtpi * temp / sqrt (x); + ~~~~~~~~~~^~~~~~ +../sysdeps/ieee754/dbl-64/e_jn.c: In function '__ieee754_yn': +../sysdeps/ieee754/dbl-64/e_jn.c:320:16: error: 'temp' may be used uninitialized in this function [-Werror=maybe-uninitialized] + b = invsqrtpi * temp / sqrt (x); + ~~~~~~~~~~^~~~~~ + +Build tested with Yocto for ARM, AARCH64, X86, X86_64, PPC, MIPS, MIPS64 +with -O, -O1, -Os. +For soft-fp ARM it needs one more fix for -O1: +https://sourceware.org/ml/libc-alpha/2018-09/msg00300.html +For AARCH64 it needs one more fix in locale for -Os: +https://sourceware.org/ml/libc-alpha/2018-09/msg00539.html + + [BZ #19444] + * sysdeps/ieee754/dbl-96/e_jnl.c: Fix build with -O + * sysdeps/ieee754/ldbl-96/e_jnl.c: Likewise. + * sysdeps/ieee754/ldbl-128/e_jnl.c: Likewise. + * sysdeps/ieee754/ldbl-128ibm/e_jnl.c: Likewise. + +Upstream-Status: Submitted [https://patchwork.ozlabs.org/patch/1014765] + +Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com> +Signed-off-by: Khem Raj <raj.khem@gmail.com> +--- + sysdeps/ieee754/dbl-64/e_jn.c | 2 ++ + sysdeps/ieee754/ldbl-128/e_jnl.c | 4 ++++ + sysdeps/ieee754/ldbl-128ibm/e_jnl.c | 4 ++++ + sysdeps/ieee754/ldbl-96/e_jnl.c | 4 ++++ + 4 files changed, 14 insertions(+) + +diff --git a/sysdeps/ieee754/dbl-64/e_jn.c b/sysdeps/ieee754/dbl-64/e_jn.c +index aff06ead16..90a7e77270 100644 +--- a/sysdeps/ieee754/dbl-64/e_jn.c ++++ b/sysdeps/ieee754/dbl-64/e_jn.c +@@ -109,6 +109,7 @@ __ieee754_jn (int n, double x) + case 1: temp = -c + s; break; + case 2: temp = -c - s; break; + case 3: temp = c - s; break; ++ default: __builtin_unreachable (); + } + b = invsqrtpi * temp / sqrt (x); + } +@@ -316,6 +317,7 @@ __ieee754_yn (int n, double x) + case 1: temp = -s - c; break; + case 2: temp = -s + c; break; + case 3: temp = s + c; break; ++ default: __builtin_unreachable (); + } + b = invsqrtpi * temp / sqrt (x); + } +diff --git a/sysdeps/ieee754/ldbl-128/e_jnl.c b/sysdeps/ieee754/ldbl-128/e_jnl.c +index 7610d18c67..3c90072a22 100644 +--- a/sysdeps/ieee754/ldbl-128/e_jnl.c ++++ b/sysdeps/ieee754/ldbl-128/e_jnl.c +@@ -150,6 +150,8 @@ __ieee754_jnl (int n, _Float128 x) + case 3: + temp = c - s; + break; ++ default: ++ __builtin_unreachable (); + } + b = invsqrtpi * temp / sqrtl (x); + } +@@ -386,6 +388,8 @@ __ieee754_ynl (int n, _Float128 x) + case 3: + temp = s + c; + break; ++ default: ++ __builtin_unreachable (); + } + b = invsqrtpi * temp / sqrtl (x); + } +diff --git a/sysdeps/ieee754/ldbl-128ibm/e_jnl.c b/sysdeps/ieee754/ldbl-128ibm/e_jnl.c +index 50b4558e74..478824c8fa 100644 +--- a/sysdeps/ieee754/ldbl-128ibm/e_jnl.c ++++ b/sysdeps/ieee754/ldbl-128ibm/e_jnl.c +@@ -150,6 +150,8 @@ __ieee754_jnl (int n, long double x) + case 3: + temp = c - s; + break; ++ default: ++ __builtin_unreachable (); + } + b = invsqrtpi * temp / sqrtl (x); + } +@@ -386,6 +388,8 @@ __ieee754_ynl (int n, long double x) + case 3: + temp = s + c; + break; ++ default: ++ __builtin_unreachable (); + } + b = invsqrtpi * temp / sqrtl (x); + } +diff --git a/sysdeps/ieee754/ldbl-96/e_jnl.c b/sysdeps/ieee754/ldbl-96/e_jnl.c +index 855190841b..6c1c4b4653 100644 +--- a/sysdeps/ieee754/ldbl-96/e_jnl.c ++++ b/sysdeps/ieee754/ldbl-96/e_jnl.c +@@ -143,6 +143,8 @@ __ieee754_jnl (int n, long double x) + case 3: + temp = c - s; + break; ++ default: ++ __builtin_unreachable (); + } + b = invsqrtpi * temp / sqrtl (x); + } +@@ -372,6 +374,8 @@ __ieee754_ynl (int n, long double x) + case 3: + temp = s + c; + break; ++ default: ++ __builtin_unreachable (); + } + b = invsqrtpi * temp / sqrtl (x); + } +-- +2.20.1 + diff --git a/meta/recipes-core/glibc/glibc/0033-locale-prevent-maybe-uninitialized-errors-with-Os-BZ.patch b/meta/recipes-core/glibc/glibc/0031-locale-prevent-maybe-uninitialized-errors-with-Os-BZ.patch index 31058ca91a..6d9f2e5620 100644 --- a/meta/recipes-core/glibc/glibc/0033-locale-prevent-maybe-uninitialized-errors-with-Os-BZ.patch +++ b/meta/recipes-core/glibc/glibc/0031-locale-prevent-maybe-uninitialized-errors-with-Os-BZ.patch @@ -1,7 +1,7 @@ -From cbada1a1b218c1ef61d0eb4363fad7598e6509d6 Mon Sep 17 00:00:00 2001 -From: Martin Jansa <Martin.Jansa@gmail.com> -Date: Sun, 30 Sep 2018 09:16:48 +0000 -Subject: [PATCH] locale: prevent maybe-uninitialized errors with -Os [BZ +From 81c60ac1f99852ed04e69b2a7db1ff2fc0f0f031 Mon Sep 17 00:00:00 2001 +From: Martin Jansa <martin.jansa@gmail.com> +Date: Mon, 17 Dec 2018 21:36:18 +0000 +Subject: [PATCH 31/31] locale: prevent maybe-uninitialized errors with -Os [BZ #19444] Fixes following error when building for aarch64 with -Os: @@ -21,32 +21,17 @@ Fixes following error when building for aarch64 with -Os: | coll_seq seq1, seq2; | ^~~~ - Partial fix for [BZ #23716] + Partial fix for [BZ #19444] * locale/weight.h: Fix build with -Os. -Work around the issue instead of removing -O like we do with -SELECTED_OPTIMIZATION - -Upstream-Status: Submitted [https://www.sourceware.org/ml/libc-alpha/2018-09/msg00539.html] +Upstream-Status: Submitted [https://patchwork.ozlabs.org/patch/1014766] Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com> +Signed-off-by: Khem Raj <raj.khem@gmail.com> --- - ChangeLog | 4 ++++ locale/weight.h | 7 +++++++ - 2 files changed, 11 insertions(+) + 1 file changed, 7 insertions(+) -diff --git a/ChangeLog b/ChangeLog -index 216336edc9..84fbbf47ed 100644 ---- a/ChangeLog -+++ b/ChangeLog -@@ -1,3 +1,7 @@ -+2018-09-30 Martin Jansa <Martin.Jansa@gmail.com> -+ Partial fix for [BZ #23716] -+ * locale/weight.h: Fix build with -Os. -+ - 2018-09-30 Martin Jansa <Martin.Jansa@gmail.com> - Partial fix for [BZ #23716] - * sysdeps/ieee754/soft-fp/s_fdiv.c: Fix build with -O. diff --git a/locale/weight.h b/locale/weight.h index 6028d3595e..10bcea25e5 100644 --- a/locale/weight.h @@ -66,3 +51,6 @@ index 6028d3595e..10bcea25e5 100644 const unsigned char *cp; const unsigned char *usrc; +-- +2.20.1 + diff --git a/meta/recipes-core/glibc/glibc/0031-sysdeps-ieee754-prevent-maybe-uninitialized-errors-w.patch b/meta/recipes-core/glibc/glibc/0031-sysdeps-ieee754-prevent-maybe-uninitialized-errors-w.patch deleted file mode 100644 index 61f55d4f83..0000000000 --- a/meta/recipes-core/glibc/glibc/0031-sysdeps-ieee754-prevent-maybe-uninitialized-errors-w.patch +++ /dev/null @@ -1,258 +0,0 @@ -From 546b46c309a52ed74dc906114b1e984bb9703d74 Mon Sep 17 00:00:00 2001 -From: Martin Jansa <Martin.Jansa@gmail.com> -Date: Fri, 14 Sep 2018 23:23:03 +0000 -Subject: [PATCH] sysdeps/ieee754: prevent maybe-uninitialized errors with -O - [BZ #19444] - -With -O included in CFLAGS it fails to build with: - -../sysdeps/ieee754/ldbl-96/e_jnl.c: In function '__ieee754_jnl': -../sysdeps/ieee754/ldbl-96/e_jnl.c:146:20: error: 'temp' may be used uninitialized in this function [-Werror=maybe-uninitialized] - b = invsqrtpi * temp / sqrtl (x); - ~~~~~~~~~~^~~~~~ -../sysdeps/ieee754/ldbl-96/e_jnl.c: In function '__ieee754_ynl': -../sysdeps/ieee754/ldbl-96/e_jnl.c:375:16: error: 'temp' may be used uninitialized in this function [-Werror=maybe-uninitialized] - b = invsqrtpi * temp / sqrtl (x); - ~~~~~~~~~~^~~~~~ -../sysdeps/ieee754/dbl-64/e_jn.c: In function '__ieee754_jn': -../sysdeps/ieee754/dbl-64/e_jn.c:113:20: error: 'temp' may be used uninitialized in this function [-Werror=maybe-uninitialized] - b = invsqrtpi * temp / sqrt (x); - ~~~~~~~~~~^~~~~~ -../sysdeps/ieee754/dbl-64/e_jn.c: In function '__ieee754_yn': -../sysdeps/ieee754/dbl-64/e_jn.c:320:16: error: 'temp' may be used uninitialized in this function [-Werror=maybe-uninitialized] - b = invsqrtpi * temp / sqrt (x); - ~~~~~~~~~~^~~~~~ - -Build tested with Yocto for ARM, AARCH64, X86, X86_64, PPC, MIPS, MIPS64 -with -O, -O1, -Os. -For soft-fp ARM it needs one more fix for -O1: -https://sourceware.org/ml/libc-alpha/2018-09/msg00300.html -For AARCH64 it needs one more fix in locale for -Os. - - [BZ #23716] - * sysdeps/ieee754/dbl-96/e_jnl.c: Fix build with -O - * sysdeps/ieee754/ldbl-96/e_jnl.c: Likewise. - * sysdeps/ieee754/ldbl-128/e_jnl.c: Likewise. - * sysdeps/ieee754/ldbl-128ibm/e_jnl.c: Likewise. - -Work around the issue instead of removing -O like we do with -SELECTED_OPTIMIZATION - -Upstream-Status: Submitted [https://www.sourceware.org/ml/libc-alpha/2018-09/msg00299.html] - -Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com> ---- - ChangeLog | 7 +++++++ - sysdeps/ieee754/dbl-64/e_jn.c | 21 +++++++++++++++++++++ - sysdeps/ieee754/ldbl-128/e_jnl.c | 21 +++++++++++++++++++++ - sysdeps/ieee754/ldbl-128ibm/e_jnl.c | 21 +++++++++++++++++++++ - sysdeps/ieee754/ldbl-96/e_jnl.c | 21 +++++++++++++++++++++ - 5 files changed, 91 insertions(+) - -diff --git a/ChangeLog b/ChangeLog -index 11a9b8d98e..922e916f2c 100644 ---- a/ChangeLog -+++ b/ChangeLog -@@ -1,3 +1,10 @@ -+2018-09-29 Martin Jansa <Martin.Jansa@gmail.com> -+ Partial fix for [BZ #23716] -+ * sysdeps/ieee754/dbl-96/e_jnl.c: Fix build with -O -+ * sysdeps/ieee754/ldbl-96/e_jnl.c: Likewise. -+ * sysdeps/ieee754/ldbl-128/e_jnl.c: Likewise. -+ * sysdeps/ieee754/ldbl-128ibm/e_jnl.c: Likewise. -+ - 2018-09-28 Adhemerval Zanella <adhemerval.zanella@linaro.org> - - [BZ #23579] -diff --git a/sysdeps/ieee754/dbl-64/e_jn.c b/sysdeps/ieee754/dbl-64/e_jn.c -index 9181b22bb8..9ff52c737f 100644 ---- a/sysdeps/ieee754/dbl-64/e_jn.c -+++ b/sysdeps/ieee754/dbl-64/e_jn.c -@@ -42,6 +42,7 @@ - #include <math-narrow-eval.h> - #include <math_private.h> - #include <math-underflow.h> -+#include <libc-diag.h> - - static const double - invsqrtpi = 5.64189583547756279280e-01, /* 0x3FE20DD7, 0x50429B6D */ -@@ -109,7 +110,17 @@ __ieee754_jn (int n, double x) - case 2: temp = -c - s; break; - case 3: temp = c - s; break; - } -+ /* With GCC 8 (and older) when compiling with -O the compiler -+ warns that the variable 'temp', may be used uninitialized. -+ The switch above covers all possible values of n & 3 -+ but GCC without VRP enabled isn't able to figure out the -+ range of possible values is [0,3] as explained in: -+ https://gcc.gnu.org/bugzilla/show_bug.cgi?id=69230 -+ so it's false possitive with -O1 and lower. */ -+ DIAG_PUSH_NEEDS_COMMENT; -+ DIAG_IGNORE_NEEDS_COMMENT (8, "-Wmaybe-uninitialized"); - b = invsqrtpi * temp / sqrt (x); -+ DIAG_POP_NEEDS_COMMENT; - } - else - { -@@ -316,7 +327,17 @@ __ieee754_yn (int n, double x) - case 2: temp = -s + c; break; - case 3: temp = s + c; break; - } -+ /* With GCC 8 (and older) when compiling with -O the compiler -+ warns that the variable 'temp', may be used uninitialized. -+ The switch above covers all possible values of n & 3 -+ but GCC without VRP enabled isn't able to figure out the -+ range of possible values is [0,3] as explained in: -+ https://gcc.gnu.org/bugzilla/show_bug.cgi?id=69230 -+ so it's false possitive with -O1 and lower. */ -+ DIAG_PUSH_NEEDS_COMMENT; -+ DIAG_IGNORE_NEEDS_COMMENT (8, "-Wmaybe-uninitialized"); - b = invsqrtpi * temp / sqrt (x); -+ DIAG_POP_NEEDS_COMMENT; - } - else - { -diff --git a/sysdeps/ieee754/ldbl-128/e_jnl.c b/sysdeps/ieee754/ldbl-128/e_jnl.c -index 7739eec291..8706a11575 100644 ---- a/sysdeps/ieee754/ldbl-128/e_jnl.c -+++ b/sysdeps/ieee754/ldbl-128/e_jnl.c -@@ -61,6 +61,7 @@ - #include <math.h> - #include <math_private.h> - #include <math-underflow.h> -+#include <libc-diag.h> - - static const _Float128 - invsqrtpi = L(5.6418958354775628694807945156077258584405E-1), -@@ -150,7 +151,17 @@ __ieee754_jnl (int n, _Float128 x) - temp = c - s; - break; - } -+ /* With GCC 8 (and older) when compiling with -O the compiler -+ warns that the variable 'temp', may be used uninitialized. -+ The switch above covers all possible values of n & 3 -+ but GCC without VRP enabled isn't able to figure out the -+ range of possible values is [0,3] as explained in: -+ https://gcc.gnu.org/bugzilla/show_bug.cgi?id=69230 -+ so it's false possitive with -O1 and lower. */ -+ DIAG_PUSH_NEEDS_COMMENT; -+ DIAG_IGNORE_NEEDS_COMMENT (8, "-Wmaybe-uninitialized"); - b = invsqrtpi * temp / sqrtl (x); -+ DIAG_POP_NEEDS_COMMENT; - } - else - { -@@ -386,7 +397,17 @@ __ieee754_ynl (int n, _Float128 x) - temp = s + c; - break; - } -+ /* With GCC 8 (and older) when compiling with -O the compiler -+ warns that the variable 'temp', may be used uninitialized. -+ The switch above covers all possible values of n & 3 -+ but GCC without VRP enabled isn't able to figure out the -+ range of possible values is [0,3] as explained in: -+ https://gcc.gnu.org/bugzilla/show_bug.cgi?id=69230 -+ so it's false possitive with -O1 and lower. */ -+ DIAG_PUSH_NEEDS_COMMENT; -+ DIAG_IGNORE_NEEDS_COMMENT (8, "-Wmaybe-uninitialized"); - b = invsqrtpi * temp / sqrtl (x); -+ DIAG_POP_NEEDS_COMMENT; - } - else - { -diff --git a/sysdeps/ieee754/ldbl-128ibm/e_jnl.c b/sysdeps/ieee754/ldbl-128ibm/e_jnl.c -index 71b3addfba..3226d02309 100644 ---- a/sysdeps/ieee754/ldbl-128ibm/e_jnl.c -+++ b/sysdeps/ieee754/ldbl-128ibm/e_jnl.c -@@ -61,6 +61,7 @@ - #include <math.h> - #include <math_private.h> - #include <math-underflow.h> -+#include <libc-diag.h> - - static const long double - invsqrtpi = 5.6418958354775628694807945156077258584405E-1L, -@@ -150,7 +151,17 @@ __ieee754_jnl (int n, long double x) - temp = c - s; - break; - } -+ /* With GCC 8 (and older) when compiling with -O the compiler -+ warns that the variable 'temp', may be used uninitialized. -+ The switch above covers all possible values of n & 3 -+ but GCC without VRP enabled isn't able to figure out the -+ range of possible values is [0,3] as explained in: -+ https://gcc.gnu.org/bugzilla/show_bug.cgi?id=69230 -+ so it's false possitive with -O1 and lower. */ -+ DIAG_PUSH_NEEDS_COMMENT; -+ DIAG_IGNORE_NEEDS_COMMENT (8, "-Wmaybe-uninitialized"); - b = invsqrtpi * temp / sqrtl (x); -+ DIAG_POP_NEEDS_COMMENT; - } - else - { -@@ -386,7 +397,17 @@ __ieee754_ynl (int n, long double x) - temp = s + c; - break; - } -+ /* With GCC 8 (and older) when compiling with -O the compiler -+ warns that the variable 'temp', may be used uninitialized. -+ The switch above covers all possible values of n & 3 -+ but GCC without VRP enabled isn't able to figure out the -+ range of possible values is [0,3] as explained in: -+ https://gcc.gnu.org/bugzilla/show_bug.cgi?id=69230 -+ so it's false possitive with -O1 and lower. */ -+ DIAG_PUSH_NEEDS_COMMENT; -+ DIAG_IGNORE_NEEDS_COMMENT (8, "-Wmaybe-uninitialized"); - b = invsqrtpi * temp / sqrtl (x); -+ DIAG_POP_NEEDS_COMMENT; - } - else - { -diff --git a/sysdeps/ieee754/ldbl-96/e_jnl.c b/sysdeps/ieee754/ldbl-96/e_jnl.c -index 394921f564..da5c2cc93e 100644 ---- a/sysdeps/ieee754/ldbl-96/e_jnl.c -+++ b/sysdeps/ieee754/ldbl-96/e_jnl.c -@@ -61,6 +61,7 @@ - #include <math.h> - #include <math_private.h> - #include <math-underflow.h> -+#include <libc-diag.h> - - static const long double - invsqrtpi = 5.64189583547756286948079e-1L, two = 2.0e0L, one = 1.0e0L; -@@ -143,7 +144,17 @@ __ieee754_jnl (int n, long double x) - temp = c - s; - break; - } -+ /* With GCC 8 (and older) when compiling with -O the compiler -+ warns that the variable 'temp', may be used uninitialized. -+ The switch above covers all possible values of n & 3 -+ but GCC without VRP enabled isn't able to figure out the -+ range of possible values is [0,3] as explained in: -+ https://gcc.gnu.org/bugzilla/show_bug.cgi?id=69230 -+ so it's false possitive with -O1 and lower. */ -+ DIAG_PUSH_NEEDS_COMMENT; -+ DIAG_IGNORE_NEEDS_COMMENT (8, "-Wmaybe-uninitialized"); - b = invsqrtpi * temp / sqrtl (x); -+ DIAG_POP_NEEDS_COMMENT; - } - else - { -@@ -372,7 +383,17 @@ __ieee754_ynl (int n, long double x) - temp = s + c; - break; - } -+ /* With GCC 8 (and older) when compiling with -O the compiler -+ warns that the variable 'temp', may be used uninitialized. -+ The switch above covers all possible values of n & 3 -+ but GCC without VRP enabled isn't able to figure out the -+ range of possible values is [0,3] as explained in: -+ https://gcc.gnu.org/bugzilla/show_bug.cgi?id=69230 -+ so it's false possitive with -O1 and lower. */ -+ DIAG_PUSH_NEEDS_COMMENT; -+ DIAG_IGNORE_NEEDS_COMMENT (8, "-Wmaybe-uninitialized"); - b = invsqrtpi * temp / sqrtl (x); -+ DIAG_POP_NEEDS_COMMENT; - } - else - { diff --git a/meta/recipes-core/glibc/glibc/0032-sysdeps-ieee754-soft-fp-ignore-maybe-uninitialized-w.patch b/meta/recipes-core/glibc/glibc/0032-sysdeps-ieee754-soft-fp-ignore-maybe-uninitialized-w.patch deleted file mode 100644 index 99cd2509ec..0000000000 --- a/meta/recipes-core/glibc/glibc/0032-sysdeps-ieee754-soft-fp-ignore-maybe-uninitialized-w.patch +++ /dev/null @@ -1,100 +0,0 @@ -From 618668540e263c09b0eb28131dde7b4500158fd4 Mon Sep 17 00:00:00 2001 -From: Martin Jansa <Martin.Jansa@gmail.com> -Date: Sun, 16 Sep 2018 12:39:22 +0000 -Subject: [PATCH] sysdeps/ieee754/soft-fp: ignore maybe-uninitialized with -O - [BZ #19444] - -* with -O, -O1, -Os it fails with: - -In file included from ../soft-fp/soft-fp.h:318, - from ../sysdeps/ieee754/soft-fp/s_fdiv.c:28: -../sysdeps/ieee754/soft-fp/s_fdiv.c: In function '__fdiv': -../soft-fp/op-2.h:98:25: error: 'R_f1' may be used uninitialized in this function [-Werror=maybe-uninitialized] - X##_f0 = (X##_f1 << (_FP_W_TYPE_SIZE - (N)) | X##_f0 >> (N) \ - ^~ -../sysdeps/ieee754/soft-fp/s_fdiv.c:38:14: note: 'R_f1' was declared here - FP_DECL_D (R); - ^ -../soft-fp/op-2.h:37:36: note: in definition of macro '_FP_FRAC_DECL_2' - _FP_W_TYPE X##_f0 _FP_ZERO_INIT, X##_f1 _FP_ZERO_INIT - ^ -../soft-fp/double.h:95:24: note: in expansion of macro '_FP_DECL' - # define FP_DECL_D(X) _FP_DECL (2, X) - ^~~~~~~~ -../sysdeps/ieee754/soft-fp/s_fdiv.c:38:3: note: in expansion of macro 'FP_DECL_D' - FP_DECL_D (R); - ^~~~~~~~~ -../soft-fp/op-2.h:101:17: error: 'R_f0' may be used uninitialized in this function [-Werror=maybe-uninitialized] - : (X##_f0 << (_FP_W_TYPE_SIZE - (N))) != 0)); \ - ^~ -../sysdeps/ieee754/soft-fp/s_fdiv.c:38:14: note: 'R_f0' was declared here - FP_DECL_D (R); - ^ -../soft-fp/op-2.h:37:14: note: in definition of macro '_FP_FRAC_DECL_2' - _FP_W_TYPE X##_f0 _FP_ZERO_INIT, X##_f1 _FP_ZERO_INIT - ^ -../soft-fp/double.h:95:24: note: in expansion of macro '_FP_DECL' - # define FP_DECL_D(X) _FP_DECL (2, X) - ^~~~~~~~ -../sysdeps/ieee754/soft-fp/s_fdiv.c:38:3: note: in expansion of macro 'FP_DECL_D' - FP_DECL_D (R); - ^~~~~~~~~ - -Build tested with Yocto for ARM, AARCH64, X86, X86_64, PPC, MIPS, MIPS64 -with -O, -O1, -Os. -For AARCH64 it needs one more fix in locale for -Os. - - Partial fix for [BZ #23716] - * sysdeps/ieee754/soft-fp/s_fdiv.c: Fix build with -O - -Work around the issue instead of removing -O like we do with -SELECTED_OPTIMIZATION - -Upstream-Status: Submitted [https://www.sourceware.org/ml/libc-alpha/2018-09/msg00300.html] - -Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com> ---- - ChangeLog | 4 ++++ - sysdeps/ieee754/soft-fp/s_fdiv.c | 12 ++++++++++++ - 2 files changed, 16 insertions(+) - -diff --git a/ChangeLog b/ChangeLog -index 922e916f2c..216336edc9 100644 ---- a/ChangeLog -+++ b/ChangeLog -@@ -1,3 +1,7 @@ -+2018-09-30 Martin Jansa <Martin.Jansa@gmail.com> -+ Partial fix for [BZ #23716] -+ * sysdeps/ieee754/soft-fp/s_fdiv.c: Fix build with -O. -+ - 2018-09-29 Martin Jansa <Martin.Jansa@gmail.com> - Partial fix for [BZ #23716] - * sysdeps/ieee754/dbl-96/e_jnl.c: Fix build with -O -diff --git a/sysdeps/ieee754/soft-fp/s_fdiv.c b/sysdeps/ieee754/soft-fp/s_fdiv.c -index 341339f5ed..14655b77da 100644 ---- a/sysdeps/ieee754/soft-fp/s_fdiv.c -+++ b/sysdeps/ieee754/soft-fp/s_fdiv.c -@@ -25,6 +25,16 @@ - #undef fdivl - - #include <math-narrow.h> -+ -+#include <libc-diag.h> -+/* R_f[01] are not set in cases where it is not used in packing, but the -+ compiler does not see that it is set in all cases where it is -+ used, resulting in warnings that it may be used uninitialized. -+ The location of the warning differs in different versions of GCC, -+ it may be where R is defined using a macro or it may be where the -+ macro is defined. */ -+DIAG_PUSH_NEEDS_COMMENT; -+DIAG_IGNORE_NEEDS_COMMENT (8, "-Wmaybe-uninitialized"); - #include <soft-fp.h> - #include <single.h> - #include <double.h> -@@ -53,4 +63,6 @@ __fdiv (double x, double y) - CHECK_NARROW_DIV (ret, x, y); - return ret; - } -+DIAG_POP_NEEDS_COMMENT; -+ - libm_alias_float_double (div) |