summaryrefslogtreecommitdiff
path: root/poky/meta/recipes-devtools/gcc/gcc-9.2/0026-Search-target-sysroot-gcc-version-specific-dirs-with.patch
diff options
context:
space:
mode:
authorBrad Bishop <bradleyb@fuzziesquirrel.com>2019-08-26 08:33:31 +0300
committerBrad Bishop <bradleyb@fuzziesquirrel.com>2019-08-26 08:33:45 +0300
commitc68388fccb8c0b5bf4d6b8efff91203796be98b2 (patch)
treef2b3d0381b84be54f0fc03f24daf603d2a6cb95a /poky/meta/recipes-devtools/gcc/gcc-9.2/0026-Search-target-sysroot-gcc-version-specific-dirs-with.patch
parent665fd026517259031fd55bcfb2a9dab0d9f3582a (diff)
downloadopenbmc-c68388fccb8c0b5bf4d6b8efff91203796be98b2.tar.xz
poky: subtree update:20946c63c2..c17113f1e2
Adrian Bunk (3): shadow: musl now supports secure_getenv kmod: Replace dolt hacks with backport of upstream dolt removal btrfs-tools: Add a PACKAGECONFIG for zstd Alexander Kanavin (12): linux-yocto: add drm-bochs support mesa: fix upstream version check conf/conf-notes.txt: add a mention of common tools conf/conf-notes.txt: add a mention of common tools gtk-doc: upgrade 1.30 -> 1.31 desktop-file-utils: upgrade 0.23 -> 0.24 libdazzle: upgrade 3.32.2 -> 3.32.3 rt-tests: exclude another development version vala: upgrade 0.44.5 -> 0.44.7 epiphany: upgrade 3.32.3 -> 3.32.4 libmodulemd: depend on target python at build time createrepo-c: upgrade 0.14.3 -> 0.15.0 Alistair Francis (3): qemu: Upgrade to version 4.1 scripts/runqemu: Add support for the BIOS variable qemuriscv64: Specify the firmware as a bios instead of kernel Anuj Mittal (2): binutils: fix CVE-2019-14250 CVE-2019-14444 patch: backport fixes Bruce Ashfield (6): kernel-devsrc: tweak for v5.3+ kern-tools: Add SPDX license headers to source files linux-yocto: arch/x86/boot: use prefix map to avoid embedded paths kernel-yocto: import security fragments from meta-security kconf_check: tweak CONFIG_ regex linux-yocto/4.19: make drm-bochs feature available Changqing Li (2): dbus: disable test-bus qemumips/qemumips64: move QB_SYSTEM_NAME to corresponding conf Chen Qi (1): target-sdk-provides-dummy: extend packages for multilib case He Zhe (2): ltp: Fix tgkill03 failure ltp: Fix ustat02 failure Hongxu Jia (3): nfs-utils: decrease RLIMIT_NOFILE to 4k for systemd distcc: upgrade 3.3.2 -> 3.3.3 ncurses: upgrade 6.1+20181013 -> 6.1+20190803 Jaewon Lee (1): devtool: build: Also run deploy for devtool build if applicable Jason Wessel (2): cross-localedef-native: Add hardlink resolver from util-linux libc-package.bbclass: Split locale hard link processing into two parts Jon Mason (1): resulttool: Prevent multiple results for the same test Kai Kang (1): webkitgtk: disable gold on mipsn32 Kevin Hao (1): psplash: Avoid mount the psplash tmpfs twice Khem Raj (10): musl: Update to latest tip systemd: Drop musl __secure_getenv patch mesa: Add packageconfigs for vc4 and v3d util-linux: Make pam specific logic apply to target recipe alone systemd.bbclass: Limit rm_sysvinit_initddir and rm_systemd_unitdir to target alone systemd: Refresh patch after removal of __secure_getenv patch gcc-9: Upgrade to 9.2 gcc: Search in OE specific target gcclibdir opensbi: Disable SECURITY_CFLAGS since it cant link with libssp libffi: Upgrade to 3.3-rc0 Lei Maohui (2): nativesdk-qemu: support aarch64_be. at: fix a spelling mistake. Mikko Rapeli (1): stress-ng: provide stress Mingli Yu (1): python3: fix the test_locale output format Oleksandr Kravchuk (8): ffmpeg: update to 4.2 python-setuptools: update to 41.1.0 python3-scons: update to 3.1.1 ofono: update to 1.30 bitbake.conf: fix XORG_MIRROR URL cups: update to 2.2.12 git: update to 2.23.0 python-setuptools: update to 41.2.0 Otavio Salvador (2): linux-firmware: Upgrade 20190618 -> 20190815 kmscube: Bump revision to f632b23 Philippe Normand (1): libtasn1: Enable nativesdk support Ricardo Ribalda Delgado (1): packagegroup-core-base-utils: Make it machine specific Richard Purdie (7): yocto-check-layer: Ensure we use OEBasicHash as the signature handler package: Fix race between do_package and do_packagedata bitbake: cookerdata: Delay the setup of the siggen slightly to allow metadata defined siggens bitbake: runqueue: Small but critical fix bitbake: runqueue: Optimise holdoff task handling bitbake: runqueue: Further optimise holdoff tasks bitbake: runqueue: Optimise build_taskdepdata slightly Ross Burton (2): systemd: add PACKAGECONFIG for gnu-efi pango: upgrade to 1.44.5 Trevor Gamblin (2): quilt: Export QUILT_PC variable in ptest Makefile quilt: added less to RDEPENDS list Wes Lindauer (5): iw: Fix license field to BSD-2-Clause openssh: Update LICENSE field with missing values shadow: Fix BSD license file checksum sudo: Fix BSD license file checksum libunwind: Fix MIT license file checksum Yuan Chao (1): libnss-nis: upgrade 3.0 -> 3.1 Zang Ruochen (3): acpid: upgrade 2.0.31 -> 2.0.32 lz4:upgrade 1.9.1 -> 1.9.2 python3-pip:upgrade 19.2.1 -> 19.2.2 Change-Id: I2068692bfdbbf18f892761a12f85e913b8212f3f Signed-off-by: Brad Bishop <bradleyb@fuzziesquirrel.com>
Diffstat (limited to 'poky/meta/recipes-devtools/gcc/gcc-9.2/0026-Search-target-sysroot-gcc-version-specific-dirs-with.patch')
-rw-r--r--poky/meta/recipes-devtools/gcc/gcc-9.2/0026-Search-target-sysroot-gcc-version-specific-dirs-with.patch102
1 files changed, 102 insertions, 0 deletions
diff --git a/poky/meta/recipes-devtools/gcc/gcc-9.2/0026-Search-target-sysroot-gcc-version-specific-dirs-with.patch b/poky/meta/recipes-devtools/gcc/gcc-9.2/0026-Search-target-sysroot-gcc-version-specific-dirs-with.patch
new file mode 100644
index 000000000..fde206eb7
--- /dev/null
+++ b/poky/meta/recipes-devtools/gcc/gcc-9.2/0026-Search-target-sysroot-gcc-version-specific-dirs-with.patch
@@ -0,0 +1,102 @@
+From dab4db14e319f3239a2b4c7d1fbf2971936e27ba Mon Sep 17 00:00:00 2001
+From: Khem Raj <raj.khem@gmail.com>
+Date: Mon, 7 Dec 2015 23:41:45 +0000
+Subject: [PATCH 26/36] Search target sysroot gcc version specific dirs with
+ multilib.
+
+We install the gcc libraries (such as crtbegin.p) into
+<sysroot><libdir>/<target-sys>/5.2.0/
+which is a default search path for GCC (aka multi_suffix in the
+code below). <target-sys> is 'machine' in gcc's terminology. We use
+these directories so that multiple gcc versions could in theory
+co-exist on target.
+
+We only want to build one gcc-cross-canadian per arch and have this work
+for all multilibs. <target-sys> can be handled by mapping the multilib
+<target-sys> to the one used by gcc-cross-canadian, e.g.
+mips64-polkmllib32-linux
+is symlinked to by mips64-poky-linux.
+
+The default gcc search path in the target sysroot for a "lib64" mutlilib
+is:
+
+<sysroot>/lib32/mips64-poky-linux/5.2.0/
+<sysroot>/lib32/../lib64/
+<sysroot>/usr/lib32/mips64-poky-linux/5.2.0/
+<sysroot>/usr/lib32/../lib64/
+<sysroot>/lib32/
+<sysroot>/usr/lib32/
+
+which means that the lib32 crtbegin.o will be found and the lib64 ones
+will not which leads to compiler failures.
+
+This patch injects a multilib version of that path first so the lib64
+binaries can be found first. With this change the search path becomes:
+
+<sysroot>/lib32/../lib64/mips64-poky-linux/5.2.0/
+<sysroot>/lib32/mips64-poky-linux/5.2.0/
+<sysroot>/lib32/../lib64/
+<sysroot>/usr/lib32/../lib64/mips64-poky-linux/5.2.0/
+<sysroot>/usr/lib32/mips64-poky-linux/5.2.0/
+<sysroot>/usr/lib32/../lib64/
+<sysroot>/lib32/
+<sysroot>/usr/lib32/
+
+Upstream-Status: Pending
+RP 2015/7/31
+
+Signed-off-by: Khem Raj <raj.khem@gmail.com>
+---
+ gcc/gcc.c | 29 ++++++++++++++++++++++++++++-
+ 1 file changed, 28 insertions(+), 1 deletion(-)
+
+diff --git a/gcc/gcc.c b/gcc/gcc.c
+index db0e2934038..1c21d1b08eb 100644
+--- a/gcc/gcc.c
++++ b/gcc/gcc.c
+@@ -2610,7 +2610,7 @@ for_each_path (const struct path_prefix *paths,
+ if (path == NULL)
+ {
+ len = paths->max_len + extra_space + 1;
+- len += MAX (MAX (suffix_len, multi_os_dir_len), multiarch_len);
++ len += MAX ((suffix_len + multi_os_dir_len), multiarch_len);
+ path = XNEWVEC (char, len);
+ }
+
+@@ -2622,6 +2622,33 @@ for_each_path (const struct path_prefix *paths,
+ /* Look first in MACHINE/VERSION subdirectory. */
+ if (!skip_multi_dir)
+ {
++ if (!(pl->os_multilib ? skip_multi_os_dir : skip_multi_dir))
++ {
++ const char *this_multi;
++ size_t this_multi_len;
++
++ if (pl->os_multilib)
++ {
++ this_multi = multi_os_dir;
++ this_multi_len = multi_os_dir_len;
++ }
++ else
++ {
++ this_multi = multi_dir;
++ this_multi_len = multi_dir_len;
++ }
++
++ /* Look in multilib MACHINE/VERSION subdirectory first */
++ if (this_multi_len)
++ {
++ memcpy (path + len, this_multi, this_multi_len + 1);
++ memcpy (path + len + this_multi_len, multi_suffix, suffix_len + 1);
++ ret = callback (path, callback_info);
++ if (ret)
++ break;
++ }
++ }
++
+ memcpy (path + len, multi_suffix, suffix_len + 1);
+ ret = callback (path, callback_info);
+ if (ret)
+--
+2.22.1
+