Skip to contentSkip to conversation

Upgrade glibc 2.23

PATCH In review Khem Raj 4 participants 13 messages Feb 20, 2016 – Apr 1, 2016

lore
Share & tools
lore

Khem Raj

author
#0 lore raw

cover Upgrade glibc 2.23

Glibc 2.23 has been cut out.
Additional fixes for packages failing due
to PIE flags, cleans up the world build

The following changes since commit 84065e9b33e6d401e4e50436665838be2d0267ad:

cml1/sstate: Fix missing getVar parameter (2016-02-19 15:32:56 +0000)

are available in the git repository at:

git://git.openembedded.org/openembedded-core-contrib kraj/pu
http://cgit.openembedded.org/cgit.cgi/openembedded-core-contrib/log/?h=kraj/pu

Khem Raj (3):
glibc: Upgrade to 2.23
pseudo: Fix build when security flags are enabled
libnewt: Fix build with PIE flags

 meta/conf/distro/include/tcmode-default.inc        |     4 +-
 ...tive_2.22.bb => cross-localedef-native_2.23.bb} |    23 +-
 meta/recipes-core/glibc/glibc-initial.inc          |     1 -
 ...glibc-initial_2.22.bb => glibc-initial_2.23.bb} |     2 -
 .../{glibc-locale_2.22.bb => glibc-locale_2.23.bb} |     0
 .../{glibc-mtrace_2.22.bb => glibc-mtrace_2.23.bb} |     0
 meta/recipes-core/glibc/glibc-options.inc          |   162 -
 ...glibc-scripts_2.22.bb => glibc-scripts_2.23.bb} |     0
 meta/recipes-core/glibc/glibc.inc                  |    17 +-
 ...libc-Look-for-host-system-ld.so.cache-as-.patch |    23 +-
 ...libc-Fix-buffer-overrun-with-a-relocated-.patch |    10 +-
 ...libc-Raise-the-size-of-arrays-containing-.patch |    16 +-
 ...tps-sourceware.org-ml-libc-ports-2007-12-.patch |    34 -
 ...ivesdk-glibc-Allow-64-bit-atomics-for-x86.patch |    32 +
 ...500-e5500-e6500-603e-fsqrt-implementation.patch |     6 +-
 ...-OECORE_KNOWN_INTERPRETER_NAMES-to-known-.patch |     6 +-
 ...-Fix-undefined-reference-to-__sqrt_finite.patch |     6 +-
 ...qrt-f-are-now-inline-functions-and-call-o.patch |     6 +-
 ...bug-1443-which-explains-what-the-patch-do.patch |     6 +-
 ...n-libm-err-tab.pl-with-specific-dirs-in-S.patch |     8 +-
 ...qrt-f-are-now-inline-functions-and-call-o.patch |     6 +-
 ...ersion-output-matching-grok-gold-s-output.patch |    14 +-
 ...-configure.ac-handle-correctly-libc_cv_ro.patch |     8 +-
 .../glibc/glibc/0014-Add-unused-attribute.patch    |     6 +-
 ...ing-SSE-also-make-sure-that-fpmath-is-not.patch |    32 -
 ...hin-the-path-sets-wrong-config-variables.patch} |    20 +-
 ...timezone-re-written-tzselect-as-posix-sh.patch} |    10 +-
 ...ove-bash-dependency-for-nscd-init-script.patch} |    16 +-
 ...c-Cross-building-and-testing-instructions.patch |     6 +-
 ...g-Eglibc-option-group-infrastructure-to-g.patch |  1436 --
 ...19-eglibc-Help-bootstrap-cross-toolchain.patch} |     8 +-
 ....patch => 0020-eglibc-cherry-picked-from.patch} |    36 +-
 ... 0021-eglibc-Clear-cache-lines-on-ppc8xx.patch} |    28 +-
 ...022-eglibc-Resolve-__fpscr_values-on-SH4.patch} |     6 +-
 ...atch => 0023-eglibc-Install-PIC-archives.patch} |    20 +-
 ...orward-port-eglibc-options-groups-support.patch | 16842 -------------------
 ...ward-port-cross-locale-generation-support.patch |   566 +
 ...ing-SSE-make-sure-fpmath-is-not-set-to-us.patch |    48 +
 ...ebug_mask-is-controlled-by-__OPTION_EGLIB.patch |   556 -
 ...option-groups-Conditionally-exclude-c-tes.patch |   145 -
 ...TYPE_CLASS_EXTERN_PROTECTED_DATA-for-prel.patch |    84 -
 .../glibc/0029-fix-getmntent-empty-lines.patch     |    40 -
 meta/recipes-core/glibc/glibc/CVE-2015-7547.patch  |   642 -
 ...ove-incorrect-STRDIFF-based-optimization-.patch |   323 -
 .../glibc/glibc/use_64bit_atomics.patch            |    24 -
 .../glibc/{glibc_2.22.bb => glibc_2.23.bb}         |    40 +-
 meta/recipes-devtools/gcc/gcc-5.3.inc              |     2 +-
 .../files/0001-configure-Prune-PIE-flags.patch     |    44 +
 meta/recipes-devtools/pseudo/pseudo_1.7.5.bb       |     1 +
 meta/recipes-extended/newt/files/pie-flags.patch   |    36 +
 meta/recipes-extended/newt/libnewt_0.52.18.bb      |     2 +
 51 files changed, 899 insertions(+), 20510 deletions(-)
 rename meta/recipes-core/glibc/{cross-localedef-native_2.22.bb => cross-localedef-native_2.23.bb} (60%)
 rename meta/recipes-core/glibc/{glibc-initial_2.22.bb => glibc-initial_2.23.bb} (85%)
 rename meta/recipes-core/glibc/{glibc-locale_2.22.bb => glibc-locale_2.23.bb} (100%)
 rename meta/recipes-core/glibc/{glibc-mtrace_2.22.bb => glibc-mtrace_2.23.bb} (100%)
 delete mode 100644 meta/recipes-core/glibc/glibc-options.inc
 rename meta/recipes-core/glibc/{glibc-scripts_2.22.bb => glibc-scripts_2.23.bb} (100%)
 delete mode 100644 meta/recipes-core/glibc/glibc/0004-Backport-https-sourceware.org-ml-libc-ports-2007-12-.patch
 create mode 100644 meta/recipes-core/glibc/glibc/0004-nativesdk-glibc-Allow-64-bit-atomics-for-x86.patch
 delete mode 100644 meta/recipes-core/glibc/glibc/0015-When-disabling-SSE-also-make-sure-that-fpmath-is-not.patch
 rename meta/recipes-core/glibc/glibc/{0016-yes-within-the-path-sets-wrong-config-variables.patch => 0015-yes-within-the-path-sets-wrong-config-variables.patch} (96%)
 rename meta/recipes-core/glibc/glibc/{0017-timezone-re-written-tzselect-as-posix-sh.patch => 0016-timezone-re-written-tzselect-as-posix-sh.patch} (84%)
 rename meta/recipes-core/glibc/glibc/{nscd-no-bash.patch => 0017-Remove-bash-dependency-for-nscd-init-script.patch} (72%)
 delete mode 100644 meta/recipes-core/glibc/glibc/0019-eglibc-Bring-Eglibc-option-group-infrastructure-to-g.patch
 rename meta/recipes-core/glibc/glibc/{0020-eglibc-Help-bootstrap-cross-toolchain.patch => 0019-eglibc-Help-bootstrap-cross-toolchain.patch} (95%)
 rename meta/recipes-core/glibc/glibc/{0021-eglibc-cherry-picked-from-http-www.eglibc.org-archiv.patch => 0020-eglibc-cherry-picked-from.patch} (70%)
 rename meta/recipes-core/glibc/glibc/{0022-eglibc-Clear-cache-lines-on-ppc8xx.patch => 0021-eglibc-Clear-cache-lines-on-ppc8xx.patch} (80%)
 rename meta/recipes-core/glibc/glibc/{0023-eglibc-Resolve-__fpscr_values-on-SH4.patch => 0022-eglibc-Resolve-__fpscr_values-on-SH4.patch} (92%)
 rename meta/recipes-core/glibc/glibc/{0025-eglibc-Install-PIC-archives.patch => 0023-eglibc-Install-PIC-archives.patch} (90%)
 delete mode 100644 meta/recipes-core/glibc/glibc/0024-eglibc-Forward-port-eglibc-options-groups-support.patch
 create mode 100644 meta/recipes-core/glibc/glibc/0025-eglibc-Forward-port-cross-locale-generation-support.patch
 create mode 100644 meta/recipes-core/glibc/glibc/0026-When-disabling-SSE-make-sure-fpmath-is-not-set-to-us.patch
 delete mode 100644 meta/recipes-core/glibc/glibc/0026-eglibc-dl_debug_mask-is-controlled-by-__OPTION_EGLIB.patch
 delete mode 100644 meta/recipes-core/glibc/glibc/0027-eglibc-use-option-groups-Conditionally-exclude-c-tes.patch
 delete mode 100644 meta/recipes-core/glibc/glibc/0028-Clear-ELF_RTYPE_CLASS_EXTERN_PROTECTED_DATA-for-prel.patch
 delete mode 100644 meta/recipes-core/glibc/glibc/0029-fix-getmntent-empty-lines.patch
 delete mode 100644 meta/recipes-core/glibc/glibc/CVE-2015-7547.patch
 delete mode 100644 meta/recipes-core/glibc/glibc/strcoll-Remove-incorrect-STRDIFF-based-optimization-.patch
 delete mode 100644 meta/recipes-core/glibc/glibc/use_64bit_atomics.patch
 rename meta/recipes-core/glibc/{glibc_2.22.bb => glibc_2.23.bb} (72%)
 create mode 100644 meta/recipes-devtools/pseudo/files/0001-configure-Prune-PIE-flags.patch
 create mode 100644 meta/recipes-extended/newt/files/pie-flags.patch
Signature · 1 line
1.8.3.1
author
#1 lore raw

PATCH 1/3 glibc: Upgrade to 2.23

Drop kconfig and options-group support Forward port cross-localedef support
Assume ssp support in libc when building gcc-initial

---
 meta/conf/distro/include/tcmode-default.inc        |     4 +-
 ...tive_2.22.bb => cross-localedef-native_2.23.bb} |    23 +-
 meta/recipes-core/glibc/glibc-initial.inc          |     1 -
 ...glibc-initial_2.22.bb => glibc-initial_2.23.bb} |     2 -
 .../{glibc-locale_2.22.bb => glibc-locale_2.23.bb} |     0
 .../{glibc-mtrace_2.22.bb => glibc-mtrace_2.23.bb} |     0
 meta/recipes-core/glibc/glibc-options.inc          |   162 -
 ...glibc-scripts_2.22.bb => glibc-scripts_2.23.bb} |     0
 meta/recipes-core/glibc/glibc.inc                  |    17 +-
 ...libc-Look-for-host-system-ld.so.cache-as-.patch |    23 +-
 ...libc-Fix-buffer-overrun-with-a-relocated-.patch |    10 +-
 ...libc-Raise-the-size-of-arrays-containing-.patch |    16 +-
 ...tps-sourceware.org-ml-libc-ports-2007-12-.patch |    34 -
 ...ivesdk-glibc-Allow-64-bit-atomics-for-x86.patch |    32 +
 ...500-e5500-e6500-603e-fsqrt-implementation.patch |     6 +-
 ...-OECORE_KNOWN_INTERPRETER_NAMES-to-known-.patch |     6 +-
 ...-Fix-undefined-reference-to-__sqrt_finite.patch |     6 +-
 ...qrt-f-are-now-inline-functions-and-call-o.patch |     6 +-
 ...bug-1443-which-explains-what-the-patch-do.patch |     6 +-
 ...n-libm-err-tab.pl-with-specific-dirs-in-S.patch |     8 +-
 ...qrt-f-are-now-inline-functions-and-call-o.patch |     6 +-
 ...ersion-output-matching-grok-gold-s-output.patch |    14 +-
 ...-configure.ac-handle-correctly-libc_cv_ro.patch |     8 +-
 .../glibc/glibc/0014-Add-unused-attribute.patch    |     6 +-
 ...ing-SSE-also-make-sure-that-fpmath-is-not.patch |    32 -
 ...hin-the-path-sets-wrong-config-variables.patch} |    20 +-
 ...timezone-re-written-tzselect-as-posix-sh.patch} |    10 +-
 ...ove-bash-dependency-for-nscd-init-script.patch} |    16 +-
 ...c-Cross-building-and-testing-instructions.patch |     6 +-
 ...g-Eglibc-option-group-infrastructure-to-g.patch |  1436 --
 ...19-eglibc-Help-bootstrap-cross-toolchain.patch} |     8 +-
 ....patch => 0020-eglibc-cherry-picked-from.patch} |    36 +-
 ... 0021-eglibc-Clear-cache-lines-on-ppc8xx.patch} |    28 +-
 ...022-eglibc-Resolve-__fpscr_values-on-SH4.patch} |     6 +-
 ...atch => 0023-eglibc-Install-PIC-archives.patch} |    20 +-
 ...orward-port-eglibc-options-groups-support.patch | 16842 -------------------
 ...ward-port-cross-locale-generation-support.patch |   566 +
 ...ing-SSE-make-sure-fpmath-is-not-set-to-us.patch |    48 +
 ...ebug_mask-is-controlled-by-__OPTION_EGLIB.patch |   556 -
 ...option-groups-Conditionally-exclude-c-tes.patch |   145 -
 ...TYPE_CLASS_EXTERN_PROTECTED_DATA-for-prel.patch |    84 -
 .../glibc/0029-fix-getmntent-empty-lines.patch     |    40 -
 meta/recipes-core/glibc/glibc/CVE-2015-7547.patch  |   642 -
 ...ove-incorrect-STRDIFF-based-optimization-.patch |   323 -
 .../glibc/glibc/use_64bit_atomics.patch            |    24 -
 .../glibc/{glibc_2.22.bb => glibc_2.23.bb}         |    40 +-
 meta/recipes-devtools/gcc/gcc-5.3.inc              |     2 +-
 47 files changed, 816 insertions(+), 20510 deletions(-)
 rename meta/recipes-core/glibc/{cross-localedef-native_2.22.bb => cross-localedef-native_2.23.bb} (60%)
 rename meta/recipes-core/glibc/{glibc-initial_2.22.bb => glibc-initial_2.23.bb} (85%)
 rename meta/recipes-core/glibc/{glibc-locale_2.22.bb => glibc-locale_2.23.bb} (100%)
 rename meta/recipes-core/glibc/{glibc-mtrace_2.22.bb => glibc-mtrace_2.23.bb} (100%)
 delete mode 100644 meta/recipes-core/glibc/glibc-options.inc
 rename meta/recipes-core/glibc/{glibc-scripts_2.22.bb => glibc-scripts_2.23.bb} (100%)
 delete mode 100644 meta/recipes-core/glibc/glibc/0004-Backport-https-sourceware.org-ml-libc-ports-2007-12-.patch
 create mode 100644 meta/recipes-core/glibc/glibc/0004-nativesdk-glibc-Allow-64-bit-atomics-for-x86.patch
 delete mode 100644 meta/recipes-core/glibc/glibc/0015-When-disabling-SSE-also-make-sure-that-fpmath-is-not.patch
 rename meta/recipes-core/glibc/glibc/{0016-yes-within-the-path-sets-wrong-config-variables.patch => 0015-yes-within-the-path-sets-wrong-config-variables.patch} (96%)
 rename meta/recipes-core/glibc/glibc/{0017-timezone-re-written-tzselect-as-posix-sh.patch => 0016-timezone-re-written-tzselect-as-posix-sh.patch} (84%)
 rename meta/recipes-core/glibc/glibc/{nscd-no-bash.patch => 0017-Remove-bash-dependency-for-nscd-init-script.patch} (72%)
 delete mode 100644 meta/recipes-core/glibc/glibc/0019-eglibc-Bring-Eglibc-option-group-infrastructure-to-g.patch
 rename meta/recipes-core/glibc/glibc/{0020-eglibc-Help-bootstrap-cross-toolchain.patch => 0019-eglibc-Help-bootstrap-cross-toolchain.patch} (95%)
 rename meta/recipes-core/glibc/glibc/{0021-eglibc-cherry-picked-from-http-www.eglibc.org-archiv.patch => 0020-eglibc-cherry-picked-from.patch} (70%)
 rename meta/recipes-core/glibc/glibc/{0022-eglibc-Clear-cache-lines-on-ppc8xx.patch => 0021-eglibc-Clear-cache-lines-on-ppc8xx.patch} (80%)
 rename meta/recipes-core/glibc/glibc/{0023-eglibc-Resolve-__fpscr_values-on-SH4.patch => 0022-eglibc-Resolve-__fpscr_values-on-SH4.patch} (92%)
 rename meta/recipes-core/glibc/glibc/{0025-eglibc-Install-PIC-archives.patch => 0023-eglibc-Install-PIC-archives.patch} (90%)
 delete mode 100644 meta/recipes-core/glibc/glibc/0024-eglibc-Forward-port-eglibc-options-groups-support.patch
 create mode 100644 meta/recipes-core/glibc/glibc/0025-eglibc-Forward-port-cross-locale-generation-support.patch
 create mode 100644 meta/recipes-core/glibc/glibc/0026-When-disabling-SSE-make-sure-fpmath-is-not-set-to-us.patch
 delete mode 100644 meta/recipes-core/glibc/glibc/0026-eglibc-dl_debug_mask-is-controlled-by-__OPTION_EGLIB.patch
 delete mode 100644 meta/recipes-core/glibc/glibc/0027-eglibc-use-option-groups-Conditionally-exclude-c-tes.patch
 delete mode 100644 meta/recipes-core/glibc/glibc/0028-Clear-ELF_RTYPE_CLASS_EXTERN_PROTECTED_DATA-for-prel.patch
 delete mode 100644 meta/recipes-core/glibc/glibc/0029-fix-getmntent-empty-lines.patch
 delete mode 100644 meta/recipes-core/glibc/glibc/CVE-2015-7547.patch
 delete mode 100644 meta/recipes-core/glibc/glibc/strcoll-Remove-incorrect-STRDIFF-based-optimization-.patch
 delete mode 100644 meta/recipes-core/glibc/glibc/use_64bit_atomics.patch
 rename meta/recipes-core/glibc/{glibc_2.22.bb => glibc_2.23.bb} (72%)
