From 7c9faaee307585dbab569b4aa0a386658372af4e Mon Sep 17 00:00:00 2001 From: Ross Burton Date: Thu, 1 Mar 2018 18:26:24 +0000 Subject: glibc: Upgrade to 2.27 release Signed-off-by: Khem Raj Signed-off-by: Ross Burton Signed-off-by: Richard Purdie --- .../glibc/cross-localedef-native_2.26.bb | 51 ------- .../glibc/cross-localedef-native_2.27.bb | 51 +++++++ meta/recipes-core/glibc/glibc-initial_2.26.bb | 9 -- meta/recipes-core/glibc/glibc-initial_2.27.bb | 9 ++ meta/recipes-core/glibc/glibc-locale_2.26.bb | 1 - meta/recipes-core/glibc/glibc-locale_2.27.bb | 1 + meta/recipes-core/glibc/glibc-mtrace_2.26.bb | 1 - meta/recipes-core/glibc/glibc-mtrace_2.27.bb | 1 + meta/recipes-core/glibc/glibc-scripts_2.26.bb | 1 - meta/recipes-core/glibc/glibc-scripts_2.27.bb | 1 + ...libc-Look-for-host-system-ld.so.cache-as-.patch | 12 +- ...libc-Fix-buffer-overrun-with-a-relocated-.patch | 10 +- ...libc-Raise-the-size-of-arrays-containing-.patch | 28 ++-- ...ivesdk-glibc-Allow-64-bit-atomics-for-x86.patch | 8 +- ...500-e5500-e6500-603e-fsqrt-implementation.patch | 6 +- ...-OECORE_KNOWN_INTERPRETER_NAMES-to-known-.patch | 8 +- ...-Fix-undefined-reference-to-__sqrt_finite.patch | 6 +- ...qrt-f-are-now-inline-functions-and-call-o.patch | 6 +- ...bug-1443-which-explains-what-the-patch-do.patch | 10 +- ...n-libm-err-tab.pl-with-specific-dirs-in-S.patch | 10 +- ...qrt-f-are-now-inline-functions-and-call-o.patch | 6 +- ...-configure.ac-handle-correctly-libc_cv_ro.patch | 8 +- .../glibc/glibc/0013-Add-unused-attribute.patch | 8 +- ...thin-the-path-sets-wrong-config-variables.patch | 10 +- ...-timezone-re-written-tzselect-as-posix-sh.patch | 8 +- ...move-bash-dependency-for-nscd-init-script.patch | 6 +- ...c-Cross-building-and-testing-instructions.patch | 6 +- ...018-eglibc-Help-bootstrap-cross-toolchain.patch | 8 +- .../0019-eglibc-Clear-cache-lines-on-ppc8xx.patch | 10 +- ...0020-eglibc-Resolve-__fpscr_values-on-SH4.patch | 8 +- .../glibc/0021-eglibc-Install-PIC-archives.patch | 20 +-- ...ward-port-cross-locale-generation-support.patch | 90 ++++++------- ...0023-Define-DUMMY_LOCALE_T-if-not-defined.patch | 8 +- ....c-Make-_dl_build_local_scope-breadth-fir.patch | 10 +- ...-locale-fix-hard-coded-reference-to-gcc-E.patch | 6 +- ...26-reset-dl_load_write_lock-after-forking.patch | 40 ++++++ ...so-lock-before-switching-to-malloc_atfork.patch | 70 ++++++++++ ...bc-reset-dl-load-write-lock-after-forking.patch | 37 ------ .../0028-Bug-4578-add-ld.so-lock-while-fork.patch | 57 -------- meta/recipes-core/glibc/glibc_2.26.bb | 148 --------------------- meta/recipes-core/glibc/glibc_2.27.bb | 144 ++++++++++++++++++++ 41 files changed, 475 insertions(+), 463 deletions(-) delete mode 100644 meta/recipes-core/glibc/cross-localedef-native_2.26.bb create mode 100644 meta/recipes-core/glibc/cross-localedef-native_2.27.bb delete mode 100644 meta/recipes-core/glibc/glibc-initial_2.26.bb create mode 100644 meta/recipes-core/glibc/glibc-initial_2.27.bb delete mode 100644 meta/recipes-core/glibc/glibc-locale_2.26.bb create mode 100644 meta/recipes-core/glibc/glibc-locale_2.27.bb delete mode 100644 meta/recipes-core/glibc/glibc-mtrace_2.26.bb create mode 100644 meta/recipes-core/glibc/glibc-mtrace_2.27.bb delete mode 100644 meta/recipes-core/glibc/glibc-scripts_2.26.bb create mode 100644 meta/recipes-core/glibc/glibc-scripts_2.27.bb create mode 100644 meta/recipes-core/glibc/glibc/0026-reset-dl_load_write_lock-after-forking.patch create mode 100644 meta/recipes-core/glibc/glibc/0027-Acquire-ld.so-lock-before-switching-to-malloc_atfork.patch delete mode 100644 meta/recipes-core/glibc/glibc/0027-glibc-reset-dl-load-write-lock-after-forking.patch delete mode 100644 meta/recipes-core/glibc/glibc/0028-Bug-4578-add-ld.so-lock-while-fork.patch delete mode 100644 meta/recipes-core/glibc/glibc_2.26.bb create mode 100644 meta/recipes-core/glibc/glibc_2.27.bb (limited to 'meta/recipes-core/glibc') diff --git a/meta/recipes-core/glibc/cross-localedef-native_2.26.bb b/meta/recipes-core/glibc/cross-localedef-native_2.26.bb deleted file mode 100644 index af02a0ce1d..0000000000 --- a/meta/recipes-core/glibc/cross-localedef-native_2.26.bb +++ /dev/null @@ -1,51 +0,0 @@ -SUMMARY = "Cross locale generation tool for glibc" -HOMEPAGE = "http://www.gnu.org/software/libc/libc.html" -SECTION = "libs" -LICENSE = "LGPL-2.1" - -LIC_FILES_CHKSUM = "file://LICENSES;md5=e9a558e243b36d3209f380deb394b213 \ - file://COPYING;md5=b234ee4d69f5fce4486a80fdaf4a4263 \ - file://posix/rxspencer/COPYRIGHT;md5=dc5485bb394a13b2332ec1c785f5d83a \ - file://COPYING.LIB;md5=4fbd65380cdd255951079008b364516c" - -# Tell autotools that we're working in the localedef directory -# -AUTOTOOLS_SCRIPT_PATH = "${S}/localedef" - -inherit native -inherit autotools - -FILESEXTRAPATHS =. "${FILE_DIRNAME}/${PN}:${FILE_DIRNAME}/glibc:" - -SRCBRANCH ?= "release/${PV}/master" -GLIBC_GIT_URI ?= "git://sourceware.org/git/glibc.git" -UPSTREAM_CHECK_GITTAGREGEX = "(?P\d+\.\d+(\.\d+)*)" - -SRCREV_glibc ?= "d300041c533a3d837c9f37a099bcc95466860e98" -SRCREV_localedef ?= "dfb4afe551c6c6e94f9cc85417bd1f582168c843" - -SRC_URI = "${GLIBC_GIT_URI};branch=${SRCBRANCH};name=glibc \ - git://github.com/kraj/localedef;branch=master;name=localedef;destsuffix=git/localedef \ - file://0015-timezone-re-written-tzselect-as-posix-sh.patch \ - file://0016-Remove-bash-dependency-for-nscd-init-script.patch \ - file://0017-eglibc-Cross-building-and-testing-instructions.patch \ - file://0018-eglibc-Help-bootstrap-cross-toolchain.patch \ - file://0019-eglibc-Clear-cache-lines-on-ppc8xx.patch \ - file://0020-eglibc-Resolve-__fpscr_values-on-SH4.patch \ - file://0021-eglibc-Install-PIC-archives.patch \ - file://0022-eglibc-Forward-port-cross-locale-generation-support.patch \ - file://0023-Define-DUMMY_LOCALE_T-if-not-defined.patch \ -" -# Makes for a rather long rev (22 characters), but... -# -SRCREV_FORMAT = "glibc_localedef" - -S = "${WORKDIR}/git" - -EXTRA_OECONF = "--with-glibc=${S}" -CFLAGS += "-fgnu89-inline -std=gnu99 -DIS_IN\(x\)='0'" - -do_install() { - install -d ${D}${bindir} - install -m 0755 ${B}/localedef ${D}${bindir}/cross-localedef -} diff --git a/meta/recipes-core/glibc/cross-localedef-native_2.27.bb b/meta/recipes-core/glibc/cross-localedef-native_2.27.bb new file mode 100644 index 0000000000..d633e9bc37 --- /dev/null +++ b/meta/recipes-core/glibc/cross-localedef-native_2.27.bb @@ -0,0 +1,51 @@ +SUMMARY = "Cross locale generation tool for glibc" +HOMEPAGE = "http://www.gnu.org/software/libc/libc.html" +SECTION = "libs" +LICENSE = "LGPL-2.1" + +LIC_FILES_CHKSUM = "file://LICENSES;md5=e9a558e243b36d3209f380deb394b213 \ + file://COPYING;md5=b234ee4d69f5fce4486a80fdaf4a4263 \ + file://posix/rxspencer/COPYRIGHT;md5=dc5485bb394a13b2332ec1c785f5d83a \ + file://COPYING.LIB;md5=4fbd65380cdd255951079008b364516c" + +# Tell autotools that we're working in the localedef directory +# +AUTOTOOLS_SCRIPT_PATH = "${S}/localedef" + +inherit native +inherit autotools + +FILESEXTRAPATHS =. "${FILE_DIRNAME}/${PN}:${FILE_DIRNAME}/glibc:" + +SRCBRANCH ?= "release/${PV}/master" +GLIBC_GIT_URI ?= "git://sourceware.org/git/glibc.git" +UPSTREAM_CHECK_GITTAGREGEX = "(?P\d+\.\d+(\.\d+)*)" + +SRCREV_glibc ?= "23158b08a0908f381459f273a984c6fd328363cb" +SRCREV_localedef ?= "de5bdbd5e76b5403a4151b9b9f958b6cca36b3e7" + +SRC_URI = "${GLIBC_GIT_URI};branch=${SRCBRANCH};name=glibc \ + git://github.com/kraj/localedef;branch=master;name=localedef;destsuffix=git/localedef \ + file://0015-timezone-re-written-tzselect-as-posix-sh.patch \ + file://0016-Remove-bash-dependency-for-nscd-init-script.patch \ + file://0017-eglibc-Cross-building-and-testing-instructions.patch \ + file://0018-eglibc-Help-bootstrap-cross-toolchain.patch \ + file://0019-eglibc-Clear-cache-lines-on-ppc8xx.patch \ + file://0020-eglibc-Resolve-__fpscr_values-on-SH4.patch \ + file://0021-eglibc-Install-PIC-archives.patch \ + file://0022-eglibc-Forward-port-cross-locale-generation-support.patch \ + file://0023-Define-DUMMY_LOCALE_T-if-not-defined.patch \ +" +# Makes for a rather long rev (22 characters), but... +# +SRCREV_FORMAT = "glibc_localedef" + +S = "${WORKDIR}/git" + +EXTRA_OECONF = "--with-glibc=${S}" +CFLAGS += "-fgnu89-inline -std=gnu99 -DIS_IN\(x\)='0'" + +do_install() { + install -d ${D}${bindir} + install -m 0755 ${B}/localedef ${D}${bindir}/cross-localedef +} diff --git a/meta/recipes-core/glibc/glibc-initial_2.26.bb b/meta/recipes-core/glibc/glibc-initial_2.26.bb deleted file mode 100644 index e86770e12d..0000000000 --- a/meta/recipes-core/glibc/glibc-initial_2.26.bb +++ /dev/null @@ -1,9 +0,0 @@ -require glibc_${PV}.bb -require glibc-initial.inc - -# main glibc recipes muck with TARGET_CPPFLAGS to point into -# final target sysroot but we -# are not there when building glibc-initial -# so reset it here - -TARGET_CPPFLAGS = "" diff --git a/meta/recipes-core/glibc/glibc-initial_2.27.bb b/meta/recipes-core/glibc/glibc-initial_2.27.bb new file mode 100644 index 0000000000..e86770e12d --- /dev/null +++ b/meta/recipes-core/glibc/glibc-initial_2.27.bb @@ -0,0 +1,9 @@ +require glibc_${PV}.bb +require glibc-initial.inc + +# main glibc recipes muck with TARGET_CPPFLAGS to point into +# final target sysroot but we +# are not there when building glibc-initial +# so reset it here + +TARGET_CPPFLAGS = "" diff --git a/meta/recipes-core/glibc/glibc-locale_2.26.bb b/meta/recipes-core/glibc/glibc-locale_2.26.bb deleted file mode 100644 index f7702e0358..0000000000 --- a/meta/recipes-core/glibc/glibc-locale_2.26.bb +++ /dev/null @@ -1 +0,0 @@ -require glibc-locale.inc diff --git a/meta/recipes-core/glibc/glibc-locale_2.27.bb b/meta/recipes-core/glibc/glibc-locale_2.27.bb new file mode 100644 index 0000000000..f7702e0358 --- /dev/null +++ b/meta/recipes-core/glibc/glibc-locale_2.27.bb @@ -0,0 +1 @@ +require glibc-locale.inc diff --git a/meta/recipes-core/glibc/glibc-mtrace_2.26.bb b/meta/recipes-core/glibc/glibc-mtrace_2.26.bb deleted file mode 100644 index 0b69bad46a..0000000000 --- a/meta/recipes-core/glibc/glibc-mtrace_2.26.bb +++ /dev/null @@ -1 +0,0 @@ -require glibc-mtrace.inc diff --git a/meta/recipes-core/glibc/glibc-mtrace_2.27.bb b/meta/recipes-core/glibc/glibc-mtrace_2.27.bb new file mode 100644 index 0000000000..0b69bad46a --- /dev/null +++ b/meta/recipes-core/glibc/glibc-mtrace_2.27.bb @@ -0,0 +1 @@ +require glibc-mtrace.inc diff --git a/meta/recipes-core/glibc/glibc-scripts_2.26.bb b/meta/recipes-core/glibc/glibc-scripts_2.26.bb deleted file mode 100644 index 5a89bd8022..0000000000 --- a/meta/recipes-core/glibc/glibc-scripts_2.26.bb +++ /dev/null @@ -1 +0,0 @@ -require glibc-scripts.inc diff --git a/meta/recipes-core/glibc/glibc-scripts_2.27.bb b/meta/recipes-core/glibc/glibc-scripts_2.27.bb new file mode 100644 index 0000000000..5a89bd8022 --- /dev/null +++ b/meta/recipes-core/glibc/glibc-scripts_2.27.bb @@ -0,0 +1 @@ +require glibc-scripts.inc 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 19c1d9bf14..86234c9d2e 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,7 @@ -From 81346b2f7735698078d5bf919a78b6c0269d6fee Mon Sep 17 00:00:00 2001 +From bd91b60ce6ff01f49b173b6b45e23ce94911b2a6 Mon Sep 17 00:00:00 2001 From: Khem Raj Date: Wed, 18 Mar 2015 01:48:24 +0000 -Subject: [PATCH 01/25] nativesdk-glibc: Look for host system ld.so.cache as +Subject: [PATCH 01/27] nativesdk-glibc: Look for host system ld.so.cache as well Upstream-Status: Inappropriate [embedded specific] @@ -31,10 +31,10 @@ Signed-off-by: Khem Raj 1 file changed, 8 insertions(+), 8 deletions(-) diff --git a/elf/dl-load.c b/elf/dl-load.c -index c1b6d4ba0f..d7af9ebcbc 100644 +index 7554a99b5a..a73d11a62f 100644 --- a/elf/dl-load.c +++ b/elf/dl-load.c -@@ -2054,6 +2054,14 @@ _dl_map_object (struct link_map *loader, const char *name, +@@ -2007,6 +2007,14 @@ _dl_map_object (struct link_map *loader, const char *name, } } @@ -49,7 +49,7 @@ index c1b6d4ba0f..d7af9ebcbc 100644 #ifdef USE_LDCONFIG if (fd == -1 && (__glibc_likely ((mode & __RTLD_SECURE) == 0) -@@ -2112,14 +2120,6 @@ _dl_map_object (struct link_map *loader, const char *name, +@@ -2065,14 +2073,6 @@ _dl_map_object (struct link_map *loader, const char *name, } #endif @@ -65,5 +65,5 @@ index c1b6d4ba0f..d7af9ebcbc 100644 if (__glibc_unlikely (GLRO(dl_debug_mask) & DL_DEBUG_LIBS)) _dl_debug_printf ("\n"); -- -2.13.2 +2.16.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 2ce240be6f..899481f057 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,7 @@ -From 82f2e910ec0e2de6a9e2b007825bddfc5850575d Mon Sep 17 00:00:00 2001 +From 50736f7fc1fdc9e1f7c05f1fec75c977d9be9228 Mon Sep 17 00:00:00 2001 From: Khem Raj Date: Wed, 18 Mar 2015 01:50:00 +0000 -Subject: [PATCH 02/25] nativesdk-glibc: Fix buffer overrun with a relocated +Subject: [PATCH 02/27] nativesdk-glibc: Fix buffer overrun with a relocated SDK When ld-linux-*.so.2 is relocated to a path that is longer than the @@ -22,10 +22,10 @@ Signed-off-by: Khem Raj 1 file changed, 12 insertions(+) diff --git a/elf/dl-load.c b/elf/dl-load.c -index d7af9ebcbc..19c1db9948 100644 +index a73d11a62f..62e3eee478 100644 --- a/elf/dl-load.c +++ b/elf/dl-load.c -@@ -1753,7 +1753,19 @@ open_path (const char *name, size_t namelen, int mode, +@@ -1707,7 +1707,19 @@ open_path (const char *name, size_t namelen, int mode, given on the command line when rtld is run directly. */ return -1; @@ -46,5 +46,5 @@ index d7af9ebcbc..19c1db9948 100644 { struct r_search_path_elem *this_dir = *dirs; -- -2.13.2 +2.16.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 397e8b3169..03f99916fa 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,7 @@ -From 490a0eb4da1af726ea5d68e3efc0d18ba94c4054 Mon Sep 17 00:00:00 2001 +From 695e1cbff6ee6db3435c33e55311c67adf44476d Mon Sep 17 00:00:00 2001 From: Khem Raj Date: Wed, 18 Mar 2015 01:51:38 +0000 -Subject: [PATCH 03/25] nativesdk-glibc: Raise the size of arrays containing dl +Subject: [PATCH 03/27] nativesdk-glibc: Raise the size of arrays containing dl paths This patch puts the dynamic loader path in the binaries, SYSTEM_DIRS strings @@ -26,7 +26,7 @@ Signed-off-by: Khem Raj 7 files changed, 14 insertions(+), 10 deletions(-) diff --git a/elf/dl-cache.c b/elf/dl-cache.c -index e9632da0b3..4de529d2cf 100644 +index 6ee5153ff9..37a5f701fa 100644 --- a/elf/dl-cache.c +++ b/elf/dl-cache.c @@ -133,6 +133,10 @@ do \ @@ -38,14 +38,14 @@ index e9632da0b3..4de529d2cf 100644 + + int - internal_function _dl_cache_libcmp (const char *p1, const char *p2) + { diff --git a/elf/dl-load.c b/elf/dl-load.c -index 19c1db9948..70c259b400 100644 +index 62e3eee478..6ddba73650 100644 --- a/elf/dl-load.c +++ b/elf/dl-load.c -@@ -106,8 +106,8 @@ static size_t max_capstrlen attribute_relro; - /* Get the generated information about the trusted directories. */ +@@ -109,8 +109,8 @@ static size_t max_capstrlen attribute_relro; + gen-trusted-dirs.awk. */ #include "trusted-dirs.h" -static const char system_dirs[] = SYSTEM_DIRS; @@ -56,7 +56,7 @@ index 19c1db9948..70c259b400 100644 SYSTEM_DIRS_LEN }; diff --git a/elf/interp.c b/elf/interp.c -index b6e8f04444..47c20415bc 100644 +index 9cd50c7291..fc2f39d73c 100644 --- a/elf/interp.c +++ b/elf/interp.c @@ -18,5 +18,5 @@ @@ -67,7 +67,7 @@ index b6e8f04444..47c20415bc 100644 +const char __invoke_dynamic_linker__[4096] __attribute__ ((section (".interp"))) = RUNTIME_LINKER; diff --git a/elf/ldconfig.c b/elf/ldconfig.c -index 99caf9e9bb..36ea5df5f1 100644 +index fbdd814edf..9f4d8d69b1 100644 --- a/elf/ldconfig.c +++ b/elf/ldconfig.c @@ -168,6 +168,9 @@ static struct argp argp = @@ -81,7 +81,7 @@ index 99caf9e9bb..36ea5df5f1 100644 a platform. */ static int diff --git a/elf/rtld.c b/elf/rtld.c -index 65647fb1c8..cd8381cb33 100644 +index 453f56eb15..08e0c4c94b 100644 --- a/elf/rtld.c +++ b/elf/rtld.c @@ -128,6 +128,7 @@ dso_name_valid_for_suid (const char *p) @@ -92,7 +92,7 @@ index 65647fb1c8..cd8381cb33 100644 /* LD_AUDIT variable contents. Must be processed before the audit_list below. */ -@@ -999,12 +1000,12 @@ of this helper program; chances are you did not intend to run this program.\n\ +@@ -1000,12 +1001,12 @@ of this helper program; chances are you did not intend to run this program.\n\ --list list all dependencies and how they are resolved\n\ --verify verify that given object really is a dynamically linked\n\ object we can handle\n\ @@ -108,7 +108,7 @@ index 65647fb1c8..cd8381cb33 100644 ++_dl_skip_args; --_dl_argc; diff --git a/iconv/gconv_conf.c b/iconv/gconv_conf.c -index 5aa055de6e..b9a14b9bd3 100644 +index d6cf9d2a3e..9fcf970144 100644 --- a/iconv/gconv_conf.c +++ b/iconv/gconv_conf.c @@ -36,7 +36,7 @@ @@ -121,7 +121,7 @@ index 5aa055de6e..b9a14b9bd3 100644 /* The path elements, as determined by the __gconv_get_path function. All path elements end in a slash. */ diff --git a/sysdeps/generic/dl-cache.h b/sysdeps/generic/dl-cache.h -index 1f0b8f629d..acbe68399d 100644 +index cf43f1cf3b..7f07adde53 100644 --- a/sysdeps/generic/dl-cache.h +++ b/sysdeps/generic/dl-cache.h @@ -27,10 +27,6 @@ @@ -136,5 +136,5 @@ index 1f0b8f629d..acbe68399d 100644 # define add_system_dir(dir) add_dir (dir) #endif -- -2.13.2 +2.16.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 8db47bca78..f9d70c2a09 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 8fe1b56180c30d237cc2ab9a5a9c97a0311f41da Mon Sep 17 00:00:00 2001 +From 2bafdbd7067794c6a24e5e85608c0ec4638c5667 Mon Sep 17 00:00:00 2001 From: Khem Raj Date: Thu, 31 Dec 2015 14:35:35 -0800 -Subject: [PATCH 04/25] nativesdk-glibc: Allow 64 bit atomics for x86 +Subject: [PATCH 04/27] 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. @@ -17,7 +17,7 @@ Signed-off-by: Khem Raj 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/sysdeps/i386/atomic-machine.h b/sysdeps/i386/atomic-machine.h -index 0e24200617..1532f52dec 100644 +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; @@ -30,5 +30,5 @@ index 0e24200617..1532f52dec 100644 #define ATOMIC_EXCHANGE_USES_CAS 0 -- -2.13.2 +2.16.1 diff --git a/meta/recipes-core/glibc/glibc/0005-fsl-e500-e5500-e6500-603e-fsqrt-implementation.patch b/meta/recipes-core/glibc/glibc/0005-fsl-e500-e5500-e6500-603e-fsqrt-implementation.patch index 956b2aae7a..ad9106eefa 100644 --- a/meta/recipes-core/glibc/glibc/0005-fsl-e500-e5500-e6500-603e-fsqrt-implementation.patch +++ b/meta/recipes-core/glibc/glibc/0005-fsl-e500-e5500-e6500-603e-fsqrt-implementation.patch @@ -1,7 +1,7 @@ -From b9edcc845641956b7286c60c833f05a9f70cfab9 Mon Sep 17 00:00:00 2001 +From 661adfe9c220d10617bf6bb283827471c3956b01 Mon Sep 17 00:00:00 2001 From: Khem Raj Date: Wed, 18 Mar 2015 00:01:50 +0000 -Subject: [PATCH 05/25] fsl e500/e5500/e6500/603e fsqrt implementation +Subject: [PATCH 05/27] fsl e500/e5500/e6500/603e fsqrt implementation Upstream-Status: Pending Signed-off-by: Edmar Wienskoski @@ -1580,5 +1580,5 @@ index 0000000000..04ff8cc181 @@ -0,0 +1 @@ +powerpc/powerpc64/e6500/fpu -- -2.13.2 +2.16.1 diff --git a/meta/recipes-core/glibc/glibc/0006-readlib-Add-OECORE_KNOWN_INTERPRETER_NAMES-to-known-.patch b/meta/recipes-core/glibc/glibc/0006-readlib-Add-OECORE_KNOWN_INTERPRETER_NAMES-to-known-.patch index c74fead625..a3d50fd054 100644 --- a/meta/recipes-core/glibc/glibc/0006-readlib-Add-OECORE_KNOWN_INTERPRETER_NAMES-to-known-.patch +++ b/meta/recipes-core/glibc/glibc/0006-readlib-Add-OECORE_KNOWN_INTERPRETER_NAMES-to-known-.patch @@ -1,7 +1,7 @@ -From 324202488a1c2439be345745722f5cb04c0e0847 Mon Sep 17 00:00:00 2001 +From 615598fcca64461a71d84f756d75374f02d914ad Mon Sep 17 00:00:00 2001 From: Khem Raj Date: Wed, 18 Mar 2015 00:11:22 +0000 -Subject: [PATCH 06/25] readlib: Add OECORE_KNOWN_INTERPRETER_NAMES to known +Subject: [PATCH 06/27] readlib: Add OECORE_KNOWN_INTERPRETER_NAMES to known names This bolts in a hook for OE to pass its own version of interpreter @@ -17,7 +17,7 @@ Signed-off-by: Khem Raj 1 file changed, 1 insertion(+) diff --git a/elf/readlib.c b/elf/readlib.c -index d278a189b2..a84cb85158 100644 +index 573c01476c..d8c7412287 100644 --- a/elf/readlib.c +++ b/elf/readlib.c @@ -51,6 +51,7 @@ static struct known_names interpreters[] = @@ -29,5 +29,5 @@ index d278a189b2..a84cb85158 100644 static struct known_names known_libs[] = -- -2.13.2 +2.16.1 diff --git a/meta/recipes-core/glibc/glibc/0007-ppc-sqrt-Fix-undefined-reference-to-__sqrt_finite.patch b/meta/recipes-core/glibc/glibc/0007-ppc-sqrt-Fix-undefined-reference-to-__sqrt_finite.patch index b64327667c..1234df0a09 100644 --- a/meta/recipes-core/glibc/glibc/0007-ppc-sqrt-Fix-undefined-reference-to-__sqrt_finite.patch +++ b/meta/recipes-core/glibc/glibc/0007-ppc-sqrt-Fix-undefined-reference-to-__sqrt_finite.patch @@ -1,7 +1,7 @@ -From cf00bf9de8128171e79a019de809e35f3aeed281 Mon Sep 17 00:00:00 2001 +From 804b73ae295bdfda29341e89f2d0c1b99492dc9a Mon Sep 17 00:00:00 2001 From: Khem Raj Date: Wed, 18 Mar 2015 00:15:07 +0000 -Subject: [PATCH 07/25] ppc/sqrt: Fix undefined reference to `__sqrt_finite' +Subject: [PATCH 07/27] 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' @@ -204,5 +204,5 @@ index 26fa067abf..9d175122a8 100644 } +strong_alias (__ieee754_sqrtf, __sqrtf_finite) -- -2.13.2 +2.16.1 diff --git a/meta/recipes-core/glibc/glibc/0008-__ieee754_sqrt-f-are-now-inline-functions-and-call-o.patch b/meta/recipes-core/glibc/glibc/0008-__ieee754_sqrt-f-are-now-inline-functions-and-call-o.patch index 3aeec5288b..1b43647514 100644 --- a/meta/recipes-core/glibc/glibc/0008-__ieee754_sqrt-f-are-now-inline-functions-and-call-o.patch +++ b/meta/recipes-core/glibc/glibc/0008-__ieee754_sqrt-f-are-now-inline-functions-and-call-o.patch @@ -1,7 +1,7 @@ -From babe311deca9ee2730278f13b061b914b5286dc3 Mon Sep 17 00:00:00 2001 +From 1a53084249d9dae1ef4281246efc899c8f9d63ed Mon Sep 17 00:00:00 2001 From: Khem Raj Date: Wed, 18 Mar 2015 00:16:38 +0000 -Subject: [PATCH 08/25] __ieee754_sqrt{,f} are now inline functions and call +Subject: [PATCH 08/27] __ieee754_sqrt{,f} are now inline functions and call out __slow versions Upstream-Status: Pending @@ -383,5 +383,5 @@ index 9d175122a8..10de1f0cc3 100644 + strong_alias (__ieee754_sqrtf, __sqrtf_finite) -- -2.13.2 +2.16.1 diff --git a/meta/recipes-core/glibc/glibc/0009-Quote-from-bug-1443-which-explains-what-the-patch-do.patch b/meta/recipes-core/glibc/glibc/0009-Quote-from-bug-1443-which-explains-what-the-patch-do.patch index 7d5c2e31f5..ea498569b3 100644 --- a/meta/recipes-core/glibc/glibc/0009-Quote-from-bug-1443-which-explains-what-the-patch-do.patch +++ b/meta/recipes-core/glibc/glibc/0009-Quote-from-bug-1443-which-explains-what-the-patch-do.patch @@ -1,7 +1,7 @@ -From 93b5d6bed19939039031c45b777d29619db06184 Mon Sep 17 00:00:00 2001 +From 48262b6dda935278a40374ddf0080ab6cc999582 Mon Sep 17 00:00:00 2001 From: Khem Raj Date: Wed, 18 Mar 2015 00:20:09 +0000 -Subject: [PATCH 09/25] Quote from bug 1443 which explains what the patch does +Subject: [PATCH 09/27] Quote from bug 1443 which explains what the patch does : We build some random program and link it with -lust. When we run it, @@ -45,10 +45,10 @@ Signed-off-by: Khem Raj 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/sysdeps/arm/dl-machine.h b/sysdeps/arm/dl-machine.h -index 7053ead16e..0b1e1716b0 100644 +index 8a00eab5e3..623edcb1bd 100644 --- a/sysdeps/arm/dl-machine.h +++ b/sysdeps/arm/dl-machine.h -@@ -500,7 +500,7 @@ elf_machine_rel (struct link_map *map, const Elf32_Rel *reloc, +@@ -510,7 +510,7 @@ elf_machine_rel (struct link_map *map, const Elf32_Rel *reloc, case R_ARM_TLS_DTPOFF32: if (sym != NULL) @@ -58,5 +58,5 @@ index 7053ead16e..0b1e1716b0 100644 case R_ARM_TLS_TPOFF32: -- -2.13.2 +2.16.1 diff --git a/meta/recipes-core/glibc/glibc/0010-eglibc-run-libm-err-tab.pl-with-specific-dirs-in-S.patch b/meta/recipes-core/glibc/glibc/0010-eglibc-run-libm-err-tab.pl-with-specific-dirs-in-S.patch index 7275c3e96d..17513185da 100644 --- a/meta/recipes-core/glibc/glibc/0010-eglibc-run-libm-err-tab.pl-with-specific-dirs-in-S.patch +++ b/meta/recipes-core/glibc/glibc/0010-eglibc-run-libm-err-tab.pl-with-specific-dirs-in-S.patch @@ -1,7 +1,7 @@ -From 1a6e0f4ee8584b04226156df1a3de3e467f0ef6f Mon Sep 17 00:00:00 2001 +From 72ea5410909aef6b6aee70e7f9a88d534583aa00 Mon Sep 17 00:00:00 2001 From: Ting Liu Date: Wed, 19 Dec 2012 04:39:57 -0600 -Subject: [PATCH 10/25] eglibc: run libm-err-tab.pl with specific dirs in ${S} +Subject: [PATCH 10/27] 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,10 +18,10 @@ Signed-off-by: Ting Liu 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/manual/Makefile b/manual/Makefile -index 4ed63a8ef3..e89919eb19 100644 +index c2756640a7..1b5bb16a96 100644 --- a/manual/Makefile +++ b/manual/Makefile -@@ -105,7 +105,8 @@ $(objpfx)libm-err.texi: $(objpfx)stamp-libm-err +@@ -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)) pwd=`pwd`; \ @@ -32,5 +32,5 @@ index 4ed63a8ef3..e89919eb19 100644 touch $@ -- -2.13.2 +2.16.1 diff --git a/meta/recipes-core/glibc/glibc/0011-__ieee754_sqrt-f-are-now-inline-functions-and-call-o.patch b/meta/recipes-core/glibc/glibc/0011-__ieee754_sqrt-f-are-now-inline-functions-and-call-o.patch index 84f2ca5234..1e70b2a30e 100644 --- a/meta/recipes-core/glibc/glibc/0011-__ieee754_sqrt-f-are-now-inline-functions-and-call-o.patch +++ b/meta/recipes-core/glibc/glibc/0011-__ieee754_sqrt-f-are-now-inline-functions-and-call-o.patch @@ -1,7 +1,7 @@ -From 9b2af6cbf68d3353d72519e7f6c46becb7bd1d0f Mon Sep 17 00:00:00 2001 +From 8ae998a10b24545e0c12f1f3d8be97b191178204 Mon Sep 17 00:00:00 2001 From: Khem Raj Date: Wed, 18 Mar 2015 00:24:46 +0000 -Subject: [PATCH 11/25] __ieee754_sqrt{,f} are now inline functions and call +Subject: [PATCH 11/27] __ieee754_sqrt{,f} are now inline functions and call out __slow versions Upstream-Status: Pending @@ -57,5 +57,5 @@ index 812653558f..10de1f0cc3 100644 #endif { -- -2.13.2 +2.16.1 diff --git a/meta/recipes-core/glibc/glibc/0012-sysdeps-gnu-configure.ac-handle-correctly-libc_cv_ro.patch b/meta/recipes-core/glibc/glibc/0012-sysdeps-gnu-configure.ac-handle-correctly-libc_cv_ro.patch index 2bf6b23ad1..c35b759a28 100644 --- a/meta/recipes-core/glibc/glibc/0012-sysdeps-gnu-configure.ac-handle-correctly-libc_cv_ro.patch +++ b/meta/recipes-core/glibc/glibc/0012-sysdeps-gnu-configure.ac-handle-correctly-libc_cv_ro.patch @@ -1,7 +1,7 @@ -From ffd3c5a04d8f2f26fea71fed4ce41e88b6f51086 Mon Sep 17 00:00:00 2001 +From 4f9f39761909e67bd6d29b970b7165863e33e565 Mon Sep 17 00:00:00 2001 From: Khem Raj Date: Wed, 18 Mar 2015 00:27:10 +0000 -Subject: [PATCH 12/25] sysdeps/gnu/configure.ac: handle correctly +Subject: [PATCH 12/27] sysdeps/gnu/configure.ac: handle correctly $libc_cv_rootsbindir Upstream-Status:Pending @@ -14,7 +14,7 @@ Signed-off-by: Khem Raj 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/sysdeps/gnu/configure b/sysdeps/gnu/configure -index 71243ad0c6..f578187576 100644 +index c15d1087e8..37cc983f2a 100644 --- a/sysdeps/gnu/configure +++ b/sysdeps/gnu/configure @@ -32,6 +32,6 @@ case "$prefix" in @@ -38,5 +38,5 @@ index 634fe4de2a..3db1697f4f 100644 ;; esac -- -2.13.2 +2.16.1 diff --git a/meta/recipes-core/glibc/glibc/0013-Add-unused-attribute.patch b/meta/recipes-core/glibc/glibc/0013-Add-unused-attribute.patch index 099fe50ee2..62c65253dd 100644 --- a/meta/recipes-core/glibc/glibc/0013-Add-unused-attribute.patch +++ b/meta/recipes-core/glibc/glibc/0013-Add-unused-attribute.patch @@ -1,7 +1,7 @@ -From 049cce82f35e0d864d98075b83888dbba4d68afd Mon Sep 17 00:00:00 2001 +From bba7a647b636618d5fd083e904f995f7736b9168 Mon Sep 17 00:00:00 2001 From: Khem Raj Date: Wed, 18 Mar 2015 00:28:41 +0000 -Subject: [PATCH 13/25] Add unused attribute +Subject: [PATCH 13/27] Add unused attribute Helps in avoiding gcc warning when header is is included in a source file which does not use both functions @@ -17,7 +17,7 @@ Upstream-Status: Pending 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/iconv/gconv_charset.h b/iconv/gconv_charset.h -index 18d8bd6ae7..eb729da5d3 100644 +index 123e2a62ce..63cc83ec84 100644 --- a/iconv/gconv_charset.h +++ b/iconv/gconv_charset.h @@ -21,7 +21,7 @@ @@ -30,5 +30,5 @@ index 18d8bd6ae7..eb729da5d3 100644 { int slash_count = 0; -- -2.13.2 +2.16.1 diff --git a/meta/recipes-core/glibc/glibc/0014-yes-within-the-path-sets-wrong-config-variables.patch b/meta/recipes-core/glibc/glibc/0014-yes-within-the-path-sets-wrong-config-variables.patch index ddc70e0e60..66911285a9 100644 --- a/meta/recipes-core/glibc/glibc/0014-yes-within-the-path-sets-wrong-config-variables.patch +++ b/meta/recipes-core/glibc/glibc/0014-yes-within-the-path-sets-wrong-config-variables.patch @@ -1,7 +1,7 @@ -From 3b904bee81a1cfe81e3f437b5f3296efd54a51ac Mon Sep 17 00:00:00 2001 +From 62f44ce3dd01a257cf67116e355492cb1659a917 Mon Sep 17 00:00:00 2001 From: Khem Raj Date: Wed, 18 Mar 2015 00:31:06 +0000 -Subject: [PATCH 14/25] 'yes' within the path sets wrong config variables +Subject: [PATCH 14/27] '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 @@ -165,7 +165,7 @@ index f05f43802b..dc8639902d 100644 ], libc_cv_nios2_be=yes, libc_cv_nios2_be=no)]) if test $libc_cv_nios2_be = yes; then diff --git a/sysdeps/unix/sysv/linux/mips/configure b/sysdeps/unix/sysv/linux/mips/configure -index a5513fad48..283b293ff3 100644 +index 1ee7f41a36..77e38bebde 100644 --- a/sysdeps/unix/sysv/linux/mips/configure +++ b/sysdeps/unix/sysv/linux/mips/configure @@ -414,11 +414,11 @@ else @@ -199,7 +199,7 @@ index 9147aa4582..7898e24738 100644 libc_mips_nan= diff --git a/sysdeps/unix/sysv/linux/powerpc/powerpc64/configure b/sysdeps/unix/sysv/linux/powerpc/powerpc64/configure -index 4e7fcf1d97..44a9cb3791 100644 +index ae7f254da4..874519000b 100644 --- a/sysdeps/unix/sysv/linux/powerpc/powerpc64/configure +++ b/sysdeps/unix/sysv/linux/powerpc/powerpc64/configure @@ -155,12 +155,12 @@ else @@ -259,5 +259,5 @@ index f9cba6e15d..b21f72f1e4 100644 ], 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.13.2 +2.16.1 diff --git a/meta/recipes-core/glibc/glibc/0015-timezone-re-written-tzselect-as-posix-sh.patch b/meta/recipes-core/glibc/glibc/0015-timezone-re-written-tzselect-as-posix-sh.patch index b5feffa06a..66bf4fdabd 100644 --- a/meta/recipes-core/glibc/glibc/0015-timezone-re-written-tzselect-as-posix-sh.patch +++ b/meta/recipes-core/glibc/glibc/0015-timezone-re-written-tzselect-as-posix-sh.patch @@ -1,7 +1,7 @@ -From b8cb8cb242cb751d888feb1ada5c4d0f05cbc1d7 Mon Sep 17 00:00:00 2001 +From ac240fb01f6470ac207968adfbe20ccc93b16f8b Mon Sep 17 00:00:00 2001 From: Khem Raj Date: Wed, 18 Mar 2015 00:33:03 +0000 -Subject: [PATCH 15/25] timezone: re-written tzselect as posix sh +Subject: [PATCH 15/27] timezone: re-written tzselect as posix sh To avoid the bash dependency. @@ -15,7 +15,7 @@ Signed-off-by: Khem Raj 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/timezone/Makefile b/timezone/Makefile -index d6cc7ba357..e4ead6e1a7 100644 +index 0194aba4a1..58e5405a05 100644 --- a/timezone/Makefile +++ b/timezone/Makefile @@ -122,7 +122,7 @@ $(testdata)/XT%: testdata/XT% @@ -41,5 +41,5 @@ index d2c3a6d1dd..089679f306 100755 # Output one argument as-is to standard output. # Safer than 'echo', which can mishandle '\' or leading '-'. -- -2.13.2 +2.16.1 diff --git a/meta/recipes-core/glibc/glibc/0016-Remove-bash-dependency-for-nscd-init-script.patch b/meta/recipes-core/glibc/glibc/0016-Remove-bash-dependency-for-nscd-init-script.patch index 1d9983b8e5..0b1ee96871 100644 --- a/meta/recipes-core/glibc/glibc/0016-Remove-bash-dependency-for-nscd-init-script.patch +++ b/meta/recipes-core/glibc/glibc/0016-Remove-bash-dependency-for-nscd-init-script.patch @@ -1,7 +1,7 @@ -From 69d378001adfe9a359d2f4b069c1ed2d36de4480 Mon Sep 17 00:00:00 2001 +From 790b133ff2bc5b77ed8533b8999abc65ed0da02b Mon Sep 17 00:00:00 2001 From: Khem Raj Date: Thu, 31 Dec 2015 14:33:02 -0800 -Subject: [PATCH 16/25] Remove bash dependency for nscd init script +Subject: [PATCH 16/27] 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. @@ -71,5 +71,5 @@ index a882da7d8b..b02986ec15 100644 ;; esac -- -2.13.2 +2.16.1 diff --git a/meta/recipes-core/glibc/glibc/0017-eglibc-Cross-building-and-testing-instructions.patch b/meta/recipes-core/glibc/glibc/0017-eglibc-Cross-building-and-testing-instructions.patch index 3e39d7458c..fd821323d7 100644 --- a/meta/recipes-core/glibc/glibc/0017-eglibc-Cross-building-and-testing-instructions.patch +++ b/meta/recipes-core/glibc/glibc/0017-eglibc-Cross-building-and-testing-instructions.patch @@ -1,7 +1,7 @@ -From cdc88dffa226815e3a218604655459e33dc86483 Mon Sep 17 00:00:00 2001 +From 897430bbb65a0f22284d7957206b5fd4efd6607f Mon Sep 17 00:00:00 2001 From: Khem Raj Date: Wed, 18 Mar 2015 00:42:58 +0000 -Subject: [PATCH 17/25] eglibc: Cross building and testing instructions +Subject: [PATCH 17/27] eglibc: Cross building and testing instructions Ported from eglibc Upstream-Status: Pending @@ -615,5 +615,5 @@ index 0000000000..b67b468466 + simply place copies of these libraries in the top GLIBC build + directory. -- -2.13.2 +2.16.1 diff --git a/meta/recipes-core/glibc/glibc/0018-eglibc-Help-bootstrap-cross-toolchain.patch b/meta/recipes-core/glibc/glibc/0018-eglibc-Help-bootstrap-cross-toolchain.patch index 02f35f4e7b..80d547c80d 100644 --- a/meta/recipes-core/glibc/glibc/0018-eglibc-Help-bootstrap-cross-toolchain.patch +++ b/meta/recipes-core/glibc/glibc/0018-eglibc-Help-bootstrap-cross-toolchain.patch @@ -1,7 +1,7 @@ -From 1161cd1c683547d29a03626d9d7de7f9cc03b74a Mon Sep 17 00:00:00 2001 +From fcfa19b69e8749477022161a808a201807ef72ec Mon Sep 17 00:00:00 2001 From: Khem Raj Date: Wed, 18 Mar 2015 00:49:28 +0000 -Subject: [PATCH 18/25] eglibc: Help bootstrap cross toolchain +Subject: [PATCH 18/27] eglibc: Help bootstrap cross toolchain Taken from EGLIBC, r1484 + r1525 @@ -29,7 +29,7 @@ Signed-off-by: Khem Raj create mode 100644 include/stubs-bootstrap.h diff --git a/Makefile b/Makefile -index 3e0ae6f43b..24dc66d17c 100644 +index bea4e27f8d..8c83cfadc6 100644 --- a/Makefile +++ b/Makefile @@ -70,9 +70,18 @@ subdir-dirs = include @@ -96,5 +96,5 @@ index 0000000000..1d2b669aff + EGLIBC subdir 'stubs' make targets, on every .o file in EGLIBC, but + an empty stubs.h like this will do fine for GCC. */ -- -2.13.2 +2.16.1 diff --git a/meta/recipes-core/glibc/glibc/0019-eglibc-Clear-cache-lines-on-ppc8xx.patch b/meta/recipes-core/glibc/glibc/0019-eglibc-Clear-cache-lines-on-ppc8xx.patch index adb28cfd34..17bfe4fe84 100644 --- a/meta/recipes-core/glibc/glibc/0019-eglibc-Clear-cache-lines-on-ppc8xx.patch +++ b/meta/recipes-core/glibc/glibc/0019-eglibc-Clear-cache-lines-on-ppc8xx.patch @@ -1,7 +1,7 @@ -From 1732c7f25453c879c17701839ef34876a7357008 Mon Sep 17 00:00:00 2001 +From c6f2db0d7c5c65bfa19766a0e1ce8210111f9c7d Mon Sep 17 00:00:00 2001 From: Khem Raj Date: Thu, 31 Dec 2015 15:15:09 -0800 -Subject: [PATCH 19/25] eglibc: Clear cache lines on ppc8xx +Subject: [PATCH 19/27] eglibc: Clear cache lines on ppc8xx 2007-06-13 Nathan Sidwell Mark Shinwell @@ -21,7 +21,7 @@ Signed-off-by: Khem Raj 2 files changed, 28 insertions(+), 2 deletions(-) diff --git a/sysdeps/unix/sysv/linux/powerpc/dl-sysdep.c b/sysdeps/unix/sysv/linux/powerpc/dl-sysdep.c -index 23f5d5d388..7e45288db7 100644 +index 78051bc7bc..e24f442320 100644 --- a/sysdeps/unix/sysv/linux/powerpc/dl-sysdep.c +++ b/sysdeps/unix/sysv/linux/powerpc/dl-sysdep.c @@ -24,9 +24,21 @@ int __cache_line_size attribute_hidden; @@ -48,7 +48,7 @@ index 23f5d5d388..7e45288db7 100644 break; diff --git a/sysdeps/unix/sysv/linux/powerpc/libc-start.c b/sysdeps/unix/sysv/linux/powerpc/libc-start.c -index ad036c1e4b..afee56a3da 100644 +index f2ad0c355d..3e6773795e 100644 --- a/sysdeps/unix/sysv/linux/powerpc/libc-start.c +++ b/sysdeps/unix/sysv/linux/powerpc/libc-start.c @@ -73,11 +73,25 @@ __libc_start_main (int argc, char **argv, @@ -79,5 +79,5 @@ index ad036c1e4b..afee56a3da 100644 break; #ifndef SHARED -- -2.13.2 +2.16.1 diff --git a/meta/recipes-core/glibc/glibc/0020-eglibc-Resolve-__fpscr_values-on-SH4.patch b/meta/recipes-core/glibc/glibc/0020-eglibc-Resolve-__fpscr_values-on-SH4.patch index f835d871ab..09f7670758 100644 --- a/meta/recipes-core/glibc/glibc/0020-eglibc-Resolve-__fpscr_values-on-SH4.patch +++ b/meta/recipes-core/glibc/glibc/0020-eglibc-Resolve-__fpscr_values-on-SH4.patch @@ -1,7 +1,7 @@ -From 108b3a1df96a85522c52a0dec032fc2c106f5f2d Mon Sep 17 00:00:00 2001 +From 577085016bb926a687abec145557fe8cb8f5af0e Mon Sep 17 00:00:00 2001 From: Khem Raj Date: Wed, 18 Mar 2015 00:55:53 +0000 -Subject: [PATCH 20/25] eglibc: Resolve __fpscr_values on SH4 +Subject: [PATCH 20/27] eglibc: Resolve __fpscr_values on SH4 2010-09-29 Nobuhiro Iwamatsu Andrew Stubbs @@ -33,7 +33,7 @@ index e0938c4165..ca1d7da339 100644 # a* alphasort64; diff --git a/sysdeps/unix/sysv/linux/sh/sysdep.S b/sysdeps/unix/sysv/linux/sh/sysdep.S -index 5f11bc737b..2fd217b00b 100644 +index c4e28ffb98..648bae03d5 100644 --- a/sysdeps/unix/sysv/linux/sh/sysdep.S +++ b/sysdeps/unix/sysv/linux/sh/sysdep.S @@ -30,3 +30,14 @@ ENTRY (__syscall_error) @@ -52,5 +52,5 @@ index 5f11bc737b..2fd217b00b 100644 +weak_alias (___fpscr_values, __fpscr_values) + -- -2.13.2 +2.16.1 diff --git a/meta/recipes-core/glibc/glibc/0021-eglibc-Install-PIC-archives.patch b/meta/recipes-core/glibc/glibc/0021-eglibc-Install-PIC-archives.patch index 6ee397bf75..530f4e1087 100644 --- a/meta/recipes-core/glibc/glibc/0021-eglibc-Install-PIC-archives.patch +++ b/meta/recipes-core/glibc/glibc/0021-eglibc-Install-PIC-archives.patch @@ -1,7 +1,7 @@ -From 3392ee83b0132c089dffb1e9892b4b252ce1ec0e Mon Sep 17 00:00:00 2001 +From c1beab8a11985f96f5eb644e7103d343b705afc6 Mon Sep 17 00:00:00 2001 From: Khem Raj Date: Wed, 18 Mar 2015 01:57:01 +0000 -Subject: [PATCH 21/25] eglibc: Install PIC archives +Subject: [PATCH 21/27] eglibc: Install PIC archives Forward port from eglibc @@ -29,10 +29,10 @@ Signed-off-by: Khem Raj 1 file changed, 40 insertions(+), 2 deletions(-) diff --git a/Makerules b/Makerules -index 9bb707c168..74cbefb9ba 100644 +index ef6abeac6d..eeaa667f49 100644 --- a/Makerules +++ b/Makerules -@@ -775,6 +775,9 @@ ifeq ($(build-shared),yes) +@@ -778,6 +778,9 @@ ifeq ($(build-shared),yes) $(common-objpfx)libc.so: $(common-objpfx)libc.map endif common-generated += libc.so libc_pic.os @@ -42,7 +42,7 @@ index 9bb707c168..74cbefb9ba 100644 ifdef libc.so-version $(common-objpfx)libc.so$(libc.so-version): $(common-objpfx)libc.so $(make-link) -@@ -1026,6 +1029,7 @@ endif +@@ -1029,6 +1032,7 @@ endif install: check-install-supported @@ -50,7 +50,7 @@ index 9bb707c168..74cbefb9ba 100644 install: $(installed-libcs) $(installed-libcs): $(inst_libdir)/lib$(libprefix)%: lib $(+force) $(make-target-directory) -@@ -1054,6 +1058,22 @@ versioned := $(strip $(foreach so,$(install-lib.so),\ +@@ -1057,6 +1061,22 @@ versioned := $(strip $(foreach so,$(install-lib.so),\ install-lib.so-versioned := $(filter $(versioned), $(install-lib.so)) install-lib.so-unversioned := $(filter-out $(versioned), $(install-lib.so)) @@ -73,7 +73,7 @@ index 9bb707c168..74cbefb9ba 100644 # For versioned libraries, we install three files: # $(inst_libdir)/libfoo.so -- for linking, symlink or ld script # $(inst_slibdir)/libfoo.so.NN -- for loading by SONAME, symlink -@@ -1298,9 +1318,22 @@ $(addprefix $(inst_includedir)/,$(headers-nonh)): $(inst_includedir)/%: \ +@@ -1311,9 +1331,22 @@ $(addprefix $(inst_includedir)/,$(headers-nonh)): $(inst_includedir)/%: \ endif # headers-nonh endif # headers @@ -97,7 +97,7 @@ index 9bb707c168..74cbefb9ba 100644 install-bin-nosubdir: $(addprefix $(inst_bindir)/,$(install-bin)) install-bin-script-nosubdir: $(addprefix $(inst_bindir)/,$(install-bin-script)) install-rootsbin-nosubdir: \ -@@ -1313,6 +1346,10 @@ install-data-nosubdir: $(addprefix $(inst_datadir)/,$(install-data)) +@@ -1326,6 +1359,10 @@ install-data-nosubdir: $(addprefix $(inst_datadir)/,$(install-data)) install-headers-nosubdir: $(addprefix $(inst_includedir)/,$(headers)) install-others-nosubdir: $(install-others) install-others-programs-nosubdir: $(install-others-programs) @@ -108,7 +108,7 @@ index 9bb707c168..74cbefb9ba 100644 # We need all the `-nosubdir' targets so that `install' in the parent # doesn't depend on several things which each iterate over the subdirs. -@@ -1322,7 +1359,8 @@ install-%:: install-%-nosubdir ; +@@ -1335,7 +1372,8 @@ install-%:: install-%-nosubdir ; .PHONY: install install-no-libc.a-nosubdir install-no-libc.a-nosubdir: install-headers-nosubdir install-data-nosubdir \ @@ -119,5 +119,5 @@ index 9bb707c168..74cbefb9ba 100644 install-no-libc.a-nosubdir: install-bin-nosubdir install-bin-script-nosubdir \ install-rootsbin-nosubdir install-sbin-nosubdir \ -- -2.13.2 +2.16.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 2a8a20ac8d..a629ce141a 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 d97533dc201cfd863765b1a67a27fde3e2622da7 Mon Sep 17 00:00:00 2001 +From e019fe6a2b410db6043e21803f497b5cbdd90a83 Mon Sep 17 00:00:00 2001 From: Khem Raj Date: Wed, 18 Mar 2015 01:33:49 +0000 -Subject: [PATCH 22/25] eglibc: Forward port cross locale generation support +Subject: [PATCH 22/27] eglibc: Forward port cross locale generation support Upstream-Status: Pending @@ -23,7 +23,7 @@ Signed-off-by: Khem Raj create mode 100644 locale/catnames.c diff --git a/locale/Makefile b/locale/Makefile -index 98ee76272d..bc3afb2248 100644 +index fd9972279b..176b3946de 100644 --- a/locale/Makefile +++ b/locale/Makefile @@ -26,7 +26,8 @@ headers = langinfo.h locale.h bits/locale.h \ @@ -91,7 +91,7 @@ index 0000000000..9fad357db1 + [LC_ALL] = sizeof ("LC_ALL") - 1 + }; diff --git a/locale/localeinfo.h b/locale/localeinfo.h -index 4e1c8c568a..f7ed946f1c 100644 +index 68822a6319..fa36123776 100644 --- a/locale/localeinfo.h +++ b/locale/localeinfo.h @@ -224,7 +224,7 @@ __libc_tsd_define (extern, locale_t, LOCALE) @@ -104,11 +104,11 @@ index 4e1c8c568a..f7ed946f1c 100644 # define NL_CURRENT_INDIRECT 1 #endif diff --git a/locale/programs/charmap-dir.c b/locale/programs/charmap-dir.c -index e55ab86e28..0f87e6dd28 100644 +index 34a8d32c92..cbb9436cd1 100644 --- a/locale/programs/charmap-dir.c +++ b/locale/programs/charmap-dir.c -@@ -19,7 +19,9 @@ - #include +@@ -18,7 +18,9 @@ + #include #include #include +#ifndef NO_UNCOMPRESS @@ -117,7 +117,7 @@ index e55ab86e28..0f87e6dd28 100644 #include #include #include -@@ -156,6 +158,7 @@ charmap_closedir (CHARMAP_DIR *cdir) +@@ -154,6 +156,7 @@ charmap_closedir (CHARMAP_DIR *cdir) return closedir (dir); } @@ -125,7 +125,7 @@ index e55ab86e28..0f87e6dd28 100644 /* Creates a subprocess decompressing the given pathname, and returns a stream reading its output (the decompressed data). */ static -@@ -204,6 +207,7 @@ fopen_uncompressed (const char *pathname, const char *compressor) +@@ -202,6 +205,7 @@ fopen_uncompressed (const char *pathname, const char *compressor) } return NULL; } @@ -133,7 +133,7 @@ index e55ab86e28..0f87e6dd28 100644 /* Opens a charmap for reading, given its name (not an alias name). */ FILE * -@@ -226,6 +230,7 @@ charmap_open (const char *directory, const char *name) +@@ -224,6 +228,7 @@ charmap_open (const char *directory, const char *name) if (stream != NULL) return stream; @@ -141,7 +141,7 @@ index e55ab86e28..0f87e6dd28 100644 memcpy (p, ".gz", 4); stream = fopen_uncompressed (pathname, "gzip"); if (stream != NULL) -@@ -235,6 +240,7 @@ charmap_open (const char *directory, const char *name) +@@ -233,6 +238,7 @@ charmap_open (const char *directory, const char *name) stream = fopen_uncompressed (pathname, "bzip2"); if (stream != NULL) return stream; @@ -150,10 +150,10 @@ index e55ab86e28..0f87e6dd28 100644 return NULL; } diff --git a/locale/programs/ld-collate.c b/locale/programs/ld-collate.c -index cec848cb7c..fcd768eb7d 100644 +index d2eebcfdbb..c3718d6589 100644 --- a/locale/programs/ld-collate.c +++ b/locale/programs/ld-collate.c -@@ -350,7 +350,7 @@ new_element (struct locale_collate_t *collate, const char *mbs, size_t mbslen, +@@ -349,7 +349,7 @@ new_element (struct locale_collate_t *collate, const char *mbs, size_t mbslen, } if (wcs != NULL) { @@ -162,7 +162,7 @@ index cec848cb7c..fcd768eb7d 100644 uint32_t zero = 0; /* Handle as a single character. */ if (nwcs == 0) -@@ -1776,8 +1776,7 @@ symbol `%s' has the same encoding as"), (*eptr)->name); +@@ -1772,8 +1772,7 @@ symbol `%s' has the same encoding as"), (*eptr)->name); if ((*eptr)->nwcs == runp->nwcs) { @@ -172,7 +172,7 @@ index cec848cb7c..fcd768eb7d 100644 if (c == 0) { -@@ -2010,9 +2009,9 @@ add_to_tablewc (uint32_t ch, struct element_t *runp) +@@ -2000,9 +1999,9 @@ add_to_tablewc (uint32_t ch, struct element_t *runp) one consecutive entry. */ if (runp->wcnext != NULL && runp->nwcs == runp->wcnext->nwcs @@ -185,7 +185,7 @@ index cec848cb7c..fcd768eb7d 100644 && (runp->wcs[runp->nwcs - 1] == runp->wcnext->wcs[runp->nwcs - 1] + 1)) { -@@ -2036,9 +2035,9 @@ add_to_tablewc (uint32_t ch, struct element_t *runp) +@@ -2026,9 +2025,9 @@ add_to_tablewc (uint32_t ch, struct element_t *runp) runp = runp->wcnext; while (runp->wcnext != NULL && runp->nwcs == runp->wcnext->nwcs @@ -199,10 +199,10 @@ index cec848cb7c..fcd768eb7d 100644 == runp->wcnext->wcs[runp->nwcs - 1] + 1)); diff --git a/locale/programs/ld-ctype.c b/locale/programs/ld-ctype.c -index df266c20d6..05c0152ec9 100644 +index f791e6b7e9..d809d6db7f 100644 --- a/locale/programs/ld-ctype.c +++ b/locale/programs/ld-ctype.c -@@ -926,7 +926,7 @@ ctype_output (struct localedef_t *locale, const struct charmap_t *charmap, +@@ -915,7 +915,7 @@ ctype_output (struct localedef_t *locale, const struct charmap_t *charmap, allocate_arrays (ctype, charmap, ctype->repertoire); default_missing_len = (ctype->default_missing @@ -211,7 +211,7 @@ index df266c20d6..05c0152ec9 100644 : 0); init_locale_data (&file, nelems); -@@ -1937,7 +1937,7 @@ read_translit_entry (struct linereader *ldfile, struct locale_ctype_t *ctype, +@@ -1926,7 +1926,7 @@ read_translit_entry (struct linereader *ldfile, struct locale_ctype_t *ctype, ignore = 1; else /* This value is usable. */ @@ -220,7 +220,7 @@ index df266c20d6..05c0152ec9 100644 first = 0; } -@@ -2471,8 +2471,8 @@ with character code range values one must use the absolute ellipsis `...'")); +@@ -2460,8 +2460,8 @@ with character code range values one must use the absolute ellipsis `...'")); } handle_tok_digit: @@ -231,7 +231,7 @@ index df266c20d6..05c0152ec9 100644 handle_digits = 1; goto read_charclass; -@@ -3929,8 +3929,7 @@ allocate_arrays (struct locale_ctype_t *ctype, const struct charmap_t *charmap, +@@ -3901,8 +3901,7 @@ allocate_arrays (struct locale_ctype_t *ctype, const struct charmap_t *charmap, while (idx < number) { @@ -241,7 +241,7 @@ index df266c20d6..05c0152ec9 100644 if (res == 0) { replace = 1; -@@ -3967,11 +3966,11 @@ allocate_arrays (struct locale_ctype_t *ctype, const struct charmap_t *charmap, +@@ -3939,11 +3938,11 @@ allocate_arrays (struct locale_ctype_t *ctype, const struct charmap_t *charmap, for (size_t cnt = 0; cnt < number; ++cnt) { struct translit_to_t *srunp; @@ -255,7 +255,7 @@ index df266c20d6..05c0152ec9 100644 srunp = srunp->next; } /* Plus one for the extra NUL character marking the end of -@@ -3995,18 +3994,18 @@ allocate_arrays (struct locale_ctype_t *ctype, const struct charmap_t *charmap, +@@ -3967,18 +3966,18 @@ allocate_arrays (struct locale_ctype_t *ctype, const struct charmap_t *charmap, ctype->translit_from_idx[cnt] = from_len; ctype->translit_to_idx[cnt] = to_len; @@ -281,10 +281,10 @@ index df266c20d6..05c0152ec9 100644 srunp = srunp->next; } diff --git a/locale/programs/ld-time.c b/locale/programs/ld-time.c -index 32e9c41e35..6a61fcedeb 100644 +index a755792363..e8b2f85522 100644 --- a/locale/programs/ld-time.c +++ b/locale/programs/ld-time.c -@@ -215,8 +215,10 @@ No definition for %s category found"), "LC_TIME")); +@@ -220,8 +220,10 @@ No definition for %s category found"), "LC_TIME"); } else { @@ -296,7 +296,7 @@ index 32e9c41e35..6a61fcedeb 100644 } } -@@ -226,7 +228,7 @@ No definition for %s category found"), "LC_TIME")); +@@ -231,7 +233,7 @@ No definition for %s category found"), "LC_TIME"); const int days_per_month[12] = { 31, 29, 31, 30, 31, 30, 31, 31, 30, 31 ,30, 31 }; size_t idx; @@ -305,7 +305,7 @@ index 32e9c41e35..6a61fcedeb 100644 time->era_entries = (struct era_data *) xmalloc (time->num_era -@@ -464,18 +466,18 @@ No definition for %s category found"), "LC_TIME")); +@@ -457,18 +459,18 @@ No definition for %s category found"), "LC_TIME"); } /* Now generate the wide character name and format. */ @@ -331,7 +331,7 @@ index 32e9c41e35..6a61fcedeb 100644 } else time->era_entries[idx].wname = -@@ -534,7 +536,16 @@ No definition for %s category found"), "LC_TIME")); +@@ -527,7 +529,16 @@ No definition for %s category found"), "LC_TIME"); if (time->date_fmt == NULL) time->date_fmt = "%a %b %e %H:%M:%S %Z %Y"; if (time->wdate_fmt == NULL) @@ -350,7 +350,7 @@ index 32e9c41e35..6a61fcedeb 100644 diff --git a/locale/programs/linereader.c b/locale/programs/linereader.c -index 52b340963a..1a8bce17b4 100644 +index 3525c8a43d..f8a7fd9c24 100644 --- a/locale/programs/linereader.c +++ b/locale/programs/linereader.c @@ -595,7 +595,7 @@ get_string (struct linereader *lr, const struct charmap_t *charmap, @@ -363,18 +363,18 @@ index 52b340963a..1a8bce17b4 100644 size_t bufmax = 56; diff --git a/locale/programs/localedef.c b/locale/programs/localedef.c -index 6acc1342c7..df87740f8b 100644 +index d718d2e9f4..e0a3ad5a83 100644 --- a/locale/programs/localedef.c +++ b/locale/programs/localedef.c -@@ -108,6 +108,7 @@ void (*argp_program_version_hook) (FILE *, struct argp_state *) = print_version; - #define OPT_LIST_ARCHIVE 309 - #define OPT_LITTLE_ENDIAN 400 +@@ -105,6 +105,7 @@ void (*argp_program_version_hook) (FILE *, struct argp_state *) = print_version; #define OPT_BIG_ENDIAN 401 -+#define OPT_UINT32_ALIGN 402 + #define OPT_NO_WARN 402 + #define OPT_WARN 403 ++#define OPT_UINT32_ALIGN 404 /* Definitions of arguments for argp functions. */ static const struct argp_option options[] = -@@ -143,6 +144,8 @@ static const struct argp_option options[] = +@@ -147,6 +148,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 6acc1342c7..df87740f8b 100644 { NULL, 0, NULL, 0, NULL } }; -@@ -232,12 +235,14 @@ main (int argc, char *argv[]) +@@ -236,12 +239,14 @@ main (int argc, char *argv[]) ctype locale. (P1003.2 4.35.5.2) */ setlocale (LC_CTYPE, "POSIX"); @@ -392,15 +392,15 @@ index 6acc1342c7..df87740f8b 100644 defines error code 3 for this situation so I think it must be a fatal error (see P1003.2 4.35.8). */ if (sysconf (_SC_2_LOCALEDEF) < 0) - WITH_CUR_LOCALE (error (3, 0, _("\ - FATAL: system does not define `_POSIX2_LOCALEDEF'"))); + record_error (3, 0, _("\ + FATAL: system does not define `_POSIX2_LOCALEDEF'")); +#endif /* Process charmap file. */ charmap = charmap_read (charmap_file, verbose, 1, be_quiet, 1); -@@ -328,6 +333,9 @@ parse_opt (int key, char *arg, struct argp_state *state) - case OPT_BIG_ENDIAN: - set_big_endian (true); +@@ -389,6 +394,9 @@ parse_opt (int key, char *arg, struct argp_state *state) + /* Enable the warnings. */ + set_warnings (arg, true); break; + case OPT_UINT32_ALIGN: + uint32_align_mask = strtol (arg, NULL, 0) - 1; @@ -409,7 +409,7 @@ index 6acc1342c7..df87740f8b 100644 force_output = 1; break; diff --git a/locale/programs/locfile.c b/locale/programs/locfile.c -index 0990ef11be..683422c908 100644 +index 32e5f761f2..b41e77bd8d 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, @@ -432,7 +432,7 @@ index 0990ef11be..683422c908 100644 /* Record that FILE's next element is the 32-bit integer VALUE. */ diff --git a/locale/programs/locfile.h b/locale/programs/locfile.h -index 3407e13c13..0bb556caf8 100644 +index 89b347c72d..a636fc2960 100644 --- a/locale/programs/locfile.h +++ b/locale/programs/locfile.h @@ -71,6 +71,8 @@ extern void write_all_categories (struct localedef_t *definitions, @@ -521,7 +521,7 @@ index 3407e13c13..0bb556caf8 100644 + #endif /* locfile.h */ diff --git a/locale/setlocale.c b/locale/setlocale.c -index 19acc4b2c7..c89d3b87ad 100644 +index e4de907e1f..b5d8f5c17d 100644 --- a/locale/setlocale.c +++ b/locale/setlocale.c @@ -64,36 +64,6 @@ static char *const _nl_current_used[] = @@ -562,5 +562,5 @@ index 19acc4b2c7..c89d3b87ad 100644 # define WEAK_POSTLOAD(postload) weak_extern (postload) #else -- -2.13.2 +2.16.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 9e580d44b1..ae708ef83e 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 cb4d00eac7f84092314de593626eea40f9529038 Mon Sep 17 00:00:00 2001 +From 9d71526be21abe68dd8ca3a5a219445851bbc2f4 Mon Sep 17 00:00:00 2001 From: Khem Raj Date: Wed, 20 Apr 2016 21:11:00 -0700 -Subject: [PATCH 23/25] Define DUMMY_LOCALE_T if not defined +Subject: [PATCH 23/27] Define DUMMY_LOCALE_T if not defined This is a hack to fix building the locale bits on an older CentOs 5.X machine @@ -14,7 +14,7 @@ Signed-off-by: Khem Raj 1 file changed, 3 insertions(+) diff --git a/locale/programs/config.h b/locale/programs/config.h -index 5b416be0d8..79e66eed5e 100644 +index 9956cd8446..04342f3644 100644 --- a/locale/programs/config.h +++ b/locale/programs/config.h @@ -19,6 +19,9 @@ @@ -28,5 +28,5 @@ index 5b416be0d8..79e66eed5e 100644 #define PACKAGE _libc_intl_domainname #ifndef VERSION -- -2.13.2 +2.16.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 0b59352536..42ff667811 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 a784742739c90eea0d4ccbbd073a067d55ca95e8 Mon Sep 17 00:00:00 2001 +From 03873af286f1dab1062f598d6deb774ce513421d Mon Sep 17 00:00:00 2001 From: Mark Hatle Date: Thu, 18 Aug 2016 14:07:58 -0500 -Subject: [PATCH 24/25] elf/dl-deps.c: Make _dl_build_local_scope breadth first +Subject: [PATCH 24/27] elf/dl-deps.c: Make _dl_build_local_scope breadth first According to the ELF specification: @@ -24,10 +24,10 @@ Signed-off-by: Mark Hatle 1 file changed, 10 insertions(+), 4 deletions(-) diff --git a/elf/dl-deps.c b/elf/dl-deps.c -index 1b8bac6593..c616808f31 100644 +index c975fcffd7..6ee58c74e0 100644 --- a/elf/dl-deps.c +++ b/elf/dl-deps.c -@@ -73,13 +73,19 @@ _dl_build_local_scope (struct link_map **list, struct link_map *map) +@@ -72,13 +72,19 @@ _dl_build_local_scope (struct link_map **list, struct link_map *map) { struct link_map **p = list; struct link_map **q; @@ -52,5 +52,5 @@ index 1b8bac6593..c616808f31 100644 } -- -2.13.2 +2.16.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 index 09ad04a4d4..7f5d1421d3 100644 --- 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 @@ -1,7 +1,7 @@ -From f3a670496c8fe6d4acf045f5b167a19cf41b044e Mon Sep 17 00:00:00 2001 +From 56dab024751941c07eb479f47ef6682e2168c86a Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?J=C3=A9r=C3=A9my=20Rosen?= Date: Mon, 22 Aug 2016 16:09:25 +0200 -Subject: [PATCH 25/25] locale: fix hard-coded reference to gcc -E +Subject: [PATCH 25/27] 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 @@ -34,5 +34,5 @@ index 30d3f2f195..e97653017c 100644 sub cstrlen { -- -2.13.2 +2.16.1 diff --git a/meta/recipes-core/glibc/glibc/0026-reset-dl_load_write_lock-after-forking.patch b/meta/recipes-core/glibc/glibc/0026-reset-dl_load_write_lock-after-forking.patch new file mode 100644 index 0000000000..eca1193dd3 --- /dev/null +++ b/meta/recipes-core/glibc/glibc/0026-reset-dl_load_write_lock-after-forking.patch @@ -0,0 +1,40 @@ +From 847d37d5a34e4bf294de4ba98de3668950e28bc7 Mon Sep 17 00:00:00 2001 +From: Khem Raj +Date: Sat, 27 Jan 2018 10:05:07 -0800 +Subject: [PATCH 26/27] reset dl_load_write_lock after forking + +The patch in this Bugzilla entry was requested by a customer: + + https://www.sourceware.org/bugzilla/show_bug.cgi?id=19282 + +The __libc_fork() code reset dl_load_lock, but it also needed to reset +dl_load_write_lock. The patch has not yet been integrated upstream. + +Upstream-Status: Pending [ No Author See bugzilla] + +Signed-off-by: Damodar Sonone +Signed-off-by: Yuanjie Huang +Signed-off-by: Khem Raj +--- + sysdeps/nptl/fork.c | 4 ++-- + 1 file changed, 2 insertions(+), 2 deletions(-) + +diff --git a/sysdeps/nptl/fork.c b/sysdeps/nptl/fork.c +index 846fa49ef2..f87506f398 100644 +--- a/sysdeps/nptl/fork.c ++++ b/sysdeps/nptl/fork.c +@@ -194,9 +194,9 @@ __libc_fork (void) + _IO_list_resetlock (); + } + +- /* Reset the lock the dynamic loader uses to protect its data. */ ++ /* Reset the locks the dynamic loader uses to protect its data. */ + __rtld_lock_initialize (GL(dl_load_lock)); +- ++ __rtld_lock_initialize (GL(dl_load_write_lock)); + /* Run the handlers registered for the child. */ + while (allp != NULL) + { +-- +2.16.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/0027-Acquire-ld.so-lock-before-switching-to-malloc_atfork.patch new file mode 100644 index 0000000000..9ec234bd51 --- /dev/null +++ b/meta/recipes-core/glibc/glibc/0027-Acquire-ld.so-lock-before-switching-to-malloc_atfork.patch @@ -0,0 +1,70 @@ +From 94225ab4bcc1613531558a632270b5edce779bc9 Mon Sep 17 00:00:00 2001 +From: Khem Raj +Date: Sat, 27 Jan 2018 10:08:04 -0800 +Subject: [PATCH 27/27] Acquire ld.so lock before switching to malloc_atfork + +The patch is from + https://sourceware.org/bugzilla/show_bug.cgi?id=4578 + +If a thread happens to hold dl_load_lock and have r_state set to RT_ADD or +RT_DELETE at the time another thread calls fork(), then the child exit code +from fork (in nptl/sysdeps/unix/sysv/linux/fork.c in our case) re-initializes +dl_load_lock but does not restore r_state to RT_CONSISTENT. If the child +subsequently requires ld.so functionality before calling exec(), then the +assertion will fire. + +The patch acquires dl_load_lock on entry to fork() and releases it on exit +from the parent path. The child path is initialized as currently done. +This is essentially pthreads_atfork, but forced to be first because the +acquisition of dl_load_lock must happen before malloc_atfork is active +to avoid a deadlock. + +The patch has not yet been integrated upstream. + +Upstream-Status: Pending [ Not Author See bugzilla] + +Signed-off-by: Raghunath Lolur +Signed-off-by: Yuanjie Huang +Signed-off-by: Zhixiong Chi +Signed-off-by: Khem Raj +--- + sysdeps/nptl/fork.c | 9 +++++++++ + 1 file changed, 9 insertions(+) + +diff --git a/sysdeps/nptl/fork.c b/sysdeps/nptl/fork.c +index f87506f398..225e7b51f8 100644 +--- a/sysdeps/nptl/fork.c ++++ b/sysdeps/nptl/fork.c +@@ -25,6 +25,7 @@ + #include + #include + #include ++#include + #include + #include + #include +@@ -60,6 +61,10 @@ __libc_fork (void) + but our current fork implementation is not. */ + bool multiple_threads = THREAD_GETMEM (THREAD_SELF, header.multiple_threads); + ++ /* grab ld.so lock BEFORE switching to malloc_atfork */ ++ __rtld_lock_lock_recursive (GL(dl_load_lock)); ++ __rtld_lock_lock_recursive (GL(dl_load_write_lock)); ++ + /* Run all the registered preparation handlers. In reverse order. + While doing this we build up a list of all the entries. */ + struct fork_handler *runp; +@@ -246,6 +251,10 @@ __libc_fork (void) + + allp = allp->next; + } ++ ++ /* unlock ld.so last, because we locked it first */ ++ __rtld_lock_unlock_recursive (GL(dl_load_write_lock)); ++ __rtld_lock_unlock_recursive (GL(dl_load_lock)); + } + + return pid; +-- +2.16.1 + diff --git a/meta/recipes-core/glibc/glibc/0027-glibc-reset-dl-load-write-lock-after-forking.patch b/meta/recipes-core/glibc/glibc/0027-glibc-reset-dl-load-write-lock-after-forking.patch deleted file mode 100644 index 777b253405..0000000000 --- a/meta/recipes-core/glibc/glibc/0027-glibc-reset-dl-load-write-lock-after-forking.patch +++ /dev/null @@ -1,37 +0,0 @@ -From a6bb73d1cfd20a73fbbe6076008376fb87879d1b Mon Sep 17 00:00:00 2001 -From: Yuanjie Huang -Date: Thu, 18 Aug 2016 17:59:13 +0800 -Subject: [PATCH] reset dl_load_write_lock after forking - -The patch in this Bugzilla entry was requested by a customer: - - https://www.sourceware.org/bugzilla/show_bug.cgi?id=19282 - -The __libc_fork() code reset dl_load_lock, but it also needed to reset -dl_load_write_lock. The patch has not yet been integrated upstream. - -Upstream-Status: Pending [ Not Author See bugzilla] - -Signed-off-by: Damodar Sonone -Signed-off-by: Yuanjie Huang ---- - sysdeps/nptl/fork.c | 3 ++- - 1 file changed, 2 insertions(+), 1 deletion(-) - -diff --git a/sysdeps/nptl/fork.c b/sysdeps/nptl/fork.c -index 2b9ae4b..3d0b8da 100644 ---- a/sysdeps/nptl/fork.c -+++ b/sysdeps/nptl/fork.c -@@ -174,8 +174,9 @@ __libc_fork (void) - /* Reset locks in the I/O code. */ - _IO_list_resetlock (); - -- /* Reset the lock the dynamic loader uses to protect its data. */ -+ /* Reset the locks the dynamic loader uses to protect its data. */ - __rtld_lock_initialize (GL(dl_load_lock)); -+ __rtld_lock_initialize (GL(dl_load_write_lock)); - - /* Run the handlers registered for the child. */ - while (allp != NULL) --- -1.9.1 diff --git a/meta/recipes-core/glibc/glibc/0028-Bug-4578-add-ld.so-lock-while-fork.patch b/meta/recipes-core/glibc/glibc/0028-Bug-4578-add-ld.so-lock-while-fork.patch deleted file mode 100644 index f76237a46e..0000000000 --- a/meta/recipes-core/glibc/glibc/0028-Bug-4578-add-ld.so-lock-while-fork.patch +++ /dev/null @@ -1,57 +0,0 @@ -The patch in this Bugzilla entry was requested by a customer: - https://sourceware.org/bugzilla/show_bug.cgi?id=4578 - -If a thread happens to hold dl_load_lock and have r_state set to RT_ADD or -RT_DELETE at the time another thread calls fork(), then the child exit code -from fork (in nptl/sysdeps/unix/sysv/linux/fork.c in our case) re-initializes -dl_load_lock but does not restore r_state to RT_CONSISTENT. If the child -subsequently requires ld.so functionality before calling exec(), then the -assertion will fire. - -The patch acquires dl_load_lock on entry to fork() and releases it on exit -from the parent path. The child path is initialized as currently done. -This is essentially pthreads_atfork, but forced to be first because the -acquisition of dl_load_lock must happen before malloc_atfork is active -to avoid a deadlock. -The patch has not yet been integrated upstream. - -Upstream-Status: Pending [ Not Author See bugzilla] - -Signed-off-by: Raghunath Lolur -Signed-off-by: Yuanjie Huang -Signed-off-by: Zhixiong Chi - -Index: git/sysdeps/nptl/fork.c -=================================================================== ---- git.orig/sysdeps/nptl/fork.c 2017-08-03 16:02:15.674704080 +0800 -+++ git/sysdeps/nptl/fork.c 2017-08-04 18:15:02.463362015 +0800 -@@ -25,6 +25,7 @@ - #include - #include - #include -+#include - #include - #include - #include -@@ -60,6 +61,10 @@ - but our current fork implementation is not. */ - bool multiple_threads = THREAD_GETMEM (THREAD_SELF, header.multiple_threads); - -+ /* grab ld.so lock BEFORE switching to malloc_atfork */ -+ __rtld_lock_lock_recursive (GL(dl_load_lock)); -+ __rtld_lock_lock_recursive (GL(dl_load_write_lock)); -+ - /* Run all the registered preparation handlers. In reverse order. - While doing this we build up a list of all the entries. */ - struct fork_handler *runp; -@@ -247,6 +252,10 @@ - - allp = allp->next; - } -+ -+ /* unlock ld.so last, because we locked it first */ -+ __rtld_lock_unlock_recursive (GL(dl_load_write_lock)); -+ __rtld_lock_unlock_recursive (GL(dl_load_lock)); - } - - return pid; diff --git a/meta/recipes-core/glibc/glibc_2.26.bb b/meta/recipes-core/glibc/glibc_2.26.bb deleted file mode 100644 index 464b65434e..0000000000 --- a/meta/recipes-core/glibc/glibc_2.26.bb +++ /dev/null @@ -1,148 +0,0 @@ -require glibc.inc - -LIC_FILES_CHKSUM = "file://LICENSES;md5=e9a558e243b36d3209f380deb394b213 \ - file://COPYING;md5=b234ee4d69f5fce4486a80fdaf4a4263 \ - file://posix/rxspencer/COPYRIGHT;md5=dc5485bb394a13b2332ec1c785f5d83a \ - file://COPYING.LIB;md5=4fbd65380cdd255951079008b364516c" - -DEPENDS += "gperf-native bison-native" - -SRCREV ?= "d300041c533a3d837c9f37a099bcc95466860e98" - -SRCBRANCH ?= "release/${PV}/master" - -GLIBC_GIT_URI ?= "git://sourceware.org/git/glibc.git" -UPSTREAM_CHECK_GITTAGREGEX = "(?P\d+\.\d+(\.\d+)*)" - -SRC_URI = "${GLIBC_GIT_URI};branch=${SRCBRANCH};name=glibc \ - file://etc/ld.so.conf \ - file://generate-supported.mk \ - \ - ${NATIVESDKFIXES} \ - file://0005-fsl-e500-e5500-e6500-603e-fsqrt-implementation.patch \ - file://0006-readlib-Add-OECORE_KNOWN_INTERPRETER_NAMES-to-known-.patch \ - file://0007-ppc-sqrt-Fix-undefined-reference-to-__sqrt_finite.patch \ - file://0008-__ieee754_sqrt-f-are-now-inline-functions-and-call-o.patch \ - file://0009-Quote-from-bug-1443-which-explains-what-the-patch-do.patch \ - file://0010-eglibc-run-libm-err-tab.pl-with-specific-dirs-in-S.patch \ - file://0011-__ieee754_sqrt-f-are-now-inline-functions-and-call-o.patch \ - file://0012-sysdeps-gnu-configure.ac-handle-correctly-libc_cv_ro.patch \ - file://0013-Add-unused-attribute.patch \ - file://0014-yes-within-the-path-sets-wrong-config-variables.patch \ - file://0015-timezone-re-written-tzselect-as-posix-sh.patch \ - file://0016-Remove-bash-dependency-for-nscd-init-script.patch \ - file://0017-eglibc-Cross-building-and-testing-instructions.patch \ - file://0018-eglibc-Help-bootstrap-cross-toolchain.patch \ - file://0019-eglibc-Clear-cache-lines-on-ppc8xx.patch \ - file://0020-eglibc-Resolve-__fpscr_values-on-SH4.patch \ - file://0021-eglibc-Install-PIC-archives.patch \ - file://0022-eglibc-Forward-port-cross-locale-generation-support.patch \ - file://0023-Define-DUMMY_LOCALE_T-if-not-defined.patch \ - file://0024-elf-dl-deps.c-Make-_dl_build_local_scope-breadth-fir.patch \ - file://0025-locale-fix-hard-coded-reference-to-gcc-E.patch \ - file://0027-glibc-reset-dl-load-write-lock-after-forking.patch \ - file://0028-Bug-4578-add-ld.so-lock-while-fork.patch \ -" - -NATIVESDKFIXES ?= "" -NATIVESDKFIXES_class-nativesdk = "\ - file://0001-nativesdk-glibc-Look-for-host-system-ld.so.cache-as-.patch \ - file://0002-nativesdk-glibc-Fix-buffer-overrun-with-a-relocated-.patch \ - file://0003-nativesdk-glibc-Raise-the-size-of-arrays-containing-.patch \ - file://0004-nativesdk-glibc-Allow-64-bit-atomics-for-x86.patch \ -" - -S = "${WORKDIR}/git" -B = "${WORKDIR}/build-${TARGET_SYS}" - -PACKAGES_DYNAMIC = "" - -# the -isystem in bitbake.conf screws up glibc do_stage -BUILD_CPPFLAGS = "-I${STAGING_INCDIR_NATIVE}" -TARGET_CPPFLAGS = "-I${STAGING_DIR_TARGET}${includedir}" - -GLIBC_BROKEN_LOCALES = "" -# -# We will skip parsing glibc when target system C library selection is not glibc -# this helps in easing out parsing for non-glibc system libraries -# -COMPATIBLE_HOST_libc-musl_class-target = "null" - -EXTRA_OECONF = "--enable-kernel=${OLDEST_KERNEL} \ - --without-cvs --disable-profile \ - --disable-debug --without-gd \ - --enable-clocale=gnu \ - --enable-add-ons=libidn \ - --with-headers=${STAGING_INCDIR} \ - --without-selinux \ - --enable-obsolete-rpc \ - --enable-obsolete-nsl \ - --enable-tunables \ - --enable-bind-now \ - --enable-stack-protector=strong \ - --enable-stackguard-randomization \ - ${GLIBC_EXTRA_OECONF}" - -EXTRA_OECONF += "${@get_libc_fpu_setting(bb, d)}" -EXTRA_OECONF += "${@bb.utils.contains('DISTRO_FEATURES', 'libc-inet-anl', '--enable-nscd', '--disable-nscd', d)}" - - -do_patch_append() { - bb.build.exec_func('do_fix_readlib_c', d) -} - -do_fix_readlib_c () { - sed -i -e 's#OECORE_KNOWN_INTERPRETER_NAMES#${EGLIBC_KNOWN_INTERPRETER_NAMES}#' ${S}/elf/readlib.c -} - -do_configure () { -# override this function to avoid the autoconf/automake/aclocal/autoheader -# calls for now -# don't pass CPPFLAGS into configure, since it upsets the kernel-headers -# version check and doesn't really help with anything - (cd ${S} && gnu-configize) || die "failure in running gnu-configize" - find ${S} -name "configure" | xargs touch - # "plural.c" may or may not get regenerated from "plural.y" so we - # touch "plural.y" to make sure it does. (This should not be needed - # for glibc version 2.26+) - find ${S}/intl -name "plural.y" | xargs touch - CPPFLAGS="" oe_runconf -} - -rpcsvc = "bootparam_prot.x nlm_prot.x rstat.x \ - yppasswd.x klm_prot.x rex.x sm_inter.x mount.x \ - rusers.x spray.x nfs_prot.x rquota.x key_prot.x" - -do_compile () { - # -Wl,-rpath-link /lib in LDFLAGS can cause breakage if another glibc is in staging - unset LDFLAGS - base_do_compile - ( - cd ${S}/sunrpc/rpcsvc - for r in ${rpcsvc}; do - h=`echo $r|sed -e's,\.x$,.h,'` - rm -f $h - ${B}/sunrpc/cross-rpcgen -h $r -o $h || bbwarn "${PN}: unable to generate header for $r" - done - ) - echo "Adjust ldd script" - if [ -n "${RTLDLIST}" ] - then - prevrtld=`cat ${B}/elf/ldd | grep "^RTLDLIST=" | sed 's#^RTLDLIST="\?\([^"]*\)"\?$#\1#'` - if [ "${prevrtld}" != "${RTLDLIST}" ] - then - sed -i ${B}/elf/ldd -e "s#^RTLDLIST=.*\$#RTLDLIST=\"${prevrtld} ${RTLDLIST}\"#" - fi - fi - -} - -# Use the host locale archive when built for nativesdk so that we don't need to -# ship a complete (100MB) locale set. -do_compile_prepend_class-nativesdk() { - echo "complocaledir=/usr/lib/locale" >> ${S}/configparms -} - -require glibc-package.inc - -BBCLASSEXTEND = "nativesdk" diff --git a/meta/recipes-core/glibc/glibc_2.27.bb b/meta/recipes-core/glibc/glibc_2.27.bb new file mode 100644 index 0000000000..e9d4117a47 --- /dev/null +++ b/meta/recipes-core/glibc/glibc_2.27.bb @@ -0,0 +1,144 @@ +require glibc.inc + +LIC_FILES_CHKSUM = "file://LICENSES;md5=e9a558e243b36d3209f380deb394b213 \ + file://COPYING;md5=b234ee4d69f5fce4486a80fdaf4a4263 \ + file://posix/rxspencer/COPYRIGHT;md5=dc5485bb394a13b2332ec1c785f5d83a \ + file://COPYING.LIB;md5=4fbd65380cdd255951079008b364516c" + +DEPENDS += "gperf-native bison-native" + +SRCREV ?= "23158b08a0908f381459f273a984c6fd328363cb" + +SRCBRANCH ?= "release/${PV}/master" + +GLIBC_GIT_URI ?= "git://sourceware.org/git/glibc.git" +UPSTREAM_CHECK_GITTAGREGEX = "(?P\d+\.\d+(\.\d+)*)" + +SRC_URI = "${GLIBC_GIT_URI};branch=${SRCBRANCH};name=glibc \ + file://etc/ld.so.conf \ + file://generate-supported.mk \ + \ + ${NATIVESDKFIXES} \ + file://0005-fsl-e500-e5500-e6500-603e-fsqrt-implementation.patch \ + file://0006-readlib-Add-OECORE_KNOWN_INTERPRETER_NAMES-to-known-.patch \ + file://0007-ppc-sqrt-Fix-undefined-reference-to-__sqrt_finite.patch \ + file://0008-__ieee754_sqrt-f-are-now-inline-functions-and-call-o.patch \ + file://0009-Quote-from-bug-1443-which-explains-what-the-patch-do.patch \ + file://0010-eglibc-run-libm-err-tab.pl-with-specific-dirs-in-S.patch \ + file://0011-__ieee754_sqrt-f-are-now-inline-functions-and-call-o.patch \ + file://0012-sysdeps-gnu-configure.ac-handle-correctly-libc_cv_ro.patch \ + file://0013-Add-unused-attribute.patch \ + file://0014-yes-within-the-path-sets-wrong-config-variables.patch \ + file://0015-timezone-re-written-tzselect-as-posix-sh.patch \ + file://0016-Remove-bash-dependency-for-nscd-init-script.patch \ + file://0017-eglibc-Cross-building-and-testing-instructions.patch \ + file://0018-eglibc-Help-bootstrap-cross-toolchain.patch \ + file://0019-eglibc-Clear-cache-lines-on-ppc8xx.patch \ + file://0020-eglibc-Resolve-__fpscr_values-on-SH4.patch \ + file://0021-eglibc-Install-PIC-archives.patch \ + file://0022-eglibc-Forward-port-cross-locale-generation-support.patch \ + file://0023-Define-DUMMY_LOCALE_T-if-not-defined.patch \ + file://0024-elf-dl-deps.c-Make-_dl_build_local_scope-breadth-fir.patch \ + file://0025-locale-fix-hard-coded-reference-to-gcc-E.patch \ + file://0026-reset-dl_load_write_lock-after-forking.patch \ + file://0027-Acquire-ld.so-lock-before-switching-to-malloc_atfork.patch \ +" + +NATIVESDKFIXES ?= "" +NATIVESDKFIXES_class-nativesdk = "\ + file://0001-nativesdk-glibc-Look-for-host-system-ld.so.cache-as-.patch \ + file://0002-nativesdk-glibc-Fix-buffer-overrun-with-a-relocated-.patch \ + file://0003-nativesdk-glibc-Raise-the-size-of-arrays-containing-.patch \ + file://0004-nativesdk-glibc-Allow-64-bit-atomics-for-x86.patch \ +" + +S = "${WORKDIR}/git" +B = "${WORKDIR}/build-${TARGET_SYS}" + +PACKAGES_DYNAMIC = "" + +# the -isystem in bitbake.conf screws up glibc do_stage +BUILD_CPPFLAGS = "-I${STAGING_INCDIR_NATIVE}" +TARGET_CPPFLAGS = "-I${STAGING_DIR_TARGET}${includedir}" + +GLIBC_BROKEN_LOCALES = "" +# +# We will skip parsing glibc when target system C library selection is not glibc +# this helps in easing out parsing for non-glibc system libraries +# +COMPATIBLE_HOST_libc-musl_class-target = "null" + +EXTRA_OECONF = "--enable-kernel=${OLDEST_KERNEL} \ + --without-cvs --disable-profile \ + --disable-debug --without-gd \ + --enable-clocale=gnu \ + --enable-add-ons=libidn \ + --with-headers=${STAGING_INCDIR} \ + --without-selinux \ + --enable-obsolete-rpc \ + --enable-obsolete-nsl \ + --enable-tunables \ + --enable-bind-now \ + --enable-stack-protector=strong \ + --enable-stackguard-randomization \ + ${GLIBC_EXTRA_OECONF}" + +EXTRA_OECONF += "${@get_libc_fpu_setting(bb, d)}" +EXTRA_OECONF += "${@bb.utils.contains('DISTRO_FEATURES', 'libc-inet-anl', '--enable-nscd', '--disable-nscd', d)}" + + +do_patch_append() { + bb.build.exec_func('do_fix_readlib_c', d) +} + +do_fix_readlib_c () { + sed -i -e 's#OECORE_KNOWN_INTERPRETER_NAMES#${EGLIBC_KNOWN_INTERPRETER_NAMES}#' ${S}/elf/readlib.c +} + +do_configure () { +# override this function to avoid the autoconf/automake/aclocal/autoheader +# calls for now +# don't pass CPPFLAGS into configure, since it upsets the kernel-headers +# version check and doesn't really help with anything + (cd ${S} && gnu-configize) || die "failure in running gnu-configize" + find ${S} -name "configure" | xargs touch + CPPFLAGS="" oe_runconf +} + +rpcsvc = "bootparam_prot.x nlm_prot.x rstat.x \ + yppasswd.x klm_prot.x rex.x sm_inter.x mount.x \ + rusers.x spray.x nfs_prot.x rquota.x key_prot.x" + +do_compile () { + # -Wl,-rpath-link /lib in LDFLAGS can cause breakage if another glibc is in staging + unset LDFLAGS + base_do_compile + ( + cd ${S}/sunrpc/rpcsvc + for r in ${rpcsvc}; do + h=`echo $r|sed -e's,\.x$,.h,'` + rm -f $h + ${B}/sunrpc/cross-rpcgen -h $r -o $h || bbwarn "${PN}: unable to generate header for $r" + done + ) + echo "Adjust ldd script" + if [ -n "${RTLDLIST}" ] + then + prevrtld=`cat ${B}/elf/ldd | grep "^RTLDLIST=" | sed 's#^RTLDLIST="\?\([^"]*\)"\?$#\1#'` + if [ "${prevrtld}" != "${RTLDLIST}" ] + then + sed -i ${B}/elf/ldd -e "s#^RTLDLIST=.*\$#RTLDLIST=\"${prevrtld} ${RTLDLIST}\"#" + fi + fi + +} + +# Use the host locale archive when built for nativesdk so that we don't need to +# ship a complete (100MB) locale set. +do_compile_prepend_class-nativesdk() { + echo "complocaledir=/usr/lib/locale" >> ${S}/configparms +} + +require glibc-package.inc + +BBCLASSEXTEND = "nativesdk" -- cgit 1.2.3-korg