From f52e3dde8c006aa1204b4d74d64bcda47fcd061e Mon Sep 17 00:00:00 2001 From: Patrick Williams Date: Fri, 26 Jan 2024 13:04:43 -0600 Subject: subtree updates MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit meta-openembedded: 4dbbef7a39..9953ca1ac0: Andreas Cord-Landwehr (1): freerdp: provide cmake integration BELOUARGA Mohamed (1): Monocypher: Correct source URI and license Clément Péron (2): abseil-cpp: rename recipe to follow the version protobuf: upgrade 4.23.4 -> 4.25.2 Fabio Estevam (1): v4l-utils: Remove unneeded musl patch Gassner, Tobias.ext (1): softhsm_2.6.1.bb fixing p11-kit module path, adding softhsm2.module to FILES Gianfranco Costamagna (1): vbxguestdrivers: upgrade 7.0.12 -> 7.0.14 Khem Raj (4): Revert "rng-tools: move from oe-core to meta-oe" python3-pillow: Correct branch parameter in SRC_URI python3-multidict: Make it work with python 3.12 python3-multidict: Fix running ptests Markus Volk (6): eog: update 45.1 -> 45.2 file-roller: update 43.0 -> 43.1 gvfs: update 1.52.1 -> 1.52.2 gjs: update 1.78.1 -> 1.78.2 mozjs: update 115.2.0 -> 115.6.0 pipewire: update 1.0.0 -> 1.0.1 Michael Haener (1): nginx: add http sub module feature Pablo Saavedra (1): libbacktrace: fix sdk installation Peter Marko (2): protobuf-c: change branch to master srecord: fix malformed patch upstream status Ross Burton (1): mozjs-115: fix the build on ARMv5 Yi Zhao (1): samba: upgrade 4.19.3 -> 4.19.4 Yoann Congal (3): packagegroup-meta-oe: remove mongodb python3-coverage: add native and nativesdk BBCLASSEXTEND python3-pytest-cov: Add missing python3-pytest RDEPENDS alperak (8): fmt: upgrade 10.1.1 -> 10.2.1 gerbera: upgrade 1.12.1 -> 2.0.0 spdlog: upgrade 1.12 -> 1.13 libebml: upgrade 1.4.4 -> 1.4.5 lcms: upgrade 2.15 -> 2.16 libkcapi: upgrade 1.4.0 -> 1.5.0 icewm: upgrade 3.4.4 -> 3.4.5 libreport: upgrade 2.17.8 -> 2.17.11 meta-raspberrypi: b859bc3eca..9c901bf170: Damiano Ferrari (2): rpi-config: Add CAN0_INTERRUPT_PIN and CAN1_INTERRUPT_PIN variable docs: add info on how to set different CAN interrupt pins Florin Sarbu (1): Add Raspberry Pi 5 Leon Anavi (7): rpi-base.inc: Add vc4-kms-v3d-pi5.dtbo u-boot_%.bbappend: Skip for Raspberry Pi 5 rpi-config: Reduce config.txt size linux-raspberrypi.inc: bcm2712_defconfig for rpi5 conf/machine/raspberrypi5.conf: kernel_2712.img conf/machine/raspberrypi5.conf: ttyAMA10 conf/machine/raspberrypi5.conf: Use "Image" poky: 7af374c90c..348d9aba33: Alejandro Hernandez Samaniego (1): newlib: Upgrade 4.3.0 -> 4.4.0 Alexander Kanavin (1): shadow: replace static linking with dynamic libraries in a custom location and bundled with shadow Anuj Mittal (4): bluez5: upgrade 5.71 -> 5.72 cronie: upgrade 1.7.0 -> 1.7.1 libpsl: upgrade 0.21.2 -> 0.21.5 grub2: upgrade 2.06 -> 2.12 Bruce Ashfield (12): linux-yocto/6.6: update to v6.6.11 linux-yocto/6.6: update CVE exclusions linux-yocto/6.1: update to v6.1.72 linux-yocto/6.1: update CVE exclusions linux-yocto/6.6: cfg: arm: introduce page size fragments linux-yocto/6.6: security/cfg: add configs to harden protection linux-yocto/6.1: security/cfg: add configs to harden protection linux-yocto/6.6: update to v6.6.12 linux-yocto/6.6: update CVE exclusions linux-yocto/6.1: update to v6.1.73 linux-yocto/6.1: update CVE exclusions linux-yocto/6.1: drop recipes Chen Qi (5): oeqa/selftest: add test case to cover 'devtool modify -n' for a git recipe systemd: refresh musl patches for v255.1 systemd: upgrade to 255.1 systemd-boot: upgrade to 255.1 rootfs-postcommands.bbclass: ignore comment mismatch in systemd_user_check Etienne Cordonnier (1): cmake.bbclass: add Darwin support Fabio Estevam (2): weston: Update to 13.0.0 pulseaudio: Update to 17.0 Jiang Kai (4): debianutils: upgrade 5.15 -> 5.16 enchant2: upgrade 2.6.4 -> 2.6.5 libsecret: upgrade 0.21.1 -> 0.21.2 libxrandr: upgrade 1.5.3 -> 1.5.4 Joe Slater (1): eudev: modify predictable network if name search Jonathan GUILLOT (1): udev-extraconf: fix unmount directories containing octal-escaped chars Julien Stephan (3): externalsrc: fix task dependency for do_populate_lic devtool: modify: add support for multiple source in SRC_URI oeqa/selftest/devtool: add test for recipes with multiple sources in SRC_URI Kai Kang (2): nativesdk-cairo: fix build error p11-kit: fix parallel build failures Kevin Hao (2): yocto-bsp: Bump the default kernel to v6.6 yocto-bsp: Drop the support for v6.1 kernel Khem Raj (4): libgudev: Pass export-dynamic to linker directly. coreutils: Fix build with clang glibc: Do not enable CET on 32bit x86 rust: Re-write RPATHs in the copies llvm-config Pavel Zhukov (1): mdadm: Disable ptests Peter Marko (1): zlib: ignore CVE-2023-6992 Richard Purdie (7): qemu: add PACKAGECONFIG for sndio poky-altcfg: Update PREFERRED_VERSION for kerenl xev: Drop diet libx11 related patch libxcomposite: Drop obsolete patch python3-subunit: Add missing module dependency qemu: Upgrade 8.1.2 -> 8.2.0 qemu: Fix segfaults in webkitgtk:do_compile on debian11 Robert Yang (1): autoconf: 2.72d -> 2.72e Ross Burton (7): cve_check: handle CVE_STATUS being set to the empty string cve_check: cleanup logging xserver-xorg: add PACKAGECONFIG for xvfb xserver-xorg: disable xvfb by default libssh2: backport fix for CVE-2023-48795 bitbake: bitbake: Version bump for inherit_defer addition sanity: require bitbake 2.7.2 for the inherit_defer statement Ryan Eatmon (1): python3-yamllint: Add recipe Simone Weiß (2): tune-core2: Update qemu cpu to supported model gcc: Update status of CVE-2023-4039 Thomas Perrot (1): opensbi: bump to 1.4 Timotheus Giuliani (1): linux-firmware: fix mediatek MT76x empty license package Vincent Davis Jr (1): shaderc: update commit hash to v2023.7 Wang Mingyu (2): python3-subunit: upgrade 1.4.2 -> 1.4.4 libtest-warnings-perl: upgrade 0.031 -> 0.032 William Hauser (1): native.bbclass: base_libdir unique from libdir William Lyu (1): perl: Fix perl-module-* being ignored via COMPLEMENTARY_GLOB Yash Shinde (7): rust: Fetch cargo from rust-snapshot dir. rust: detect user-specified custom targets in compiletest rust: Enable RUSTC_BOOTSTRAP to use nightly features during rust oe-selftest. rust: Fix assertion failure error on oe-selftest rust: Add new tests in the exclude list for rust oe-selftest rust: Remove the test cases whose parent dir is also present in the exclude list rust: Enable rust oe-selftest. Yogita Urade (1): tiff: fix CVE-2023-6228 meta-arm: 1cad3c3813..6bb1fc8d8c: Harsimran Singh Tungal (1): n1sdp:arm-bsp/optee: Update optee to v4.0 Ross Burton (1): arm-bsp/linux-yocto: add 6.1 recipe Change-Id: Ib4cc4e128e4d41f3329cf83a0d5e8539ef07ebe3 Signed-off-by: Patrick Williams --- .../autoconf/autoconf/autoreconf-exclude.patch | 26 +++---- .../autoconf/autotest-automake-result-format.patch | 22 +++--- .../autoconf/autoconf/man-host-perl.patch | 13 +++- .../autoconf/autoconf/no-man.patch | 19 ++++- .../autoconf/autoconf/preferbash.patch | 12 ++- .../autoconf/autoconf/program_prefix.patch | 12 ++- .../autoconf/remove-usr-local-lib-from-m4.patch | 12 ++- .../recipes-devtools/autoconf/autoconf_2.72d.bb | 83 -------------------- .../recipes-devtools/autoconf/autoconf_2.72e.bb | 83 ++++++++++++++++++++ poky/meta/recipes-devtools/gcc/gcc-13.2.inc | 1 + .../perl/libtest-warnings-perl_0.031.bb | 39 ---------- .../perl/libtest-warnings-perl_0.032.bb | 36 +++++++++ poky/meta/recipes-devtools/perl/perl_5.38.2.bb | 19 +++-- .../python/python3-subunit_1.4.2.bb | 15 ---- .../python/python3-subunit_1.4.4.bb | 15 ++++ .../python/python3-yamllint_1.33.0.bb | 15 ++++ .../recipes-devtools/qemu/qemu-native_8.1.2.bb | 9 --- .../recipes-devtools/qemu/qemu-native_8.2.0.bb | 9 +++ .../qemu/qemu-system-native_8.1.2.bb | 31 -------- .../qemu/qemu-system-native_8.2.0.bb | 31 ++++++++ poky/meta/recipes-devtools/qemu/qemu.inc | 15 ++-- poky/meta/recipes-devtools/qemu/qemu/cross.patch | 38 --------- .../meta/recipes-devtools/qemu/qemu/fix_segv.patch | 47 +++++++++++ .../recipes-devtools/qemu/qemu/fixedmeson.patch | 12 +-- poky/meta/recipes-devtools/qemu/qemu/fixmips.patch | 18 ----- poky/meta/recipes-devtools/qemu/qemu/no-pip.patch | 16 ++-- poky/meta/recipes-devtools/qemu/qemu_8.1.2.bb | 27 ------- poky/meta/recipes-devtools/qemu/qemu_8.2.0.bb | 27 +++++++ .../recipes-devtools/rust/files/cargo-path.patch | 37 +++++++++ .../rust/files/custom-target-cfg.patch | 90 ++++++++++++++++++++++ .../rust/files/rustc-bootstrap.patch | 21 +++++ .../rust/files/target-build-value.patch | 26 +++++++ poky/meta/recipes-devtools/rust/rust-source.inc | 4 + poky/meta/recipes-devtools/rust/rust_1.74.1.bb | 6 +- 34 files changed, 545 insertions(+), 341 deletions(-) delete mode 100644 poky/meta/recipes-devtools/autoconf/autoconf_2.72d.bb create mode 100644 poky/meta/recipes-devtools/autoconf/autoconf_2.72e.bb delete mode 100644 poky/meta/recipes-devtools/perl/libtest-warnings-perl_0.031.bb create mode 100644 poky/meta/recipes-devtools/perl/libtest-warnings-perl_0.032.bb delete mode 100644 poky/meta/recipes-devtools/python/python3-subunit_1.4.2.bb create mode 100644 poky/meta/recipes-devtools/python/python3-subunit_1.4.4.bb create mode 100644 poky/meta/recipes-devtools/python/python3-yamllint_1.33.0.bb delete mode 100644 poky/meta/recipes-devtools/qemu/qemu-native_8.1.2.bb create mode 100644 poky/meta/recipes-devtools/qemu/qemu-native_8.2.0.bb delete mode 100644 poky/meta/recipes-devtools/qemu/qemu-system-native_8.1.2.bb create mode 100644 poky/meta/recipes-devtools/qemu/qemu-system-native_8.2.0.bb delete mode 100644 poky/meta/recipes-devtools/qemu/qemu/cross.patch create mode 100644 poky/meta/recipes-devtools/qemu/qemu/fix_segv.patch delete mode 100644 poky/meta/recipes-devtools/qemu/qemu/fixmips.patch delete mode 100644 poky/meta/recipes-devtools/qemu/qemu_8.1.2.bb create mode 100644 poky/meta/recipes-devtools/qemu/qemu_8.2.0.bb create mode 100644 poky/meta/recipes-devtools/rust/files/cargo-path.patch create mode 100644 poky/meta/recipes-devtools/rust/files/custom-target-cfg.patch create mode 100644 poky/meta/recipes-devtools/rust/files/rustc-bootstrap.patch create mode 100644 poky/meta/recipes-devtools/rust/files/target-build-value.patch (limited to 'poky/meta/recipes-devtools') diff --git a/poky/meta/recipes-devtools/autoconf/autoconf/autoreconf-exclude.patch b/poky/meta/recipes-devtools/autoconf/autoconf/autoreconf-exclude.patch index c73aca41ee..2814196200 100644 --- a/poky/meta/recipes-devtools/autoconf/autoconf/autoreconf-exclude.patch +++ b/poky/meta/recipes-devtools/autoconf/autoconf/autoreconf-exclude.patch @@ -1,25 +1,26 @@ -From 0071d28e304745a16871561f23117fdb00dd2559 Mon Sep 17 00:00:00 2001 +From 1a50157aa11da48921200a0d8d4308863716eab0 Mon Sep 17 00:00:00 2001 From: Ross Burton Date: Thu, 12 Mar 2020 17:25:23 +0000 -Subject: [PATCH 4/7] autoreconf-exclude.patch +Subject: [PATCH] autoreconf-exclude.patch Upstream-Status: Inappropriate [oe specific] + --- bin/autoreconf.in | 26 ++++++++++++++++++++++++++ 1 file changed, 26 insertions(+) diff --git a/bin/autoreconf.in b/bin/autoreconf.in -index bb9f316d..7da3005b 100644 +index 98ebab6..937f758 100644 --- a/bin/autoreconf.in +++ b/bin/autoreconf.in -@@ -82,6 +82,7 @@ Operation modes: +@@ -83,6 +83,7 @@ Operation modes: -i, --install copy missing standard auxiliary files --no-recursive don't rebuild sub-packages -s, --symlink with -i, install symbolic links instead of copies + -x, --exclude=STEPS steps we should not run -m, --make when applicable, re-run ./configure && make - -W, --warnings=CATEGORY report the warnings falling in CATEGORY [syntax] - + -W, --warnings=CATEGORY report the warnings falling in CATEGORY + (comma-separated list accepted) @@ -141,6 +142,10 @@ my $run_make = 0; # Recurse into subpackages my $recursive = 1; @@ -60,7 +61,7 @@ index bb9f316d..7da3005b 100644 } -@@ -687,9 +698,12 @@ sub autoreconf_current_directory ($) +@@ -691,9 +702,12 @@ sub autoreconf_current_directory ($) { $libtoolize .= " --ltdl"; } @@ -73,7 +74,7 @@ index bb9f316d..7da3005b 100644 } else { -@@ -726,8 +740,11 @@ sub autoreconf_current_directory ($) +@@ -730,8 +744,11 @@ sub autoreconf_current_directory ($) } elsif ($install) { @@ -85,7 +86,7 @@ index bb9f316d..7da3005b 100644 } else { -@@ -765,7 +782,10 @@ sub autoreconf_current_directory ($) +@@ -769,7 +786,10 @@ sub autoreconf_current_directory ($) # latter runs the former, and (ii) autoconf is stricter than # autoheader. So all in all, autoconf should give better error # messages. @@ -96,7 +97,7 @@ index bb9f316d..7da3005b 100644 # -------------------- # -@@ -786,7 +806,10 @@ sub autoreconf_current_directory ($) +@@ -790,7 +810,10 @@ sub autoreconf_current_directory ($) } else { @@ -107,7 +108,7 @@ index bb9f316d..7da3005b 100644 } -@@ -803,7 +826,10 @@ sub autoreconf_current_directory ($) +@@ -807,7 +830,10 @@ sub autoreconf_current_directory ($) # We should always run automake, and let it decide whether it shall # update the file or not. In fact, the effect of '$force' is already # included in '$automake' via '--no-force'. @@ -118,6 +119,3 @@ index bb9f316d..7da3005b 100644 } # ---------------------------------------------------- # --- -2.25.1 - diff --git a/poky/meta/recipes-devtools/autoconf/autoconf/autotest-automake-result-format.patch b/poky/meta/recipes-devtools/autoconf/autoconf/autotest-automake-result-format.patch index 23329f7927..38725574ba 100644 --- a/poky/meta/recipes-devtools/autoconf/autoconf/autotest-automake-result-format.patch +++ b/poky/meta/recipes-devtools/autoconf/autoconf/autotest-automake-result-format.patch @@ -1,18 +1,19 @@ -From 8c0f24404bebffdaf3132d81e2b9560d34ff1677 Mon Sep 17 00:00:00 2001 +From b28bd61e4716e744617bd681a5b0d5472f62bd67 Mon Sep 17 00:00:00 2001 From: Ross Burton Date: Thu, 12 Mar 2020 17:25:45 +0000 -Subject: [PATCH 6/7] autotest-automake-result-format.patch +Subject: [PATCH] autotest-automake-result-format.patch Upstream-Status: Inappropriate [oe specific] + --- lib/autotest/general.m4 | 39 +++++++++++++++++++++++++++++---------- 1 file changed, 29 insertions(+), 10 deletions(-) diff --git a/lib/autotest/general.m4 b/lib/autotest/general.m4 -index 0c0e3c5b..17590e96 100644 +index bf18866..8097523 100644 --- a/lib/autotest/general.m4 +++ b/lib/autotest/general.m4 -@@ -412,6 +412,9 @@ at_recheck= +@@ -427,6 +427,9 @@ at_recheck= # Whether a write failure occurred at_write_fail=0 @@ -22,7 +23,7 @@ index 0c0e3c5b..17590e96 100644 # The directory we run the suite in. Default to . if no -C option. at_dir=`pwd` # An absolute reference to this testsuite script. -@@ -525,6 +528,10 @@ do +@@ -540,6 +543,10 @@ do at_check_filter_trace=at_fn_filter_trace ;; @@ -33,7 +34,7 @@ index 0c0e3c5b..17590e96 100644 [[0-9] | [0-9][0-9] | [0-9][0-9][0-9] | [0-9][0-9][0-9][0-9]]) at_fn_validate_ranges at_option AS_VAR_APPEND([at_groups], ["$at_option$as_nl"]) -@@ -713,10 +720,10 @@ m4_divert_push([HELP_MODES])dnl +@@ -728,10 +735,10 @@ m4_divert_push([HELP_MODES])dnl cat <<_ATEOF || at_write_fail=1 Operation modes: @@ -48,7 +49,7 @@ index 0c0e3c5b..17590e96 100644 _ATEOF m4_divert_pop([HELP_MODES])dnl m4_wrap([m4_divert_push([HELP_TUNING_BEGIN])dnl -@@ -742,6 +749,7 @@ Execution tuning: +@@ -757,6 +764,7 @@ Execution tuning: -d, --debug inhibit clean up and top-level logging [ default for debugging scripts] -x, --trace enable tests shell tracing @@ -56,7 +57,7 @@ index 0c0e3c5b..17590e96 100644 _ATEOF m4_divert_pop([HELP_TUNING_BEGIN])])dnl m4_divert_push([HELP_END])dnl -@@ -1129,7 +1137,9 @@ at_fn_group_banner () +@@ -1139,7 +1147,9 @@ at_fn_group_banner () [*]) at_desc_line="$[1]: " ;; esac AS_VAR_APPEND([at_desc_line], ["$[3]$[4]"]) @@ -67,7 +68,7 @@ index 0c0e3c5b..17590e96 100644 echo "# -*- compilation -*-" >> "$at_group_log" } -@@ -1155,42 +1165,51 @@ _ATEOF +@@ -1165,42 +1175,51 @@ _ATEOF case $at_xfail:$at_status in yes:0) at_msg="UNEXPECTED PASS" @@ -124,6 +125,3 @@ index 0c0e3c5b..17590e96 100644 fi at_log_msg="$at_group. $at_desc ($at_setup_line): $at_msg" case $at_status in --- -2.25.1 - diff --git a/poky/meta/recipes-devtools/autoconf/autoconf/man-host-perl.patch b/poky/meta/recipes-devtools/autoconf/autoconf/man-host-perl.patch index c6c135625d..0f49583a64 100644 --- a/poky/meta/recipes-devtools/autoconf/autoconf/man-host-perl.patch +++ b/poky/meta/recipes-devtools/autoconf/autoconf/man-host-perl.patch @@ -1,13 +1,20 @@ -Don't use the target perl when regenerating the man pages. +From 1c033f2a23941c46d88b9ac279f87bf2c6e99499 Mon Sep 17 00:00:00 2001 +From: Ross Burton +Date: Wed, 15 Jul 2020 16:03:21 +0100 +Subject: [PATCH] Don't use the target perl when regenerating the man pages. Upstream-Status: Inappropriate Signed-off-by: Ross Burton +--- + man/local.mk | 3 +-- + 1 file changed, 1 insertion(+), 2 deletions(-) + diff --git a/man/local.mk b/man/local.mk -index e69858b1..78c68ab5 100644 +index 775c131..ba94753 100644 --- a/man/local.mk +++ b/man/local.mk -@@ -67,13 +67,12 @@ SUFFIXES += .w .1 +@@ -77,13 +77,12 @@ SUFFIXES += .w .1 @echo "Updating man page $@" $(MKDIR_P) $(@D) PATH="$(top_srcdir)/man$(PATH_SEPARATOR)$$PATH"; \ diff --git a/poky/meta/recipes-devtools/autoconf/autoconf/no-man.patch b/poky/meta/recipes-devtools/autoconf/autoconf/no-man.patch index 2c44375f43..3e741edfb2 100644 --- a/poky/meta/recipes-devtools/autoconf/autoconf/no-man.patch +++ b/poky/meta/recipes-devtools/autoconf/autoconf/no-man.patch @@ -1,14 +1,26 @@ +From 8bcaf677e41f1f5d3fa0a746e35958e7b303ac71 Mon Sep 17 00:00:00 2001 +From: Ross Burton +Date: Wed, 15 Jul 2020 16:03:21 +0100 +Subject: [PATCH] autoconf: upgrade to 2.71 + For native builds we don't care about the documentation, and this would otherwise pull in a dependency on help2man. Upstream-Status: Inappropriate Signed-off-by: Ross Burton +--- + Makefile.in | 10 ---------- + 1 file changed, 10 deletions(-) + diff --git a/Makefile.in b/Makefile.in -index 146e8e3..a1827c1 100644 +index c8d6425..72d6d05 100644 --- a/Makefile.in +++ b/Makefile.in -@@ -763,10 +762,0 @@ dist_buildaux_SCRIPTS = \ +@@ -771,16 +771,6 @@ buildauxdir = $(pkgdatadir)/build-aux + dist_buildaux_DATA = \ + $(AUXSCRIPTS) + -dist_man_MANS = \ - man/autoconf.1 \ - man/autoheader.1 \ @@ -19,3 +31,6 @@ index 146e8e3..a1827c1 100644 - man/ifnames.1 - - + # Each manpage depends on: + # - its .w and .x files and its source script in bin/ + # - common.x for the SEE ALSO list diff --git a/poky/meta/recipes-devtools/autoconf/autoconf/preferbash.patch b/poky/meta/recipes-devtools/autoconf/autoconf/preferbash.patch index cfb145a279..64fed1fd82 100644 --- a/poky/meta/recipes-devtools/autoconf/autoconf/preferbash.patch +++ b/poky/meta/recipes-devtools/autoconf/autoconf/preferbash.patch @@ -1,7 +1,7 @@ -From 0aac3047cd7681d610b22d79501c297fa3433148 Mon Sep 17 00:00:00 2001 +From a877ff979349d3bf6f5f0d92fe4e741be0ad98b4 Mon Sep 17 00:00:00 2001 From: Ross Burton Date: Thu, 12 Mar 2020 17:25:41 +0000 -Subject: [PATCH 2/7] m4sh: prefer bash over sh +Subject: [PATCH] m4sh: prefer bash over sh _AS_DETECT_BETTER_SHELL looks for a good shell to use, and tries to look for 'sh' before 'bash'. Whilst for many systems sh is a symlink to bash, @@ -16,15 +16,16 @@ Change the search order to bash then sh, so that a known-good shell (bash) is used if available over something which is merely POSIX compliant. Upstream-Status: Inappropriate [oe specific] + --- lib/m4sugar/m4sh.m4 | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/lib/m4sugar/m4sh.m4 b/lib/m4sugar/m4sh.m4 -index 9d543952..84ef84a9 100644 +index 368487f..cc70f51 100644 --- a/lib/m4sugar/m4sh.m4 +++ b/lib/m4sugar/m4sh.m4 -@@ -230,7 +230,7 @@ dnl Remove any tests from suggested that are also required +@@ -233,7 +233,7 @@ dnl Remove any tests from suggested that are also required [_AS_PATH_WALK([/bin$PATH_SEPARATOR/usr/bin$PATH_SEPARATOR$PATH], [case $as_dir in @%:@( /*) @@ -33,6 +34,3 @@ index 9d543952..84ef84a9 100644 # Try only shells that exist, to save several forks. as_shell=$as_dir$as_base AS_IF([{ test -f "$as_shell" || test -f "$as_shell.exe"; } && --- -2.25.1 - diff --git a/poky/meta/recipes-devtools/autoconf/autoconf/program_prefix.patch b/poky/meta/recipes-devtools/autoconf/autoconf/program_prefix.patch index 657cbb351b..f647f2a8c0 100644 --- a/poky/meta/recipes-devtools/autoconf/autoconf/program_prefix.patch +++ b/poky/meta/recipes-devtools/autoconf/autoconf/program_prefix.patch @@ -1,19 +1,20 @@ -From f4f19a5c03e8ae3b9cc93d24b76694f4b7b2eb76 Mon Sep 17 00:00:00 2001 +From 7949496ff3834dcd98407cc3f3ea022ee2471d52 Mon Sep 17 00:00:00 2001 From: Ross Burton Date: Thu, 12 Mar 2020 17:28:38 +0000 -Subject: [PATCH 3/7] program_prefix.patch +Subject: [PATCH] program_prefix.patch Upstream-Status: Inappropriate [oe specific] Signed-off-by: Ross Burton + --- lib/autoconf/general.m4 | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/lib/autoconf/general.m4 b/lib/autoconf/general.m4 -index 16f0d074..4c5e0b36 100644 +index 47d896d..3deaa46 100644 --- a/lib/autoconf/general.m4 +++ b/lib/autoconf/general.m4 -@@ -2070,7 +2070,7 @@ _AC_CANONICAL_SPLIT([target]) +@@ -2071,7 +2071,7 @@ _AC_CANONICAL_SPLIT([target]) # The aliases save the names the user supplied, while $host etc. # will get canonicalized. @@ -22,6 +23,3 @@ index 16f0d074..4c5e0b36 100644 test "$program_prefix$program_suffix$program_transform_name" = \ NONENONEs,x,x, && program_prefix=${target_alias}-[]dnl --- -2.25.1 - diff --git a/poky/meta/recipes-devtools/autoconf/autoconf/remove-usr-local-lib-from-m4.patch b/poky/meta/recipes-devtools/autoconf/autoconf/remove-usr-local-lib-from-m4.patch index f38780130a..ca1534b8f0 100644 --- a/poky/meta/recipes-devtools/autoconf/autoconf/remove-usr-local-lib-from-m4.patch +++ b/poky/meta/recipes-devtools/autoconf/autoconf/remove-usr-local-lib-from-m4.patch @@ -1,19 +1,20 @@ -From a08643ac3fef884900d6cfa161f0acec3ef104d1 Mon Sep 17 00:00:00 2001 +From 294a8d47a70db077691624615c5cb6d331a3299b Mon Sep 17 00:00:00 2001 From: Ross Burton Date: Thu, 12 Mar 2020 17:25:37 +0000 -Subject: [PATCH 1/7] remove-usr-local-lib-from-m4.patch +Subject: [PATCH] remove-usr-local-lib-from-m4.patch Upstream-Status: Inappropriate [oe specific] Signed-off-by: Ross Burton + --- lib/autoconf/functions.m4 | 9 --------- 1 file changed, 9 deletions(-) diff --git a/lib/autoconf/functions.m4 b/lib/autoconf/functions.m4 -index 12f60b99..07da7941 100644 +index 9b3f3c0..1faa99b 100644 --- a/lib/autoconf/functions.m4 +++ b/lib/autoconf/functions.m4 -@@ -801,15 +801,6 @@ if test $ac_have_func = no; then +@@ -825,15 +825,6 @@ if test $ac_have_func = no; then [LIBS="-lutil $LIBS" ac_have_func=yes ac_cv_func_getloadavg_setgid=yes]) fi @@ -29,6 +30,3 @@ index 12f60b99..07da7941 100644 # Make sure it is really in the library, if we think we found it, # otherwise set up the replacement function. AC_CHECK_FUNCS(getloadavg, [], --- -2.25.1 - diff --git a/poky/meta/recipes-devtools/autoconf/autoconf_2.72d.bb b/poky/meta/recipes-devtools/autoconf/autoconf_2.72d.bb deleted file mode 100644 index 6741746184..0000000000 --- a/poky/meta/recipes-devtools/autoconf/autoconf_2.72d.bb +++ /dev/null @@ -1,83 +0,0 @@ -SUMMARY = "A GNU tool that produce shell scripts to automatically configure software" -DESCRIPTION = "Autoconf is an extensible package of M4 macros that produce shell scripts to automatically \ -configure software source code packages. Autoconf creates a configuration script for a package from a template \ -file that lists the operating system features that the package can use, in the form of M4 macro calls." -LICENSE = "GPL-3.0-or-later" -HOMEPAGE = "http://www.gnu.org/software/autoconf/" -SECTION = "devel" -DEPENDS = "m4-native autoconf-native automake-native gnu-config-native help2man-native" -DEPENDS:remove:class-native = "autoconf-native automake-native help2man-native" - -LIC_FILES_CHKSUM = "file://COPYING;md5=cc3f3a7596cb558bbd9eb7fbaa3ef16c \ - file://COPYINGv3;md5=1ebbd3e34237af26da5dc08a4e440464" - -SRC_URI = " \ - https://alpha.gnu.org/gnu/autoconf/${BP}.tar.gz \ - file://program_prefix.patch \ - file://autoreconf-exclude.patch \ - file://remove-usr-local-lib-from-m4.patch \ - file://preferbash.patch \ - file://autotest-automake-result-format.patch \ - file://man-host-perl.patch \ -" -SRC_URI:append:class-native = " file://no-man.patch" - -SRC_URI[sha256sum] = "c09dcba3d051507459df2fcd58d6f19e5b342568fa910e3bb3a74b4402cde3a6" - -RDEPENDS:${PN} = "m4 gnu-config \ - perl \ - perl-module-bytes \ - perl-module-carp \ - perl-module-constant \ - perl-module-data-dumper \ - perl-module-errno \ - perl-module-exporter \ - perl-module-file-basename \ - perl-module-file-compare \ - perl-module-file-copy \ - perl-module-file-find \ - perl-module-file-glob \ - perl-module-file-path \ - perl-module-file-spec \ - perl-module-file-spec-unix \ - perl-module-file-stat \ - perl-module-file-temp \ - perl-module-getopt-long \ - perl-module-io-file \ - perl-module-list-util \ - perl-module-overloading \ - perl-module-posix \ - perl-module-scalar-util \ - perl-module-symbol \ - perl-module-thread-queue \ - perl-module-threads \ - perl-module-feature \ - " -RDEPENDS:${PN}:class-native = "m4-native gnu-config-native hostperl-runtime-native" - -inherit autotools texinfo - -PERL = "${USRBINPATH}/perl" -PERL:class-native = "/usr/bin/env perl" -PERL:class-nativesdk = "/usr/bin/env perl" - -CACHED_CONFIGUREVARS += "ac_cv_path_PERL='${PERL}'" - -EXTRA_OECONF += "ac_cv_path_M4=m4 ac_cv_prog_TEST_EMACS=no" - -# As autoconf installs its own config.* files, ensure that they're always up to date. -update_gnu_config() { - install -m 0755 ${STAGING_DATADIR_NATIVE}/gnu-config/config.guess ${S}/build-aux - install -m 0755 ${STAGING_DATADIR_NATIVE}/gnu-config/config.sub ${S}/build-aux -} -do_configure[prefuncs] += "update_gnu_config" - -do_configure:class-native() { - oe_runconf -} - -do_install:append() { - rm -rf ${D}${datadir}/emacs -} - -BBCLASSEXTEND = "native nativesdk" diff --git a/poky/meta/recipes-devtools/autoconf/autoconf_2.72e.bb b/poky/meta/recipes-devtools/autoconf/autoconf_2.72e.bb new file mode 100644 index 0000000000..db374373cf --- /dev/null +++ b/poky/meta/recipes-devtools/autoconf/autoconf_2.72e.bb @@ -0,0 +1,83 @@ +SUMMARY = "A GNU tool that produce shell scripts to automatically configure software" +DESCRIPTION = "Autoconf is an extensible package of M4 macros that produce shell scripts to automatically \ +configure software source code packages. Autoconf creates a configuration script for a package from a template \ +file that lists the operating system features that the package can use, in the form of M4 macro calls." +LICENSE = "GPL-3.0-or-later" +HOMEPAGE = "http://www.gnu.org/software/autoconf/" +SECTION = "devel" +DEPENDS = "m4-native autoconf-native automake-native gnu-config-native help2man-native" +DEPENDS:remove:class-native = "autoconf-native automake-native help2man-native" + +LIC_FILES_CHKSUM = "file://COPYING;md5=cc3f3a7596cb558bbd9eb7fbaa3ef16c \ + file://COPYINGv3;md5=1ebbd3e34237af26da5dc08a4e440464" + +SRC_URI = " \ + https://alpha.gnu.org/gnu/autoconf/${BP}.tar.gz \ + file://program_prefix.patch \ + file://autoreconf-exclude.patch \ + file://remove-usr-local-lib-from-m4.patch \ + file://preferbash.patch \ + file://autotest-automake-result-format.patch \ + file://man-host-perl.patch \ +" +SRC_URI:append:class-native = " file://no-man.patch" + +SRC_URI[sha256sum] = "f3478d3b597d51f5d61596fb2f6f6aba49cdd974b4b05ff0bac57f56b5cfdb39" + +RDEPENDS:${PN} = "m4 gnu-config \ + perl \ + perl-module-bytes \ + perl-module-carp \ + perl-module-constant \ + perl-module-data-dumper \ + perl-module-errno \ + perl-module-exporter \ + perl-module-file-basename \ + perl-module-file-compare \ + perl-module-file-copy \ + perl-module-file-find \ + perl-module-file-glob \ + perl-module-file-path \ + perl-module-file-spec \ + perl-module-file-spec-unix \ + perl-module-file-stat \ + perl-module-file-temp \ + perl-module-getopt-long \ + perl-module-io-file \ + perl-module-list-util \ + perl-module-overloading \ + perl-module-posix \ + perl-module-scalar-util \ + perl-module-symbol \ + perl-module-thread-queue \ + perl-module-threads \ + perl-module-feature \ + " +RDEPENDS:${PN}:class-native = "m4-native gnu-config-native hostperl-runtime-native" + +inherit autotools texinfo + +PERL = "${USRBINPATH}/perl" +PERL:class-native = "/usr/bin/env perl" +PERL:class-nativesdk = "/usr/bin/env perl" + +CACHED_CONFIGUREVARS += "ac_cv_path_PERL='${PERL}'" + +EXTRA_OECONF += "ac_cv_path_M4=m4 ac_cv_prog_TEST_EMACS=no" + +# As autoconf installs its own config.* files, ensure that they're always up to date. +update_gnu_config() { + install -m 0755 ${STAGING_DATADIR_NATIVE}/gnu-config/config.guess ${S}/build-aux + install -m 0755 ${STAGING_DATADIR_NATIVE}/gnu-config/config.sub ${S}/build-aux +} +do_configure[prefuncs] += "update_gnu_config" + +do_configure:class-native() { + oe_runconf +} + +do_install:append() { + rm -rf ${D}${datadir}/emacs +} + +BBCLASSEXTEND = "native nativesdk" diff --git a/poky/meta/recipes-devtools/gcc/gcc-13.2.inc b/poky/meta/recipes-devtools/gcc/gcc-13.2.inc index 359db1e278..32fddd11c2 100644 --- a/poky/meta/recipes-devtools/gcc/gcc-13.2.inc +++ b/poky/meta/recipes-devtools/gcc/gcc-13.2.inc @@ -115,3 +115,4 @@ EXTRA_OECONF_PATHS = "\ " CVE_STATUS[CVE-2021-37322] = "cpe-incorrect: Is a binutils 2.26 issue, not gcc" +CVE_STATUS[CVE-2023-4039] = "fixed-version: Fixed via CVE-2023-4039.patch included here. Set the status explictly to deal with all recipes that share the gcc-source" diff --git a/poky/meta/recipes-devtools/perl/libtest-warnings-perl_0.031.bb b/poky/meta/recipes-devtools/perl/libtest-warnings-perl_0.031.bb deleted file mode 100644 index e03deaf15f..0000000000 --- a/poky/meta/recipes-devtools/perl/libtest-warnings-perl_0.031.bb +++ /dev/null @@ -1,39 +0,0 @@ -# Copyright (C) 2020 Jens Rehsack -# Released under the MIT license (see COPYING.MIT for the terms) - -SUMMARY = "Test::Warnings - Test for warnings and the lack of them" -DESCRIPTION = "If you've ever tried to use Test::NoWarnings to confirm there are no \ -warnings generated by your tests, combined with the convenience of \ -\\"done_testing\\" to not have to declare a test count, you'll have discovered \ -that these two features do not play well together, as the test count will \ -be calculated *before* the warnings test is run, resulting in a TAP error. \ -(See "examples/test_nowarnings.pl" in this distribution for a \ -demonstration.)" -HOMEPAGE = "https://github.com/karenetheridge/Test-Warnings" -BUGTRACKER = "https://rt.cpan.org/Public/Dist/Display.html?Name=Test-Warnings" -SECTION = "libs" -LICENSE = "Artistic-1.0 | GPL-1.0-or-later" - -LIC_FILES_CHKSUM = "file://LICENCE;md5=6f2b02f39e7d359efd9525fbc56c84a1" - -SRC_URI = "${CPAN_MIRROR}/authors/id/E/ET/ETHER/Test-Warnings-${PV}.tar.gz" - -SRC_URI[sha256sum] = "1e542909fef305e45563e9878ea1c3b0c7cef1b28bb7ae07eba2e1efabec477b" - -S = "${WORKDIR}/Test-Warnings-${PV}" - -inherit cpan ptest-perl - -RDEPENDS:${PN} += "\ - perl-module-test-builder \ -" - -# Many hidden dependencies and mysterious failures occur without full perl-modules -RDEPENDS:${PN}-ptest += "perl-modules" - -do_install_ptest_perl:append () { - cp -r ${B}/t/lib ${D}${PTEST_PATH}/t/ - chown -R root:root ${D}${PTEST_PATH}/t/lib -} - -BBCLASSEXTEND = "native nativesdk" diff --git a/poky/meta/recipes-devtools/perl/libtest-warnings-perl_0.032.bb b/poky/meta/recipes-devtools/perl/libtest-warnings-perl_0.032.bb new file mode 100644 index 0000000000..5876e8a63c --- /dev/null +++ b/poky/meta/recipes-devtools/perl/libtest-warnings-perl_0.032.bb @@ -0,0 +1,36 @@ +SUMMARY = "Test::Warnings - Test for warnings and the lack of them" +DESCRIPTION = "If you've ever tried to use Test::NoWarnings to confirm there are no \ +warnings generated by your tests, combined with the convenience of \ +\\"done_testing\\" to not have to declare a test count, you'll have discovered \ +that these two features do not play well together, as the test count will \ +be calculated *before* the warnings test is run, resulting in a TAP error. \ +(See "examples/test_nowarnings.pl" in this distribution for a \ +demonstration.)" +HOMEPAGE = "https://github.com/karenetheridge/Test-Warnings" +BUGTRACKER = "https://rt.cpan.org/Public/Dist/Display.html?Name=Test-Warnings" +SECTION = "libs" +LICENSE = "Artistic-1.0-Perl | GPL-1.0-or-later" + +LIC_FILES_CHKSUM = "file://LICENCE;md5=f98106ac3cc05d9cbebcdb8fbf7b7815" + +SRC_URI = "${CPAN_MIRROR}/authors/id/E/ET/ETHER/Test-Warnings-${PV}.tar.gz" + +SRC_URI[sha256sum] = "4727dae2416e9f07e41e2dc3a9143ba6affc1ec57652117c99d50038e313e9d9" + +S = "${WORKDIR}/Test-Warnings-${PV}" + +inherit cpan ptest-perl + +RDEPENDS:${PN} += "\ + perl-module-test-builder \ +" + +# Many hidden dependencies and mysterious failures occur without full perl-modules +RDEPENDS:${PN}-ptest += "perl-modules" + +do_install_ptest_perl:append () { + cp -r ${B}/t/lib ${D}${PTEST_PATH}/t/ + chown -R root:root ${D}${PTEST_PATH}/t/lib +} + +BBCLASSEXTEND = "native nativesdk" diff --git a/poky/meta/recipes-devtools/perl/perl_5.38.2.bb b/poky/meta/recipes-devtools/perl/perl_5.38.2.bb index a9d684cfc5..b6c9cda7ae 100644 --- a/poky/meta/recipes-devtools/perl/perl_5.38.2.bb +++ b/poky/meta/recipes-devtools/perl/perl_5.38.2.bb @@ -273,7 +273,7 @@ FILES:${PN} = "${bindir}/perl ${bindir}/perl.real ${bindir}/perl${PV} ${libdir}/ ${libdir}/perl5/${PV}/ExtUtils/typemap \ " RPROVIDES:${PN} += "perl-module-strict perl-module-vars perl-module-config perl-module-warnings \ - perl-module-warnings-register" + perl-module-warnings-register perl-module-config-git" FILES:${PN}-staticdev:append = " ${libdir}/perl5/${PV}/*/CORE/libperl.a" @@ -306,8 +306,8 @@ ALTERNATIVE_PRIORITY = "40" ALTERNATIVE:${PN}-doc = "Thread.3" ALTERNATIVE_LINK_NAME[Thread.3] = "${mandir}/man3/Thread.3" -# Create a perl-modules package recommending all the other perl -# packages (actually the non modules packages and not created too) +# Create a perl-modules package that represents the collection of all the +# other perl packages (actually the non modules packages and not created too). ALLOW_EMPTY:${PN}-modules = "1" PACKAGES += "${PN}-modules " @@ -322,11 +322,13 @@ python split_perl_packages () { do_split_packages(d, libdir, r'.*linux/([^\/].*)\.(pm|pl|e2x)', '${PN}-module-%s', 'perl module %s', recursive=True, allow_dirs=False, match_path=True, prepend=False) do_split_packages(d, libdir, r'(^(?!(CPAN\/|CPANPLUS\/|Module\/|unicore\/|.*linux\/)[^\/]).*)\.(pm|pl|e2x)', '${PN}-module-%s', 'perl module %s', recursive=True, allow_dirs=False, match_path=True, prepend=False) - # perl-modules should recommend every perl module, and only the + # perl-modules should runtime-depend on every perl module, and only the # modules. Don't attempt to use the result of do_split_packages() as some - # modules are manually split (eg. perl-module-unicore). - packages = filter(lambda p: 'perl-module-' in p, d.getVar('PACKAGES').split()) - d.setVar(d.expand("RRECOMMENDS:${PN}-modules"), ' '.join(packages)) + # modules are manually split (eg. perl-module-unicore). Also, the split + # packages should not include packages defined in RPROVIDES:${PN}. + perl_sub_pkgs = d.getVar(d.expand("RPROVIDES:${PN}")).split() + packages = filter(lambda p: 'perl-module-' in p and p not in perl_sub_pkgs, d.getVar('PACKAGES').split()) + d.setVar(d.expand("RDEPENDS:${PN}-modules"), ' '.join(packages)) # Read the pre-generated dependency file, and use it to set module dependecies for line in open(d.expand("${WORKDIR}") + '/perl-rdepends.txt').readlines(): @@ -352,7 +354,8 @@ python() { d.setVar("PACKAGES_DYNAMIC", "^nativesdk-perl-module-.*") } -RDEPENDS:${PN}-misc += "perl perl-modules" +RDEPENDS:${PN}-misc += "perl" +RRECOMMENDS:${PN}-misc += "perl-modules" RDEPENDS:${PN}-pod += "perl" BBCLASSEXTEND = "native nativesdk" diff --git a/poky/meta/recipes-devtools/python/python3-subunit_1.4.2.bb b/poky/meta/recipes-devtools/python/python3-subunit_1.4.2.bb deleted file mode 100644 index a018ef1dc8..0000000000 --- a/poky/meta/recipes-devtools/python/python3-subunit_1.4.2.bb +++ /dev/null @@ -1,15 +0,0 @@ -SUMMARY = "Python implementation of subunit test streaming protocol" -HOMEPAGE = "https://pypi.org/project/python-subunit/" -SECTION = "devel/python" -LICENSE = "Apache-2.0" -LIC_FILES_CHKSUM = "file://README.rst;beginline=1;endline=20;md5=909c08e291647fd985fbe5d9836d51b6" - -PYPI_PACKAGE = "python-subunit" - -SRC_URI[sha256sum] = "2988d324d55ec35dd037e502e3f74ac38f4e457bd44ee0edf5e898f7ee1134d4" - -inherit pypi setuptools3 - -RDEPENDS:${PN} = " python3-testtools" - -BBCLASSEXTEND = "nativesdk" diff --git a/poky/meta/recipes-devtools/python/python3-subunit_1.4.4.bb b/poky/meta/recipes-devtools/python/python3-subunit_1.4.4.bb new file mode 100644 index 0000000000..11be10bab6 --- /dev/null +++ b/poky/meta/recipes-devtools/python/python3-subunit_1.4.4.bb @@ -0,0 +1,15 @@ +SUMMARY = "Python implementation of subunit test streaming protocol" +HOMEPAGE = "https://pypi.org/project/python-subunit/" +SECTION = "devel/python" +LICENSE = "Apache-2.0 | BSD-3-Clause" +LIC_FILES_CHKSUM = "file://COPYING;beginline=1;endline=20;md5=b1121e68d06c8d9ea544fcd895df0d39" + +PYPI_PACKAGE = "python-subunit" + +SRC_URI[sha256sum] = "1079363131aa1d3f45259237265bc2e61a77e35f20edfb6e3d1d2558a2cdea34" + +inherit pypi setuptools3 + +RDEPENDS:${PN} = " python3-testtools python3-iso8601" + +BBCLASSEXTEND = "nativesdk" diff --git a/poky/meta/recipes-devtools/python/python3-yamllint_1.33.0.bb b/poky/meta/recipes-devtools/python/python3-yamllint_1.33.0.bb new file mode 100644 index 0000000000..4b7bd065f9 --- /dev/null +++ b/poky/meta/recipes-devtools/python/python3-yamllint_1.33.0.bb @@ -0,0 +1,15 @@ +SUMMARY = "A linter for YAML files." +HOMEPAGE = "https://github.com/adrienverge/yamllint" +LICENSE = "GPL-3.0-only" +LIC_FILES_CHKSUM = "file://LICENSE;md5=1ebbd3e34237af26da5dc08a4e440464" + +inherit pypi setuptools3 + +PYPI_PACKAGE = "yamllint" + +SRC_URI[sha256sum] = "2dceab9ef2d99518a2fcf4ffc964d44250ac4459be1ba3ca315118e4a1a81f7d" + +DEPENDS += "${PYTHON_PN}-setuptools-scm-native" +RDEPENDS:${PN} += "${PYTHON_PN}-pyyaml" + +BBCLASSEXTEND = "native nativesdk" diff --git a/poky/meta/recipes-devtools/qemu/qemu-native_8.1.2.bb b/poky/meta/recipes-devtools/qemu/qemu-native_8.1.2.bb deleted file mode 100644 index a77953529b..0000000000 --- a/poky/meta/recipes-devtools/qemu/qemu-native_8.1.2.bb +++ /dev/null @@ -1,9 +0,0 @@ -BPN = "qemu" - -DEPENDS += "glib-2.0-native zlib-native" - -require qemu-native.inc - -EXTRA_OECONF:append = " --target-list=${@get_qemu_usermode_target_list(d)} --disable-tools --disable-install-blobs --disable-guest-agent" - -PACKAGECONFIG ??= "pie" diff --git a/poky/meta/recipes-devtools/qemu/qemu-native_8.2.0.bb b/poky/meta/recipes-devtools/qemu/qemu-native_8.2.0.bb new file mode 100644 index 0000000000..a77953529b --- /dev/null +++ b/poky/meta/recipes-devtools/qemu/qemu-native_8.2.0.bb @@ -0,0 +1,9 @@ +BPN = "qemu" + +DEPENDS += "glib-2.0-native zlib-native" + +require qemu-native.inc + +EXTRA_OECONF:append = " --target-list=${@get_qemu_usermode_target_list(d)} --disable-tools --disable-install-blobs --disable-guest-agent" + +PACKAGECONFIG ??= "pie" diff --git a/poky/meta/recipes-devtools/qemu/qemu-system-native_8.1.2.bb b/poky/meta/recipes-devtools/qemu/qemu-system-native_8.1.2.bb deleted file mode 100644 index 0634b34242..0000000000 --- a/poky/meta/recipes-devtools/qemu/qemu-system-native_8.1.2.bb +++ /dev/null @@ -1,31 +0,0 @@ -BPN = "qemu" - -require qemu-native.inc - -# As some of the files installed by qemu-native and qemu-system-native -# are the same, we depend on qemu-native to get the full installation set -# and avoid file clashes -DEPENDS += "glib-2.0-native zlib-native pixman-native qemu-native" - -EXTRA_OECONF:append = " --target-list=${@get_qemu_system_target_list(d)}" - -PACKAGECONFIG ??= "fdt alsa kvm pie slirp png \ - ${@bb.utils.contains('DISTRO_FEATURES', 'opengl', 'virglrenderer epoxy', '', d)} \ -" - -# Handle distros such as CentOS 5 32-bit that do not have kvm support -PACKAGECONFIG:remove = "${@'kvm' if not os.path.exists('/usr/include/linux/kvm.h') else ''}" - -do_install:append() { - install -Dm 0755 ${WORKDIR}/powerpc_rom.bin ${D}${datadir}/qemu - - # The following is also installed by qemu-native - rm -f ${D}${datadir}/qemu/trace-events-all - rm -rf ${D}${datadir}/qemu/keymaps - rm -rf ${D}${datadir}/icons/ - rm -rf ${D}${includedir}/qemu-plugin.h - - # Install qmp.py to be used with testimage - install -d ${D}${libdir}/qemu-python/qmp/ - install -D ${S}/python/qemu/qmp/* ${D}${libdir}/qemu-python/qmp/ -} diff --git a/poky/meta/recipes-devtools/qemu/qemu-system-native_8.2.0.bb b/poky/meta/recipes-devtools/qemu/qemu-system-native_8.2.0.bb new file mode 100644 index 0000000000..0634b34242 --- /dev/null +++ b/poky/meta/recipes-devtools/qemu/qemu-system-native_8.2.0.bb @@ -0,0 +1,31 @@ +BPN = "qemu" + +require qemu-native.inc + +# As some of the files installed by qemu-native and qemu-system-native +# are the same, we depend on qemu-native to get the full installation set +# and avoid file clashes +DEPENDS += "glib-2.0-native zlib-native pixman-native qemu-native" + +EXTRA_OECONF:append = " --target-list=${@get_qemu_system_target_list(d)}" + +PACKAGECONFIG ??= "fdt alsa kvm pie slirp png \ + ${@bb.utils.contains('DISTRO_FEATURES', 'opengl', 'virglrenderer epoxy', '', d)} \ +" + +# Handle distros such as CentOS 5 32-bit that do not have kvm support +PACKAGECONFIG:remove = "${@'kvm' if not os.path.exists('/usr/include/linux/kvm.h') else ''}" + +do_install:append() { + install -Dm 0755 ${WORKDIR}/powerpc_rom.bin ${D}${datadir}/qemu + + # The following is also installed by qemu-native + rm -f ${D}${datadir}/qemu/trace-events-all + rm -rf ${D}${datadir}/qemu/keymaps + rm -rf ${D}${datadir}/icons/ + rm -rf ${D}${includedir}/qemu-plugin.h + + # Install qmp.py to be used with testimage + install -d ${D}${libdir}/qemu-python/qmp/ + install -D ${S}/python/qemu/qmp/* ${D}${libdir}/qemu-python/qmp/ +} diff --git a/poky/meta/recipes-devtools/qemu/qemu.inc b/poky/meta/recipes-devtools/qemu/qemu.inc index 70515d980e..bc1440249d 100644 --- a/poky/meta/recipes-devtools/qemu/qemu.inc +++ b/poky/meta/recipes-devtools/qemu/qemu.inc @@ -32,19 +32,16 @@ SRC_URI = "https://download.qemu.org/${BPN}-${PV}.tar.xz \ file://0010-hw-pvrdma-Protect-against-buggy-or-malicious-guest-d.patch \ file://0002-linux-user-Replace-use-of-lfs64-related-functions-an.patch \ file://fixedmeson.patch \ - file://fixmips.patch \ file://0001-vfio-Include-libgen.h-for-basename-API.patch \ file://no-pip.patch \ + file://fix_segv.patch \ file://qemu-guest-agent.init \ file://qemu-guest-agent.udev \ " UPSTREAM_CHECK_REGEX = "qemu-(?P\d+(\.\d+)+)\.tar" -SRC_URI[sha256sum] = "541526a764576eb494d2ff5ec46aeb253e62ea29035d1c23c0a8af4e6cd4f087" - -SRC_URI:append:class-target = " file://cross.patch" -SRC_URI:append:class-nativesdk = " file://cross.patch" +SRC_URI[sha256sum] = "bf00d2fa12010df8b0ade93371def58e632cb32a6bfdc5f5a0ff8e6a1fb1bf32" CVE_STATUS[CVE-2017-5957] = "cpe-incorrect: Applies against virglrender < 0.6.0 and not qemu itself" @@ -117,9 +114,13 @@ EXTRA_OECONF = " \ --extra-ldflags='${LDFLAGS}' \ --disable-download \ --disable-docs \ + --host-cc=${BUILD_CC} \ ${PACKAGECONFIG_CONFARGS} \ " +EXTRA_OECONF:append:class-target = " --cross-prefix=${HOST_PREFIX}" +EXTRA_OECONF:append:class-nativesdk = " --cross-prefix=${HOST_PREFIX}" + B = "${WORKDIR}/build" #EXTRA_OECONF:append = " --python=${HOSTTOOLS_DIR}/python3" @@ -133,6 +134,7 @@ do_configure:prepend:class-native() { } do_configure() { + export PKG_CONFIG=pkg-config ${S}/configure ${EXTRA_OECONF} } do_configure[cleandirs] += "${B}" @@ -176,7 +178,7 @@ do_install:append() { # Disable kvm/virgl/mesa on targets that do not support it PACKAGECONFIG:remove:darwin = "kvm virglrenderer epoxy gtk+" -PACKAGECONFIG:remove:mingw32 = "kvm virglrenderer epoxy gtk+" +PACKAGECONFIG:remove:mingw32 = "kvm virglrenderer epoxy gtk+ pie" PACKAGECONFIG[sdl] = "--enable-sdl,--disable-sdl,libsdl2" PACKAGECONFIG[png] = "--enable-png,--disable-png,libpng" @@ -237,6 +239,7 @@ PACKAGECONFIG[brlapi] = "--enable-brlapi,--disable-brlapi" PACKAGECONFIG[jack] = "--enable-jack,--disable-jack,jack," PACKAGECONFIG[debuginfo] = "--enable-libdw,--disable-libdw,elfutils" PACKAGECONFIG[pipewire] = "--enable-pipewire,--disable-pipewire,pipewire" +PACKAGECONFIG[sndio] = "--enable-sndio,--disable-sndio,sndio" INSANE_SKIP:${PN}-common = "arch" diff --git a/poky/meta/recipes-devtools/qemu/qemu/cross.patch b/poky/meta/recipes-devtools/qemu/qemu/cross.patch deleted file mode 100644 index 112eb92593..0000000000 --- a/poky/meta/recipes-devtools/qemu/qemu/cross.patch +++ /dev/null @@ -1,38 +0,0 @@ -From 76c3fc4c87231bed32974ebbbdb5079cff45a6b7 Mon Sep 17 00:00:00 2001 -From: Richard Purdie -Date: Tue, 5 Jan 2021 23:00:14 +0000 -Subject: [PATCH 12/12] qemu: Upgrade 5.1.0->5.2.0 - -We need to be able to trigger configure's cross code but we don't want -to set cross_prefix as it does other things we don't want. Patch things -so we can do what we need in the target config case. - -Upstream-Status: Inappropriate [may be rewritten in a way upstream may accept?] -Signed-off-by: Richard Purdie - ---- - configure | 4 ---- - 1 file changed, 4 deletions(-) - -Index: qemu-8.0.0/configure -=================================================================== ---- qemu-8.0.0.orig/configure -+++ qemu-8.0.0/configure -@@ -2590,7 +2590,6 @@ if test "$skip_meson" = no; then - echo "widl = [$(meson_quote $widl)]" >> $cross - echo "windres = [$(meson_quote $windres)]" >> $cross - echo "windmc = [$(meson_quote $windmc)]" >> $cross -- if test "$cross_compile" = "yes"; then - cross_arg="--cross-file config-meson.cross" - echo "[host_machine]" >> $cross - echo "system = '$targetos'" >> $cross -@@ -2608,9 +2607,6 @@ if test "$skip_meson" = no; then - else - echo "endian = 'little'" >> $cross - fi -- else -- cross_arg="--native-file config-meson.cross" -- fi - mv $cross config-meson.cross - - rm -rf meson-private meson-info meson-logs diff --git a/poky/meta/recipes-devtools/qemu/qemu/fix_segv.patch b/poky/meta/recipes-devtools/qemu/qemu/fix_segv.patch new file mode 100644 index 0000000000..da5ae87e0c --- /dev/null +++ b/poky/meta/recipes-devtools/qemu/qemu/fix_segv.patch @@ -0,0 +1,47 @@ +With qemu 8.2.0 we started seeing SEGV errors when compiling webkitgtk from +usermode qemu: + +qemu-x86_64: QEMU internal SIGSEGV {code=MAPERR, addr=0x20} +Segmentation fault + +By bisection, this was tracked down to: + +commit 7b7a3366e142d3baeb3fd1d3660a50e7956c19eb +Author: Richard Henderson +Date: Tue Aug 8 20:02:19 2023 -0700 + + linux-user: Use walk_memory_regions for open_self_maps + + Replace the by-hand method of region identification with + the official user-exec interface. Cross-check the region + provided to the callback with the interval tree from + read_self_maps(). + + Tested-by: Helge Deller + Reviewed-by: Ilya Leoshkevich + Signed-off-by: Richard Henderson + +and specifically to 'n' being NULL. For now, just skip in that case +until a proper fix can be identified. + +Reported upstream: https://www.mail-archive.com/qemu-devel@nongnu.org/msg1018813.html + +YOCTO #15367 + +Signed-off-by: Richard Purdie +Upstream-Status: Pending + +diff --git a/linux-user/syscall.c b/linux-user/syscall.c +index e384e14248..2577fb770d 100644 +--- a/linux-user/syscall.c ++++ b/linux-user/syscall.c +@@ -8085,6 +8085,9 @@ static int open_self_maps_2(void *opaque, target_ulong guest_start, + while (1) { + IntervalTreeNode *n = + interval_tree_iter_first(d->host_maps, host_start, host_start); ++ if (!n) { ++ return 0; ++ } + MapInfo *mi = container_of(n, MapInfo, itree); + uintptr_t this_hlast = MIN(host_last, n->last); + target_ulong this_gend = h2g(this_hlast) + 1; diff --git a/poky/meta/recipes-devtools/qemu/qemu/fixedmeson.patch b/poky/meta/recipes-devtools/qemu/qemu/fixedmeson.patch index 0cbaea07ca..9047f66dc3 100644 --- a/poky/meta/recipes-devtools/qemu/qemu/fixedmeson.patch +++ b/poky/meta/recipes-devtools/qemu/qemu/fixedmeson.patch @@ -1,12 +1,12 @@ Upstream-Status: Inappropriate [workaround, would need a real fix for upstream] -Index: qemu-8.1.0/configure +Index: qemu-8.2.0/configure =================================================================== ---- qemu-8.1.0.orig/configure -+++ qemu-8.1.0/configure -@@ -1032,12 +1032,7 @@ then - exit 1 - fi +--- qemu-8.2.0.orig/configure ++++ qemu-8.2.0/configure +@@ -955,12 +955,7 @@ fi + $mkvenv ensuregroup --dir "${source_path}/python/wheels" \ + ${source_path}/pythondeps.toml meson || exit 1 -# At this point, we expect Meson to be installed and available. -# We expect mkvenv or pip to have created pyvenv/bin/meson for us. diff --git a/poky/meta/recipes-devtools/qemu/qemu/fixmips.patch b/poky/meta/recipes-devtools/qemu/qemu/fixmips.patch deleted file mode 100644 index 01546d1030..0000000000 --- a/poky/meta/recipes-devtools/qemu/qemu/fixmips.patch +++ /dev/null @@ -1,18 +0,0 @@ -Patch to fix mips boot hangs where virtio appears broken. Patch under discussion upstream. -Regression is introduced by other fixes to 8.1.0 to get x86 boots working. - -Upstream-Status: Pending [https://lore.kernel.org/qemu-devel/6c956b90-5a13-db96-9c02-9834a512fe6f@linaro.org/] - -Index: qemu-8.1.0/softmmu/physmem.c -=================================================================== ---- qemu-8.1.0.orig/softmmu/physmem.c -+++ qemu-8.1.0/softmmu/physmem.c -@@ -2517,7 +2517,7 @@ static void tcg_commit(MemoryListener *l - * That said, the listener is also called during realize, before - * all of the tcg machinery for run-on is initialized: thus halt_cond. - */ -- if (cpu->halt_cond) { -+ if (cpu->halt_cond && !qemu_cpu_is_self(cpu)) { - async_run_on_cpu(cpu, tcg_commit_cpu, RUN_ON_CPU_HOST_PTR(cpuas)); - } else { - tcg_commit_cpu(cpu, RUN_ON_CPU_HOST_PTR(cpuas)); diff --git a/poky/meta/recipes-devtools/qemu/qemu/no-pip.patch b/poky/meta/recipes-devtools/qemu/qemu/no-pip.patch index f52b4e4b83..92b2edbe9f 100644 --- a/poky/meta/recipes-devtools/qemu/qemu/no-pip.patch +++ b/poky/meta/recipes-devtools/qemu/qemu/no-pip.patch @@ -22,11 +22,11 @@ as it stands is a workaround. Upstream-Status: Inappropriate [oe specific] Signed-off-by: Richard Purdie -diff --git a/configure b/configure -index 133f4e3235..e4c144b4e2 100755 ---- a/configure -+++ b/configure -@@ -1009,7 +1009,7 @@ python="$(command -v "$python")" +Index: qemu-8.2.0/configure +=================================================================== +--- qemu-8.2.0.orig/configure ++++ qemu-8.2.0/configure +@@ -937,7 +937,7 @@ python="$(command -v "$python")" echo "python determined to be '$python'" echo "python version: $($python --version)" @@ -35,11 +35,11 @@ index 133f4e3235..e4c144b4e2 100755 if test "$?" -ne 0 ; then error_exit "python venv creation failed" fi -@@ -1017,6 +1017,7 @@ fi +@@ -945,6 +945,7 @@ fi # Suppress writing compiled files python="$python -B" mkvenv="$python ${source_path}/python/scripts/mkvenv.py" +mkvenv=true - mkvenv_flags="" - if test "$download" = "enabled" ; then + # Finish preparing the virtual environment using vendored .whl files + diff --git a/poky/meta/recipes-devtools/qemu/qemu_8.1.2.bb b/poky/meta/recipes-devtools/qemu/qemu_8.1.2.bb deleted file mode 100644 index dc1352232e..0000000000 --- a/poky/meta/recipes-devtools/qemu/qemu_8.1.2.bb +++ /dev/null @@ -1,27 +0,0 @@ -BBCLASSEXTEND = "nativesdk" - -require qemu.inc - -DEPENDS += "glib-2.0 zlib pixman" - -DEPENDS:append:libc-musl = " libucontext" - -CFLAGS += "${@bb.utils.contains('DISTRO_FEATURES', 'x11', '', '-DEGL_NO_X11=1', d)}" - -RDEPENDS:${PN}-common:class-target += "bash" - -EXTRA_OECONF:append:class-target = " --target-list=${@get_qemu_target_list(d)}" -EXTRA_OECONF:append:class-target:mipsarcho32 = "${@bb.utils.contains('BBEXTENDCURR', 'multilib', ' --disable-capstone', '', d)}" -EXTRA_OECONF:append:class-nativesdk = " --target-list=${@get_qemu_target_list(d)}" - -PACKAGECONFIG ??= " \ - fdt sdl kvm pie slirp \ - ${@bb.utils.filter('DISTRO_FEATURES', 'alsa pulseaudio xen', d)} \ - ${@bb.utils.contains('DISTRO_FEATURES', 'opengl', 'virglrenderer epoxy', '', d)} \ - ${@bb.utils.filter('DISTRO_FEATURES', 'seccomp', d)} \ -" -PACKAGECONFIG:class-nativesdk ??= "fdt sdl kvm pie slirp \ - ${@bb.utils.contains('DISTRO_FEATURES', 'opengl', 'virglrenderer epoxy', '', d)} \ -" -# ppc32 hosts are no longer supported in qemu -COMPATIBLE_HOST:powerpc = "null" diff --git a/poky/meta/recipes-devtools/qemu/qemu_8.2.0.bb b/poky/meta/recipes-devtools/qemu/qemu_8.2.0.bb new file mode 100644 index 0000000000..dc1352232e --- /dev/null +++ b/poky/meta/recipes-devtools/qemu/qemu_8.2.0.bb @@ -0,0 +1,27 @@ +BBCLASSEXTEND = "nativesdk" + +require qemu.inc + +DEPENDS += "glib-2.0 zlib pixman" + +DEPENDS:append:libc-musl = " libucontext" + +CFLAGS += "${@bb.utils.contains('DISTRO_FEATURES', 'x11', '', '-DEGL_NO_X11=1', d)}" + +RDEPENDS:${PN}-common:class-target += "bash" + +EXTRA_OECONF:append:class-target = " --target-list=${@get_qemu_target_list(d)}" +EXTRA_OECONF:append:class-target:mipsarcho32 = "${@bb.utils.contains('BBEXTENDCURR', 'multilib', ' --disable-capstone', '', d)}" +EXTRA_OECONF:append:class-nativesdk = " --target-list=${@get_qemu_target_list(d)}" + +PACKAGECONFIG ??= " \ + fdt sdl kvm pie slirp \ + ${@bb.utils.filter('DISTRO_FEATURES', 'alsa pulseaudio xen', d)} \ + ${@bb.utils.contains('DISTRO_FEATURES', 'opengl', 'virglrenderer epoxy', '', d)} \ + ${@bb.utils.filter('DISTRO_FEATURES', 'seccomp', d)} \ +" +PACKAGECONFIG:class-nativesdk ??= "fdt sdl kvm pie slirp \ + ${@bb.utils.contains('DISTRO_FEATURES', 'opengl', 'virglrenderer epoxy', '', d)} \ +" +# ppc32 hosts are no longer supported in qemu +COMPATIBLE_HOST:powerpc = "null" diff --git a/poky/meta/recipes-devtools/rust/files/cargo-path.patch b/poky/meta/recipes-devtools/rust/files/cargo-path.patch new file mode 100644 index 0000000000..84bd580aa7 --- /dev/null +++ b/poky/meta/recipes-devtools/rust/files/cargo-path.patch @@ -0,0 +1,37 @@ +Fix the cargo binary path error and ensure that it is fetched +during rustc bootstrap in rust oe-selftest. + +====================================================================== +ERROR: test_cargoflags (bootstrap_test.BuildBootstrap) +---------------------------------------------------------------------- +Traceback (most recent call last): + File "/home/build-st/tmp/work/cortexa57-poky-linux/rust/1.74.1/rustc-1.74.1-src/src/bootstrap/bootstrap_test.py", line 157, in test_cargoflags + args, _ = self.build_args(env={"CARGOFLAGS": "--timings"}) + File "/home/build-st/tmp/work/cortexa57-poky-linux/rust/1.74.1/rustc-1.74.1-src/src/bootstrap/bootstrap_test.py", line 154, in build_args + return build.build_bootstrap_cmd(env), env + File "/home/build-st/tmp/work/cortexa57-poky-linux/rust/1.74.1/rustc-1.74.1-src/src/bootstrap/bootstrap.py", line 960, in build_bootstrap_cmd + raise Exception("no cargo executable found at `{}`".format( +Exception: no cargo executable found at `/home/build-st/tmp/work/cortexa57-poky-linux/rust/1.74.1/rustc-1.74.1-src/build/x86_64-unknown-linux-gnu/stage0/bin/cargo` + +Upstream-Status: Submitted [https://github.com/rust-lang/rust/pull/120125] + +Signed-off-by: Yash Shinde +--- +diff --git a/src/bootstrap/bootstrap.py b/src/bootstrap/bootstrap.py +--- a/src/bootstrap/bootstrap.py ++++ b/src/bootstrap/bootstrap.py +@@ -954,9 +954,11 @@ + if deny_warnings: + env["RUSTFLAGS"] += " -Dwarnings" + +- env["PATH"] = os.path.join(self.bin_root(), "bin") + \ +- os.pathsep + env["PATH"] +- if not os.path.isfile(self.cargo()): ++ cargo_bin_path = os.path.join(self.bin_root(), "bin", "cargo") ++ if not os.path.isfile(cargo_bin_path): ++ cargo_bin_path = os.getenv("RUST_TARGET_PATH") + "rust-snapshot/bin/cargo" ++ env["PATH"] = os.path.dirname(cargo_bin_path) + os.pathsep + env["PATH"] ++ else: + raise Exception("no cargo executable found at `{}`".format( + self.cargo())) + args = [self.cargo(), "build", "--manifest-path", diff --git a/poky/meta/recipes-devtools/rust/files/custom-target-cfg.patch b/poky/meta/recipes-devtools/rust/files/custom-target-cfg.patch new file mode 100644 index 0000000000..15a7f252cc --- /dev/null +++ b/poky/meta/recipes-devtools/rust/files/custom-target-cfg.patch @@ -0,0 +1,90 @@ +Detect and fetch custom target configurations when rustc is +bootstrapped in rust oe-selftest. + +Upstream-Status: Backport [https://github.com/rust-lang/rust/pull/119619/commits/26c71cbcf1a9bce6ceb962d753c467d098f63cf6] + +Signed-off-by: onur-ozkan +Signed-off-by: Yash Shinde +--- +diff --git a/src/tools/compiletest/src/common.rs b/src/tools/compiletest/src/common.rs +index e85f6319936..c45c0b3c652 100644 +--- a/src/tools/compiletest/src/common.rs ++++ b/src/tools/compiletest/src/common.rs +@@ -479,6 +479,7 @@ fn new(config: &Config) -> TargetCfgs { + let mut targets: HashMap = serde_json::from_str(&rustc_output( + config, + &["--print=all-target-specs-json", "-Zunstable-options"], ++ Default::default(), + )) + .unwrap(); + +@@ -491,16 +492,33 @@ fn new(config: &Config) -> TargetCfgs { + let mut all_families = HashSet::new(); + let mut all_pointer_widths = HashSet::new(); + +- // Handle custom target specs, which are not included in `--print=all-target-specs-json`. +- if config.target.ends_with(".json") { +- targets.insert( +- config.target.clone(), +- serde_json::from_str(&rustc_output( +- config, +- &["--print=target-spec-json", "-Zunstable-options", "--target", &config.target], +- )) +- .unwrap(), +- ); ++ // If current target is not included in the `--print=all-target-specs-json` output, ++ // we check whether it is a custom target from the user or a synthetic target from bootstrap. ++ if !targets.contains_key(&config.target) { ++ let mut envs: HashMap = HashMap::new(); ++ ++ if let Ok(t) = std::env::var("RUST_TARGET_PATH") { ++ envs.insert("RUST_TARGET_PATH".into(), t); ++ } ++ ++ // This returns false only when the target is neither a synthetic target ++ // nor a custom target from the user, indicating it is most likely invalid. ++ if config.target.ends_with(".json") || !envs.is_empty() { ++ targets.insert( ++ config.target.clone(), ++ serde_json::from_str(&rustc_output( ++ config, ++ &[ ++ "--print=target-spec-json", ++ "-Zunstable-options", ++ "--target", ++ &config.target, ++ ], ++ envs, ++ )) ++ .unwrap(), ++ ); ++ } + } + + for (target, cfg) in targets.iter() { +@@ -545,7 +563,9 @@ fn get_current_target_config( + // code below extracts them from `--print=cfg`: make sure to only override fields that can + // actually be changed with `-C` flags. + for config in +- rustc_output(config, &["--print=cfg", "--target", &config.target]).trim().lines() ++ rustc_output(config, &["--print=cfg", "--target", &config.target], Default::default()) ++ .trim() ++ .lines() + { + let (name, value) = config + .split_once("=\"") +@@ -624,11 +644,12 @@ pub enum Endian { + Big, + } + +-fn rustc_output(config: &Config, args: &[&str]) -> String { ++fn rustc_output(config: &Config, args: &[&str], envs: HashMap) -> String { + let mut command = Command::new(&config.rustc_path); + add_dylib_path(&mut command, iter::once(&config.compile_lib_path)); + command.args(&config.target_rustcflags).args(args); + command.env("RUSTC_BOOTSTRAP", "1"); ++ command.envs(envs); + + let output = match command.output() { + Ok(output) => output, + diff --git a/poky/meta/recipes-devtools/rust/files/rustc-bootstrap.patch b/poky/meta/recipes-devtools/rust/files/rustc-bootstrap.patch new file mode 100644 index 0000000000..406fc610bb --- /dev/null +++ b/poky/meta/recipes-devtools/rust/files/rustc-bootstrap.patch @@ -0,0 +1,21 @@ +When rust.channel is set to either beta or stable, we can't use +nightly features on bootstrap without RUSTC_BOOTSTRAP. Set RUSTC_BOOTSTRAP=1 +to use nightly features on stable or beta. + +Upstream-Status: Backport [https://github.com/rust-lang/rust/pull/119619/commits/8aa7dd06f6e50621dc10f9f9490681be8a45876f] + +Signed-off-by: onur-ozkan +Signed-off-by: Yash Shinde +--- +diff --git a/src/bootstrap/synthetic_targets.rs b/ src/bootstrap/synthetic_targets.rs +index d2c65b740da..45baf56f46b 100644 +--- a/src/bootstrap/synthetic_targets.rs ++++ b/src/bootstrap/synthetic_targets.rs +@@ -59,6 +59,7 @@ fn create_synthetic_target( + let mut cmd = Command::new(builder.rustc(compiler)); + cmd.arg("--target").arg(base.rustc_target_arg()); + cmd.args(["-Zunstable-options", "--print", "target-spec-json"]); ++ cmd.env("RUSTC_BOOTSTRAP", "1"); + cmd.stdout(Stdio::piped()); + + let output = cmd.spawn().unwrap().wait_with_output().unwrap(); diff --git a/poky/meta/recipes-devtools/rust/files/target-build-value.patch b/poky/meta/recipes-devtools/rust/files/target-build-value.patch new file mode 100644 index 0000000000..23e8c76801 --- /dev/null +++ b/poky/meta/recipes-devtools/rust/files/target-build-value.patch @@ -0,0 +1,26 @@ +Add correct build value for cross-compiled targets on stage1 when +bootstapping rustc. + +Upstream-Status: Backport [https://github.com/rust-lang/rust/pull/119619/commits/b888e2f82b9dbe81875f50d13adbc0271a9401ff] + +Signed-off-by: onur-ozkan +Signed-off-by: Yash Shinde +--- +diff --git a/src/bootstrap/test.rs b/src/bootstrap/test.rs +--- a/src/bootstrap/test.rs ++++ b/src/bootstrap/test.rs +@@ -1489,8 +1489,12 @@ + // NOTE: Only stage 1 is special cased because we need the rustc_private artifacts to match the + // running compiler in stage 2 when plugins run. + let stage_id = if suite == "ui-fulldeps" && compiler.stage == 1 { +- compiler = builder.compiler(compiler.stage - 1, target); +- format!("stage{}-{}", compiler.stage + 1, target) ++ // At stage 0 (stage - 1) we are using the beta compiler. Using `self.target` can lead finding ++ // an incorrect compiler path on cross-targets, as the stage 0 beta compiler is always equal ++ // to `build.build` in the configuration. ++ let build = builder.build.build; ++ compiler = builder.compiler(compiler.stage - 1, build); ++ format!("stage{}-{}", compiler.stage + 1, build) + } else { + format!("stage{}-{}", compiler.stage, target) + }; diff --git a/poky/meta/recipes-devtools/rust/rust-source.inc b/poky/meta/recipes-devtools/rust/rust-source.inc index 83a0dbc15f..e02829e6b3 100644 --- a/poky/meta/recipes-devtools/rust/rust-source.inc +++ b/poky/meta/recipes-devtools/rust/rust-source.inc @@ -10,6 +10,10 @@ SRC_URI += "https://static.rust-lang.org/dist/rustc-${RUST_VERSION}-src.tar.xz;n file://0004-musl-Define-O_LARGEFILE-for-riscv32.patch;patchdir=${RUSTSRC} \ file://0005-musl-Define-SOCK_SEQPACKET-in-common-place.patch;patchdir=${RUSTSRC} \ file://0001-Revert-Map-source-absolute-paths-to-OUT_DIR-as-relat.patch;patchdir=${RUSTSRC} \ + file://cargo-path.patch;patchdir=${RUSTSRC} \ + file://custom-target-cfg.patch;patchdir=${RUSTSRC} \ + file://rustc-bootstrap.patch;patchdir=${RUSTSRC} \ + file://target-build-value.patch;patchdir=${RUSTSRC} \ " SRC_URI[rust.sha256sum] = "b98c09d968529212fb29eec7d6d3e9bdaa869810679b7fb86a1ca69469d75f5e" diff --git a/poky/meta/recipes-devtools/rust/rust_1.74.1.bb b/poky/meta/recipes-devtools/rust/rust_1.74.1.bb index 30543ada7d..f8db186890 100644 --- a/poky/meta/recipes-devtools/rust/rust_1.74.1.bb +++ b/poky/meta/recipes-devtools/rust/rust_1.74.1.bb @@ -200,7 +200,11 @@ rust_runx () { if [ ${RUST_ALTERNATE_EXE_PATH_NATIVE} != ${RUST_ALTERNATE_EXE_PATH} -a ! -f ${RUST_ALTERNATE_EXE_PATH} ]; then mkdir -p `dirname ${RUST_ALTERNATE_EXE_PATH}` cp ${RUST_ALTERNATE_EXE_PATH_NATIVE} ${RUST_ALTERNATE_EXE_PATH} - chrpath -d ${RUST_ALTERNATE_EXE_PATH} + if [ -e ${STAGING_LIBDIR_NATIVE}/libc++.so.1 ]; then + chrpath -r \$ORIGIN/../../../../../`basename ${STAGING_DIR_NATIVE}`${libdir_native} ${RUST_ALTERNATE_EXE_PATH} + else + chrpath -d ${RUST_ALTERNATE_EXE_PATH} + fi fi oe_cargo_fix_env -- cgit v1.2.3