meta/conf/distro/include/tcmode-default.inc +2 -2
index 5622f3e..c412420 100644
@@ -22,11 +22,11 @@ PREFERRED_PROVIDER_virtual/${TARGET_PREFIX}libc-initial = "${TCLIBC}-initial"
 PREFERRED_PROVIDER_virtual/nativesdk-${SDK_PREFIX}libc-initial ?= "nativesdk-glibc-initial"
 PREFERRED_PROVIDER_virtual/gettext ??= "gettext"
 
-GCCVERSION ?= "5.%"
+GCCVERSION ?= "5.3%"
 SDKGCCVERSION ?= "${GCCVERSION}"
 BINUVERSION ?= "2.26%"
 GDBVERSION ?= "7.10%"
-GLIBCVERSION ?= "2.22"
+GLIBCVERSION ?= "2.23"
 UCLIBCVERSION ?= "1.0%"
 LINUXLIBCVERSION ?= "4.4"
 
meta/recipes-core/glibc/cross-localedef-native_2.23.bb renamed from meta/recipes-core/glibc/cross-localedef-native_2.22.bb +10 -13
similarity index 60%
rename from meta/recipes-core/glibc/cross-localedef-native_2.22.bb
rename to meta/recipes-core/glibc/cross-localedef-native_2.23.bb
index efcdf4d..fa930fd 100644
@@ -24,22 +24,19 @@ SRC_URI = "${GLIBC_GIT_URI};branch=${SRCBRANCH};name=glibc \
            ${EGLIBCPATCHES} \
 "
 EGLIBCPATCHES = "\
-           file://0017-timezone-re-written-tzselect-as-posix-sh.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-Bring-Eglibc-option-group-infrastructure-to-g.patch \
-           file://0020-eglibc-Help-bootstrap-cross-toolchain.patch \
-           file://0021-eglibc-cherry-picked-from-http-www.eglibc.org-archiv.patch \
-           file://0022-eglibc-Clear-cache-lines-on-ppc8xx.patch \
-           file://0023-eglibc-Resolve-__fpscr_values-on-SH4.patch \
-           file://0024-eglibc-Forward-port-eglibc-options-groups-support.patch \
-           file://0025-eglibc-Install-PIC-archives.patch \
-           file://0026-eglibc-dl_debug_mask-is-controlled-by-__OPTION_EGLIB.patch \
-           file://0027-eglibc-use-option-groups-Conditionally-exclude-c-tes.patch \
-           file://strcoll-Remove-incorrect-STRDIFF-based-optimization-.patch \
+           file://0019-eglibc-Help-bootstrap-cross-toolchain.patch \
+           file://0020-eglibc-cherry-picked-from.patch \
+           file://0021-eglibc-Clear-cache-lines-on-ppc8xx.patch \
+           file://0022-eglibc-Resolve-__fpscr_values-on-SH4.patch \
+           file://0023-eglibc-Install-PIC-archives.patch \
+           file://0025-eglibc-Forward-port-cross-locale-generation-support.patch \
 "
 
-SRCREV_glibc ?= "a34d1c6afc86521d6ad17662a3b5362d8481514c"
-SRCREV_localedef ?= "c833367348d39dad7ba018990bfdaffaec8e9ed3"
+SRCREV_glibc ?= "e742928c1592b43db6809db4f39e67be151cdd27"
+SRCREV_localedef ?= "5a81ff9f06a7a808d4c3d37bbf34077a4c5902ed"
 
 # Makes for a rather long rev (22 characters), but...
 #
meta/recipes-core/glibc/glibc-initial.inc +0 -1
index 7214f71..5975fd2 100644
@@ -16,7 +16,6 @@ do_configure () {
 		--prefix=/usr \
 		--without-cvs --disable-sanity-checks \
 		--with-headers=${STAGING_DIR_TARGET}${includedir} \
-		--with-kconfig=${STAGING_BINDIR_NATIVE} \
 		--enable-hacker-mode --enable-addons
 }
 
meta/recipes-core/glibc/glibc-initial_2.23.bb renamed from meta/recipes-core/glibc/glibc-initial_2.22.bb +0 -2
similarity index 85%
rename from meta/recipes-core/glibc/glibc-initial_2.22.bb
rename to meta/recipes-core/glibc/glibc-initial_2.23.bb
index 8ab01dc..e86770e 100644
@@ -1,8 +1,6 @@
 require glibc_${PV}.bb
 require glibc-initial.inc
 
-DEPENDS += "kconfig-frontends-native"
-
 # main glibc recipes muck with TARGET_CPPFLAGS to point into
 # final target sysroot but we
 # are not there when building glibc-initial
meta/recipes-core/glibc/glibc-locale_2.23.bb renamed from meta/recipes-core/glibc/glibc-locale_2.22.bb +0 -0
similarity index 100%
rename from meta/recipes-core/glibc/glibc-locale_2.22.bb
rename to meta/recipes-core/glibc/glibc-locale_2.23.bb
meta/recipes-core/glibc/glibc-mtrace_2.23.bb renamed from meta/recipes-core/glibc/glibc-mtrace_2.22.bb +0 -0
similarity index 100%
rename from meta/recipes-core/glibc/glibc-mtrace_2.22.bb
rename to meta/recipes-core/glibc/glibc-mtrace_2.23.bb
meta/recipes-core/glibc/glibc-options.inc deleted +0 -162

162 lines not on this page · raw message

meta/recipes-core/glibc/glibc-scripts_2.23.bb renamed from meta/recipes-core/glibc/glibc-scripts_2.22.bb +0 -0
similarity index 100%
rename from meta/recipes-core/glibc/glibc-scripts_2.22.bb
rename to meta/recipes-core/glibc/glibc-scripts_2.23.bb
meta/recipes-core/glibc/glibc.inc +1 -16
index 7c4551a..5711209 100644
@@ -44,12 +44,6 @@ DEPENDS = "virtual/${TARGET_PREFIX}gcc-initial libgcc-initial linux-libc-headers
 PROVIDES = "virtual/libc virtual/${TARGET_PREFIX}libc-for-gcc"
 PROVIDES += "virtual/libintl virtual/libiconv"
 inherit autotools texinfo distro_features_check systemd
-require glibc-options.inc
-
-# The main purpose of setting this variable is to prevent users from accidently
-# overriding DISTRO_FEATRUES, causing obscure build failures because of lack
-# of libc functions.
-REQUIRED_DISTRO_FEATURES = "${DISTRO_FEATURES_LIBC}"
 
 LEAD_SONAME = "libc.so"
 
@@ -58,6 +52,7 @@ CACHED_CONFIGUREVARS += " \
   libc_cv_slibdir=${base_libdir} \
   libc_cv_rootsbindir=${base_sbindir} \
   libc_cv_localedir=${localedir} \
+  libc_cv_ssp_strong=no \
   libc_cv_ssp=no \
 "
 
@@ -82,18 +77,8 @@ PARALLEL_MAKE = ""
 # ensure make uses /bin/bash
 EXTRA_OEMAKE += "SHELL=/bin/bash"
 
-OE_FEATURES = "${@features_to_glibc_settings(d)}"
 do_configure_prepend() {
 	sed -e "s#@BASH@#/bin/sh#" -i ${S}/elf/ldd.bash.in
-	echo '${OE_FEATURES}' > ${B}/option-groups.config
-}
-
-do_configure_append() {
-	yes '' | oe_runmake config
-
-	# Remove quotation marks from OPTION_EGLIBC_NSSWITCH_FIXED_*. This will
-	# avoid install error.
-	sed -i 's/^OPTION_EGLIBC_NSSWITCH_FIXED_\(.*\)="\(.*\)"$/OPTION_EGLIBC_NSSWITCH_FIXED_\1=\2/' option-groups.config
 }
 
 GLIBC_ADDONS ?= "nptl,libidn"
meta/recipes-core/glibc/glibc/0001-nativesdk-glibc-Look-for-host-system-ld.so.cache-as-.patch +11 -12
index 3d66348..97c2800 100644
@@ -1,7 +1,7 @@
-From 0876fea1b5b26da84f298714a2e23ba696607dba Mon Sep 17 00:00:00 2001
+From 66d04e2cd8badb0984050e4e9f2732f47151fbbf Mon Sep 17 00:00:00 2001
 From: Khem Raj <[email protected]>
 Date: Wed, 18 Mar 2015 01:48:24 +0000
-Subject: [PATCH 01/27] nativesdk-glibc: Look for host system ld.so.cache as
+Subject: [PATCH 01/24] nativesdk-glibc: Look for host system ld.so.cache as
  well
 
 Upstream-Status: Inappropriate [embedded specific]
@@ -27,18 +27,17 @@ RP 14/10/2010
 
 Signed-off-by: Khem Raj <[email protected]>
 ---
- elf/dl-load.c | 17 ++++++++---------
- 1 file changed, 8 insertions(+), 9 deletions(-)
+ elf/dl-load.c | 16 ++++++++--------
+ 1 file changed, 8 insertions(+), 8 deletions(-)
 
 diff --git a/elf/dl-load.c b/elf/dl-load.c
-index 0c052e4..f45085a 100644
+index 6fb615e..ee3d1e6 100644
 --- a/elf/dl-load.c
 +++ b/elf/dl-load.c
