summaryrefslogtreecommitdiffstats
path: root/poky/meta/recipes-core/glibc
diff options
context:
space:
mode:
authorBrad Bishop <bradleyb@fuzziesquirrel.com>2018-12-16 17:11:34 -0800
committerBrad Bishop <bradleyb@fuzziesquirrel.com>2019-01-08 18:21:44 -0500
commit1a4b7ee28bf7413af6513fb45ad0d0736048f866 (patch)
tree79f6d8ea698cab8f2eaf4f54b793d2ca7a1451ce /poky/meta/recipes-core/glibc
parent5b9ede0403237c7dace972affa65cf64a1aadd0e (diff)
downloadtalos-openbmc-1a4b7ee28bf7413af6513fb45ad0d0736048f866.tar.gz
talos-openbmc-1a4b7ee28bf7413af6513fb45ad0d0736048f866.zip
reset upstream subtrees to yocto 2.6
Reset the following subtrees on thud HEAD: poky: 87e3a9739d meta-openembedded: 6094ae18c8 meta-security: 31dc4e7532 meta-raspberrypi: a48743dc36 meta-xilinx: c42016e2e6 Also re-apply backports that didn't make it into thud: poky: 17726d0 systemd-systemctl-native: handle Install wildcards meta-openembedded: 4321a5d libtinyxml2: update to 7.0.1 042f0a3 libcereal: Add native and nativesdk classes e23284f libcereal: Allow empty package 030e8d4 rsyslog: curl-less build with fmhttp PACKAGECONFIG 179a1b9 gtest: update to 1.8.1 Squashed OpenBMC subtree compatibility updates: meta-aspeed: Brad Bishop (1): aspeed: add yocto 2.6 compatibility meta-ibm: Brad Bishop (1): ibm: prepare for yocto 2.6 meta-ingrasys: Brad Bishop (1): ingrasys: set layer compatibility to yocto 2.6 meta-openpower: Brad Bishop (1): openpower: set layer compatibility to yocto 2.6 meta-phosphor: Brad Bishop (3): phosphor: set layer compatibility to thud phosphor: libgpg-error: drop patches phosphor: react to fitimage artifact rename Ed Tanous (4): Dropbear: upgrade options for latest upgrade yocto2.6: update openssl options busybox: remove upstream watchdog patch systemd: Rebase CONFIG_CGROUP_BPF patch Change-Id: I7b1fe71cca880d0372a82d94b5fd785323e3a9e7 Signed-off-by: Brad Bishop <bradleyb@fuzziesquirrel.com>
Diffstat (limited to 'poky/meta/recipes-core/glibc')
-rw-r--r--poky/meta/recipes-core/glibc/cross-localedef-native_2.28.bb (renamed from poky/meta/recipes-core/glibc/cross-localedef-native_2.27.bb)21
-rw-r--r--poky/meta/recipes-core/glibc/glibc-collateral.inc1
-rw-r--r--poky/meta/recipes-core/glibc/glibc-initial.inc6
-rw-r--r--poky/meta/recipes-core/glibc/glibc-initial_2.28.bb (renamed from poky/meta/recipes-core/glibc/glibc-initial_2.27.bb)0
-rw-r--r--poky/meta/recipes-core/glibc/glibc-ld.inc42
-rw-r--r--poky/meta/recipes-core/glibc/glibc-locale.inc4
-rw-r--r--poky/meta/recipes-core/glibc/glibc-locale_2.28.bb (renamed from poky/meta/recipes-core/glibc/glibc-locale_2.27.bb)0
-rw-r--r--poky/meta/recipes-core/glibc/glibc-mtrace_2.28.bb (renamed from poky/meta/recipes-core/glibc/glibc-mtrace_2.27.bb)0
-rw-r--r--poky/meta/recipes-core/glibc/glibc-package.inc20
-rw-r--r--poky/meta/recipes-core/glibc/glibc-scripts_2.28.bb (renamed from poky/meta/recipes-core/glibc/glibc-scripts_2.27.bb)0
-rw-r--r--poky/meta/recipes-core/glibc/glibc.inc12
-rw-r--r--poky/meta/recipes-core/glibc/glibc/0001-nativesdk-glibc-Look-for-host-system-ld.so.cache-as-.patch14
-rw-r--r--poky/meta/recipes-core/glibc/glibc/0002-nativesdk-glibc-Fix-buffer-overrun-with-a-relocated-.patch12
-rw-r--r--poky/meta/recipes-core/glibc/glibc/0003-nativesdk-glibc-Raise-the-size-of-arrays-containing-.patch20
-rw-r--r--poky/meta/recipes-core/glibc/glibc/0004-nativesdk-glibc-Allow-64-bit-atomics-for-x86.patch7
-rw-r--r--poky/meta/recipes-core/glibc/glibc/0005-nativesdk-glibc-Make-relocatable-install-for-locales.patch (renamed from poky/meta/recipes-core/glibc/glibc/relocate-locales.patch)42
-rw-r--r--poky/meta/recipes-core/glibc/glibc/0006-fsl-e500-e5500-e6500-603e-fsqrt-implementation.patch (renamed from poky/meta/recipes-core/glibc/glibc/0005-fsl-e500-e5500-e6500-603e-fsqrt-implementation.patch)45
-rw-r--r--poky/meta/recipes-core/glibc/glibc/0007-readlib-Add-OECORE_KNOWN_INTERPRETER_NAMES-to-known-.patch (renamed from poky/meta/recipes-core/glibc/glibc/0006-readlib-Add-OECORE_KNOWN_INTERPRETER_NAMES-to-known-.patch)8
-rw-r--r--poky/meta/recipes-core/glibc/glibc/0008-ppc-sqrt-Fix-undefined-reference-to-__sqrt_finite.patch (renamed from poky/meta/recipes-core/glibc/glibc/0007-ppc-sqrt-Fix-undefined-reference-to-__sqrt_finite.patch)7
-rw-r--r--poky/meta/recipes-core/glibc/glibc/0009-__ieee754_sqrt-f-are-now-inline-functions-and-call-o.patch (renamed from poky/meta/recipes-core/glibc/glibc/0008-__ieee754_sqrt-f-are-now-inline-functions-and-call-o.patch)9
-rw-r--r--poky/meta/recipes-core/glibc/glibc/0010-Quote-from-bug-1443-which-explains-what-the-patch-do.patch (renamed from poky/meta/recipes-core/glibc/glibc/0009-Quote-from-bug-1443-which-explains-what-the-patch-do.patch)10
-rw-r--r--poky/meta/recipes-core/glibc/glibc/0011-eglibc-run-libm-err-tab.pl-with-specific-dirs-in-S.patch (renamed from poky/meta/recipes-core/glibc/glibc/0010-eglibc-run-libm-err-tab.pl-with-specific-dirs-in-S.patch)7
-rw-r--r--poky/meta/recipes-core/glibc/glibc/0012-__ieee754_sqrt-f-are-now-inline-functions-and-call-o.patch (renamed from poky/meta/recipes-core/glibc/glibc/0011-__ieee754_sqrt-f-are-now-inline-functions-and-call-o.patch)9
-rw-r--r--poky/meta/recipes-core/glibc/glibc/0013-sysdeps-gnu-configure.ac-handle-correctly-libc_cv_ro.patch (renamed from poky/meta/recipes-core/glibc/glibc/0012-sysdeps-gnu-configure.ac-handle-correctly-libc_cv_ro.patch)7
-rw-r--r--poky/meta/recipes-core/glibc/glibc/0014-Add-unused-attribute.patch (renamed from poky/meta/recipes-core/glibc/glibc/0013-Add-unused-attribute.patch)7
-rw-r--r--poky/meta/recipes-core/glibc/glibc/0015-yes-within-the-path-sets-wrong-config-variables.patch (renamed from poky/meta/recipes-core/glibc/glibc/0014-yes-within-the-path-sets-wrong-config-variables.patch)7
-rw-r--r--poky/meta/recipes-core/glibc/glibc/0016-timezone-re-written-tzselect-as-posix-sh.patch (renamed from poky/meta/recipes-core/glibc/glibc/0015-timezone-re-written-tzselect-as-posix-sh.patch)7
-rw-r--r--poky/meta/recipes-core/glibc/glibc/0017-Remove-bash-dependency-for-nscd-init-script.patch (renamed from poky/meta/recipes-core/glibc/glibc/0016-Remove-bash-dependency-for-nscd-init-script.patch)7
-rw-r--r--poky/meta/recipes-core/glibc/glibc/0018-eglibc-Cross-building-and-testing-instructions.patch (renamed from poky/meta/recipes-core/glibc/glibc/0017-eglibc-Cross-building-and-testing-instructions.patch)11
-rw-r--r--poky/meta/recipes-core/glibc/glibc/0019-eglibc-Help-bootstrap-cross-toolchain.patch (renamed from poky/meta/recipes-core/glibc/glibc/0018-eglibc-Help-bootstrap-cross-toolchain.patch)13
-rw-r--r--poky/meta/recipes-core/glibc/glibc/0020-eglibc-Clear-cache-lines-on-ppc8xx.patch (renamed from poky/meta/recipes-core/glibc/glibc/0019-eglibc-Clear-cache-lines-on-ppc8xx.patch)7
-rw-r--r--poky/meta/recipes-core/glibc/glibc/0021-eglibc-Install-PIC-archives.patch123
-rw-r--r--poky/meta/recipes-core/glibc/glibc/0021-eglibc-Resolve-__fpscr_values-on-SH4.patch (renamed from poky/meta/recipes-core/glibc/glibc/0020-eglibc-Resolve-__fpscr_values-on-SH4.patch)7
-rw-r--r--poky/meta/recipes-core/glibc/glibc/0022-eglibc-Forward-port-cross-locale-generation-support.patch29
-rw-r--r--poky/meta/recipes-core/glibc/glibc/0023-Define-DUMMY_LOCALE_T-if-not-defined.patch7
-rw-r--r--poky/meta/recipes-core/glibc/glibc/0024-elf-dl-deps.c-Make-_dl_build_local_scope-breadth-fir.patch11
-rw-r--r--poky/meta/recipes-core/glibc/glibc/0025-locale-fix-hard-coded-reference-to-gcc-E.patch7
-rw-r--r--poky/meta/recipes-core/glibc/glibc/0026-reset-dl_load_write_lock-after-forking.patch15
-rw-r--r--poky/meta/recipes-core/glibc/glibc/0027-Acquire-ld.so-lock-before-switching-to-malloc_atfork.patch31
-rw-r--r--poky/meta/recipes-core/glibc/glibc/0028-bits-siginfo-consts.h-enum-definition-for-TRAP_HWBKP.patch15
-rw-r--r--poky/meta/recipes-core/glibc/glibc/0029-Replace-strncpy-with-memccpy-to-fix-Wstringop-trunca.patch40
-rw-r--r--poky/meta/recipes-core/glibc/glibc/0029-localedef-add-to-archive-uses-a-hard-coded-locale-pa.patch89
-rw-r--r--poky/meta/recipes-core/glibc/glibc/0030-intl-Emit-no-lines-in-bison-generated-files.patch (renamed from poky/meta/recipes-core/glibc/glibc/0030-plural_c_no_preprocessor_lines.patch)14
-rw-r--r--poky/meta/recipes-core/glibc/glibc/0031-nativesdk-deprecate-libcrypt.patch419
-rw-r--r--poky/meta/recipes-core/glibc/glibc/0031-sysdeps-ieee754-prevent-maybe-uninitialized-errors-w.patch258
-rw-r--r--poky/meta/recipes-core/glibc/glibc/0032-sysdeps-ieee754-soft-fp-ignore-maybe-uninitialized-w.patch100
-rw-r--r--poky/meta/recipes-core/glibc/glibc/0033-locale-prevent-maybe-uninitialized-errors-with-Os-BZ.patch68
-rw-r--r--poky/meta/recipes-core/glibc/glibc/0034-inject-file-assembly-directives.patch272
-rw-r--r--poky/meta/recipes-core/glibc/glibc/CVE-2017-18269.patch178
-rw-r--r--poky/meta/recipes-core/glibc/glibc/CVE-2018-11236.patch164
-rw-r--r--poky/meta/recipes-core/glibc/glibc/CVE-2018-11237.patch82
-rw-r--r--poky/meta/recipes-core/glibc/glibc/archive-path.patch39
-rw-r--r--poky/meta/recipes-core/glibc/glibc/etc/ld.so.conf1
-rwxr-xr-xpoky/meta/recipes-core/glibc/glibc/makedbs.sh177
-rw-r--r--poky/meta/recipes-core/glibc/glibc_2.28.bb (renamed from poky/meta/recipes-core/glibc/glibc_2.27.bb)72
55 files changed, 1193 insertions, 1387 deletions
diff --git a/poky/meta/recipes-core/glibc/cross-localedef-native_2.27.bb b/poky/meta/recipes-core/glibc/cross-localedef-native_2.28.bb
index 5e92eb71d..a05b94e3b 100644
--- a/poky/meta/recipes-core/glibc/cross-localedef-native_2.27.bb
+++ b/poky/meta/recipes-core/glibc/cross-localedef-native_2.28.bb
@@ -3,7 +3,7 @@ HOMEPAGE = "http://www.gnu.org/software/libc/libc.html"
SECTION = "libs"
LICENSE = "LGPL-2.1"
-LIC_FILES_CHKSUM = "file://LICENSES;md5=e9a558e243b36d3209f380deb394b213 \
+LIC_FILES_CHKSUM = "file://LICENSES;md5=cfc0ed77a9f62fa62eded042ebe31d72 \
file://COPYING;md5=b234ee4d69f5fce4486a80fdaf4a4263 \
file://posix/rxspencer/COPYRIGHT;md5=dc5485bb394a13b2332ec1c785f5d83a \
file://COPYING.LIB;md5=4fbd65380cdd255951079008b364516c"
@@ -21,21 +21,20 @@ SRCBRANCH ?= "release/${PV}/master"
GLIBC_GIT_URI ?= "git://sourceware.org/git/glibc.git"
UPSTREAM_CHECK_GITTAGREGEX = "(?P<pver>\d+\.\d+(\.(?!90)\d+)*)"
-SRCREV_glibc ?= "df3ff4e49d4ee3cbbdaeb0b1cb5dc2344c08be98"
-SRCREV_localedef ?= "de5bdbd5e76b5403a4151b9b9f958b6cca36b3e7"
+SRCREV_glibc ?= "3c03baca37fdcb52c3881e653ca392bba7a99c2b"
+SRCREV_localedef ?= "c328777219ccc480be3112cf807217ca6b570b64"
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://0016-timezone-re-written-tzselect-as-posix-sh.patch \
+ file://0017-Remove-bash-dependency-for-nscd-init-script.patch \
+ file://0018-eglibc-Cross-building-and-testing-instructions.patch \
+ file://0019-eglibc-Help-bootstrap-cross-toolchain.patch \
+ file://0020-eglibc-Clear-cache-lines-on-ppc8xx.patch \
+ file://0021-eglibc-Resolve-__fpscr_values-on-SH4.patch \
file://0022-eglibc-Forward-port-cross-locale-generation-support.patch \
file://0023-Define-DUMMY_LOCALE_T-if-not-defined.patch \
- file://archive-path.patch \
+ file://0029-localedef-add-to-archive-uses-a-hard-coded-locale-pa.patch \
"
# Makes for a rather long rev (22 characters), but...
#
diff --git a/poky/meta/recipes-core/glibc/glibc-collateral.inc b/poky/meta/recipes-core/glibc/glibc-collateral.inc
index aa871ac83..536edfb04 100644
--- a/poky/meta/recipes-core/glibc/glibc-collateral.inc
+++ b/poky/meta/recipes-core/glibc/glibc-collateral.inc
@@ -9,6 +9,7 @@ HOMEPAGE = "http://www.gnu.org/software/libc/index.html"
# http://lists.openembedded.org/pipermail/openembedded-core/2015-January/100679.html
ARM_INSTRUCTION_SET_armv4 = "arm"
ARM_INSTRUCTION_SET_armv5 = "arm"
+ARM_INSTRUCTION_SET_armv6 = "arm"
deltask do_fetch
deltask do_unpack
diff --git a/poky/meta/recipes-core/glibc/glibc-initial.inc b/poky/meta/recipes-core/glibc/glibc-initial.inc
index b86e2fb2d..acd0d6b1d 100644
--- a/poky/meta/recipes-core/glibc/glibc-initial.inc
+++ b/poky/meta/recipes-core/glibc/glibc-initial.inc
@@ -1,4 +1,4 @@
-DEPENDS = "linux-libc-headers virtual/${TARGET_PREFIX}gcc-initial libgcc-initial"
+DEPENDS = "linux-libc-headers virtual/${TARGET_PREFIX}gcc-initial libgcc-initial make-native bison-native"
PROVIDES = "virtual/${TARGET_PREFIX}libc-initial"
PACKAGES = ""
@@ -13,9 +13,9 @@ do_configure () {
cfgscript=`python3 -c "import os; print(os.path.relpath('${S}', '.'))"`/configure
$cfgscript --host=${TARGET_SYS} --build=${BUILD_SYS} \
--prefix=/usr \
- --without-cvs --disable-sanity-checks \
+ --disable-sanity-checks \
--with-headers=${STAGING_DIR_TARGET}${includedir} \
- --enable-hacker-mode --enable-addons
+ --enable-hacker-mode
}
do_compile () {
diff --git a/poky/meta/recipes-core/glibc/glibc-initial_2.27.bb b/poky/meta/recipes-core/glibc/glibc-initial_2.28.bb
index e86770e12..e86770e12 100644
--- a/poky/meta/recipes-core/glibc/glibc-initial_2.27.bb
+++ b/poky/meta/recipes-core/glibc/glibc-initial_2.28.bb
diff --git a/poky/meta/recipes-core/glibc/glibc-ld.inc b/poky/meta/recipes-core/glibc/glibc-ld.inc
index c1d635dc8..bb167b32b 100644
--- a/poky/meta/recipes-core/glibc/glibc-ld.inc
+++ b/poky/meta/recipes-core/glibc/glibc-ld.inc
@@ -1,43 +1,15 @@
-def ld_append_if_tune_exists(d, infos, dict):
- tune = d.getVar("DEFAULTTUNE") or ""
- libdir = d.getVar("base_libdir") or ""
- if tune in dict:
- infos['ldconfig'].add('{"' + libdir + '/' + dict[tune][0] + '",' + dict[tune][1] + ' }')
- infos['lddrewrite'].add(libdir+'/'+dict[tune][0])
+inherit linuxloader
-def glibc_dl_info(d):
- ld_info_all = {
- "mipsarch": ["ld.so.1", "FLAG_ELF_LIBC6"],
- "mipsarchr6": ["ld-linux-mipsn8.so.1", "FLAG_ELF_LIBC6"],
- "powerpc": ["ld.so.1", "FLAG_ELF_LIBC6"],
- "powerpc-nf": ["ld.so.1", "FLAG_ELF_LIBC6"],
- "powerpc64": ["ld64.so.1", "FLAG_ELF_LIBC6"],
- "powerpc64-nf": ["ld64.so.1", "FLAG_ELF_LIBC6"],
- "core2-32": ["ld-linux.so.2", "FLAG_ELF_LIBC6"],
- "core2-64": ["ld-linux-x86-64.so.2", "FLAG_ELF_LIBC6"],
- "x86": ["ld-linux.so.2", "FLAG_ELF_LIBC6"],
- "x86-64": ["ld-linux-x86-64.so.2", "FLAG_ELF_LIBC6"],
- "i586": ["ld-linux.so.2", "FLAG_ELF_LIBC6"],
- "corei7-32": ["ld-linux.so.2", "FLAG_ELF_LIBC6"],
- "corei7-64": ["ld-linux-x86-64.so.2", "FLAG_ELF_LIBC6"],
- }
+GLIBC_GETLOADER = "${@get_linuxloader(d)}"
+def glibc_dl_info(d):
infos = {'ldconfig':set(), 'lddrewrite':set()}
- ld_append_if_tune_exists(d, infos, ld_info_all)
- #DEFAULTTUNE_MULTILIB_ORIGINAL
- original_tune=d.getVar("DEFAULTTUNE_MULTILIB_ORIGINAL")
- if original_tune:
- localdata = bb.data.createCopy(d)
- localdata.setVar("DEFAULTTUNE", original_tune)
- ld_append_if_tune_exists(localdata, infos, ld_info_all)
+ loaders = all_multilib_tune_values(d, "GLIBC_GETLOADER").split()
+ for loader in loaders:
+ infos['ldconfig'].add('{"' + loader + '",' + "FLAG_ELF_LIBC6" + ' }')
+ infos['lddrewrite'].add(loader)
- variants = d.getVar("MULTILIB_VARIANTS") or ""
- for item in variants.split():
- localdata = bb.data.createCopy(d)
- overrides = localdata.getVar("OVERRIDES", False) + ":virtclass-multilib-" + item
- localdata.setVar("OVERRIDES", overrides)
- ld_append_if_tune_exists(localdata, infos, ld_info_all)
infos['ldconfig'] = ','.join(infos['ldconfig'])
infos['lddrewrite'] = ' '.join(infos['lddrewrite'])
return infos
diff --git a/poky/meta/recipes-core/glibc/glibc-locale.inc b/poky/meta/recipes-core/glibc/glibc-locale.inc
index e50e5cf5e..1b676dc26 100644
--- a/poky/meta/recipes-core/glibc/glibc-locale.inc
+++ b/poky/meta/recipes-core/glibc/glibc-locale.inc
@@ -21,13 +21,13 @@ RDEPENDS_localedef += "glibc"
# to decrease initial boot time and avoid localedef being killed by the OOM
# killer which used to effectively break i18n on machines with < 128MB RAM.
-# default to disabled
+# default to disabled
ENABLE_BINARY_LOCALE_GENERATION ?= "0"
ENABLE_BINARY_LOCALE_GENERATION_pn-nativesdk-glibc-locale = "1"
#enable locale generation on these arches
# BINARY_LOCALE_ARCHES is a space separated list of regular expressions
-BINARY_LOCALE_ARCHES ?= "arm.* aarch64 i[3-6]86 x86_64 powerpc mips mips64"
+BINARY_LOCALE_ARCHES ?= "arm.* aarch64 i[3-6]86 x86_64 powerpc mips mips64 riscv32 riscv64"
# set "1" to use cross-localedef for locale generation
# set "0" for qemu emulation of native localedef for locale generation
diff --git a/poky/meta/recipes-core/glibc/glibc-locale_2.27.bb b/poky/meta/recipes-core/glibc/glibc-locale_2.28.bb
index f7702e035..f7702e035 100644
--- a/poky/meta/recipes-core/glibc/glibc-locale_2.27.bb
+++ b/poky/meta/recipes-core/glibc/glibc-locale_2.28.bb
diff --git a/poky/meta/recipes-core/glibc/glibc-mtrace_2.27.bb b/poky/meta/recipes-core/glibc/glibc-mtrace_2.28.bb
index 0b69bad46..0b69bad46 100644
--- a/poky/meta/recipes-core/glibc/glibc-mtrace_2.27.bb
+++ b/poky/meta/recipes-core/glibc/glibc-mtrace_2.28.bb
diff --git a/poky/meta/recipes-core/glibc/glibc-package.inc b/poky/meta/recipes-core/glibc/glibc-package.inc
index c1d186ab9..a98ae1a29 100644
--- a/poky/meta/recipes-core/glibc/glibc-package.inc
+++ b/poky/meta/recipes-core/glibc/glibc-package.inc
@@ -1,6 +1,6 @@
INHIBIT_SYSROOT_STRIP = "1"
-PACKAGES = "${PN}-dbg catchsegv sln nscd ldd tzcode glibc-thread-db ${PN}-pic libcidn libmemusage libsegfault ${PN}-pcprofile libsotruss ${PN} ${PN}-utils glibc-extra-nss ${PN}-dev ${PN}-staticdev ${PN}-doc"
+PACKAGES = "${PN}-dbg catchsegv sln nscd ldd tzcode glibc-thread-db ${PN}-pic libcidn libmemusage libnss-db libsegfault ${PN}-pcprofile libsotruss ${PN} ${PN}-utils glibc-extra-nss ${PN}-dev ${PN}-staticdev ${PN}-doc"
# The ld.so in this glibc supports the GNU_HASH
RPROVIDES_${PN} = "eglibc rtld(GNU_HASH)"
@@ -14,7 +14,7 @@ RPROVIDES_glibc-extra-nss = "eglibc-extra-nss"
RPROVIDES_glibc-thread-db = "eglibc-thread-db"
RPROVIDES_${PN}-pcprofile = "eglibc-pcprofile"
RPROVIDES_${PN}-dbg = "eglibc-dbg"
-libc_baselibs = "${base_libdir}/libcrypt*.so.* ${base_libdir}/libcrypt-*.so ${base_libdir}/libc.so.* ${base_libdir}/libc-*.so ${base_libdir}/libm*.so.* ${base_libdir}/libm-*.so ${base_libdir}/libmvec-*.so ${base_libdir}/ld*.so.* ${base_libdir}/ld-*.so ${base_libdir}/libpthread*.so.* ${base_libdir}/libpthread-*.so ${base_libdir}/libresolv*.so.* ${base_libdir}/libresolv-*.so ${base_libdir}/librt*.so.* ${base_libdir}/librt-*.so ${base_libdir}/libutil*.so.* ${base_libdir}/libutil-*.so ${base_libdir}/libnsl*.so.* ${base_libdir}/libnsl-*.so ${base_libdir}/libnss_files*.so.* ${base_libdir}/libnss_files-*.so ${base_libdir}/libnss_compat*.so.* ${base_libdir}/libnss_compat-*.so ${base_libdir}/libnss_dns*.so.* ${base_libdir}/libnss_dns-*.so ${base_libdir}/libdl*.so.* ${base_libdir}/libdl-*.so ${base_libdir}/libanl*.so.* ${base_libdir}/libanl-*.so ${base_libdir}/libBrokenLocale*.so.* ${base_libdir}/libBrokenLocale-*.so"
+libc_baselibs = "${base_libdir}/libc.so.* ${base_libdir}/libc-*.so ${base_libdir}/libm*.so.* ${base_libdir}/libm-*.so ${base_libdir}/libmvec-*.so ${base_libdir}/ld*.so.* ${base_libdir}/ld-*.so ${base_libdir}/libpthread*.so.* ${base_libdir}/libpthread-*.so ${base_libdir}/libresolv*.so.* ${base_libdir}/libresolv-*.so ${base_libdir}/librt*.so.* ${base_libdir}/librt-*.so ${base_libdir}/libutil*.so.* ${base_libdir}/libutil-*.so ${base_libdir}/libnsl*.so.* ${base_libdir}/libnsl-*.so ${base_libdir}/libnss_files*.so.* ${base_libdir}/libnss_files-*.so ${base_libdir}/libnss_compat*.so.* ${base_libdir}/libnss_compat-*.so ${base_libdir}/libnss_dns*.so.* ${base_libdir}/libnss_dns-*.so ${base_libdir}/libdl*.so.* ${base_libdir}/libdl-*.so ${base_libdir}/libanl*.so.* ${base_libdir}/libanl-*.so ${base_libdir}/libBrokenLocale*.so.* ${base_libdir}/libBrokenLocale-*.so"
libc_baselibs_append_aarch64 = " /lib/ld-linux-aarch64*.so.1"
INSANE_SKIP_${PN}_append_aarch64 = " libdir"
@@ -23,12 +23,14 @@ FILES_ldd = "${bindir}/ldd"
FILES_libsegfault = "${base_libdir}/libSegFault*"
FILES_libcidn = "${base_libdir}/libcidn-*.so ${base_libdir}/libcidn.so.*"
FILES_libmemusage = "${base_libdir}/libmemusage.so"
+FILES_libnss-db = "${base_libdir}/libnss_db.so.* ${base_libdir}/libnss_db-*.so ${localstatedir}/db/Makefile ${localstatedir}/db/makedbs.sh"
+RDEPENDS_libnss-db = "${PN}-utils"
FILES_glibc-extra-nss = "${base_libdir}/libnss_*-*.so ${base_libdir}/libnss_*.so.*"
FILES_sln = "${base_sbindir}/sln"
FILES_${PN}-pic = "${libdir}/*_pic.a ${libdir}/*_pic.map ${libdir}/libc_pic/*.o"
FILES_libsotruss = "${libdir}/audit/sotruss-lib.so"
FILES_SOLIBSDEV = "${libdir}/lib*${SOLIBSDEV}"
-FILES_${PN}-dev += "${bindir}/rpcgen ${libdir}/*_nonshared.a ${base_libdir}/*_nonshared.a ${base_libdir}/*.o ${datadir}/aclocal"
+FILES_${PN}-dev += "${libdir}/*_nonshared.a ${base_libdir}/*_nonshared.a ${base_libdir}/*.o ${datadir}/aclocal"
FILES_${PN}-staticdev += "${libdir}/*.a ${base_libdir}/*.a"
FILES_nscd = "${sbindir}/nscd* ${sysconfdir}/init.d/nscd ${systemd_unitdir}/system/nscd* ${sysconfdir}/tmpfiles.d/nscd.conf \
${sysconfdir}/nscd.conf ${sysconfdir}/default/volatiles/98_nscd ${localstatedir}/db/nscd"
@@ -51,7 +53,7 @@ DESCRIPTION_glibc-extra-nss = "glibc: nis, nisplus and hesiod search services."
SUMMARY_ldd = "print shared library dependencies"
DESCRIPTION_ldd = "${bindir}/ldd prints shared library dependencies for each program or shared library specified on the command line."
SUMMARY_${PN}-utils = "Miscellaneous utilities provided by glibc"
-DESCRIPTION_${PN}-utils = "Miscellaneous utilities including getconf, iconv, locale, gencat, rpcgen, ..."
+DESCRIPTION_${PN}-utils = "Miscellaneous utilities including getconf, iconv, locale, gencat, ..."
DESCRIPTION_libsotruss = "Library to support sotruss which traces calls through PLTs"
DESCRIPTION_tzcode = "tzcode, timezone zoneinfo utils -- zic, zdump, tzselect"
@@ -59,7 +61,6 @@ inherit libc-common multilib_header
do_install_append () {
rm -f ${D}${sysconfdir}/localtime
- rm -rf ${D}${localstatedir}
# remove empty glibc dir
if [ -d ${D}${libexecdir} ]; then
@@ -71,7 +72,6 @@ do_install_append () {
if [ -f ${D}${bindir}/mtrace ]; then
sed -i -e '1s,#!.*perl,#! ${USRBINPATH}/env perl,' -e '2s,exec.*perl,exec ${USRBINPATH}/env perl,' ${D}${bindir}/mtrace
fi
- rm -rf ${D}${includedir}/rpcsvc/rquota*
# Info dir listing isn't interesting at this point so remove it if it exists.
if [ -e "${D}${infodir}/dir" ]; then
rm -f ${D}${infodir}/dir
@@ -96,6 +96,7 @@ do_install_append () {
install -d ${D}${localstatedir}/db/nscd
install -m 0755 ${S}/nscd/nscd.init ${D}${sysconfdir}/init.d/nscd
install -m 0755 ${S}/nscd/nscd.conf ${D}${sysconfdir}/nscd.conf
+ install -m 0755 ${WORKDIR}/makedbs.sh ${D}${localstatedir}/db
sed -i "s%daemon%start-stop-daemon --start --exec%g" ${D}${sysconfdir}/init.d/nscd
sed -i "s|\(enable-cache\t\+netgroup\t\+\)yes|\1no|" ${D}${sysconfdir}/nscd.conf
@@ -206,10 +207,11 @@ do_poststash_install_cleanup () {
rm -rf ${D}/${localedir}
rm -rf ${D}${datadir}/locale
if [ "${libdir}" != "${exec_prefix}/lib" ]; then
- if [ -d ${D}${exec_prefix}/lib/locale ] ; then
- rm -rf ${D}${exec_prefix}/lib/locale
+ if [ -d ${D}${exec_prefix}/lib ]; then
# error out if directory isn't empty
- rm -f ${D}${exec_prefix}/lib
+ # this dir should only contain locale dir
+ # which has been deleted in the previous step
+ rmdir ${D}${exec_prefix}/lib
fi
fi
}
diff --git a/poky/meta/recipes-core/glibc/glibc-scripts_2.27.bb b/poky/meta/recipes-core/glibc/glibc-scripts_2.28.bb
index 5a89bd802..5a89bd802 100644
--- a/poky/meta/recipes-core/glibc/glibc-scripts_2.27.bb
+++ b/poky/meta/recipes-core/glibc/glibc-scripts_2.28.bb
diff --git a/poky/meta/recipes-core/glibc/glibc.inc b/poky/meta/recipes-core/glibc/glibc.inc
index ce1222be6..99c92ce46 100644
--- a/poky/meta/recipes-core/glibc/glibc.inc
+++ b/poky/meta/recipes-core/glibc/glibc.inc
@@ -13,9 +13,6 @@ python () {
opt_effective = opt
if opt_effective == "-O0":
bb.fatal("%s can't be built with %s, try -O1 instead" % (d.getVar('PN'), opt_effective))
- if opt_effective in ("-O", "-O1", "-Os"):
- bb.note("%s doesn't build cleanly with %s, adding -Wno-error to SELECTED_OPTIMIZATION" % (d.getVar('PN'), opt_effective))
- d.appendVar("SELECTED_OPTIMIZATION", " -Wno-error")
}
# siteconfig.bbclass runs configure which needs a working compiler
@@ -33,12 +30,8 @@ siteconfig_do_siteconfig_gencache_prepend = " \
# nptl needs unwind support in gcc, which can't be built without glibc.
DEPENDS = "virtual/${TARGET_PREFIX}gcc-initial libgcc-initial linux-libc-headers virtual/${TARGET_PREFIX}libc-initial"
-# nptl needs libgcc but dlopens it, so our shlibs code doesn't detect this
-#RDEPENDS_${PN} += "${@['','libgcc']['nptl' in '${GLIBC_ADDONS}']}"
-CRYPTPROVIDES = "virtual/crypt"
-CRYPTPROVIDES_class-nativesdk = ""
-PROVIDES = "virtual/libc virtual/${TARGET_PREFIX}libc-for-gcc ${CRYPTPROVIDES}"
+PROVIDES = "virtual/libc virtual/${TARGET_PREFIX}libc-for-gcc"
PROVIDES += "virtual/libintl virtual/libiconv"
inherit autotools texinfo distro_features_check systemd
@@ -63,6 +56,7 @@ INHIBIT_DEFAULT_DEPS = "1"
# http://lists.openembedded.org/pipermail/openembedded-core/2015-January/100679.html
ARM_INSTRUCTION_SET_armv4 = "arm"
ARM_INSTRUCTION_SET_armv5 = "arm"
+ARM_INSTRUCTION_SET_armv6 = "arm"
# glibc uses PARALLELMFLAGS variable to pass parallel build info so transfer
# PARALLEL_MAKE into PARALLELMFLAGS and empty out PARALLEL_MAKE
@@ -80,8 +74,6 @@ do_configure_prepend() {
sed -e "s#@BASH@#/bin/sh#" -i ${S}/elf/ldd.bash.in
}
-GLIBC_ADDONS ?= "nptl,libidn"
-
# Enable backtrace from abort()
do_configure_append_arm () {
echo "CFLAGS-abort.c = -fasynchronous-unwind-tables" >> ${B}/configparms
diff --git a/poky/meta/recipes-core/glibc/glibc/0001-nativesdk-glibc-Look-for-host-system-ld.so.cache-as-.patch b/poky/meta/recipes-core/glibc/glibc/0001-nativesdk-glibc-Look-for-host-system-ld.so.cache-as-.patch
index 86234c9d2..5df26a854 100644
--- a/poky/meta/recipes-core/glibc/glibc/0001-nativesdk-glibc-Look-for-host-system-ld.so.cache-as-.patch
+++ b/poky/meta/recipes-core/glibc/glibc/0001-nativesdk-glibc-Look-for-host-system-ld.so.cache-as-.patch
@@ -1,8 +1,7 @@
-From bd91b60ce6ff01f49b173b6b45e23ce94911b2a6 Mon Sep 17 00:00:00 2001
+From bd51b3add89a5cb2d8f44029a1027c780b2afff5 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 01/27] nativesdk-glibc: Look for host system ld.so.cache as
- well
+Subject: [PATCH] nativesdk-glibc: Look for host system ld.so.cache as well
Upstream-Status: Inappropriate [embedded specific]
@@ -31,10 +30,10 @@ Signed-off-by: Khem Raj <raj.khem@gmail.com>
1 file changed, 8 insertions(+), 8 deletions(-)
diff --git a/elf/dl-load.c b/elf/dl-load.c
-index 7554a99b5a..a73d11a62f 100644
+index c51e4b3718..44bbb69dc4 100644
--- a/elf/dl-load.c
+++ b/elf/dl-load.c
-@@ -2007,6 +2007,14 @@ _dl_map_object (struct link_map *loader, const char *name,
+@@ -2085,6 +2085,14 @@ _dl_map_object (struct link_map *loader, const char *name,
}
}
@@ -49,7 +48,7 @@ index 7554a99b5a..a73d11a62f 100644
#ifdef USE_LDCONFIG
if (fd == -1
&& (__glibc_likely ((mode & __RTLD_SECURE) == 0)
-@@ -2065,14 +2073,6 @@ _dl_map_object (struct link_map *loader, const char *name,
+@@ -2143,14 +2151,6 @@ _dl_map_object (struct link_map *loader, const char *name,
}
#endif
@@ -64,6 +63,3 @@ index 7554a99b5a..a73d11a62f 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.16.1
-
diff --git a/poky/meta/recipes-core/glibc/glibc/0002-nativesdk-glibc-Fix-buffer-overrun-with-a-relocated-.patch b/poky/meta/recipes-core/glibc/glibc/0002-nativesdk-glibc-Fix-buffer-overrun-with-a-relocated-.patch
index 899481f05..daadec76c 100644
--- a/poky/meta/recipes-core/glibc/glibc/0002-nativesdk-glibc-Fix-buffer-overrun-with-a-relocated-.patch
+++ b/poky/meta/recipes-core/glibc/glibc/0002-nativesdk-glibc-Fix-buffer-overrun-with-a-relocated-.patch
@@ -1,8 +1,7 @@
-From 50736f7fc1fdc9e1f7c05f1fec75c977d9be9228 Mon Sep 17 00:00:00 2001
+From fdc8a33ac2c81a0237b8a6d8b1aac7f1cdbb46af 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 02/27] nativesdk-glibc: Fix buffer overrun with a relocated
- SDK
+Subject: [PATCH] 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
@@ -22,10 +21,10 @@ Signed-off-by: Khem Raj <raj.khem@gmail.com>
1 file changed, 12 insertions(+)
diff --git a/elf/dl-load.c b/elf/dl-load.c
-index a73d11a62f..62e3eee478 100644
+index 44bbb69dc4..74e2e5e962 100644
--- a/elf/dl-load.c
+++ b/elf/dl-load.c
-@@ -1707,7 +1707,19 @@ open_path (const char *name, size_t namelen, int mode,
+@@ -1785,7 +1785,19 @@ open_path (const char *name, size_t namelen, int mode,
given on the command line when rtld is run directly. */
return -1;
@@ -45,6 +44,3 @@ index a73d11a62f..62e3eee478 100644
do
{
struct r_search_path_elem *this_dir = *dirs;
---
-2.16.1
-
diff --git a/poky/meta/recipes-core/glibc/glibc/0003-nativesdk-glibc-Raise-the-size-of-arrays-containing-.patch b/poky/meta/recipes-core/glibc/glibc/0003-nativesdk-glibc-Raise-the-size-of-arrays-containing-.patch
index 03f99916f..e08254030 100644
--- a/poky/meta/recipes-core/glibc/glibc/0003-nativesdk-glibc-Raise-the-size-of-arrays-containing-.patch
+++ b/poky/meta/recipes-core/glibc/glibc/0003-nativesdk-glibc-Raise-the-size-of-arrays-containing-.patch
@@ -1,8 +1,7 @@
-From 695e1cbff6ee6db3435c33e55311c67adf44476d Mon Sep 17 00:00:00 2001
+From 055dd46b793168fb08e44913153010b088011ba2 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 03/27] nativesdk-glibc: Raise the size of arrays containing dl
- paths
+Subject: [PATCH] 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
@@ -41,10 +40,10 @@ index 6ee5153ff9..37a5f701fa 100644
_dl_cache_libcmp (const char *p1, const char *p2)
{
diff --git a/elf/dl-load.c b/elf/dl-load.c
-index 62e3eee478..6ddba73650 100644
+index 74e2e5e962..8f19186e1c 100644
--- a/elf/dl-load.c
+++ b/elf/dl-load.c
-@@ -109,8 +109,8 @@ static size_t max_capstrlen attribute_relro;
+@@ -110,8 +110,8 @@ static size_t max_capstrlen attribute_relro;
gen-trusted-dirs.awk. */
#include "trusted-dirs.h"
@@ -81,10 +80,10 @@ index fbdd814edf..9f4d8d69b1 100644
a platform. */
static int
diff --git a/elf/rtld.c b/elf/rtld.c
-index 453f56eb15..08e0c4c94b 100644
+index 1b0c74739f..a70a62d31e 100644
--- a/elf/rtld.c
+++ b/elf/rtld.c
-@@ -128,6 +128,7 @@ dso_name_valid_for_suid (const char *p)
+@@ -130,6 +130,7 @@ dso_name_valid_for_suid (const char *p)
}
return *p != '\0';
}
@@ -92,7 +91,7 @@ index 453f56eb15..08e0c4c94b 100644
/* LD_AUDIT variable contents. Must be processed before the
audit_list below. */
-@@ -1000,12 +1001,12 @@ of this helper program; chances are you did not intend to run this program.\n\
+@@ -1001,12 +1002,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 +107,7 @@ index 453f56eb15..08e0c4c94b 100644
++_dl_skip_args;
--_dl_argc;
diff --git a/iconv/gconv_conf.c b/iconv/gconv_conf.c
-index d6cf9d2a3e..9fcf970144 100644
+index f173cde71b..5c3205026f 100644
--- a/iconv/gconv_conf.c
+++ b/iconv/gconv_conf.c
@@ -36,7 +36,7 @@
@@ -135,6 +134,3 @@ index cf43f1cf3b..7f07adde53 100644
#ifndef add_system_dir
# define add_system_dir(dir) add_dir (dir)
#endif
---
-2.16.1
-
diff --git a/poky/meta/recipes-core/glibc/glibc/0004-nativesdk-glibc-Allow-64-bit-atomics-for-x86.patch b/poky/meta/recipes-core/glibc/glibc/0004-nativesdk-glibc-Allow-64-bit-atomics-for-x86.patch
index f9d70c2a0..1ae2e33b4 100644
--- a/poky/meta/recipes-core/glibc/glibc/0004-nativesdk-glibc-Allow-64-bit-atomics-for-x86.patch
+++ b/poky/meta/recipes-core/glibc/glibc/0004-nativesdk-glibc-Allow-64-bit-atomics-for-x86.patch
@@ -1,7 +1,7 @@
-From 2bafdbd7067794c6a24e5e85608c0ec4638c5667 Mon Sep 17 00:00:00 2001
+From a237553ccd15276462be2023057a017fa8ee5d7c 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 04/27] nativesdk-glibc: Allow 64 bit atomics for x86
+Subject: [PATCH] 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.
@@ -29,6 +29,3 @@ index 272da5dd8f..409c759f14 100644
#define USE_ATOMIC_COMPILER_BUILTINS 0
#define ATOMIC_EXCHANGE_USES_CAS 0
---
-2.16.1
-
diff --git a/poky/meta/recipes-core/glibc/glibc/relocate-locales.patch b/poky/meta/recipes-core/glibc/glibc/0005-nativesdk-glibc-Make-relocatable-install-for-locales.patch
index 2aea37f5c..b53f2ef2e 100644
--- a/poky/meta/recipes-core/glibc/glibc/relocate-locales.patch
+++ b/poky/meta/recipes-core/glibc/glibc/0005-nativesdk-glibc-Make-relocatable-install-for-locales.patch
@@ -1,12 +1,24 @@
+From e1dc85af1800afa4fbf4eb5a59cc41025495af57 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
+
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
magic segment that we can relocate at install time.
Upstream-Status: Inappropriate (OE-specific)
+
Signed-off-by: Ross Burton <ross.burton@intel.com>
+Signed-off-by: Khem Raj <raj.khem@gmail.com>
+---
+ locale/findlocale.c | 4 ++--
+ locale/loadarchive.c | 2 +-
+ locale/localeinfo.h | 2 +-
+ 3 files changed, 4 insertions(+), 4 deletions(-)
diff --git a/locale/findlocale.c b/locale/findlocale.c
-index 872cadb5..da14fa39 100644
+index 872cadb5b9..dd651e07f5 100644
--- a/locale/findlocale.c
+++ b/locale/findlocale.c
@@ -56,7 +56,7 @@ struct __locale_data *const _nl_C[] attribute_hidden =
@@ -27,8 +39,21 @@ index 872cadb5..da14fa39 100644
}
else
/* We really have to load some data. First see whether the name is
+diff --git a/locale/loadarchive.c b/locale/loadarchive.c
+index 516d30d8d1..9bfbe1a5dd 100644
+--- a/locale/loadarchive.c
++++ b/locale/loadarchive.c
+@@ -42,7 +42,7 @@
+
+
+ /* Name of the locale archive file. */
+-static const char archfname[] = COMPLOCALEDIR "/locale-archive";
++static const char archfname[4096] __attribute__ ((section (".gccrelocprefix"))) = COMPLOCALEDIR "/locale-archive";
+
+ /* Size of initial mapping window, optimal if large enough to
+ cover the header plus the initial locale. */
diff --git a/locale/localeinfo.h b/locale/localeinfo.h
-index 68822a63..537bc351 100644
+index 68822a6319..537bc35149 100644
--- a/locale/localeinfo.h
+++ b/locale/localeinfo.h
@@ -325,7 +325,7 @@ _nl_lookup_word (locale_t l, int category, int item)
@@ -40,16 +65,3 @@ index 68822a63..537bc351 100644
/* Load the locale data for CATEGORY from the file specified by *NAME.
If *NAME is "", use environment variables as specified by POSIX, and
-diff --git a/locale/loadarchive.c b/locale/loadarchive.c
-index 516d30d8..792b37fb 100644
---- a/locale/loadarchive.c
-+++ b/locale/loadarchive.c
-@@ -42,7 +43,7 @@
-
-
- /* Name of the locale archive file. */
--static const char archfname[] = COMPLOCALEDIR "/locale-archive";
-+static const char archfname[4096] __attribute__ ((section (".gccrelocprefix"))) = COMPLOCALEDIR "/locale-archive";
-
- /* Size of initial mapping window, optimal if large enough to
- cover the header plus the initial locale. */
diff --git a/poky/meta/recipes-core/glibc/glibc/0005-fsl-e500-e5500-e6500-603e-fsqrt-implementation.patch b/poky/meta/recipes-core/glibc/glibc/0006-fsl-e500-e5500-e6500-603e-fsqrt-implementation.patch
index ad9106eef..971700a6d 100644
--- a/poky/meta/recipes-core/glibc/glibc/0005-fsl-e500-e5500-e6500-603e-fsqrt-implementation.patch
+++ b/poky/meta/recipes-core/glibc/glibc/0006-fsl-e500-e5500-e6500-603e-fsqrt-implementation.patch
@@ -1,31 +1,31 @@
-From 661adfe9c220d10617bf6bb283827471c3956b01 Mon Sep 17 00:00:00 2001
+From d23c577b0b70b34335971abaf3f50e617dda615e 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 05/27] fsl e500/e5500/e6500/603e fsqrt implementation
+Subject: [PATCH] fsl e500/e5500/e6500/603e fsqrt implementation
Upstream-Status: Pending
Signed-off-by: Edmar Wienskoski <edmar@freescale.com>
Signed-off-by: Khem Raj <raj.khem@gmail.com>
---
- sysdeps/powerpc/powerpc32/603e/fpu/e_sqrt.c | 134 +++++++++++++++++++++
- sysdeps/powerpc/powerpc32/603e/fpu/e_sqrtf.c | 101 ++++++++++++++++
- sysdeps/powerpc/powerpc32/e500mc/fpu/e_sqrt.c | 134 +++++++++++++++++++++
- sysdeps/powerpc/powerpc32/e500mc/fpu/e_sqrtf.c | 101 ++++++++++++++++
- sysdeps/powerpc/powerpc32/e5500/fpu/e_sqrt.c | 134 +++++++++++++++++++++
- sysdeps/powerpc/powerpc32/e5500/fpu/e_sqrtf.c | 101 ++++++++++++++++
- sysdeps/powerpc/powerpc32/e6500/fpu/e_sqrt.c | 134 +++++++++++++++++++++
- sysdeps/powerpc/powerpc32/e6500/fpu/e_sqrtf.c | 101 ++++++++++++++++
- sysdeps/powerpc/powerpc64/e5500/fpu/e_sqrt.c | 134 +++++++++++++++++++++
- sysdeps/powerpc/powerpc64/e5500/fpu/e_sqrtf.c | 101 ++++++++++++++++
- sysdeps/powerpc/powerpc64/e6500/fpu/e_sqrt.c | 134 +++++++++++++++++++++
- sysdeps/powerpc/powerpc64/e6500/fpu/e_sqrtf.c | 101 ++++++++++++++++
- .../sysv/linux/powerpc/powerpc32/603e/fpu/Implies | 1 +
- .../linux/powerpc/powerpc32/e300c3/fpu/Implies | 2 +
- .../linux/powerpc/powerpc32/e500mc/fpu/Implies | 1 +
- .../sysv/linux/powerpc/powerpc32/e5500/fpu/Implies | 1 +
- .../sysv/linux/powerpc/powerpc32/e6500/fpu/Implies | 1 +
- .../sysv/linux/powerpc/powerpc64/e5500/fpu/Implies | 1 +
- .../sysv/linux/powerpc/powerpc64/e6500/fpu/Implies | 1 +
+ sysdeps/powerpc/powerpc32/603e/fpu/e_sqrt.c | 134 ++++++++++++++++++
+ sysdeps/powerpc/powerpc32/603e/fpu/e_sqrtf.c | 101 +++++++++++++
+ sysdeps/powerpc/powerpc32/e500mc/fpu/e_sqrt.c | 134 ++++++++++++++++++
+ .../powerpc/powerpc32/e500mc/fpu/e_sqrtf.c | 101 +++++++++++++
+ sysdeps/powerpc/powerpc32/e5500/fpu/e_sqrt.c | 134 ++++++++++++++++++
+ sysdeps/powerpc/powerpc32/e5500/fpu/e_sqrtf.c | 101 +++++++++++++
+ sysdeps/powerpc/powerpc32/e6500/fpu/e_sqrt.c | 134 ++++++++++++++++++
+ sysdeps/powerpc/powerpc32/e6500/fpu/e_sqrtf.c | 101 +++++++++++++
+ sysdeps/powerpc/powerpc64/e5500/fpu/e_sqrt.c | 134 ++++++++++++++++++
+ sysdeps/powerpc/powerpc64/e5500/fpu/e_sqrtf.c | 101 +++++++++++++
+ sysdeps/powerpc/powerpc64/e6500/fpu/e_sqrt.c | 134 ++++++++++++++++++
+ sysdeps/powerpc/powerpc64/e6500/fpu/e_sqrtf.c | 101 +++++++++++++
+ .../linux/powerpc/powerpc32/603e/fpu/Implies | 1 +
+ .../powerpc/powerpc32/e300c3/fpu/Implies | 2 +
+ .../powerpc/powerpc32/e500mc/fpu/Implies | 1 +
+ .../linux/powerpc/powerpc32/e5500/fpu/Implies | 1 +
+ .../linux/powerpc/powerpc32/e6500/fpu/Implies | 1 +
+ .../linux/powerpc/powerpc64/e5500/fpu/Implies | 1 +
+ .../linux/powerpc/powerpc64/e6500/fpu/Implies | 1 +
19 files changed, 1418 insertions(+)
create mode 100644 sysdeps/powerpc/powerpc32/603e/fpu/e_sqrt.c
create mode 100644 sysdeps/powerpc/powerpc32/603e/fpu/e_sqrtf.c
@@ -1579,6 +1579,3 @@ index 0000000000..04ff8cc181
+++ b/sysdeps/unix/sysv/linux/powerpc/powerpc64/e6500/fpu/Implies
@@ -0,0 +1 @@
+powerpc/powerpc64/e6500/fpu
---
-2.16.1
-
diff --git a/poky/meta/recipes-core/glibc/glibc/0006-readlib-Add-OECORE_KNOWN_INTERPRETER_NAMES-to-known-.patch b/poky/meta/recipes-core/glibc/glibc/0007-readlib-Add-OECORE_KNOWN_INTERPRETER_NAMES-to-known-.patch
index a3d50fd05..487134683 100644
--- a/poky/meta/recipes-core/glibc/glibc/0006-readlib-Add-OECORE_KNOWN_INTERPRETER_NAMES-to-known-.patch
+++ b/poky/meta/recipes-core/glibc/glibc/0007-readlib-Add-OECORE_KNOWN_INTERPRETER_NAMES-to-known-.patch
@@ -1,8 +1,7 @@
-From 615598fcca64461a71d84f756d75374f02d914ad Mon Sep 17 00:00:00 2001
+From d65f6ee214d7d91445fceabc6a5d6bf55b0e8d4b 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 06/27] readlib: Add OECORE_KNOWN_INTERPRETER_NAMES to known
- names
+Subject: [PATCH] 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
@@ -28,6 +27,3 @@ index 573c01476c..d8c7412287 100644
};
static struct known_names known_libs[] =
---
-2.16.1
-
diff --git a/poky/meta/recipes-core/glibc/glibc/0007-ppc-sqrt-Fix-undefined-reference-to-__sqrt_finite.patch b/poky/meta/recipes-core/glibc/glibc/0008-ppc-sqrt-Fix-undefined-reference-to-__sqrt_finite.patch
index 1234df0a0..c0d96eb1f 100644
--- a/poky/meta/recipes-core/glibc/glibc/0007-ppc-sqrt-Fix-undefined-reference-to-__sqrt_finite.patch
+++ b/poky/meta/recipes-core/glibc/glibc/0008-ppc-sqrt-Fix-undefined-reference-to-__sqrt_finite.patch
@@ -1,7 +1,7 @@
-From 804b73ae295bdfda29341e89f2d0c1b99492dc9a Mon Sep 17 00:00:00 2001
+From ee3aa1464f40c916c62cf326bf4c18f8b71a229b 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 07/27] ppc/sqrt: Fix undefined reference to `__sqrt_finite'
+Subject: [PATCH] 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,6 +203,3 @@ index 26fa067abf..9d175122a8 100644
return f_washf (b);
}
+strong_alias (__ieee754_sqrtf, __sqrtf_finite)
---
-2.16.1
-
diff --git a/poky/meta/recipes-core/glibc/glibc/0008-__ieee754_sqrt-f-are-now-inline-functions-and-call-o.patch b/poky/meta/recipes-core/glibc/glibc/0009-__ieee754_sqrt-f-are-now-inline-functions-and-call-o.patch
index 1b4364751..d0b47cd67 100644
--- a/poky/meta/recipes-core/glibc/glibc/0008-__ieee754_sqrt-f-are-now-inline-functions-and-call-o.patch
+++ b/poky/meta/recipes-core/glibc/glibc/0009-__ieee754_sqrt-f-are-now-inline-functions-and-call-o.patch
@@ -1,8 +1,8 @@
-From 1a53084249d9dae1ef4281246efc899c8f9d63ed Mon Sep 17 00:00:00 2001
+From 17e82d594b2d8d3a6998face953382f9d14fb046 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 08/27] __ieee754_sqrt{,f} are now inline functions and call
- out __slow versions
+Subject: [PATCH] __ieee754_sqrt{,f} are now inline functions and call out
+ __slow versions
Upstream-Status: Pending
@@ -382,6 +382,3 @@ index 9d175122a8..10de1f0cc3 100644
+}
+
strong_alias (__ieee754_sqrtf, __sqrtf_finite)
---
-2.16.1
-
diff --git a/poky/meta/recipes-core/glibc/glibc/0009-Quote-from-bug-1443-which-explains-what-the-patch-do.patch b/poky/meta/recipes-core/glibc/glibc/0010-Quote-from-bug-1443-which-explains-what-the-patch-do.patch
index ea498569b..86ef3a105 100644
--- a/poky/meta/recipes-core/glibc/glibc/0009-Quote-from-bug-1443-which-explains-what-the-patch-do.patch
+++ b/poky/meta/recipes-core/glibc/glibc/0010-Quote-from-bug-1443-which-explains-what-the-patch-do.patch
@@ -1,8 +1,7 @@
-From 48262b6dda935278a40374ddf0080ab6cc999582 Mon Sep 17 00:00:00 2001
+From fe8d9b76e7c881cc0a0b728ea2bd637fafca0978 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 09/27] Quote from bug 1443 which explains what the patch does
- :
+Subject: [PATCH] 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().
@@ -45,7 +44,7 @@ Signed-off-by: Khem Raj <raj.khem@gmail.com>
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/sysdeps/arm/dl-machine.h b/sysdeps/arm/dl-machine.h
-index 8a00eab5e3..623edcb1bd 100644
+index 1a4fd3f17b..a02c47571a 100644
--- a/sysdeps/arm/dl-machine.h
+++ b/sysdeps/arm/dl-machine.h
@@ -510,7 +510,7 @@ elf_machine_rel (struct link_map *map, const Elf32_Rel *reloc,
@@ -57,6 +56,3 @@ index 8a00eab5e3..623edcb1bd 100644
break;
case R_ARM_TLS_TPOFF32:
---
-2.16.1
-
diff --git a/poky/meta/recipes-core/glibc/glibc/0010-eglibc-run-libm-err-tab.pl-with-specific-dirs-in-S.patch b/poky/meta/recipes-core/glibc/glibc/0011-eglibc-run-libm-err-tab.pl-with-specific-dirs-in-S.patch
index 17513185d..32aae5cd5 100644
--- a/poky/meta/recipes-core/glibc/glibc/0010-eglibc-run-libm-err-tab.pl-with-specific-dirs-in-S.patch
+++ b/poky/meta/recipes-core/glibc/glibc/0011-eglibc-run-libm-err-tab.pl-with-specific-dirs-in-S.patch
@@ -1,7 +1,7 @@
-From 72ea5410909aef6b6aee70e7f9a88d534583aa00 Mon Sep 17 00:00:00 2001
+From 3012cb839a64e7d5c621efa79b643d169290e6e9 Mon Sep 17 00:00:00 2001
From: Ting Liu <b28495@freescale.com>
Date: Wed, 19 Dec 2012 04:39:57 -0600
-Subject: [PATCH 10/27] eglibc: run libm-err-tab.pl with specific dirs in ${S}
+Subject: [PATCH] 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
@@ -31,6 +31,3 @@ index c2756640a7..1b5bb16a96 100644
$(move-if-change) $(objpfx)libm-err-tmp $(objpfx)libm-err.texi
touch $@
---
-2.16.1
-
diff --git a/poky/meta/recipes-core/glibc/glibc/0011-__ieee754_sqrt-f-are-now-inline-functions-and-call-o.patch b/poky/meta/recipes-core/glibc/glibc/0012-__ieee754_sqrt-f-are-now-inline-functions-and-call-o.patch
index 1e70b2a30..93395c389 100644
--- a/poky/meta/recipes-core/glibc/glibc/0011-__ieee754_sqrt-f-are-now-inline-functions-and-call-o.patch
+++ b/poky/meta/recipes-core/glibc/glibc/0012-__ieee754_sqrt-f-are-now-inline-functions-and-call-o.patch
@@ -1,8 +1,8 @@
-From 8ae998a10b24545e0c12f1f3d8be97b191178204 Mon Sep 17 00:00:00 2001
+From 93ab69ae4c98303929ba9492130a021fa4a215be 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 11/27] __ieee754_sqrt{,f} are now inline functions and call
- out __slow versions
+Subject: [PATCH] __ieee754_sqrt{,f} are now inline functions and call out
+ __slow versions
Upstream-Status: Pending
@@ -56,6 +56,3 @@ index 812653558f..10de1f0cc3 100644
float b;
#endif
{
---
-2.16.1
-
diff --git a/poky/meta/recipes-core/glibc/glibc/0012-sysdeps-gnu-configure.ac-handle-correctly-libc_cv_ro.patch b/poky/meta/recipes-core/glibc/glibc/0013-sysdeps-gnu-configure.ac-handle-correctly-libc_cv_ro.patch
index c35b759a2..9998691fa 100644
--- a/poky/meta/recipes-core/glibc/glibc/0012-sysdeps-gnu-configure.ac-handle-correctly-libc_cv_ro.patch
+++ b/poky/meta/recipes-core/glibc/glibc/0013-sysdeps-gnu-configure.ac-handle-correctly-libc_cv_ro.patch
@@ -1,7 +1,7 @@
-From 4f9f39761909e67bd6d29b970b7165863e33e565 Mon Sep 17 00:00:00 2001
+From a7bd8aa65f3f2755d6dbd0d5adbfd269c1fb0094 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 12/27] sysdeps/gnu/configure.ac: handle correctly
+Subject: [PATCH] sysdeps/gnu/configure.ac: handle correctly
$libc_cv_rootsbindir
Upstream-Status:Pending
@@ -37,6 +37,3 @@ index 634fe4de2a..3db1697f4f 100644
+ test -n "$libc_cv_rootsbindir" || libc_cv_rootsbindir=/sbin
;;
esac
---
-2.16.1
-
diff --git a/poky/meta/recipes-core/glibc/glibc/0013-Add-unused-attribute.patch b/poky/meta/recipes-core/glibc/glibc/0014-Add-unused-attribute.patch
index 62c65253d..9d6ab30e2 100644
--- a/poky/meta/recipes-core/glibc/glibc/0013-Add-unused-attribute.patch
+++ b/poky/meta/recipes-core/glibc/glibc/0014-Add-unused-attribute.patch
@@ -1,7 +1,7 @@
-From bba7a647b636618d5fd083e904f995f7736b9168 Mon Sep 17 00:00:00 2001
+From 2ce5bc6da23dcb402afdeb967fa44c39eecf6d37 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 13/27] Add unused attribute
+Subject: [PATCH] Add unused attribute
Helps in avoiding gcc warning when header is is included in
a source file which does not use both functions
@@ -29,6 +29,3 @@ index 123e2a62ce..63cc83ec84 100644
strip (char *wp, const char *s)
{
int slash_count = 0;
---
-2.16.1
-
diff --git a/poky/meta/recipes-core/glibc/glibc/0014-yes-within-the-path-sets-wrong-config-variables.patch b/poky/meta/recipes-core/glibc/glibc/0015-yes-within-the-path-sets-wrong-config-variables.patch
index 66911285a..0267e7a4e 100644
--- a/poky/meta/recipes-core/glibc/glibc/0014-yes-within-the-path-sets-wrong-config-variables.patch
+++ b/poky/meta/recipes-core/glibc/glibc/0015-yes-within-the-path-sets-wrong-config-variables.patch
@@ -1,7 +1,7 @@
-From 62f44ce3dd01a257cf67116e355492cb1659a917 Mon Sep 17 00:00:00 2001
+From b382138c41ccf6079b44592f1e74f183ca8281bb 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 14/27] 'yes' within the path sets wrong config variables
+Subject: [PATCH] '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,6 +258,3 @@ 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.16.1
-
diff --git a/poky/meta/recipes-core/glibc/glibc/0015-timezone-re-written-tzselect-as-posix-sh.patch b/poky/meta/recipes-core/glibc/glibc/0016-timezone-re-written-tzselect-as-posix-sh.patch
index 66bf4fdab..15453ec6f 100644
--- a/poky/meta/recipes-core/glibc/glibc/0015-timezone-re-written-tzselect-as-posix-sh.patch
+++ b/poky/meta/recipes-core/glibc/glibc/0016-timezone-re-written-tzselect-as-posix-sh.patch
@@ -1,7 +1,7 @@
-From ac240fb01f6470ac207968adfbe20ccc93b16f8b Mon Sep 17 00:00:00 2001
+From 04fb7b93dc40c1f96ebc05d29a2f02f9e4f0d572 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 15/27] timezone: re-written tzselect as posix sh
+Subject: [PATCH] timezone: re-written tzselect as posix sh
To avoid the bash dependency.
@@ -40,6 +40,3 @@ index d2c3a6d1dd..089679f306 100755
# Output one argument as-is to standard output.
# Safer than 'echo', which can mishandle '\' or leading '-'.
---
-2.16.1
-
diff --git a/poky/meta/recipes-core/glibc/glibc/0016-Remove-bash-dependency-for-nscd-init-script.patch b/poky/meta/recipes-core/glibc/glibc/0017-Remove-bash-dependency-for-nscd-init-script.patch
index 0b1ee9687..06d2cd1d2 100644
--- a/poky/meta/recipes-core/glibc/glibc/0016-Remove-bash-dependency-for-nscd-init-script.patch
+++ b/poky/meta/recipes-core/glibc/glibc/0017-Remove-bash-dependency-for-nscd-init-script.patch
@@ -1,7 +1,7 @@
-From 790b133ff2bc5b77ed8533b8999abc65ed0da02b Mon Sep 17 00:00:00 2001
+From 7a2f244c0980a54ed74f9544ab44a7269ef12bce 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 16/27] Remove bash dependency for nscd init script
+Subject: [PATCH] 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,6 +70,3 @@ index a882da7d8b..b02986ec15 100644
RETVAL=1
;;
esac
---
-2.16.1
-
diff --git a/poky/meta/recipes-core/glibc/glibc/0017-eglibc-Cross-building-and-testing-instructions.patch b/poky/meta/recipes-core/glibc/glibc/0018-eglibc-Cross-building-and-testing-instructions.patch
index fd821323d..29109a26e 100644
--- a/poky/meta/recipes-core/glibc/glibc/0017-eglibc-Cross-building-and-testing-instructions.patch
+++ b/poky/meta/recipes-core/glibc/glibc/0018-eglibc-Cross-building-and-testing-instructions.patch
@@ -1,15 +1,15 @@
-From 897430bbb65a0f22284d7957206b5fd4efd6607f Mon Sep 17 00:00:00 2001
+From 44a5c79efea09f5b990e524ec42abdeef444056a 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 17/27] eglibc: Cross building and testing instructions
+Subject: [PATCH] eglibc: Cross building and testing instructions
Ported from eglibc
Upstream-Status: Pending
Signed-off-by: Khem Raj <raj.khem@gmail.com>
---
- GLIBC.cross-building | 383 +++++++++++++++++++++++++++++++++++++++++++++++++++
- GLIBC.cross-testing | 205 +++++++++++++++++++++++++++
+ GLIBC.cross-building | 383 +++++++++++++++++++++++++++++++++++++++++++
+ GLIBC.cross-testing | 205 +++++++++++++++++++++++
2 files changed, 588 insertions(+)
create mode 100644 GLIBC.cross-building
create mode 100644 GLIBC.cross-testing
@@ -614,6 +614,3 @@ 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.16.1
-
diff --git a/poky/meta/recipes-core/glibc/glibc/0018-eglibc-Help-bootstrap-cross-toolchain.patch b/poky/meta/recipes-core/glibc/glibc/0019-eglibc-Help-bootstrap-cross-toolchain.patch
index 80d547c80..71c2ab918 100644
--- a/poky/meta/recipes-core/glibc/glibc/0018-eglibc-Help-bootstrap-cross-toolchain.patch
+++ b/poky/meta/recipes-core/glibc/glibc/0019-eglibc-Help-bootstrap-cross-toolchain.patch
@@ -1,7 +1,7 @@
-From fcfa19b69e8749477022161a808a201807ef72ec Mon Sep 17 00:00:00 2001
+From f4ec5527d562d38523abb8587a6c7532e9d21f8a 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 18/27] eglibc: Help bootstrap cross toolchain
+Subject: [PATCH] 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 bea4e27f8d..8c83cfadc6 100644
+index d3f25a525a..ab383867e2 100644
--- a/Makefile
+++ b/Makefile
@@ -70,9 +70,18 @@ subdir-dirs = include
@@ -52,7 +52,7 @@ index bea4e27f8d..8c83cfadc6 100644
ifeq (yes,$(build-shared))
headers += gnu/lib-names.h
endif
-@@ -152,6 +161,16 @@ others: $(common-objpfx)testrun.sh
+@@ -195,6 +204,16 @@ others: $(common-objpfx)testrun.sh
subdir-stubs := $(foreach dir,$(subdirs),$(common-objpfx)$(dir)/stubs)
@@ -69,7 +69,7 @@ index bea4e27f8d..8c83cfadc6 100644
ifndef abi-variants
installed-stubs = $(inst_includedir)/gnu/stubs.h
else
-@@ -178,6 +197,7 @@ $(inst_includedir)/gnu/stubs.h: $(+force)
+@@ -221,6 +240,7 @@ $(inst_includedir)/gnu/stubs.h: $(+force)
install-others-nosubdir: $(installed-stubs)
endif
@@ -95,6 +95,3 @@ 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.16.1
-
diff --git a/poky/meta/recipes-core/glibc/glibc/0019-eglibc-Clear-cache-lines-on-ppc8xx.patch b/poky/meta/recipes-core/glibc/glibc/0020-eglibc-Clear-cache-lines-on-ppc8xx.patch
index 17bfe4fe8..6e475a711 100644
--- a/poky/meta/recipes-core/glibc/glibc/0019-eglibc-Clear-cache-lines-on-ppc8xx.patch
+++ b/poky/meta/recipes-core/glibc/glibc/0020-eglibc-Clear-cache-lines-on-ppc8xx.patch
@@ -1,7 +1,7 @@
-From c6f2db0d7c5c65bfa19766a0e1ce8210111f9c7d Mon Sep 17 00:00:00 2001
+From 6c23660d035e71de0e20b40460ad3050bd057665 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 19/27] eglibc: Clear cache lines on ppc8xx
+Subject: [PATCH] eglibc: Clear cache lines on ppc8xx
2007-06-13 Nathan Sidwell <nathan@codesourcery.com>
Mark Shinwell <shinwell@codesourcery.com>
@@ -78,6 +78,3 @@ index f2ad0c355d..3e6773795e 100644
__cache_line_size = av->a_un.a_val;
break;
#ifndef SHARED
---
-2.16.1
-
diff --git a/poky/meta/recipes-core/glibc/glibc/0021-eglibc-Install-PIC-archives.patch b/poky/meta/recipes-core/glibc/glibc/0021-eglibc-Install-PIC-archives.patch
deleted file mode 100644
index 530f4e108..000000000
--- a/poky/meta/recipes-core/glibc/glibc/0021-eglibc-Install-PIC-archives.patch
+++ /dev/null
@@ -1,123 +0,0 @@
-From c1beab8a11985f96f5eb644e7103d343b705afc6 Mon Sep 17 00:00:00 2001
-From: Khem Raj <raj.khem@gmail.com>
-Date: Wed, 18 Mar 2015 01:57:01 +0000
-Subject: [PATCH 21/27] eglibc: Install PIC archives
-
-Forward port from eglibc
-
-2008-02-07 Joseph Myers <joseph@codesourcery.com>
-
- * Makerules (install-extras, install-map): New variables.
- (installed-libcs): Add libc_pic.a.
- (install-lib): Include _pic.a files for versioned shared
- libraries.
- (install-map-nosubdir, install-extras-nosubdir): Add rules for
- installing extra files.
- (install-no-libc.a-nosubdir): Depend on install-map-nosubdir and
- install-extras-nosubdir.
-
-2008-04-01 Maxim Kuvyrkov <maxim@codesourcery.com>
-
- * Makerules (install-lib): Don't install libpthread_pic.a.
- (install-map): Don't install libpthread_pic.map.
-
-Upstream-Status: Pending
-
-Signed-off-by: Khem Raj <raj.khem@gmail.com>
----
- Makerules | 42 ++++++++++++++++++++++++++++++++++++++++--
- 1 file changed, 40 insertions(+), 2 deletions(-)
-
-diff --git a/Makerules b/Makerules
-index ef6abeac6d..eeaa667f49 100644
---- a/Makerules
-+++ b/Makerules
-@@ -778,6 +778,9 @@ ifeq ($(build-shared),yes)
- $(common-objpfx)libc.so: $(common-objpfx)libc.map
- endif
- common-generated += libc.so libc_pic.os
-+ifndef subdir
-+install-extras := soinit.o sofini.o
-+endif
- ifdef libc.so-version
- $(common-objpfx)libc.so$(libc.so-version): $(common-objpfx)libc.so
- $(make-link)
-@@ -1029,6 +1032,7 @@ endif
-
- install: check-install-supported
-
-+installed-libcs := $(installed-libcs) $(inst_libdir)/libc_pic.a
- install: $(installed-libcs)
- $(installed-libcs): $(inst_libdir)/lib$(libprefix)%: lib $(+force)
- $(make-target-directory)
-@@ -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))
-
-+# Install the _pic.a files for versioned libraries, and corresponding
-+# .map files.
-+# libpthread_pic.a breaks mklibs, so don't install it and its map.
-+install-lib := $(install-lib) $(install-lib.so-versioned:%.so=%_pic.a)
-+install-lib := $(filter-out libpthread_pic.a,$(install-lib))
-+# Despite having a soname libhurduser and libmachuser do not use symbol
-+# versioning, so don't install the corresponding .map files.
-+ifeq ($(build-shared),yes)
-+install-map := $(patsubst %.so,%.map,\
-+ $(foreach L,$(install-lib.so-versioned),$(notdir $L)))
-+install-map := $(filter-out libhurduser.map libmachuser.map libpthread.map,$(install-map))
-+ifndef subdir
-+install-map := $(install-map) libc.map
-+endif
-+endif
-+
- # 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
-@@ -1311,9 +1331,22 @@ $(addprefix $(inst_includedir)/,$(headers-nonh)): $(inst_includedir)/%: \
- endif # headers-nonh
- endif # headers
-
-+ifdef install-map
-+$(addprefix $(inst_libdir)/,$(patsubst lib%.map,lib%_pic.map,$(install-map))): \
-+ $(inst_libdir)/lib%_pic.map: $(common-objpfx)lib%.map $(+force)
-+ $(do-install)
-+endif
-+
-+ifdef install-extras
-+$(addprefix $(inst_libdir)/libc_pic/,$(install-extras)): \
-+ $(inst_libdir)/libc_pic/%.o: $(elf-objpfx)%.os $(+force)
-+ $(do-install)
-+endif
-+
- .PHONY: install-bin-nosubdir install-bin-script-nosubdir \
- install-rootsbin-nosubdir install-sbin-nosubdir install-lib-nosubdir \
-- install-data-nosubdir install-headers-nosubdir
-+ install-data-nosubdir install-headers-nosubdir install-map-nosubdir \
-+ install-extras-nosubdir
- install-bin-nosubdir: $(addprefix $(inst_bindir)/,$(install-bin))
- install-bin-script-nosubdir: $(addprefix $(inst_bindir)/,$(install-bin-script))
- install-rootsbin-nosubdir: \
-@@ -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)
-+install-map-nosubdir: $(addprefix $(inst_libdir)/,\
-+ $(patsubst lib%.map,lib%_pic.map,$(install-map)))
-+install-extras-nosubdir: $(addprefix $(inst_libdir)/libc_pic/,\
-+ $(install-extras))
-
- # We need all the `-nosubdir' targets so that `install' in the parent
- # doesn't depend on several things which each iterate over the subdirs.
-@@ -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 \
-- install-lib-nosubdir install-others-nosubdir
-+ install-lib-nosubdir install-others-nosubdir \
-+ install-map-nosubdir install-extras-nosubdir
- ifeq ($(build-programs),yes)
- install-no-libc.a-nosubdir: install-bin-nosubdir install-bin-script-nosubdir \
- install-rootsbin-nosubdir install-sbin-nosubdir \
---
-2.16.1
-
diff --git a/poky/meta/recipes-core/glibc/glibc/0020-eglibc-Resolve-__fpscr_values-on-SH4.patch b/poky/meta/recipes-core/glibc/glibc/0021-eglibc-Resolve-__fpscr_values-on-SH4.patch
index 09f767075..8aecf2624 100644
--- a/poky/meta/recipes-core/glibc/glibc/0020-eglibc-Resolve-__fpscr_values-on-SH4.patch
+++ b/poky/meta/recipes-core/glibc/glibc/0021-eglibc-Resolve-__fpscr_values-on-SH4.patch
@@ -1,7 +1,7 @@
-From 577085016bb926a687abec145557fe8cb8f5af0e Mon Sep 17 00:00:00 2001
+From 55531ef57d04006c5a1e3b32a8e0410372f86007 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 20/27] eglibc: Resolve __fpscr_values on SH4
+Subject: [PATCH] eglibc: Resolve __fpscr_values on SH4
2010-09-29 Nobuhiro Iwamatsu <iwamatsu@nigauri.org>
Andrew Stubbs <ams@codesourcery.com>
@@ -51,6 +51,3 @@ index c4e28ffb98..648bae03d5 100644
+ .long 0x80000
+weak_alias (___fpscr_values, __fpscr_values)
+
---
-2.16.1
-
diff --git a/poky/meta/recipes-core/glibc/glibc/0022-eglibc-Forward-port-cross-locale-generation-support.patch b/poky/meta/recipes-core/glibc/glibc/0022-eglibc-Forward-port-cross-locale-generation-support.patch
index a629ce141..aa62c6352 100644
--- a/poky/meta/recipes-core/glibc/glibc/0022-eglibc-Forward-port-cross-locale-generation-support.patch
+++ b/poky/meta/recipes-core/glibc/glibc/0022-eglibc-Forward-port-cross-locale-generation-support.patch
@@ -1,24 +1,24 @@
-From e019fe6a2b410db6043e21803f497b5cbdd90a83 Mon Sep 17 00:00:00 2001
+From 4bb23fbb07984b93fd14f353fd9325d927b0cd98 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 22/27] eglibc: Forward port cross locale generation support
+Subject: [PATCH] eglibc: Forward port cross locale generation support
Upstream-Status: Pending
Signed-off-by: Khem Raj <raj.khem@gmail.com>
---
- locale/Makefile | 3 ++-
- locale/catnames.c | 48 +++++++++++++++++++++++++++++++++++
+ locale/Makefile | 3 +-
+ locale/catnames.c | 48 ++++++++++++++++++++++++++++
locale/localeinfo.h | 2 +-
- locale/programs/charmap-dir.c | 6 +++++
- locale/programs/ld-collate.c | 17 ++++++-------
- locale/programs/ld-ctype.c | 27 ++++++++++----------
- locale/programs/ld-time.c | 31 +++++++++++++++--------
+ locale/programs/charmap-dir.c | 6 ++++
+ locale/programs/ld-collate.c | 17 +++++-----
+ locale/programs/ld-ctype.c | 27 ++++++++--------
+ locale/programs/ld-time.c | 31 ++++++++++++------
locale/programs/linereader.c | 2 +-
- locale/programs/localedef.c | 8 ++++++
- locale/programs/locfile.c | 5 +++-
- locale/programs/locfile.h | 59 +++++++++++++++++++++++++++++++++++++++++--
- locale/setlocale.c | 30 ----------------------
+ locale/programs/localedef.c | 8 +++++
+ locale/programs/locfile.c | 5 ++-
+ locale/programs/locfile.h | 59 +++++++++++++++++++++++++++++++++--
+ locale/setlocale.c | 30 ------------------
12 files changed, 169 insertions(+), 69 deletions(-)
create mode 100644 locale/catnames.c
@@ -91,7 +91,7 @@ index 0000000000..9fad357db1
+ [LC_ALL] = sizeof ("LC_ALL") - 1
+ };
diff --git a/locale/localeinfo.h b/locale/localeinfo.h
-index 68822a6319..fa36123776 100644
+index 537bc35149..73ba20d695 100644
--- a/locale/localeinfo.h
+++ b/locale/localeinfo.h
@@ -224,7 +224,7 @@ __libc_tsd_define (extern, locale_t, LOCALE)
@@ -561,6 +561,3 @@ index e4de907e1f..b5d8f5c17d 100644
#ifdef NL_CURRENT_INDIRECT
# define WEAK_POSTLOAD(postload) weak_extern (postload)
#else
---
-2.16.1
-
diff --git a/poky/meta/recipes-core/glibc/glibc/0023-Define-DUMMY_LOCALE_T-if-not-defined.patch b/poky/meta/recipes-core/glibc/glibc/0023-Define-DUMMY_LOCALE_T-if-not-defined.patch
index ae708ef83..68fad9641 100644
--- a/poky/meta/recipes-core/glibc/glibc/0023-Define-DUMMY_LOCALE_T-if-not-defined.patch
+++ b/poky/meta/recipes-core/glibc/glibc/0023-Define-DUMMY_LOCALE_T-if-not-defined.patch
@@ -1,7 +1,7 @@
-From 9d71526be21abe68dd8ca3a5a219445851bbc2f4 Mon Sep 17 00:00:00 2001
+From 1b2ceb6c2414e3c98c7bcd029583287ced9f3159 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 23/27] Define DUMMY_LOCALE_T if not defined
+Subject: [PATCH] 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,6 +27,3 @@ index 9956cd8446..04342f3644 100644
/* Use the internal textdomain used for libc messages. */
#define PACKAGE _libc_intl_domainname
#ifndef VERSION
---
-2.16.1
-
diff --git a/poky/meta/recipes-core/glibc/glibc/0024-elf-dl-deps.c-Make-_dl_build_local_scope-breadth-fir.patch b/poky/meta/recipes-core/glibc/glibc/0024-elf-dl-deps.c-Make-_dl_build_local_scope-breadth-fir.patch
index 42ff66781..28cff2b90 100644
--- a/poky/meta/recipes-core/glibc/glibc/0024-elf-dl-deps.c-Make-_dl_build_local_scope-breadth-fir.patch
+++ b/poky/meta/recipes-core/glibc/glibc/0024-elf-dl-deps.c-Make-_dl_build_local_scope-breadth-fir.patch
@@ -1,7 +1,7 @@
-From 03873af286f1dab1062f598d6deb774ce513421d Mon Sep 17 00:00:00 2001
+From a6159c9486745664a5f116ee9cc45837021b7624 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 24/27] elf/dl-deps.c: Make _dl_build_local_scope breadth first
+Subject: [PATCH] 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 <mark.hatle@windriver.com>
1 file changed, 10 insertions(+), 4 deletions(-)
diff --git a/elf/dl-deps.c b/elf/dl-deps.c
-index c975fcffd7..6ee58c74e0 100644
+index 9d9b1ba7f2..8414028c58 100644
--- a/elf/dl-deps.c
+++ b/elf/dl-deps.c
-@@ -72,13 +72,19 @@ _dl_build_local_scope (struct link_map **list, struct link_map *map)
+@@ -73,13 +73,19 @@ _dl_build_local_scope (struct link_map **list, struct link_map *map)
{
struct link_map **p = list;
struct link_map **q;
@@ -51,6 +51,3 @@ index c975fcffd7..6ee58c74e0 100644
return p - list;
}
---
-2.16.1
-
diff --git a/poky/meta/recipes-core/glibc/glibc/0025-locale-fix-hard-coded-reference-to-gcc-E.patch b/poky/meta/recipes-core/glibc/glibc/0025-locale-fix-hard-coded-reference-to-gcc-E.patch
index 7f5d1421d..4a7919ff5 100644
--- a/poky/meta/recipes-core/glibc/glibc/0025-locale-fix-hard-coded-reference-to-gcc-E.patch
+++ b/poky/meta/recipes-core/glibc/glibc/0025-locale-fix-hard-coded-reference-to-gcc-E.patch
@@ -1,7 +1,7 @@
-From 56dab024751941c07eb479f47ef6682e2168c86a Mon Sep 17 00:00:00 2001
+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 25/27] locale: fix hard-coded reference to gcc -E
+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
@@ -33,6 +33,3 @@ index 30d3f2f195..e97653017c 100644
sub cstrlen {
---
-2.16.1
-
diff --git a/poky/meta/recipes-core/glibc/glibc/0026-reset-dl_load_write_lock-after-forking.patch b/poky/meta/recipes-core/glibc/glibc/0026-reset-dl_load_write_lock-after-forking.patch
index eca1193dd..71ddc1234 100644
--- a/poky/meta/recipes-core/glibc/glibc/0026-reset-dl_load_write_lock-after-forking.patch
+++ b/poky/meta/recipes-core/glibc/glibc/0026-reset-dl_load_write_lock-after-forking.patch
@@ -1,7 +1,7 @@
-From 847d37d5a34e4bf294de4ba98de3668950e28bc7 Mon Sep 17 00:00:00 2001
+From efb0fca7db742f4195e1771d8ba4c7fba4938819 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 26/27] reset dl_load_write_lock after forking
+Subject: [PATCH] reset dl_load_write_lock after forking
The patch in this Bugzilla entry was requested by a customer:
@@ -20,10 +20,10 @@ Signed-off-by: Khem Raj <raj.khem@gmail.com>
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/sysdeps/nptl/fork.c b/sysdeps/nptl/fork.c
-index 846fa49ef2..f87506f398 100644
+index ec56a827eb..0f48933ff1 100644
--- a/sysdeps/nptl/fork.c
+++ b/sysdeps/nptl/fork.c
-@@ -194,9 +194,9 @@ __libc_fork (void)
+@@ -130,9 +130,9 @@ __libc_fork (void)
_IO_list_resetlock ();
}
@@ -33,8 +33,5 @@ index 846fa49ef2..f87506f398 100644
-
+ __rtld_lock_initialize (GL(dl_load_write_lock));
/* Run the handlers registered for the child. */
- while (allp != NULL)
- {
---
-2.16.1
-
+ __run_fork_handlers (atfork_run_child);
+ }
diff --git a/poky/meta/recipes-core/glibc/glibc/0027-Acquire-ld.so-lock-before-switching-to-malloc_atfork.patch b/poky/meta/recipes-core/glibc/glibc/0027-Acquire-ld.so-lock-before-switching-to-malloc_atfork.patch
index 9ec234bd5..dd37f2cd4 100644
--- a/poky/meta/recipes-core/glibc/glibc/0027-Acquire-ld.so-lock-before-switching-to-malloc_atfork.patch
+++ b/poky/meta/recipes-core/glibc/glibc/0027-Acquire-ld.so-lock-before-switching-to-malloc_atfork.patch
@@ -1,7 +1,7 @@
-From 94225ab4bcc1613531558a632270b5edce779bc9 Mon Sep 17 00:00:00 2001
+From 6ea962e0946da7564a774b08dd3eda28d64e9e56 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 27/27] Acquire ld.so lock before switching to malloc_atfork
+Subject: [PATCH] Acquire ld.so lock before switching to malloc_atfork
The patch is from
https://sourceware.org/bugzilla/show_bug.cgi?id=4578
@@ -28,11 +28,11 @@ Signed-off-by: Yuanjie Huang <yuanjie.huang@windriver.com>
Signed-off-by: Zhixiong Chi <zhixiong.chi@windriver.com>
Signed-off-by: Khem Raj <raj.khem@gmail.com>
---
- sysdeps/nptl/fork.c | 9 +++++++++
- 1 file changed, 9 insertions(+)
+ sysdeps/nptl/fork.c | 7 +++++++
+ 1 file changed, 7 insertions(+)
diff --git a/sysdeps/nptl/fork.c b/sysdeps/nptl/fork.c
-index f87506f398..225e7b51f8 100644
+index 0f48933ff1..eef3f9669b 100644
--- a/sysdeps/nptl/fork.c
+++ b/sysdeps/nptl/fork.c
@@ -25,6 +25,7 @@
@@ -43,28 +43,23 @@ index f87506f398..225e7b51f8 100644
#include <stdio-lock.h>
#include <atomic.h>
#include <nptl/pthreadP.h>
-@@ -60,6 +61,10 @@ __libc_fork (void)
- but our current fork implementation is not. */
+@@ -56,6 +57,9 @@ __libc_fork (void)
bool multiple_threads = THREAD_GETMEM (THREAD_SELF, header.multiple_threads);
+ __run_fork_handlers (atfork_run_prepare);
+ /* 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;
- }
-+
+ /* If we are not running multiple threads, we do not have to
+ preserve lock state. If fork runs from a signal handler, only
+@@ -150,6 +154,9 @@ __libc_fork (void)
+
+ /* Run the handlers registered for the parent. */
+ __run_fork_handlers (atfork_run_parent);
+ /* 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/poky/meta/recipes-core/glibc/glibc/0028-bits-siginfo-consts.h-enum-definition-for-TRAP_HWBKP.patch b/poky/meta/recipes-core/glibc/glibc/0028-bits-siginfo-consts.h-enum-definition-for-TRAP_HWBKP.patch
index 436c84778..fae8d0040 100644
--- a/poky/meta/recipes-core/glibc/glibc/0028-bits-siginfo-consts.h-enum-definition-for-TRAP_HWBKP.patch
+++ b/poky/meta/recipes-core/glibc/glibc/0028-bits-siginfo-consts.h-enum-definition-for-TRAP_HWBKP.patch
@@ -1,8 +1,8 @@
-From af3054b3856379d353a779801678f330e1b58c9a Mon Sep 17 00:00:00 2001
-Message-Id: <af3054b3856379d353a779801678f330e1b58c9a.1490183611.git.panand@redhat.com>
+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
+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
@@ -29,7 +29,7 @@ Upstream-Status: Submitted [https://sourceware.org/bugzilla/show_bug.cgi?id=2128
2 files changed, 10 insertions(+), 2 deletions(-)
diff --git a/bits/siginfo-consts.h b/bits/siginfo-consts.h
-index a58ac4b..8448fac 100644
+index 7464c1882b..298314527a 100644
--- a/bits/siginfo-consts.h
+++ b/bits/siginfo-consts.h
@@ -106,8 +106,12 @@ enum
@@ -47,10 +47,10 @@ index a58ac4b..8448fac 100644
# endif
diff --git a/sysdeps/unix/sysv/linux/bits/siginfo-consts.h b/sysdeps/unix/sysv/linux/bits/siginfo-consts.h
-index 525840c..57a9edb 100644
+index 193bd9c471..3fe852bc5f 100644
--- a/sysdeps/unix/sysv/linux/bits/siginfo-consts.h
+++ b/sysdeps/unix/sysv/linux/bits/siginfo-consts.h
-@@ -137,8 +137,12 @@ enum
+@@ -141,8 +141,12 @@ enum
{
TRAP_BRKPT = 1, /* Process breakpoint. */
# define TRAP_BRKPT TRAP_BRKPT
@@ -64,6 +64,3 @@ index 525840c..57a9edb 100644
};
# endif
---
-2.7.4
-
diff --git a/poky/meta/recipes-core/glibc/glibc/0029-Replace-strncpy-with-memccpy-to-fix-Wstringop-trunca.patch b/poky/meta/recipes-core/glibc/glibc/0029-Replace-strncpy-with-memccpy-to-fix-Wstringop-trunca.patch
deleted file mode 100644
index fa29f4165..000000000
--- a/poky/meta/recipes-core/glibc/glibc/0029-Replace-strncpy-with-memccpy-to-fix-Wstringop-trunca.patch
+++ /dev/null
@@ -1,40 +0,0 @@
-From 113e0516fbd3ce18253f0423762416d4c4b38fb0 Mon Sep 17 00:00:00 2001
-From: Khem Raj <raj.khem@gmail.com>
-Date: Thu, 22 Mar 2018 17:57:37 -0700
-Subject: [PATCH 29/29] Replace strncpy with memccpy to fix
- -Wstringop-truncation.
-
- * nis/nss_nisplus/nisplus-parser.c: Replace strncpy with memcpy to
- avoid -Wstringop-truncation.
----
-Signed-off-by: Khem Raj <raj.khem@gmail.com>
-Upstream-Status: Submitted [https://sourceware.org/ml/libc-alpha/2018-03/msg00531.html]
-
- nis/nss_nisplus/nisplus-parser.c | 4 ++--
- 1 file changed, 2 insertions(+), 2 deletions(-)
-
-diff --git a/nis/nss_nisplus/nisplus-parser.c b/nis/nss_nisplus/nisplus-parser.c
-index 8dc021e73d..b53284f889 100644
---- a/nis/nss_nisplus/nisplus-parser.c
-+++ b/nis/nss_nisplus/nisplus-parser.c
-@@ -87,7 +87,7 @@ _nss_nisplus_parse_pwent (nis_result *result, struct passwd *pw,
- if (len >= room_left)
- goto no_more_room;
-
-- strncpy (first_unused, numstr, len);
-+ memcpy (first_unused, numstr, len);
- first_unused[len] = '\0';
- numstr = first_unused;
- }
-@@ -103,7 +103,7 @@ _nss_nisplus_parse_pwent (nis_result *result, struct passwd *pw,
- if (len >= room_left)
- goto no_more_room;
-
-- strncpy (first_unused, numstr, len);
-+ memcpy (first_unused, numstr, len);
- first_unused[len] = '\0';
- numstr = first_unused;
- }
---
-2.16.2
-
diff --git a/poky/meta/recipes-core/glibc/glibc/0029-localedef-add-to-archive-uses-a-hard-coded-locale-pa.patch b/poky/meta/recipes-core/glibc/glibc/0029-localedef-add-to-archive-uses-a-hard-coded-locale-pa.patch
new file mode 100644
index 000000000..e17f6aa3b
--- /dev/null
+++ b/poky/meta/recipes-core/glibc/glibc/0029-localedef-add-to-archive-uses-a-hard-coded-locale-pa.patch
@@ -0,0 +1,89 @@
+From 865651d2496a90f7ae8e7cc19a2e54b6f17a8ad5 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
+
+it doesn't exist in normal use, and there's no way to pass an
+alternative filename.
+
+Add a fallback of $LOCALEARCHIVE from the environment, and allow
+creation of new locale archives that are not the system archive.
+
+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(-)
+
+diff --git a/locale/programs/locarchive.c b/locale/programs/locarchive.c
+index ca332a345f..91f62da662 100644
+--- a/locale/programs/locarchive.c
++++ b/locale/programs/locarchive.c
+@@ -340,12 +340,24 @@ enlarge_archive (struct locarhandle *ah, const struct locarhead *head)
+ struct namehashent *oldnamehashtab;
+ struct locarhandle new_ah;
+ size_t prefix_len = output_prefix ? strlen (output_prefix) : 0;
+- char archivefname[prefix_len + sizeof (ARCHIVE_NAME)];
+- char fname[prefix_len + sizeof (ARCHIVE_NAME) + sizeof (".XXXXXX") - 1];
++ char *archivefname;
++ char *fname;
++ char *envarchive = getenv("LOCALEARCHIVE");
+
+- if (output_prefix)
+- memcpy (archivefname, output_prefix, prefix_len);
+- strcpy (archivefname + prefix_len, ARCHIVE_NAME);
++ if (envarchive != NULL)
++ {
++ archivefname = xmalloc(strlen(envarchive) + 1);
++ fname = xmalloc(strlen(envarchive) + sizeof (".XXXXXX"));
++ strcpy (archivefname, envarchive);
++ }
++ else
++ {
++ archivefname = xmalloc(prefix_len + sizeof (ARCHIVE_NAME));
++ fname = xmalloc(prefix_len + sizeof (ARCHIVE_NAME) + sizeof (".XXXXXX") - 1);
++ if (output_prefix)
++ memcpy (archivefname, output_prefix, prefix_len);
++ strcpy (archivefname + prefix_len, ARCHIVE_NAME);
++ }
+ 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)
+ /* If ah has a non-NULL fname open that otherwise open the default. */
+ if (archivefname == NULL)
+ {
+- archivefname = default_fname;
+- if (output_prefix)
+- memcpy (default_fname, output_prefix, prefix_len);
+- strcpy (default_fname + prefix_len, ARCHIVE_NAME);
++ archivefname = getenv("LOCALEARCHIVE");
++ if (archivefname == NULL) {
++ archivefname = default_fname;
++ if (output_prefix)
++ memcpy (default_fname, output_prefix, prefix_len);
++ strcpy (default_fname + prefix_len, ARCHIVE_NAME);
++ }
+ }
+
+ while (1)
+@@ -585,7 +602,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. */
+- if (errno == ENOENT && archivefname == default_fname)
++ if (errno == ENOENT)
+ {
+ if (readonly)
+ {
diff --git a/poky/meta/recipes-core/glibc/glibc/0030-plural_c_no_preprocessor_lines.patch b/poky/meta/recipes-core/glibc/glibc/0030-intl-Emit-no-lines-in-bison-generated-files.patch
index 6f03e1c62..db97d91c9 100644
--- a/poky/meta/recipes-core/glibc/glibc/0030-plural_c_no_preprocessor_lines.patch
+++ b/poky/meta/recipes-core/glibc/glibc/0030-intl-Emit-no-lines-in-bison-generated-files.patch
@@ -1,16 +1,26 @@
+From a54c15d0567d547137066f41b1b22eba4875c27b 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
+
Improve reproducibility:
Do not put any #line preprocessor commands in bison generated files.
These lines contain absolute paths containing file locations on
the host build machine.
Upstream-Status: Pending
+
Signed-off-by: Juro Bystricky <juro.bystricky@intel.com>
+Signed-off-by: Khem Raj <raj.khem@gmail.com>
+---
+ intl/Makefile | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/intl/Makefile b/intl/Makefile
-index 2219717..a203780 100644
+index 672edf1b38..d31888d013 100644
--- a/intl/Makefile
+++ b/intl/Makefile
-@@ -151,7 +151,7 @@ $(objpfx)tst-gettext6.out: $(objpfx)tst-gettext.out
+@@ -155,7 +155,7 @@ $(objpfx)tst-gettext6.out: $(objpfx)tst-gettext.out
CPPFLAGS += -D'LOCALEDIR="$(localedir)"' \
-D'LOCALE_ALIAS_PATH="$(localedir)"'
diff --git a/poky/meta/recipes-core/glibc/glibc/0031-nativesdk-deprecate-libcrypt.patch b/poky/meta/recipes-core/glibc/glibc/0031-nativesdk-deprecate-libcrypt.patch
deleted file mode 100644
index a9132ed3d..000000000
--- a/poky/meta/recipes-core/glibc/glibc/0031-nativesdk-deprecate-libcrypt.patch
+++ /dev/null
@@ -1,419 +0,0 @@
-Background information:
-
-https://sourceware.org/ml/libc-alpha/2017-08/msg01257.html
-https://fedoraproject.org/wiki/Changes/Replace_glibc_libcrypt_with_libxcrypt
-
-Upstream-Status: Submitted [libc-alpha@sourceware.org]
-Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
-
-From: Zack Weinberg <zackw@panix.com>
-Subject: [PATCH] Deprecate libcrypt and don't build it by default
-
-Back in June, Björn Esser proposed to add OpenBSD-compatible bcrypt
-support to our implementation of crypt(3), and Zack Weinberg replied
-that it might actually make more sense to _remove_ libcrypt from
-glibc, freeing up libcrypt.so.1 and crypt.h to be provided by a
-separate project that could move faster. (For instance, libxcrypt:
-https://github.com/besser82/libxcrypt)
-
-This patch disables build and installation of libcrypt by default. It
-can be re-enabled with --enable-obsolete-crypt to configure. Unlike
-libnsl, we do *not* install a runtime shared library; that's left to
-the replacement. (Unlike the SunRPC situation, I think we can
-probably drop this code altogether in a release or two.)
-
-The function prototypes for crypt and encrypt are removed from
-unistd.h, and the function prototype for setkey is removed from
-stdlib.h; they do *not* come back with --enable-obsolete-crypt. This
-means glibc no longer provides the POSIX CRYPT option, and the macro
-_XOPEN_CRYPT is also removed from unistd.h to indicate that.
-(_SC_XOPEN_CRYPT is still defined, but sysconf(_SC_XOPEN_CRYPT) will
-return -1 at runtime.) These functions are also unconditionally
-removed from conform/data/{stdlib,unistd}.h-data.
-
- * posix/unistd.h (_XOPEN_CRYPT, crypt, encrypt): Don't declare.
- * stdlib/stdlib.h (setkey): Don't declare.
-
- * configure.ac (--enable-obsolete-crypt): New configure option.
- * configure: Regenerate.
- * config.make.in (build-obsolete-crypt): New makefile variable.
- * crypt/Banner: Delete file.
- * crypt/Makefile: Don't build anything unless
- $(build-obsolete-crypt) is 'yes'.
- * sysdeps/sparc/sparc32/sparcv9/multiarch/Makefile: Only add things
- to libcrypt-sysdep_routines when $(build-obsolete-crypt) is 'yes'.
- * sysdeps/sparc/sparc64/multiarch/Makefile: Likewise.
- * sysdeps/unix/sysv/linux/arm/Makefile: Likewise.
-
- * conform/Makefile: Only include libcrypt.a in linknamespace tests
- when $(build-obsolete-crypt) is 'yes'.
- * conform/data/stdlib.h-data (setkey): Don't expect.
- * conform/data/unistd.h-data (crypt, encrypt): Don't expect.
- * elf/Makefile: Only perform various tests of libcrypt.so/libcrypt.a
- when $(build-obsolete-crypt) is 'yes'.
- * elf/tst-linkall-static.c: Don't include crypt.h when USE_CRYPT
- is false.
----
- NEWS | 18 ++++++++++++++++++
- config.make.in | 1 +
- configure | 13 +++++++++++++
- configure.ac | 8 ++++++++
- conform/Makefile | 14 ++++++++++----
- conform/data/stdlib.h-data | 3 ---
- conform/data/unistd.h-data | 6 ------
- crypt/Makefile | 5 +++++
- elf/Makefile | 16 ++++++++++++----
- elf/tst-linkall-static.c | 2 ++
- posix/unistd.h | 16 ----------------
- stdlib/stdlib.h | 6 ------
- sysdeps/sparc/sparc32/sparcv9/multiarch/Makefile | 2 ++
- sysdeps/sparc/sparc64/multiarch/Makefile | 2 ++
- sysdeps/unix/sysv/linux/arm/Makefile | 2 ++
- 15 files changed, 75 insertions(+), 39 deletions(-)
-
-diff --git a/config.make.in b/config.make.in
-index 9e5e24b2c6..8fe610d04d 100644
---- a/config.make.in
-+++ b/config.make.in
-@@ -82,6 +82,7 @@ mach-interface-list = @mach_interface_list@
-
- experimental-malloc = @experimental_malloc@
-
-+build-obsolete-crypt = @build_obsolete_crypt@
- nss-crypt = @libc_cv_nss_crypt@
- static-nss-crypt = @libc_cv_static_nss_crypt@
-
-diff --git a/configure b/configure
-index 7a8bd3f817..46f6bd7f86 100755
---- a/configure
-+++ b/configure
-@@ -672,6 +672,7 @@ base_machine
- have_tunables
- build_pt_chown
- build_nscd
-+build_obsolete_crypt
- build_obsolete_nsl
- link_obsolete_rpc
- libc_cv_static_nss_crypt
-@@ -782,6 +783,7 @@ enable_experimental_malloc
- enable_nss_crypt
- enable_obsolete_rpc
- enable_obsolete_nsl
-+enable_obsolete_crypt
- enable_systemtap
- enable_build_nscd
- enable_nscd
-@@ -1453,6 +1455,7 @@ Optional Features:
- link-time usage
- --enable-obsolete-nsl build and install the obsolete libnsl library and
- depending NSS modules
-+ --enable-obsolete-crypt build and install the obsolete libcrypt library
- --enable-systemtap enable systemtap static probe points [default=no]
- --disable-build-nscd disable building and installing the nscd daemon
- --disable-nscd library functions will not contact the nscd daemon
-@@ -3632,6 +3635,16 @@ if test "$build_obsolete_nsl" = yes; then
-
- fi
-
-+# Check whether --enable-obsolete-crypt was given.
-+if test "${enable_obsolete_crypt+set}" = set; then :
-+ enableval=$enable_obsolete_crypt; build_obsolete_crypt=$enableval
-+else
-+ build_obsolete_crypt=no
-+fi
-+
-+
-+
-+
- # Check whether --enable-systemtap was given.
- if test "${enable_systemtap+set}" = set; then :
- enableval=$enable_systemtap; systemtap=$enableval
-diff --git a/configure.ac b/configure.ac
-index ca1282a6b3..0142353740 100644
---- a/configure.ac
-+++ b/configure.ac
-@@ -378,6 +378,14 @@ if test "$build_obsolete_nsl" = yes; then
- AC_DEFINE(LINK_OBSOLETE_NSL)
- fi
-
-+AC_ARG_ENABLE([obsolete-crypt],
-+ AC_HELP_STRING([--enable-obsolete-crypt],
-+ [build and install the obsolete libcrypt library]),
-+ [build_obsolete_crypt=$enableval],
-+ [build_obsolete_crypt=no])
-+AC_SUBST(build_obsolete_crypt)
-+
-+
- AC_ARG_ENABLE([systemtap],
- [AS_HELP_STRING([--enable-systemtap],
- [enable systemtap static probe points @<:@default=no@:>@])],
-diff --git a/conform/Makefile b/conform/Makefile
-index 864fdeca21..5ef474fb24 100644
---- a/conform/Makefile
-+++ b/conform/Makefile
-@@ -193,22 +193,28 @@ linknamespace-libs-thr = $(linknamespace-libs-isoc) \
- $(common-objpfx)rt/librt.a $(static-thread-library)
- linknamespace-libs-posix = $(linknamespace-libs-thr) \
- $(common-objpfx)dlfcn/libdl.a
--linknamespace-libs-xsi = $(linknamespace-libs-posix) \
-- $(common-objpfx)crypt/libcrypt.a
-+linknamespace-libs-xsi = $(linknamespace-libs-posix)
- linknamespace-libs-ISO = $(linknamespace-libs-isoc)
- linknamespace-libs-ISO99 = $(linknamespace-libs-isoc)
- linknamespace-libs-ISO11 = $(linknamespace-libs-isoc)
--linknamespace-libs-XPG4 = $(linknamespace-libs-isoc) \
-- $(common-objpfx)crypt/libcrypt.a
-+linknamespace-libs-XPG4 = $(linknamespace-libs-isoc)
- linknamespace-libs-XPG42 = $(linknamespace-libs-XPG4)
- linknamespace-libs-POSIX = $(linknamespace-libs-thr)
- linknamespace-libs-UNIX98 = $(linknamespace-libs-xsi)
- linknamespace-libs-XOPEN2K = $(linknamespace-libs-xsi)
- linknamespace-libs-POSIX2008 = $(linknamespace-libs-posix)
- linknamespace-libs-XOPEN2K8 = $(linknamespace-libs-xsi)
-+
-+ifeq ($(build-obsolete-crypt),yes)
-+linknamespace-libs-xsi += $(common-objpfx)crypt/libcrypt.a
-+linknamespace-libs-XPG4 += $(common-objpfx)crypt/libcrypt.a
-+endif
-+
- linknamespace-libs = $(foreach std,$(conformtest-standards),\
- $(linknamespace-libs-$(std)))
-
-+
-+
- $(linknamespace-symlist-stdlibs-tests): $(objpfx)symlist-stdlibs-%: \
- $(linknamespace-libs)
- LC_ALL=C $(READELF) -W -s $(linknamespace-libs-$*) > $@; \
-diff --git a/conform/data/stdlib.h-data b/conform/data/stdlib.h-data
-index d8fcccc2fb..6913828196 100644
---- a/conform/data/stdlib.h-data
-+++ b/conform/data/stdlib.h-data
-@@ -149,9 +149,6 @@ function {unsigned short int*} seed48 (unsigned short int[3])
- #if !defined ISO && !defined ISO99 && !defined ISO11 && !defined POSIX && !defined XPG4 && !defined XPG42 && !defined UNIX98
- function int setenv (const char*, const char*, int)
- #endif
--#if !defined ISO && !defined ISO99 && !defined ISO11 && !defined POSIX && !defined POSIX2008
--function void setkey (const char*)
--#endif
- #if !defined ISO && !defined ISO99 && !defined ISO11 && !defined XPG4 && !defined POSIX && !defined POSIX2008
- function {char*} setstate (char*)
- #endif
-diff --git a/conform/data/unistd.h-data b/conform/data/unistd.h-data
-index ddf4f25132..aa070528e8 100644
---- a/conform/data/unistd.h-data
-+++ b/conform/data/unistd.h-data
-@@ -437,9 +437,6 @@ function int chroot (const char*)
- function int chown (const char*, uid_t, gid_t)
- function int close (int)
- function size_t confstr (int, char*, size_t)
--#if !defined POSIX && !defined POSIX2008
--function {char*} crypt (const char*, const char*)
--#endif
- #if defined XPG4 || defined XPG42 || defined UNIX98
- function {char*} ctermid (char*)
- function {char*} cuserid (char*)
-@@ -449,9 +446,6 @@ allow cuserid
- #endif
- function int dup (int)
- function int dup2 (int, int)
--#if !defined POSIX && !defined POSIX2008
--function void encrypt (char[64], int)
--#endif
- function int execl (const char*, const char*, ...)
- function int execle (const char*, const char*, ...)
- function int execlp (const char*, const char*, ...)
-diff --git a/crypt/Makefile b/crypt/Makefile
-index 303800df73..024ec2c6ab 100644
---- a/crypt/Makefile
-+++ b/crypt/Makefile
-@@ -22,6 +22,8 @@ subdir := crypt
-
- include ../Makeconfig
-
-+ifeq ($(build-obsolete-crypt),yes)
-+
- headers := crypt.h
-
- extra-libs := libcrypt
-@@ -52,9 +54,11 @@ tests += md5test sha256test sha512test
- # machine over a minute.
- xtests = md5test-giant
- endif
-+endif
-
- include ../Rules
-
-+ifeq ($(build-obsolete-crypt),yes)
- ifneq ($(nss-crypt),yes)
- md5-routines := md5 $(filter md5%,$(libcrypt-sysdep_routines))
- sha256-routines := sha256 $(filter sha256%,$(libcrypt-sysdep_routines))
-@@ -71,3 +75,4 @@ $(addprefix $(objpfx),$(tests)): $(objpfx)libcrypt.so
- else
- $(addprefix $(objpfx),$(tests)): $(objpfx)libcrypt.a
- endif
-+endif
-diff --git a/elf/Makefile b/elf/Makefile
-index 2a432d8bee..366f7b80ec 100644
---- a/elf/Makefile
-+++ b/elf/Makefile
-@@ -385,15 +385,19 @@ $(objpfx)tst-_dl_addr_inside_object: $(objpfx)dl-addr-obj.os
- CFLAGS-tst-_dl_addr_inside_object.c += $(PIE-ccflag)
- endif
-
--# By default tst-linkall-static should try to use crypt routines to test
--# static libcrypt use.
--CFLAGS-tst-linkall-static.c += -DUSE_CRYPT=1
-+ifeq ($(build-obsolete-crypt),yes)
-+# If the libcrypt library is being built, tst-linkall-static should
-+# try to use crypt routines to test static libcrypt use.
-+CFLAGS-tst-linkall-static.c = -DUSE_CRYPT=1
- # However, if we are using NSS crypto and we don't have a static
- # library, then we exclude the use of crypt functions in the test.
- # We similarly exclude libcrypt.a from the static link (see below).
- ifeq (yesno,$(nss-crypt)$(static-nss-crypt))
- CFLAGS-tst-linkall-static.c += -UUSE_CRYPT -DUSE_CRYPT=0
- endif
-+else
-+CFLAGS-tst-linkall-static.c = -DUSE_CRYPT=0
-+endif
-
- include ../Rules
-
-@@ -1113,8 +1117,10 @@ localplt-built-dso := $(addprefix $(common-objpfx),\
- rt/librt.so \
- dlfcn/libdl.so \
- resolv/libresolv.so \
-- crypt/libcrypt.so \
- )
-+ifeq ($(build-obsolete-crypt),yes)
-+localplt-built-dso += $(addprefix $(common-objpfx), crypt/libcrypt.so)
-+endif
- ifeq ($(build-mathvec),yes)
- localplt-built-dso += $(addprefix $(common-objpfx), mathvec/libmvec.so)
- endif
-@@ -1395,6 +1401,7 @@ $(objpfx)tst-linkall-static: \
- $(common-objpfx)resolv/libanl.a \
- $(static-thread-library)
-
-+ifeq ($(build-obsolete-crypt),yes)
- # If we are using NSS crypto and we have the ability to link statically
- # then we include libcrypt.a, otherwise we leave out libcrypt.a and
- # link as much as we can into the tst-linkall-static test. This assumes
-@@ -1410,6 +1417,7 @@ ifeq (no,$(nss-crypt))
- $(objpfx)tst-linkall-static: \
- $(common-objpfx)crypt/libcrypt.a
- endif
-+endif
-
- # The application depends on the DSO, and the DSO loads the plugin.
- # The plugin also depends on the DSO. This creates the circular
-diff --git a/elf/tst-linkall-static.c b/elf/tst-linkall-static.c
-index e8df38f74e..0ffae7c723 100644
---- a/elf/tst-linkall-static.c
-+++ b/elf/tst-linkall-static.c
-@@ -18,7 +18,9 @@
-
- #include <math.h>
- #include <pthread.h>
-+#if USE_CRYPT
- #include <crypt.h>
-+#endif
- #include <resolv.h>
- #include <dlfcn.h>
- #include <utmp.h>
-diff --git a/posix/unistd.h b/posix/unistd.h
-index 4d149f9945..e75ce4d4ec 100644
---- a/posix/unistd.h
-+++ b/posix/unistd.h
-@@ -107,9 +107,6 @@ __BEGIN_DECLS
- /* The X/Open Unix extensions are available. */
- #define _XOPEN_UNIX 1
-
--/* Encryption is present. */
--#define _XOPEN_CRYPT 1
--
- /* The enhanced internationalization capabilities according to XPG4.2
- are present. */
- #define _XOPEN_ENH_I18N 1
-@@ -1118,20 +1115,7 @@ ssize_t copy_file_range (int __infd, __off64_t *__pinoff,
- extern int fdatasync (int __fildes);
- #endif /* Use POSIX199309 */
-
--
--/* XPG4.2 specifies that prototypes for the encryption functions must
-- be defined here. */
- #ifdef __USE_XOPEN
--/* Encrypt at most 8 characters from KEY using salt to perturb DES. */
--extern char *crypt (const char *__key, const char *__salt)
-- __THROW __nonnull ((1, 2));
--
--/* Encrypt data in BLOCK in place if EDFLAG is zero; otherwise decrypt
-- block in place. */
--extern void encrypt (char *__glibc_block, int __edflag)
-- __THROW __nonnull ((1));
--
--
- /* Swab pairs bytes in the first N bytes of the area pointed to by
- FROM and copy the result to TO. The value of TO must not be in the
- range [FROM - N + 1, FROM - 1]. If N is odd the first byte in FROM
-diff --git a/stdlib/stdlib.h b/stdlib/stdlib.h
-index 6b1ead31e0..8e23e93557 100644
---- a/stdlib/stdlib.h
-+++ b/stdlib/stdlib.h
-@@ -958,12 +958,6 @@ extern int getsubopt (char **__restrict __optionp,
- #endif
-
-
--#ifdef __USE_XOPEN
--/* Setup DES tables according KEY. */
--extern void setkey (const char *__key) __THROW __nonnull ((1));
--#endif
--
--
- /* X/Open pseudo terminal handling. */
-
- #ifdef __USE_XOPEN2KXSI
-diff --git a/sysdeps/sparc/sparc32/sparcv9/multiarch/Makefile b/sysdeps/sparc/sparc32/sparcv9/multiarch/Makefile
-index a6d08f3a00..d8b8297fb0 100644
---- a/sysdeps/sparc/sparc32/sparcv9/multiarch/Makefile
-+++ b/sysdeps/sparc/sparc32/sparcv9/multiarch/Makefile
-@@ -1,6 +1,8 @@
- ifeq ($(subdir),crypt)
-+ifeq ($(build-obsolete-crypt),yes)
- libcrypt-sysdep_routines += md5-crop sha256-crop sha512-crop
- endif
-+endif
-
- ifeq ($(subdir),locale)
- localedef-aux += md5-crop
-diff --git a/sysdeps/sparc/sparc64/multiarch/Makefile b/sysdeps/sparc/sparc64/multiarch/Makefile
-index eaf758e7aa..0198f9886f 100644
---- a/sysdeps/sparc/sparc64/multiarch/Makefile
-+++ b/sysdeps/sparc/sparc64/multiarch/Makefile
-@@ -1,6 +1,8 @@
- ifeq ($(subdir),crypt)
-+ifeq ($(build-obsolete-crypt),yes)
- libcrypt-sysdep_routines += md5-crop sha256-crop sha512-crop
- endif
-+endif
-
- ifeq ($(subdir),locale)
- localedef-aux += md5-crop
-diff --git a/sysdeps/unix/sysv/linux/arm/Makefile b/sysdeps/unix/sysv/linux/arm/Makefile
-index 4adc35de04..6cab4f3a31 100644
---- a/sysdeps/unix/sysv/linux/arm/Makefile
-+++ b/sysdeps/unix/sysv/linux/arm/Makefile
-@@ -19,8 +19,10 @@ endif
- # Add a syscall function to each library that needs one.
-
- ifeq ($(subdir),crypt)
-+ifeq ($(build-obsolete-crypt),yes)
- libcrypt-sysdep_routines += libc-do-syscall
- endif
-+endif
-
- ifeq ($(subdir),rt)
- librt-sysdep_routines += libc-do-syscall
---
-2.16.0
-
diff --git a/poky/meta/recipes-core/glibc/glibc/0031-sysdeps-ieee754-prevent-maybe-uninitialized-errors-w.patch b/poky/meta/recipes-core/glibc/glibc/0031-sysdeps-ieee754-prevent-maybe-uninitialized-errors-w.patch
new file mode 100644
index 000000000..61f55d4f8
--- /dev/null
+++ b/poky/meta/recipes-core/glibc/glibc/0031-sysdeps-ieee754-prevent-maybe-uninitialized-errors-w.patch
@@ -0,0 +1,258 @@
+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/poky/meta/recipes-core/glibc/glibc/0032-sysdeps-ieee754-soft-fp-ignore-maybe-uninitialized-w.patch b/poky/meta/recipes-core/glibc/glibc/0032-sysdeps-ieee754-soft-fp-ignore-maybe-uninitialized-w.patch
new file mode 100644
index 000000000..99cd2509e
--- /dev/null
+++ b/poky/meta/recipes-core/glibc/glibc/0032-sysdeps-ieee754-soft-fp-ignore-maybe-uninitialized-w.patch
@@ -0,0 +1,100 @@
+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)
diff --git a/poky/meta/recipes-core/glibc/glibc/0033-locale-prevent-maybe-uninitialized-errors-with-Os-BZ.patch b/poky/meta/recipes-core/glibc/glibc/0033-locale-prevent-maybe-uninitialized-errors-with-Os-BZ.patch
new file mode 100644
index 000000000..31058ca91
--- /dev/null
+++ b/poky/meta/recipes-core/glibc/glibc/0033-locale-prevent-maybe-uninitialized-errors-with-Os-BZ.patch
@@ -0,0 +1,68 @@
+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
+ #19444]
+
+Fixes following error when building for aarch64 with -Os:
+| In file included from strcoll_l.c:43:
+| strcoll_l.c: In function '__strcoll_l':
+| ../locale/weight.h:31:26: error: 'seq2.back_us' may be used uninitialized in this function [-Werror=maybe-uninitialized]
+| int_fast32_t i = table[*(*cpp)++];
+| ^~~~~~~~~
+| strcoll_l.c:304:18: note: 'seq2.back_us' was declared here
+| coll_seq seq1, seq2;
+| ^~~~
+| In file included from strcoll_l.c:43:
+| ../locale/weight.h:31:26: error: 'seq1.back_us' may be used uninitialized in this function [-Werror=maybe-uninitialized]
+| int_fast32_t i = table[*(*cpp)++];
+| ^~~~~~~~~
+| strcoll_l.c:304:12: note: 'seq1.back_us' was declared here
+| coll_seq seq1, seq2;
+| ^~~~
+
+ Partial fix for [BZ #23716]
+ * 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]
+
+Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
+---
+ ChangeLog | 4 ++++
+ locale/weight.h | 7 +++++++
+ 2 files changed, 11 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
++++ b/locale/weight.h
+@@ -28,7 +28,14 @@ findidx (const int32_t *table,
+ const unsigned char *extra,
+ const unsigned char **cpp, size_t len)
+ {
++ /* With GCC 8 when compiling with -Os the compiler warns that
++ seq1.back_us and seq2.back_us might be used uninitialized.
++ This uninitialized use is impossible for the same reason
++ as described in comments in locale/weightwc.h. */
++ DIAG_PUSH_NEEDS_COMMENT;
++ DIAG_IGNORE_Os_NEEDS_COMMENT (8, "-Wmaybe-uninitialized");
+ int_fast32_t i = table[*(*cpp)++];
++ DIAG_POP_NEEDS_COMMENT;
+ const unsigned char *cp;
+ const unsigned char *usrc;
+
diff --git a/poky/meta/recipes-core/glibc/glibc/0034-inject-file-assembly-directives.patch b/poky/meta/recipes-core/glibc/glibc/0034-inject-file-assembly-directives.patch
new file mode 100644
index 000000000..55eba2d43
--- /dev/null
+++ b/poky/meta/recipes-core/glibc/glibc/0034-inject-file-assembly-directives.patch
@@ -0,0 +1,272 @@
+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
+debugging and ensure references between the different object files its
+linking remain clear.
+
+We can avoid this by injecting a file header into the assembler files
+ahead of time, choosing a filename which does not contain build system
+paths.
+
+This is a bit of a workaround/hack but does significantly reduce the
+build system references in target binaries for the non-IA architectures
+which use .S files.
+
+RP
+2018/10/3
+
+Upstream-Status: Pending
+
+diff --git a/csu/abi-note.S b/csu/abi-note.S
+index 5d0ca7803d..8ce41581b1 100644
+--- a/csu/abi-note.S
++++ b/csu/abi-note.S
+@@ -56,6 +56,8 @@ offset length contents
+ #include <config.h>
+ #include <abi-tag.h> /* OS-specific ABI tag value */
+
++ .file "abi-note.S"
++
+ /* The linker (GNU ld 2.8 and later) recognizes an allocated section whose
+ name begins with `.note' and creates a PT_NOTE program header entry
+ pointing at it. */
+diff --git a/sysdeps/aarch64/crti.S b/sysdeps/aarch64/crti.S
+index 2b213758b2..736f33e314 100644
+--- a/sysdeps/aarch64/crti.S
++++ b/sysdeps/aarch64/crti.S
+@@ -50,6 +50,8 @@
+ # define PREINIT_FUNCTION_WEAK 1
+ #endif
+
++ .file "crti.S"
++
+ #if PREINIT_FUNCTION_WEAK
+ weak_extern (PREINIT_FUNCTION)
+ #else
+diff --git a/sysdeps/aarch64/crtn.S b/sysdeps/aarch64/crtn.S
+index d72300af80..cb249bf3ca 100644
+--- a/sysdeps/aarch64/crtn.S
++++ b/sysdeps/aarch64/crtn.S
+@@ -37,6 +37,8 @@
+ /* crtn.S puts function epilogues in the .init and .fini sections
+ corresponding to the prologues in crti.S. */
+
++ .file "crtn.S"
++
+ .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
++++ b/sysdeps/aarch64/dl-tlsdesc.S
+@@ -22,6 +22,8 @@
+ #include <tls.h>
+ #include "tlsdesc.h"
+
++ .file "dl-tlsdesc.S"
++
+ #define NSAVEDQREGPAIRS 16
+ #define SAVE_Q_REGISTERS \
+ stp q0, q1, [sp, #-32*NSAVEDQREGPAIRS]!; \
+diff --git a/sysdeps/aarch64/dl-trampoline.S b/sysdeps/aarch64/dl-trampoline.S
+index a86d0722d4..92edab1d01 100644
+--- a/sysdeps/aarch64/dl-trampoline.S
++++ b/sysdeps/aarch64/dl-trampoline.S
+@@ -21,6 +21,8 @@
+
+ #include "dl-link.h"
+
++ .file "dl-trampoline.S"
++
+ #define ip0 x16
+ #define ip0l PTR_REG (16)
+ #define ip1 x17
+diff --git a/sysdeps/arm/abi-note.S b/sysdeps/arm/abi-note.S
+index 07bd4c4619..7213b16f27 100644
+--- a/sysdeps/arm/abi-note.S
++++ b/sysdeps/arm/abi-note.S
+@@ -1,3 +1,5 @@
++ .file "abi-note.S"
++
+ /* Tag_ABI_align8_preserved: This code preserves 8-byte
+ alignment in any callee. */
+ .eabi_attribute 25, 1
+diff --git a/sysdeps/arm/crti.S b/sysdeps/arm/crti.S
+index a1424d0333..bca1dab256 100644
+--- a/sysdeps/arm/crti.S
++++ b/sysdeps/arm/crti.S
+@@ -57,6 +57,8 @@
+ .hidden PREINIT_FUNCTION
+ #endif
+
++ .file "crti.S"
++
+ #if PREINIT_FUNCTION_WEAK
+ .p2align 2
+ .type call_weak_fn, %function
+diff --git a/sysdeps/arm/crtn.S b/sysdeps/arm/crtn.S
+index 26027693ce..65a0502826 100644
+--- a/sysdeps/arm/crtn.S
++++ b/sysdeps/arm/crtn.S
+@@ -37,6 +37,8 @@
+ #define NO_THUMB
+ #include <sysdep.h>
+
++ .file "crtn.S"
++
+ /* crtn.S puts function epilogues in the .init and .fini sections
+ corresponding to the prologues in crti.S. */
+
+diff --git a/sysdeps/arm/dl-tlsdesc.S b/sysdeps/arm/dl-tlsdesc.S
+index 056e17d52d..a98c68dfb9 100644
+--- a/sysdeps/arm/dl-tlsdesc.S
++++ b/sysdeps/arm/dl-tlsdesc.S
+@@ -21,6 +21,8 @@
+ #include <tls.h>
+ #include "tlsdesc.h"
+
++ .file "dl-tlsdesc.S"
++
+ .text
+ @ emit debug information with cfi
+ @ use arm-specific pseudos for unwinding itself
+diff --git a/sysdeps/arm/dl-trampoline.S b/sysdeps/arm/dl-trampoline.S
+index c731b01286..4b37b25344 100644
+--- a/sysdeps/arm/dl-trampoline.S
++++ b/sysdeps/arm/dl-trampoline.S
+@@ -21,6 +21,8 @@
+ #include <sysdep.h>
+ #include <libc-symbols.h>
+
++ .file "dl-trampoline.S"
++
+ .text
+ .globl _dl_runtime_resolve
+ .type _dl_runtime_resolve, #function
+diff --git a/sysdeps/arm/start.S b/sysdeps/arm/start.S
+index adef090717..d22e4128e0 100644
+--- a/sysdeps/arm/start.S
++++ b/sysdeps/arm/start.S
+@@ -57,6 +57,8 @@
+ NULL
+ */
+
++ .file "start.S"
++
+ /* 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
++++ b/sysdeps/mips/start.S
+@@ -38,6 +38,8 @@
+ #include <sgidefs.h>
+ #include <sys/asm.h>
+
++ .file "start.S"
++
+ #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"
++
+ #include <brk.S>
+diff --git a/sysdeps/powerpc/powerpc32/start.S b/sysdeps/powerpc/powerpc32/start.S
+index 5c10a22f8a..2b52627f27 100644
+--- a/sysdeps/powerpc/powerpc32/start.S
++++ b/sysdeps/powerpc/powerpc32/start.S
+@@ -35,6 +35,8 @@
+
+ #include <sysdep.h>
+
++ .file "start.S"
++
+ /* 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/powerpc64/start.S b/sysdeps/powerpc/powerpc64/start.S
+index bd7189310c..2e22b8472d 100644
+--- a/sysdeps/powerpc/powerpc64/start.S
++++ b/sysdeps/powerpc/powerpc64/start.S
+@@ -35,6 +35,8 @@
+
+ #include <sysdep.h>
+
++ .file "start.S"
++
+ /* 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
+@@ -18,6 +18,8 @@
+
+ #include <sysdep.h>
+
++ .file "dl-start.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/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
++++ b/sysdeps/unix/sysv/linux/arm/libc-do-syscall.S
+@@ -27,6 +27,8 @@
+ ARM unwind tables for register to register moves, the actual opcodes
+ are not defined. */
+
++ .file "libc-do-syscall.S"
++
+ #if defined(__thumb__)
+ .thumb
+ .syntax unified
diff --git a/poky/meta/recipes-core/glibc/glibc/CVE-2017-18269.patch b/poky/meta/recipes-core/glibc/glibc/CVE-2017-18269.patch
deleted file mode 100644
index d873c51e6..000000000
--- a/poky/meta/recipes-core/glibc/glibc/CVE-2017-18269.patch
+++ /dev/null
@@ -1,178 +0,0 @@
-From cd66c0e584c6d692bc8347b5e72723d02b8a8ada Mon Sep 17 00:00:00 2001
-From: Andrew Senkevich <andrew.n.senkevich@gmail.com>
-Date: Fri, 23 Mar 2018 16:19:45 +0100
-Subject: [PATCH] Fix i386 memmove issue (bug 22644).
-
- [BZ #22644]
- * sysdeps/i386/i686/multiarch/memcpy-sse2-unaligned.S: Fixed
- branch conditions.
- * string/test-memmove.c (do_test2): New testcase.
-
-Upstream-Status: Backport
-CVE: CVE-2017-18269
-Signed-off-by: Zhixiong Chi <zhixiong.chi@windriver.com>
----
- ChangeLog | 8 +++
- string/test-memmove.c | 58 ++++++++++++++++++++++
- .../i386/i686/multiarch/memcpy-sse2-unaligned.S | 12 ++---
- 3 files changed, 72 insertions(+), 6 deletions(-)
-
-diff --git a/ChangeLog b/ChangeLog
-index 18ed09e..afdb766 100644
---- a/ChangeLog
-+++ b/ChangeLog
-@@ -1,3 +1,11 @@
-+2018-03-23 Andrew Senkevich <andrew.senkevich@intel.com>
-+ Max Horn <max@quendi.de>
-+
-+ [BZ #22644]
-+ * sysdeps/i386/i686/multiarch/memcpy-sse2-unaligned.S: Fixed
-+ branch conditions.
-+ * string/test-memmove.c (do_test2): New testcase.
-+
- 2018-02-22 Andrew Waterman <andrew@sifive.com>
-
- [BZ # 22884]
-diff --git a/string/test-memmove.c b/string/test-memmove.c
-index edc7a4c..64e3651 100644
---- a/string/test-memmove.c
-+++ b/string/test-memmove.c
-@@ -24,6 +24,7 @@
- # define TEST_NAME "memmove"
- #endif
- #include "test-string.h"
-+#include <support/test-driver.h>
-
- char *simple_memmove (char *, const char *, size_t);
-
-@@ -245,6 +246,60 @@ do_random_tests (void)
- }
- }
-
-+static void
-+do_test2 (void)
-+{
-+ size_t size = 0x20000000;
-+ uint32_t * large_buf;
-+
-+ large_buf = mmap ((void*) 0x70000000, size, PROT_READ | PROT_WRITE,
-+ MAP_PRIVATE | MAP_ANON, -1, 0);
-+
-+ if (large_buf == MAP_FAILED)
-+ error (EXIT_UNSUPPORTED, errno, "Large mmap failed");
-+
-+ if ((uintptr_t) large_buf > 0x80000000 - 128
-+ || 0x80000000 - (uintptr_t) large_buf > 0x20000000)
-+ {
-+ error (0, 0, "Large mmap allocated improperly");
-+ ret = EXIT_UNSUPPORTED;
-+ munmap ((void *) large_buf, size);
-+ return;
-+ }
-+
-+ size_t bytes_move = 0x80000000 - (uintptr_t) large_buf;
-+ size_t arr_size = bytes_move / sizeof (uint32_t);
-+ size_t i;
-+
-+ FOR_EACH_IMPL (impl, 0)
-+ {
-+ for (i = 0; i < arr_size; i++)
-+ large_buf[i] = (uint32_t) i;
-+
-+ uint32_t * dst = &large_buf[33];
-+
-+#ifdef TEST_BCOPY
-+ CALL (impl, (char *) large_buf, (char *) dst, bytes_move);
-+#else
-+ CALL (impl, (char *) dst, (char *) large_buf, bytes_move);
-+#endif
-+
-+ for (i = 0; i < arr_size; i++)
-+ {
-+ if (dst[i] != (uint32_t) i)
-+ {
-+ error (0, 0,
-+ "Wrong result in function %s dst \"%p\" src \"%p\" offset \"%zd\"",
-+ impl->name, dst, large_buf, i);
-+ ret = 1;
-+ break;
-+ }
-+ }
-+ }
-+
-+ munmap ((void *) large_buf, size);
-+}
-+
- int
- test_main (void)
- {
-@@ -284,6 +339,9 @@ test_main (void)
- }
-
- do_random_tests ();
-+
-+ do_test2 ();
-+
- return ret;
- }
-
-diff --git a/sysdeps/i386/i686/multiarch/memcpy-sse2-unaligned.S b/sysdeps/i386/i686/multiarch/memcpy-sse2-unaligned.S
-index 9c3bbe7..9aa17de 100644
---- a/sysdeps/i386/i686/multiarch/memcpy-sse2-unaligned.S
-+++ b/sysdeps/i386/i686/multiarch/memcpy-sse2-unaligned.S
-@@ -72,7 +72,7 @@ ENTRY (MEMCPY)
- cmp %edx, %eax
-
- # ifdef USE_AS_MEMMOVE
-- jg L(check_forward)
-+ ja L(check_forward)
-
- L(mm_len_0_or_more_backward):
- /* Now do checks for lengths. We do [0..16], [16..32], [32..64], [64..128]
-@@ -81,7 +81,7 @@ L(mm_len_0_or_more_backward):
- jbe L(mm_len_0_16_bytes_backward)
-
- cmpl $32, %ecx
-- jg L(mm_len_32_or_more_backward)
-+ ja L(mm_len_32_or_more_backward)
-
- /* Copy [0..32] and return. */
- movdqu (%eax), %xmm0
-@@ -92,7 +92,7 @@ L(mm_len_0_or_more_backward):
-
- L(mm_len_32_or_more_backward):
- cmpl $64, %ecx
-- jg L(mm_len_64_or_more_backward)
-+ ja L(mm_len_64_or_more_backward)
-
- /* Copy [0..64] and return. */
- movdqu (%eax), %xmm0
-@@ -107,7 +107,7 @@ L(mm_len_32_or_more_backward):
-
- L(mm_len_64_or_more_backward):
- cmpl $128, %ecx
-- jg L(mm_len_128_or_more_backward)
-+ ja L(mm_len_128_or_more_backward)
-
- /* Copy [0..128] and return. */
- movdqu (%eax), %xmm0
-@@ -132,7 +132,7 @@ L(mm_len_128_or_more_backward):
- add %ecx, %eax
- cmp %edx, %eax
- movl SRC(%esp), %eax
-- jle L(forward)
-+ jbe L(forward)
- PUSH (%esi)
- PUSH (%edi)
- PUSH (%ebx)
-@@ -269,7 +269,7 @@ L(check_forward):
- add %edx, %ecx
- cmp %eax, %ecx
- movl LEN(%esp), %ecx
-- jle L(forward)
-+ jbe L(forward)
-
- /* Now do checks for lengths. We do [0..16], [0..32], [0..64], [0..128]
- separately. */
---
-2.9.3
diff --git a/poky/meta/recipes-core/glibc/glibc/CVE-2018-11236.patch b/poky/meta/recipes-core/glibc/glibc/CVE-2018-11236.patch
deleted file mode 100644
index e2bb40b0d..000000000
--- a/poky/meta/recipes-core/glibc/glibc/CVE-2018-11236.patch
+++ /dev/null
@@ -1,164 +0,0 @@
-From 5460617d1567657621107d895ee2dd83bc1f88f2 Mon Sep 17 00:00:00 2001
-From: Paul Pluzhnikov <ppluzhnikov@google.com>
-Date: Tue, 8 May 2018 18:12:41 -0700
-Subject: [PATCH] Fix BZ 22786: integer addition overflow may cause stack
- buffer overflow when realpath() input length is close to SSIZE_MAX.
-
-2018-05-09 Paul Pluzhnikov <ppluzhnikov@google.com>
-
- [BZ #22786]
- * stdlib/canonicalize.c (__realpath): Fix overflow in path length
- computation.
- * stdlib/Makefile (test-bz22786): New test.
- * stdlib/test-bz22786.c: New test.
-
-CVE: CVE-2018-11236
-Upstream-Status: Backport
-Signed-off-by: Zhixiong Chi <zhixiong.chi@windriver.com>
----
- ChangeLog | 8 +++++
- stdlib/Makefile | 2 +-
- stdlib/canonicalize.c | 2 +-
- stdlib/test-bz22786.c | 90 +++++++++++++++++++++++++++++++++++++++++++++++++++
- 4 files changed, 100 insertions(+), 2 deletions(-)
- create mode 100644 stdlib/test-bz22786.c
-
-diff --git a/ChangeLog b/ChangeLog
---- a/ChangeLog
-+++ b/ChangeLog
-@@ -1,3 +1,11 @@
-+2018-05-09 Paul Pluzhnikov <ppluzhnikov@google.com>
-+
-+ [BZ #22786]
-+ * stdlib/canonicalize.c (__realpath): Fix overflow in path length
-+ computation.
-+ * stdlib/Makefile (test-bz22786): New test.
-+ * stdlib/test-bz22786.c: New test.
-+
- 2018-03-23 Andrew Senkevich <andrew.senkevich@intel.com>
- Max Horn <max@quendi.de>
-
-diff --git a/stdlib/Makefile b/stdlib/Makefile
-index af1643c..1ddb1f9 100644
---- a/stdlib/Makefile
-+++ b/stdlib/Makefile
-@@ -84,7 +84,7 @@ tests := tst-strtol tst-strtod testmb testrand testsort testdiv \
- tst-cxa_atexit tst-on_exit test-atexit-race \
- test-at_quick_exit-race test-cxa_atexit-race \
- test-on_exit-race test-dlclose-exit-race \
-- tst-makecontext-align
-+ tst-makecontext-align test-bz22786
-
- tests-internal := tst-strtod1i tst-strtod3 tst-strtod4 tst-strtod5i \
- tst-tls-atexit tst-tls-atexit-nodelete
-diff --git a/stdlib/canonicalize.c b/stdlib/canonicalize.c
-index 4135f3f..390fb43 100644
---- a/stdlib/canonicalize.c
-+++ b/stdlib/canonicalize.c
-@@ -181,7 +181,7 @@ __realpath (const char *name, char *resolved)
- extra_buf = __alloca (path_max);
-
- len = strlen (end);
-- if ((long int) (n + len) >= path_max)
-+ if (path_max - n <= len)
- {
- __set_errno (ENAMETOOLONG);
- goto error;
-diff --git a/stdlib/test-bz22786.c b/stdlib/test-bz22786.c
-new file mode 100644
-index 0000000..e7837f9
---- /dev/null
-+++ b/stdlib/test-bz22786.c
-@@ -0,0 +1,90 @@
-+/* Bug 22786: test for buffer overflow in realpath.
-+ Copyright (C) 2018 Free Software Foundation, Inc.
-+ This file is part of the GNU C Library.
-+
-+ The GNU C Library is free software; you can redistribute it and/or
-+ modify it under the terms of the GNU Lesser General Public
-+ License as published by the Free Software Foundation; either
-+ version 2.1 of the License, or (at your option) any later version.
-+
-+ The GNU C Library is distributed in the hope that it will be useful,
-+ but WITHOUT ANY WARRANTY; without even the implied warranty of
-+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-+ Lesser General Public License for more details.
-+
-+ You should have received a copy of the GNU Lesser General Public
-+ License along with the GNU C Library; if not, see
-+ <http://www.gnu.org/licenses/>. */
-+
-+/* This file must be run from within a directory called "stdlib". */
-+
-+#include <errno.h>
-+#include <limits.h>
-+#include <stdio.h>
-+#include <stdlib.h>
-+#include <string.h>
-+#include <unistd.h>
-+#include <sys/stat.h>
-+#include <sys/types.h>
-+#include <support/test-driver.h>
-+#include <libc-diag.h>
-+
-+static int
-+do_test (void)
-+{
-+ const char dir[] = "bz22786";
-+ const char lnk[] = "bz22786/symlink";
-+
-+ rmdir (dir);
-+ if (mkdir (dir, 0755) != 0 && errno != EEXIST)
-+ {
-+ printf ("mkdir %s: %m\n", dir);
-+ return EXIT_FAILURE;
-+ }
-+ if (symlink (".", lnk) != 0 && errno != EEXIST)
-+ {
-+ printf ("symlink (%s, %s): %m\n", dir, lnk);
-+ return EXIT_FAILURE;
-+ }
-+
-+ const size_t path_len = (size_t) INT_MAX + 1;
-+
-+ DIAG_PUSH_NEEDS_COMMENT;
-+#if __GNUC_PREREQ (7, 0)
-+ /* GCC 7 warns about too-large allocations; here we need such
-+ allocation to succeed for the test to work. */
-+ DIAG_IGNORE_NEEDS_COMMENT (7, "-Walloc-size-larger-than=");
-+#endif
-+ char *path = malloc (path_len);
-+ DIAG_POP_NEEDS_COMMENT;
-+
-+ if (path == NULL)
-+ {
-+ printf ("malloc (%zu): %m\n", path_len);
-+ return EXIT_UNSUPPORTED;
-+ }
-+
-+ /* Construct very long path = "bz22786/symlink/aaaa....." */
-+ char *p = mempcpy (path, lnk, sizeof (lnk) - 1);
-+ *(p++) = '/';
-+ memset (p, 'a', path_len - (path - p) - 2);
-+ p[path_len - (path - p) - 1] = '\0';
-+
-+ /* This call crashes before the fix for bz22786 on 32-bit platforms. */
-+ p = realpath (path, NULL);
-+
-+ if (p != NULL || errno != ENAMETOOLONG)
-+ {
-+ printf ("realpath: %s (%m)", p);
-+ return EXIT_FAILURE;
-+ }
-+
-+ /* Cleanup. */
-+ unlink (lnk);
-+ rmdir (dir);
-+
-+ return 0;
-+}
-+
-+#define TEST_FUNCTION do_test
-+#include <support/test-driver.c>
---
-2.9.3
diff --git a/poky/meta/recipes-core/glibc/glibc/CVE-2018-11237.patch b/poky/meta/recipes-core/glibc/glibc/CVE-2018-11237.patch
deleted file mode 100644
index 632aa565e..000000000
--- a/poky/meta/recipes-core/glibc/glibc/CVE-2018-11237.patch
+++ /dev/null
@@ -1,82 +0,0 @@
-From 9aaaab7c6e4176e61c59b0a63c6ba906d875dc0e Mon Sep 17 00:00:00 2001
-From: Andreas Schwab <schwab@suse.de>
-Date: Tue, 22 May 2018 10:37:59 +0200
-Subject: [PATCH] Don't write beyond destination in
- __mempcpy_avx512_no_vzeroupper (bug 23196)
-
-When compiled as mempcpy, the return value is the end of the destination
-buffer, thus it cannot be used to refer to the start of it.
-
-2018-05-23 Andreas Schwab <schwab@suse.de>
-
- [BZ #23196]
- CVE-2018-11237
- * sysdeps/x86_64/multiarch/memmove-avx512-no-vzeroupper.S
- (L(preloop_large)): Save initial destination pointer in %r11 and
- use it instead of %rax after the loop.
- * string/test-mempcpy.c (MIN_PAGE_SIZE): Define.
-
-CVE: CVE-2018-11237
-Upstream-Status: Backport
-Signed-off-by: Zheng Ruoqin <zhengrq.fnst@cn.fujitsu.com>
----
- ChangeLog | 9 +++++++++
- string/test-mempcpy.c | 1 +
- sysdeps/x86_64/multiarch/memmove-avx512-no-vzeroupper.S | 5 +++--
- 3 files changed, 13 insertions(+), 2 deletions(-)
-
-diff --git a/ChangeLog b/ChangeLog
-index fa0a07c..bc09dec 100644
---- a/ChangeLog
-+++ b/ChangeLog
-@@ -1,3 +1,12 @@
-+2018-05-23 Andreas Schwab <schwab@suse.de>
-+
-+ [BZ #23196]
-+ CVE-2018-11237
-+ * sysdeps/x86_64/multiarch/memmove-avx512-no-vzeroupper.S
-+ (L(preloop_large)): Save initial destination pointer in %r11 and
-+ use it instead of %rax after the loop.
-+ * string/test-mempcpy.c (MIN_PAGE_SIZE): Define.
-+
- 2018-05-09 Paul Pluzhnikov <ppluzhnikov@google.com>
-
- [BZ #22786]
-diff --git a/string/test-mempcpy.c b/string/test-mempcpy.c
-index c08fba8..d98ecdd 100644
---- a/string/test-mempcpy.c
-+++ b/string/test-mempcpy.c
-@@ -18,6 +18,7 @@
- <http://www.gnu.org/licenses/>. */
-
- #define MEMCPY_RESULT(dst, len) (dst) + (len)
-+#define MIN_PAGE_SIZE 131072
- #define TEST_MAIN
- #define TEST_NAME "mempcpy"
- #include "test-string.h"
-diff --git a/sysdeps/x86_64/multiarch/memmove-avx512-no-vzeroupper.S b/sysdeps/x86_64/multiarch/memmove-avx512-no-vzeroupper.S
-index 23c0f7a..a55cf6f 100644
---- a/sysdeps/x86_64/multiarch/memmove-avx512-no-vzeroupper.S
-+++ b/sysdeps/x86_64/multiarch/memmove-avx512-no-vzeroupper.S
-@@ -335,6 +335,7 @@ L(preloop_large):
- ja L(preloop_large_bkw)
- vmovups (%rsi), %zmm4
- vmovups 0x40(%rsi), %zmm5
-+ mov %rdi, %r11
-
- /* Align destination for access with non-temporal stores in the loop. */
- mov %rdi, %r8
-@@ -366,8 +367,8 @@ L(gobble_256bytes_nt_loop):
- cmp $256, %rdx
- ja L(gobble_256bytes_nt_loop)
- sfence
-- vmovups %zmm4, (%rax)
-- vmovups %zmm5, 0x40(%rax)
-+ vmovups %zmm4, (%r11)
-+ vmovups %zmm5, 0x40(%r11)
- jmp L(check)
-
- L(preloop_large_bkw):
---
-2.7.4
-
diff --git a/poky/meta/recipes-core/glibc/glibc/archive-path.patch b/poky/meta/recipes-core/glibc/glibc/archive-path.patch
deleted file mode 100644
index b0d3158cf..000000000
--- a/poky/meta/recipes-core/glibc/glibc/archive-path.patch
+++ /dev/null
@@ -1,39 +0,0 @@
-localedef --add-to-archive uses a hard-coded locale path which doesn't exist in
-normal use, and there's no way to pass an alternative filename.
-
-Add a fallback of $LOCALEARCHIVE from the environment, and allow creation of new locale archives that are not the system archive.
-
-Upstream-Status: Inappropriate (OE-specific)
-Signed-off-by: Ross Burton <ross.burton@intel.com>
-
-diff --git a/locale/programs/locarchive.c b/locale/programs/locarchive.c
-index ca332a34..6b7ba9b2 100644
---- a/locale/programs/locarchive.c
-+++ b/locale/programs/locarchive.c
-@@ -569,10 +569,13 @@ open_archive (struct locarhandle *ah, bool readonly)
- /* If ah has a non-NULL fname open that otherwise open the default. */
- if (archivefname == NULL)
- {
-- archivefname = default_fname;
-- if (output_prefix)
-- memcpy (default_fname, output_prefix, prefix_len);
-- strcpy (default_fname + prefix_len, ARCHIVE_NAME);
-+ archivefname = getenv("LOCALEARCHIVE");
-+ if (archivefname == NULL) {
-+ archivefname = default_fname;
-+ if (output_prefix)
-+ memcpy (default_fname, output_prefix, prefix_len);
-+ strcpy (default_fname + prefix_len, ARCHIVE_NAME);
-+ }
- }
-
- while (1)
-@@ -585,7 +588,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. */
-- if (errno == ENOENT && archivefname == default_fname)
-+ if (errno == ENOENT)
- {
- if (readonly)
- {
diff --git a/poky/meta/recipes-core/glibc/glibc/etc/ld.so.conf b/poky/meta/recipes-core/glibc/glibc/etc/ld.so.conf
index e69de29bb..83327c01b 100644
--- a/poky/meta/recipes-core/glibc/glibc/etc/ld.so.conf
+++ b/poky/meta/recipes-core/glibc/glibc/etc/ld.so.conf
@@ -0,0 +1 @@
+include /etc/ld.so.conf.d/*.conf
diff --git a/poky/meta/recipes-core/glibc/glibc/makedbs.sh b/poky/meta/recipes-core/glibc/glibc/makedbs.sh
new file mode 100755
index 000000000..7d51a6735
--- /dev/null
+++ b/poky/meta/recipes-core/glibc/glibc/makedbs.sh
@@ -0,0 +1,177 @@
+#!/bin/sh
+
+#
+# Make passwd.db, group.db, etc.
+#
+
+VAR_DB=/var/db
+
+# Use make if available
+if [ -x /usr/bin/make -o -x /bin/make ]; then
+ make -C $VAR_DB
+ exit 0
+fi
+
+# No make available, do it in hard way
+
+# passwd.db
+if [ -e /etc/passwd ]; then
+target=$VAR_DB/passwd.db
+echo -n "passwd... "
+awk 'BEGIN { FS=":"; OFS=":" } \
+ /^[ \t]*$$/ { next } \
+ /^[ \t]*#/ { next } \
+ /^[^#]/ { printf ".%s ", $$1; print; \
+ printf "=%s ", $$3; print }' /etc/passwd | \
+makedb --quiet -o $target -
+echo "done."
+fi
+
+# group.db
+if [ -e /etc/group ]; then
+target=$VAR_DB/group.db
+echo -n "group... "
+awk 'BEGIN { FS=":"; OFS=":" } \
+ /^[ \t]*$$/ { next } \
+ /^[ \t]*#/ { next } \
+ /^[^#]/ { printf ".%s ", $$1; print; \
+ printf "=%s ", $$3; print; \
+ if ($$4 != "") { \
+ split($$4, grmems, ","); \
+ for (memidx in grmems) { \
+ mem=grmems[memidx]; \
+ if (members[mem] == "") \
+ members[mem]=$$3; \
+ else \
+ members[mem]=members[mem] "," $$3; \
+ } \
+ delete grmems; } } \
+ END { for (mem in members) \
+ printf ":%s %s %s\n", mem, mem, members[mem]; }' /etc/group | \
+makedb --quiet -o $target -
+echo "done."
+fi
+
+# ethers.db
+if [ -e /etc/ethers ]; then
+target=$VAR_DB/ethers.db
+echo -n "ethers... "
+awk '/^[ \t]*$$/ { next } \
+ /^[ \t]*#/ { next } \
+ /^[^#]/ { printf ".%s ", $$1; print; \
+ printf "=%s ", $$2; print }' /etc/ethers | \
+makedb --quiet -o $target -
+echo "done."
+fi
+
+# protocols.db
+if [ -e /etc/protocols ]; then
+target=$VAR_DB/protocols.db
+echo -n "protocols... "
+awk '/^[ \t]*$$/ { next } \
+ /^[ \t]*#/ { next } \
+ /^[^#]/ { printf ".%s ", $$1; print; \
+ printf "=%s ", $$2; print; \
+ for (i = 3; i <= NF && !($$i ~ /^#/); ++i) \
+ { printf ".%s ", $$i; print } }' /etc/protocols | \
+makedb --quiet -o $target -
+echo "done."
+fi
+
+# rpc.db
+if [ -e /etc/rpc ]; then
+target=$VAR_DB/rpc.db
+echo -n "rpc... "
+awk '/^[ \t]*$$/ { next } \
+ /^[ \t]*#/ { next } \
+ /^[^#]/ { printf ".%s ", $$1; print; \
+ printf "=%s ", $$2; print; \
+ for (i = 3; i <= NF && !($$i ~ /^#/); ++i) \
+ { printf ".%s ", $$i; print } }' /etc/rpc | \
+makedb --quiet -o $target -
+echo "done."
+fi
+
+# services.db
+if [ -e /etc/services ]; then
+target=$VAR_DB/services.db
+echo -n "services... "
+awk 'BEGIN { FS="[ \t/]+" } \
+ /^[ \t]*$$/ { next } \
+ /^[ \t]*#/ { next } \
+ /^[^#]/ { sub(/[ \t]*#.*$$/, "");\
+ printf ":%s/%s ", $$1, $$3; print; \
+ printf ":%s/ ", $$1; print; \
+ printf "=%s/%s ", $$2, $$3; print; \
+ printf "=%s/ ", $$2; print; \
+ for (i = 4; i <= NF && !($$i ~ /^#/); ++i) \
+ { printf ":%s/%s ", $$i, $$3; print; \
+ printf ":%s/ ", $$i; print } }' /etc/services | \
+makedb --quiet -o $target -
+echo "done."
+fi
+
+# shadow.db
+if [ -e /etc/shadow ]; then
+target=$VAR_DB/shadow.db
+echo -n "shadow... "
+awk 'BEGIN { FS=":"; OFS=":" } \
+ /^[ \t]*$$/ { next } \
+ /^[ \t]*#/ { next } \
+ /^[^#]/ { printf ".%s ", $$1; print }' /etc/shadow | \
+(umask 077 && makedb --quiet -o $target -)
+echo "done."
+if chgrp shadow $target 2>/dev/null; then
+ chmod g+r $target
+else
+ chown 0 $target; chgrp 0 $target; chmod 600 $target;
+ echo
+ echo "Warning: The shadow password database $target"
+ echo "has been set to be readable only by root. You may want"
+ echo "to make it readable by the \`shadow' group depending"
+ echo "on your configuration."
+ echo
+fi
+fi
+
+# gshadow.db
+if [ -e /etc/gshadow ]; then
+target=$VAR_DB/gshadow.db
+echo -n "gshadow... "
+awk 'BEGIN { FS=":"; OFS=":" } \
+ /^[ \t]*$$/ { next } \
+ /^[ \t]*#/ { next } \
+ /^[^#]/ { printf ".%s ", $$1; print }' /etc/gshadow | \
+(umask 077 && makedb --quiet -o $target -)
+echo "done."
+if chgrp shadow $target 2>/dev/null; then
+ chmod g+r $target
+else
+ chown 0 $target; chgrp 0 $target; chmod 600 $target
+ echo
+ echo "Warning: The shadow group database $target"
+ echo "has been set to be readable only by root. You may want"
+ echo "to make it readable by the \`shadow' group depending"
+ echo "on your configuration."
+ echo
+fi
+fi
+
+# netgroup.db
+if [ -e /etc/netgroup ]; then
+target=$VAR_DB/netgroup.db
+echo -n "netgroup... "
+awk 'BEGIN { ini=1 } \
+ /^[ \t]*$$/ { next } \
+ /^[ \t]*#/ { next } \
+ /^[^#]/ { if (sub(/[ \t]*\\$$/, " ") == 0) end="\n"; \
+ else end=""; \
+ gsub(/[ \t]+/, " "); \
+ sub(/^[ \t]*/, ""); \
+ if (ini == 0) printf "%s%s", $$0, end; \
+ else printf ".%s %s%s", $$1, $$0, end; \
+ ini=end == "" ? 0 : 1; } \
+ END { if (ini==0) printf "\n" }' /etc/netgroup | \
+makedb --quiet -o $target
+echo "done."
+fi
diff --git a/poky/meta/recipes-core/glibc/glibc_2.27.bb b/poky/meta/recipes-core/glibc/glibc_2.28.bb
index adee494c2..d07293925 100644
--- a/poky/meta/recipes-core/glibc/glibc_2.27.bb
+++ b/poky/meta/recipes-core/glibc/glibc_2.28.bb
@@ -1,13 +1,13 @@
require glibc.inc
-LIC_FILES_CHKSUM = "file://LICENSES;md5=e9a558e243b36d3209f380deb394b213 \
+LIC_FILES_CHKSUM = "file://LICENSES;md5=cfc0ed77a9f62fa62eded042ebe31d72 \
file://COPYING;md5=b234ee4d69f5fce4486a80fdaf4a4263 \
file://posix/rxspencer/COPYRIGHT;md5=dc5485bb394a13b2332ec1c785f5d83a \
file://COPYING.LIB;md5=4fbd65380cdd255951079008b364516c"
-DEPENDS += "gperf-native bison-native"
+DEPENDS += "gperf-native bison-native make-native"
-SRCREV ?= "df3ff4e49d4ee3cbbdaeb0b1cb5dc2344c08be98"
+SRCREV ?= "044c96f0d5595aeb0bb4e79355081c5a7f4faca5"
SRCBRANCH ?= "release/${PV}/master"
@@ -17,25 +17,25 @@ UPSTREAM_CHECK_GITTAGREGEX = "(?P<pver>\d+\.\d+(\.(?!90)\d+)*)"
SRC_URI = "${GLIBC_GIT_URI};branch=${SRCBRANCH};name=glibc \
file://etc/ld.so.conf \
file://generate-supported.mk \
+ file://makedbs.sh \
\
${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://0006-fsl-e500-e5500-e6500-603e-fsqrt-implementation.patch \
+ file://0007-readlib-Add-OECORE_KNOWN_INTERPRETER_NAMES-to-known-.patch \
+ file://0008-ppc-sqrt-Fix-undefined-reference-to-__sqrt_finite.patch \
+ file://0009-__ieee754_sqrt-f-are-now-inline-functions-and-call-o.patch \
+ file://0010-Quote-from-bug-1443-which-explains-what-the-patch-do.patch \
+ file://0011-eglibc-run-libm-err-tab.pl-with-specific-dirs-in-S.patch \
+ file://0012-__ieee754_sqrt-f-are-now-inline-functions-and-call-o.patch \
+ file://0013-sysdeps-gnu-configure.ac-handle-correctly-libc_cv_ro.patch \
+ file://0014-Add-unused-attribute.patch \
+ file://0015-yes-within-the-path-sets-wrong-config-variables.patch \
+ file://0016-timezone-re-written-tzselect-as-posix-sh.patch \
+ file://0017-Remove-bash-dependency-for-nscd-init-script.patch \
+ file://0018-eglibc-Cross-building-and-testing-instructions.patch \
+ file://0019-eglibc-Help-bootstrap-cross-toolchain.patch \
+ file://0020-eglibc-Clear-cache-lines-on-ppc8xx.patch \
+ file://0021-eglibc-Resolve-__fpscr_values-on-SH4.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 \
@@ -43,11 +43,12 @@ SRC_URI = "${GLIBC_GIT_URI};branch=${SRCBRANCH};name=glibc \
file://0026-reset-dl_load_write_lock-after-forking.patch \
file://0027-Acquire-ld.so-lock-before-switching-to-malloc_atfork.patch \
file://0028-bits-siginfo-consts.h-enum-definition-for-TRAP_HWBKP.patch \
- file://0029-Replace-strncpy-with-memccpy-to-fix-Wstringop-trunca.patch \
- file://0030-plural_c_no_preprocessor_lines.patch \
- file://CVE-2017-18269.patch \
- file://CVE-2018-11236.patch \
- file://CVE-2018-11237.patch \
+ file://0029-localedef-add-to-archive-uses-a-hard-coded-locale-pa.patch \
+ file://0030-intl-Emit-no-lines-in-bison-generated-files.patch \
+ file://0031-sysdeps-ieee754-prevent-maybe-uninitialized-errors-w.patch \
+ file://0032-sysdeps-ieee754-soft-fp-ignore-maybe-uninitialized-w.patch \
+ file://0033-locale-prevent-maybe-uninitialized-errors-with-Os-BZ.patch \
+ file://0034-inject-file-assembly-directives.patch \
"
NATIVESDKFIXES ?= ""
@@ -56,8 +57,7 @@ NATIVESDKFIXES_class-nativesdk = "\
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 \
- file://relocate-locales.patch \
- file://0031-nativesdk-deprecate-libcrypt.patch \
+ file://0005-nativesdk-glibc-Make-relocatable-install-for-locales.patch \
"
S = "${WORKDIR}/git"
@@ -79,18 +79,16 @@ COMPATIBLE_HOST_libc-musl_class-target = "null"
GLIBCPIE ??= ""
EXTRA_OECONF = "--enable-kernel=${OLDEST_KERNEL} \
- --without-cvs --disable-profile \
+ --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 \
+ --disable-crypt \
${GLIBCPIE} \
${GLIBC_EXTRA_OECONF}"
@@ -116,22 +114,10 @@ do_configure () {
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 <staging>/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
OpenPOWER on IntegriCloud