musl update, gcc fix for ssp on musl
cover musl update, gcc fix for ssp on musl
This series bring musl to tip of tree.
backports gcc fixes to fix libssp detection on musl as well as unwinding
64bit musl targets e.g. mips64 did not define sitefiles correctly, as a result applications were failing to compile e.g. python-pygobject was getting incorrect sizeof ssize_t
Khem Raj (3):
musl: Update to tip
siteinfo: Fix musl 64bit targets
gcc: Backport fixes for musl ssp configuration
meta/classes/siteinfo.bbclass | 7 +- meta/recipes-core/musl/musl.inc | 2 +- meta/recipes-core/musl/musl_git.bb | 2 +- meta/recipes-devtools/gcc/gcc-5.3.inc | 3 +- ...-provide-ssp-and-gcc_cv_target_dl_iterate.patch | 85 ++++++++++++++++++++++ .../gcc/gcc-5.3/0057-unwind-fix-for-musl.patch | 42 +++++++++++ 6 files changed, 136 insertions(+), 5 deletions(-) create mode 100644 meta/recipes-devtools/gcc/gcc-5.3/0056-Enable-libc-provide-ssp-and-gcc_cv_target_dl_iterate.patch create mode 100644 meta/recipes-devtools/gcc/gcc-5.3/0057-unwind-fix-for-musl.patch
Signature · 1 line
1.8.3.1
PATCH 1/3 musl: Update to tip
Rich Felker (2):
fix padding string formats to width in wide printf variants fix outdated pathnames in COPYRIGHT file
Szabolcs Nagy (7):
deduplicate bits/mman.h
mips64: add recent linux syscall numbers
add copy_file_range syscall numbers from linux v4.5 add IPV6_HDRINCL socket option from linux v4.5
add SO_ATTACH_REUSEPORT_[CE]BPF socket options from linux v4.5 add EPOLLEXCLUSIVE epoll flag from linux v4.5
add MADV_FREE madvise command from linux v4.5
Timo Teräs (1):
fix gethostbyaddr_r to fill struct hostent.h_length as appropriate
updated paths in copyright text
see http://git.musl-libc.org/cgit/musl/commit/?id=dc4520d9c0b79bc5944f509e4e9061e5081e38ca
--- meta/recipes-core/musl/musl.inc | 2 +- meta/recipes-core/musl/musl_git.bb | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-)
meta/recipes-core/musl/musl.inc +1 -1
@@ -9,7 +9,7 @@ standards-conformance and safety." HOMEPAGE = "http://www.musl-libc.org/" LICENSE = "MIT" SECTION = "libs" -LIC_FILES_CHKSUM = "file://COPYRIGHT;md5=c9c8cfb4e5e4b9ee6ff570f078950120" +LIC_FILES_CHKSUM = "file://COPYRIGHT;md5=082411391b4d1ace0d30f4c84317cc05" PATH_prepend = "${STAGING_BINDIR_TOOLCHAIN}.${STAGINGCC}:" TOOLCHAIN_OPTIONS = " --sysroot=${STAGING_DIR_TCBOOTSTRAP}"
meta/recipes-core/musl/musl_git.bb +1 -1
@@ -3,7 +3,7 @@ require musl.inc -SRCREV = "de400b6609becbc6a5ae87fa8b155f02a860e257" +SRCREV = "5978eb703ce0e64dd778a88c1ffffb76fe5e2202" PV = "1.1.14+git${SRCPV}"
Signature · 1 line
1.8.3.1
PATCH 2/3 siteinfo: Fix musl 64bit targets
In reply to Khem RajFound that ssize_t was being wrongly computed for mips64 musl because it was using wrong cache files.
alias them to glibc versions, musl doesn't _yet_ have target incompatibilities to note in siteinfo thankfully.
Add musl aliases for aarch64 and ppc64 targets
--- meta/classes/siteinfo.bbclass | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-)
meta/classes/siteinfo.bbclass +5 -2
@@ -71,6 +71,8 @@ def siteinfo_data(d): targetinfo = { "aarch64-linux-gnu": "aarch64-linux", "aarch64_be-linux-gnu": "aarch64_be-linux", + "aarch64-linux-musl": "aarch64-linux", + "aarch64_be-linux-musl": "aarch64_be-linux", "arm-linux-gnueabi": "arm-linux", "arm-linux-musleabi": "arm-linux", "arm-linux-uclibceabi": "arm-linux-uclibc",
@@ -79,8 +81,8 @@ def siteinfo_data(d): "armeb-linux-musleabi": "armeb-linux", "mips-linux-musl": "mips-linux", "mipsel-linux-musl": "mipsel-linux", - "mips64-linux-musl": "mips-linux", - "mips64el-linux-musl": "mipsel-linux", + "mips64-linux-musl": "mips64-linux", + "mips64el-linux-musl": "mips64el-linux", "mips64-linux-gnun32": "mips-linux bit-32", "mips64el-linux-gnun32": "mipsel-linux bit-32", "powerpc-linux": "powerpc32-linux",
@@ -92,6 +94,7 @@ def siteinfo_data(d): "powerpc64-linux-gnuspe": "powerpc-linux powerpc64-linux", "powerpc64-linux-muslspe": "powerpc-linux powerpc64-linux", "powerpc64-linux": "powerpc-linux", + "powerpc64-linux-musl": "powerpc-linux", "x86_64-cygwin": "bit-64", "x86_64-darwin": "bit-64", "x86_64-darwin9": "bit-64",
Signature · 1 line
1.8.3.1
PATCH 3/3 gcc: Backport fixes for musl ssp configuration
In reply to Khem RajWe were trying to inject cached configure variables via EXTRA_OECONF, but that was not working due to the fact that gcc configure is called recursively via makefiles and hence these were getting lost.
These backports from master fixes the problem by
defining the options in configure itself
dl_iterate_phdr is provided by musl as well, so lets not depend on glibc defines like inhibit_libc alone
--- meta/recipes-devtools/gcc/gcc-5.3.inc | 3 +- ...-provide-ssp-and-gcc_cv_target_dl_iterate.patch | 85 ++++++++++++++++++++++ .../gcc/gcc-5.3/0057-unwind-fix-for-musl.patch | 42 +++++++++++ 3 files changed, 129 insertions(+), 1 deletion(-) create mode 100644 meta/recipes-devtools/gcc/gcc-5.3/0056-Enable-libc-provide-ssp-and-gcc_cv_target_dl_iterate.patch create mode 100644 meta/recipes-devtools/gcc/gcc-5.3/0057-unwind-fix-for-musl.patch
meta/recipes-devtools/gcc/gcc-5.3.inc +2 -1
@@ -85,6 +85,8 @@ SRC_URI = "\ file://0053-expr.c-PR-target-65358-Avoid-clobbering-partial-argu.patch \ file://0054-support-ffile-prefix-map.patch \ file://0055-Reuse-fdebug-prefix-map-to-replace-ffile-prefix-map.patch \ + file://0056-Enable-libc-provide-ssp-and-gcc_cv_target_dl_iterate.patch \ + file://0057-unwind-fix-for-musl.patch \ " BACKPORTS = ""
@@ -132,7 +134,6 @@ EXTRA_OECONF_INITIAL = "\ " EXTRA_OECONF_append_libc-uclibc = " --disable-decimal-float " -EXTRA_OECONF_append_libc-musl = " gcc_cv_libc_provides_ssp=yes gcc_cv_target_dl_iterate_phdr=yes " EXTRA_OECONF_PATHS = "\ --with-gxx-include-dir=/not/exist{target_includedir}/c++/${BINV} \
meta/recipes-devtools/gcc/gcc-5.3/0056-Enable-libc-provide-ssp-and-gcc_cv_target_dl_iterate.patch new file +85 -0
85 lines not on this page · raw message
meta/recipes-devtools/gcc/gcc-5.3/0057-unwind-fix-for-musl.patch new file +42 -0
42 lines not on this page · raw message
Signature · 1 line
1.8.3.1