-@@ -2040,7 +2040,14 @@ _dl_map_object (struct link_map *loader, const char *name,
- 	fd = open_path (name, namelen, mode,
- 			&loader->l_runpath_dirs, &realname, &fb, loader,
- 			LA_SER_RUNPATH, &found_other_class);
--
+@@ -2094,6 +2094,14 @@ _dl_map_object (struct link_map *loader, const char *name,
+             }
+         }
+ 
 +      /* try the default path.  */
 +      if (fd == -1
 +	  && ((l = loader ?: GL(dl_ns)[nsid]._ns_loaded) == NULL
@@ -50,7 +49,7 @@ index 0c052e4..f45085a 100644
  #ifdef USE_LDCONFIG
        if (fd == -1
  	  && (__glibc_likely ((mode & __RTLD_SECURE) == 0)
-@@ -2099,14 +2106,6 @@ _dl_map_object (struct link_map *loader, const char *name,
+@@ -2152,14 +2160,6 @@ _dl_map_object (struct link_map *loader, const char *name,
  	}
  #endif
  
@@ -66,5 +65,5 @@ index 0c052e4..f45085a 100644
        if (__glibc_unlikely (GLRO(dl_debug_mask) & DL_DEBUG_LIBS))
  	_dl_debug_printf ("\n");
 -- 
-2.1.4
+2.6.4
 
meta/recipes-core/glibc/glibc/0002-nativesdk-glibc-Fix-buffer-overrun-with-a-relocated-.patch +5 -5
index b568fc6..473b894 100644
@@ -1,7 +1,7 @@
-From 086b65d9aacffc47fcd8df68818a476a5ae76fa1 Mon Sep 17 00:00:00 2001
+From 179dc5f1e13c3ff96d5f21a2a78c089cf120ceb8 Mon Sep 17 00:00:00 2001
 From: Khem Raj <[email protected]>
 Date: Wed, 18 Mar 2015 01:50:00 +0000
-Subject: [PATCH 02/27] nativesdk-glibc: Fix buffer overrun with a relocated
+Subject: [PATCH 02/24] nativesdk-glibc: Fix buffer overrun with a relocated
  SDK
 
 When ld-linux-*.so.2 is relocated to a path that is longer than the
@@ -22,10 +22,10 @@ Signed-off-by: Khem Raj <[email protected]>
  1 file changed, 12 insertions(+)
 
 diff --git a/elf/dl-load.c b/elf/dl-load.c
-index f45085a..f1eb5ed 100644
+index ee3d1e6..c4a42e9 100644
 --- a/elf/dl-load.c
 +++ b/elf/dl-load.c
-@@ -1765,7 +1765,19 @@ open_path (const char *name, size_t namelen, int mode,
+@@ -1793,7 +1793,19 @@ open_path (const char *name, size_t namelen, int mode,
         given on the command line when rtld is run directly.  */
      return -1;
  
@@ -46,5 +46,5 @@ index f45085a..f1eb5ed 100644
      {
        struct r_search_path_elem *this_dir = *dirs;
 -- 
-2.1.4
+2.6.4
 
meta/recipes-core/glibc/glibc/0003-nativesdk-glibc-Raise-the-size-of-arrays-containing-.patch +8 -8
index a681a64..dde94b4 100644
@@ -1,7 +1,7 @@
-From fd595a5ec885bcb4c14417daa21c2e61c5b72e42 Mon Sep 17 00:00:00 2001
+From e76048898ae9aa49dc70d6f9b1bbc22082e61fe3 Mon Sep 17 00:00:00 2001
 From: Khem Raj <[email protected]>
 Date: Wed, 18 Mar 2015 01:51:38 +0000
-Subject: [PATCH 03/27] nativesdk-glibc: Raise the size of arrays containing dl
+Subject: [PATCH 03/24] nativesdk-glibc: Raise the size of arrays containing dl
  paths
 
 This patch puts the dynamic loader path in the binaries, SYSTEM_DIRS strings
@@ -40,10 +40,10 @@ index dec49bc..862f1d8 100644
  internal_function
  _dl_cache_libcmp (const char *p1, const char *p2)
 diff --git a/elf/dl-load.c b/elf/dl-load.c
-index f1eb5ed..f664f50 100644
+index c4a42e9..acf6c03 100644
 --- a/elf/dl-load.c
 +++ b/elf/dl-load.c
-@@ -104,8 +104,8 @@ static size_t max_capstrlen attribute_relro;
+@@ -106,8 +106,8 @@ static size_t max_capstrlen attribute_relro;
  /* Get the generated information about the trusted directories.  */
  #include "trusted-dirs.h"
  
@@ -80,7 +80,7 @@ index f54ec22..0e78a83 100644
     a platform.  */
  static int
 diff --git a/elf/rtld.c b/elf/rtld.c
-index 69873c2..6d3add7 100644
+index 52160df..80f0582 100644
 --- a/elf/rtld.c
 +++ b/elf/rtld.c
 @@ -99,6 +99,7 @@ uintptr_t __pointer_chk_guard_local
@@ -91,7 +91,7 @@ index 69873c2..6d3add7 100644
  
  /* List of auditing DSOs.  */
  static struct audit_list
-@@ -877,12 +878,12 @@ of this helper program; chances are you did not intend to run this program.\n\
+@@ -873,12 +874,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\
@@ -107,7 +107,7 @@ index 69873c2..6d3add7 100644
        ++_dl_skip_args;
        --_dl_argc;
 diff --git a/sysdeps/generic/dl-cache.h b/sysdeps/generic/dl-cache.h
-index 4b49869..1800d03 100644
+index 70d4aeb..5c726d0 100644
 --- a/sysdeps/generic/dl-cache.h
 +++ b/sysdeps/generic/dl-cache.h
 @@ -27,10 +27,6 @@
@@ -122,5 +122,5 @@ index 4b49869..1800d03 100644
  # define add_system_dir(dir) add_dir (dir)
  #endif
 -- 
-2.1.4
+2.6.4
 
meta/recipes-core/glibc/glibc/0004-Backport-https-sourceware.org-ml-libc-ports-2007-12-.patch deleted +0 -34
deleted file mode 100644
index 7487503..0000000
@@ -1,34 +0,0 @@
-From 2560b564b5674bf2990e5607f6342c1647a5dc4f Mon Sep 17 00:00:00 2001
-From: Khem Raj <[email protected]>
-Date: Sun, 8 Mar 2015 04:01:01 +0000
-Subject: [PATCH 04/27] Backport
- https://sourceware.org/ml/libc-ports/2007-12/msg00000.html
-
-Upstream-Status: Pending
-
-2007-12-03  Kristian Van Der Vliet  <[email protected]>
-
-        * bits/stdio-lock.h (_IO_acquire_lock_clear_flags2): Define
-
-Signed-off-by: Kristian Van Der Vliet <[email protected]>
-Signed-off-by: Khem Raj <[email protected]>
----
- bits/stdio-lock.h | 2 ++
- 1 file changed, 2 insertions(+)
-
-diff --git a/bits/stdio-lock.h b/bits/stdio-lock.h
-index 0c5bb65..66304a6 100644
---- a/bits/stdio-lock.h
-+++ b/bits/stdio-lock.h
-@@ -49,6 +49,8 @@ __libc_lock_define_recursive (typedef, _IO_lock_t)
-   _IO_cleanup_region_start ((void (*) (void *)) _IO_funlockfile, (_fp));      \
-   _IO_flockfile (_fp)
- 
-+# define _IO_acquire_lock_clear_flags2(_fp) _IO_acquire_lock (_fp)
-+
- # define _IO_release_lock(_fp) \
-   _IO_funlockfile (_fp);						      \
-   _IO_cleanup_region_end (0)
--- 
-2.1.4
-
meta/recipes-core/glibc/glibc/0004-nativesdk-glibc-Allow-64-bit-atomics-for-x86.patch new file +32 -0
new file mode 100644
index 0000000..21f04a1
@@ -0,0 +1,32 @@
+From 2e1638115f0f924ee8235eee9265047054c15cfd Mon Sep 17 00:00:00 2001
+From: Khem Raj <[email protected]>
+Date: Thu, 31 Dec 2015 14:35:35 -0800
+Subject: [PATCH 04/24] 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.
+It also makes the synchronization more efficient.
+
+Signed-off-by: Juro Bystricky <[email protected]>
+Signed-off-by: Richard Purdie <[email protected]>
+Signed-off-by: Khem Raj <[email protected]>
+---
+ sysdeps/i386/atomic-machine.h | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/sysdeps/i386/atomic-machine.h b/sysdeps/i386/atomic-machine.h
+index 59f3d34..6f6b7ff 100644
+--- a/sysdeps/i386/atomic-machine.h
++++ b/sysdeps/i386/atomic-machine.h
+@@ -54,7 +54,7 @@ typedef uintmax_t uatomic_max_t;
+ # endif
+ #endif
+ 
+-#define __HAVE_64B_ATOMICS 0
++#define __HAVE_64B_ATOMICS 1
+ #define USE_ATOMIC_COMPILER_BUILTINS 0
+ 
+ 
+-- 
+2.6.4
+
meta/recipes-core/glibc/glibc/0005-fsl-e500-e5500-e6500-603e-fsqrt-implementation.patch +3 -3
index 8d3f859..ba8c92e 100644
@@ -1,7 +1,7 @@
-From aa0cd82892f32e58602143c697ef0524696a6428 Mon Sep 17 00:00:00 2001
+From 7ff57edfe24b4243373fcb896ee0b613938c1ec9 Mon Sep 17 00:00:00 2001
 From: Khem Raj <[email protected]>
 Date: Wed, 18 Mar 2015 00:01:50 +0000
-Subject: [PATCH 05/27] fsl e500/e5500/e6500/603e fsqrt implementation
+Subject: [PATCH 05/24] fsl e500/e5500/e6500/603e fsqrt implementation
 
 Upstream-Status: Pending
 Signed-off-by: Edmar Wienskoski <[email protected]>
@@ -1580,5 +1580,5 @@ index 0000000..04ff8cc
 @@ -0,0 +1 @@
 +powerpc/powerpc64/e6500/fpu
 -- 
-2.1.4
+2.6.4
 
meta/recipes-core/glibc/glibc/0006-readlib-Add-OECORE_KNOWN_INTERPRETER_NAMES-to-known-.patch +3 -3
index 65c227f..086a73d 100644
@@ -1,7 +1,7 @@
-From 5ec1bc5172851278231ce940b68b35ce9cbf8500 Mon Sep 17 00:00:00 2001
+From 61129ef3ee735b300604f75d50e01cb29f4387f4 Mon Sep 17 00:00:00 2001
 From: Khem Raj <[email protected]>
 Date: Wed, 18 Mar 2015 00:11:22 +0000
-Subject: [PATCH 06/27] readlib: Add OECORE_KNOWN_INTERPRETER_NAMES to known
+Subject: [PATCH 06/24] readlib: Add OECORE_KNOWN_INTERPRETER_NAMES to known
  names
 
 This bolts in a hook for OE to pass its own version of interpreter
@@ -29,5 +29,5 @@ index 7fd5b8a..2f5da9f 100644
  
  static struct known_names known_libs[] =
 -- 
-2.1.4
+2.6.4
 
meta/recipes-core/glibc/glibc/0007-ppc-sqrt-Fix-undefined-reference-to-__sqrt_finite.patch +3 -3
index aec8fbe..952784b 100644
@@ -1,7 +1,7 @@
-From ea98b1a12b5f779fd79478ff930a79ef60387851 Mon Sep 17 00:00:00 2001
+From f936548decac99501f9a4c522a3211d16542fa49 Mon Sep 17 00:00:00 2001
 From: Khem Raj <[email protected]>
 Date: Wed, 18 Mar 2015 00:15:07 +0000
-Subject: [PATCH 07/27] ppc/sqrt: Fix undefined reference to `__sqrt_finite'
+Subject: [PATCH 07/24] ppc/sqrt: Fix undefined reference to `__sqrt_finite'
 
 on ppc fixes the errors like below
 | ./.libs/libpulsecore-1.1.so: undefined reference to `__sqrt_finite'
@@ -204,5 +204,5 @@ index 26fa067..9d17512 100644
  }
 +strong_alias (__ieee754_sqrtf, __sqrtf_finite)
 -- 
-2.1.4
+2.6.4
 
meta/recipes-core/glibc/glibc/0008-__ieee754_sqrt-f-are-now-inline-functions-and-call-o.patch +3 -3
index b3fa931..8d513ab 100644
@@ -1,7 +1,7 @@
-From 2456ea44aeeedae87edb522f77a7969d636399b0 Mon Sep 17 00:00:00 2001
+From d02704895fdce917e337619a4414042f63edd88b Mon Sep 17 00:00:00 2001
 From: Khem Raj <[email protected]>
 Date: Wed, 18 Mar 2015 00:16:38 +0000
-Subject: [PATCH 08/27] __ieee754_sqrt{,f} are now inline functions and call
+Subject: [PATCH 08/24] __ieee754_sqrt{,f} are now inline functions and call
  out __slow versions
 
 Upstream-Status: Pending
@@ -383,5 +383,5 @@ index 9d17512..10de1f0 100644
 +
  strong_alias (__ieee754_sqrtf, __sqrtf_finite)
 -- 
-2.1.4
+2.6.4
 
meta/recipes-core/glibc/glibc/0009-Quote-from-bug-1443-which-explains-what-the-patch-do.patch +3 -3
index 1f54759..12f24fb 100644
@@ -1,7 +1,7 @@
-From acf7a028817e71eb99d785037659abd4d120ffe2 Mon Sep 17 00:00:00 2001
+From 502f061d846e58aac7aca67e4e0d6ba9e0763b17 Mon Sep 17 00:00:00 2001
 From: Khem Raj <[email protected]>
 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 09/24] Quote from bug 1443 which explains what the patch does
  :
 
   We build some random program and link it with -lust.  When we run it,
@@ -58,5 +58,5 @@ index 6fb20bd..8805537 100644
  
  	case R_ARM_TLS_TPOFF32:
 -- 
-2.1.4
+2.6.4
 
meta/recipes-core/glibc/glibc/0010-eglibc-run-libm-err-tab.pl-with-specific-dirs-in-S.patch +4 -4
index df3c1ef..77bd7d1 100644
@@ -1,7 +1,7 @@
-From 017322ee28c1579ce6c81904842aaada9c82403c Mon Sep 17 00:00:00 2001
+From 69a3e30b49d28a7386d18725528652931510cbfc Mon Sep 17 00:00:00 2001
 From: Ting Liu <[email protected]>
 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 10/24] eglibc: run libm-err-tab.pl with specific dirs in ${S}
 
 libm-err-tab.pl will parse all the files named "libm-test-ulps"
 in the given dir recursively. To avoid parsing the one in
@@ -18,7 +18,7 @@ Signed-off-by: Ting Liu <[email protected]>
  1 file changed, 2 insertions(+), 1 deletion(-)
 
 diff --git a/manual/Makefile b/manual/Makefile
-index 5382208..6b701b0 100644
+index cdb6763..0b32a0a 100644
 --- a/manual/Makefile
 +++ b/manual/Makefile
 @@ -105,7 +105,8 @@ $(objpfx)libm-err.texi: $(objpfx)stamp-libm-err
@@ -32,5 +32,5 @@ index 5382208..6b701b0 100644
  	touch $@
  
 -- 
-2.1.4
+2.6.4
 
meta/recipes-core/glibc/glibc/0011-__ieee754_sqrt-f-are-now-inline-functions-and-call-o.patch +3 -3
index 07a112b..251e5f5 100644
@@ -1,7 +1,7 @@
-From 1be45f870ebbb0259bea5250a6d2c2fbcb33409d Mon Sep 17 00:00:00 2001
+From 4cf52971a841304aec30b2e975f81d7ad9d42ef0 Mon Sep 17 00:00:00 2001
 From: Khem Raj <[email protected]>
 Date: Wed, 18 Mar 2015 00:24:46 +0000
-Subject: [PATCH 11/27] __ieee754_sqrt{,f} are now inline functions and call
+Subject: [PATCH 11/24] __ieee754_sqrt{,f} are now inline functions and call
  out __slow versions
 
 Upstream-Status: Pending
@@ -57,5 +57,5 @@ index 8126535..10de1f0 100644
  #endif
  {
 -- 
-2.1.4
+2.6.4
 
meta/recipes-core/glibc/glibc/0012-Make-ld-version-output-matching-grok-gold-s-output.patch +7 -7
index 2677913..3208a0c 100644
@@ -1,7 +1,7 @@
-From 49471ab1f90e392da9520eea831ce8731be9fc8b Mon Sep 17 00:00:00 2001
+From b356816d6e005ecda7adbed9627a4315ad39de39 Mon Sep 17 00:00:00 2001
 From: Khem Raj <[email protected]>
 Date: Wed, 18 Mar 2015 00:25:45 +0000
-Subject: [PATCH 12/27] Make ld --version output matching grok gold's output
+Subject: [PATCH 12/24] Make ld --version output matching grok gold's output
 
 adapted from from upstream branch roland/gold-vs-libc
 
@@ -14,10 +14,10 @@ Signed-off-by: Khem Raj <[email protected]>
  2 files changed, 2 insertions(+), 2 deletions(-)
 
 diff --git a/configure b/configure
-index 45cc7cb..7d7299a 100755
+index aa05d49..6dabd11 100755
 --- a/configure
 +++ b/configure
-@@ -4709,7 +4709,7 @@ else
+@@ -4486,7 +4486,7 @@ else
    # Found it, now check the version.
    { $as_echo "$as_me:${as_lineno-$LINENO}: checking version of $LD" >&5
  $as_echo_n "checking version of $LD... " >&6; }
@@ -27,10 +27,10 @@ index 45cc7cb..7d7299a 100755
      '') ac_prog_version="v. ?.??, bad"; ac_verc_fail=yes;;
      2.1[0-9][0-9]*|2.2[2-9]*|2.[3-9][0-9]*|[3-9].*|[1-9][0-9]*)
 diff --git a/configure.ac b/configure.ac
-index 7e9383a..a467a69 100644
+index ee7a3f1..b4b95b9 100644
 --- a/configure.ac
 +++ b/configure.ac
-@@ -941,7 +941,7 @@ AC_CHECK_PROG_VER(AS, $AS, --version,
+@@ -948,7 +948,7 @@ AC_CHECK_PROG_VER(AS, $AS, --version,
  		  [2.1[0-9][0-9]*|2.2[2-9]*|2.[3-9][0-9]*|[3-9].*|[1-9][0-9]*],
  		  AS=: critic_missing="$critic_missing as")
  AC_CHECK_PROG_VER(LD, $LD, --version,
@@ -40,5 +40,5 @@ index 7e9383a..a467a69 100644
  		  LD=: critic_missing="$critic_missing ld")
  
 -- 
-2.1.4
+2.6.4
 
meta/recipes-core/glibc/glibc/0013-sysdeps-gnu-configure.ac-handle-correctly-libc_cv_ro.patch +4 -4
index c1fda9d..82fa100 100644
@@ -1,7 +1,7 @@
-From b55e49b199c46a278ab66b6b1e3eab483b913197 Mon Sep 17 00:00:00 2001
+From 10003d48f83f7a4f7fa562ed89af904a544b6323 Mon Sep 17 00:00:00 2001
 From: Khem Raj <[email protected]>
 Date: Wed, 18 Mar 2015 00:27:10 +0000
-Subject: [PATCH 13/27] sysdeps/gnu/configure.ac: handle correctly
+Subject: [PATCH 13/24] sysdeps/gnu/configure.ac: handle correctly
  $libc_cv_rootsbindir
 
 Upstream-Status:Pending
@@ -14,7 +14,7 @@ Signed-off-by: Khem Raj <[email protected]>
  2 files changed, 2 insertions(+), 2 deletions(-)
 
 diff --git a/sysdeps/gnu/configure b/sysdeps/gnu/configure
-index 9239297..c5ed3ca 100644
+index 71243ad..f578187 100644
 --- a/sysdeps/gnu/configure
 +++ b/sysdeps/gnu/configure
 @@ -32,6 +32,6 @@ case "$prefix" in
@@ -38,5 +38,5 @@ index 634fe4d..3db1697 100644
    ;;
  esac
 -- 
-2.1.4
+2.6.4
 
meta/recipes-core/glibc/glibc/0014-Add-unused-attribute.patch +3 -3
index 0ba5d2f..ea3e167 100644
@@ -1,7 +1,7 @@
-From 0229d6c9c0e7721773118d5ae1d172c269bc9826 Mon Sep 17 00:00:00 2001
+From cafa8a7ef830e02cdbf928471e06d11054946940 Mon Sep 17 00:00:00 2001
 From: Khem Raj <[email protected]>
 Date: Wed, 18 Mar 2015 00:28:41 +0000
-Subject: [PATCH 14/27] Add unused attribute
+Subject: [PATCH 14/24] Add unused attribute
 
 Helps in avoiding gcc warning when header is is included in
 a source file which does not use both functions
@@ -30,5 +30,5 @@ index 80290bc..7890a8e 100644
  {
    int slash_count = 0;
 -- 
-2.1.4
+2.6.4
 
meta/recipes-core/glibc/glibc/0015-When-disabling-SSE-also-make-sure-that-fpmath-is-not.patch deleted +0 -32
deleted file mode 100644
index 4b261ca..0000000
@@ -1,32 +0,0 @@
-From f058c884dd26d10c94550ca5252ed6576614d659 Mon Sep 17 00:00:00 2001
-From: Khem Raj <[email protected]>
-Date: Thu, 19 Feb 2015 03:23:45 +0000
-Subject: [PATCH 15/27] When disabling SSE also make sure that fpmath is not
- set to use SSE as well
-
-This fixes errors when we inject sse options through CFLAGS and now
-that we have -Werror turned on by default this warning turns to become
-error on x86
-
-Signed-off-by: Khem Raj <[email protected]>
-
-Upstream-Status: Pending
----
- sysdeps/x86/Makefile | 2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
-diff --git a/sysdeps/x86/Makefile b/sysdeps/x86/Makefile
-index 19f5eca..827ea71 100644
---- a/sysdeps/x86/Makefile
-+++ b/sysdeps/x86/Makefile
-@@ -1,6 +1,6 @@
- ifeq ($(subdir),elf)
- CFLAGS-.os += $(if $(filter $(@F),$(patsubst %,%.os,$(all-rtld-routines))),\
--		   -mno-sse -mno-mmx)
-+		   -mno-sse -mno-mmx -mfpmath=387)
- 
- tests-special += $(objpfx)tst-ld-sse-use.out
- $(objpfx)tst-ld-sse-use.out: ../sysdeps/x86/tst-ld-sse-use.sh $(objpfx)ld.so
--- 
-2.1.4
-
meta/recipes-core/glibc/glibc/0015-yes-within-the-path-sets-wrong-config-variables.patch renamed from meta/recipes-core/glibc/glibc/0016-yes-within-the-path-sets-wrong-config-variables.patch +10 -10
similarity index 96%
rename from meta/recipes-core/glibc/glibc/0016-yes-within-the-path-sets-wrong-config-variables.patch
rename to meta/recipes-core/glibc/glibc/0015-yes-within-the-path-sets-wrong-config-variables.patch
index 089e8b1..90e12b8 100644
@@ -1,7 +1,7 @@
-From 70199fe59c38b621ab4121d7a55719b2b29b36de Mon Sep 17 00:00:00 2001
+From 4d6bead19874e519752ceeb2a15897ff2ffbe5e8 Mon Sep 17 00:00:00 2001
 From: Khem Raj <[email protected]>
 Date: Wed, 18 Mar 2015 00:31:06 +0000
-Subject: [PATCH 16/27] 'yes' within the path sets wrong config variables
+Subject: [PATCH 15/24] '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
@@ -63,7 +63,7 @@ index 7851dd4..6e92381 100644
    ], libc_cv_aarch64_be=yes, libc_cv_aarch64_be=no)])
  if test $libc_cv_aarch64_be = yes; then
 diff --git a/sysdeps/arm/configure b/sysdeps/arm/configure
-index 158116b..5eaf54e 100644
+index 431e843..e152461 100644
 --- a/sysdeps/arm/configure
 +++ b/sysdeps/arm/configure
 @@ -151,12 +151,12 @@ else
@@ -82,7 +82,7 @@ index 158116b..5eaf54e 100644
  else
    libc_cv_arm_pcs_vfp=no
 diff --git a/sysdeps/arm/configure.ac b/sysdeps/arm/configure.ac
-index 859c92a..2f4a6e2 100644
+index 90cdd69..05a262b 100644
 --- a/sysdeps/arm/configure.ac
 +++ b/sysdeps/arm/configure.ac
 @@ -15,8 +15,8 @@ AC_DEFINE(PI_STATIC_AND_HIDDEN)
@@ -165,10 +165,10 @@ index f05f438..dc86399 100644
    ], libc_cv_nios2_be=yes, libc_cv_nios2_be=no)])
  if test $libc_cv_nios2_be = yes; then
 diff --git a/sysdeps/unix/sysv/linux/mips/configure b/sysdeps/unix/sysv/linux/mips/configure
-index 83f8b13..2b6cbee 100644
+index dee56aa..f2049ed 100644
 --- a/sysdeps/unix/sysv/linux/mips/configure
 +++ b/sysdeps/unix/sysv/linux/mips/configure
-@@ -387,11 +387,11 @@ else
+@@ -414,11 +414,11 @@ else
  /* end confdefs.h.  */
  dnl
  #ifdef __mips_nan2008
@@ -183,10 +183,10 @@ index 83f8b13..2b6cbee 100644
  else
    libc_cv_mips_nan2008=no
 diff --git a/sysdeps/unix/sysv/linux/mips/configure.ac b/sysdeps/unix/sysv/linux/mips/configure.ac
-index 5039ec9..1035f76 100644
+index 45147c5..4224af1 100644
 --- a/sysdeps/unix/sysv/linux/mips/configure.ac
 +++ b/sysdeps/unix/sysv/linux/mips/configure.ac
-@@ -98,9 +98,9 @@ AC_COMPILE_IFELSE(
+@@ -105,9 +105,9 @@ AC_COMPILE_IFELSE(
  LIBC_CONFIG_VAR([mips-mode-switch],[${libc_mips_mode_switch}])
  
  AC_CACHE_CHECK([whether the compiler is using the 2008 NaN encoding],
@@ -199,7 +199,7 @@ index 5039ec9..1035f76 100644
  
  libc_mips_nan=
 diff --git a/sysdeps/unix/sysv/linux/powerpc/powerpc64/configure b/sysdeps/unix/sysv/linux/powerpc/powerpc64/configure
-index 70bb18a..ffd9e3e 100644
+index af06970..27b8c1b 100644
 --- a/sysdeps/unix/sysv/linux/powerpc/powerpc64/configure
 +++ b/sysdeps/unix/sysv/linux/powerpc/powerpc64/configure
 @@ -155,12 +155,12 @@ else
@@ -259,5 +259,5 @@ index 0822915..9a32fdd 100644
      ], libc_cv_ppc64_def_call_elf=yes, libc_cv_ppc64_def_call_elf=no)])
    if test $libc_cv_ppc64_def_call_elf = no; then
 -- 
-2.1.4
+2.6.4
 
meta/recipes-core/glibc/glibc/0016-timezone-re-written-tzselect-as-posix-sh.patch renamed from meta/recipes-core/glibc/glibc/0017-timezone-re-written-tzselect-as-posix-sh.patch +5 -5
similarity index 84%
rename from meta/recipes-core/glibc/glibc/0017-timezone-re-written-tzselect-as-posix-sh.patch
rename to meta/recipes-core/glibc/glibc/0016-timezone-re-written-tzselect-as-posix-sh.patch
index 0ce8230..e51b611 100644
@@ -1,7 +1,7 @@
-From c90306107fbbe2979012917e87747ce78c82ab88 Mon Sep 17 00:00:00 2001
+From 3e8586eb3509e2f0d6dfb74be8f89a30b06b56e9 Mon Sep 17 00:00:00 2001
 From: Khem Raj <[email protected]>
 Date: Wed, 18 Mar 2015 00:33:03 +0000
-Subject: [PATCH 17/27] timezone: re-written tzselect as posix sh
+Subject: [PATCH 16/24] timezone: re-written tzselect as posix sh
 
 To avoid the bash dependency.
 
@@ -15,10 +15,10 @@ Signed-off-by: Khem Raj <[email protected]>
  2 files changed, 2 insertions(+), 2 deletions(-)
 
 diff --git a/timezone/Makefile b/timezone/Makefile
-index 24c93c6..886b06e 100644
+index 99566cb..b6e757e 100644
 --- a/timezone/Makefile
 +++ b/timezone/Makefile
-@@ -126,7 +126,7 @@ $(testdata)/XT%: testdata/XT%
+@@ -122,7 +122,7 @@ $(testdata)/XT%: testdata/XT%
  	cp $< $@
  
  $(objpfx)tzselect: tzselect.ksh $(common-objpfx)config.make
@@ -41,5 +41,5 @@ index 9d70691..25f45a8 100755
  # Check for awk Posix compliance.
  ($AWK -v x=y 'BEGIN { exit 123 }') </dev/null >/dev/null 2>&1
 -- 
-2.1.4
+2.6.4
 
meta/recipes-core/glibc/glibc/0017-Remove-bash-dependency-for-nscd-init-script.patch renamed from meta/recipes-core/glibc/glibc/nscd-no-bash.patch +14 -2
similarity index 72%
rename from meta/recipes-core/glibc/glibc/nscd-no-bash.patch
rename to meta/recipes-core/glibc/glibc/0017-Remove-bash-dependency-for-nscd-init-script.patch
index c306ce6..0c9ae6c 100644
@@ -1,7 +1,16 @@
-Don't use bashisms (except for echo -n, which busybox supports) to avoid needing bash to start nscd.
+From cd9d9fe7316f4ce4ca9d8e67e22f5718879535e4 Mon Sep 17 00:00:00 2001
+From: Khem Raj <[email protected]>
+Date: Thu, 31 Dec 2015 14:33:02 -0800
+Subject: [PATCH 17/24] 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.
 
-Upstream-Status: Pending
 Signed-off-by: Ross Burton <[email protected]>
+Signed-off-by: Khem Raj <[email protected]>
+---
+ nscd/nscd.init | 14 +++++++-------
+ 1 file changed, 7 insertions(+), 7 deletions(-)
 
 diff --git a/nscd/nscd.init b/nscd/nscd.init
 index a882da7..b02986e 100644
@@ -59,3 +68,6 @@ index a882da7..b02986e 100644
  	RETVAL=1
  	;;
  esac
+-- 
+2.6.4
+
meta/recipes-core/glibc/glibc/0018-eglibc-Cross-building-and-testing-instructions.patch +3 -3
index 8eacbc0..e282e60 100644
@@ -1,7 +1,7 @@
-From eff048074ac7b5258bb615e5a5b221daa19b18ae Mon Sep 17 00:00:00 2001
+From 8f554f4a1beb39182aad9cd9b5e1da69464dff7e Mon Sep 17 00:00:00 2001
 From: Khem Raj <[email protected]>
 Date: Wed, 18 Mar 2015 00:42:58 +0000
-Subject: [PATCH 18/27] eglibc: Cross building and testing instructions
+Subject: [PATCH 18/24] eglibc: Cross building and testing instructions
 
 Ported from eglibc
 Upstream-Status: Pending
@@ -615,5 +615,5 @@ index 0000000..b67b468
 +  simply place copies of these libraries in the top GLIBC build
 +  directory.
 -- 
-2.1.4
+2.6.4
 
meta/recipes-core/glibc/glibc/0019-eglibc-Bring-Eglibc-option-group-infrastructure-to-g.patch deleted +0 -1436

1,436 lines not on this page · raw message

meta/recipes-core/glibc/glibc/0019-eglibc-Help-bootstrap-cross-toolchain.patch renamed from meta/recipes-core/glibc/glibc/0020-eglibc-Help-bootstrap-cross-toolchain.patch +4 -4
similarity index 95%
rename from meta/recipes-core/glibc/glibc/0020-eglibc-Help-bootstrap-cross-toolchain.patch
rename to meta/recipes-core/glibc/glibc/0019-eglibc-Help-bootstrap-cross-toolchain.patch
index df93094..c04e0a1 100644
@@ -1,7 +1,7 @@
-From 8fe0d29488b376011cdaaa462d557ffc0b31fb63 Mon Sep 17 00:00:00 2001
+From c2d49eab20db4ab02b6de62092fedc623d757146 Mon Sep 17 00:00:00 2001
 From: Khem Raj <[email protected]>
 Date: Wed, 18 Mar 2015 00:49:28 +0000
-Subject: [PATCH 20/27] eglibc: Help bootstrap cross toolchain
+Subject: [PATCH 19/24] eglibc: Help bootstrap cross toolchain
 
 Taken from EGLIBC, r1484 + r1525
 
@@ -29,7 +29,7 @@ Signed-off-by: Khem Raj <[email protected]>
  create mode 100644 include/stubs-bootstrap.h
 
 diff --git a/Makefile b/Makefile
-index f906391..e4e149e 100644
+index 9a01c93..a6ae003 100644
 --- a/Makefile
 +++ b/Makefile
 @@ -69,9 +69,18 @@ subdir-dirs = include
@@ -96,5 +96,5 @@ index 0000000..1d2b669
 +   EGLIBC subdir 'stubs' make targets, on every .o file in EGLIBC, but
 +   an empty stubs.h like this will do fine for GCC.  */
 -- 
-2.1.4
+2.6.4
 
meta/recipes-core/glibc/glibc/0020-eglibc-cherry-picked-from.patch renamed from meta/recipes-core/glibc/glibc/0021-eglibc-cherry-picked-from-http-www.eglibc.org-archiv.patch +19 -17
similarity index 70%
rename from meta/recipes-core/glibc/glibc/0021-eglibc-cherry-picked-from-http-www.eglibc.org-archiv.patch
rename to meta/recipes-core/glibc/glibc/0020-eglibc-cherry-picked-from.patch
index 38bb8a1..4362efa 100644
@@ -1,30 +1,32 @@
-From fe2ae4f877928dd6bff5bac3f15bce4b50d2bd12 Mon Sep 17 00:00:00 2001
+From 588d936b9aa65e7cc8b1eb2cad1d209087db43a9 Mon Sep 17 00:00:00 2001
 From: Khem Raj <[email protected]>
-Date: Wed, 18 Mar 2015 00:51:16 +0000
-Subject: [PATCH 21/27] eglibc: cherry-picked from
- http://www.eglibc.org/archives/patches/msg00772.html
+Date: Thu, 31 Dec 2015 15:10:33 -0800
+Subject: [PATCH 20/24] eglibc: cherry-picked from
 
-It hasn't yet been merged into glibc
+http://www.eglibc.org/archives/patches/msg00772.html
+
+Not yet merged into glibc
 
 Upstream-Status: Pending
 
 Signed-off-by: Khem Raj <[email protected]>
 ---
- resolv/res_libc.c | 15 +++++++++++++--
- 1 file changed, 13 insertions(+), 2 deletions(-)
+ resolv/res_libc.c | 14 +++++++++++++-
+ 1 file changed, 13 insertions(+), 1 deletion(-)
 
 diff --git a/resolv/res_libc.c b/resolv/res_libc.c
-index ee3fa21..29e2340 100644
+index a8394e0..981ac7c 100644
 --- a/resolv/res_libc.c
 +++ b/resolv/res_libc.c
-@@ -22,12 +22,13 @@
+@@ -18,6 +18,7 @@
+ #include <atomic.h>
+ #include <limits.h>
+ #include <sys/types.h>
++#include <sys/stat.h>
+ #include <netinet/in.h>
  #include <arpa/nameser.h>
  #include <resolv.h>
- #include <bits/libc-lock.h>
--
-+#include <sys/stat.h>
- 
- /* The following bit is copied from res_data.c (where it is #ifdef'ed
+@@ -28,6 +29,7 @@
     out) since res_init() should go into libc.so but the rest of that
     file should not.  */
  
@@ -32,7 +34,7 @@ index ee3fa21..29e2340 100644
  extern unsigned long long int __res_initstamp attribute_hidden;
  /* We have atomic increment operations on 64-bit platforms.  */
  #if __WORDSIZE == 64
-@@ -35,7 +36,6 @@ extern unsigned long long int __res_initstamp attribute_hidden;
+@@ -35,7 +37,6 @@ extern unsigned long long int __res_initstamp attribute_hidden;
  # define atomicincunlock(lock) (void) 0
  # define atomicinc(var) catomic_increment (&(var))
  #else
@@ -40,7 +42,7 @@ index ee3fa21..29e2340 100644
  # define atomicinclock(lock) __libc_lock_lock (lock)
  # define atomicincunlock(lock) __libc_lock_unlock (lock)
  # define atomicinc(var) ++var
-@@ -94,7 +94,18 @@ res_init(void) {
+@@ -94,7 +95,18 @@ res_init(void) {
  int
  __res_maybe_init (res_state resp, int preinit)
  {
@@ -60,5 +62,5 @@ index ee3fa21..29e2340 100644
  			if (resp->nscount > 0)
  				__res_iclose (resp, true);
 -- 
-2.1.4
+2.6.4
 
meta/recipes-core/glibc/glibc/0021-eglibc-Clear-cache-lines-on-ppc8xx.patch renamed from meta/recipes-core/glibc/glibc/0022-eglibc-Clear-cache-lines-on-ppc8xx.patch +15 -13
similarity index 80%
rename from meta/recipes-core/glibc/glibc/0022-eglibc-Clear-cache-lines-on-ppc8xx.patch
rename to meta/recipes-core/glibc/glibc/0021-eglibc-Clear-cache-lines-on-ppc8xx.patch
index 8a4c9c3..225f22f 100644
@@ -1,7 +1,7 @@
-From be7273225698074347a71de58006977bb304d7f7 Mon Sep 17 00:00:00 2001
+From b74e34e6f53816ad57b13ba6fd70a97db1bc1eae Mon Sep 17 00:00:00 2001
 From: Khem Raj <[email protected]>
-Date: Wed, 18 Mar 2015 00:53:47 +0000
-Subject: [PATCH 22/27] eglibc: Clear cache lines on ppc8xx
+Date: Thu, 31 Dec 2015 15:15:09 -0800
+Subject: [PATCH 21/24] eglibc: Clear cache lines on ppc8xx
 
 2007-06-13  Nathan Sidwell  <[email protected]>
             Mark Shinwell  <[email protected]>
@@ -13,11 +13,12 @@ Subject: [PATCH 22/27] eglibc: Clear cache lines on ppc8xx
         (DL_PLATFORM_AUXV): Likewise.
 
 Upstream-Status: Pending
+
 Signed-off-by: Khem Raj <[email protected]>
 ---
  sysdeps/unix/sysv/linux/powerpc/dl-sysdep.c  | 14 +++++++++++++-
- sysdeps/unix/sysv/linux/powerpc/libc-start.c | 15 ++++++++++++++-
- 2 files changed, 27 insertions(+), 2 deletions(-)
+ sysdeps/unix/sysv/linux/powerpc/libc-start.c | 16 +++++++++++++++-
+ 2 files changed, 28 insertions(+), 2 deletions(-)
 
 diff --git a/sysdeps/unix/sysv/linux/powerpc/dl-sysdep.c b/sysdeps/unix/sysv/linux/powerpc/dl-sysdep.c
 index c2504ff..d50f1cb 100644
@@ -47,15 +48,16 @@ index c2504ff..d50f1cb 100644
  	break;
  
 diff --git a/sysdeps/unix/sysv/linux/powerpc/libc-start.c b/sysdeps/unix/sysv/linux/powerpc/libc-start.c
-index a9364c7..a3ed1d4 100644
+index 209a16d..5d8572d 100644
 --- a/sysdeps/unix/sysv/linux/powerpc/libc-start.c
 +++ b/sysdeps/unix/sysv/linux/powerpc/libc-start.c
-@@ -68,11 +68,24 @@ __libc_start_main (int argc, char **argv,
-       rtld_fini = NULL;
-     }
+@@ -73,11 +73,25 @@ __libc_start_main (int argc, char **argv,
  
--  /* Initialize the __cache_line_size variable from the aux vector.  */
-+  /* Initialize the __cache_line_size variable from the aux vector.
+   /* Initialize the __cache_line_size variable from the aux vector.  For the
+      static case, we also need _dl_hwcap, _dl_hwcap2 and _dl_platform, so we
+-     can call __tcb_parse_hwcap_and_convert_at_platform ().  */
++     can call __tcb_parse_hwcap_and_convert_at_platform ().
++
 +     This is used by memset to optimize setting to zero.  We have to
 +     detect 8xx processors, which have buggy dcbz implementations that
 +     cannot report page faults correctly.  That requires reading SPR,
@@ -75,7 +77,7 @@ index a9364c7..a3ed1d4 100644
 +	  }
  	__cache_line_size = av->a_un.a_val;
  	break;
-       }
+ #ifndef SHARED
 -- 
-2.1.4
+2.6.4
 
meta/recipes-core/glibc/glibc/0022-eglibc-Resolve-__fpscr_values-on-SH4.patch renamed from meta/recipes-core/glibc/glibc/0023-eglibc-Resolve-__fpscr_values-on-SH4.patch +3 -3
similarity index 92%
rename from meta/recipes-core/glibc/glibc/0023-eglibc-Resolve-__fpscr_values-on-SH4.patch
rename to meta/recipes-core/glibc/glibc/0022-eglibc-Resolve-__fpscr_values-on-SH4.patch
index 9f3d753..88b20f6 100644
@@ -1,7 +1,7 @@
-From 718e7e5db1c8b073adb9a79ec6f167238c2d8bda Mon Sep 17 00:00:00 2001
+From 8f483cb1f21ab6431ff99e8d30d56b91607ae918 Mon Sep 17 00:00:00 2001
 From: Khem Raj <[email protected]>
 Date: Wed, 18 Mar 2015 00:55:53 +0000
-Subject: [PATCH 23/27] eglibc: Resolve __fpscr_values on SH4
+Subject: [PATCH 22/24] eglibc: Resolve __fpscr_values on SH4
 
 2010-09-29  Nobuhiro Iwamatsu  <[email protected]>
             Andrew Stubbs  <[email protected]>
@@ -52,5 +52,5 @@ index a02b7e2..b9be326 100644
 +weak_alias (___fpscr_values, __fpscr_values)
 +
 -- 
-2.1.4
+2.6.4
 
meta/recipes-core/glibc/glibc/0023-eglibc-Install-PIC-archives.patch renamed from meta/recipes-core/glibc/glibc/0025-eglibc-Install-PIC-archives.patch +10 -10
similarity index 90%
rename from meta/recipes-core/glibc/glibc/0025-eglibc-Install-PIC-archives.patch
rename to meta/recipes-core/glibc/glibc/0023-eglibc-Install-PIC-archives.patch
index c359cce..d95ea3b 100644
@@ -1,7 +1,7 @@
-From 5773417fa91a18cd39fb35c9907d72af0ed9ea33 Mon Sep 17 00:00:00 2001
+From 58d424884eed7efde6c90af0cd7c6c37cf9b444a Mon Sep 17 00:00:00 2001
 From: Khem Raj <[email protected]>
 Date: Wed, 18 Mar 2015 01:57:01 +0000
-Subject: [PATCH 25/27] eglibc: Install PIC archives
+Subject: [PATCH 23/24] eglibc: Install PIC archives
 
 Forward port from eglibc
 
@@ -29,10 +29,10 @@ Signed-off-by: Khem Raj <[email protected]>
  1 file changed, 40 insertions(+), 2 deletions(-)
 
 diff --git a/Makerules b/Makerules
-index 1dd41aa..41778e1 100644
+index fa24030..1ff4634 100644
 --- a/Makerules
 +++ b/Makerules
-@@ -713,6 +713,9 @@ ifeq ($(build-shared),yes)
+@@ -694,6 +694,9 @@ ifeq ($(build-shared),yes)
  $(common-objpfx)libc.so: $(common-objpfx)libc.map
  endif
  common-generated += libc.so libc_pic.os
@@ -42,7 +42,7 @@ index 1dd41aa..41778e1 100644
  ifdef libc.so-version
  $(common-objpfx)libc.so$(libc.so-version): $(common-objpfx)libc.so
  	$(make-link)
-@@ -955,6 +958,7 @@ endif
+@@ -936,6 +939,7 @@ endif
  
  install: check-install-supported
  
@@ -50,7 +50,7 @@ index 1dd41aa..41778e1 100644
  install: $(installed-libcs)
  $(installed-libcs): $(inst_libdir)/lib$(libprefix)%: lib $(+force)
  	$(make-target-directory)
-@@ -983,6 +987,22 @@ versioned := $(strip $(foreach so,$(install-lib.so),\
+@@ -964,6 +968,22 @@ versioned := $(strip $(foreach so,$(install-lib.so),\
  install-lib.so-versioned := $(filter $(versioned), $(install-lib.so))
  install-lib.so-unversioned := $(filter-out $(versioned), $(install-lib.so))
  
@@ -73,7 +73,7 @@ index 1dd41aa..41778e1 100644
  # For versioned libraries, we install three files:
  #	$(inst_libdir)/libfoo.so	-- for linking, symlink or ld script
  #	$(inst_slibdir)/libfoo.so.NN	-- for loading by SONAME, symlink
-@@ -1225,9 +1245,22 @@ $(addprefix $(inst_includedir)/,$(headers-nonh)): $(inst_includedir)/%: \
+@@ -1206,9 +1226,22 @@ $(addprefix $(inst_includedir)/,$(headers-nonh)): $(inst_includedir)/%: \
  endif	# headers-nonh
  endif	# headers
  
@@ -97,7 +97,7 @@ index 1dd41aa..41778e1 100644
  install-bin-nosubdir: $(addprefix $(inst_bindir)/,$(install-bin))
  install-bin-script-nosubdir: $(addprefix $(inst_bindir)/,$(install-bin-script))
  install-rootsbin-nosubdir: \
-@@ -1240,6 +1273,10 @@ install-data-nosubdir: $(addprefix $(inst_datadir)/,$(install-data))
+@@ -1221,6 +1254,10 @@ install-data-nosubdir: $(addprefix $(inst_datadir)/,$(install-data))
  install-headers-nosubdir: $(addprefix $(inst_includedir)/,$(headers))
  install-others-nosubdir: $(install-others)
  install-others-programs-nosubdir: $(install-others-programs)
@@ -108,7 +108,7 @@ index 1dd41aa..41778e1 100644
  
  # We need all the `-nosubdir' targets so that `install' in the parent
  # doesn't depend on several things which each iterate over the subdirs.
-@@ -1249,7 +1286,8 @@ install-%:: install-%-nosubdir ;
+@@ -1230,7 +1267,8 @@ install-%:: install-%-nosubdir ;
  
  .PHONY: install install-no-libc.a-nosubdir
  install-no-libc.a-nosubdir: install-headers-nosubdir install-data-nosubdir \
@@ -119,5 +119,5 @@ index 1dd41aa..41778e1 100644
  install-no-libc.a-nosubdir: install-bin-nosubdir install-bin-script-nosubdir \
  			    install-rootsbin-nosubdir install-sbin-nosubdir \
 -- 
-2.1.4
+2.6.4
 
meta/recipes-core/glibc/glibc/0024-eglibc-Forward-port-eglibc-options-groups-support.patch deleted +0 -16842

534 lines not on this page · raw message

meta/recipes-core/glibc/glibc/0025-eglibc-Forward-port-cross-locale-generation-support.patch new file +566 -0

566 lines not on this page · raw message

meta/recipes-core/glibc/glibc/0026-When-disabling-SSE-make-sure-fpmath-is-not-set-to-us.patch new file +48 -0

48 lines not on this page · raw message

meta/recipes-core/glibc/glibc/0026-eglibc-dl_debug_mask-is-controlled-by-__OPTION_EGLIB.patch deleted +0 -556

556 lines not on this page · raw message

meta/recipes-core/glibc/glibc/0027-eglibc-use-option-groups-Conditionally-exclude-c-tes.patch deleted +0 -145

145 lines not on this page · raw message

meta/recipes-core/glibc/glibc/0028-Clear-ELF_RTYPE_CLASS_EXTERN_PROTECTED_DATA-for-prel.patch deleted +0 -84

84 lines not on this page · raw message

meta/recipes-core/glibc/glibc/0029-fix-getmntent-empty-lines.patch deleted +0 -40
deleted file mode 100644
index 390bb30..0000000

Lines of this file are not shown. View the raw message.

meta/recipes-core/glibc/glibc/CVE-2015-7547.patch deleted +0 -642

642 lines not on this page · raw message

meta/recipes-core/glibc/glibc/strcoll-Remove-incorrect-STRDIFF-based-optimization-.patch deleted +0 -323

323 lines not on this page · raw message

meta/recipes-core/glibc/glibc/use_64bit_atomics.patch deleted +0 -24
deleted file mode 100644
index 16d7698..0000000

Lines of this file are not shown. View the raw message.

meta/recipes-core/glibc/glibc_2.23.bb renamed from meta/recipes-core/glibc/glibc_2.22.bb +13 -27
similarity index 72%
rename from meta/recipes-core/glibc/glibc_2.22.bb
rename to meta/recipes-core/glibc/glibc_2.23.bb
index c70d16e..18f4066 100644

Lines of this file are not shown. View the raw message.

meta/recipes-devtools/gcc/gcc-5.3.inc +1 -1
index a2e347a..0667299 100644

Lines of this file are not shown. View the raw message.

The rest of this diff is not shown. View the raw message.

Signature · 1 line
1.8.3.1

Part of the diff is not shown here. View the raw message.

author
#2 lore raw

PATCH 2/3 pseudo: Fix build when security flags are enabled

filter out PIE options

---
 .../files/0001-configure-Prune-PIE-flags.patch     | 44 ++++++++++++++++++++++
 meta/recipes-devtools/pseudo/pseudo_1.7.5.bb       |  1 +
 2 files changed, 45 insertions(+)
 create mode 100644 meta/recipes-devtools/pseudo/files/0001-configure-Prune-PIE-flags.patch
meta/recipes-devtools/pseudo/files/0001-configure-Prune-PIE-flags.patch new file +44 -0
new file mode 100644
index 0000000..43504ea
@@ -0,0 +1,44 @@
+From b5545c08e6c674c49aef14b47a56a3e92df4d2a7 Mon Sep 17 00:00:00 2001
+From: Khem Raj <[email protected]>
+Date: Wed, 17 Feb 2016 07:36:34 +0000
+Subject: [pseudo][PATCH] configure: Prune PIE flags
+
+LDFLAGS are not taken from environment and CFLAGS is used for LDFLAGS
+however when using security options -fpie and -pie options are coming
+as part of ARCH_FLAGS and they get into LDFLAGS of shared objects as
+well so we end up with conflicting options -shared -pie, which gold
+rejects outright and bfd linker lets the one appearning last in cmdline
+take effect. This create quite a unpleasant situation in OE when
+security flags are enabled and gold or not-gold options are used
+it errors out but errors are not same.
+
+Anyway, with this patch we filter pie options from ARCH_FLAGS
+ouright and take control of generating PIC objects
+
+Helps with errors like
+
+| /mnt/oe/build/tmp-glibc/sysroots/x86_64-linux/usr/libexec/x86_64-oe-linux/gcc/x86_64-oe-linux/5.3.0/ld: pseudo_client.o: relocation R_X86_64_PC32 against symbol `pseudo_util_debug_flags' can not be used when making a shared object; recompile with -fPIC
+| /mnt/oe/build/tmp-glibc/sysroots/x86_64-linux/usr/libexec/x86_64-oe-linux/gcc/x86_64-oe-linux/5.3.0/ld: final link failed: Bad value
+| collect2: error: ld returned 1 exit status
+| make: *** [lib/pseudo/lib64/libpseudo.so] Error 1
+
+Signed-off-by: Khem Raj <[email protected]>
+---
+Upstream-Status: Submitted
+
+ configure | 2 ++
+ 1 file changed, 2 insertions(+)
+
+diff --git a/configure b/configure
+index e5ef9ce..83b0890 100755
+--- a/configure
++++ b/configure
+@@ -339,3 +339,5 @@ sed -e '
+   s,@ARCH@,'"$opt_arch"',g
+   s,@BITS@,'"$opt_bits"',g
+ ' < Makefile.in > Makefile
++
++sed -i -e 's/\-[f]*pie//g' Makefile
+-- 
+1.8.3.1
+
meta/recipes-devtools/pseudo/pseudo_1.7.5.bb +1 -0
index 195a508..88bd1f5 100644
@@ -2,6 +2,7 @@ require pseudo.inc
 
 SRC_URI = " \
     http://downloads.yoctoproject.org/releases/pseudo/${BPN}-${PV}.tar.bz2 \
+    file://0001-configure-Prune-PIE-flags.patch \
     file://fallback-passwd \
     file://fallback-group \
 "
Signature · 1 line
1.8.3.1
author
#3 lore raw

PATCH 3/3 libnewt: Fix build with PIE flags

In reply to Khem Raj

security flags add -pie -fpie to CFLAGS which is not right options for compiling .so files, they are only useful for compiling executables

---
 meta/recipes-extended/newt/files/pie-flags.patch | 36 ++++++++++++++++++++++++
 meta/recipes-extended/newt/libnewt_0.52.18.bb    |  2 ++
 2 files changed, 38 insertions(+)
 create mode 100644 meta/recipes-extended/newt/files/pie-flags.patch
meta/recipes-extended/newt/files/pie-flags.patch new file +36 -0
new file mode 100644
index 0000000..8883e26
@@ -0,0 +1,36 @@
+specify -fPIC after CFLAGS so it can override the CFLAGS containing -pie and -fpie
+this makes sure the objects that go into shared objects are compiled with -fPIC
+and not with -fpie. We can not use -fpie on objects which will go into .so files
+Fixes errors like
+
+| /mnt/oe/build/tmp-glibc/sysroots/x86_64-linux/usr/libexec/x86_64-oe-linux/gcc/x86_64-oe-linux/5.3.0/ld: shared/newt.o: relocation R_X86_64_PC32 against undefined symbol `SLtt_Screen_Rows@@SLANG2' can not be used when making a shared object; recompile with -fPIC
+| /mnt/oe/build/tmp-glibc/sysroots/x86_64-linux/usr/libexec/x86_64-oe-linux/gcc/x86_64-oe-linux/5.3.0/ld: final link failed: Bad value
+| collect2: error: ld returned 1 exit status
+| make: *** [libnewt.so.0.52.18] Error 1
+
+Signed-off-by: Khem Raj <[email protected]>
+Upstream-Status: Pending
+Index: newt-0.52.18/Makefile.in
+===================================================================
+--- newt-0.52.18.orig/Makefile.in
++++ newt-0.52.18/Makefile.in
+@@ -96,8 +96,8 @@ _snack.$(SOEXT):   snack.c $(LIBNEWTSH)
+ 		PIFLAGS=`$$pyconfig --includes`; \
+ 		PLDFLAGS=`$$pyconfig --ldflags`; \
+ 		PLFLAGS=`$$pyconfig --libs`; \
+-		echo $(CC) $(SHCFLAGS) $(CPPFLAGS) $$PIFLAGS $$PCFLAGS -c -o $$ver/snack.o snack.c; \
+-		$(CC) $(SHCFLAGS) $(CPPFLAGS) $$PIFLAGS $$PCFLAGS -c -o $$ver/snack.o snack.c; \
++		echo $(CC) $(CPPFLAGS) $(SHCFLAGS) $$PIFLAGS $$PCFLAGS -c -o $$ver/snack.o snack.c; \
++		$(CC) $(CPPFLAGS) $(SHCFLAGS) $$PIFLAGS $$PCFLAGS -c -o $$ver/snack.o snack.c; \
+ 		echo $(CC) --shared $$PLDFLAGS $$PLFLAGS $(LDFLAGS) -o $$ver/_snack.$(SOEXT) $$ver/snack.o -L.  -lnewt $(LIBS); \
+ 		$(CC) --shared $$PLDFLAGS $$PLFLAGS $(LDFLAGS) -o $$ver/_snack.$(SOEXT) $$ver/snack.o -L.  -lnewt $(LIBS); \
+ 	done || :
+@@ -135,7 +135,7 @@ $(LIBNEWTSH): $(SHAREDOBJS)
+ 	ln -fs $(LIBNEWTSH) $(LIBNEWTSONAME)
+ 
+ $(SHAREDDIR)/%.o : %.c $(SHAREDDIR)
+-	$(CC) $(SHCFLAGS) -c $(CFLAGS) $(CPPFLAGS) -o $@ $<
++	$(CC) -c $(CFLAGS) $(CPPFLAGS) $(SHCFLAGS) -o $@ $<
+ 
+ install: $(LIBNEWT) install-sh whiptail
+ 	[ -d $(instroot)/$(bindir) ] || install -m 755 -d $(instroot)/$(bindir)
meta/recipes-extended/newt/libnewt_0.52.18.bb +2 -0
index 293c1a8..9a2964b 100644
@@ -22,6 +22,7 @@ SRC_URI = "https://fedorahosted.org/releases/n/e/newt/newt-${PV}.tar.gz \
            file://fix_SHAREDDIR.patch \
            file://cross_ar.patch \
            file://Makefile.in-Add-tinfo-library-to-the-linking-librari.patch \
+           file://pie-flags.patch \
 "
 
 SRC_URI[md5sum] = "685721bee1a318570704b19dcf31d268"
@@ -37,6 +38,7 @@ CLEANBROKEN = "1"
 
 export STAGING_INCDIR
 export STAGING_LIBDIR
+export CPPFLAGS
 
 export BUILD_SYS
 export HOST_SYS
Signature · 1 line
1.8.3.1
#4 lore raw

Re: [PATCH 1/3] glibc: Upgrade to 2.23

In reply to Khem Raj
Quoted 3 lines · Khem Raj

Drop kconfig and options-group support Forward port cross-localedef support
Assume ssp support in libc when building gcc-initial

Unfortunately sourceware git doesn't like us, glibc is failing to fetch :/

ERROR: glibc-initial-2.23-r0 do_fetch: Fetcher failure: Fetch command failed with exit code 128, output:
fatal: read error: Connection reset by peer

ERROR: glibc-initial-2.23-r0 do_fetch: Function failed: Fetcher failure
for URL:
'git://sourceware.org/git/glibc.git;branch=release/2.23/master;name=glibc'.
Unable to fetch URL from any source.
ERROR: Logfile of failure stored in:
/home/jenkins/oe/world/shr-core/tmp-glibc/work/armv5e-oe-linux-gnueabi/glibc-initial/2.23-r0/temp/log.do_fetch.31233
NOTE: recipe glibc-initial-2.23-r0: task do_fetch: Failed

author
#5 lore raw

Re: [PATCH 1/3] glibc: Upgrade to 2.23

Can you clone it outside oe

Quoted 21 lines · Martin Jansa
Quoted 3 lines · Khem Raj

Drop kconfig and options-group support Forward port cross-localedef support
Assume ssp support in libc when building gcc-initial

Unfortunately sourceware git doesn't like us, glibc is failing to fetch :/

ERROR: glibc-initial-2.23-r0 do_fetch: Fetcher failure: Fetch command failed with exit code 128, output:
fatal: read error: Connection reset by peer

ERROR: glibc-initial-2.23-r0 do_fetch: Function failed: Fetcher failure for URL:
'git://sourceware.org/git/glibc.git;branch=release/2.23/master;name=glibc '.
Unable to fetch URL from any source.
ERROR: Logfile of failure stored in:

/home/jenkins/oe/world/shr-core/tmp-glibc/work/armv5e-oe-linux-gnueabi/glibc-initial/2.23-r0/temp/log.do_fetch.31233
NOTE: recipe glibc-initial-2.23-r0: task do_fetch: Failed

#6 lore raw

Re: [PATCH 1/3] glibc: Upgrade to 2.23

Quoted 1 line · Khem Raj

Can you clone it outside oe

Yes, (at least now)

Quoted 23 lines · Martin Jansa
Quoted 22 lines · Khem Raj
Quoted 3 lines

Drop kconfig and options-group support Forward port cross-localedef support
Assume ssp support in libc when building gcc-initial

Unfortunately sourceware git doesn't like us, glibc is failing to fetch :/

ERROR: glibc-initial-2.23-r0 do_fetch: Fetcher failure: Fetch command failed with exit code 128, output:
fatal: read error: Connection reset by peer

ERROR: glibc-initial-2.23-r0 do_fetch: Function failed: Fetcher failure for URL:
'git://sourceware.org/git/glibc.git;branch=release/2.23/master;name=glibc '.
Unable to fetch URL from any source.
ERROR: Logfile of failure stored in:

/home/jenkins/oe/world/shr-core/tmp-glibc/work/armv5e-oe-linux-gnueabi/glibc-initial/2.23-r0/temp/log.do_fetch.31233
NOTE: recipe glibc-initial-2.23-r0: task do_fetch: Failed

Signature · 1 line
Martin 'JaMa' Jansa     jabber: [email protected]
#7 lore raw

Re: [PATCH 1/3] glibc: Upgrade to 2.23

In reply to Khem Raj
Quoted 3 lines · Khem Raj

Drop kconfig and options-group support Forward port cross-localedef support
Assume ssp support in libc when building gcc-initial

Breaks for me when building for x86 with -Os (building with -O1/-O2/-O3 are all OK):

i686-rdk-linux-gcc -m32 -march=core2 -mtune=core2 -msse3 -mfpmath=sse
--sysroot=/home/andre/rdk/rdk-master/build-vbox32/tmp/sysroots/vbox32-tcbootstrap
../sysdeps/unix/sysv/linux/posix_fallocate.c -c -std=gnu11
-fgnu89-inline -Os -Wall -Werror -Wno-error -Wundef -Wwrite-strings
-fdebug-prefix-map=/home/andre/rdk/rdk-master/build-vbox32/tmp/sysroots/vbox32=
-fdebug-prefix-map=/home/andre/rdk/rdk-master/build-vbox32/tmp/sysroots/x86_64-linux= -fdebug-prefix-map=/home/andre/rdk/rdk-master/build-vbox32/tmp/work/core2-32-rdk-linux/glibc/2.23-r0/build-i686-rdk-linux=/usr/src/glibc -fdebug-prefix-map=/home/andre/rdk/rdk-master/build-vbox32/tmp/work/core2-32-rdk-linux/glibc/2.23-r0/git=/usr/src/glibc
-feliminate-unused-debug-types -fmerge-all-constants -frounding-math
-g -pipe -Wstrict-prototypes -Wold-style-definition -Wa,-mtune=i686
-fexceptions -ftls-model=initial-exec -I../include
-I/home/andre/rdk/rdk-master/build-vbox32/tmp/work/core2-32-rdk-linux/glibc/2.23-r0/build-i686-rdk-linux/io
-I/home/andre/rdk/rdk-master/build-vbox32/tmp/work/core2-32-rdk-linux/glibc/2.23-r0/build-i686-rdk-linux
-I../sysdeps/unix/sysv/linux/i386/i686 -I../sysdeps/i386/i686/nptl
-I../sysdeps/unix/sysv/linux/i386 -I../sysdeps/unix/sysv/linux/x86
-I../sysdeps/i386/nptl -I../sysdeps/unix/sysv/linux/include
-I../sysdeps/unix/sysv/linux -I../sysdeps/nptl -I../sysdeps/pthread
-I../sysdeps/gnu -I../sysdeps/unix/inet -I../sysdeps/unix/sysv
-I../sysdeps/unix/i386 -I../sysdeps/unix -I../sysdeps/posix
-I../sysdeps/i386/i686/fpu/multiarch -I../sysdeps/i386/i686/fpu
-I../sysdeps/i386/i686/multiarch -I../sysdeps/i386/i686
-I../sysdeps/i386/fpu -I../sysdeps/x86/fpu/include
-I../sysdeps/x86/fpu -I../sysdeps/i386 -I../sysdeps/x86
-I../sysdeps/wordsize-32 -I../sysdeps/ieee754/ldbl-96
-I../sysdeps/ieee754/dbl-64 -I../sysdeps/ieee754/flt-32
-I../sysdeps/ieee754 -I../sysdeps/generic -I.. -I../libio -I.
-nostdinc -isystem /home/andre/rdk/rdk-master/build-vbox32/tmp/sysroots/x86_64-linux/usr/bin/i686-rdk-linux.gcc-cross-initial-i686/../../lib/i686-rdk-linux.gcc-cross-initial-i686/gcc/i686-rdk-linux/5.3.0/include -isystem /home/andre/rdk/rdk-master/build-vbox32/tmp/sysroots/x86_64-linux/usr/bin/i686-rdk-linux.gcc-cross-initial-i686/../../lib/i686-rdk-linux.gcc-cross-initial-i686/gcc/i686-rdk-linux/5.3.0/include-fixed -isystem /home/andre/rdk/rdk-master/build-vbox32/tmp/sysroots/vbox32/usr/include
-D_LIBC_REENTRANT -include
/home/andre/rdk/rdk-master/build-vbox32/tmp/work/core2-32-rdk-linux/glibc/2.23-r0/build-i686-rdk-linux/libc-modules.h
-DMODULE_NAME=libc -include ../include/libc-symbols.h -o
/home/andre/rdk/rdk-master/build-vbox32/tmp/work/core2-32-rdk-linux/glibc/2.23-r0/build-i686-rdk-linux/io/posix_fallocate.o
-MD -MP -MF /home/andre/rdk/rdk-master/build-vbox32/tmp/work/core2-32-rdk-linux/glibc/2.23-r0/build-i686-rdk-linux/io/posix_fallocate.o.dt
-MT /home/andre/rdk/rdk-master/build-vbox32/tmp/work/core2-32-rdk-linux/glibc/2.23-r0/build-i686-rdk-linux/io/posix_fallocate.o
../sysdeps/unix/sysv/linux/posix_fallocate.c: In function 'posix_fallocate':
../sysdeps/unix/sysv/linux/posix_fallocate.c:39:1: error: bp cannot be
used in asm here
}
^
../sysdeps/unix/sysv/linux/posix_fallocate.c:39:1: error: bp cannot be
used in asm here

#8 lore raw

Re: [PATCH 1/3] glibc: Upgrade to 2.23

Quoted 43 lines · Andre McCurdy
Quoted 3 lines · Khem Raj

Drop kconfig and options-group support Forward port cross-localedef support
Assume ssp support in libc when building gcc-initial

Breaks for me when building for x86 with -Os (building with -O1/-O2/-O3 are all OK):

i686-rdk-linux-gcc -m32 -march=core2 -mtune=core2 -msse3 -mfpmath=sse --sysroot=/home/andre/rdk/rdk-master/build-vbox32/tmp/sysroots/vbox32-tcbootstrap ../sysdeps/unix/sysv/linux/posix_fallocate.c -c -std=gnu11

(quoted diff) +0 -22
-fgnu89-inline  -Os -Wall -Werror -Wno-error -Wundef -Wwrite-strings
-fdebug-prefix-map=/home/andre/rdk/rdk-master/build-vbox32/tmp/sysroots/vbox32=
-fdebug-prefix-map=/home/andre/rdk/rdk-master/build-vbox32/tmp/sysroots/x86_64-linux=
-fdebug-prefix-map=/home/andre/rdk/rdk-master/build-vbox32/tmp/work/core2-32-rdk-linux/glibc/2.23-r0/build-i686-rdk-linux=/usr/src/glibc
-fdebug-prefix-map=/home/andre/rdk/rdk-master/build-vbox32/tmp/work/core2-32-rdk-linux/glibc/2.23-r0/git=/usr/src/glibc
-feliminate-unused-debug-types -fmerge-all-constants -frounding-math
-g -pipe -Wstrict-prototypes -Wold-style-definition   -Wa,-mtune=i686
-fexceptions  -ftls-model=initial-exec      -I../include
-I/home/andre/rdk/rdk-master/build-vbox32/tmp/work/core2-32-rdk-linux/glibc/2.23-r0/build-i686-rdk-linux/io
  -I/home/andre/rdk/rdk-master/build-vbox32/tmp/work/core2-32-rdk-linux/glibc/2.23-r0/build-i686-rdk-linux
  -I../sysdeps/unix/sysv/linux/i386/i686  -I../sysdeps/i386/i686/nptl
-I../sysdeps/unix/sysv/linux/i386  -I../sysdeps/unix/sysv/linux/x86
-I../sysdeps/i386/nptl  -I../sysdeps/unix/sysv/linux/include
-I../sysdeps/unix/sysv/linux  -I../sysdeps/nptl  -I../sysdeps/pthread
-I../sysdeps/gnu  -I../sysdeps/unix/inet  -I../sysdeps/unix/sysv
-I../sysdeps/unix/i386  -I../sysdeps/unix  -I../sysdeps/posix
-I../sysdeps/i386/i686/fpu/multiarch  -I../sysdeps/i386/i686/fpu
-I../sysdeps/i386/i686/multiarch  -I../sysdeps/i386/i686
-I../sysdeps/i386/fpu  -I../sysdeps/x86/fpu/include
-I../sysdeps/x86/fpu  -I../sysdeps/i386  -I../sysdeps/x86
-I../sysdeps/wordsize-32  -I../sysdeps/ieee754/ldbl-96
-I../sysdeps/ieee754/dbl-64  -I../sysdeps/ieee754/flt-32
-I../sysdeps/ieee754  -I../sysdeps/generic  -I.. -I../libio -I.
-nostdinc -isystem

/home/andre/rdk/rdk-master/build-vbox32/tmp/sysroots/x86_64-linux/usr/bin/i686-rdk-linux.gcc-cross-initial-i686/../../lib/i686-rdk-linux.gcc-cross-initial-i686/gcc/i686-rdk-linux/5.3.0/include

(quoted diff) +0 -2
-isystem /home/andre/rdk/rdk-master/build-vbox32/tmp/sysroots/x86_64-linux/usr/bin/i686-rdk-linux.gcc-cross-initial-i686/../../lib/i686-rdk-linux.gcc-cross-initial-i686/gcc/i686-rdk-linux/5.3.0/include-fixed
-isystem /home/andre/rdk/rdk-master/build-vbox32/tmp/sysroots/vbox32/usr/include
  -D_LIBC_REENTRANT -include

/home/andre/rdk/rdk-master/build-vbox32/tmp/work/core2-32-rdk-linux/glibc/2.23-r0/build-i686-rdk-linux/libc-modules.h
-DMODULE_NAME=libc -include ../include/libc-symbols.h -o
/home/andre/rdk/rdk-master/build-vbox32/tmp/work/core2-32-rdk-linux/glibc/2.23-r0/build-i686-rdk-linux/io/posix_fallocate.o

(quoted diff) +0 -2
-MD -MP -MF /home/andre/rdk/rdk-master/build-vbox32/tmp/work/core2-32-rdk-linux/glibc/2.23-r0/build-i686-rdk-linux/io/posix_fallocate.o.dt
-MT /home/andre/rdk/rdk-master/build-vbox32/tmp/work/core2-32-rdk-linux/glibc/2.23-r0/build-i686-rdk-linux/io/posix_fallocate.o
Quoted 7 lines

../sysdeps/unix/sysv/linux/posix_fallocate.c: In function 'posix_fallocate':
../sysdeps/unix/sysv/linux/posix_fallocate.c:39:1: error: bp cannot be used in asm here
}
^
../sysdeps/unix/sysv/linux/posix_fallocate.c:39:1: error: bp cannot be used in asm here

Hi All,

For the latest master, if 'DEBUG_BUILD' is enabled, the above error appers.

| ../sysdeps/unix/sysv/linux/posix_fallocate.c: In function 'posix_fallocate':
| ../sysdeps/unix/sysv/linux/posix_fallocate.c:39:1: error: bp cannot be used in asm here
|  }
|  ^

The problem could be reproduced if we add in local.conf the following line. DEBUG_BUILD = "1"

Do you have any idea what's going on there?

Regards,
Chen Qi

author
#9 lore raw

Re: [PATCH 1/3] glibc: Upgrade to 2.23

Quoted 65 lines · ChenQi
Quoted 43 lines · Andre McCurdy
Quoted 3 lines · Khem Raj

Drop kconfig and options-group support Forward port cross-localedef support
Assume ssp support in libc when building gcc-initial

Breaks for me when building for x86 with -Os (building with -O1/-O2/-O3 are all OK):

i686-rdk-linux-gcc -m32 -march=core2 -mtune=core2 -msse3 -mfpmath=sse --sysroot=/home/andre/rdk/rdk-master/build-vbox32/tmp/sysroots/vbox32-tcbootstrap ../sysdeps/unix/sysv/linux/posix_fallocate.c -c -std=gnu11

(quoted diff) +0 -22
-fgnu89-inline  -Os -Wall -Werror -Wno-error -Wundef -Wwrite-strings
-fdebug-prefix-map=/home/andre/rdk/rdk-master/build-vbox32/tmp/sysroots/vbox32=
-fdebug-prefix-map=/home/andre/rdk/rdk-master/build-vbox32/tmp/sysroots/x86_64-linux=
-fdebug-prefix-map=/home/andre/rdk/rdk-master/build-vbox32/tmp/work/core2-32-rdk-linux/glibc/2.23-r0/build-i686-rdk-linux=/usr/src/glibc
-fdebug-prefix-map=/home/andre/rdk/rdk-master/build-vbox32/tmp/work/core2-32-rdk-linux/glibc/2.23-r0/git=/usr/src/glibc
-feliminate-unused-debug-types -fmerge-all-constants -frounding-math
-g -pipe -Wstrict-prototypes -Wold-style-definition   -Wa,-mtune=i686
-fexceptions  -ftls-model=initial-exec      -I../include
-I/home/andre/rdk/rdk-master/build-vbox32/tmp/work/core2-32-rdk-linux/glibc/2.23-r0/build-i686-rdk-linux/io
 -I/home/andre/rdk/rdk-master/build-vbox32/tmp/work/core2-32-rdk-linux/glibc/2.23-r0/build-i686-rdk-linux
 -I../sysdeps/unix/sysv/linux/i386/i686  -I../sysdeps/i386/i686/nptl
-I../sysdeps/unix/sysv/linux/i386  -I../sysdeps/unix/sysv/linux/x86
-I../sysdeps/i386/nptl  -I../sysdeps/unix/sysv/linux/include
-I../sysdeps/unix/sysv/linux  -I../sysdeps/nptl  -I../sysdeps/pthread
-I../sysdeps/gnu  -I../sysdeps/unix/inet  -I../sysdeps/unix/sysv
-I../sysdeps/unix/i386  -I../sysdeps/unix  -I../sysdeps/posix
-I../sysdeps/i386/i686/fpu/multiarch  -I../sysdeps/i386/i686/fpu
-I../sysdeps/i386/i686/multiarch  -I../sysdeps/i386/i686
-I../sysdeps/i386/fpu  -I../sysdeps/x86/fpu/include
-I../sysdeps/x86/fpu  -I../sysdeps/i386  -I../sysdeps/x86
-I../sysdeps/wordsize-32  -I../sysdeps/ieee754/ldbl-96
-I../sysdeps/ieee754/dbl-64  -I../sysdeps/ieee754/flt-32
-I../sysdeps/ieee754  -I../sysdeps/generic  -I.. -I../libio -I.
-nostdinc -isystem

/home/andre/rdk/rdk-master/build-vbox32/tmp/sysroots/x86_64-linux/usr/bin/i686-rdk-linux.gcc-cross-initial-i686/../../lib/i686-rdk-linux.gcc-cross-initial-i686/gcc/i686-rdk-linux/5.3.0/include

(quoted diff) +0 -2
-isystem /home/andre/rdk/rdk-master/build-vbox32/tmp/sysroots/x86_64-linux/usr/bin/i686-rdk-linux.gcc-cross-initial-i686/../../lib/i686-rdk-linux.gcc-cross-initial-i686/gcc/i686-rdk-linux/5.3.0/include-fixed
-isystem /home/andre/rdk/rdk-master/build-vbox32/tmp/sysroots/vbox32/usr/include
 -D_LIBC_REENTRANT -include

/home/andre/rdk/rdk-master/build-vbox32/tmp/work/core2-32-rdk-linux/glibc/2.23-r0/build-i686-rdk-linux/libc-modules.h
-DMODULE_NAME=libc -include ../include/libc-symbols.h -o
/home/andre/rdk/rdk-master/build-vbox32/tmp/work/core2-32-rdk-linux/glibc/2.23-r0/build-i686-rdk-linux/io/posix_fallocate.o

(quoted diff) +0 -2
-MD -MP -MF /home/andre/rdk/rdk-master/build-vbox32/tmp/work/core2-32-rdk-linux/glibc/2.23-r0/build-i686-rdk-linux/io/posix_fallocate.o.dt
-MT /home/andre/rdk/rdk-master/build-vbox32/tmp/work/core2-32-rdk-linux/glibc/2.23-r0/build-i686-rdk-linux/io/posix_fallocate.o
Quoted 7 lines

../sysdeps/unix/sysv/linux/posix_fallocate.c: In function 'posix_fallocate':
../sysdeps/unix/sysv/linux/posix_fallocate.c:39:1: error: bp cannot be used in asm here
}
^
../sysdeps/unix/sysv/linux/posix_fallocate.c:39:1: error: bp cannot be used in asm here

Hi All,

For the latest master, if 'DEBUG_BUILD' is enabled, the above error appers.

| ../sysdeps/unix/sysv/linux/posix_fallocate.c: In function 'posix_fallocate':
| ../sysdeps/unix/sysv/linux/posix_fallocate.c:39:1: error: bp cannot be used in asm here
|  }
|  ^
Quoted 4 lines

The problem could be reproduced if we add in local.conf the following line. DEBUG_BUILD = "1"

Do you have any idea what's going on there?

posix_fallocate is calling a syscall helper with 6 argument, and there has been i386 specific optimization added to glibc which checks for gcc version and if its >= 5.0 then relies upon gcc to do right thing when spilling ebp, and switched to using inline syscall handler. But this spill is working/tested with -O2 and everything else is just a bonus if it works. Can you try this patch to glibc ?

sysdeps/unix/sysv/linux/i386/sysdep.h +1 -1
@@ -46,7 +46,7 @@
    to compile glibc.  Disable GCC 5 optimization when compiling for
    profiling since asm ("ebp") can't be used to put the 6th argument
    in %ebp for syscall.  */
-#if __GNUC_PREREQ (5,0) && !defined PROF
+#if __GNUC_PREREQ (5,0) && !defined PROF && !defined __OPTIMIZE_SIZE__
 # define OPTIMIZE_FOR_GCC_5
 #endif
 
#10 lore raw

Re: [PATCH 1/3] glibc: Upgrade to 2.23

Quoted 79 lines · Khem Raj
Quoted 63 lines · ChenQi
Quoted 43 lines · Andre McCurdy
Quoted 3 lines · Khem Raj

Drop kconfig and options-group support Forward port cross-localedef support
Assume ssp support in libc when building gcc-initial

Breaks for me when building for x86 with -Os (building with -O1/-O2/-O3 are all OK):

i686-rdk-linux-gcc -m32 -march=core2 -mtune=core2 -msse3 -mfpmath=sse --sysroot=/home/andre/rdk/rdk-master/build-vbox32/tmp/sysroots/vbox32-tcbootstrap ../sysdeps/unix/sysv/linux/posix_fallocate.c -c -std=gnu11

(quoted diff) +0 -22
-fgnu89-inline  -Os -Wall -Werror -Wno-error -Wundef -Wwrite-strings
-fdebug-prefix-map=/home/andre/rdk/rdk-master/build-vbox32/tmp/sysroots/vbox32=
-fdebug-prefix-map=/home/andre/rdk/rdk-master/build-vbox32/tmp/sysroots/x86_64-linux=
-fdebug-prefix-map=/home/andre/rdk/rdk-master/build-vbox32/tmp/work/core2-32-rdk-linux/glibc/2.23-r0/build-i686-rdk-linux=/usr/src/glibc
-fdebug-prefix-map=/home/andre/rdk/rdk-master/build-vbox32/tmp/work/core2-32-rdk-linux/glibc/2.23-r0/git=/usr/src/glibc
-feliminate-unused-debug-types -fmerge-all-constants -frounding-math
-g -pipe -Wstrict-prototypes -Wold-style-definition   -Wa,-mtune=i686
-fexceptions  -ftls-model=initial-exec      -I../include
-I/home/andre/rdk/rdk-master/build-vbox32/tmp/work/core2-32-rdk-linux/glibc/2.23-r0/build-i686-rdk-linux/io
  -I/home/andre/rdk/rdk-master/build-vbox32/tmp/work/core2-32-rdk-linux/glibc/2.23-r0/build-i686-rdk-linux
  -I../sysdeps/unix/sysv/linux/i386/i686  -I../sysdeps/i386/i686/nptl
-I../sysdeps/unix/sysv/linux/i386  -I../sysdeps/unix/sysv/linux/x86
-I../sysdeps/i386/nptl  -I../sysdeps/unix/sysv/linux/include
-I../sysdeps/unix/sysv/linux  -I../sysdeps/nptl  -I../sysdeps/pthread
-I../sysdeps/gnu  -I../sysdeps/unix/inet  -I../sysdeps/unix/sysv
-I../sysdeps/unix/i386  -I../sysdeps/unix  -I../sysdeps/posix
-I../sysdeps/i386/i686/fpu/multiarch  -I../sysdeps/i386/i686/fpu
-I../sysdeps/i386/i686/multiarch  -I../sysdeps/i386/i686
-I../sysdeps/i386/fpu  -I../sysdeps/x86/fpu/include
-I../sysdeps/x86/fpu  -I../sysdeps/i386  -I../sysdeps/x86
-I../sysdeps/wordsize-32  -I../sysdeps/ieee754/ldbl-96
-I../sysdeps/ieee754/dbl-64  -I../sysdeps/ieee754/flt-32
-I../sysdeps/ieee754  -I../sysdeps/generic  -I.. -I../libio -I.
-nostdinc -isystem

/home/andre/rdk/rdk-master/build-vbox32/tmp/sysroots/x86_64-linux/usr/bin/i686-rdk-linux.gcc-cross-initial-i686/../../lib/i686-rdk-linux.gcc-cross-initial-i686/gcc/i686-rdk-linux/5.3.0/include

(quoted diff) +0 -2
-isystem /home/andre/rdk/rdk-master/build-vbox32/tmp/sysroots/x86_64-linux/usr/bin/i686-rdk-linux.gcc-cross-initial-i686/../../lib/i686-rdk-linux.gcc-cross-initial-i686/gcc/i686-rdk-linux/5.3.0/include-fixed
-isystem /home/andre/rdk/rdk-master/build-vbox32/tmp/sysroots/vbox32/usr/include
  -D_LIBC_REENTRANT -include

/home/andre/rdk/rdk-master/build-vbox32/tmp/work/core2-32-rdk-linux/glibc/2.23-r0/build-i686-rdk-linux/libc-modules.h
-DMODULE_NAME=libc -include ../include/libc-symbols.h -o
/home/andre/rdk/rdk-master/build-vbox32/tmp/work/core2-32-rdk-linux/glibc/2.23-r0/build-i686-rdk-linux/io/posix_fallocate.o

(quoted diff) +0 -2
-MD -MP -MF /home/andre/rdk/rdk-master/build-vbox32/tmp/work/core2-32-rdk-linux/glibc/2.23-r0/build-i686-rdk-linux/io/posix_fallocate.o.dt
-MT /home/andre/rdk/rdk-master/build-vbox32/tmp/work/core2-32-rdk-linux/glibc/2.23-r0/build-i686-rdk-linux/io/posix_fallocate.o
Quoted 7 lines

../sysdeps/unix/sysv/linux/posix_fallocate.c: In function 'posix_fallocate':
../sysdeps/unix/sysv/linux/posix_fallocate.c:39:1: error: bp cannot be used in asm here
}
^
../sysdeps/unix/sysv/linux/posix_fallocate.c:39:1: error: bp cannot be used in asm here

Hi All,

For the latest master, if 'DEBUG_BUILD' is enabled, the above error appers.

| ../sysdeps/unix/sysv/linux/posix_fallocate.c: In function 'posix_fallocate':
| ../sysdeps/unix/sysv/linux/posix_fallocate.c:39:1: error: bp cannot be used in asm here
|  }
|  ^
Quoted 4 lines

The problem could be reproduced if we add in local.conf the following line. DEBUG_BUILD = "1"

Do you have any idea what's going on there?

posix_fallocate is calling a syscall helper with 6 argument, and there has been i386 specific optimization added to glibc which checks for gcc version and if its >= 5.0 then relies upon gcc to do right thing when spilling ebp, and switched to using inline syscall handler. But this spill is working/tested with -O2 and everything else is just a bonus if it works. Can you try this patch to glibc ?

sysdeps/unix/sysv/linux/i386/sysdep.h line 52

Quoted 8 lines
sysdeps/unix/sysv/linux/i386/sysdep.h +1 -1
@@ -46,7 +46,7 @@
     to compile glibc.  Disable GCC 5 optimization when compiling for
     profiling since asm ("ebp") can't be used to put the 6th argument
     in %ebp for syscall.  */
-#if __GNUC_PREREQ (5,0) && !defined PROF
+#if __GNUC_PREREQ (5,0) && !defined PROF && !defined __OPTIMIZE_SIZE__
  # define OPTIMIZE_FOR_GCC_5
  #endif
 

Hi Khem,

Thanks for your reply.
I've tried the above patch, but the problem is still there :(

Best Regards,
Chen Qi

#11 lore raw

Re: [PATCH 1/3] glibc: Upgrade to 2.23

Quoted 105 lines · ChenQi
Quoted 93 lines · Khem Raj
Quoted 77 lines · ChenQi
Quoted 53 lines · Andre McCurdy
Quoted 3 lines · Khem Raj

Drop kconfig and options-group support Forward port cross-localedef support
Assume ssp support in libc when building gcc-initial

Breaks for me when building for x86 with -Os (building with -O1/-O2/-O3 are all OK):

i686-rdk-linux-gcc -m32 -march=core2 -mtune=core2 -msse3 -mfpmath=sse --sysroot=/home/andre/rdk/rdk-master/build-vbox32/tmp/sysroots/vbox32-tcbootstrap

../sysdeps/unix/sysv/linux/posix_fallocate.c -c -std=gnu11

(quoted diff) +0 -23
-fgnu89-inline  -Os -Wall -Werror -Wno-error -Wundef -Wwrite-strings
-fdebug-prefix-map=/home/andre/rdk/rdk-master/build-vbox32/tmp/sysroots/vbox32= 
 
-fdebug-prefix-map=/home/andre/rdk/rdk-master/build-vbox32/tmp/sysroots/x86_64-linux= 
 
-fdebug-prefix-map=/home/andre/rdk/rdk-master/build-vbox32/tmp/work/core2-32-rdk-linux/glibc/2.23-r0/build-i686-rdk-linux=/usr/src/glibc 
 
-fdebug-prefix-map=/home/andre/rdk/rdk-master/build-vbox32/tmp/work/core2-32-rdk-linux/glibc/2.23-r0/git=/usr/src/glibc 
 
-feliminate-unused-debug-types -fmerge-all-constants -frounding-math
-g -pipe -Wstrict-prototypes -Wold-style-definition -Wa,-mtune=i686
-fexceptions  -ftls-model=initial-exec      -I../include
-I/home/andre/rdk/rdk-master/build-vbox32/tmp/work/core2-32-rdk-linux/glibc/2.23-r0/build-i686-rdk-linux/io 
 
-I/home/andre/rdk/rdk-master/build-vbox32/tmp/work/core2-32-rdk-linux/glibc/2.23-r0/build-i686-rdk-linux
  -I../sysdeps/unix/sysv/linux/i386/i686 -I../sysdeps/i386/i686/nptl
-I../sysdeps/unix/sysv/linux/i386 -I../sysdeps/unix/sysv/linux/x86
-I../sysdeps/i386/nptl  -I../sysdeps/unix/sysv/linux/include
-I../sysdeps/unix/sysv/linux  -I../sysdeps/nptl -I../sysdeps/pthread
-I../sysdeps/gnu  -I../sysdeps/unix/inet -I../sysdeps/unix/sysv
-I../sysdeps/unix/i386  -I../sysdeps/unix -I../sysdeps/posix
-I../sysdeps/i386/i686/fpu/multiarch -I../sysdeps/i386/i686/fpu
-I../sysdeps/i386/i686/multiarch  -I../sysdeps/i386/i686
-I../sysdeps/i386/fpu  -I../sysdeps/x86/fpu/include
-I../sysdeps/x86/fpu  -I../sysdeps/i386  -I../sysdeps/x86
-I../sysdeps/wordsize-32  -I../sysdeps/ieee754/ldbl-96
-I../sysdeps/ieee754/dbl-64  -I../sysdeps/ieee754/flt-32
-I../sysdeps/ieee754  -I../sysdeps/generic  -I.. -I../libio -I.
-nostdinc -isystem

/home/andre/rdk/rdk-master/build-vbox32/tmp/sysroots/x86_64-linux/usr/bin/i686-rdk-linux.gcc-cross-initial-i686/../../lib/i686-rdk-linux.gcc-cross-initial-i686/gcc/i686-rdk-linux/5.3.0/include

-isystem /home/andre/rdk/rdk-master/build-vbox32/tmp/sysroots/x86_64-linux/usr/bin/i686-rdk-linux.gcc-cross-initial-i686/../../lib/i686-rdk-linux.gcc-cross-initial-i686/gcc/i686-rdk-linux/5.3.0/include-fixed -isystem
/home/andre/rdk/rdk-master/build-vbox32/tmp/sysroots/vbox32/usr/include

-D_LIBC_REENTRANT -include
/home/andre/rdk/rdk-master/build-vbox32/tmp/work/core2-32-rdk-linux/glibc/2.23-r0/build-i686-rdk-linux/libc-modules.h

-DMODULE_NAME=libc -include ../include/libc-symbols.h -o /home/andre/rdk/rdk-master/build-vbox32/tmp/work/core2-32-rdk-linux/glibc/2.23-r0/build-i686-rdk-linux/io/posix_fallocate.o

Quoted 11 lines

-MD -MP -MF /home/andre/rdk/rdk-master/build-vbox32/tmp/work/core2-32-rdk-linux/glibc/2.23-r0/build-i686-rdk-linux/io/posix_fallocate.o.dt -MT /home/andre/rdk/rdk-master/build-vbox32/tmp/work/core2-32-rdk-linux/glibc/2.23-r0/build-i686-rdk-linux/io/posix_fallocate.o ../sysdeps/unix/sysv/linux/posix_fallocate.c: In function 'posix_fallocate':
../sysdeps/unix/sysv/linux/posix_fallocate.c:39:1: error: bp cannot be
used in asm here
}
^
../sysdeps/unix/sysv/linux/posix_fallocate.c:39:1: error: bp cannot be
used in asm here

Hi All,

For the latest master, if 'DEBUG_BUILD' is enabled, the above error appers.

| ../sysdeps/unix/sysv/linux/posix_fallocate.c: In function 'posix_fallocate':
| ../sysdeps/unix/sysv/linux/posix_fallocate.c:39:1: error: bp cannot be used in asm here
|  }
|  ^
Quoted 4 lines

The problem could be reproduced if we add in local.conf the following line. DEBUG_BUILD = "1"

Do you have any idea what's going on there?

posix_fallocate is calling a syscall helper with 6 argument, and there has been i386 specific optimization added to glibc which checks for gcc version and if its >= 5.0 then relies upon gcc to do right thing when spilling ebp, and switched to using inline syscall handler. But this spill is working/tested with -O2 and everything else is just a bonus if it works. Can you try this patch to glibc ?

sysdeps/unix/sysv/linux/i386/sysdep.h line 52

Quoted 8 lines
sysdeps/unix/sysv/linux/i386/sysdep.h +1 -1
@@ -46,7 +46,7 @@
     to compile glibc.  Disable GCC 5 optimization when compiling for
     profiling since asm ("ebp") can't be used to put the 6th argument
     in %ebp for syscall.  */
-#if __GNUC_PREREQ (5,0) && !defined PROF
+#if __GNUC_PREREQ (5,0) && !defined PROF && !defined __OPTIMIZE_SIZE__
  # define OPTIMIZE_FOR_GCC_5
  #endif
 

Hi Khem,

Quoted 6 lines

Thanks for your reply.
I've tried the above patch, but the problem is still there :(

Best Regards,
Chen Qi

And if we remove " -fno-omit-frame-pointer" from CFLAGS, things work. CFLAGS_remove_pn-glibc_x86 = " -fno-omit-frame-pointer"

Regards,
Chen Qi

author
#12 lore raw

Re: [PATCH 1/3] glibc: Upgrade to 2.23

Quoted 124 lines · ChenQi
Quoted 123 lines · ChenQi
Quoted 107 lines · Khem Raj
Quoted 83 lines · ChenQi
Quoted 55 lines · Andre McCurdy
Quoted 4 lines · Khem Raj

Drop kconfig and options-group support Forward port cross-localedef support
Assume ssp support in libc when building gcc-initial

Breaks for me when building for x86 with -Os (building with -O1/-O2/-O3 are all OK):

i686-rdk-linux-gcc -m32 -march=core2 -mtune=core2 -msse3 -mfpmath=sse

--sysroot=/home/andre/rdk/rdk-master/build-vbox32/tmp/sysroots/vbox32-tcbootstrap ../sysdeps/unix/sysv/linux/posix_fallocate.c -c -std=gnu11

(quoted diff) +0 -23
-fgnu89-inline  -Os -Wall -Werror -Wno-error -Wundef -Wwrite-strings
 
-fdebug-prefix-map=/home/andre/rdk/rdk-master/build-vbox32/tmp/sysroots/vbox32=
 
-fdebug-prefix-map=/home/andre/rdk/rdk-master/build-vbox32/tmp/sysroots/x86_64-linux=
 
-fdebug-prefix-map=/home/andre/rdk/rdk-master/build-vbox32/tmp/work/core2-32-rdk-linux/glibc/2.23-r0/build-i686-rdk-linux=/usr/src/glibc
 
-fdebug-prefix-map=/home/andre/rdk/rdk-master/build-vbox32/tmp/work/core2-32-rdk-linux/glibc/2.23-r0/git=/usr/src/glibc
-feliminate-unused-debug-types -fmerge-all-constants -frounding-math
-g -pipe -Wstrict-prototypes -Wold-style-definition -Wa,-mtune=i686
-fexceptions  -ftls-model=initial-exec      -I../include
 
-I/home/andre/rdk/rdk-master/build-vbox32/tmp/work/core2-32-rdk-linux/glibc/2.23-r0/build-i686-rdk-linux/io
 
-I/home/andre/rdk/rdk-master/build-vbox32/tmp/work/core2-32-rdk-linux/glibc/2.23-r0/build-i686-rdk-linux
  -I../sysdeps/unix/sysv/linux/i386/i686 -I../sysdeps/i386/i686/nptl
-I../sysdeps/unix/sysv/linux/i386 -I../sysdeps/unix/sysv/linux/x86
-I../sysdeps/i386/nptl  -I../sysdeps/unix/sysv/linux/include
-I../sysdeps/unix/sysv/linux  -I../sysdeps/nptl -I../sysdeps/pthread
-I../sysdeps/gnu  -I../sysdeps/unix/inet -I../sysdeps/unix/sysv
-I../sysdeps/unix/i386  -I../sysdeps/unix -I../sysdeps/posix
-I../sysdeps/i386/i686/fpu/multiarch -I../sysdeps/i386/i686/fpu
-I../sysdeps/i386/i686/multiarch  -I../sysdeps/i386/i686
-I../sysdeps/i386/fpu  -I../sysdeps/x86/fpu/include
-I../sysdeps/x86/fpu  -I../sysdeps/i386  -I../sysdeps/x86
-I../sysdeps/wordsize-32  -I../sysdeps/ieee754/ldbl-96
-I../sysdeps/ieee754/dbl-64  -I../sysdeps/ieee754/flt-32
-I../sysdeps/ieee754  -I../sysdeps/generic  -I.. -I../libio -I.
-nostdinc -isystem

/home/andre/rdk/rdk-master/build-vbox32/tmp/sysroots/x86_64-linux/usr/bin/i686-rdk-linux.gcc-cross-initial-i686/../../lib/i686-rdk-linux.gcc-cross-initial-i686/gcc/i686-rdk-linux/5.3.0/include -isystem /home/andre/rdk/rdk-master/build-vbox32/tmp/sysroots/x86_64-linux/usr/bin/i686-rdk-linux.gcc-cross-initial-i686/../../lib/i686-rdk-linux.gcc-cross-initial-i686/gcc/i686-rdk-linux/5.3.0/include-fixed -isystem
/home/andre/rdk/rdk-master/build-vbox32/tmp/sysroots/vbox32/usr/include
-D_LIBC_REENTRANT -include

/home/andre/rdk/rdk-master/build-vbox32/tmp/work/core2-32-rdk-linux/glibc/2.23-r0/build-i686-rdk-linux/libc-modules.h -DMODULE_NAME=libc -include ../include/libc-symbols.h -o

Quoted 13 lines

/home/andre/rdk/rdk-master/build-vbox32/tmp/work/core2-32-rdk-linux/glibc/2.23-r0/build-i686-rdk-linux/io/posix_fallocate.o -MD -MP -MF /home/andre/rdk/rdk-master/build-vbox32/tmp/work/core2-32-rdk-linux/glibc/2.23-r0/build-i686-rdk-linux/io/posix_fallocate.o.dt -MT /home/andre/rdk/rdk-master/build-vbox32/tmp/work/core2-32-rdk-linux/glibc/2.23-r0/build-i686-rdk-linux/io/posix_fallocate.o ../sysdeps/unix/sysv/linux/posix_fallocate.c: In function
'posix_fallocate':
../sysdeps/unix/sysv/linux/posix_fallocate.c:39:1: error: bp cannot be
used in asm here
}
^
../sysdeps/unix/sysv/linux/posix_fallocate.c:39:1: error: bp cannot be
used in asm here

Hi All,

For the latest master, if 'DEBUG_BUILD' is enabled, the above error appers.

| ../sysdeps/unix/sysv/linux/posix_fallocate.c: In function 'posix_fallocate':
| ../sysdeps/unix/sysv/linux/posix_fallocate.c:39:1: error: bp cannot be used in asm here

Quoted 8 lines
|  }
|  ^

The problem could be reproduced if we add in local.conf the following line.
DEBUG_BUILD = "1"

Do you have any idea what's going on there?

posix_fallocate is calling a syscall helper with 6 argument, and there has been i386 specific optimization added to glibc
which checks for gcc version and if its >= 5.0 then relies upon gcc to do right thing when spilling ebp, and switched to using
inline syscall handler. But this spill is working/tested with -O2 and everything else is just a bonus if it works. Can you try this patch to glibc ?

sysdeps/unix/sysv/linux/i386/sysdep.h line 52

Quoted 8 lines
sysdeps/unix/sysv/linux/i386/sysdep.h +1 -1
@@ -46,7 +46,7 @@
     to compile glibc.  Disable GCC 5 optimization when compiling for
     profiling since asm ("ebp") can't be used to put the 6th argument
     in %ebp for syscall.  */
-#if __GNUC_PREREQ (5,0) && !defined PROF
+#if __GNUC_PREREQ (5,0) && !defined PROF && !defined __OPTIMIZE_SIZE__
  # define OPTIMIZE_FOR_GCC_5
  #endif
 

Hi Khem,

Thanks for your reply.
I've tried the above patch, but the problem is still there :(

Quoted 6 lines
Quoted 3 lines

Best Regards,
Chen Qi

And if we remove " -fno-omit-frame-pointer" from CFLAGS, things work. CFLAGS_remove_pn-glibc_x86 = " -fno-omit-frame-pointer"

this option did not appear in the cmdline you pasted in your mails. But this would let gcc not need frames and ebp will be free to clobber and it would work but check how stack traces are looking then.

Quoted 3 lines

Regards,
Chen Qi