summaryrefslogtreecommitdiffstats
path: root/meta
diff options
context:
space:
mode:
Diffstat (limited to 'meta')
-rw-r--r--meta/classes-global/base.bbclass40
-rw-r--r--meta/classes-global/insane.bbclass18
-rw-r--r--meta/classes-global/sstate.bbclass2
-rw-r--r--meta/classes-recipe/baremetal-image.bbclass2
-rw-r--r--meta/classes-recipe/cargo_common.bbclass4
-rw-r--r--meta/classes-recipe/cmake.bbclass2
-rw-r--r--meta/classes-recipe/go.bbclass16
-rw-r--r--meta/classes-recipe/image_types.bbclass20
-rw-r--r--meta/classes-recipe/kernel-yocto.bbclass51
-rw-r--r--meta/classes-recipe/kernel.bbclass6
-rw-r--r--meta/classes-recipe/populate_sdk_ext.bbclass2
-rw-r--r--meta/classes-recipe/ptest-perl.bbclass2
-rw-r--r--meta/classes-recipe/ptest.bbclass4
-rw-r--r--meta/classes-recipe/systemd.bbclass2
-rw-r--r--meta/classes-recipe/toolchain-scripts.bbclass9
-rw-r--r--meta/classes-recipe/uboot-sign.bbclass2
-rw-r--r--meta/classes/create-spdx-2.2.bbclass16
-rw-r--r--meta/classes/devtool-source.bbclass74
-rw-r--r--meta/conf/bitbake.conf3
-rw-r--r--meta/conf/distro/include/maintainers.inc20
-rw-r--r--meta/conf/distro/include/ptest-packagelists.inc1
-rw-r--r--meta/conf/distro/include/tclibc-newlib.inc6
-rw-r--r--meta/conf/distro/include/tcmode-default.inc2
-rw-r--r--meta/conf/distro/include/yocto-uninative.inc8
-rw-r--r--meta/conf/layer.conf1
-rw-r--r--meta/conf/sanity.conf2
-rw-r--r--meta/files/toolchain-shar-extract.sh4
-rw-r--r--meta/lib/bblayers/makesetup.py9
-rw-r--r--meta/lib/bblayers/setupwriters/oe-setup-layers.py5
-rw-r--r--meta/lib/oe/package_manager/__init__.py9
-rw-r--r--meta/lib/oe/package_manager/common_deb_ipk.py97
-rw-r--r--meta/lib/oe/package_manager/deb/__init__.py85
-rw-r--r--meta/lib/oe/package_manager/ipk/__init__.py89
-rw-r--r--meta/lib/oe/patch.py8
-rw-r--r--meta/lib/oe/recipeutils.py2
-rw-r--r--meta/lib/oe/reproducible.py21
-rw-r--r--meta/lib/oeqa/manual/crops.json294
-rw-r--r--meta/lib/oeqa/manual/eclipse-plugin.json322
-rw-r--r--meta/lib/oeqa/sdk/cases/autotools.py (renamed from meta/lib/oeqa/sdk/cases/buildcpio.py)3
-rw-r--r--meta/lib/oeqa/sdk/cases/cmake.py (renamed from meta/lib/oeqa/sdk/cases/assimp.py)12
-rw-r--r--meta/lib/oeqa/sdk/cases/gtk3.py (renamed from meta/lib/oeqa/sdk/cases/buildgalculator.py)2
-rw-r--r--meta/lib/oeqa/sdk/cases/makefile.py (renamed from meta/lib/oeqa/sdk/cases/buildlzip.py)4
-rw-r--r--meta/lib/oeqa/sdk/cases/maturin.py1
-rw-r--r--meta/lib/oeqa/sdk/cases/meson.py (renamed from meta/lib/oeqa/sdk/cases/buildepoxy.py)4
-rw-r--r--meta/lib/oeqa/sdk/cases/python.py2
-rw-r--r--meta/lib/oeqa/sdk/cases/rust.py1
-rw-r--r--meta/lib/oeqa/sdkext/cases/devtool.py7
-rw-r--r--meta/lib/oeqa/selftest/cases/debuginfod.py14
-rw-r--r--meta/lib/oeqa/selftest/cases/devtool.py77
-rw-r--r--meta/lib/oeqa/selftest/cases/layerappend.py2
-rw-r--r--meta/lib/oeqa/selftest/cases/recipetool.py34
-rw-r--r--meta/lib/oeqa/selftest/cases/recipeutils.py4
-rw-r--r--meta/lib/oeqa/selftest/cases/runtime_test.py2
-rw-r--r--meta/lib/oeqa/selftest/cases/sstatetests.py31
-rw-r--r--meta/lib/patchtest/repo.py88
-rw-r--r--meta/lib/patchtest/requirements.txt1
-rw-r--r--meta/lib/patchtest/selftest/files/TestMbox.test_bugzilla_entry_format.fail25
-rw-r--r--meta/lib/patchtest/utils.py129
-rw-r--r--meta/recipes-bsp/acpid/acpid.inc4
-rw-r--r--meta/recipes-bsp/alsa-state/alsa-state.bb11
-rw-r--r--meta/recipes-bsp/formfactor/formfactor_0.0.bb4
-rw-r--r--meta/recipes-bsp/gnu-efi/gnu-efi/0001-Fix-parallel-make-failure-for-archives.patch (renamed from meta/recipes-bsp/gnu-efi/gnu-efi/parallel-make-archives.patch)12
-rw-r--r--meta/recipes-bsp/gnu-efi/gnu-efi/0001-riscv64-adjust-type-definitions.patch34
-rw-r--r--meta/recipes-bsp/gnu-efi/gnu-efi/0001-riscv64-ignore-unknown-relocs.patch32
-rw-r--r--meta/recipes-bsp/gnu-efi/gnu-efi/0002-Do-not-treat-warnings-as-errors.patch (renamed from meta/recipes-bsp/gnu-efi/gnu-efi/no-werror.patch)21
-rw-r--r--meta/recipes-bsp/gnu-efi/gnu-efi/gnu-efi-3.0.9-fix-clang-build.patch24
-rw-r--r--meta/recipes-bsp/gnu-efi/gnu-efi_3.0.18.bb (renamed from meta/recipes-bsp/gnu-efi/gnu-efi_3.0.17.bb)9
-rw-r--r--meta/recipes-bsp/grub/files/0001-Disable-mfpmath-sse-as-well-when-SSE-is-disabled.patch44
-rw-r--r--meta/recipes-bsp/grub/files/grub-module-explicitly-keeps-symbole-.module_license.patch2
-rw-r--r--meta/recipes-bsp/grub/grub-bootconf_1.00.bb3
-rw-r--r--meta/recipes-bsp/grub/grub-efi_2.12.bb2
-rw-r--r--meta/recipes-bsp/grub/grub2.inc1
-rw-r--r--meta/recipes-bsp/keymaps/keymaps_1.0.bb5
-rw-r--r--meta/recipes-bsp/lrzsz/lrzsz_0.12.20.bb6
-rw-r--r--meta/recipes-bsp/pciutils/pciutils/configure.patch13
-rw-r--r--meta/recipes-bsp/pciutils/pciutils_3.12.0.bb (renamed from meta/recipes-bsp/pciutils/pciutils_3.11.1.bb)2
-rw-r--r--meta/recipes-bsp/u-boot/u-boot.inc8
-rw-r--r--meta/recipes-bsp/usbinit/usbinit.bb24
-rw-r--r--meta/recipes-bsp/usbinit/usbinit/COPYING.GPL339
-rwxr-xr-xmeta/recipes-bsp/usbinit/usbinit/usb-gether23
-rw-r--r--meta/recipes-connectivity/avahi/avahi_0.8.bb4
-rw-r--r--meta/recipes-connectivity/bind/bind_9.18.27.bb (renamed from meta/recipes-connectivity/bind/bind_9.18.26.bb)8
-rw-r--r--meta/recipes-connectivity/bluez5/bluez5.inc2
-rw-r--r--meta/recipes-connectivity/connman/connman-conf.bb3
-rw-r--r--meta/recipes-connectivity/connman/connman-gnome_0.7.bb6
-rw-r--r--meta/recipes-connectivity/connman/connman.inc2
-rw-r--r--meta/recipes-connectivity/dhcpcd/dhcpcd_10.0.6.bb2
-rw-r--r--meta/recipes-connectivity/inetutils/inetutils_2.5.bb10
-rw-r--r--meta/recipes-connectivity/iproute2/iproute2_6.9.0.bb (renamed from meta/recipes-connectivity/iproute2/iproute2_6.8.0.bb)4
-rw-r--r--meta/recipes-connectivity/iw/iw_6.9.bb (renamed from meta/recipes-connectivity/iw/iw_6.7.bb)2
-rw-r--r--meta/recipes-connectivity/kea/kea_2.4.1.bb5
-rw-r--r--meta/recipes-connectivity/neard/neard_0.19.bb2
-rw-r--r--meta/recipes-connectivity/nfs-utils/nfs-utils_2.6.4.bb14
-rw-r--r--meta/recipes-connectivity/ofono/ofono/0001-mbim-add-an-optional-TEMP_FAILURE_RETRY-macro-copy.patch36
-rw-r--r--meta/recipes-connectivity/ofono/ofono/0002-mbim-Fix-build-with-ell-0.39-by-restoring-unlikely-m.patch28
-rw-r--r--meta/recipes-connectivity/ofono/ofono_2.7.bb (renamed from meta/recipes-connectivity/ofono/ofono_2.4.bb)11
-rw-r--r--meta/recipes-connectivity/openssh/openssh_9.7p1.bb20
-rw-r--r--meta/recipes-connectivity/openssl/openssl/0001-Implement-riscv_vlen_asm-for-riscv32.patch43
-rw-r--r--meta/recipes-connectivity/openssl/openssl/CVE-2024-4603.patch179
-rw-r--r--meta/recipes-connectivity/openssl/openssl_3.3.0.bb10
-rw-r--r--meta/recipes-connectivity/ppp-dialin/ppp-dialin_0.1.bb7
-rw-r--r--meta/recipes-connectivity/ppp/ppp_2.5.0.bb22
-rw-r--r--meta/recipes-connectivity/resolvconf/resolvconf_1.92.bb2
-rw-r--r--meta/recipes-connectivity/slirp/libslirp_git.bb4
-rw-r--r--meta/recipes-connectivity/ssh-pregen-hostkeys/ssh-pregen-hostkeys_1.0.bb11
-rw-r--r--meta/recipes-connectivity/wpa-supplicant/wpa-supplicant_2.10.bb8
-rw-r--r--meta/recipes-core/base-files/base-files/profile2
-rw-r--r--meta/recipes-core/base-files/base-files_3.0.14.bb27
-rw-r--r--meta/recipes-core/busybox/busybox-inittab_1.36.1.bb5
-rw-r--r--meta/recipes-core/busybox/busybox.inc46
-rw-r--r--meta/recipes-core/dbus/dbus_1.14.10.bb4
-rw-r--r--meta/recipes-core/dropbear/dropbear/0001-urandom-xauth-changes-to-options.h.patch8
-rw-r--r--meta/recipes-core/dropbear/dropbear/0005-dropbear-enable-pam.patch13
-rw-r--r--meta/recipes-core/dropbear/dropbear/0006-dropbear-configuration-file.patch11
-rw-r--r--meta/recipes-core/dropbear/dropbear/dropbear-disable-weak-ciphers.patch9
-rw-r--r--meta/recipes-core/dropbear/dropbear_2024.85.bb (renamed from meta/recipes-core/dropbear/dropbear_2024.84.bb)14
-rw-r--r--meta/recipes-core/ell/ell_0.65.bb (renamed from meta/recipes-core/ell/ell_0.64.bb)6
-rw-r--r--meta/recipes-core/gettext/gettext-minimal-native_0.22.5.bb2
-rw-r--r--meta/recipes-core/glib-2.0/files/0001-Do-not-write-bindir-into-pkg-config-files.patch (renamed from meta/recipes-core/glib-2.0/glib-2.0/0001-Do-not-write-bindir-into-pkg-config-files.patch)31
-rw-r--r--meta/recipes-core/glib-2.0/files/0001-Fix-DATADIRNAME-on-uclibc-Linux.patch (renamed from meta/recipes-core/glib-2.0/glib-2.0/0001-Fix-DATADIRNAME-on-uclibc-Linux.patch)2
-rw-r--r--meta/recipes-core/glib-2.0/files/0001-Install-gio-querymodules-as-libexec_PROGRAM.patch (renamed from meta/recipes-core/glib-2.0/glib-2.0/0001-Install-gio-querymodules-as-libexec_PROGRAM.patch)6
-rw-r--r--meta/recipes-core/glib-2.0/files/0001-Remove-the-warning-about-deprecated-paths-in-schemas.patch (renamed from meta/recipes-core/glib-2.0/glib-2.0/0001-Remove-the-warning-about-deprecated-paths-in-schemas.patch)2
-rw-r--r--meta/recipes-core/glib-2.0/files/0001-gio-tests-resources.c-comment-out-a-build-host-only-.patch (renamed from meta/recipes-core/glib-2.0/glib-2.0/0001-gio-tests-resources.c-comment-out-a-build-host-only-.patch)4
-rw-r--r--meta/recipes-core/glib-2.0/files/0001-girepository-introspection-correctly-install-.gir-fi.patch88
-rw-r--r--meta/recipes-core/glib-2.0/files/0001-meson-Run-atomics-test-on-clang-as-well.patch (renamed from meta/recipes-core/glib-2.0/glib-2.0/0001-meson-Run-atomics-test-on-clang-as-well.patch)6
-rw-r--r--meta/recipes-core/glib-2.0/files/0001-meson.build-do-not-enable-pidfd-features-on-native-g.patch (renamed from meta/recipes-core/glib-2.0/glib-2.0/0001-meson.build-do-not-enable-pidfd-features-on-native-g.patch)6
-rw-r--r--meta/recipes-core/glib-2.0/files/0010-Do-not-hardcode-python-path-into-various-tools.patch (renamed from meta/recipes-core/glib-2.0/glib-2.0/0010-Do-not-hardcode-python-path-into-various-tools.patch)4
-rw-r--r--meta/recipes-core/glib-2.0/files/meson.cross.d/common (renamed from meta/recipes-core/glib-2.0/glib-2.0/meson.cross.d/common)0
-rw-r--r--meta/recipes-core/glib-2.0/files/meson.cross.d/common-glibc (renamed from meta/recipes-core/glib-2.0/glib-2.0/meson.cross.d/common-glibc)0
-rw-r--r--meta/recipes-core/glib-2.0/files/meson.cross.d/common-linux (renamed from meta/recipes-core/glib-2.0/glib-2.0/meson.cross.d/common-linux)0
-rw-r--r--meta/recipes-core/glib-2.0/files/meson.cross.d/common-mingw (renamed from meta/recipes-core/glib-2.0/glib-2.0/meson.cross.d/common-mingw)0
-rw-r--r--meta/recipes-core/glib-2.0/files/meson.cross.d/common-musl (renamed from meta/recipes-core/glib-2.0/glib-2.0/meson.cross.d/common-musl)0
-rw-r--r--meta/recipes-core/glib-2.0/files/relocate-modules.patch (renamed from meta/recipes-core/glib-2.0/glib-2.0/relocate-modules.patch)8
-rw-r--r--meta/recipes-core/glib-2.0/files/run-ptest (renamed from meta/recipes-core/glib-2.0/glib-2.0/run-ptest)0
-rw-r--r--meta/recipes-core/glib-2.0/files/skip-timeout.patch (renamed from meta/recipes-core/glib-2.0/glib-2.0/skip-timeout.patch)7
-rw-r--r--meta/recipes-core/glib-2.0/glib-2.0-initial_2.80.2.bb5
-rw-r--r--meta/recipes-core/glib-2.0/glib-2.0/0001-Set-host_machine-correctly-when-building-with-mingw3.patch80
-rw-r--r--meta/recipes-core/glib-2.0/glib-2.0/0001-Switch-from-the-deprecated-distutils-module-to-the-p.patch34
-rw-r--r--meta/recipes-core/glib-2.0/glib-2.0/fix-regex.patch54
-rw-r--r--meta/recipes-core/glib-2.0/glib-2.0/memory-monitor.patch361
-rw-r--r--meta/recipes-core/glib-2.0/glib-2.0_2.78.4.bb57
-rw-r--r--meta/recipes-core/glib-2.0/glib-2.0_2.80.2.bb2
-rw-r--r--meta/recipes-core/glib-2.0/glib.inc72
-rw-r--r--meta/recipes-core/glibc/glibc-common.inc2
-rw-r--r--meta/recipes-core/glibc/glibc-package.inc6
-rw-r--r--meta/recipes-core/glibc/glibc-testsuite_2.39.bb4
-rw-r--r--meta/recipes-core/glibc/glibc-version.inc2
-rw-r--r--meta/recipes-core/glibc/glibc-y2038-tests_2.39.bb2
-rw-r--r--meta/recipes-core/glibc/glibc/0016-wordsize.h-Unify-the-header-between-arm-and-aarch64.patch47
-rw-r--r--meta/recipes-core/glibc/glibc/0023-aarch64-configure-Pass-mcpu-along-with-march-to-dete.patch62
-rw-r--r--meta/recipes-core/glibc/glibc/0023-qemu-stale-process.patch (renamed from meta/recipes-core/glibc/glibc/0024-qemu-stale-process.patch)0
-rw-r--r--meta/recipes-core/glibc/glibc_2.39.bb7
-rw-r--r--meta/recipes-core/ifupdown/ifupdown_0.8.41.bb2
-rw-r--r--meta/recipes-core/images/build-appliance-image_15.0.0.bb17
-rw-r--r--meta/recipes-core/init-ifupdown/init-ifupdown_1.0.bb11
-rw-r--r--meta/recipes-core/initrdscripts/initramfs-boot_1.0.bb6
-rwxr-xr-xmeta/recipes-core/initrdscripts/initramfs-framework/init23
-rw-r--r--meta/recipes-core/initrdscripts/initramfs-framework_1.0.bb25
-rw-r--r--meta/recipes-core/initrdscripts/initramfs-live-boot-tiny_1.0.bb6
-rw-r--r--meta/recipes-core/initrdscripts/initramfs-live-boot_1.0.bb6
-rw-r--r--meta/recipes-core/initrdscripts/initramfs-live-install-efi-testfs_1.0.bb5
-rw-r--r--meta/recipes-core/initrdscripts/initramfs-live-install-efi_1.0.bb6
-rw-r--r--meta/recipes-core/initrdscripts/initramfs-live-install-testfs_1.0.bb5
-rw-r--r--meta/recipes-core/initrdscripts/initramfs-live-install_1.0.bb6
-rw-r--r--meta/recipes-core/initrdscripts/initramfs-module-install-efi_1.0.bb5
-rw-r--r--meta/recipes-core/initrdscripts/initramfs-module-install_1.0.bb5
-rw-r--r--meta/recipes-core/initrdscripts/initramfs-module-setup-live_1.0.bb5
-rw-r--r--meta/recipes-core/initscripts/initscripts_1.0.bb61
-rw-r--r--meta/recipes-core/libcgroup/libcgroup/0001-include-Makefile-install-systemd.h-by-default.patch37
-rw-r--r--meta/recipes-core/libcgroup/libcgroup_3.1.0.bb1
-rw-r--r--meta/recipes-core/libxcrypt/libxcrypt-compat_4.4.36.bb2
-rw-r--r--meta/recipes-core/libxml/libxml2_2.12.7.bb (renamed from meta/recipes-core/libxml/libxml2_2.12.6.bb)2
-rw-r--r--meta/recipes-core/meta/uninative-tarball.bb2
-rw-r--r--meta/recipes-core/musl/bsd-headers.bb3
-rw-r--r--meta/recipes-core/musl/libc-test_git.bb2
-rw-r--r--meta/recipes-core/musl/libssp-nonshared.bb3
-rw-r--r--meta/recipes-core/musl/musl-legacy-error.bb3
-rw-r--r--meta/recipes-core/ncurses/files/0001-Fix-CVE-2023-29491.patch462
-rw-r--r--meta/recipes-core/ncurses/files/0001-Updating-reset-code-ncurses-6.4-patch-20231104.patch499
-rw-r--r--meta/recipes-core/ncurses/files/0001-tic-hang.patch11
-rw-r--r--meta/recipes-core/ncurses/files/0002-configure-reproducible.patch7
-rw-r--r--meta/recipes-core/ncurses/files/0003-gen-pkgconfig.in-Do-not-include-LDFLAGS-in-generated.patch5
-rw-r--r--meta/recipes-core/ncurses/files/CVE-2023-50495.patch301
-rw-r--r--meta/recipes-core/ncurses/files/exit_prototype.patch11
-rw-r--r--meta/recipes-core/ncurses/ncurses.inc4
-rw-r--r--meta/recipes-core/ncurses/ncurses_6.5.bb (renamed from meta/recipes-core/ncurses/ncurses_6.4.bb)7
-rw-r--r--meta/recipes-core/newlib/newlib.inc8
-rw-r--r--meta/recipes-core/psplash/psplash_git.bb8
-rw-r--r--meta/recipes-core/readline/readline.inc4
-rw-r--r--meta/recipes-core/seatd/seatd_0.8.0.bb2
-rw-r--r--meta/recipes-core/systemd/systemd-boot-native_255.6.bb (renamed from meta/recipes-core/systemd/systemd-boot-native_255.4.bb)0
-rw-r--r--meta/recipes-core/systemd/systemd-boot_255.6.bb (renamed from meta/recipes-core/systemd/systemd-boot_255.4.bb)0
-rw-r--r--meta/recipes-core/systemd/systemd-bootconf_1.00.bb3
-rw-r--r--meta/recipes-core/systemd/systemd-compat-units.bb3
-rw-r--r--meta/recipes-core/systemd/systemd-conf_1.0.bb13
-rw-r--r--meta/recipes-core/systemd/systemd-serialgetty.bb7
-rw-r--r--meta/recipes-core/systemd/systemd-systemctl-native.bb5
-rw-r--r--meta/recipes-core/systemd/systemd.inc2
-rw-r--r--meta/recipes-core/systemd/systemd/0001-missing_type.h-add-comparison_fn_t.patch7
-rw-r--r--meta/recipes-core/systemd/systemd/0002-add-fallback-parse_printf_format-implementation.patch13
-rw-r--r--meta/recipes-core/systemd/systemd/0002-binfmt-Don-t-install-dependency-links-at-install-tim.patch9
-rw-r--r--meta/recipes-core/systemd/systemd/0003-src-basic-missing.h-check-for-missing-strndupa.patch55
-rw-r--r--meta/recipes-core/systemd/systemd/0004-don-t-fail-if-GLOB_BRACE-and-GLOB_ALTDIRFUNC-is-not-.patch14
-rw-r--r--meta/recipes-core/systemd/systemd/0005-add-missing-FTW_-macros-for-musl.patch7
-rw-r--r--meta/recipes-core/systemd/systemd/0006-Use-uintmax_t-for-handling-rlim_t.patch11
-rw-r--r--meta/recipes-core/systemd/systemd/0007-don-t-pass-AT_SYMLINK_NOFOLLOW-flag-to-faccessat.patch11
-rw-r--r--meta/recipes-core/systemd/systemd/0008-Define-glibc-compatible-basename-for-non-glibc-syste.patch8
-rw-r--r--meta/recipes-core/systemd/systemd/0008-implment-systemd-sysv-install-for-OE.patch5
-rw-r--r--meta/recipes-core/systemd/systemd/0009-Do-not-disable-buffering-when-writing-to-oom_score_a.patch9
-rw-r--r--meta/recipes-core/systemd/systemd/0010-distinguish-XSI-compliant-strerror_r-from-GNU-specif.patch13
-rw-r--r--meta/recipes-core/systemd/systemd/0011-avoid-redefinition-of-prctl_mm_map-structure.patch7
-rw-r--r--meta/recipes-core/systemd/systemd/0012-do-not-disable-buffer-in-writing-files.patch35
-rw-r--r--meta/recipes-core/systemd/systemd/0013-Handle-__cpu_mask-usage.patch7
-rw-r--r--meta/recipes-core/systemd/systemd/0014-Handle-missing-gshadow.patch7
-rw-r--r--meta/recipes-core/systemd/systemd/0015-missing_syscall.h-Define-MIPS-ABI-defines-for-musl.patch11
-rw-r--r--meta/recipes-core/systemd/systemd/0016-pass-correct-parameters-to-getdents64.patch7
-rw-r--r--meta/recipes-core/systemd/systemd/0017-Adjust-for-musl-headers.patch17
-rw-r--r--meta/recipes-core/systemd/systemd/0018-test-bus-error-strerror-is-assumed-to-be-GNU-specifi.patch9
-rw-r--r--meta/recipes-core/systemd/systemd/0019-errno-util-Make-STRERROR-portable-for-musl.patch7
-rw-r--r--meta/recipes-core/systemd/systemd/0020-sd-event-Make-malloc_trim-conditional-on-glibc.patch9
-rw-r--r--meta/recipes-core/systemd/systemd/0021-shared-Do-not-use-malloc_info-on-musl.patch7
-rw-r--r--meta/recipes-core/systemd/systemd/0022-avoid-missing-LOCK_EX-declaration.patch9
-rw-r--r--meta/recipes-core/systemd/systemd_255.6.bb (renamed from meta/recipes-core/systemd/systemd_255.4.bb)14
-rw-r--r--meta/recipes-core/sysvinit/sysvinit-inittab_2.88dsf.bb7
-rw-r--r--meta/recipes-core/sysvinit/sysvinit_3.04.bb10
-rw-r--r--meta/recipes-core/udev/eudev_3.2.14.bb4
-rw-r--r--meta/recipes-core/udev/udev-extraconf_1.1.bb15
-rw-r--r--meta/recipes-core/util-linux/util-linux_2.39.3.bb8
-rw-r--r--meta/recipes-core/volatile-binds/volatile-binds.bb5
-rw-r--r--meta/recipes-devtools/apt/apt_2.6.1.bb2
-rw-r--r--meta/recipes-devtools/binutils/binutils-2.42.inc2
-rw-r--r--meta/recipes-devtools/bootchart2/bootchart2_0.14.9.bb2
-rw-r--r--meta/recipes-devtools/btrfs-tools/btrfs-tools_6.8.1.bb (renamed from meta/recipes-devtools/btrfs-tools/btrfs-tools_6.8.bb)2
-rw-r--r--meta/recipes-devtools/cdrtools/cdrtools-native_3.01.bb14
-rw-r--r--meta/recipes-devtools/cdrtools/cdrtools/gcc14-fix.patch13
-rw-r--r--meta/recipes-devtools/cmake/cmake-native_3.28.3.bb4
-rw-r--r--meta/recipes-devtools/cmake/cmake_3.28.3.bb8
-rw-r--r--meta/recipes-devtools/createrepo-c/createrepo-c_1.1.1.bb (renamed from meta/recipes-devtools/createrepo-c/createrepo-c_1.1.0.bb)2
-rw-r--r--meta/recipes-devtools/devel-config/distcc-config.bb3
-rw-r--r--meta/recipes-devtools/devel-config/nfs-export-root.bb4
-rw-r--r--meta/recipes-devtools/distcc/distcc_3.4.bb6
-rw-r--r--meta/recipes-devtools/dmidecode/dmidecode_3.6.bb (renamed from meta/recipes-devtools/dmidecode/dmidecode_3.5.bb)2
-rw-r--r--meta/recipes-devtools/dnf/dnf_4.20.0.bb (renamed from meta/recipes-devtools/dnf/dnf_4.19.2.bb)2
-rw-r--r--meta/recipes-devtools/docbook-xml/docbook-xml-dtd4_4.5.bb5
-rw-r--r--meta/recipes-devtools/dwarfsrcfiles/dwarfsrcfiles.bb9
-rw-r--r--meta/recipes-devtools/elfutils/elfutils_0.191.bb1
-rw-r--r--meta/recipes-devtools/elfutils/files/0006-Fix-build-on-aarch64-musl.patch58
-rw-r--r--meta/recipes-devtools/expect/expect_5.45.4.bb4
-rw-r--r--meta/recipes-devtools/gcc/gcc-14.1.inc (renamed from meta/recipes-devtools/gcc/gcc-13.2.inc)16
-rw-r--r--meta/recipes-devtools/gcc/gcc-cross-canadian_14.1.bb (renamed from meta/recipes-devtools/gcc/gcc-cross-canadian_13.2.bb)0
-rw-r--r--meta/recipes-devtools/gcc/gcc-cross_14.1.bb (renamed from meta/recipes-devtools/gcc/gcc-cross_13.2.bb)0
-rw-r--r--meta/recipes-devtools/gcc/gcc-crosssdk_14.1.bb (renamed from meta/recipes-devtools/gcc/gcc-crosssdk_13.2.bb)0
-rw-r--r--meta/recipes-devtools/gcc/gcc-runtime.inc2
-rw-r--r--meta/recipes-devtools/gcc/gcc-runtime_14.1.bb (renamed from meta/recipes-devtools/gcc/gcc-runtime_13.2.bb)0
-rw-r--r--meta/recipes-devtools/gcc/gcc-sanitizers_14.1.bb (renamed from meta/recipes-devtools/gcc/gcc-sanitizers_13.2.bb)0
-rw-r--r--meta/recipes-devtools/gcc/gcc-source_14.1.bb (renamed from meta/recipes-devtools/gcc/gcc-source_13.2.bb)0
-rw-r--r--meta/recipes-devtools/gcc/gcc/0001-gcc-4.3.1-ARCH_FLAGS_FOR_TARGET.patch10
-rw-r--r--meta/recipes-devtools/gcc/gcc/0002-gcc-poison-system-directories.patch42
-rw-r--r--meta/recipes-devtools/gcc/gcc/0003-64-bit-multilib-hack.patch75
-rw-r--r--meta/recipes-devtools/gcc/gcc/0004-Pass-CXXFLAGS_FOR_BUILD-in-a-couple-of-places-to-avo.patch14
-rw-r--r--meta/recipes-devtools/gcc/gcc/0005-Use-the-defaults.h-in-B-instead-of-S-and-t-oe-in-B.patch16
-rw-r--r--meta/recipes-devtools/gcc/gcc/0006-cpp-honor-sysroot.patch10
-rw-r--r--meta/recipes-devtools/gcc/gcc/0007-Define-GLIBC_DYNAMIC_LINKER-and-UCLIBC_DYNAMIC_LINKE.patch50
-rw-r--r--meta/recipes-devtools/gcc/gcc/0008-libtool.patch2
-rw-r--r--meta/recipes-devtools/gcc/gcc/0009-gcc-armv4-pass-fix-v4bx-to-linker-to-support-EABI.patch4
-rw-r--r--meta/recipes-devtools/gcc/gcc/0010-Use-the-multilib-config-files-from-B-instead-of-usin.patch14
-rw-r--r--meta/recipes-devtools/gcc/gcc/0011-aarch64-Fix-include-paths-when-S-B.patch30
-rw-r--r--meta/recipes-devtools/gcc/gcc/0012-Avoid-using-libdir-from-.la-which-usually-points-to-.patch2
-rw-r--r--meta/recipes-devtools/gcc/gcc/0013-Ensure-target-gcc-headers-can-be-included.patch14
-rw-r--r--meta/recipes-devtools/gcc/gcc/0014-Don-t-search-host-directory-during-relink-if-inst_pr.patch2
-rw-r--r--meta/recipes-devtools/gcc/gcc/0015-libcc1-fix-libcc1-s-install-path-and-rpath.patch4
-rw-r--r--meta/recipes-devtools/gcc/gcc/0016-handle-sysroot-support-for-nativesdk-gcc.patch30
-rw-r--r--meta/recipes-devtools/gcc/gcc/0017-Search-target-sysroot-gcc-version-specific-dirs-with.patch8
-rw-r--r--meta/recipes-devtools/gcc/gcc/0018-Add-ssp_nonshared-to-link-commandline-for-musl-targe.patch12
-rw-r--r--meta/recipes-devtools/gcc/gcc/0019-Re-introduce-spe-commandline-options.patch4
-rw-r--r--meta/recipes-devtools/gcc/gcc/0020-libgcc_s-Use-alias-for-__cpu_indicator_init-instead-.patch8
-rw-r--r--meta/recipes-devtools/gcc/gcc/0021-gentypes-genmodes-Do-not-use-__LINE__-for-maintainin.patch8
-rw-r--r--meta/recipes-devtools/gcc/gcc/0022-libatomic-Do-not-enforce-march-on-aarch64.patch16
-rw-r--r--meta/recipes-devtools/gcc/gcc/0023-Fix-install-path-of-linux64.h.patch8
-rw-r--r--meta/recipes-devtools/gcc/gcc/0024-Avoid-hardcoded-build-paths-into-ppc-libgcc.patch2
-rw-r--r--meta/recipes-devtools/gcc/gcc/0025-gcc-testsuite-tweaks-for-mips-OE.patch56
-rw-r--r--meta/recipes-devtools/gcc/gcc/0026-aarch64-Fix-loose-ldpstp-check-PR111411.patch117
-rw-r--r--meta/recipes-devtools/gcc/gcc/0027-Fix-gcc-vect-module-testcases.patch26
-rw-r--r--meta/recipes-devtools/gcc/gcc/CVE-2023-4039.patch3093
-rw-r--r--meta/recipes-devtools/gcc/gcc_14.1.bb (renamed from meta/recipes-devtools/gcc/gcc_13.2.bb)0
-rw-r--r--meta/recipes-devtools/gcc/libgcc-initial_14.1.bb (renamed from meta/recipes-devtools/gcc/libgcc-initial_13.2.bb)0
-rw-r--r--meta/recipes-devtools/gcc/libgcc_14.1.bb (renamed from meta/recipes-devtools/gcc/libgcc_13.2.bb)0
-rw-r--r--meta/recipes-devtools/gcc/libgfortran_14.1.bb (renamed from meta/recipes-devtools/gcc/libgfortran_13.2.bb)0
-rw-r--r--meta/recipes-devtools/gdb/gdb.inc1
-rw-r--r--meta/recipes-devtools/gdb/gdb/0006-resolve-restrict-keyword-conflict.patch45
-rw-r--r--meta/recipes-devtools/git/git_2.44.1.bb (renamed from meta/recipes-devtools/git/git_2.44.0.bb)3
-rw-r--r--meta/recipes-devtools/gnu-config/gnu-config_git.bb2
-rw-r--r--meta/recipes-devtools/go/go-1.22.3.inc (renamed from meta/recipes-devtools/go/go-1.22.2.inc)2
-rw-r--r--meta/recipes-devtools/go/go-binary-native_1.22.3.bb (renamed from meta/recipes-devtools/go/go-binary-native_1.22.2.bb)6
-rw-r--r--meta/recipes-devtools/go/go-cross-canadian_1.22.3.bb (renamed from meta/recipes-devtools/go/go-cross-canadian_1.22.2.bb)0
-rw-r--r--meta/recipes-devtools/go/go-cross_1.22.3.bb (renamed from meta/recipes-devtools/go/go-cross_1.22.2.bb)0
-rw-r--r--meta/recipes-devtools/go/go-crosssdk_1.22.3.bb (renamed from meta/recipes-devtools/go/go-crosssdk_1.22.2.bb)0
-rw-r--r--meta/recipes-devtools/go/go-native_1.22.3.bb (renamed from meta/recipes-devtools/go/go-native_1.22.2.bb)0
-rw-r--r--meta/recipes-devtools/go/go-runtime_1.22.3.bb (renamed from meta/recipes-devtools/go/go-runtime_1.22.2.bb)0
-rw-r--r--meta/recipes-devtools/go/go_1.22.3.bb (renamed from meta/recipes-devtools/go/go_1.22.2.bb)0
-rw-r--r--meta/recipes-devtools/icecc-create-env/icecc-create-env_0.1.bb5
-rw-r--r--meta/recipes-devtools/icecc-toolchain/nativesdk-icecc-toolchain_0.1.bb6
-rw-r--r--meta/recipes-devtools/libedit/libedit_20240517-3.1.bb (renamed from meta/recipes-devtools/libedit/libedit_20230828-3.1.bb)2
-rw-r--r--meta/recipes-devtools/llvm/llvm_18.1.6.bb (renamed from meta/recipes-devtools/llvm/llvm_git.bb)15
-rw-r--r--meta/recipes-devtools/lua/lua_5.4.6.bb6
-rw-r--r--meta/recipes-devtools/makedevs/makedevs_1.0.1.bb3
-rw-r--r--meta/recipes-devtools/meson/meson_1.3.1.bb12
-rw-r--r--meta/recipes-devtools/mmc/mmc-utils_git.bb6
-rw-r--r--meta/recipes-devtools/ninja/ninja_1.12.1.bb (renamed from meta/recipes-devtools/ninja/ninja_1.12.0.bb)2
-rw-r--r--meta/recipes-devtools/opkg/opkg-arch-config_1.0.bb3
-rw-r--r--meta/recipes-devtools/opkg/opkg_0.6.3.bb2
-rw-r--r--meta/recipes-devtools/perl-cross/perlcross_1.5.2.bb2
-rw-r--r--meta/recipes-devtools/perl/files/determinism.patch6
-rw-r--r--meta/recipes-devtools/perl/perl_5.38.2.bb2
-rw-r--r--meta/recipes-devtools/pkgconf/pkgconf_2.2.0.bb6
-rw-r--r--meta/recipes-devtools/pkgconfig/pkgconfig_git.bb4
-rw-r--r--meta/recipes-devtools/pseudo/pseudo.inc4
-rw-r--r--meta/recipes-devtools/pseudo/pseudo_git.bb2
-rw-r--r--meta/recipes-devtools/python/python3-bcrypt-crates.inc126
-rw-r--r--meta/recipes-devtools/python/python3-bcrypt/0001-Bump-pyo3-from-0.20.0-to-0.20.3-in-src-_bcrypt-746.patch111
-rw-r--r--meta/recipes-devtools/python/python3-bcrypt_4.1.3.bb (renamed from meta/recipes-devtools/python/python3-bcrypt_4.1.2.bb)4
-rw-r--r--meta/recipes-devtools/python/python3-cryptography-crates.inc8
-rw-r--r--meta/recipes-devtools/python/python3-cryptography-vectors_42.0.7.bb (renamed from meta/recipes-devtools/python/python3-cryptography-vectors_42.0.5.bb)2
-rw-r--r--meta/recipes-devtools/python/python3-cryptography/0001-pyproject.toml-remove-benchmark-disable-option.patch7
-rw-r--r--meta/recipes-devtools/python/python3-cryptography_42.0.7.bb (renamed from meta/recipes-devtools/python/python3-cryptography_42.0.5.bb)4
-rw-r--r--meta/recipes-devtools/python/python3-hatchling_1.24.2.bb (renamed from meta/recipes-devtools/python/python3-hatchling_1.24.1.bb)2
-rw-r--r--meta/recipes-devtools/python/python3-hypothesis_6.102.4.bb (renamed from meta/recipes-devtools/python/python3-hypothesis_6.100.1.bb)6
-rw-r--r--meta/recipes-devtools/python/python3-jsonschema_4.22.0.bb (renamed from meta/recipes-devtools/python/python3-jsonschema_4.21.1.bb)2
-rw-r--r--meta/recipes-devtools/python/python3-lxml_5.2.2.bb (renamed from meta/recipes-devtools/python/python3-lxml_5.2.1.bb)2
-rw-r--r--meta/recipes-devtools/python/python3-mako_1.3.5.bb (renamed from meta/recipes-devtools/python/python3-mako_1.3.3.bb)2
-rw-r--r--meta/recipes-devtools/python/python3-maturin-crates.inc474
-rw-r--r--meta/recipes-devtools/python/python3-maturin/0001-Add-32-bit-RISC-V-support.patch102
-rw-r--r--meta/recipes-devtools/python/python3-maturin_1.5.1.bb (renamed from meta/recipes-devtools/python/python3-maturin_1.4.0.bb)3
-rw-r--r--meta/recipes-devtools/python/python3-pycparser_2.22.bb4
-rw-r--r--meta/recipes-devtools/python/python3-pygments_2.18.0.bb (renamed from meta/recipes-devtools/python/python3-pygments_2.17.2.bb)2
-rw-r--r--meta/recipes-devtools/python/python3-pyopenssl_24.1.0.bb1
-rw-r--r--meta/recipes-devtools/python/python3-pyproject-hooks_1.0.0.bb2
-rw-r--r--meta/recipes-devtools/python/python3-pyproject-metadata_0.8.0.bb (renamed from meta/recipes-devtools/python/python3-pyproject-metadata_0.7.1.bb)4
-rw-r--r--meta/recipes-devtools/python/python3-pytest_8.2.1.bb (renamed from meta/recipes-devtools/python/python3-pytest_8.1.1.bb)2
-rw-r--r--meta/recipes-devtools/python/python3-pyyaml_6.0.1.bb2
-rw-r--r--meta/recipes-devtools/python/python3-referencing_0.35.1.bb (renamed from meta/recipes-devtools/python/python3-referencing_0.34.0.bb)2
-rw-r--r--meta/recipes-devtools/python/python3-requests_2.32.1.bb (renamed from meta/recipes-devtools/python/python3-requests_2.31.0.bb)10
-rw-r--r--meta/recipes-devtools/python/python3-rpds-py-crates.inc26
-rw-r--r--meta/recipes-devtools/python/python3-rpds-py/run-ptest3
-rw-r--r--meta/recipes-devtools/python/python3-rpds-py_0.18.0.bb15
-rw-r--r--meta/recipes-devtools/python/python3-rpds-py_0.18.1.bb30
-rw-r--r--meta/recipes-devtools/python/python3-setuptools-scm_8.1.0.bb (renamed from meta/recipes-devtools/python/python3-setuptools-scm_8.0.4.bb)4
-rw-r--r--meta/recipes-devtools/python/python3-sphinx_7.3.7.bb (renamed from meta/recipes-devtools/python/python3-sphinx_7.2.6.bb)4
-rw-r--r--meta/recipes-devtools/python/python3-trove-classifiers_2024.5.17.bb (renamed from meta/recipes-devtools/python/python3-trove-classifiers_2024.4.10.bb)4
-rw-r--r--meta/recipes-devtools/python/python3-zipp_3.18.2.bb (renamed from meta/recipes-devtools/python/python3-zipp_3.18.1.bb)2
-rw-r--r--meta/recipes-devtools/python/python3/0001-gh-107811-tarfile-treat-overflow-in-UID-GID-as-failu.patch40
-rw-r--r--meta/recipes-devtools/python/python3/0001-test_shutdown-skip-problematic-test.patch46
-rw-r--r--meta/recipes-devtools/python/python3_3.12.3.bb9
-rw-r--r--meta/recipes-devtools/qemu/nativesdk-qemu-helper_1.0.bb7
-rw-r--r--meta/recipes-devtools/qemu/qemu-helper-native_1.0.bb5
-rw-r--r--meta/recipes-devtools/qemu/qemu-system-native_8.2.1.bb2
-rw-r--r--meta/recipes-devtools/qemu/qemu.inc4
-rw-r--r--meta/recipes-devtools/qemu/qemuwrapper-cross_1.0.bb3
-rw-r--r--meta/recipes-devtools/quilt/quilt.inc2
-rw-r--r--meta/recipes-devtools/repo/repo_2.45.bb2
-rw-r--r--meta/recipes-devtools/rsync/rsync_3.3.0.bb2
-rw-r--r--meta/recipes-devtools/run-postinsts/run-postinsts_1.0.bb9
-rw-r--r--meta/recipes-devtools/rust/cargo_1.75.0.bb2
-rw-r--r--meta/recipes-devtools/rust/files/cargo-path.patch37
-rw-r--r--meta/recipes-devtools/rust/rust-cross-canadian.inc5
-rw-r--r--meta/recipes-devtools/rust/rust-source.inc1
-rw-r--r--meta/recipes-devtools/rust/rust_1.75.0.bb8
-rw-r--r--meta/recipes-devtools/strace/strace_6.8.bb (renamed from meta/recipes-devtools/strace/strace_6.7.bb)8
-rw-r--r--meta/recipes-devtools/systemd-bootchart/systemd-bootchart/0001-Define-portable-basename-function.patch59
-rw-r--r--meta/recipes-devtools/systemd-bootchart/systemd-bootchart_235.bb1
-rw-r--r--meta/recipes-devtools/tcf-agent/tcf-agent_git.bb4
-rw-r--r--meta/recipes-devtools/valgrind/valgrind/0001-Return-a-valid-exit_code-from-vg_regtest.patch7
-rw-r--r--meta/recipes-devtools/valgrind/valgrind/0001-configure-Drop-setting-mcpu-cortex-a8-on-arm.patch40
-rw-r--r--meta/recipes-devtools/valgrind/valgrind/0001-docs-Disable-manual-validation.patch7
-rw-r--r--meta/recipes-devtools/valgrind/valgrind/0001-makefiles-Drop-setting-mcpu-to-cortex-a8-on-arm-arch.patch40
-rw-r--r--meta/recipes-devtools/valgrind/valgrind/0001-memcheck-tests-Fix-timerfd-syscall-test.patch16
-rw-r--r--meta/recipes-devtools/valgrind/valgrind/0001-tests-arm-Use-O-instead-of-O0.patch34
-rw-r--r--meta/recipes-devtools/valgrind/valgrind/0001-valgrind-monitor.py-regular-expressions-should-use-r.patch64
-rw-r--r--meta/recipes-devtools/valgrind/valgrind/0002-Bug-476548-valgrind-3.22.0-fails-on-assertion-when-l.patch147
-rw-r--r--meta/recipes-devtools/valgrind/valgrind/0003-Add-fchmodat2-syscall-on-linux.patch221
-rw-r--r--meta/recipes-devtools/valgrind/valgrind/0004-Bug-478624-Valgrind-incompatibility-with-binutils-2..patch137
-rw-r--r--meta/recipes-devtools/valgrind/valgrind/Added-support-for-PPC-instructions-mfatbu-mfatbl.patch14
-rw-r--r--meta/recipes-devtools/valgrind/valgrind/s390x_vec_op_t.patch9
-rw-r--r--meta/recipes-devtools/valgrind/valgrind/use-appropriate-march-mcpu-mfpu-for-ARM-test-apps.patch7
-rw-r--r--meta/recipes-devtools/valgrind/valgrind/valgrind-make-ld-XXX.so-strlen-intercept-optional.patch7
-rw-r--r--meta/recipes-devtools/valgrind/valgrind_3.23.0.bb (renamed from meta/recipes-devtools/valgrind/valgrind_3.22.0.bb)14
-rw-r--r--meta/recipes-extended/at/at_3.2.5.bb8
-rw-r--r--meta/recipes-extended/bash/bash.inc2
-rw-r--r--meta/recipes-extended/bc/bc_1.07.1.bb2
-rw-r--r--meta/recipes-extended/bzip2/bzip2_1.0.8.bb24
-rw-r--r--meta/recipes-extended/cpio/cpio_2.15.bb3
-rw-r--r--meta/recipes-extended/cracklib/cracklib/0001-packlib.c-support-dictionary-byte-order-dependent.patch2
-rw-r--r--meta/recipes-extended/cronie/cronie_1.7.2.bb6
-rw-r--r--meta/recipes-extended/cups/cups.inc4
-rw-r--r--meta/recipes-extended/cups/cups_2.4.8.bb (renamed from meta/recipes-extended/cups/cups_2.4.7.bb)2
-rw-r--r--meta/recipes-extended/ed/ed_1.20.2.bb (renamed from meta/recipes-extended/ed/ed_1.20.1.bb)2
-rw-r--r--meta/recipes-extended/gawk/gawk/0001-m4-readline-add-missing-includes.patch38
-rw-r--r--meta/recipes-extended/gawk/gawk_5.3.0.bb1
-rw-r--r--meta/recipes-extended/go-examples/go-helloworld_0.1.bb2
-rw-r--r--meta/recipes-extended/iptables/iptables/0001-configure-Add-option-to-enable-disable-libnfnetlink.patch44
-rw-r--r--meta/recipes-extended/iptables/iptables/0002-iptables-xshared.h-add-missing-sys.types.h-include.patch31
-rw-r--r--meta/recipes-extended/iptables/iptables/0004-configure.ac-only-check-conntrack-when-libnfnetlink-.patch49
-rw-r--r--meta/recipes-extended/iptables/iptables_1.8.10.bb12
-rw-r--r--meta/recipes-extended/libarchive/libarchive_3.7.4.bb (renamed from meta/recipes-extended/libarchive/libarchive_3.7.3.bb)2
-rw-r--r--meta/recipes-extended/libsolv/libsolv/0001-utils-Conside-musl-when-wrapping-qsort_r.patch5
-rw-r--r--meta/recipes-extended/libsolv/libsolv_0.7.29.bb (renamed from meta/recipes-extended/libsolv/libsolv_0.7.28.bb)2
-rw-r--r--meta/recipes-extended/lighttpd/lighttpd_1.4.76.bb6
-rw-r--r--meta/recipes-extended/ltp/ltp/0001-sched_stress-Use-time_t-instead-of-long-for-type.patch54
-rw-r--r--meta/recipes-extended/ltp/ltp_20240129.bb2
-rw-r--r--meta/recipes-extended/man-db/man-db_2.12.1.bb2
-rw-r--r--meta/recipes-extended/mdadm/mdadm_4.3.bb2
-rw-r--r--meta/recipes-extended/msmtp/msmtp_1.8.26.bb (renamed from meta/recipes-extended/msmtp/msmtp_1.8.25.bb)2
-rw-r--r--meta/recipes-extended/net-tools/net-tools_2.10.bb4
-rw-r--r--meta/recipes-extended/pam/libpam_1.6.1.bb6
-rw-r--r--meta/recipes-extended/procps/procps_4.0.4.bb2
-rw-r--r--meta/recipes-extended/rpcbind/rpcbind_1.2.6.bb4
-rw-r--r--meta/recipes-extended/screen/screen_4.9.1.bb2
-rw-r--r--meta/recipes-extended/shadow/files/0001-lib-copydir-copy_entry-use-temporary-stat-buffer.patch37
-rw-r--r--meta/recipes-extended/shadow/shadow-securetty_4.6.bb5
-rw-r--r--meta/recipes-extended/shadow/shadow-sysroot_4.6.bb3
-rw-r--r--meta/recipes-extended/shadow/shadow.inc11
-rw-r--r--meta/recipes-extended/shadow/shadow_4.15.1.bb (renamed from meta/recipes-extended/shadow/shadow_4.15.0.bb)0
-rw-r--r--meta/recipes-extended/stress-ng/stress-ng_0.17.08.bb (renamed from meta/recipes-extended/stress-ng/stress-ng_0.17.07.bb)2
-rw-r--r--meta/recipes-extended/sudo/sudo_1.9.15p5.bb2
-rw-r--r--meta/recipes-extended/sysklogd/sysklogd_2.5.2.bb2
-rw-r--r--meta/recipes-extended/sysstat/sysstat_12.7.5.bb4
-rw-r--r--meta/recipes-extended/tcp-wrappers/tcp-wrappers_7.6.bb4
-rw-r--r--meta/recipes-extended/texinfo-dummy-native/texinfo-dummy-native.bb3
-rw-r--r--meta/recipes-extended/watchdog/watchdog-config.bb7
-rw-r--r--meta/recipes-extended/watchdog/watchdog_5.16.bb4
-rw-r--r--meta/recipes-extended/xinetd/xinetd_2.3.15.4.bb6
-rw-r--r--meta/recipes-extended/zip/zip-3.0/0001-configure-Include-dirent.h-for-closedir-opendir-APIs.patch45
-rw-r--r--meta/recipes-extended/zip/zip-3.0/0002-unix.c-Do-not-redefine-DIR-as-FILE.patch35
-rw-r--r--meta/recipes-extended/zip/zip_3.0.bb2
-rw-r--r--meta/recipes-gnome/gdk-pixbuf/gdk-pixbuf/0001-meson.build-allow-a-subset-of-tests-in-cross-compile.patch8
-rw-r--r--meta/recipes-gnome/gdk-pixbuf/gdk-pixbuf/fatal-loader.patch2
-rw-r--r--meta/recipes-gnome/gdk-pixbuf/gdk-pixbuf_2.42.12.bb (renamed from meta/recipes-gnome/gdk-pixbuf/gdk-pixbuf_2.42.11.bb)2
-rw-r--r--meta/recipes-gnome/gobject-introspection/gobject-introspection/0001-Relocate-the-repository-directory-for-native-builds.patch11
-rw-r--r--meta/recipes-gnome/gobject-introspection/gobject-introspection_1.80.1.bb (renamed from meta/recipes-gnome/gobject-introspection/gobject-introspection_1.78.1.bb)8
-rw-r--r--meta/recipes-gnome/gtk+/gtk+3_3.24.42.bb (renamed from meta/recipes-gnome/gtk+/gtk+3_3.24.41.bb)4
-rw-r--r--meta/recipes-gnome/gtk+/gtk4_4.14.4.bb (renamed from meta/recipes-gnome/gtk+/gtk4_4.14.2.bb)6
-rw-r--r--meta/recipes-gnome/libportal/files/0001-meson.build-fix-build-race-when-building-GTK-vapi-fi.patch49
-rw-r--r--meta/recipes-gnome/libportal/libportal_0.7.1.bb3
-rw-r--r--meta/recipes-gnome/libxmlb/libxmlb_0.3.19.bb (renamed from meta/recipes-gnome/libxmlb/libxmlb_0.3.18.bb)2
-rw-r--r--meta/recipes-graphics/builder/builder_0.1.bb3
-rw-r--r--meta/recipes-graphics/glslang/glslang_1.3.283.0.bb (renamed from meta/recipes-graphics/glslang/glslang_1.3.280.0.bb)4
-rw-r--r--meta/recipes-graphics/harfbuzz/harfbuzz_8.5.0.bb (renamed from meta/recipes-graphics/harfbuzz/harfbuzz_8.3.1.bb)2
-rw-r--r--meta/recipes-graphics/libsdl2/libsdl2_2.30.3.bb (renamed from meta/recipes-graphics/libsdl2/libsdl2_2.30.2.bb)2
-rw-r--r--meta/recipes-graphics/matchbox-session/matchbox-session_0.1.bb4
-rw-r--r--meta/recipes-graphics/matchbox-wm/matchbox-wm_1.2.3.bb2
-rw-r--r--meta/recipes-graphics/mesa/files/0001-meson.build-check-for-all-linux-host_os-combinations.patch42
-rw-r--r--meta/recipes-graphics/mesa/mesa-gl_24.0.7.bb (renamed from meta/recipes-graphics/mesa/mesa-gl_24.0.3.bb)0
-rw-r--r--meta/recipes-graphics/mesa/mesa.inc3
-rw-r--r--meta/recipes-graphics/mesa/mesa_24.0.7.bb (renamed from meta/recipes-graphics/mesa/mesa_24.0.3.bb)0
-rw-r--r--meta/recipes-graphics/mini-x-session/mini-x-session_0.1.bb4
-rw-r--r--meta/recipes-graphics/pong-clock/pong-clock_1.0.bb3
-rw-r--r--meta/recipes-graphics/shaderc/shaderc_2024.1.bb (renamed from meta/recipes-graphics/shaderc/shaderc_2024.0.bb)2
-rw-r--r--meta/recipes-graphics/spir/spirv-headers_1.3.283.0.bb (renamed from meta/recipes-graphics/spir/spirv-headers_1.3.280.0.bb)4
-rw-r--r--meta/recipes-graphics/spir/spirv-tools_1.3.283.0.bb (renamed from meta/recipes-graphics/spir/spirv-tools_1.3.280.0.bb)4
-rw-r--r--meta/recipes-graphics/ttf-fonts/liberation-fonts_2.1.5.bb2
-rw-r--r--meta/recipes-graphics/vulkan/vulkan-headers_1.3.283.0.bb (renamed from meta/recipes-graphics/vulkan/vulkan-headers_1.3.280.0.bb)4
-rw-r--r--meta/recipes-graphics/vulkan/vulkan-loader_1.3.283.0.bb (renamed from meta/recipes-graphics/vulkan/vulkan-loader_1.3.280.0.bb)6
-rw-r--r--meta/recipes-graphics/vulkan/vulkan-tools_1.3.283.0.bb (renamed from meta/recipes-graphics/vulkan/vulkan-tools_1.3.280.0.bb)6
-rw-r--r--meta/recipes-graphics/vulkan/vulkan-utility-libraries_1.3.283.0.bb (renamed from meta/recipes-graphics/vulkan/vulkan-utility-libraries_1.3.280.0.bb)4
-rw-r--r--meta/recipes-graphics/vulkan/vulkan-validation-layers_1.3.283.0.bb (renamed from meta/recipes-graphics/vulkan/vulkan-validation-layers_1.3.280.0.bb)6
-rw-r--r--meta/recipes-graphics/vulkan/vulkan-volk_1.3.283.0.bb (renamed from meta/recipes-graphics/vulkan/vulkan-volk_1.3.280.0.bb)4
-rw-r--r--meta/recipes-graphics/wayland/libinput_1.25.0.bb2
-rw-r--r--meta/recipes-graphics/wayland/wayland-protocols_1.36.bb (renamed from meta/recipes-graphics/wayland/wayland-protocols_1.35.bb)3
-rw-r--r--meta/recipes-graphics/wayland/wayland-utils_1.2.0.bb1
-rw-r--r--meta/recipes-graphics/wayland/wayland_1.22.0.bb2
-rw-r--r--meta/recipes-graphics/wayland/weston-init.bb19
-rw-r--r--meta/recipes-graphics/wayland/weston_13.0.0.bb10
-rw-r--r--meta/recipes-graphics/x11-common/xserver-nodm-init_3.0.bb5
-rw-r--r--meta/recipes-graphics/xinput-calibrator/pointercal-xinput_0.0.bb4
-rw-r--r--meta/recipes-graphics/xinput-calibrator/xinput-calibrator_git.bb2
-rw-r--r--meta/recipes-graphics/xorg-xserver/xserver-xf86-config_0.1.bb7
-rw-r--r--meta/recipes-graphics/xorg-xserver/xserver-xorg_21.1.12.bb (renamed from meta/recipes-graphics/xorg-xserver/xserver-xorg_21.1.11.bb)2
-rw-r--r--meta/recipes-graphics/xwayland/xwayland_24.1.0.bb (renamed from meta/recipes-graphics/xwayland/xwayland_23.2.6.bb)2
-rw-r--r--meta/recipes-kernel/dtc/python3-dtschema-wrapper_2021.10.bb9
-rw-r--r--meta/recipes-kernel/kexec/kexec-tools/0001-x86-linux-setup.c-Use-POSIX-basename-API.patch54
-rw-r--r--meta/recipes-kernel/kexec/kexec-tools/0003-kexec-ARM-Fix-add_buffer_phys_virt-align-issue.patch2
-rw-r--r--meta/recipes-kernel/kexec/kexec-tools_2.0.28.bb9
-rw-r--r--meta/recipes-kernel/kmod/depmodwrapper-cross_1.0.bb3
-rw-r--r--meta/recipes-kernel/kmod/kmod_31.bb2
-rw-r--r--meta/recipes-kernel/linux-firmware/linux-firmware_20240312.bb11
-rw-r--r--meta/recipes-kernel/linux/cve-exclusion_6.6.inc1300
-rw-r--r--meta/recipes-kernel/linux/linux-dummy.bb4
-rw-r--r--meta/recipes-kernel/linux/linux-yocto-rt_6.6.bb6
-rw-r--r--meta/recipes-kernel/linux/linux-yocto-tiny_6.6.bb6
-rw-r--r--meta/recipes-kernel/linux/linux-yocto_6.6.bb30
-rw-r--r--meta/recipes-kernel/lttng/lttng-tools_2.13.13.bb2
-rw-r--r--meta/recipes-kernel/make-mod-scripts/make-mod-scripts_1.0.bb3
-rw-r--r--meta/recipes-kernel/modutils-initscripts/modutils-initscripts.bb6
-rw-r--r--meta/recipes-kernel/systemtap/systemtap/0001-Makefile.am-remove-runtime-linux-uprobes-and-runtime.patch40
-rw-r--r--meta/recipes-kernel/systemtap/systemtap/0001-bpf-translate.cxx-fix-build-against-upcoming-gcc-14-.patch40
-rw-r--r--meta/recipes-kernel/systemtap/systemtap/0001-configure.ac-fix-broken-libdebuginfod-library-auto-d.patch51
-rw-r--r--meta/recipes-kernel/systemtap/systemtap/0001-prerelease-datestamp-fixes.patch23
-rw-r--r--meta/recipes-kernel/systemtap/systemtap/0001-staprun-fix-build-against-upcoming-gcc-14-Werror-cal.patch36
-rw-r--r--meta/recipes-kernel/systemtap/systemtap_git.inc9
-rw-r--r--meta/recipes-kernel/wireless-regdb/wireless-regdb_2024.05.08.bb (renamed from meta/recipes-kernel/wireless-regdb/wireless-regdb_2024.01.23.bb)2
-rw-r--r--meta/recipes-multimedia/ffmpeg/ffmpeg/av1_ordering_info.patch91
-rw-r--r--meta/recipes-multimedia/ffmpeg/ffmpeg/vulkan_av1_stable_API.patch1382
-rw-r--r--meta/recipes-multimedia/ffmpeg/ffmpeg_6.1.1.bb6
-rw-r--r--meta/recipes-multimedia/gstreamer/gst-examples_1.18.6.bb2
-rw-r--r--meta/recipes-multimedia/gstreamer/gstreamer1.0-plugins-bad_1.22.11.bb2
-rwxr-xr-xmeta/recipes-multimedia/gstreamer/gstreamer1.0/run-ptest9
-rw-r--r--meta/recipes-multimedia/libvorbis/libvorbis/0001-configure-Check-for-clang.patch2
-rw-r--r--meta/recipes-multimedia/pulseaudio/pulseaudio.inc2
-rw-r--r--meta/recipes-multimedia/x264/x264/Fix-X32-build-by-disabling-asm.patch51
-rw-r--r--meta/recipes-multimedia/x264/x264/don-t-default-to-cortex-a9-with-neon.patch33
-rw-r--r--meta/recipes-multimedia/x264/x264_git.bb9
-rw-r--r--meta/recipes-rt/rt-tests/rt-tests_git.bb2
-rw-r--r--meta/recipes-sato/matchbox-desktop/matchbox-desktop_2.3.bb2
-rw-r--r--meta/recipes-sato/matchbox-keyboard/matchbox-keyboard_0.1.1.bb2
-rw-r--r--meta/recipes-sato/matchbox-sato/matchbox-session-sato_0.1.bb4
-rw-r--r--meta/recipes-sato/pcmanfm/pcmanfm_1.3.2.bb4
-rw-r--r--meta/recipes-sato/pulseaudio-sato/pulseaudio-client-conf-sato_1.bb4
-rw-r--r--meta/recipes-sato/rxvt-unicode/rxvt-unicode.inc4
-rw-r--r--meta/recipes-sato/settings-daemon/settings-daemon_0.0.2.bb2
-rw-r--r--meta/recipes-sato/shutdown-desktop/shutdown-desktop.bb3
-rw-r--r--meta/recipes-support/appstream/appstream_1.0.3.bb (renamed from meta/recipes-support/appstream/appstream_1.0.2.bb)2
-rw-r--r--meta/recipes-support/bash-completion/bash-completion_2.14.0.bb (renamed from meta/recipes-support/bash-completion/bash-completion_2.13.0.bb)2
-rw-r--r--meta/recipes-support/consolekit/consolekit_0.4.6.bb3
-rw-r--r--meta/recipes-support/curl/curl/run-ptest4
-rw-r--r--meta/recipes-support/curl/curl_8.7.1.bb4
-rw-r--r--meta/recipes-support/diffoscope/diffoscope_267.bb (renamed from meta/recipes-support/diffoscope/diffoscope_265.bb)2
-rw-r--r--meta/recipes-support/enchant/enchant2_2.7.3.bb (renamed from meta/recipes-support/enchant/enchant2_2.6.9.bb)2
-rw-r--r--meta/recipes-support/fribidi/fribidi_1.0.14.bb (renamed from meta/recipes-support/fribidi/fribidi_1.0.13.bb)2
-rw-r--r--meta/recipes-support/libcap-ng/files/0001-Fix-python-path-when-invoking-py-compile-54.patch34
-rw-r--r--meta/recipes-support/libcap-ng/files/fix-issues-with-swig-4-2.patch32
-rw-r--r--meta/recipes-support/libcap-ng/libcap-ng-python_0.8.5.bb (renamed from meta/recipes-support/libcap-ng/libcap-ng-python_0.8.4.bb)0
-rw-r--r--meta/recipes-support/libcap-ng/libcap-ng.inc4
-rw-r--r--meta/recipes-support/libcap-ng/libcap-ng_0.8.5.bb (renamed from meta/recipes-support/libcap-ng/libcap-ng_0.8.4.bb)0
-rw-r--r--meta/recipes-support/libfm/libfm_1.3.2.bb4
-rw-r--r--meta/recipes-support/libgpg-error/libgpg-error_1.49.bb (renamed from meta/recipes-support/libgpg-error/libgpg-error_1.48.bb)2
-rw-r--r--meta/recipes-support/libical/libical_3.0.18.bb3
-rw-r--r--meta/recipes-support/libpcre/libpcre_8.45.bb2
-rw-r--r--meta/recipes-support/libproxy/libproxy_0.5.6.bb (renamed from meta/recipes-support/libproxy/libproxy_0.5.4.bb)2
-rw-r--r--meta/recipes-support/libunwind/libunwind_1.6.2.bb8
-rw-r--r--meta/recipes-support/libusb/libusb1_1.0.27.bb2
-rw-r--r--meta/recipes-support/lzop/lzop_1.04.bb2
-rw-r--r--meta/recipes-support/nghttp2/nghttp2_1.62.0.bb (renamed from meta/recipes-support/nghttp2/nghttp2_1.61.0.bb)2
-rw-r--r--meta/recipes-support/numactl/numactl_git.bb2
-rw-r--r--meta/recipes-support/p11-kit/p11-kit_0.25.3.bb10
-rw-r--r--meta/recipes-support/ptest-runner/ptest-runner_2.4.4.bb (renamed from meta/recipes-support/ptest-runner/ptest-runner_2.4.3.bb)2
-rw-r--r--meta/recipes-support/rng-tools/rng-tools_6.16.bb10
-rw-r--r--meta/recipes-support/sqlite/sqlite3_3.45.3.bb (renamed from meta/recipes-support/sqlite/sqlite3_3.45.1.bb)2
-rw-r--r--meta/recipes-support/user-creation/xuser-account_0.1.bb5
548 files changed, 5855 insertions, 10146 deletions
diff --git a/meta/classes-global/base.bbclass b/meta/classes-global/base.bbclass
index 0999b42daa..b6940bbb6f 100644
--- a/meta/classes-global/base.bbclass
+++ b/meta/classes-global/base.bbclass
@@ -153,20 +153,38 @@ python base_do_fetch() {
}
addtask unpack after do_fetch
-do_unpack[dirs] = "${WORKDIR}"
-
-do_unpack[cleandirs] = "${@d.getVar('S') if os.path.normpath(d.getVar('S')) != os.path.normpath(d.getVar('WORKDIR')) else os.path.join('${S}', 'patches')}"
+do_unpack[cleandirs] = "${UNPACKDIR}"
python base_do_unpack() {
+ import shutil
+
+ sourcedir = d.getVar('S')
+ # Intentionally keep SOURCE_BASEDIR internal to the task just for SDE
+ d.setVar("SOURCE_BASEDIR", sourcedir)
+
src_uri = (d.getVar('SRC_URI') or "").split()
if not src_uri:
return
+ basedir = None
+ unpackdir = d.getVar('UNPACKDIR')
+ workdir = d.getVar('WORKDIR')
+ if sourcedir.startswith(workdir) and not sourcedir.startswith(unpackdir):
+ basedir = sourcedir.replace(workdir, '').strip("/").split('/')[0]
+ if basedir:
+ bb.utils.remove(workdir + '/' + basedir, True)
+ d.setVar("SOURCE_BASEDIR", workdir + '/' + basedir)
+
try:
fetcher = bb.fetch2.Fetch(src_uri, d)
- fetcher.unpack(d.getVar('WORKDIR'))
+ fetcher.unpack(d.getVar('UNPACKDIR'))
except bb.fetch2.BBFetchException as e:
bb.fatal("Bitbake Fetcher Error: " + repr(e))
+
+ if basedir and os.path.exists(unpackdir + '/' + basedir):
+ # Compatibility magic to ensure ${WORKDIR}/git and ${WORKDIR}/${BP}
+ # as often used in S work as expected.
+ shutil.move(unpackdir + '/' + basedir, workdir + '/' + basedir)
}
SSTATETASKS += "do_deploy_source_date_epoch"
@@ -199,8 +217,8 @@ addtask do_deploy_source_date_epoch_setscene
addtask do_deploy_source_date_epoch before do_configure after do_patch
python create_source_date_epoch_stamp() {
- # Version: 1
- source_date_epoch = oe.reproducible.get_source_date_epoch(d, d.getVar('S'))
+ # Version: 2
+ source_date_epoch = oe.reproducible.get_source_date_epoch(d, d.getVar('SOURCE_BASEDIR') or d.getVar('S'))
oe.reproducible.epochfile_write(source_date_epoch, d.getVar('SDE_FILE'), d)
}
do_unpack[postfuncs] += "create_source_date_epoch_stamp"
@@ -410,16 +428,6 @@ python () {
oe.utils.features_backfill("DISTRO_FEATURES", d)
oe.utils.features_backfill("MACHINE_FEATURES", d)
- if d.getVar("S")[-1] == '/':
- bb.warn("Recipe %s sets S variable with trailing slash '%s', remove it" % (d.getVar("PN"), d.getVar("S")))
- if d.getVar("B")[-1] == '/':
- bb.warn("Recipe %s sets B variable with trailing slash '%s', remove it" % (d.getVar("PN"), d.getVar("B")))
-
- if os.path.normpath(d.getVar("WORKDIR")) != os.path.normpath(d.getVar("S")):
- d.appendVar("PSEUDO_IGNORE_PATHS", ",${S}")
- if os.path.normpath(d.getVar("WORKDIR")) != os.path.normpath(d.getVar("B")):
- d.appendVar("PSEUDO_IGNORE_PATHS", ",${B}")
-
# To add a recipe to the skip list , set:
# SKIP_RECIPE[pn] = "message"
pn = d.getVar('PN')
diff --git a/meta/classes-global/insane.bbclass b/meta/classes-global/insane.bbclass
index e963001d09..99736830b9 100644
--- a/meta/classes-global/insane.bbclass
+++ b/meta/classes-global/insane.bbclass
@@ -298,7 +298,7 @@ def package_qa_check_libdir(d):
try:
elf.open()
messages.append("%s: found library in wrong location: %s" % (package, rel_path))
- except (oe.qa.NotELFFileError):
+ except (oe.qa.NotELFFileError, FileNotFoundError):
pass
if exec_re.match(rel_path):
if libdir not in rel_path and libexecdir not in rel_path:
@@ -307,7 +307,7 @@ def package_qa_check_libdir(d):
try:
elf.open()
messages.append("%s: found library in wrong location: %s" % (package, rel_path))
- except (oe.qa.NotELFFileError):
+ except (oe.qa.NotELFFileError, FileNotFoundError):
pass
if messages:
@@ -1399,7 +1399,7 @@ python do_qa_patch() {
oe.qa.handle_error("unimplemented-ptest", "%s: autotools-based tests detected" % d.getVar('PN'), d)
# Last resort, detect a test directory in sources
- elif any(filename.lower() in ["test", "tests"] for filename in os.listdir(srcdir)):
+ elif os.path.exists(srcdir) and any(filename.lower() in ["test", "tests"] for filename in os.listdir(srcdir)):
oe.qa.handle_error("unimplemented-ptest", "%s: test subdirectory detected" % d.getVar('PN'), d)
oe.qa.exit_if_errors(d)
@@ -1602,6 +1602,18 @@ python () {
if prog.search(pn):
oe.qa.handle_error("uppercase-pn", 'PN: %s is upper case, this can result in unexpected behavior.' % pn, d)
+ sourcedir = d.getVar("S")
+ builddir = d.getVar("B")
+ workdir = d.getVar("WORKDIR")
+ if sourcedir == workdir:
+ bb.fatal("Using S = ${WORKDIR} is no longer supported")
+ if builddir == workdir:
+ bb.fatal("Using B = ${WORKDIR} is no longer supported")
+ if sourcedir[-1] == '/':
+ bb.warn("Recipe %s sets S variable with trailing slash '%s', remove it" % (d.getVar("PN"), d.getVar("S")))
+ if builddir[-1] == '/':
+ bb.warn("Recipe %s sets B variable with trailing slash '%s', remove it" % (d.getVar("PN"), d.getVar("B")))
+
# Some people mistakenly use DEPENDS:${PN} instead of DEPENDS and wonder
# why it doesn't work.
if (d.getVar(d.expand('DEPENDS:${PN}'))):
diff --git a/meta/classes-global/sstate.bbclass b/meta/classes-global/sstate.bbclass
index 04539bbb99..76a7b59636 100644
--- a/meta/classes-global/sstate.bbclass
+++ b/meta/classes-global/sstate.bbclass
@@ -1115,7 +1115,7 @@ def sstate_checkhashes(sq_data, d, siginfo=False, currentcount=0, summary=True,
bb.parse.siggen.checkhashes(sq_data, missed, found, d)
return found
-setscene_depvalid[vardepsexclude] = "SSTATE_EXCLUDEDEPS_SYSROOT"
+setscene_depvalid[vardepsexclude] = "SSTATE_EXCLUDEDEPS_SYSROOT _SSTATE_EXCLUDEDEPS_SYSROOT"
BB_SETSCENE_DEPVALID = "setscene_depvalid"
diff --git a/meta/classes-recipe/baremetal-image.bbclass b/meta/classes-recipe/baremetal-image.bbclass
index b9a584351a..4e7d413626 100644
--- a/meta/classes-recipe/baremetal-image.bbclass
+++ b/meta/classes-recipe/baremetal-image.bbclass
@@ -103,7 +103,7 @@ QB_OPT_APPEND:append:qemuriscv32 = " -bios none"
# since medlow can only access addresses below 0x80000000 and RAM
# starts at 0x80000000 on RISC-V 64
# Keep RISC-V 32 using -mcmodel=medlow (symbols lie between -2GB:2GB)
-CFLAGS:append:qemuriscv64 = " -mcmodel=medany"
+TARGET_CFLAGS:append:qemuriscv64 = " -mcmodel=medany"
## Emulate image.bbclass
diff --git a/meta/classes-recipe/cargo_common.bbclass b/meta/classes-recipe/cargo_common.bbclass
index 0fb443edbd..78440c810b 100644
--- a/meta/classes-recipe/cargo_common.bbclass
+++ b/meta/classes-recipe/cargo_common.bbclass
@@ -18,7 +18,7 @@
inherit rust-common
# Where we download our registry and dependencies to
-export CARGO_HOME = "${WORKDIR}/cargo_home"
+export CARGO_HOME = "${UNPACKDIR}/cargo_home"
# The pkg-config-rs library used by cargo build scripts disables itself when
# cross compiling unless this is defined. We set up pkg-config appropriately
@@ -138,7 +138,7 @@ python cargo_common_do_patch_paths() {
return
patches = dict()
- workdir = d.getVar('WORKDIR')
+ workdir = d.getVar('UNPACKDIR')
fetcher = bb.fetch2.Fetch(src_uri, d)
for url in fetcher.urls:
ud = fetcher.ud[url]
diff --git a/meta/classes-recipe/cmake.bbclass b/meta/classes-recipe/cmake.bbclass
index 3d3781ef33..e1c3d7ddb5 100644
--- a/meta/classes-recipe/cmake.bbclass
+++ b/meta/classes-recipe/cmake.bbclass
@@ -124,7 +124,7 @@ set( CMAKE_CXX_LINK_FLAGS "${OECMAKE_CXX_LINK_FLAGS}" CACHE STRING "LDFLAGS" )
# only search in the paths provided so cmake doesnt pick
# up libraries and tools from the native build machine
-set( CMAKE_FIND_ROOT_PATH ${STAGING_DIR_HOST} ${STAGING_DIR_NATIVE} ${CROSS_DIR} ${OECMAKE_PERLNATIVE_DIR} ${OECMAKE_EXTRA_ROOT_PATH} ${EXTERNAL_TOOLCHAIN} ${HOSTTOOLS_DIR})
+set( CMAKE_FIND_ROOT_PATH ${STAGING_DIR_HOST} ${STAGING_DIR_NATIVE} ${CROSS_DIR} ${OECMAKE_PERLNATIVE_DIR} ${OECMAKE_EXTRA_ROOT_PATH} ${EXTERNAL_TOOLCHAIN} ${COREBASE}/scripts ${HOSTTOOLS_DIR} )
set( CMAKE_FIND_ROOT_PATH_MODE_PACKAGE ONLY )
set( CMAKE_FIND_ROOT_PATH_MODE_PROGRAM ${OECMAKE_FIND_ROOT_PATH_MODE_PROGRAM} )
set( CMAKE_FIND_ROOT_PATH_MODE_LIBRARY ONLY )
diff --git a/meta/classes-recipe/go.bbclass b/meta/classes-recipe/go.bbclass
index d32509aa6d..9146dd611e 100644
--- a/meta/classes-recipe/go.bbclass
+++ b/meta/classes-recipe/go.bbclass
@@ -80,19 +80,7 @@ export GOPROXY ??= "https://proxy.golang.org,direct"
export GOTMPDIR ?= "${WORKDIR}/build-tmp"
GOTMPDIR[vardepvalue] = ""
-python go_do_unpack() {
- src_uri = (d.getVar('SRC_URI') or "").split()
- if len(src_uri) == 0:
- return
-
- fetcher = bb.fetch2.Fetch(src_uri, d)
- for url in fetcher.urls:
- if fetcher.ud[url].type == 'git':
- if fetcher.ud[url].parm.get('destsuffix') is None:
- s_dirname = os.path.basename(d.getVar('S'))
- fetcher.ud[url].parm['destsuffix'] = os.path.join(s_dirname, 'src', d.getVar('GO_IMPORT')) + '/'
- fetcher.unpack(d.getVar('WORKDIR'))
-}
+GO_SRCURI_DESTSUFFIX = "${@os.path.join(os.path.basename(d.getVar('S')), 'src', d.getVar('GO_IMPORT')) + '/'}"
go_list_packages() {
${GO} list -f '{{.ImportPath}}' ${GOBUILDFLAGS} ${GO_INSTALL} | \
@@ -151,7 +139,7 @@ go_stage_testdata() {
cd "$oldwd"
}
-EXPORT_FUNCTIONS do_unpack do_configure do_compile do_install
+EXPORT_FUNCTIONS do_configure do_compile do_install
FILES:${PN}-dev = "${libdir}/go/src"
FILES:${PN}-staticdev = "${libdir}/go/pkg"
diff --git a/meta/classes-recipe/image_types.bbclass b/meta/classes-recipe/image_types.bbclass
index 913cb8788c..b4a83ae284 100644
--- a/meta/classes-recipe/image_types.bbclass
+++ b/meta/classes-recipe/image_types.bbclass
@@ -112,18 +112,22 @@ IMAGE_CMD:btrfs () {
}
oe_mksquashfs () {
- local comp=$1
- local suffix=$2
+ local comp=$1; shift
+ local extra_imagecmd=$@
+
+ if [ "$comp" = "zstd" ]; then
+ suffix="zst"
+ fi
# Use the bitbake reproducible timestamp instead of the hardcoded squashfs one
export SOURCE_DATE_EPOCH=$(stat -c '%Y' ${IMAGE_ROOTFS})
- mksquashfs ${IMAGE_ROOTFS} ${IMGDEPLOYDIR}/${IMAGE_NAME}.squashfs${comp:+-}${suffix:-$comp} ${EXTRA_IMAGECMD} -noappend ${comp:+-comp }$comp
+ mksquashfs ${IMAGE_ROOTFS} ${IMGDEPLOYDIR}/${IMAGE_NAME}.squashfs${comp:+-}${suffix:-$comp} -noappend ${comp:+-comp }$comp $extra_imagecmd
}
-IMAGE_CMD:squashfs = "oe_mksquashfs"
-IMAGE_CMD:squashfs-xz = "oe_mksquashfs xz"
-IMAGE_CMD:squashfs-lzo = "oe_mksquashfs lzo"
-IMAGE_CMD:squashfs-lz4 = "oe_mksquashfs lz4"
-IMAGE_CMD:squashfs-zst = "oe_mksquashfs zstd zst"
+IMAGE_CMD:squashfs = "oe_mksquashfs '' ${EXTRA_IMAGECMD}"
+IMAGE_CMD:squashfs-xz = "oe_mksquashfs xz ${EXTRA_IMAGECMD}"
+IMAGE_CMD:squashfs-lzo = "oe_mksquashfs lzo ${EXTRA_IMAGECMD}"
+IMAGE_CMD:squashfs-lz4 = "oe_mksquashfs lz4 ${EXTRA_IMAGECMD}"
+IMAGE_CMD:squashfs-zst = "oe_mksquashfs zstd ${EXTRA_IMAGECMD}"
IMAGE_CMD:erofs = "mkfs.erofs ${EXTRA_IMAGECMD} ${IMGDEPLOYDIR}/${IMAGE_NAME}.erofs ${IMAGE_ROOTFS}"
IMAGE_CMD:erofs-lz4 = "mkfs.erofs -zlz4 ${EXTRA_IMAGECMD} ${IMGDEPLOYDIR}/${IMAGE_NAME}.erofs-lz4 ${IMAGE_ROOTFS}"
diff --git a/meta/classes-recipe/kernel-yocto.bbclass b/meta/classes-recipe/kernel-yocto.bbclass
index 9a86616dad..f741a342d4 100644
--- a/meta/classes-recipe/kernel-yocto.bbclass
+++ b/meta/classes-recipe/kernel-yocto.bbclass
@@ -63,7 +63,7 @@ def find_sccs(d):
return sources_list
# check the SRC_URI for "kmeta" type'd git repositories. Return the name of
-# the repository as it will be found in WORKDIR
+# the repository as it will be found in UNPACKDIR
def find_kernel_feature_dirs(d):
feature_dirs=[]
fetch = bb.fetch2.Fetch([], d)
@@ -147,24 +147,24 @@ do_kernel_metadata() {
# from the source tree, into a common location and normalized "defconfig" name,
# where the rest of the process will include and incoroporate it into the build
#
- # If the fetcher has already placed a defconfig in WORKDIR (from the SRC_URI),
+ # If the fetcher has already placed a defconfig in UNPACKDIR (from the SRC_URI),
# we don't overwrite it, but instead warn the user that SRC_URI defconfigs take
# precendence.
#
if [ -n "${KBUILD_DEFCONFIG}" ]; then
if [ -f "${S}/arch/${ARCH}/configs/${KBUILD_DEFCONFIG}" ]; then
- if [ -f "${WORKDIR}/defconfig" ]; then
+ if [ -f "${UNPACKDIR}/defconfig" ]; then
# If the two defconfig's are different, warn that we overwrote the
- # one already placed in WORKDIR
- cmp "${WORKDIR}/defconfig" "${S}/arch/${ARCH}/configs/${KBUILD_DEFCONFIG}"
+ # one already placed in UNPACKDIR
+ cmp "${UNPACKDIR}/defconfig" "${S}/arch/${ARCH}/configs/${KBUILD_DEFCONFIG}"
if [ $? -ne 0 ]; then
- bbdebug 1 "detected SRC_URI or unpatched defconfig in WORKDIR. ${KBUILD_DEFCONFIG} copied over it"
+ bbdebug 1 "detected SRC_URI or unpatched defconfig in UNPACKDIR. ${KBUILD_DEFCONFIG} copied over it"
fi
- cp -f ${S}/arch/${ARCH}/configs/${KBUILD_DEFCONFIG} ${WORKDIR}/defconfig
+ cp -f ${S}/arch/${ARCH}/configs/${KBUILD_DEFCONFIG} ${UNPACKDIR}/defconfig
else
- cp -f ${S}/arch/${ARCH}/configs/${KBUILD_DEFCONFIG} ${WORKDIR}/defconfig
+ cp -f ${S}/arch/${ARCH}/configs/${KBUILD_DEFCONFIG} ${UNPACKDIR}/defconfig
fi
- in_tree_defconfig="${WORKDIR}/defconfig"
+ in_tree_defconfig="${UNPACKDIR}/defconfig"
else
bbfatal "A KBUILD_DEFCONFIG '${KBUILD_DEFCONFIG}' was specified, but not present in the source tree (${S}/arch/${ARCH}/configs/)"
fi
@@ -178,7 +178,7 @@ do_kernel_metadata() {
patches="${@" ".join(find_patches(d,'kernel-meta'))}"
if [ -n "$patches" ]; then
(
- cd ${WORKDIR}/kernel-meta
+ cd ${UNPACKDIR}/kernel-meta
# take the SRC_URI patches, and create a series file
# this is required to support some better processing
@@ -193,11 +193,11 @@ do_kernel_metadata() {
# handling the rest of the kernel. This allows us
# more flexibility for handling failures or advanced
# mergeing functinoality
- message=$(kgit-s2q --gen -v --patches ${WORKDIR}/kernel-meta 2>&1)
+ message=$(kgit-s2q --gen -v --patches ${UNPACKDIR}/kernel-meta 2>&1)
if [ $? -ne 0 ]; then
# setup to try the patch again
kgit-s2q --prev
- bberror "Problem applying patches to: ${WORKDIR}/kernel-meta"
+ bberror "Problem applying patches to: ${UNPACKDIR}/kernel-meta"
bbfatal_log "\n($message)"
fi
)
@@ -232,12 +232,10 @@ do_kernel_metadata() {
# SRC_URI. If they were supplied, we convert them into include directives
# for the update part of the process
for f in ${feat_dirs}; do
- if [ -d "${WORKDIR}/$f/kernel-meta" ]; then
- includes="$includes -I${WORKDIR}/$f/kernel-meta"
- elif [ -d "${WORKDIR}/../oe-local-files/$f" ]; then
- includes="$includes -I${WORKDIR}/../oe-local-files/$f"
- elif [ -d "${WORKDIR}/$f" ]; then
- includes="$includes -I${WORKDIR}/$f"
+ if [ -d "${UNPACKDIR}/$f/kernel-meta" ]; then
+ includes="$includes -I${UNPACKDIR}/$f/kernel-meta"
+ elif [ -d "${UNPACKDIR}/$f" ]; then
+ includes="$includes -I${UNPACKDIR}/$f"
fi
done
for s in ${sccs} ${patches}; do
@@ -379,19 +377,19 @@ do_kernel_checkout() {
set +e
source_dir=`echo ${S} | sed 's%/$%%'`
- source_workdir="${WORKDIR}/git"
- if [ -d "${WORKDIR}/git/" ]; then
+ source_workdir="${UNPACKDIR}/git"
+ if [ -d "${UNPACKDIR}/git/" ]; then
# case: git repository
# if S is WORKDIR/git, then we shouldn't be moving or deleting the tree.
if [ "${source_dir}" != "${source_workdir}" ]; then
if [ -d "${source_workdir}/.git" ]; then
# regular git repository with .git
rm -rf ${S}
- mv ${WORKDIR}/git ${S}
+ mv ${UNPACKDIR}/git ${S}
else
# create source for bare cloned git repository
git clone ${WORKDIR}/git ${S}
- rm -rf ${WORKDIR}/git
+ rm -rf ${UNPACKDIR}/git
fi
fi
cd ${S}
@@ -434,7 +432,7 @@ do_kernel_checkout() {
set -e
}
-do_kernel_checkout[dirs] = "${S} ${WORKDIR}"
+do_kernel_checkout[dirs] = "${S} ${UNPACKDIR}"
addtask kernel_checkout before do_kernel_metadata after do_symlink_kernsrc
addtask kernel_metadata after do_validate_branches do_unpack before do_patch
@@ -442,6 +440,11 @@ do_kernel_metadata[depends] = "kern-tools-native:do_populate_sysroot"
do_kernel_metadata[file-checksums] = " ${@get_dirs_with_fragments(d)}"
do_validate_branches[depends] = "kern-tools-native:do_populate_sysroot"
+# ${S} doesn't exist for us at unpack
+do_qa_unpack() {
+ return
+}
+
do_kernel_configme[depends] += "virtual/${TARGET_PREFIX}binutils:do_populate_sysroot"
do_kernel_configme[depends] += "virtual/${TARGET_PREFIX}gcc:do_populate_sysroot"
do_kernel_configme[depends] += "bc-native:do_populate_sysroot bison-native:do_populate_sysroot"
@@ -460,7 +463,7 @@ do_kernel_configme() {
config_flags=""
;;
*)
- if [ -f ${WORKDIR}/defconfig ]; then
+ if [ -f ${UNPACKDIR}/defconfig ]; then
config_flags="-n"
fi
;;
diff --git a/meta/classes-recipe/kernel.bbclass b/meta/classes-recipe/kernel.bbclass
index b084d6d69d..d6eedf942c 100644
--- a/meta/classes-recipe/kernel.bbclass
+++ b/meta/classes-recipe/kernel.bbclass
@@ -463,7 +463,7 @@ kernel_do_install() {
rm -f "${D}${nonarch_base_libdir}/modules/${KERNEL_VERSION}/build"
rm -f "${D}${nonarch_base_libdir}/modules/${KERNEL_VERSION}/source"
# Remove empty module directories to prevent QA issues
- find "${D}${nonarch_base_libdir}/modules/${KERNEL_VERSION}/kernel" -type d -empty -delete
+ [ -d "${D}${nonarch_base_libdir}/modules/${KERNEL_VERSION}/kernel" ] && find "${D}${nonarch_base_libdir}/modules/${KERNEL_VERSION}/kernel" -type d -empty -delete
else
bbnote "no modules to install"
fi
@@ -679,8 +679,8 @@ kernel_do_configure() {
# Copy defconfig to .config if .config does not exist. This allows
# recipes to manage the .config themselves in do_configure:prepend().
- if [ -f "${WORKDIR}/defconfig" ] && [ ! -f "${B}/.config" ]; then
- cp "${WORKDIR}/defconfig" "${B}/.config"
+ if [ -f "${UNPACKDIR}/defconfig" ] && [ ! -f "${B}/.config" ]; then
+ cp "${UNPACKDIR}/defconfig" "${B}/.config"
fi
${KERNEL_CONFIG_COMMAND}
diff --git a/meta/classes-recipe/populate_sdk_ext.bbclass b/meta/classes-recipe/populate_sdk_ext.bbclass
index f5687e5899..09d5e2aeb6 100644
--- a/meta/classes-recipe/populate_sdk_ext.bbclass
+++ b/meta/classes-recipe/populate_sdk_ext.bbclass
@@ -276,6 +276,8 @@ def write_bblayers_conf(d, baseoutpath, sdkbblayers):
def copy_uninative(d, baseoutpath):
import shutil
+ uninative_checksum = None
+
# Copy uninative tarball
# For now this is where uninative.bbclass expects the tarball
if bb.data.inherits_class('uninative', d):
diff --git a/meta/classes-recipe/ptest-perl.bbclass b/meta/classes-recipe/ptest-perl.bbclass
index c283fdd1fc..a4a9d40d52 100644
--- a/meta/classes-recipe/ptest-perl.bbclass
+++ b/meta/classes-recipe/ptest-perl.bbclass
@@ -13,7 +13,7 @@ SRC_URI += "file://ptest-perl/run-ptest"
do_install_ptest_perl() {
install -d ${D}${PTEST_PATH}
if [ ! -f ${D}${PTEST_PATH}/run-ptest ]; then
- install -m 0755 ${WORKDIR}/ptest-perl/run-ptest ${D}${PTEST_PATH}
+ install -m 0755 ${UNPACKDIR}/ptest-perl/run-ptest ${D}${PTEST_PATH}
fi
cp -r ${B}/t ${D}${PTEST_PATH}
chown -R root:root ${D}${PTEST_PATH}
diff --git a/meta/classes-recipe/ptest.bbclass b/meta/classes-recipe/ptest.bbclass
index 348d729aef..0941572f8f 100644
--- a/meta/classes-recipe/ptest.bbclass
+++ b/meta/classes-recipe/ptest.bbclass
@@ -53,8 +53,8 @@ do_install_ptest() {
}
do_install_ptest_base() {
- if [ -f ${WORKDIR}/run-ptest ]; then
- install -D ${WORKDIR}/run-ptest ${D}${PTEST_PATH}/run-ptest
+ if [ -f ${UNPACKDIR}/run-ptest ]; then
+ install -D ${UNPACKDIR}/run-ptest ${D}${PTEST_PATH}/run-ptest
fi
grep -q install-ptest: Makefile 2>/dev/null && oe_runmake DESTDIR=${D}${PTEST_PATH} install-ptest
diff --git a/meta/classes-recipe/systemd.bbclass b/meta/classes-recipe/systemd.bbclass
index 48b364c1d4..0f7e3b5a08 100644
--- a/meta/classes-recipe/systemd.bbclass
+++ b/meta/classes-recipe/systemd.bbclass
@@ -85,7 +85,7 @@ python systemd_populate_packages() {
def systemd_check_package(pkg_systemd):
packages = d.getVar('PACKAGES')
if not pkg_systemd in packages.split():
- bb.error('%s does not appear in package list, please add it' % pkg_systemd)
+ bb.error('%s is marked for packaging systemd scripts, but it does not appear in package list, please add it to PACKAGES or adjust SYSTEMD_PACKAGES accordingly' % pkg_systemd)
def systemd_generate_package_scripts(pkg):
diff --git a/meta/classes-recipe/toolchain-scripts.bbclass b/meta/classes-recipe/toolchain-scripts.bbclass
index 6bfe0b6de0..cbef412e79 100644
--- a/meta/classes-recipe/toolchain-scripts.bbclass
+++ b/meta/classes-recipe/toolchain-scripts.bbclass
@@ -16,6 +16,13 @@ DEBUG_PREFIX_MAP = ""
EXPORT_SDK_PS1 = "${@ 'export PS1=\\"%s\\"' % d.getVar('SDK_PS1') if d.getVar('SDK_PS1') else ''}"
+def siteinfo_with_prefix(d, prefix):
+ # Return a prefixed value from siteinfo
+ for item in siteinfo_data_for_machine(d.getVar("TARGET_ARCH"), d.getVar("TARGET_OS"), d):
+ if item.startswith(prefix):
+ return item.replace(prefix, "")
+ raise KeyError
+
# This function creates an environment-setup-script for use in a deployable SDK
toolchain_create_sdk_env_script () {
# Create environment setup script. Remember that $SDKTARGETSYSROOT should
@@ -63,6 +70,8 @@ toolchain_create_sdk_env_script () {
echo 'export OECORE_BASELIB="${baselib}"' >> $script
echo 'export OECORE_TARGET_ARCH="${TARGET_ARCH}"' >>$script
echo 'export OECORE_TARGET_OS="${TARGET_OS}"' >>$script
+ echo 'export OECORE_TARGET_BITS="${@siteinfo_with_prefix(d, 'bit-')}"' >>$script
+ echo 'export OECORE_TARGET_ENDIAN="${@siteinfo_with_prefix(d, 'endian-')}"' >>$script
echo 'unset command_not_found_handle' >> $script
diff --git a/meta/classes-recipe/uboot-sign.bbclass b/meta/classes-recipe/uboot-sign.bbclass
index 7a0b8047e4..c8e097f2f2 100644
--- a/meta/classes-recipe/uboot-sign.bbclass
+++ b/meta/classes-recipe/uboot-sign.bbclass
@@ -367,7 +367,7 @@ do_uboot_assemble_fitimage() {
done
for binary in ${UBOOT_BINARIES}; do
- k=$(expr $j + 1);
+ k=$(expr $k + 1);
if [ $k -eq $i ]; then
break;
fi
diff --git a/meta/classes/create-spdx-2.2.bbclass b/meta/classes/create-spdx-2.2.bbclass
index 486efadba9..7c8a0b8b0f 100644
--- a/meta/classes/create-spdx-2.2.bbclass
+++ b/meta/classes/create-spdx-2.2.bbclass
@@ -28,7 +28,7 @@ SPDX_ARCHIVE_SOURCES ??= "0"
SPDX_ARCHIVE_PACKAGED ??= "0"
SPDX_UUID_NAMESPACE ??= "sbom.openembedded.org"
-SPDX_NAMESPACE_PREFIX ??= "http://spdx.org/spdxdoc"
+SPDX_NAMESPACE_PREFIX ??= "http://spdx.org/spdxdocs"
SPDX_PRETTY ??= "0"
SPDX_LICENSES ??= "${COREBASE}/meta/files/spdx-licenses.json"
@@ -357,7 +357,13 @@ def collect_dep_recipes(d, doc, spdx_recipe):
with spdx_deps_file.open("r") as f:
deps = json.load(f)
- for dep_pn, dep_hashfn in deps:
+ for dep_pn, dep_hashfn, in_taskhash in deps:
+ # If this dependency is not calculated in the taskhash skip it.
+ # Otherwise, it can result in broken links since this task won't
+ # rebuild and see the new SPDX ID if the dependency changes
+ if not in_taskhash:
+ continue
+
dep_recipe_path = oe.sbom.doc_find_by_hashfn(deploy_dir_spdx, package_archs, "recipe-" + dep_pn, dep_hashfn)
if not dep_recipe_path:
bb.fatal("Cannot find any SPDX file for recipe %s, %s" % (dep_pn, dep_hashfn))
@@ -478,7 +484,7 @@ def collect_direct_deps(d, dep_task):
for dep_name in this_dep[3]:
dep_data = taskdepdata[dep_name]
if dep_data[1] == dep_task and dep_data[0] != pn:
- deps.add((dep_data[0], dep_data[7]))
+ deps.add((dep_data[0], dep_data[7], dep_name in this_dep[8]))
return sorted(deps)
@@ -721,9 +727,9 @@ def collect_package_providers(d):
providers = {}
deps = collect_direct_deps(d, "do_create_spdx")
- deps.append((d.getVar("PN"), d.getVar("BB_HASHFILENAME")))
+ deps.append((d.getVar("PN"), d.getVar("BB_HASHFILENAME"), True))
- for dep_pn, dep_hashfn in deps:
+ for dep_pn, dep_hashfn, _ in deps:
localdata = d
recipe_data = oe.packagedata.read_pkgdata(dep_pn, localdata)
if not recipe_data:
diff --git a/meta/classes/devtool-source.bbclass b/meta/classes/devtool-source.bbclass
index 4158c20c7e..3e24800dcb 100644
--- a/meta/classes/devtool-source.bbclass
+++ b/meta/classes/devtool-source.bbclass
@@ -26,8 +26,6 @@
DEVTOOL_TEMPDIR ?= ""
-DEVTOOL_PATCH_SRCDIR = "${DEVTOOL_TEMPDIR}/patchworkdir"
-
python() {
tempdir = d.getVar('DEVTOOL_TEMPDIR')
@@ -60,7 +58,6 @@ python() {
else:
unpacktask = 'do_unpack'
d.appendVarFlag(unpacktask, 'postfuncs', ' devtool_post_unpack')
- d.prependVarFlag('do_patch', 'prefuncs', ' devtool_pre_patch')
d.appendVarFlag('do_patch', 'postfuncs', ' devtool_post_patch')
# NOTE: in order for the patch stuff to be fully functional,
@@ -79,67 +76,23 @@ python devtool_post_unpack() {
tempdir = d.getVar('DEVTOOL_TEMPDIR')
workdir = d.getVar('WORKDIR')
+ unpackdir = d.getVar('UNPACKDIR')
srcsubdir = d.getVar('S')
- def _move_file(src, dst):
- """Move a file. Creates all the directory components of destination path."""
- dst_d = os.path.dirname(dst)
- if dst_d:
- bb.utils.mkdirhier(dst_d)
- shutil.move(src, dst)
-
- def _ls_tree(directory):
- """Recursive listing of files in a directory"""
- ret = []
- for root, dirs, files in os.walk(directory):
- ret.extend([os.path.relpath(os.path.join(root, fname), directory) for
- fname in files])
- return ret
-
- is_kernel_yocto = bb.data.inherits_class('kernel-yocto', d)
- # Move local source files into separate subdir
- recipe_patches = [os.path.basename(patch) for patch in
- oe.recipeutils.get_recipe_patches(d)]
+ # Add locally copied files to gitignore as we add back to the metadata directly
local_files = oe.recipeutils.get_recipe_local_files(d)
-
- if is_kernel_yocto:
- for key in [f for f in local_files if f.endswith('scc')]:
- with open(local_files[key], 'r') as sccfile:
- for l in sccfile:
- line = l.split()
- if line and line[0] in ('kconf', 'patch'):
- cfg = os.path.join(os.path.dirname(local_files[key]), line[-1])
- if cfg not in local_files.values():
- local_files[line[-1]] = cfg
- shutil.copy2(cfg, workdir)
-
- # Ignore local files with subdir={BP}
srcabspath = os.path.abspath(srcsubdir)
local_files = [fname for fname in local_files if
- os.path.exists(os.path.join(workdir, fname)) and
- (srcabspath == workdir or not
- os.path.join(workdir, fname).startswith(srcabspath +
- os.sep))]
+ os.path.exists(os.path.join(unpackdir, fname)) and
+ srcabspath == unpackdir]
if local_files:
- for fname in local_files:
- _move_file(os.path.join(workdir, fname),
- os.path.join(tempdir, 'oe-local-files', fname))
- with open(os.path.join(tempdir, 'oe-local-files', '.gitignore'),
- 'w') as f:
- f.write('# Ignore local files, by default. Remove this file '
- 'if you want to commit the directory to Git\n*\n')
-
- if srcsubdir == workdir:
- # Find non-patch non-local sources that were "unpacked" to srctree
- # directory
- src_files = [fname for fname in _ls_tree(workdir) if
- os.path.basename(fname) not in recipe_patches]
- srcsubdir = d.getVar('DEVTOOL_PATCH_SRCDIR')
- # Move source files to S
- for path in src_files:
- _move_file(os.path.join(workdir, path),
- os.path.join(srcsubdir, path))
- elif os.path.dirname(srcsubdir) != workdir:
+ with open(os.path.join(tempdir, '.gitignore'), 'a+') as f:
+ f.write('# Ignore local files, by default. Remove following lines'
+ 'if you want to commit the directory to Git\n')
+ for fname in local_files:
+ f.write('%s\n' % fname)
+
+ if os.path.dirname(srcsubdir) != workdir:
# Handle if S is set to a subdirectory of the source
srcsubdir = os.path.join(workdir, os.path.relpath(srcsubdir, workdir).split(os.sep)[0])
@@ -164,11 +117,6 @@ python devtool_post_unpack() {
f.write(srcsubdir)
}
-python devtool_pre_patch() {
- if d.getVar('S') == d.getVar('WORKDIR'):
- d.setVar('S', '${DEVTOOL_PATCH_SRCDIR}')
-}
-
python devtool_post_patch() {
import shutil
tempdir = d.getVar('DEVTOOL_TEMPDIR')
diff --git a/meta/conf/bitbake.conf b/meta/conf/bitbake.conf
index ba8bd5f975..3ef2deb088 100644
--- a/meta/conf/bitbake.conf
+++ b/meta/conf/bitbake.conf
@@ -405,6 +405,7 @@ STAMP = "${STAMPS_DIR}/${MULTIMACH_TARGET_SYS}/${PN}/${PV}"
STAMPCLEAN = "${STAMPS_DIR}/${MULTIMACH_TARGET_SYS}/${PN}/*-*"
BASE_WORKDIR ?= "${TMPDIR}/work"
WORKDIR = "${BASE_WORKDIR}/${MULTIMACH_TARGET_SYS}/${PN}/${PV}"
+UNPACKDIR ??= "${WORKDIR}/sources-unpack"
T = "${WORKDIR}/temp"
D = "${WORKDIR}/image"
S = "${WORKDIR}/${BP}"
@@ -751,7 +752,7 @@ PSEUDO_SYSROOT = "${COMPONENTS_DIR}/${BUILD_ARCH}/pseudo-native"
PSEUDO_IGNORE_PATHS = "/usr/,/etc/,/lib,/dev/,/run/,${T},${WORKDIR}/recipe-sysroot,${SSTATE_DIR},${STAMPS_DIR}"
PSEUDO_IGNORE_PATHS .= ",${TMPDIR}/sstate-control,${TMPDIR}/buildstats,${TMPDIR}/sysroots-components,${TMPDIR}/pkgdata"
PSEUDO_IGNORE_PATHS .= ",${WORKDIR}/deploy-,${WORKDIR}/sstate-build-package_,${WORKDIR}/sstate-install-package_,${WORKDIR}/pkgdata-sysroot"
-PSEUDO_IGNORE_PATHS .= ",${DEPLOY_DIR},${BUILDHISTORY_DIR},${TOPDIR}/cache,${COREBASE}/scripts,${CCACHE_DIR}"
+PSEUDO_IGNORE_PATHS .= ",${DEPLOY_DIR},${BUILDHISTORY_DIR},${TOPDIR}/cache,${COREBASE}/scripts,${CCACHE_DIR},${S},${B}"
export PSEUDO_DISABLED = "1"
#export PSEUDO_PREFIX = "${STAGING_DIR_NATIVE}${prefix_native}"
diff --git a/meta/conf/distro/include/maintainers.inc b/meta/conf/distro/include/maintainers.inc
index a11859890e..1cb2f708fa 100644
--- a/meta/conf/distro/include/maintainers.inc
+++ b/meta/conf/distro/include/maintainers.inc
@@ -190,7 +190,7 @@ RECIPE_MAINTAINER:pn-gcc-cross-canadian-${TRANSLATED_TARGET_ARCH} = "Khem Raj <r
RECIPE_MAINTAINER:pn-gcc-crosssdk-${SDK_SYS} = "Khem Raj <raj.khem@gmail.com>"
RECIPE_MAINTAINER:pn-gcc-runtime = "Khem Raj <raj.khem@gmail.com>"
RECIPE_MAINTAINER:pn-gcc-sanitizers = "Khem Raj <raj.khem@gmail.com>"
-RECIPE_MAINTAINER:pn-gcc-source-13.2.0 = "Khem Raj <raj.khem@gmail.com>"
+RECIPE_MAINTAINER:pn-gcc-source-14.1.0 = "Khem Raj <raj.khem@gmail.com>"
RECIPE_MAINTAINER:pn-gconf = "Ross Burton <ross.burton@arm.com>"
RECIPE_MAINTAINER:pn-gcr = "Alexander Kanavin <alex.kanavin@gmail.com>"
RECIPE_MAINTAINER:pn-gdb = "Khem Raj <raj.khem@gmail.com>"
@@ -205,6 +205,7 @@ RECIPE_MAINTAINER:pn-gi-docgen = "Alexander Kanavin <alex.kanavin@gmail.com>"
RECIPE_MAINTAINER:pn-git = "Robert Yang <liezhi.yang@windriver.com>"
RECIPE_MAINTAINER:pn-glew = "Anuj Mittal <anuj.mittal@intel.com>"
RECIPE_MAINTAINER:pn-glib-2.0 = "Anuj Mittal <anuj.mittal@intel.com>"
+RECIPE_MAINTAINER:pn-glib-2.0-initial = "Anuj Mittal <anuj.mittal@intel.com>"
RECIPE_MAINTAINER:pn-glib-networking = "Anuj Mittal <anuj.mittal@intel.com>"
RECIPE_MAINTAINER:pn-glibc = "Khem Raj <raj.khem@gmail.com>"
RECIPE_MAINTAINER:pn-glibc-locale = "Khem Raj <raj.khem@gmail.com>"
@@ -555,7 +556,7 @@ RECIPE_MAINTAINER:pn-npth = "Alexander Kanavin <alex.kanavin@gmail.com>"
RECIPE_MAINTAINER:pn-nss-myhostname = "Anuj Mittal <anuj.mittal@intel.com>"
RECIPE_MAINTAINER:pn-numactl = "Richard Purdie <richard.purdie@linuxfoundation.org>"
RECIPE_MAINTAINER:pn-ofono = "Ross Burton <ross.burton@arm.com>"
-RECIPE_MAINTAINER:pn-opensbi = "Unassigned <unassigned@yoctoproject.org>"
+RECIPE_MAINTAINER:pn-opensbi = "Thomas Perrot <thomas.perrot@bootlin.com>"
RECIPE_MAINTAINER:pn-openssh = "Unassigned <unassigned@yoctoproject.org>"
RECIPE_MAINTAINER:pn-openssl = "Alexander Kanavin <alex.kanavin@gmail.com>"
RECIPE_MAINTAINER:pn-opkg = "Alex Stewart <alex.stewart@ni.com>"
@@ -626,7 +627,7 @@ RECIPE_MAINTAINER:pn-python3-dtschema-wrapper = "Bruce Ashfield <bruce.ashfield@
RECIPE_MAINTAINER:pn-python3-editables = "Ross Burton <ross.burton@arm.com>"
RECIPE_MAINTAINER:pn-python3-pycryptodome = "Joshua Watt <JPEWhacker@gmail.com>"
RECIPE_MAINTAINER:pn-python3-pycryptodomex = "Joshua Watt <JPEWhacker@gmail.com>"
-RECIPE_MAINTAINER:pn-python3-pyproject-metadata = "Tim Orling <tim.orling@konsulko.com>"
+RECIPE_MAINTAINER:pn-python3-pyproject-metadata = "Trevor Gamblin <tgamblin@baylibre.com>"
RECIPE_MAINTAINER:pn-python3-pyrsistent = "Bruce Ashfield <bruce.ashfield@gmail.com>"
RECIPE_MAINTAINER:pn-python3-extras = "Trevor Gamblin <tgamblin@baylibre.com>"
RECIPE_MAINTAINER:pn-python3-flit-core = "Tim Orling <tim.orling@konsulko.com>"
@@ -635,7 +636,7 @@ RECIPE_MAINTAINER:pn-python3-gitdb = "Trevor Gamblin <tgamblin@baylibre.com>"
RECIPE_MAINTAINER:pn-python3-hatchling = "Ross Burton <ross.burton@arm.com>"
RECIPE_MAINTAINER:pn-python3-hatch-fancy-pypi-readme = "Ross Burton <ross.burton@arm.com>"
RECIPE_MAINTAINER:pn-python3-hatch-vcs = "Ross Burton <ross.burton@arm.com>"
-RECIPE_MAINTAINER:pn-python3-hypothesis = "Tim Orling <tim.orling@konsulko.com>"
+RECIPE_MAINTAINER:pn-python3-hypothesis = "Trevor Gamblin <tgamblin@baylibre.com>"
RECIPE_MAINTAINER:pn-python3-idna = "Bruce Ashfield <bruce.ashfield@gmail.com>"
RECIPE_MAINTAINER:pn-python3-imagesize = "Tim Orling <tim.orling@konsulko.com>"
RECIPE_MAINTAINER:pn-python3-importlib-metadata = "Tim Orling <tim.orling@konsulko.com>"
@@ -675,19 +676,19 @@ RECIPE_MAINTAINER:pn-python3-pyasn1 = "Tim Orling <tim.orling@konsulko.com>"
RECIPE_MAINTAINER:pn-python3-pycairo = "Zang Ruochen <zangruochen@loongson.cn>"
RECIPE_MAINTAINER:pn-python3-pycparser = "Tim Orling <tim.orling@konsulko.com>"
RECIPE_MAINTAINER:pn-python3-pyelftools = "Joshua Watt <JPEWhacker@gmail.com>"
-RECIPE_MAINTAINER:pn-python3-pygments = "Tim Orling <tim.orling@konsulko.com>"
+RECIPE_MAINTAINER:pn-python3-pygments = "Trevor Gamblin <tgamblin@baylibre.com>"
RECIPE_MAINTAINER:pn-python3-pygobject = "Zang Ruochen <zangruochen@loongson.cn>"
RECIPE_MAINTAINER:pn-python3-pyopenssl = "Tim Orling <tim.orling@konsulko.com>"
RECIPE_MAINTAINER:pn-python3-pyparsing = "Trevor Gamblin <tgamblin@baylibre.com>"
RECIPE_MAINTAINER:pn-python3-pyproject-hooks = "Ross Burton <ross.burton@arm.com>"
RECIPE_MAINTAINER:pn-python3-pysocks = "Tim Orling <tim.orling@konsulko.com>"
-RECIPE_MAINTAINER:pn-python3-pytest = "Tim Orling <tim.orling@konsulko.com>"
+RECIPE_MAINTAINER:pn-python3-pytest = "Trevor Gamblin <tgamblin@baylibre.com>"
RECIPE_MAINTAINER:pn-python3-pytest-runner = "Tim Orling <tim.orling@konsulko.com>"
RECIPE_MAINTAINER:pn-python3-pytest-subtests = "Tim Orling <tim.orling@konsulko.com>"
RECIPE_MAINTAINER:pn-python3-pytz = "Tim Orling <tim.orling@konsulko.com>"
RECIPE_MAINTAINER:pn-python3-pyyaml = "Tim Orling <tim.orling@konsulko.com>"
RECIPE_MAINTAINER:pn-python3-rdflib = "Wang Mingyu <wangmy@fujitsu.com>"
-RECIPE_MAINTAINER:pn-python3-referencing = "Tim Orling <tim.orling@konsulko.com>"
+RECIPE_MAINTAINER:pn-python3-referencing = "Trevor Gamblin <tgamblin@baylibre.com>"
RECIPE_MAINTAINER:pn-python3-requests = "Tim Orling <tim.orling@konsulko.com>"
RECIPE_MAINTAINER:pn-python3-rfc3339-validator = "Bruce Ashfield <bruce.ashfield@gmail.com>"
RECIPE_MAINTAINER:pn-python3-rfc3986-validator = "Bruce Ashfield <bruce.ashfield@gmail.com>"
@@ -698,14 +699,14 @@ RECIPE_MAINTAINER:pn-python3-scons = "Tim Orling <tim.orling@konsulko.com>"
RECIPE_MAINTAINER:pn-python3-semantic-version = "Tim Orling <tim.orling@konsulko.com>"
RECIPE_MAINTAINER:pn-python3-setuptools = "Unassigned <unassigned@yoctoproject.org>"
RECIPE_MAINTAINER:pn-python3-setuptools-rust = "Tim Orling <tim.orling@konsulko.com>"
-RECIPE_MAINTAINER:pn-python3-setuptools-scm = "Tim Orling <tim.orling@konsulko.com>"
+RECIPE_MAINTAINER:pn-python3-setuptools-scm = "Trevor Gamblin <tgamblin@baylibre.com>"
RECIPE_MAINTAINER:pn-python3-six = "Zang Ruochen <zangruochen@loongson.cn>"
RECIPE_MAINTAINER:pn-python3-smartypants = "Alexander Kanavin <alex.kanavin@gmail.com>"
RECIPE_MAINTAINER:pn-python3-smmap = "Unassigned <unassigned@yoctoproject.org>"
RECIPE_MAINTAINER:pn-python3-snowballstemmer = "Tim Orling <tim.orling@konsulko.com>"
RECIPE_MAINTAINER:pn-python3-sortedcontainers = "Tim Orling <tim.orling@konsulko.com>"
RECIPE_MAINTAINER:pn-python3-spdx-tools = "Marta Rybczynska <mrybczynska@syslinbit.com>"
-RECIPE_MAINTAINER:pn-python3-sphinx = "Tim Orling <tim.orling@konsulko.com>"
+RECIPE_MAINTAINER:pn-python3-sphinx = "Trevor Gamblin <tgamblin@baylibre.com>"
RECIPE_MAINTAINER:pn-python3-sphinxcontrib-applehelp = "Tim Orling <tim.orling@konsulko.com>"
RECIPE_MAINTAINER:pn-python3-sphinxcontrib-devhelp = "Tim Orling <tim.orling@konsulko.com>"
RECIPE_MAINTAINER:pn-python3-sphinxcontrib-htmlhelp = "Tim Orling <tim.orling@konsulko.com>"
@@ -829,7 +830,6 @@ RECIPE_MAINTAINER:pn-unifdef = "Ross Burton <ross.burton@arm.com>"
RECIPE_MAINTAINER:pn-uninative-tarball = "Richard Purdie <richard.purdie@linuxfoundation.org>"
RECIPE_MAINTAINER:pn-unzip = "Denys Dmytriyenko <denis@denix.org>"
RECIPE_MAINTAINER:pn-update-rc.d = "Ross Burton <ross.burton@arm.com>"
-RECIPE_MAINTAINER:pn-usbinit = "Alexander Kanavin <alex.kanavin@gmail.com>"
RECIPE_MAINTAINER:pn-usbutils = "Alexander Kanavin <alex.kanavin@gmail.com>"
RECIPE_MAINTAINER:pn-util-linux = "Chen Qi <Qi.Chen@windriver.com>"
RECIPE_MAINTAINER:pn-util-linux-libuuid = "Chen Qi <Qi.Chen@windriver.com>"
diff --git a/meta/conf/distro/include/ptest-packagelists.inc b/meta/conf/distro/include/ptest-packagelists.inc
index 5975db25cc..da6fa6ee97 100644
--- a/meta/conf/distro/include/ptest-packagelists.inc
+++ b/meta/conf/distro/include/ptest-packagelists.inc
@@ -69,6 +69,7 @@ PTESTS_FAST = "\
python3-pyasn1 \
python3-pytz \
python3-pyyaml \
+ python3-rpds-py \
python3-trove-classifiers \
python3-wcwidth \
python3-webcolors \
diff --git a/meta/conf/distro/include/tclibc-newlib.inc b/meta/conf/distro/include/tclibc-newlib.inc
index 238b430e49..34318b2454 100644
--- a/meta/conf/distro/include/tclibc-newlib.inc
+++ b/meta/conf/distro/include/tclibc-newlib.inc
@@ -42,6 +42,6 @@ TOOLCHAIN_HOST_TASK ?= "packagegroup-cross-canadian-${MACHINE} nativesdk-qemu na
TOOLCHAIN_TARGET_TASK ?= "${LIBC_DEPENDENCIES}"
TOOLCHAIN_NEED_CONFIGSITE_CACHE:remove = "zlib ncurses"
-# disable pie security flags by default
-SECURITY_CFLAGS:libc-newlib = "${SECURITY_NOPIE_CFLAGS}"
-SECURITY_LDFLAGS:libc-newlib = ""
+# disable pie security flags by default since RISCV linker doesnt support them
+SECURITY_CFLAGS:libc-newlib:qemuriscv32 = "${SECURITY_NOPIE_CFLAGS}"
+SECURITY_CFLAGS:libc-newlib:qemuriscv64 = "${SECURITY_NOPIE_CFLAGS}"
diff --git a/meta/conf/distro/include/tcmode-default.inc b/meta/conf/distro/include/tcmode-default.inc
index 643394f3eb..23d5aa6de8 100644
--- a/meta/conf/distro/include/tcmode-default.inc
+++ b/meta/conf/distro/include/tcmode-default.inc
@@ -16,7 +16,7 @@ PREFERRED_PROVIDER_virtual/${SDK_PREFIX}compilerlibs = "nativesdk-gcc-runtime"
# Default libc config
PREFERRED_PROVIDER_virtual/gettext ??= "gettext"
-GCCVERSION ?= "13.%"
+GCCVERSION ?= "14.%"
SDKGCCVERSION ?= "${GCCVERSION}"
BINUVERSION ?= "2.42%"
GDBVERSION ?= "14.%"
diff --git a/meta/conf/distro/include/yocto-uninative.inc b/meta/conf/distro/include/yocto-uninative.inc
index 4ac66fd506..657c1032f9 100644
--- a/meta/conf/distro/include/yocto-uninative.inc
+++ b/meta/conf/distro/include/yocto-uninative.inc
@@ -7,9 +7,9 @@
#
UNINATIVE_MAXGLIBCVERSION = "2.39"
-UNINATIVE_VERSION = "4.4"
+UNINATIVE_VERSION = "4.5"
UNINATIVE_URL ?= "http://downloads.yoctoproject.org/releases/uninative/${UNINATIVE_VERSION}/"
-UNINATIVE_CHECKSUM[aarch64] ?= "b61876130f494f75092f21086b4a64ea5fb064045769bf1d32e9cb6af17ea8ec"
-UNINATIVE_CHECKSUM[i686] ?= "9f28627828f0082cc0344eede4d9a861a9a064bfa8f36e072e46212f0fe45fcc"
-UNINATIVE_CHECKSUM[x86_64] ?= "d81c54284be2bb886931fc87281d58177a2cd381cf99d1981f8923039a72a302"
+UNINATIVE_CHECKSUM[aarch64] ?= "df2e29e2e6feb187a3499abf3b1322a3b251da819c77a7b19d4fe952351365ab"
+UNINATIVE_CHECKSUM[i686] ?= "8ef3eda53428b484c20157f6ec3c130b03080b3d4b3889067e0e184e05102d35"
+UNINATIVE_CHECKSUM[x86_64] ?= "43ee6a25bcf5fce16ea87076d6a96e79ead6ced90690a058d07432f902773473"
diff --git a/meta/conf/layer.conf b/meta/conf/layer.conf
index f2bca0aa5b..65eb657fd9 100644
--- a/meta/conf/layer.conf
+++ b/meta/conf/layer.conf
@@ -45,6 +45,7 @@ SIGGEN_EXCLUDERECIPES_ABISAFE += " \
ca-certificates \
shared-mime-info \
desktop-file-utils \
+ os-release \
"
SIGGEN_EXCLUDE_SAFE_RECIPE_DEPS += " \
diff --git a/meta/conf/sanity.conf b/meta/conf/sanity.conf
index d2f56a3fb0..02775970ae 100644
--- a/meta/conf/sanity.conf
+++ b/meta/conf/sanity.conf
@@ -3,7 +3,7 @@
# See sanity.bbclass
#
# Expert users can confirm their sanity with "touch conf/sanity.conf"
-BB_MIN_VERSION = "2.7.3"
+BB_MIN_VERSION = "2.9.1"
SANITY_ABIFILE = "${TMPDIR}/abi_version"
diff --git a/meta/files/toolchain-shar-extract.sh b/meta/files/toolchain-shar-extract.sh
index 4386b985bb..89d30005fd 100644
--- a/meta/files/toolchain-shar-extract.sh
+++ b/meta/files/toolchain-shar-extract.sh
@@ -164,7 +164,9 @@ else
fi
# limit the length for target_sdk_dir, ensure the relocation behaviour in relocate_sdk.py has right result.
-if [ ${#target_sdk_dir} -gt 2048 ]; then
+# This is due to ELF interpreter being set to 'a'*1024 in
+# meta/recipes-core/meta/uninative-tarball.bb
+if [ ${#target_sdk_dir} -gt 1024 ]; then
echo "Error: The target directory path is too long!!!"
exit 1
fi
diff --git a/meta/lib/bblayers/makesetup.py b/meta/lib/bblayers/makesetup.py
index 99d5973760..4199b5f069 100644
--- a/meta/lib/bblayers/makesetup.py
+++ b/meta/lib/bblayers/makesetup.py
@@ -48,8 +48,9 @@ class MakeSetupPlugin(LayerPlugin):
if l_name == 'workspace':
continue
if l_ismodified:
- logger.error("Layer {name} in {path} has uncommitted modifications or is not in a git repository.".format(name=l_name,path=l_path))
- return
+ e = "Layer {name} in {path} has uncommitted modifications or is not in a git repository.".format(name=l_name,path=l_path)
+ logger.error(e)
+ raise Exception(e)
repo_path = oe.buildcfg.get_metadata_git_toplevel(l_path)
if self._is_submodule(repo_path):
@@ -62,9 +63,6 @@ class MakeSetupPlugin(LayerPlugin):
'describe':oe.buildcfg.get_metadata_git_describe(repo_path)}}
if repo_path == destdir_repo:
repos[repo_path]['contains_this_file'] = True
- if not repos[repo_path]['git-remote']['remotes'] and not repos[repo_path]['contains_this_file']:
- logger.error("Layer repository in {path} does not have any remotes configured. Please add at least one with 'git remote add'.".format(path=repo_path))
- return
top_path = os.path.commonpath([os.path.dirname(r) for r in repos.keys()])
@@ -74,6 +72,7 @@ class MakeSetupPlugin(LayerPlugin):
repos_nopaths[r_nopath] = repos[r]
r_relpath = os.path.relpath(r, top_path)
repos_nopaths[r_nopath]['path'] = r_relpath
+ repos_nopaths[r_nopath]['originpath'] = r
return repos_nopaths
def do_make_setup(self, args):
diff --git a/meta/lib/bblayers/setupwriters/oe-setup-layers.py b/meta/lib/bblayers/setupwriters/oe-setup-layers.py
index 59ca968ff3..8faeabfabc 100644
--- a/meta/lib/bblayers/setupwriters/oe-setup-layers.py
+++ b/meta/lib/bblayers/setupwriters/oe-setup-layers.py
@@ -85,6 +85,11 @@ class OeSetupLayersWriter():
if not os.path.exists(args.destdir):
os.makedirs(args.destdir)
repos = parent.make_repo_config(args.destdir)
+ for r in repos.values():
+ if not r['git-remote']['remotes'] and not r.get('contains_this_file', False):
+ e = "Layer repository in {path} does not have any remotes configured. Please add at least one with 'git remote add'.".format(path=r['originpath'])
+ raise Exception(e)
+ del r['originpath']
json = {"version":"1.0","sources":repos}
if not repos:
err = "Could not determine layer sources"
diff --git a/meta/lib/oe/package_manager/__init__.py b/meta/lib/oe/package_manager/__init__.py
index 6774cdb794..d3b2317894 100644
--- a/meta/lib/oe/package_manager/__init__.py
+++ b/meta/lib/oe/package_manager/__init__.py
@@ -449,7 +449,7 @@ class PackageManager(object, metaclass=ABCMeta):
return res
return _append(uris, base_paths)
-def create_packages_dir(d, subrepo_dir, deploydir, taskname, filterbydependencies):
+def create_packages_dir(d, subrepo_dir, deploydir, taskname, filterbydependencies, include_self=False):
"""
Go through our do_package_write_X dependencies and hardlink the packages we depend
upon into the repo directory. This prevents us seeing other packages that may
@@ -486,14 +486,17 @@ def create_packages_dir(d, subrepo_dir, deploydir, taskname, filterbydependencie
bb.fatal("Couldn't find ourself in BB_TASKDEPDATA?")
pkgdeps = set()
start = [start]
- seen = set(start)
+ if include_self:
+ seen = set()
+ else:
+ seen = set(start)
# Support direct dependencies (do_rootfs -> do_package_write_X)
# or indirect dependencies within PN (do_populate_sdk_ext -> do_rootfs -> do_package_write_X)
while start:
next = []
for dep2 in start:
for dep in taskdepdata[dep2][3]:
- if taskdepdata[dep][0] != pn:
+ if include_self or taskdepdata[dep][0] != pn:
if "do_" + taskname in dep:
pkgdeps.add(dep)
elif dep not in seen:
diff --git a/meta/lib/oe/package_manager/common_deb_ipk.py b/meta/lib/oe/package_manager/common_deb_ipk.py
new file mode 100644
index 0000000000..6a1e28ee6f
--- /dev/null
+++ b/meta/lib/oe/package_manager/common_deb_ipk.py
@@ -0,0 +1,97 @@
+#
+# Copyright OpenEmbedded Contributors
+#
+# SPDX-License-Identifier: GPL-2.0-only
+#
+
+import glob
+import os
+import subprocess
+import tempfile
+
+import bb
+
+from oe.package_manager import opkg_query, PackageManager
+
+class OpkgDpkgPM(PackageManager):
+ def __init__(self, d, target_rootfs):
+ """
+ This is an abstract class. Do not instantiate this directly.
+ """
+ super(OpkgDpkgPM, self).__init__(d, target_rootfs)
+
+ def package_info(self, pkg):
+ """
+ Returns a dictionary with the package info.
+ """
+ raise NotImplementedError
+
+ def _common_package_info(self, cmd):
+ """
+ "Returns a dictionary with the package info.
+
+ This method extracts the common parts for Opkg and Dpkg
+ """
+
+ proc = subprocess.run(cmd, capture_output=True, encoding="utf-8", shell=True)
+ if proc.returncode:
+ bb.fatal("Unable to list available packages. Command '%s' "
+ "returned %d:\n%s" % (cmd, proc.returncode, proc.stderr))
+ elif proc.stderr:
+ bb.note("Command '%s' returned stderr: %s" % (cmd, proc.stderr))
+
+ return opkg_query(proc.stdout)
+
+ def extract(self, pkg):
+ """
+ Returns the path to a tmpdir where resides the contents of a package.
+
+ Deleting the tmpdir is responsability of the caller.
+ """
+ pkg_info = self.package_info(pkg)
+ if not pkg_info:
+ bb.fatal("Unable to get information for package '%s' while "
+ "trying to extract the package." % pkg)
+
+ ar_cmd = bb.utils.which(os.getenv("PATH"), "ar")
+ tar_cmd = bb.utils.which(os.getenv("PATH"), "tar")
+ pkg_path = pkg_info[pkg]["filepath"]
+
+ if not os.path.isfile(pkg_path):
+ bb.fatal("Unable to extract package for '%s'."
+ "File %s doesn't exists" % (pkg, pkg_path))
+
+ tmp_dir = tempfile.mkdtemp()
+ current_dir = os.getcwd()
+ os.chdir(tmp_dir)
+
+ try:
+ cmd = [ar_cmd, 'x', pkg_path]
+ output = subprocess.check_output(cmd, stderr=subprocess.STDOUT)
+ data_tar = glob.glob("data.tar.*")
+ if len(data_tar) != 1:
+ bb.fatal("Unable to extract %s package. Failed to identify "
+ "data tarball (found tarballs '%s').",
+ pkg_path, data_tar)
+ data_tar = data_tar[0]
+ cmd = [tar_cmd, 'xf', data_tar]
+ output = subprocess.check_output(cmd, stderr=subprocess.STDOUT)
+ except subprocess.CalledProcessError as e:
+ bb.utils.remove(tmp_dir, recurse=True)
+ bb.fatal("Unable to extract %s package. Command '%s' "
+ "returned %d:\n%s" % (pkg_path, ' '.join(cmd), e.returncode, e.output.decode("utf-8")))
+ except OSError as e:
+ bb.utils.remove(tmp_dir, recurse=True)
+ bb.fatal("Unable to extract %s package. Command '%s' "
+ "returned %d:\n%s at %s" % (pkg_path, ' '.join(cmd), e.errno, e.strerror, e.filename))
+
+ bb.note("Extracted %s to %s" % (pkg_path, tmp_dir))
+ bb.utils.remove(os.path.join(tmp_dir, "debian-binary"))
+ bb.utils.remove(os.path.join(tmp_dir, "control.tar.gz"))
+ bb.utils.remove(os.path.join(tmp_dir, data_tar))
+ os.chdir(current_dir)
+
+ return tmp_dir
+
+ def _handle_intercept_failure(self, registered_pkgs):
+ self.mark_packages("unpacked", registered_pkgs.split())
diff --git a/meta/lib/oe/package_manager/deb/__init__.py b/meta/lib/oe/package_manager/deb/__init__.py
index 0c23c884c1..e09e81e490 100644
--- a/meta/lib/oe/package_manager/deb/__init__.py
+++ b/meta/lib/oe/package_manager/deb/__init__.py
@@ -7,6 +7,7 @@
import re
import subprocess
from oe.package_manager import *
+from oe.package_manager.common_deb_ipk import OpkgDpkgPM
class DpkgIndexer(Indexer):
def _create_configs(self):
@@ -111,72 +112,6 @@ class PMPkgsList(PkgsList):
return opkg_query(cmd_output)
-class OpkgDpkgPM(PackageManager):
- def __init__(self, d, target_rootfs):
- """
- This is an abstract class. Do not instantiate this directly.
- """
- super(OpkgDpkgPM, self).__init__(d, target_rootfs)
-
- def package_info(self, pkg, cmd):
- """
- Returns a dictionary with the package info.
-
- This method extracts the common parts for Opkg and Dpkg
- """
-
- try:
- output = subprocess.check_output(cmd, stderr=subprocess.STDOUT, shell=True).decode("utf-8")
- except subprocess.CalledProcessError as e:
- bb.fatal("Unable to list available packages. Command '%s' "
- "returned %d:\n%s" % (cmd, e.returncode, e.output.decode("utf-8")))
- return opkg_query(output)
-
- def extract(self, pkg, pkg_info):
- """
- Returns the path to a tmpdir where resides the contents of a package.
-
- Deleting the tmpdir is responsability of the caller.
-
- This method extracts the common parts for Opkg and Dpkg
- """
-
- ar_cmd = bb.utils.which(os.getenv("PATH"), "ar")
- tar_cmd = bb.utils.which(os.getenv("PATH"), "tar")
- pkg_path = pkg_info[pkg]["filepath"]
-
- if not os.path.isfile(pkg_path):
- bb.fatal("Unable to extract package for '%s'."
- "File %s doesn't exists" % (pkg, pkg_path))
-
- tmp_dir = tempfile.mkdtemp()
- current_dir = os.getcwd()
- os.chdir(tmp_dir)
- data_tar = 'data.tar.xz'
-
- try:
- cmd = [ar_cmd, 'x', pkg_path]
- output = subprocess.check_output(cmd, stderr=subprocess.STDOUT)
- cmd = [tar_cmd, 'xf', data_tar]
- output = subprocess.check_output(cmd, stderr=subprocess.STDOUT)
- except subprocess.CalledProcessError as e:
- bb.utils.remove(tmp_dir, recurse=True)
- bb.fatal("Unable to extract %s package. Command '%s' "
- "returned %d:\n%s" % (pkg_path, ' '.join(cmd), e.returncode, e.output.decode("utf-8")))
- except OSError as e:
- bb.utils.remove(tmp_dir, recurse=True)
- bb.fatal("Unable to extract %s package. Command '%s' "
- "returned %d:\n%s at %s" % (pkg_path, ' '.join(cmd), e.errno, e.strerror, e.filename))
-
- bb.note("Extracted %s to %s" % (pkg_path, tmp_dir))
- bb.utils.remove(os.path.join(tmp_dir, "debian-binary"))
- bb.utils.remove(os.path.join(tmp_dir, "control.tar.gz"))
- os.chdir(current_dir)
-
- return tmp_dir
-
- def _handle_intercept_failure(self, registered_pkgs):
- self.mark_packages("unpacked", registered_pkgs.split())
class DpkgPM(OpkgDpkgPM):
def __init__(self, d, target_rootfs, archs, base_archs, apt_conf_dir=None, deb_repo_workdir="oe-rootfs-repo", filterbydependencies=True):
@@ -496,7 +431,7 @@ class DpkgPM(OpkgDpkgPM):
Returns a dictionary with the package info.
"""
cmd = "%s show %s" % (self.apt_cache_cmd, pkg)
- pkg_info = super(DpkgPM, self).package_info(pkg, cmd)
+ pkg_info = self._common_package_info(cmd)
pkg_arch = pkg_info[pkg]["pkgarch"]
pkg_filename = pkg_info[pkg]["filename"]
@@ -504,19 +439,3 @@ class DpkgPM(OpkgDpkgPM):
os.path.join(self.deploy_dir, pkg_arch, pkg_filename)
return pkg_info
-
- def extract(self, pkg):
- """
- Returns the path to a tmpdir where resides the contents of a package.
-
- Deleting the tmpdir is responsability of the caller.
- """
- pkg_info = self.package_info(pkg)
- if not pkg_info:
- bb.fatal("Unable to get information for package '%s' while "
- "trying to extract the package." % pkg)
-
- tmp_dir = super(DpkgPM, self).extract(pkg, pkg_info)
- bb.utils.remove(os.path.join(tmp_dir, "data.tar.xz"))
-
- return tmp_dir
diff --git a/meta/lib/oe/package_manager/ipk/__init__.py b/meta/lib/oe/package_manager/ipk/__init__.py
index 8cc9953a02..3d998e52ff 100644
--- a/meta/lib/oe/package_manager/ipk/__init__.py
+++ b/meta/lib/oe/package_manager/ipk/__init__.py
@@ -8,6 +8,7 @@ import re
import shutil
import subprocess
from oe.package_manager import *
+from oe.package_manager.common_deb_ipk import OpkgDpkgPM
class OpkgIndexer(Indexer):
def write_index(self):
@@ -90,76 +91,6 @@ class PMPkgsList(PkgsList):
return opkg_query(cmd_output)
-
-class OpkgDpkgPM(PackageManager):
- def __init__(self, d, target_rootfs):
- """
- This is an abstract class. Do not instantiate this directly.
- """
- super(OpkgDpkgPM, self).__init__(d, target_rootfs)
-
- def package_info(self, pkg, cmd):
- """
- Returns a dictionary with the package info.
-
- This method extracts the common parts for Opkg and Dpkg
- """
-
- proc = subprocess.run(cmd, capture_output=True, encoding="utf-8", shell=True)
- if proc.returncode:
- bb.fatal("Unable to list available packages. Command '%s' "
- "returned %d:\n%s" % (cmd, proc.returncode, proc.stderr))
- elif proc.stderr:
- bb.note("Command '%s' returned stderr: %s" % (cmd, proc.stderr))
-
- return opkg_query(proc.stdout)
-
- def extract(self, pkg, pkg_info):
- """
- Returns the path to a tmpdir where resides the contents of a package.
-
- Deleting the tmpdir is responsability of the caller.
-
- This method extracts the common parts for Opkg and Dpkg
- """
-
- ar_cmd = bb.utils.which(os.getenv("PATH"), "ar")
- tar_cmd = bb.utils.which(os.getenv("PATH"), "tar")
- pkg_path = pkg_info[pkg]["filepath"]
-
- if not os.path.isfile(pkg_path):
- bb.fatal("Unable to extract package for '%s'."
- "File %s doesn't exists" % (pkg, pkg_path))
-
- tmp_dir = tempfile.mkdtemp()
- current_dir = os.getcwd()
- os.chdir(tmp_dir)
- data_tar = 'data.tar.zst'
-
- try:
- cmd = [ar_cmd, 'x', pkg_path]
- output = subprocess.check_output(cmd, stderr=subprocess.STDOUT)
- cmd = [tar_cmd, 'xf', data_tar]
- output = subprocess.check_output(cmd, stderr=subprocess.STDOUT)
- except subprocess.CalledProcessError as e:
- bb.utils.remove(tmp_dir, recurse=True)
- bb.fatal("Unable to extract %s package. Command '%s' "
- "returned %d:\n%s" % (pkg_path, ' '.join(cmd), e.returncode, e.output.decode("utf-8")))
- except OSError as e:
- bb.utils.remove(tmp_dir, recurse=True)
- bb.fatal("Unable to extract %s package. Command '%s' "
- "returned %d:\n%s at %s" % (pkg_path, ' '.join(cmd), e.errno, e.strerror, e.filename))
-
- bb.note("Extracted %s to %s" % (pkg_path, tmp_dir))
- bb.utils.remove(os.path.join(tmp_dir, "debian-binary"))
- bb.utils.remove(os.path.join(tmp_dir, "control.tar.gz"))
- os.chdir(current_dir)
-
- return tmp_dir
-
- def _handle_intercept_failure(self, registered_pkgs):
- self.mark_packages("unpacked", registered_pkgs.split())
-
class OpkgPM(OpkgDpkgPM):
def __init__(self, d, target_rootfs, config_file, archs, task_name='target', ipk_repo_workdir="oe-rootfs-repo", filterbydependencies=True, prepare_index=True):
super(OpkgPM, self).__init__(d, target_rootfs)
@@ -485,7 +416,7 @@ class OpkgPM(OpkgDpkgPM):
Returns a dictionary with the package info.
"""
cmd = "%s %s info %s" % (self.opkg_cmd, self.opkg_args, pkg)
- pkg_info = super(OpkgPM, self).package_info(pkg, cmd)
+ pkg_info = self._common_package_info(cmd)
pkg_arch = pkg_info[pkg]["arch"]
pkg_filename = pkg_info[pkg]["filename"]
@@ -493,19 +424,3 @@ class OpkgPM(OpkgDpkgPM):
os.path.join(self.deploy_dir, pkg_arch, pkg_filename)
return pkg_info
-
- def extract(self, pkg):
- """
- Returns the path to a tmpdir where resides the contents of a package.
-
- Deleting the tmpdir is responsability of the caller.
- """
- pkg_info = self.package_info(pkg)
- if not pkg_info:
- bb.fatal("Unable to get information for package '%s' while "
- "trying to extract the package." % pkg)
-
- tmp_dir = super(OpkgPM, self).extract(pkg, pkg_info)
- bb.utils.remove(os.path.join(tmp_dir, "data.tar.zst"))
-
- return tmp_dir
diff --git a/meta/lib/oe/patch.py b/meta/lib/oe/patch.py
index 60a0cc8291..58c6e34fe8 100644
--- a/meta/lib/oe/patch.py
+++ b/meta/lib/oe/patch.py
@@ -882,7 +882,7 @@ class UserResolver(Resolver):
os.chdir(olddir)
-def patch_path(url, fetch, workdir, expand=True):
+def patch_path(url, fetch, unpackdir, expand=True):
"""Return the local path of a patch, or return nothing if this isn't a patch"""
local = fetch.localpath(url)
@@ -891,7 +891,7 @@ def patch_path(url, fetch, workdir, expand=True):
base, ext = os.path.splitext(os.path.basename(local))
if ext in ('.gz', '.bz2', '.xz', '.Z'):
if expand:
- local = os.path.join(workdir, base)
+ local = os.path.join(unpackdir, base)
ext = os.path.splitext(base)[1]
urldata = fetch.ud[url]
@@ -905,12 +905,12 @@ def patch_path(url, fetch, workdir, expand=True):
return local
def src_patches(d, all=False, expand=True):
- workdir = d.getVar('WORKDIR')
+ unpackdir = d.getVar('UNPACKDIR')
fetch = bb.fetch2.Fetch([], d)
patches = []
sources = []
for url in fetch.urls:
- local = patch_path(url, fetch, workdir, expand)
+ local = patch_path(url, fetch, unpackdir, expand)
if not local:
if all:
local = fetch.localpath(url)
diff --git a/meta/lib/oe/recipeutils.py b/meta/lib/oe/recipeutils.py
index de1fbdd3a8..2d69a33113 100644
--- a/meta/lib/oe/recipeutils.py
+++ b/meta/lib/oe/recipeutils.py
@@ -818,7 +818,7 @@ def bbappend_recipe(rd, destlayerdir, srcfiles, install=None, wildcardver=False,
instdirline = 'install -d ${D}%s' % os.path.dirname(instdestpath)
if not instdirline in instfunclines:
instfunclines.append(instdirline)
- instfunclines.append('install -m %s ${WORKDIR}/%s ${D}%s' % (perms, os.path.basename(srcfile), instdestpath))
+ instfunclines.append('install -m %s ${UNPACKDIR}/%s ${D}%s' % (perms, os.path.basename(srcfile), instdestpath))
if instfunclines:
bbappendlines.append(('do_install:append%s()' % appendoverride, '', instfunclines))
diff --git a/meta/lib/oe/reproducible.py b/meta/lib/oe/reproducible.py
index 448befce33..1957c97434 100644
--- a/meta/lib/oe/reproducible.py
+++ b/meta/lib/oe/reproducible.py
@@ -75,10 +75,10 @@ def get_source_date_epoch_from_known_files(d, sourcedir):
return source_date_epoch
def find_git_folder(d, sourcedir):
- # First guess: WORKDIR/git
+ # First guess: UNPACKDIR/git
# This is the default git fetcher unpack path
- workdir = d.getVar('WORKDIR')
- gitpath = os.path.join(workdir, "git/.git")
+ unpackdir = d.getVar('UNPACKDIR')
+ gitpath = os.path.join(unpackdir, "git/.git")
if os.path.isdir(gitpath):
return gitpath
@@ -88,15 +88,16 @@ def find_git_folder(d, sourcedir):
return gitpath
# Perhaps there was a subpath or destsuffix specified.
- # Go looking in the WORKDIR
- exclude = set(["build", "image", "license-destdir", "patches", "pseudo",
- "recipe-sysroot", "recipe-sysroot-native", "sysroot-destdir", "temp"])
- for root, dirs, files in os.walk(workdir, topdown=True):
- dirs[:] = [d for d in dirs if d not in exclude]
+ # Go looking in the UNPACKDIR
+ for root, dirs, files in os.walk(unpackdir, topdown=True):
if '.git' in dirs:
return os.path.join(root, ".git")
- bb.warn("Failed to find a git repository in WORKDIR: %s" % workdir)
+ for root, dirs, files in os.walk(sourcedir, topdown=True):
+ if '.git' in dirs:
+ return os.path.join(root, ".git")
+
+ bb.warn("Failed to find a git repository in UNPACKDIR: %s" % unpackdir)
return None
def get_source_date_epoch_from_git(d, sourcedir):
@@ -120,7 +121,7 @@ def get_source_date_epoch_from_git(d, sourcedir):
return int(p.stdout.decode('utf-8'))
def get_source_date_epoch_from_youngest_file(d, sourcedir):
- if sourcedir == d.getVar('WORKDIR'):
+ if sourcedir == d.getVar('UNPACKDIR'):
# These sources are almost certainly not from a tarball
return None
diff --git a/meta/lib/oeqa/manual/crops.json b/meta/lib/oeqa/manual/crops.json
deleted file mode 100644
index 5cfa653843..0000000000
--- a/meta/lib/oeqa/manual/crops.json
+++ /dev/null
@@ -1,294 +0,0 @@
-[
- {
- "test": {
- "@alias": "crops-default.crops-default.sdkext_eSDK_devtool_build_make",
- "author": [
- {
- "email": "francisco.j.pedraza.gonzalez@intel.com",
- "name": "francisco.j.pedraza.gonzalez@intel.com"
- }
- ],
- "execution": {
- "1": {
- "action": "IMPORTANT NOTE: The firsts 5 steps refer to configuration of the environment to run the rest of the steps. These only apply for CROPS-eSDK. \n\n\n\n",
- "expected_results": ""
- },
- "2": {
- "action": " Initiate your Crops-esdk environment as it says in wiki https://github.com/crops/docker-win-mac-docs/wiki \n\n",
- "expected_results": ""
- },
- "3": {
- "action": "Create the following tree of files <crops-esdk-workdir-workspace>/sdkext/files/myapp <crops-esdk-workdir-workspace>/sdkext/files/myapp_cmake \n\n\n",
- "expected_results": ""
- },
- "4": {
- "action": " Create the following files withing the myapp directory myapp.c and the Makefile. Write the following inside of each file: \n---------------------------------------- \nMakefile should contain \n\nall: myapp \n\nmyapp: myapp.o \n\t$(CC) $(LDFLAGS) $< -o $@ \n\nmyapp.o: myapp.c \n\t$(CC) $(CFLAGS) -c $< -o $@ \n\nclean: \n\trm -rf myapp.o myapp \n\n----------------------------- \nmyapp.c shold contain \n\n\n#include <stdio.h> \n\nint \nmain(int argc, char *argv[]) \n{ \n\tprintf(\"Hello world\\n\"); \n \n\treturn 0; \n} \n------------------------------------ \n\n",
- "expected_results": "be sure that the indentations on the makefile are tabs not spaces. \n\n"
- },
- "5": {
- "action": " Create the following files within the myapp_cmake directory CMakeLists.txt and myapp.c. Write the following inside each file: \n\n------------------------------------ \nCMakeLists.txt should contain: \n\ncmake_minimum_required (VERSION 2.6) \nproject (myapp) \n# The version number. \nset (myapp_VERSION_MAJOR 1) \nset (myapp_VERSION_MINOR 0) \n\n# add the executable \nadd_executable (myapp myapp.c) \n\ninstall(TARGETS myapp \nRUNTIME DESTINATION bin) \n\n------------------------------------------ \nmyapp.c should contain: \n\n#include <stdio.h> \n\nint \nmain(int argc, char *argv[]) \n{ \n\tprintf(\"Hello world\\n\"); \n\n\treturn 0; \n} \n------------------------------------------------- \n\n",
- "expected_results": "Be sure that the indentations on CMakeLists.txt is tabs not spaces."
- },
- "6": {
- "action": " source environment-setup-i586-poky-linux \n\n",
- "expected_results": "This should output a message that says SDK environment now set up; additionally you may now run devtool to perform development tasks etc etc ... \n\n"
- },
- "7": {
- "action": " run command which devtool \n\n",
- "expected_results": "this should output the directory of the devtool script and it should be within the sdk workdir you are working in. \n\n "
- },
- "8": {
- "action": "devtool add myapp <directory>(this is myapp dir) \n\n\n",
- "expected_results": "The directory you should input is the myapp directory. This should automatically create the recipe myapp.bb under <crops-esdk-workdir-workspace>/recipes/myapp/myapp.bb"
- },
- "9": {
- "action": " devtool build myapp \n\n",
- "expected_results": "This should compile an image"
- },
- "10": {
- "action": " devtool reset myapp ",
- "expected_results": "This cleans sysroot of the myapp recipe, but it leaves the source tree intact. meaning it does not erase."
- }
- },
- "summary": "sdkext_eSDK_devtool_build_make"
- }
- },
- {
- "test": {
- "@alias": "crops-default.crops-default.sdkext_devtool_build_esdk_package",
- "author": [
- {
- "email": "francisco.j.pedraza.gonzalez@intel.com",
- "name": "francisco.j.pedraza.gonzalez@intel.com"
- }
- ],
- "execution": {
- "1": {
- "action": "IMPORTANT NOTE: The firsts 5 steps refer to configuration of the environment to run the rest of the steps. These only apply for CROPS-eSDK. \n\n\n\n",
- "expected_results": ""
- },
- "2": {
- "action": " Initiate your Crops-esdk environment as it says in wiki https://github.com/crops/docker-win-mac-docs/wiki \n\n",
- "expected_results": ""
- },
- "3": {
- "action": " Create the following tree of files <crops-esdk-workdir-workspace>/sdkext/files/myapp/ \n <crops-esdk-workdir-workspace>/sdkext/files/myapp_cmake \n\n",
- "expected_results": ""
- },
- "4": {
- "action": " Create the following files withing the myapp directory myapp.c and the Makefile. Write the following inside of each file: \n---------------------------------------- \nMakefile should contain \n\nall: myapp \n\nmyapp: myapp.o \n\t$(CC) $(LDFLAGS) $< -o $@ \n\nmyapp.o: myapp.c \n\t$(CC) $(CFLAGS) -c $< -o $@ \n\nclean: \n\trm -rf myapp.o myapp \n\n----------------------------- \nmyapp.c shold contain \n\n#include <stdio.h> \n\nint \nmain(int argc, char *argv[]) \n{ \n\tprintf(\"Hello world\\n\"); \n \n\treturn 0; \n} \n------------------------------------ \n\n",
- "expected_results": "be sure that the indentations on the makefile are tabs not spaces. \n\n"
- },
- "5": {
- "action": " Create the following files within the myapp_cmake directory CMakeLists.txt and myapp.c. Write the following inside each file: \n\n------------------------------------ \nCMakeLists.txt should contain: \n\ncmake_minimum_required (VERSION 2.6) \nproject (myapp) \n# The version number. \nset (myapp_VERSION_MAJOR 1) \nset (myapp_VERSION_MINOR 0) \n\n# add the executable \nadd_executable (myapp myapp.c) \n\ninstall(TARGETS myapp \nRUNTIME DESTINATION bin) \n\n------------------------------------------ \nmyapp.c should contain: \n\n#include<stdio.h> \n\nint \nmain(int argc, char *argv[]) \n{ \n\tprintf(\"Hello world\\n\"); \n\n\treturn 0; \n} \n------------------------------------------------- \n\n",
- "expected_results": "Be sure that the indentations on CMakeLists.txt is tabs not spaces. \n\n"
- },
- "6": {
- "action": " source environment-setup-i586-poky-linux \n\n",
- "expected_results": "This should output a message that says SDK environment now set up; additionally you may now run devtool to perform development tasks etc etc ... \n\n"
- },
- "7": {
- "action": " run command which devtool \n\n",
- "expected_results": " this should output the directory of the devtool script and it should be within the sdk workdir you are working in. \n\n"
- },
- "8": {
- "action": " devtool add myapp <directory> (this is myapp dir) \n\n",
- "expected_results": " The directory you should input is the myapp directory. This should automatically create the recipe myapp.bb under <crops-esdk-workdir-workspace>/recipes/myapp/myapp.bb \n\n"
- },
- "9": {
- "action": " devtool package myapp \n\n",
- "expected_results": " you should expect a package creation of myapp and it should be under the /tmp/deploy/ \n\n"
- },
- "10": {
- "action": " devtool reset myapp ",
- "expected_results": "This cleans sysroot of the myapp recipe, but it leaves the source tree intact. meaning it does not erase.\n</package_format>"
- }
- },
- "summary": "sdkext_devtool_build_esdk_package"
- }
- },
- {
- "test": {
- "@alias": "crops-default.crops-default.sdkext_devtool_build_cmake",
- "author": [
- {
- "email": "francisco.j.pedraza.gonzalez@intel.com",
- "name": "francisco.j.pedraza.gonzalez@intel.com"
- }
- ],
- "execution": {
- "1": {
- "action": "IMPORTANT NOTE: The firsts 5 steps refer to configuration of the environment to run the rest of the steps. These only apply for CROPS-eSDK. \n\n\n\n",
- "expected_results": ""
- },
- "2": {
- "action": " Initiate your Crops-esdk environment as it says in wiki https://github.com/crops/docker-win-mac-docs/wiki \n\n",
- "expected_results": ""
- },
- "3": {
- "action": " Create the following tree of files <crops-esdk-workdir-workspace>/sdkext/files/myapp \n <crops-esdk-workdir-workspace>/sdkext/files/myapp_cmake \n\n",
- "expected_results": ""
- },
- "4": {
- "action": " Create the following files withing the myapp directory myapp.c and the Makefile. Write the following inside of each file: \n---------------------------------------- \nMakefile should contain \n\nall: myapp \n\nmyapp: myapp.o \n\t$(CC) $(LDFLAGS) $< -o $@ \n\nmyapp.o: myapp.c \n\t$(CC) $(CFLAGS) -c $< -o $@ \n\nclean: \n\trm -rf myapp.o myapp \n\n----------------------------- \nmyapp.c shold contain \n\n#include <stdio.h> \n\nint \nmain(int argc, char *argv[]) \n{ \n\tprintf(\"Hello world\\n\"); \n \n\treturn 0; \n} \n------------------------------------ \n\n",
- "expected_results": "be sure that the indentations on the makefile are tabs not spaces. \n\n"
- },
- "5": {
- "action": " Create the following files within the myapp_cmake directory CMakeLists.txt and myapp.c. Write the following inside each file: \n\n------------------------------------ \nCMakeLists.txt should contain: \n\ncmake_minimum_required (VERSION 2.6) \nproject (myapp) \n# The version number. \nset (myapp_VERSION_MAJOR 1) \nset (myapp_VERSION_MINOR 0) \n\n# add the executable \nadd_executable (myapp myapp.c) \n\ninstall(TARGETS myapp \nRUNTIME DESTINATION bin) \n\n------------------------------------------ \nmyapp.c should contain: \n\n#include \n\nint \nmain(int argc, char *argv[]) \n{ \n\tprintf(\"Hello world\\n\"); \n\n\treturn 0; \n} \n------------------------------------------------- \n\n",
- "expected_results": "Be sure that the indentations on CMakeLists.txt is tabs not spaces. \n\n"
- },
- "6": {
- "action": " source environment-setup-i586-poky-linux \n\n",
- "expected_results": "This should output a message that says SDK environment now set up; additionally you may now run devtool to perform development tasks etc etc ... \n\n"
- },
- "7": {
- "action": " run command which devtool \n\n",
- "expected_results": "this should output the directory of the devtool script and it should be within the sdk workdir you are working in. \n\n"
- },
- "8": {
- "action": " devtool add myapp <directory> (this is myapp_cmake dir) \n\n",
- "expected_results": "The directory you should input is the myapp_cmake directory. This should automatically create the recipe myapp.bb under <crops-esdk-workdir-workspace>/recipes/myapp/myapp.bb \n\n"
- },
- "9": {
- "action": " devtool build myapp \n\n",
- "expected_results": "This should compile an image \n\n"
- },
- "10": {
- "action": " devtool reset myapp ",
- "expected_results": "This cleans sysroot of the myapp recipe, but it leaves the source tree intact. meaning it does not erase. "
- }
- },
- "summary": "sdkext_devtool_build_cmake"
- }
- },
- {
- "test": {
- "@alias": "crops-default.crops-default.sdkext_extend_autotools_recipe_creation",
- "author": [
- {
- "email": "francisco.j.pedraza.gonzalez@intel.com",
- "name": "francisco.j.pedraza.gonzalez@intel.com"
- }
- ],
- "execution": {
- "1": {
- "action": "IMPORTANT NOTE: The firsts 2 steps refer to configuration of the environment to run the rest of the steps. These only apply for CROPS-eSDK. \n\n\n\n",
- "expected_results": ""
- },
- "2": {
- "action": "Initiate your Crops-esdk environment as it says in wiki https://github.com/crops/docker-win-mac-docs/wiki \n\n",
- "expected_results": ""
- },
- "3": {
- "action": " source environment-setup-i586-poky-linux \n\n",
- "expected_results": " This should output a message that says SDK environment now set up; additionally you may now run devtool to perform development tasks etc etc ... \n\n"
- },
- "4": {
- "action": "run command which devtool \n\n",
- "expected_results": "this should output the directory of the devtool script and it should be within the sdk workdir you are working in. \n\n"
- },
- "5": {
- "action": "devtool sdk-install -s libxml2 \n\n",
- "expected_results": "this should install libxml2 \n\n"
- },
- "6": {
- "action": "devtool add librdfa https://github.com/rdfa/librdfa \n\n",
- "expected_results": "This should automatically create the recipe librdfa.bb under /recipes/librdfa/librdfa.bb \n\n"
- },
- "7": {
- "action": "devtool build librdfa \n\n",
- "expected_results": "This should compile \n\n"
- },
- "8": {
- "action": "devtool reset librdfa ",
- "expected_results": "This cleans sysroot of the librdfa recipe, but it leaves the source tree intact. meaning it does not erase."
- }
- },
- "summary": "sdkext_extend_autotools_recipe_creation"
- }
- },
- {
- "test": {
- "@alias": "crops-default.crops-default.sdkext_devtool_kernelmodule",
- "author": [
- {
- "email": "francisco.j.pedraza.gonzalez@intel.com",
- "name": "francisco.j.pedraza.gonzalez@intel.com"
- }
- ],
- "execution": {
- "1": {
- "action": "IMPORTANT NOTE: The firsts 2 steps refer to configuration of the environment to run the rest of the steps. These only apply for CROPS-eSDK. \n\n\n",
- "expected_results": ""
- },
- "2": {
- "action": " Initiate your Crops-esdk environment as it says in wiki https://github.com/crops/docker-win-mac-docs/wiki \n\n",
- "expected_results": ""
- },
- "3": {
- "action": "source environment-setup-i586-poky-linux \n\n",
- "expected_results": "This should output a message that says SDK environment now set up; additionally you may now run devtool to perform development tasks etc etc ... \n \n"
- },
- "4": {
- "action": "run command which devtool \n\n",
- "expected_results": "this should output the directory of the devtool script and it should be within the sdk workdir you are working in. \n\n"
- },
- "5": {
- "action": "devtool add kernel-module-hello-world https://git.yoctoproject.org/git/kernel-module-hello-world \n\n",
- "expected_results": "This should automatically create the recipe kernel-module-hello-world.bb under <crops-esdk-workdir-workspace>/recipes/kernel-module-hello-world/kernel-module-hello-world.bb "
- },
- "6": {
- "action": "devtool build kernel-module-hello-world \n\n",
- "expected_results": "This should compile an image \n\n"
- },
- "7": {
- "action": "devtool reset kernel-module-hello-world ",
- "expected_results": "This cleans sysroot of the kernel-module-hello-world recipe, but it leaves the source tree intact. meaning it does not erase."
- }
- },
- "summary": "sdkext_devtool_kernelmodule"
- }
- },
- {
- "test": {
- "@alias": "crops-default.crops-default.sdkext_recipes_for_nodejs",
- "author": [
- {
- "email": "francisco.j.pedraza.gonzalez@intel.com",
- "name": "francisco.j.pedraza.gonzalez@intel.com"
- }
- ],
- "execution": {
- "1": {
- "action": "IMPORTANT NOTE: The firsts 2 steps refer to configuration of the environment to run the rest of the steps. These only apply for CROPS-eSDK. \n\n\nlets say variable npm = npm://registry.npmjs.org;name=winston;version=2.2.0 \n\n",
- "expected_results": ""
- },
- "2": {
- "action": "Initiate your Crops-esdk environment as it says in wiki https://github.com/crops/docker-win-mac-docs/wiki \n\n",
- "expected_results": ""
- },
- "3": {
- "action": "source environment-setup-i586-poky-linux \n\n",
- "expected_results": "This should output a message that says SDK environment now set up; additionally you may now run devtool to perform development tasks etc etc ... \n\n"
- },
- "4": {
- "action": "run command which devtool \n\n",
- "expected_results": "this should output the directory of the devtool script and it should be within the sdk workdir you are working in. \n\n"
- },
- "5": {
- "action": " 4a) git clone git://git.openembedded.org/meta-openembedded in layers/build directory \n \n4b) Add meta-openembedded/meta-oe in bblayer.conf as mentioned below: ${SDKBASEMETAPATH}/layers/build/meta-openembedded/meta-oe \\ \n\n4c) devtool add \"npm://registry.npmjs.org;name=npm;version=2.2.0\" \n\n",
- "expected_results": " This should automatically create the recipe npm.bb under /recipes/npm/npm.bb \n\n"
- },
- "6": {
- "action": "devtool build npm \n\n",
- "expected_results": "This should compile an image \n\n"
- },
- "7": {
- "action": " devtool reset npm",
- "expected_results": "This cleans sysroot of the npm recipe, but it leaves the source tree intact. meaning it does not erase."
- }
- },
- "summary": "sdkext_recipes_for_nodejs"
- }
- }
-]
diff --git a/meta/lib/oeqa/manual/eclipse-plugin.json b/meta/lib/oeqa/manual/eclipse-plugin.json
deleted file mode 100644
index 6c110d0656..0000000000
--- a/meta/lib/oeqa/manual/eclipse-plugin.json
+++ /dev/null
@@ -1,322 +0,0 @@
-[
- {
- "test": {
- "@alias": "eclipse-plugin.eclipse-plugin.support_SSH_connection_to_Target",
- "author": [
- {
- "email": "ee.peng.yeoh@intel.com",
- "name": "ee.peng.yeoh@intel.com"
- }
- ],
- "execution": {
- "1": {
- "action": "In Eclipse, swich to Remote System Explorer to create a connention baseed on SSH, input the remote target IP address as the Host name, make sure disable the proxy in Window->Preferences->General->Network Connection, set Direct as Active Provider field. ",
- "expected_results": "the connection based on SSH could be set up."
- },
- "2": {
- "action": "Configure connection from Eclipse: Run->Run Configurations->C/C++ Remote Application\\ ->New Connection->General->SSH Only ",
- "expected_results": ""
- },
- "3": {
- "action": "Then right click to connect, input the user ID and password. ",
- "expected_results": ""
- },
- "4": {
- "action": "expand the connection, it will show the Sftp Files etc. \nNOTE. Might need to change dropbear to openssh and add the packagegroup-core-eclipse-debug recipe",
- "expected_results": ""
- }
- },
- "summary": "support_SSH_connection_to_Target"
- }
- },
- {
- "test": {
- "@alias": "eclipse-plugin.eclipse-plugin.Launch_QEMU_from_Eclipse",
- "author": [
- {
- "email": "ee.peng.yeoh@intel.com",
- "name": "ee.peng.yeoh@intel.com"
- }
- ],
- "execution": {
- "1": {
- "action": "Set the Yocto ADT's toolchain root location, sysroot location and kernel, in the menu Window -> Preferences -> Yocto ADT. \n \n",
- "expected_results": ""
- },
- "2": {
- "action": "wget https://downloads.yoctoproject.org/releases/yocto/yocto-$VERSION/machines/qemu/qemux86/ (ex:core-image-sato-sdk-qemux86-date-rootfs-tar-bz2) \nsource /opt/poky/version/environment-setup-i585-poky-linux \n\nExtract qemu with runqemu-extract-sdk /home/user/file(ex.core-image-sato-sdk-qemux86.bz2) \n/home/user/qemux86-sato-sdk \n\n",
- "expected_results": " Qemu can be lauched normally."
- },
- "3": {
- "action": "(a)Point to the Toolchain: \n \nIf you are using a stand-alone pre-built toolchain, you should be pointing to the /opt/poky/{test-version} directory as Toolchain Root Location. This is the default location for toolchains installed by the ADT Installer or by hand. If ADT is installed in other location, use that location as Toolchain location.\nIf you are using a system-derived toolchain, the path you provide for the Toolchain Root Location field is the Yocto Project's build directory. \n \n E.g:/home/user/yocto/poky/build \n",
- "expected_results": ""
- },
- "4": {
- "action": "(b)Specify the Sysroot Location: \nSysroot Location is the location where the root filesystem for the target hardware is created on the development system by the ADT Installer (SYSROOT in step 2 of the case ADT installer Installation). \n \n Local : e.g: /home/user/qemux86-sato-sdk \nUsing ADT : e.g :/home/user/test-yocto/qemux86 \n\n",
- "expected_results": ""
- },
- "5": {
- "action": "(c)Select the Target Architecture: \n \nThe target architecture is the type of hardware you are going to use or emulate. Use the pull-down Target Architecture menu to make your selection. \n \n\n",
- "expected_results": ""
- },
- "6": {
- "action": "(d) QEMU: \nSelect this option if you will be using the QEMU emulator. Specify the Kernel matching the QEMU architecture you are using. \n wget https://downloads.yoctoproject.org/releases/yocto/yocto-$VERSION/machines/qemu/qemux86/bzImage-qemux86.bin \n e.g: /home/$USER/yocto/adt-installer/download_image/bzImage-qemux86.bin \n\n",
- "expected_results": ""
- },
- "7": {
- "action": "(e) select OK to save the settings. \n\n\n1: In the Eclipse toolbar, expose the Run -> External Tools menu. Your image should appear as a selectable menu item. \n2: Select your image in the navigation pane to launch the emulator in a new window. \n3: If needed, enter your host root password in the shell window at the prompt. This sets up a Tap 0 connection needed for running in user-space NFS mode. \n",
- "expected_results": ""
- }
- },
- "summary": "Launch_QEMU_from_Eclipse"
- }
- },
- {
- "test": {
- "@alias": "eclipse-plugin.eclipse-plugin.Relocatable_SDK_-_C_-_Build_Hello_World_ANSI_C_Autotools_Project",
- "author": [
- {
- "email": "ee.peng.yeoh@intel.com",
- "name": "ee.peng.yeoh@intel.com"
- }
- ],
- "execution": {
- "1": {
- "action": "Launch a QEMU of target environment.(Reference to case \"ADT - Launch qemu by eclipse\") ",
- "expected_results": ""
- },
- "2": {
- "action": "Select File -> New -> Project.",
- "expected_results": ""
- },
- "3": {
- "action": "Double click C/C++.",
- "expected_results": ""
- },
- "4": {
- "action": "Click C or C++ Project to create the project.",
- "expected_results": ""
- },
- "5": {
- "action": "Expand Yocto ADT Project.",
- "expected_results": ""
- },
- "6": {
- "action": "Select Hello World ANSI C Autotools Project.",
- "expected_results": ""
- },
- "7": {
- "action": "Put a name in the Project name. Do not use hyphens as part of the name. \n \n",
- "expected_results": ""
- },
- "8": {
- "action": "Click Next.",
- "expected_results": ""
- },
- "9": {
- "action": "Add information in the Author and Copyright notice fields. \n1",
- "expected_results": ""
- },
- "10": {
- "action": "Click Finish. \n1",
- "expected_results": ""
- },
- "11": {
- "action": "If the \"open perspective\" prompt appears, click \"Yes\" so that you open the C/C++ perspective. \n1",
- "expected_results": ""
- },
- "12": {
- "action": "In the Project Explorer window, right click the project -> Reconfigure project. \n1",
- "expected_results": ""
- },
- "13": {
- "action": "In the Project Explorer window, right click the project -> Build project. \n1",
- "expected_results": "Under the Project files, a new folder appears called Binaries. This indicates that the compilation have been successful and the project binary have been created. \n"
- },
- "14": {
- "action": "Right click it again and Run as -> Run Configurations. \n\t\t\tUnder Run Configurations expand \"C/C++ Remote Application\". A configuration for the current project should appear. Clicking it will display the configuration settings. \n\t\t\tin \"C/C++ Application\" field input Remote Absolute File path for C/C++ Application. e.g.: /home/root/myapplication \n\t\t\tIn \"Connection\" drop-down list make sure a TCF connection is set up for your target. If not, create a new one by clicking the New button. \n1",
- "expected_results": "step 14 to step 16 -> Build succeed and the console outputs Hello world, you can also check the output on target."
- },
- "15": {
- "action": "After all settings are done, select the Run button on the bottom right corner \n\n1",
- "expected_results": ""
- },
- "16": {
- "action": "Repeat the steps 14-15, but instead of using Run Configurations use Debug Configurations: \nRight click it again and Debug as -> Debug Configurations \nUnder Debug Configurations expand \"C/C++ Remote Application\". A configuration for the current project should appear. Clicking it will display the configuration settings. \nin \"C/C++ Application\" field input Remote Absolute File path for C/C++ Application.\ne.g.: /home/root/myapplication \nIn \"Connection\" drop-down list make sure a TCF connection is set up for your target. If not, create a new one by clicking the New button \n1",
- "expected_results": ""
- },
- "17": {
- "action": "After all settings are done, select the Debug button on the bottom right corner",
- "expected_results": ""
- }
- },
- "summary": "Relocatable_SDK_-_C_-_Build_Hello_World_ANSI_C_Autotools_Project"
- }
- },
- {
- "test": {
- "@alias": "eclipse-plugin.eclipse-plugin.Relocatable_SDK_-_C++_-_Build_Hello_World_C++_Autotools_project",
- "author": [
- {
- "email": "ee.peng.yeoh@intel.com",
- "name": "ee.peng.yeoh@intel.com"
- }
- ],
- "execution": {
- "1": {
- "action": "Launch a QEMU of target environment.(Reference to case \"ADT - Launch qemu by eclipse\") ",
- "expected_results": ""
- },
- "2": {
- "action": "Select File -> New -> Project. ",
- "expected_results": ""
- },
- "3": {
- "action": "Double click C/C++. ",
- "expected_results": ""
- },
- "4": {
- "action": "Click C or C++ Project to create the project. ",
- "expected_results": ""
- },
- "5": {
- "action": "Expand Yocto ADT Project. ",
- "expected_results": ""
- },
- "6": {
- "action": "Select Hello World ANSI C++ Autotools Project. ",
- "expected_results": ""
- },
- "7": {
- "action": "Put a name in the Project name. Do not use hyphens as part of the name. \n \n",
- "expected_results": ""
- },
- "8": {
- "action": "Click Next.",
- "expected_results": ""
- },
- "9": {
- "action": "Add information in the Author and Copyright notice fields.",
- "expected_results": ""
- },
- "10": {
- "action": "Click Finish. \n1",
- "expected_results": ""
- },
- "11": {
- "action": "If the \"open perspective\" prompt appears, click \"Yes\" so that you open the C/C++ perspective. \n1",
- "expected_results": ""
- },
- "12": {
- "action": "In the Project Explorer window, right click the project -> Reconfigure project. \n1",
- "expected_results": ""
- },
- "13": {
- "action": "In the Project Explorer window, right click the project -> Build project. \n\n1",
- "expected_results": "under the Project files, a new folder appears called Binaries. This indicates that the compilation have been successful and the project binary have been created. \n"
- },
- "14": {
- "action": "Right click it again and Run as -> Run Configurations. \n\t\t\tUnder Run Configurations expand \"C/C++ Remote Application\". A configuration for the current project should appear. Clicking it will display the configuration settings. \n\t\t\tin \"C/C++ Application\" field input Remote Absolute File path for C/C++ Application. e.g.: /home/root/myapplication \n\t\t\tIn \"Connection\" drop-down list make sure a TCF connection is set up for your target. If not, create a new one by clicking the New button. \n1",
- "expected_results": "step 14 to step 16 -> Build succeed and the console outputs Hello world, you can also check the output on target."
- },
- "15": {
- "action": "After all settings are done, select the Run button on the bottom right corner \n\n1",
- "expected_results": ""
- },
- "16": {
- "action": "Repeat the steps 14-15, but instead of using Run Configurations use Debug Configurations: \n\t\tRight click it again and Debug as -> Debug Configurations \n\t\tUnder Debug Configurations expand \"C/C++ Remote Application\". A configuration for the current project should appear. Clicking it will display the configuration settings. \n\t\tin \"C/C++ Application\" field input Remote Absolute File path for C/C++ Application. \n\t\te.g.: /home/root/myapplication \n\t\tIn \"Connection\" drop-down list make sure a TCF connection is set up for your target. If not, create a new one by clicking the New button \n1",
- "expected_results": ""
- },
- "17": {
- "action": "After all settings are done, select the Debug button on the bottom right corner",
- "expected_results": ""
- }
- },
- "summary": "Relocatable_SDK_-_C++_-_Build_Hello_World_C++_Autotools_project"
- }
- },
- {
- "test": {
- "@alias": "eclipse-plugin.eclipse-plugin.Build_Eclipse_Plugin_from_source",
- "author": [
- {
- "email": "laurentiu.serban@intel.com",
- "name": "laurentiu.serban@intel.com"
- }
- ],
- "execution": {
- "1": {
- "action": "Clone eclipse-poky source. \n \n - git clone git://git.yoctoproject.org/eclipse-poky \n\n",
- "expected_results": "Eclipse plugin is successfully installed \n\nDocumentation is there. For example if you have release yocto-2.0.1 you will found on https://downloads.yoctoproject.org/releases/yocto/yocto-2.0.1/eclipse-plugin/mars/ archive with documentation like org.yocto.doc-development-$date.zip \n \n"
- },
- "2": {
- "action": "Checkout correct tag. \n\n - git checkout <eclipse-version>/<yocto-version> \n\n",
- "expected_results": "After plugin is build you must have 4 archive in foder scripts from eclipse-poky: \n - org.yocto.bc - mars-master-$date.zip \n - org.yocto.doc - mars-master-$date.zip --> documentation \n - org.yocto.sdk - mars-master-$date.zip \n - org.yocto.sdk - mars-master-$date.-archive.zip --> plugin "
- },
- "3": {
- "action": "Move to scripts/ folder. \n\n",
- "expected_results": ""
- },
- "4": {
- "action": "Run ./setup.sh \n\n",
- "expected_results": ""
- },
- "5": {
- "action": "When the script finishes, it prompts a command to issue to build the plugin. It should look similar to the following: \n\n$ ECLIPSE_HOME=/eclipse-poky/scripts/eclipse ./build.sh /&1 | tee -a build.log \n\nHere, the three arguments to the build script are tag name, branch for documentation and release name. \n\n",
- "expected_results": ""
- },
- "6": {
- "action": "On an eclipse without the Yocto Plugin, select \"Install New Software\" from Help pull-down menu \n\n",
- "expected_results": ""
- },
- "7": {
- "action": "Select Add and from the dialog choose Archive... Look for the *archive.zip file that was built previously with the build.sh script. Click OK. \n\n",
- "expected_results": ""
- },
- "8": {
- "action": "Select all components and proceed with Installation of plugin. Restarting eclipse might be required.\n",
- "expected_results": ""
- }
- },
- "summary": "Build_Eclipse_Plugin_from_source"
- }
- },
- {
- "test": {
- "@alias": "eclipse-plugin.eclipse-plugin.Eclipse_Poky_installation_and_setup",
- "author": [
- {
- "email": "ee.peng.yeoh@intel.com",
- "name": "ee.peng.yeoh@intel.com"
- }
- ],
- "execution": {
- "1": {
- "action": "Install SDK \n\ta)Download https://autobuilder.yocto.io/pub/releases//toolchain/x86_64/poky-glibc-x86_64-core-\timage-sato-i586-toolchain-.sh \n\tb)Run the SDK installer and accept the default installation directory ",
- "expected_results": ""
- },
- "2": {
- "action": "Install \"Eclipse IDE for C/C++ Developers\" Oxygen release (4.7.0) \n\ta) Go to https://www.eclipse.org/downloads/packages/all, click \"Oxygen R\" \n\tb) Click to download the build for your OS \n\tc) Click \"Download\" button to download from a mirror \n\td) Run \"tar xf\" to extract the downloaded archive ",
- "expected_result": ""
- },
- "3": {
- "action": "Install \"Eclipse IDE for C/C++ Developers\" Oxygen release (4.7.0) (Continue) \n\te) Run \"eclipse/eclipse\" to start Eclipse \n\tf) Optional step for host machine within Intel network: In Eclipse workbench window, go to \"Window\" menu -> \"Preferences...\". \n\tg) In \"Preferences\" dialog, go to \"General\" -> \"Network Connections\", set \"Active Provider\" to \"Manual\". In \"Proxy \tentries\" table, select HTTP and click \"Edit\" and enter host \"proxy-chain.intel.com\" port 911, click OK. Repeat for HTTPS with port 912 \nClick OK to close \"Preferences\" dialog. \n\th) Go to \"File\" menu -> \"Restart\" to restart Eclipse for proxy settings to take effect. ",
- "expected_result": ""
- },
- "4": {
- "action": "Install Eclipse Poky plugins \n\ta) Download https://autobuilder.yocto.io/pub/releases/<yocto-version>/eclipse-plugin/<eclipse-version>/org.yocto.sdk-development-<date>-archive.zip \n\tb) In Eclipse workbench window, go to \"Help\" menu -> \"Install New Software...\" \n\tc) In \"Install\" dialog, click \"Add...\" button \n\td) In \"Add Repository\" dialog, enter \"Eclipse Poky\" for (repository) Name, click \"Archive...\" ",
- "expected_results": ""
- },
- "5": {
- "action": "Install Eclipse Poky plugins (continue) \n\te) In \"Repository archive\" browse dialog, select the downloaded Eclipse Poky repository archive \n\tf) Back in \"Add Repository\" dialog, click \"OK\" \n\tg) Back in \"Install\" dialog, make sure \"Work with:\" is set to \"Eclipse Poky\" repository, tick \"Yocto Project \tDocumentation Plug-in\" and \"Yocto Project SDK Plug-in\", click \"Next >\" and verify plugins/features name/version, \tclick \"Next >\" and accept license agreement, click \"Finish\" \n\th) If \"Security Warning\" dialog appears, click \"OK\" to install unsigned content. \n\ti) In \"Software Updates\" dialog, click \"Yes\" to restart Eclipse to complete Eclipse Poky plugins installation. ",
- "expected_results": ""
- },
- "6": {
- "action": "Setup Eclipse Poky to use SDK \n\ta) In Eclipse workbench window, go to \"Window\" menu -> \"Preferences\". \n\tb) In \"Preferences\" window, go to \"Yocto Project SDK\", in \"Cross Compiler Options\" frame, select \"Standalone pre-\tbuilt toolchain\". ",
- "expected_results": "Eclipse Poky plugins installed and running successfully, e.g. observe that \"Yocto Project Tools\" menu is available on Eclipse workbench window."
- }
- },
- "summary": "Eclipse_Poky_installation_and_setup"
- }
- }
-]
diff --git a/meta/lib/oeqa/sdk/cases/buildcpio.py b/meta/lib/oeqa/sdk/cases/autotools.py
index 51003b19cd..848e9392ec 100644
--- a/meta/lib/oeqa/sdk/cases/buildcpio.py
+++ b/meta/lib/oeqa/sdk/cases/autotools.py
@@ -7,13 +7,12 @@
import os
import tempfile
import subprocess
-import unittest
from oeqa.sdk.case import OESDKTestCase
from oeqa.utils.subprocesstweak import errors_have_output
errors_have_output()
-class BuildCpioTest(OESDKTestCase):
+class AutotoolsTest(OESDKTestCase):
"""
Check that autotools will cross-compile correctly.
"""
diff --git a/meta/lib/oeqa/sdk/cases/assimp.py b/meta/lib/oeqa/sdk/cases/cmake.py
index e986838aea..db7d826a38 100644
--- a/meta/lib/oeqa/sdk/cases/assimp.py
+++ b/meta/lib/oeqa/sdk/cases/cmake.py
@@ -13,7 +13,7 @@ from oeqa.sdk.case import OESDKTestCase
from oeqa.utils.subprocesstweak import errors_have_output
errors_have_output()
-class BuildAssimp(OESDKTestCase):
+class CMakeTest(OESDKTestCase):
"""
Test case to build a project using cmake.
"""
@@ -21,14 +21,14 @@ class BuildAssimp(OESDKTestCase):
def setUp(self):
if not (self.tc.hasHostPackage("nativesdk-cmake") or
self.tc.hasHostPackage("cmake-native")):
- raise unittest.SkipTest("Needs cmake")
+ raise unittest.SkipTest("CMakeTest: needs cmake")
def test_assimp(self):
with tempfile.TemporaryDirectory(prefix="assimp", dir=self.tc.sdk_dir) as testdir:
- tarball = self.fetch(testdir, self.td["DL_DIR"], "https://github.com/assimp/assimp/archive/v5.3.1.tar.gz")
+ tarball = self.fetch(testdir, self.td["DL_DIR"], "https://github.com/assimp/assimp/archive/v5.4.1.tar.gz")
dirs = {}
- dirs["source"] = os.path.join(testdir, "assimp-5.3.1")
+ dirs["source"] = os.path.join(testdir, "assimp-5.4.1")
dirs["build"] = os.path.join(testdir, "build")
dirs["install"] = os.path.join(testdir, "install")
@@ -39,7 +39,7 @@ class BuildAssimp(OESDKTestCase):
self._run("sed -i '/# ifdef _FILE_OFFSET_BITS/I,+2 d' {source}/contrib/zlib/gzguts.h".format(**dirs))
os.makedirs(dirs["build"])
- self._run("cd {build} && cmake -DCMAKE_VERBOSE_MAKEFILE:BOOL=ON -DASSIMP_BUILD_ZLIB=ON {source}".format(**dirs))
+ self._run("cd {build} && cmake -DASSIMP_WARNINGS_AS_ERRORS=OFF -DCMAKE_VERBOSE_MAKEFILE:BOOL=ON -DASSIMP_BUILD_ZLIB=ON {source}".format(**dirs))
self._run("cmake --build {build} -- -j".format(**dirs))
self._run("cmake --build {build} --target install -- DESTDIR={install}".format(**dirs))
- self.check_elf(os.path.join(dirs["install"], "usr", "local", "lib", "libassimp.so.5.3.0"))
+ self.check_elf(os.path.join(dirs["install"], "usr", "local", "lib", "libassimp.so.5.4.1"))
diff --git a/meta/lib/oeqa/sdk/cases/buildgalculator.py b/meta/lib/oeqa/sdk/cases/gtk3.py
index 178f07472d..c329c4bb86 100644
--- a/meta/lib/oeqa/sdk/cases/buildgalculator.py
+++ b/meta/lib/oeqa/sdk/cases/gtk3.py
@@ -13,7 +13,7 @@ from oeqa.sdk.case import OESDKTestCase
from oeqa.utils.subprocesstweak import errors_have_output
errors_have_output()
-class GalculatorTest(OESDKTestCase):
+class GTK3Test(OESDKTestCase):
"""
Test that autotools and GTK+ 3 compiles correctly.
"""
diff --git a/meta/lib/oeqa/sdk/cases/buildlzip.py b/meta/lib/oeqa/sdk/cases/makefile.py
index b4b7d85b88..2ff54ce25f 100644
--- a/meta/lib/oeqa/sdk/cases/buildlzip.py
+++ b/meta/lib/oeqa/sdk/cases/makefile.py
@@ -4,12 +4,12 @@
# SPDX-License-Identifier: MIT
#
-import os, tempfile, subprocess, unittest
+import os, tempfile, subprocess
from oeqa.sdk.case import OESDKTestCase
from oeqa.utils.subprocesstweak import errors_have_output
errors_have_output()
-class BuildLzipTest(OESDKTestCase):
+class MakefileTest(OESDKTestCase):
"""
Test that "plain" compilation works, using just $CC $CFLAGS etc.
"""
diff --git a/meta/lib/oeqa/sdk/cases/maturin.py b/meta/lib/oeqa/sdk/cases/maturin.py
index ea10f568b2..20f6b553d0 100644
--- a/meta/lib/oeqa/sdk/cases/maturin.py
+++ b/meta/lib/oeqa/sdk/cases/maturin.py
@@ -8,7 +8,6 @@ import os
import shutil
import unittest
-from oeqa.core.utils.path import remove_safe
from oeqa.sdk.case import OESDKTestCase
from oeqa.utils.subprocesstweak import errors_have_output
diff --git a/meta/lib/oeqa/sdk/cases/buildepoxy.py b/meta/lib/oeqa/sdk/cases/meson.py
index 147ee3e0ee..be53df204a 100644
--- a/meta/lib/oeqa/sdk/cases/buildepoxy.py
+++ b/meta/lib/oeqa/sdk/cases/meson.py
@@ -13,14 +13,14 @@ from oeqa.sdk.case import OESDKTestCase
from oeqa.utils.subprocesstweak import errors_have_output
errors_have_output()
-class EpoxyTest(OESDKTestCase):
+class MesonTest(OESDKTestCase):
"""
Test that Meson builds correctly.
"""
def setUp(self):
if not (self.tc.hasHostPackage("nativesdk-meson") or
self.tc.hasHostPackage("meson-native")):
- raise unittest.SkipTest("EpoxyTest class: SDK doesn't contain Meson")
+ raise unittest.SkipTest("MesonTest: needs meson")
def test_epoxy(self):
with tempfile.TemporaryDirectory(prefix="epoxy", dir=self.tc.sdk_dir) as testdir:
diff --git a/meta/lib/oeqa/sdk/cases/python.py b/meta/lib/oeqa/sdk/cases/python.py
index 5ea992b9f3..51284949f5 100644
--- a/meta/lib/oeqa/sdk/cases/python.py
+++ b/meta/lib/oeqa/sdk/cases/python.py
@@ -4,7 +4,7 @@
# SPDX-License-Identifier: MIT
#
-import subprocess, unittest
+import unittest
from oeqa.sdk.case import OESDKTestCase
from oeqa.utils.subprocesstweak import errors_have_output
diff --git a/meta/lib/oeqa/sdk/cases/rust.py b/meta/lib/oeqa/sdk/cases/rust.py
index f5d437bb19..a54245851b 100644
--- a/meta/lib/oeqa/sdk/cases/rust.py
+++ b/meta/lib/oeqa/sdk/cases/rust.py
@@ -8,7 +8,6 @@ import os
import shutil
import unittest
-from oeqa.core.utils.path import remove_safe
from oeqa.sdk.case import OESDKTestCase
from oeqa.utils.subprocesstweak import errors_have_output
diff --git a/meta/lib/oeqa/sdkext/cases/devtool.py b/meta/lib/oeqa/sdkext/cases/devtool.py
index 5ffb732556..d0746e68eb 100644
--- a/meta/lib/oeqa/sdkext/cases/devtool.py
+++ b/meta/lib/oeqa/sdkext/cases/devtool.py
@@ -69,10 +69,9 @@ class DevtoolTest(OESDKExtTestCase):
self._test_devtool_build(self.myapp_cmake_dst)
def test_extend_autotools_recipe_creation(self):
- req = 'https://github.com/rdfa/librdfa'
- recipe = "librdfa"
- self._run('devtool sdk-install libxml2')
- self._run('devtool add %s %s' % (recipe, req) )
+ recipe = "test-dbus-wait"
+ self._run('devtool sdk-install dbus')
+ self._run('devtool add %s https://git.yoctoproject.org/git/dbus-wait' % (recipe) )
try:
self._run('devtool build %s' % recipe)
finally:
diff --git a/meta/lib/oeqa/selftest/cases/debuginfod.py b/meta/lib/oeqa/selftest/cases/debuginfod.py
index 505b4be837..46c0cd87bb 100644
--- a/meta/lib/oeqa/selftest/cases/debuginfod.py
+++ b/meta/lib/oeqa/selftest/cases/debuginfod.py
@@ -62,7 +62,7 @@ class Debuginfod(OESelftestTestCase):
raise TimeoutError("Cannot connect debuginfod, still %d scan jobs running" % latest)
- def start_debuginfod(self):
+ def start_debuginfod(self, feed_dir):
# We assume that the caller has already bitbake'd elfutils-native:do_addto_recipe_sysroot
# Save some useful paths for later
@@ -82,7 +82,7 @@ class Debuginfod(OESelftestTestCase):
# Disable rescanning, this is a one-shot test
"--rescan-time=0",
"--groom-time=0",
- get_bb_var("DEPLOY_DIR"),
+ feed_dir,
]
format = get_bb_var("PACKAGE_CLASSES").split()[0]
@@ -114,11 +114,12 @@ class Debuginfod(OESelftestTestCase):
self.write_config("""
TMPDIR = "${TOPDIR}/tmp-debuginfod"
DISTRO_FEATURES:append = " debuginfod"
+INHERIT += "localpkgfeed"
""")
- bitbake("elfutils-native:do_addto_recipe_sysroot xz xz:do_package")
+ bitbake("elfutils-native:do_addto_recipe_sysroot xz xz:do_package xz:do_localpkgfeed")
try:
- self.start_debuginfod()
+ self.start_debuginfod(get_bb_var("LOCALPKGFEED_DIR", "xz"))
env = os.environ.copy()
env["DEBUGINFOD_URLS"] = "http://localhost:%d/" % self.port
@@ -141,12 +142,13 @@ DISTRO_FEATURES:append = " debuginfod"
self.write_config("""
TMPDIR = "${TOPDIR}/tmp-debuginfod"
DISTRO_FEATURES:append = " debuginfod"
+INHERIT += "localpkgfeed"
CORE_IMAGE_EXTRA_INSTALL += "elfutils xz"
""")
- bitbake("core-image-minimal elfutils-native:do_addto_recipe_sysroot")
+ bitbake("core-image-minimal elfutils-native:do_addto_recipe_sysroot xz:do_localpkgfeed")
try:
- self.start_debuginfod()
+ self.start_debuginfod(get_bb_var("LOCALPKGFEED_DIR", "xz"))
with runqemu("core-image-minimal", runqemuparams="nographic") as qemu:
cmd = "DEBUGINFOD_URLS=http://%s:%d/ debuginfod-find debuginfo /usr/bin/xz" % (qemu.server_ip, self.port)
diff --git a/meta/lib/oeqa/selftest/cases/devtool.py b/meta/lib/oeqa/selftest/cases/devtool.py
index 51949e3c93..1cafb922ea 100644
--- a/meta/lib/oeqa/selftest/cases/devtool.py
+++ b/meta/lib/oeqa/selftest/cases/devtool.py
@@ -286,10 +286,13 @@ class DevtoolTestCase(OESelftestTestCase):
else:
self.skipTest('No tap devices found - you must set up tap devices with scripts/runqemu-gen-tapdevs before running this test')
- def _test_devtool_add_git_url(self, git_url, version, pn, resulting_src_uri):
+ def _test_devtool_add_git_url(self, git_url, version, pn, resulting_src_uri, srcrev=None):
self.track_for_cleanup(self.workspacedir)
self.add_command_to_tearDown('bitbake-layers remove-layer */workspace')
- result = runCmd('devtool add --version %s %s %s' % (version, pn, git_url))
+ command = 'devtool add --version %s %s %s' % (version, pn, git_url)
+ if srcrev :
+ command += ' --srcrev %s' %srcrev
+ result = runCmd(command)
self.assertExists(os.path.join(self.workspacedir, 'conf', 'layer.conf'), 'Workspace directory not created')
# Check the recipe name is correct
recipefile = get_bb_var('FILE', pn)
@@ -479,11 +482,12 @@ class DevtoolAddTests(DevtoolBase):
def test_devtool_add_git_style2(self):
version = 'v3.1.0'
+ srcrev = 'v3.1.0'
pn = 'mbedtls'
# this will trigger reformat_git_uri with branch parameter in url
git_url = "'git://git@github.com/ARMmbed/mbedtls.git;protocol=https'"
- resulting_src_uri = "gitsm://git@github.com/ARMmbed/mbedtls.git;protocol=https;branch=master"
- self._test_devtool_add_git_url(git_url, version, pn, resulting_src_uri)
+ resulting_src_uri = "git://git@github.com/ARMmbed/mbedtls.git;protocol=https;branch=master"
+ self._test_devtool_add_git_url(git_url, version, pn, resulting_src_uri, srcrev)
def test_devtool_add_library(self):
# Fetch source
@@ -749,6 +753,25 @@ class DevtoolModifyTests(DevtoolBase):
result = runCmd('devtool status')
self.assertNotIn('mdadm', result.output)
+ def test_devtool_modify_go(self):
+ import oe.path
+ from tempfile import TemporaryDirectory
+ with TemporaryDirectory(prefix='devtoolqa') as tempdir:
+ self.track_for_cleanup(self.workspacedir)
+ self.add_command_to_tearDown('bitbake -c clean go-helloworld')
+ self.add_command_to_tearDown('bitbake-layers remove-layer */workspace')
+ result = runCmd('devtool modify go-helloworld -x %s' % tempdir)
+ self.assertExists(
+ oe.path.join(tempdir, 'src', 'golang.org', 'x', 'example', 'go.mod'),
+ 'Extracted source could not be found'
+ )
+ self.assertExists(
+ oe.path.join(self.workspacedir, 'conf', 'layer.conf'),
+ 'Workspace directory not created'
+ )
+ matches = glob.glob(oe.path.join(self.workspacedir, 'appends', 'go-helloworld_*.bbappend'))
+ self.assertTrue(matches, 'bbappend not created %s' % result.output)
+
def test_devtool_buildclean(self):
def assertFile(path, *paths):
f = os.path.join(path, *paths)
@@ -875,13 +898,8 @@ class DevtoolModifyTests(DevtoolBase):
self.add_command_to_tearDown('bitbake -c clean %s' % testrecipe)
self.add_command_to_tearDown('bitbake-layers remove-layer */workspace')
result = runCmd('devtool modify %s -x %s' % (testrecipe, tempdir))
- srcfile = os.path.join(tempdir, 'oe-local-files/share/dot.bashrc')
- srclink = os.path.join(tempdir, 'share/dot.bashrc')
+ srcfile = os.path.join(tempdir, 'share/dot.bashrc')
self.assertExists(srcfile, 'Extracted source could not be found')
- if os.path.islink(srclink) and os.path.exists(srclink) and os.path.samefile(srcfile, srclink):
- correct_symlink = True
- self.assertTrue(correct_symlink, 'Source symlink to oe-local-files is broken')
-
matches = glob.glob(os.path.join(self.workspacedir, 'appends', '%s_*.bbappend' % testrecipe))
self.assertTrue(matches, 'bbappend not created')
# Test devtool status
@@ -952,9 +970,9 @@ class DevtoolModifyTests(DevtoolBase):
# others git:// in SRC_URI
# cointains a patch
testrecipe = 'hello-rs'
- bb_vars = get_bb_vars(['SRC_URI', 'FILE', 'WORKDIR', 'CARGO_HOME'], testrecipe)
+ bb_vars = get_bb_vars(['SRC_URI', 'FILE', 'UNPACKDIR', 'CARGO_HOME'], testrecipe)
recipefile = bb_vars['FILE']
- workdir = bb_vars['WORKDIR']
+ unpackdir = bb_vars['UNPACKDIR']
cargo_home = bb_vars['CARGO_HOME']
src_uri = bb_vars['SRC_URI'].split()
self.assertTrue(src_uri[0].startswith('git://'),
@@ -1025,7 +1043,7 @@ class DevtoolModifyTests(DevtoolBase):
self.assertEqual(parms['type'], 'git-dependency', 'git dependencies uri should have "type=git-dependency"')
raw_url = raw_url.replace("git://", '%s://' % parms['protocol'])
patch_line = '[patch."%s"]' % raw_url
- path_patched = os.path.join(workdir, parms['destsuffix'])
+ path_patched = os.path.join(unpackdir, parms['destsuffix'])
path_override_line = '%s = { path = "%s" }' % (parms['name'], path_patched)
# Would have been better to use tomllib to read this file :/
self.assertIn(patch_line, cargo_config_contents)
@@ -1274,7 +1292,7 @@ class DevtoolUpdateTests(DevtoolBase):
with open(bbappendfile, 'r') as f:
self.assertEqual(expectedlines, f.readlines())
# Drop new commit and check patch gets deleted
- result = runCmd('git reset HEAD^', cwd=tempsrcdir)
+ result = runCmd('git reset HEAD^ --hard', cwd=tempsrcdir)
result = runCmd('devtool update-recipe %s -a %s' % (testrecipe, templayerdir))
self.assertNotExists(patchfile, 'Patch file not deleted')
expectedlines2 = ['FILESEXTRAPATHS:prepend := "${THISDIR}/${PN}:"\n',
@@ -1283,6 +1301,7 @@ class DevtoolUpdateTests(DevtoolBase):
self.assertEqual(expectedlines2, f.readlines())
# Put commit back and check we can run it if layer isn't in bblayers.conf
os.remove(bbappendfile)
+ result = runCmd("sed 's!\\(#define VERSION\\W*\"[^\"]*\\)\"!\\1-custom\"!' -i ReadMe.c", cwd=tempsrcdir)
result = runCmd('git commit -a -m "Add our custom version"', cwd=tempsrcdir)
result = runCmd('bitbake-layers remove-layer %s' % templayerdir, cwd=self.builddir)
result = runCmd('devtool update-recipe %s -a %s' % (testrecipe, templayerdir))
@@ -1357,7 +1376,7 @@ class DevtoolUpdateTests(DevtoolBase):
with open(bbappendfile, 'r') as f:
self.assertEqual(expectedlines, set(f.readlines()))
# Drop new commit and check SRCREV changes
- result = runCmd('git reset HEAD^', cwd=tempsrcdir)
+ result = runCmd('git reset HEAD^ --hard', cwd=tempsrcdir)
result = runCmd('devtool update-recipe -m srcrev %s -a %s' % (testrecipe, templayerdir))
self.assertNotExists(os.path.join(appenddir, testrecipe), 'Patch directory should not be created')
result = runCmd('git rev-parse HEAD', cwd=tempsrcdir)
@@ -1369,6 +1388,7 @@ class DevtoolUpdateTests(DevtoolBase):
self.assertEqual(expectedlines, set(f.readlines()))
# Put commit back and check we can run it if layer isn't in bblayers.conf
os.remove(bbappendfile)
+ result = runCmd('echo "# Additional line" >> Makefile.am', cwd=tempsrcdir)
result = runCmd('git commit -a -m "Change the Makefile"', cwd=tempsrcdir)
result = runCmd('bitbake-layers remove-layer %s' % templayerdir, cwd=self.builddir)
result = runCmd('devtool update-recipe -m srcrev %s -a %s' % (testrecipe, templayerdir))
@@ -1400,11 +1420,12 @@ class DevtoolUpdateTests(DevtoolBase):
# Try building just to ensure we haven't broken that
bitbake("%s" % testrecipe)
# Edit / commit local source
- runCmd('echo "/* Foobar */" >> oe-local-files/makedevs.c', cwd=tempdir)
- runCmd('echo "Foo" > oe-local-files/new-local', cwd=tempdir)
+ runCmd('echo "/* Foobar */" >> makedevs.c', cwd=tempdir)
+ runCmd('echo "Foo" > new-local', cwd=tempdir)
runCmd('echo "Bar" > new-file', cwd=tempdir)
runCmd('git add new-file', cwd=tempdir)
runCmd('git commit -m "Add new file"', cwd=tempdir)
+ runCmd('git add new-local', cwd=tempdir)
runCmd('devtool update-recipe %s' % testrecipe)
expected_status = [(' M', '.*/%s$' % os.path.basename(recipefile)),
(' M', '.*/makedevs/makedevs.c$'),
@@ -1430,8 +1451,8 @@ class DevtoolUpdateTests(DevtoolBase):
self.assertExists(local_file, 'File makedevs.c not created')
self.assertExists(patchfile, 'File new_local not created')
- def test_devtool_update_recipe_local_files_2(self):
- """Check local source files support when oe-local-files is in Git"""
+ def _test_devtool_update_recipe_local_files_2(self):
+ """Check local source files support when editing local files in Git"""
testrecipe = 'devtool-test-local'
recipefile = get_bb_var('FILE', testrecipe)
recipedir = os.path.dirname(recipefile)
@@ -1446,17 +1467,13 @@ class DevtoolUpdateTests(DevtoolBase):
result = runCmd('devtool modify %s -x %s' % (testrecipe, tempdir))
# Check git repo
self._check_src_repo(tempdir)
- # Add oe-local-files to Git
- runCmd('rm oe-local-files/.gitignore', cwd=tempdir)
- runCmd('git add oe-local-files', cwd=tempdir)
- runCmd('git commit -m "Add local sources"', cwd=tempdir)
# Edit / commit local sources
- runCmd('echo "# Foobar" >> oe-local-files/file1', cwd=tempdir)
+ runCmd('echo "# Foobar" >> file1', cwd=tempdir)
runCmd('git commit -am "Edit existing file"', cwd=tempdir)
- runCmd('git rm oe-local-files/file2', cwd=tempdir)
+ runCmd('git rm file2', cwd=tempdir)
runCmd('git commit -m"Remove file"', cwd=tempdir)
- runCmd('echo "Foo" > oe-local-files/new-local', cwd=tempdir)
- runCmd('git add oe-local-files/new-local', cwd=tempdir)
+ runCmd('echo "Foo" > new-local', cwd=tempdir)
+ runCmd('git add new-local', cwd=tempdir)
runCmd('git commit -m "Add new local file"', cwd=tempdir)
runCmd('echo "Gar" > new-file', cwd=tempdir)
runCmd('git add new-file', cwd=tempdir)
@@ -1465,7 +1482,7 @@ class DevtoolUpdateTests(DevtoolBase):
os.path.dirname(recipefile))
# Checkout unmodified file to working copy -> devtool should still pick
# the modified version from HEAD
- runCmd('git checkout HEAD^ -- oe-local-files/file1', cwd=tempdir)
+ runCmd('git checkout HEAD^ -- file1', cwd=tempdir)
runCmd('devtool update-recipe %s' % testrecipe)
expected_status = [(' M', '.*/%s$' % os.path.basename(recipefile)),
(' M', '.*/file1$'),
@@ -1540,7 +1557,7 @@ class DevtoolUpdateTests(DevtoolBase):
# (don't bother with cleaning the recipe on teardown, we won't be building it)
result = runCmd('devtool modify %s' % testrecipe)
# Modify one file
- runCmd('echo "Another line" >> file2', cwd=os.path.join(self.workspacedir, 'sources', testrecipe, 'oe-local-files'))
+ runCmd('echo "Another line" >> file2', cwd=os.path.join(self.workspacedir, 'sources', testrecipe))
self.add_command_to_tearDown('cd %s; rm %s/*; git checkout %s %s' % (os.path.dirname(recipefile), testrecipe, testrecipe, os.path.basename(recipefile)))
result = runCmd('devtool update-recipe %s' % testrecipe)
expected_status = [(' M', '.*/%s/file2$' % testrecipe)]
@@ -1769,6 +1786,8 @@ class DevtoolExtractTests(DevtoolBase):
# Definitions
testrecipe = 'mdadm'
testfile = '/sbin/mdadm'
+ if "usrmerge" in get_bb_var('DISTRO_FEATURES'):
+ testfile = '/usr/sbin/mdadm'
testimage = 'oe-selftest-image'
testcommand = '/sbin/mdadm --help'
# Build an image to run
diff --git a/meta/lib/oeqa/selftest/cases/layerappend.py b/meta/lib/oeqa/selftest/cases/layerappend.py
index 379ed589ad..64b17117cc 100644
--- a/meta/lib/oeqa/selftest/cases/layerappend.py
+++ b/meta/lib/oeqa/selftest/cases/layerappend.py
@@ -37,7 +37,7 @@ FILESEXTRAPATHS:prepend := "${THISDIR}/${PN}:"
SRC_URI:append = " file://appendtest.txt"
sysroot_stage_all:append() {
- install -m 644 ${WORKDIR}/appendtest.txt ${SYSROOT_DESTDIR}/
+ install -m 644 ${UNPACKDIR}/appendtest.txt ${SYSROOT_DESTDIR}/
}
"""
diff --git a/meta/lib/oeqa/selftest/cases/recipetool.py b/meta/lib/oeqa/selftest/cases/recipetool.py
index aebea42502..42202b7831 100644
--- a/meta/lib/oeqa/selftest/cases/recipetool.py
+++ b/meta/lib/oeqa/selftest/cases/recipetool.py
@@ -120,9 +120,15 @@ class RecipetoolAppendTests(RecipetoolBase):
self._try_recipetool_appendfile_fail('/dev/console', self.testfile, ['ERROR: /dev/console cannot be handled by this tool'])
def test_recipetool_appendfile_alternatives(self):
+ lspath = '/bin/ls'
+ dirname = "base_bindir"
+ if "usrmerge" in get_bb_var('DISTRO_FEATURES'):
+ lspath = '/usr/bin/ls'
+ dirname = "bindir"
+
# Now try with a file we know should be an alternative
# (this is very much a fake example, but one we know is reliably an alternative)
- self._try_recipetool_appendfile_fail('/bin/ls', self.testfile, ['ERROR: File /bin/ls is an alternative possibly provided by the following recipes:', 'coreutils', 'busybox'])
+ self._try_recipetool_appendfile_fail(lspath, self.testfile, ['ERROR: File %s is an alternative possibly provided by the following recipes:' % lspath, 'coreutils', 'busybox'])
# Need a test file - should be executable
testfile2 = os.path.join(self.corebase, 'oe-init-build-env')
testfile2name = os.path.basename(testfile2)
@@ -131,12 +137,12 @@ class RecipetoolAppendTests(RecipetoolBase):
'SRC_URI += "file://%s"\n' % testfile2name,
'\n',
'do_install:append() {\n',
- ' install -d ${D}${base_bindir}\n',
- ' install -m 0755 ${WORKDIR}/%s ${D}${base_bindir}/ls\n' % testfile2name,
+ ' install -d ${D}${%s}\n' % dirname,
+ ' install -m 0755 ${UNPACKDIR}/%s ${D}${%s}/ls\n' % (testfile2name, dirname),
'}\n']
- self._try_recipetool_appendfile('coreutils', '/bin/ls', testfile2, '-r coreutils', expectedlines, [testfile2name])
+ self._try_recipetool_appendfile('coreutils', lspath, testfile2, '-r coreutils', expectedlines, [testfile2name])
# Now try bbappending the same file again, contents should not change
- bbappendfile, _ = self._try_recipetool_appendfile('coreutils', '/bin/ls', self.testfile, '-r coreutils', expectedlines, [testfile2name])
+ bbappendfile, _ = self._try_recipetool_appendfile('coreutils', lspath, self.testfile, '-r coreutils', expectedlines, [testfile2name])
# But file should have
copiedfile = os.path.join(os.path.dirname(bbappendfile), 'coreutils', testfile2name)
result = runCmd('diff -q %s %s' % (testfile2, copiedfile), ignore_status=True)
@@ -158,7 +164,7 @@ class RecipetoolAppendTests(RecipetoolBase):
'\n',
'do_install:append() {\n',
' install -d ${D}${datadir}\n',
- ' install -m 0644 ${WORKDIR}/testfile ${D}${datadir}/something\n',
+ ' install -m 0644 ${UNPACKDIR}/testfile ${D}${datadir}/something\n',
'}\n']
self._try_recipetool_appendfile('netbase', '/usr/share/something', self.testfile, '-r netbase', expectedlines, ['testfile'])
# Try adding another file, this time where the source file is executable
@@ -173,8 +179,8 @@ class RecipetoolAppendTests(RecipetoolBase):
'\n',
'do_install:append() {\n',
' install -d ${D}${datadir}\n',
- ' install -m 0644 ${WORKDIR}/testfile ${D}${datadir}/something\n',
- ' install -m 0755 ${WORKDIR}/%s ${D}${datadir}/scriptname\n' % testfile2name,
+ ' install -m 0644 ${UNPACKDIR}/testfile ${D}${datadir}/something\n',
+ ' install -m 0755 ${UNPACKDIR}/%s ${D}${datadir}/scriptname\n' % testfile2name,
'}\n']
self._try_recipetool_appendfile('netbase', '/usr/share/scriptname', testfile2, '-r netbase', expectedlines, ['testfile', testfile2name])
@@ -186,7 +192,7 @@ class RecipetoolAppendTests(RecipetoolBase):
'\n',
'do_install:append() {\n',
' install -d ${D}${bindir}\n',
- ' install -m 0755 ${WORKDIR}/testfile ${D}${bindir}/selftest-recipetool-testbin\n',
+ ' install -m 0755 ${UNPACKDIR}/testfile ${D}${bindir}/selftest-recipetool-testbin\n',
'}\n']
_, output = self._try_recipetool_appendfile('netbase', '/usr/bin/selftest-recipetool-testbin', self.testfile, '-r netbase', expectedlines, ['testfile'])
self.assertNotIn('WARNING: ', output)
@@ -201,7 +207,7 @@ class RecipetoolAppendTests(RecipetoolBase):
'\n',
'do_install:append:mymachine() {\n',
' install -d ${D}${datadir}\n',
- ' install -m 0644 ${WORKDIR}/testfile ${D}${datadir}/something\n',
+ ' install -m 0644 ${UNPACKDIR}/testfile ${D}${datadir}/something\n',
'}\n']
_, output = self._try_recipetool_appendfile('netbase', '/usr/share/something', self.testfile, '-r netbase -m mymachine', expectedlines, ['mymachine/testfile'])
self.assertNotIn('WARNING: ', output)
@@ -235,7 +241,7 @@ class RecipetoolAppendTests(RecipetoolBase):
'\n',
'do_install:append() {\n',
' install -d ${D}${datadir}\n',
- ' install -m 0644 ${WORKDIR}/testfile ${D}${datadir}/selftest-replaceme-subdir\n',
+ ' install -m 0644 ${UNPACKDIR}/testfile ${D}${datadir}/selftest-replaceme-subdir\n',
'}\n']
_, output = self._try_recipetool_appendfile('selftest-recipetool-appendfile', '/usr/share/selftest-replaceme-subdir', self.testfile, '', expectedlines, ['testfile'])
self.assertNotIn('WARNING: ', output)
@@ -262,7 +268,7 @@ class RecipetoolAppendTests(RecipetoolBase):
'\n',
'do_install:append() {\n',
' install -d ${D}${sysconfdir}\n',
- ' install -m 0644 ${WORKDIR}/testfile ${D}${sysconfdir}/selftest-replaceme-patched\n',
+ ' install -m 0644 ${UNPACKDIR}/testfile ${D}${sysconfdir}/selftest-replaceme-patched\n',
'}\n']
_, output = self._try_recipetool_appendfile('selftest-recipetool-appendfile', '/etc/selftest-replaceme-patched', self.testfile, '', expectedlines, ['testfile'])
for line in output.splitlines():
@@ -280,7 +286,7 @@ class RecipetoolAppendTests(RecipetoolBase):
'\n',
'do_install:append() {\n',
' install -d ${D}${datadir}\n',
- ' install -m 0644 ${WORKDIR}/testfile ${D}${datadir}/selftest-replaceme-scripted\n',
+ ' install -m 0644 ${UNPACKDIR}/testfile ${D}${datadir}/selftest-replaceme-scripted\n',
'}\n']
_, output = self._try_recipetool_appendfile('selftest-recipetool-appendfile', '/usr/share/selftest-replaceme-scripted', self.testfile, '', expectedlines, ['testfile'])
self.assertNotIn('WARNING: ', output)
@@ -303,7 +309,7 @@ class RecipetoolAppendTests(RecipetoolBase):
'\n',
'do_install:append() {\n',
' install -d ${D}${datadir}\n',
- ' install -m 0644 ${WORKDIR}/testfile ${D}${datadir}/selftest-replaceme-postinst\n',
+ ' install -m 0644 ${UNPACKDIR}/testfile ${D}${datadir}/selftest-replaceme-postinst\n',
'}\n']
_, output = self._try_recipetool_appendfile('selftest-recipetool-appendfile', '/usr/share/selftest-replaceme-postinst', self.testfile, '-r selftest-recipetool-appendfile', expectedlines, ['testfile'])
diff --git a/meta/lib/oeqa/selftest/cases/recipeutils.py b/meta/lib/oeqa/selftest/cases/recipeutils.py
index 2cb4445f81..9949737172 100644
--- a/meta/lib/oeqa/selftest/cases/recipeutils.py
+++ b/meta/lib/oeqa/selftest/cases/recipeutils.py
@@ -72,7 +72,7 @@ class RecipeUtilsTests(OESelftestTestCase):
expected_patch = """
--- a/recipes-test/recipeutils/recipeutils-test_1.2.bb
+++ b/recipes-test/recipeutils/recipeutils-test_1.2.bb
-@@ -8,6 +8,4 @@
+@@ -11,6 +11,4 @@
BBCLASSEXTEND = "native nativesdk"
@@ -97,7 +97,7 @@ class RecipeUtilsTests(OESelftestTestCase):
expected_patch = """
--- a/recipes-test/recipeutils/recipeutils-test_1.2.bb
+++ b/recipes-test/recipeutils/recipeutils-test_1.2.bb
-@@ -8,6 +8,3 @@
+@@ -11,6 +11,3 @@
BBCLASSEXTEND = "native nativesdk"
diff --git a/meta/lib/oeqa/selftest/cases/runtime_test.py b/meta/lib/oeqa/selftest/cases/runtime_test.py
index 12000aac16..13aa5f16c9 100644
--- a/meta/lib/oeqa/selftest/cases/runtime_test.py
+++ b/meta/lib/oeqa/selftest/cases/runtime_test.py
@@ -273,7 +273,7 @@ TEST_RUNQEMUPARAMS += " slirp"
import subprocess, os
distro = oe.lsb.distro_identifier()
- if distro and (distro in ['debian-9', 'debian-10', 'centos-7', 'centos-8', 'ubuntu-16.04', 'ubuntu-18.04'] or
+ if distro and (distro in ['debian-9', 'debian-10', 'centos-7', 'centos-8', 'centos-9', 'ubuntu-16.04', 'ubuntu-18.04'] or
distro.startswith('almalinux') or distro.startswith('rocky')):
self.skipTest('virgl headless cannot be tested with %s' %(distro))
diff --git a/meta/lib/oeqa/selftest/cases/sstatetests.py b/meta/lib/oeqa/selftest/cases/sstatetests.py
index 86d6cd7464..94ad6e38b6 100644
--- a/meta/lib/oeqa/selftest/cases/sstatetests.py
+++ b/meta/lib/oeqa/selftest/cases/sstatetests.py
@@ -917,15 +917,25 @@ INHERIT += "base-do-configure-modified"
""",
expected_sametmp_output, expected_difftmp_output)
-@OETestTag("yocto-mirrors")
-class SStateMirrors(SStateBase):
- def check_bb_output(self, output, exceptions, check_cdn):
+class SStateCheckObjectPresence(SStateBase):
+ def check_bb_output(self, output, targets, exceptions, check_cdn):
def is_exception(object, exceptions):
for e in exceptions:
if re.search(e, object):
return True
return False
+ # sstate is checked for existence of these, but they never get written out to begin with
+ exceptions += ["{}.*image_qa".format(t) for t in targets.split()]
+ exceptions += ["{}.*deploy_source_date_epoch".format(t) for t in targets.split()]
+ exceptions += ["{}.*image_complete".format(t) for t in targets.split()]
+ exceptions += ["linux-yocto.*shared_workdir"]
+ # these get influnced by IMAGE_FSTYPES tweaks in yocto-autobuilder-helper's config.json (on x86-64)
+ # additionally, they depend on noexec (thus, absent stamps) package, install, etc. image tasks,
+ # which makes tracing other changes difficult
+ exceptions += ["{}.*create_spdx".format(t) for t in targets.split()]
+ exceptions += ["{}.*create_runtime_spdx".format(t) for t in targets.split()]
+
output_l = output.splitlines()
for l in output_l:
if l.startswith("Sstate summary"):
@@ -960,18 +970,9 @@ class SStateMirrors(SStateBase):
self.assertEqual(len(failed_urls), missing_objects, "Amount of reported missing objects does not match failed URLs: {}\nFailed URLs:\n{}\nFetcher diagnostics:\n{}".format(missing_objects, "\n".join(failed_urls), "\n".join(failed_urls_extrainfo)))
self.assertEqual(len(failed_urls), 0, "Missing objects in the cache:\n{}\nFetcher diagnostics:\n{}".format("\n".join(failed_urls), "\n".join(failed_urls_extrainfo)))
+@OETestTag("yocto-mirrors")
+class SStateMirrors(SStateCheckObjectPresence):
def run_test(self, machine, targets, exceptions, check_cdn = True, ignore_errors = False):
- # sstate is checked for existence of these, but they never get written out to begin with
- exceptions += ["{}.*image_qa".format(t) for t in targets.split()]
- exceptions += ["{}.*deploy_source_date_epoch".format(t) for t in targets.split()]
- exceptions += ["{}.*image_complete".format(t) for t in targets.split()]
- exceptions += ["linux-yocto.*shared_workdir"]
- # these get influnced by IMAGE_FSTYPES tweaks in yocto-autobuilder-helper's config.json (on x86-64)
- # additionally, they depend on noexec (thus, absent stamps) package, install, etc. image tasks,
- # which makes tracing other changes difficult
- exceptions += ["{}.*create_spdx".format(t) for t in targets.split()]
- exceptions += ["{}.*create_runtime_spdx".format(t) for t in targets.split()]
-
if check_cdn:
self.config_sstate(True)
self.append_config("""
@@ -987,7 +988,7 @@ MACHINE = "{}"
bitbake("-S none {}".format(targets))
if ignore_errors:
return
- self.check_bb_output(result.output, exceptions, check_cdn)
+ self.check_bb_output(result.output, targets, exceptions, check_cdn)
def test_cdn_mirror_qemux86_64(self):
exceptions = []
diff --git a/meta/lib/patchtest/repo.py b/meta/lib/patchtest/repo.py
index d3788f466d..5f361ac500 100644
--- a/meta/lib/patchtest/repo.py
+++ b/meta/lib/patchtest/repo.py
@@ -11,6 +11,7 @@
import os
import utils
import logging
+import git
from patch import PatchTestPatch
logger = logging.getLogger('patchtest')
@@ -21,15 +22,17 @@ class PatchTestRepo(object):
# prefixes used for temporal branches/stashes
prefix = 'patchtest'
+
def __init__(self, patch, repodir, commit=None, branch=None):
self._repodir = repodir
+ self._repo = git.Repo.init(repodir)
self._patch = PatchTestPatch(patch)
- self._current_branch = self._get_current_branch()
+ self._current_branch = self._repo.active_branch.name
# targeted branch defined on the patch may be invalid, so make sure there
# is a corresponding remote branch
valid_patch_branch = None
- if self._patch.branch in self.upstream_branches():
+ if self._patch.branch in self._repo.branches:
valid_patch_branch = self._patch.branch
# Target Branch
@@ -52,22 +55,19 @@ class PatchTestRepo(object):
self._workingbranch = "%s_%s" % (PatchTestRepo.prefix, os.getpid())
- # create working branch
- self._exec({'cmd': ['git', 'checkout', '-b', self._workingbranch, self._commit]})
+ # create working branch. Use the '-B' flag so that we just
+ # check out the existing one if it's there
+ self._repo.git.execute(['git', 'checkout', '-B', self._workingbranch, self._commit])
self._patchmerged = False
# Check if patch can be merged using git-am
self._patchcanbemerged = True
try:
- self._exec({'cmd': ['git', 'am', '--keep-cr'], 'input': self._patch.contents})
- except utils.CmdException as ce:
- self._exec({'cmd': ['git', 'am', '--abort']})
+ # Make sure to get the absolute path of the file
+ self._repo.git.execute(['git', 'apply', '--check', os.path.abspath(self._patch.path)], with_exceptions=True)
+ except git.exc.GitCommandError as ce:
self._patchcanbemerged = False
- finally:
- # if patch was applied, remove it
- if self._patchcanbemerged:
- self._exec({'cmd':['git', 'reset', '--hard', self._commit]})
# for debugging purposes, print all repo parameters
logger.debug("Parameters")
@@ -97,78 +97,24 @@ class PatchTestRepo(object):
def canbemerged(self):
return self._patchcanbemerged
- def _exec(self, cmds):
- _cmds = []
- if isinstance(cmds, dict):
- _cmds.append(cmds)
- elif isinstance(cmds, list):
- _cmds = cmds
- else:
- raise utils.CmdException({'cmd':str(cmds)})
-
- results = []
- cmdfailure = False
- try:
- results = utils.exec_cmds(_cmds, self._repodir)
- except utils.CmdException as ce:
- cmdfailure = True
- raise ce
- finally:
- if cmdfailure:
- for cmd in _cmds:
- logger.debug("CMD: %s" % ' '.join(cmd['cmd']))
- else:
- for result in results:
- cmd, rc, stdout, stderr = ' '.join(result['cmd']), result['returncode'], result['stdout'], result['stderr']
- logger.debug("CMD: %s RCODE: %s STDOUT: %s STDERR: %s" % (cmd, rc, stdout, stderr))
-
- return results
-
- def _get_current_branch(self, commit='HEAD'):
- cmd = {'cmd':['git', 'rev-parse', '--abbrev-ref', commit]}
- cb = self._exec(cmd)[0]['stdout']
- if cb == commit:
- logger.warning('You may be detached so patchtest will checkout to master after execution')
- cb = 'master'
- return cb
-
def _get_commitid(self, commit):
if not commit:
return None
try:
- cmd = {'cmd':['git', 'rev-parse', '--short', commit]}
- return self._exec(cmd)[0]['stdout']
- except utils.CmdException as ce:
- # try getting the commit under any remotes
- cmd = {'cmd':['git', 'remote']}
- remotes = self._exec(cmd)[0]['stdout']
- for remote in remotes.splitlines():
- cmd = {'cmd':['git', 'rev-parse', '--short', '%s/%s' % (remote, commit)]}
- try:
- return self._exec(cmd)[0]['stdout']
- except utils.CmdException:
- pass
+ return self._repo.rev_parse(commit).hexsha
+ except Exception as e:
+ print(f"Couldn't find commit {commit} in repo")
return None
- def upstream_branches(self):
- cmd = {'cmd':['git', 'branch', '--remotes']}
- remote_branches = self._exec(cmd)[0]['stdout']
-
- # just get the names, without the remote name
- branches = set(branch.split('/')[-1] for branch in remote_branches.splitlines())
- return branches
-
def merge(self):
if self._patchcanbemerged:
- self._exec({'cmd': ['git', 'am', '--keep-cr'],
- 'input': self._patch.contents,
- 'updateenv': {'PTRESOURCE':self._patch.path}})
+ self._repo.git.execute(['git', 'am', '--keep-cr', os.path.abspath(self._patch.path)])
self._patchmerged = True
def clean(self):
- self._exec({'cmd':['git', 'checkout', '%s' % self._current_branch]})
- self._exec({'cmd':['git', 'branch', '-D', self._workingbranch]})
+ self._repo.git.execute(['git', 'checkout', self._current_branch])
+ self._repo.git.execute(['git', 'branch', '-D', self._workingbranch])
self._patchmerged = False
diff --git a/meta/lib/patchtest/requirements.txt b/meta/lib/patchtest/requirements.txt
index ba55ff905e..4247b91f09 100644
--- a/meta/lib/patchtest/requirements.txt
+++ b/meta/lib/patchtest/requirements.txt
@@ -1,5 +1,6 @@
boto3
git-pw>=2.5.0
+GitPython
jinja2
pylint
pyparsing>=3.0.9
diff --git a/meta/lib/patchtest/selftest/files/TestMbox.test_bugzilla_entry_format.fail b/meta/lib/patchtest/selftest/files/TestMbox.test_bugzilla_entry_format.fail
index 80f409e952..854d7eb8c7 100644
--- a/meta/lib/patchtest/selftest/files/TestMbox.test_bugzilla_entry_format.fail
+++ b/meta/lib/patchtest/selftest/files/TestMbox.test_bugzilla_entry_format.fail
@@ -1,25 +1,26 @@
-From fdfd605e565d874502522c4b70b786c8c5aa0bad Mon Sep 17 00:00:00 2001
+From f06e14633723c1e78bc7a4b0fd0d3b79d09f0c68 Mon Sep 17 00:00:00 2001
From: name@somedomain.com <email@address.com>
-Date: Fri, 17 Feb 2017 16:29:21 -0600
-Subject: [PATCH] README: adds 'foo' to the header
+Date: Thu, 2 May 2024 10:21:45 -0400
+Subject: [PATCH] README.OE-Core.md: Add foo to header
-This test patch adds 'foo' to the header
+This test patch adds 'foo' to the header of README.OE-Core.md
[YOCTO 1234]
-Signed-off-by: Daniela Plascencia <daniela.plascencia@linux.intel.com>
+Signed-off-by: Trevor Gamblin <tgamblin@baylibre.com>
---
- README | 1 +
+ README.OE-Core.md | 1 +
1 file changed, 1 insertion(+)
-diff --git a/README b/README
-index 521916cd4f..cdf29dcea3 100644
---- a/README
-+++ b/README
+diff --git a/README.OE-Core.md b/README.OE-Core.md
+index 687c58e410c..9d863891134 100644
+--- a/README.OE-Core.md
++++ b/README.OE-Core.md
@@ -1,3 +1,4 @@
+**** FOO ****
OpenEmbedded-Core
=================
+
+--
+2.44.0
---
-2.11.0
diff --git a/meta/lib/patchtest/utils.py b/meta/lib/patchtest/utils.py
index dd0abc22d9..8eddf3e85f 100644
--- a/meta/lib/patchtest/utils.py
+++ b/meta/lib/patchtest/utils.py
@@ -14,109 +14,6 @@ import logging
import re
import mailbox
-class CmdException(Exception):
- """ Simple exception class where its attributes are the ones passed when instantiated """
- def __init__(self, cmd):
- self._cmd = cmd
- def __getattr__(self, name):
- value = None
- if self._cmd.has_key(name):
- value = self._cmd[name]
- return value
-
-def exec_cmd(cmd, cwd, ignore_error=False, input=None, strip=True, updateenv={}):
- """
- Input:
-
- cmd: dict containing the following keys:
-
- cmd : the command itself as an array of strings
- ignore_error: if False, no exception is raised
- strip: indicates if strip is done on the output (stdout and stderr)
- input: input data to the command (stdin)
- updateenv: environment variables to be appended to the current
- process environment variables
-
- NOTE: keys 'ignore_error' and 'input' are optional; if not included,
- the defaults are the ones specify in the arguments
- cwd: directory where commands are executed
- ignore_error: raise CmdException if command fails to execute and
- this value is False
- input: input data (stdin) for the command
-
- Output: dict containing the following keys:
-
- cmd: the same as input
- ignore_error: the same as input
- strip: the same as input
- input: the same as input
- stdout: Standard output after command's execution
- stderr: Standard error after command's execution
- returncode: Return code after command's execution
-
- """
- cmddefaults = {
- 'cmd':'',
- 'ignore_error':ignore_error,
- 'strip':strip,
- 'input':input,
- 'updateenv':updateenv,
- }
-
- # update input values if necessary
- cmddefaults.update(cmd)
-
- _cmd = cmddefaults
-
- if not _cmd['cmd']:
- raise CmdException({'cmd':None, 'stderr':'no command given'})
-
- # update the environment
- env = os.environ
- env.update(_cmd['updateenv'])
-
- _command = [e for e in _cmd['cmd']]
- p = subprocess.Popen(_command,
- stdin=subprocess.PIPE,
- stdout=subprocess.PIPE,
- stderr=subprocess.PIPE,
- universal_newlines=True,
- cwd=cwd,
- env=env)
-
- # execute the command and strip output
- (_stdout, _stderr) = p.communicate(_cmd['input'])
- if _cmd['strip']:
- _stdout, _stderr = map(str.strip, [_stdout, _stderr])
-
- # generate the result
- result = _cmd
- result.update({'cmd':_command,'stdout':_stdout,'stderr':_stderr,'returncode':p.returncode})
-
- # launch exception if necessary
- if not _cmd['ignore_error'] and p.returncode:
- raise CmdException(result)
-
- return result
-
-def exec_cmds(cmds, cwd):
- """ Executes commands
-
- Input:
- cmds: Array of commands
- cwd: directory where commands are executed
-
- Output: Array of output commands
- """
- results = []
- _cmds = cmds
-
- for cmd in _cmds:
- result = exec_cmd(cmd, cwd)
- results.append(result)
-
- return results
-
def logger_create(name):
logger = logging.getLogger(name)
loggerhandler = logging.StreamHandler()
@@ -125,20 +22,6 @@ def logger_create(name):
logger.setLevel(logging.INFO)
return logger
-def get_subject_prefix(path):
- prefix = ""
- mbox = mailbox.mbox(path)
-
- if len(mbox):
- subject = mbox[0]['subject']
- if subject:
- pattern = re.compile(r"(\[.*\])", re.DOTALL)
- match = pattern.search(subject)
- if match:
- prefix = match.group(1)
-
- return prefix
-
def valid_branch(branch):
""" Check if branch is valid name """
lbranch = branch.lower()
@@ -153,7 +36,17 @@ def valid_branch(branch):
def get_branch(path):
""" Get the branch name from mbox """
- fullprefix = get_subject_prefix(path)
+ fullprefix = ""
+ mbox = mailbox.mbox(path)
+
+ if len(mbox):
+ subject = mbox[0]['subject']
+ if subject:
+ pattern = re.compile(r"(\[.*\])", re.DOTALL)
+ match = pattern.search(subject)
+ if match:
+ fullprefix = match.group(1)
+
branch, branches, valid_branches = None, [], []
if fullprefix:
diff --git a/meta/recipes-bsp/acpid/acpid.inc b/meta/recipes-bsp/acpid/acpid.inc
index 7b2f1c71c5..3d6f75f90f 100644
--- a/meta/recipes-bsp/acpid/acpid.inc
+++ b/meta/recipes-bsp/acpid/acpid.inc
@@ -27,13 +27,13 @@ SYSTEMD_SERVICE:${PN} = "acpid.service"
do_install:append () {
install -d ${D}${sysconfdir}/init.d
- sed -e 's,/usr/sbin,${sbindir},g' ${WORKDIR}/init > ${D}${sysconfdir}/init.d/acpid
+ sed -e 's,/usr/sbin,${sbindir},g' ${UNPACKDIR}/init > ${D}${sysconfdir}/init.d/acpid
chmod 755 ${D}${sysconfdir}/init.d/acpid
install -d ${D}${sysconfdir}/acpi
install -d ${D}${sysconfdir}/acpi/events
install -d ${D}${systemd_system_unitdir}
- install -m 0644 ${WORKDIR}/acpid.service ${D}${systemd_system_unitdir}
+ install -m 0644 ${UNPACKDIR}/acpid.service ${D}${systemd_system_unitdir}
sed -i -e 's,@SBINDIR@,${sbindir},g' ${D}${systemd_system_unitdir}/acpid.service
}
diff --git a/meta/recipes-bsp/alsa-state/alsa-state.bb b/meta/recipes-bsp/alsa-state/alsa-state.bb
index bd7f610f46..099fbd3b9d 100644
--- a/meta/recipes-bsp/alsa-state/alsa-state.bb
+++ b/meta/recipes-bsp/alsa-state/alsa-state.bb
@@ -21,7 +21,8 @@ SRC_URI = "\
file://alsa-state-init \
"
-S = "${WORKDIR}"
+S = "${WORKDIR}/sources"
+UNPACKDIR = "${S}"
# As the recipe doesn't inherit systemd.bbclass, we need to set this variable
# manually to avoid unnecessary postinst/preinst generated.
@@ -38,15 +39,15 @@ INITSCRIPT_PARAMS = "start 39 S . stop 31 0 6 ."
do_install() {
# Only install the init script when 'sysvinit' is in DISTRO_FEATURES.
if ${@bb.utils.contains('DISTRO_FEATURES','sysvinit','true','false',d)}; then
- sed -i -e "s:#STATEDIR#:${localstatedir}/lib/alsa:g" ${WORKDIR}/alsa-state-init
+ sed -i -e "s:#STATEDIR#:${localstatedir}/lib/alsa:g" ${S}/alsa-state-init
install -d ${D}${sysconfdir}/init.d
- install -m 0755 ${WORKDIR}/alsa-state-init ${D}${sysconfdir}/init.d/alsa-state
+ install -m 0755 ${S}/alsa-state-init ${D}${sysconfdir}/init.d/alsa-state
fi
install -d ${D}/${localstatedir}/lib/alsa
install -d ${D}${sysconfdir}
- install -m 0644 ${WORKDIR}/asound.conf ${D}${sysconfdir}
- install -m 0644 ${WORKDIR}/*.state ${D}${localstatedir}/lib/alsa
+ install -m 0644 ${S}/asound.conf ${D}${sysconfdir}
+ install -m 0644 ${S}/*.state ${D}${localstatedir}/lib/alsa
}
PACKAGES += "alsa-states"
diff --git a/meta/recipes-bsp/formfactor/formfactor_0.0.bb b/meta/recipes-bsp/formfactor/formfactor_0.0.bb
index 1eaf30746b..4714bb2e5e 100644
--- a/meta/recipes-bsp/formfactor/formfactor_0.0.bb
+++ b/meta/recipes-bsp/formfactor/formfactor_0.0.bb
@@ -7,7 +7,9 @@ LICENSE = "MIT"
LIC_FILES_CHKSUM = "file://${COREBASE}/meta/COPYING.MIT;md5=3da9cfbcb788c80a0384361b4de20420"
SRC_URI = "file://config file://machconfig"
-S = "${WORKDIR}"
+
+S = "${WORKDIR}/sources"
+UNPACKDIR = "${S}"
PACKAGE_ARCH = "${MACHINE_ARCH}"
INHIBIT_DEFAULT_DEPS = "1"
diff --git a/meta/recipes-bsp/gnu-efi/gnu-efi/parallel-make-archives.patch b/meta/recipes-bsp/gnu-efi/gnu-efi/0001-Fix-parallel-make-failure-for-archives.patch
index 63d9b6fc31..3c11baca0c 100644
--- a/meta/recipes-bsp/gnu-efi/gnu-efi/parallel-make-archives.patch
+++ b/meta/recipes-bsp/gnu-efi/gnu-efi/0001-Fix-parallel-make-failure-for-archives.patch
@@ -1,4 +1,4 @@
-From f56ddb00a656af2e84f839738fad19909ac65047 Mon Sep 17 00:00:00 2001
+From 70e30774debb9ab5d53a29c183f86fc569661b7c Mon Sep 17 00:00:00 2001
From: Saul Wold <sgw@linux.intel.com>
Date: Sun, 9 Mar 2014 15:22:15 +0200
Subject: [PATCH] Fix parallel make failure for archives
@@ -19,16 +19,15 @@ Signed-off-by: Darren Hart <dvhart@linux.intel.com>
Signed-off-by: California Sullivan <california.l.sullivan@intel.com>
[Rebased for 3.0.8]
Signed-off-by: Yi Zhao <yi.zhao@windriver.com>
-
---
lib/Makefile | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/lib/Makefile b/lib/Makefile
-index 1fc6a47..54b0ca7 100644
+index ec1f9e3..79a794d 100644
--- a/lib/Makefile
+++ b/lib/Makefile
-@@ -77,7 +77,7 @@ libsubdirs:
+@@ -75,7 +75,7 @@ libsubdirs:
$(OBJS): libsubdirs
libefi.a: $(OBJS)
@@ -36,4 +35,7 @@ index 1fc6a47..54b0ca7 100644
+ $(AR) $(ARFLAGS) $@ $(OBJS)
clean:
- rm -f libefi.a *~ $(OBJS) */*.o
+ @rm -vf libefi.a *~ $(OBJS) */*.o
+--
+2.25.1
+
diff --git a/meta/recipes-bsp/gnu-efi/gnu-efi/0001-riscv64-adjust-type-definitions.patch b/meta/recipes-bsp/gnu-efi/gnu-efi/0001-riscv64-adjust-type-definitions.patch
deleted file mode 100644
index 3475606264..0000000000
--- a/meta/recipes-bsp/gnu-efi/gnu-efi/0001-riscv64-adjust-type-definitions.patch
+++ /dev/null
@@ -1,34 +0,0 @@
-From 1de509497826faa0ad84b82f5e2c3d21ee613459 Mon Sep 17 00:00:00 2001
-From: Moody Liu <mooodyhunter@outlook.com>
-Date: Sat, 13 May 2023 17:39:16 +0100
-Subject: [PATCH] riscv64: adjust type definitions
-
-CHAR8 needs to be defined while BOOLEAN should be removed
-here to prevent typedef conflicts
-
-Upstream-Status: Backport [https://sourceforge.net/p/gnu-efi/code/ci/1de509497826faa0ad84b82f5e2c3d21ee613459/]
-Signed-off-by: Moody Liu <mooodyhunter@outlook.com>
----
- inc/riscv64/efibind.h | 4 +---
- 1 file changed, 1 insertion(+), 3 deletions(-)
-
-diff --git a/inc/riscv64/efibind.h b/inc/riscv64/efibind.h
-index 4fdf81d..d8b4f39 100644
---- a/inc/riscv64/efibind.h
-+++ b/inc/riscv64/efibind.h
-@@ -32,11 +32,9 @@ typedef uint16_t UINT16;
- typedef int16_t INT16;
- typedef uint8_t UINT8;
- typedef int8_t INT8;
-+typedef char CHAR8;
- typedef wchar_t CHAR16;
- #define WCHAR CHAR16
--#ifndef BOOLEAN
--typedef uint8_t BOOLEAN;
--#endif
- #undef VOID
- typedef void VOID;
- typedef int64_t INTN;
---
-2.41.0
-
diff --git a/meta/recipes-bsp/gnu-efi/gnu-efi/0001-riscv64-ignore-unknown-relocs.patch b/meta/recipes-bsp/gnu-efi/gnu-efi/0001-riscv64-ignore-unknown-relocs.patch
deleted file mode 100644
index 5b3c152c5e..0000000000
--- a/meta/recipes-bsp/gnu-efi/gnu-efi/0001-riscv64-ignore-unknown-relocs.patch
+++ /dev/null
@@ -1,32 +0,0 @@
-From 708f66acfec9a86f237726d45095cbd380fd83ca Mon Sep 17 00:00:00 2001
-From: Callum Farmer <gmbr3@opensuse.org>
-Date: Wed, 21 Jun 2023 11:32:28 +0100
-Subject: [PATCH] riscv64: ignore unknown relocs
-
-Sometimes ld emits relocs such as R_RISCV_64 for unwind symbols
-these don't need to be handled yet so just can be skipped otherwise
-the binary will never load
-
-Upstream-Status: Backport [https://sourceforge.net/p/gnu-efi/code/ci/708f66acfec9a86f237726d45095cbd380fd83ca/]
-Signed-off-by: Callum Farmer <gmbr3@opensuse.org>
----
- gnuefi/reloc_riscv64.c | 3 +--
- 1 file changed, 1 insertion(+), 2 deletions(-)
-
-diff --git a/gnuefi/reloc_riscv64.c b/gnuefi/reloc_riscv64.c
-index 0b02d83..e429602 100644
---- a/gnuefi/reloc_riscv64.c
-+++ b/gnuefi/reloc_riscv64.c
-@@ -81,8 +81,7 @@ EFI_STATUS EFIAPI _relocate(long ldbase, Elf_Dyn *dyn)
- *addr = ldbase + rel->r_addend;
- break;
- default:
-- /* Panic */
-- while (1) ;
-+ break;
- }
- rel = (Elf_Rela *)((char *)rel + relent);
- relsz -= relent;
---
-2.41.0
-
diff --git a/meta/recipes-bsp/gnu-efi/gnu-efi/no-werror.patch b/meta/recipes-bsp/gnu-efi/gnu-efi/0002-Do-not-treat-warnings-as-errors.patch
index db2bcf70b7..37befc8b4c 100644
--- a/meta/recipes-bsp/gnu-efi/gnu-efi/no-werror.patch
+++ b/meta/recipes-bsp/gnu-efi/gnu-efi/0002-Do-not-treat-warnings-as-errors.patch
@@ -1,14 +1,24 @@
-Do not treat warnings as errors
+From 89218bb3c5eb7b97987769cb4f7bf8323d35ca7e Mon Sep 17 00:00:00 2001
+From: Khem Raj <raj.khem@gmail.com>
+Date: Thu, 16 May 2024 21:38:32 +0800
+Subject: [PATCH] Do not treat warnings as errors
There are additional warnings found with musl which are
treated as errors and fails the build, we have more combinations
then upstream supports to handle
-Signed-off-by: Khem Raj <raj.khem@gmail.com>
Upstream-Status: Inappropriate [OE specific]
+
+Signed-off-by: Khem Raj <raj.khem@gmail.com>
+---
+ Make.defaults | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/Make.defaults b/Make.defaults
+index 0068e31..b643285 100755
--- a/Make.defaults
+++ b/Make.defaults
-@@ -187,7 +187,7 @@ CFLAGS += $(ARCH3264) -g -O2 -Wall -Wex
+@@ -190,7 +190,7 @@ CFLAGS += $(ARCH3264) -g -O2 -Wall -Wextra -Werror \
-funsigned-char -fshort-wchar -fno-strict-aliasing \
-ffreestanding -fno-stack-protector
else
@@ -16,4 +26,7 @@ Upstream-Status: Inappropriate [OE specific]
+CFLAGS += $(ARCH3264) -g -O2 -Wall -Wextra -Wno-pointer-sign \
-funsigned-char -fshort-wchar -fno-strict-aliasing \
-ffreestanding -fno-stack-protector -fno-stack-check \
- -fno-stack-check \
+ $(if $(findstring gcc,$(CC)),-fno-merge-all-constants,)
+--
+2.25.1
+
diff --git a/meta/recipes-bsp/gnu-efi/gnu-efi/gnu-efi-3.0.9-fix-clang-build.patch b/meta/recipes-bsp/gnu-efi/gnu-efi/gnu-efi-3.0.9-fix-clang-build.patch
deleted file mode 100644
index c6d660095e..0000000000
--- a/meta/recipes-bsp/gnu-efi/gnu-efi/gnu-efi-3.0.9-fix-clang-build.patch
+++ /dev/null
@@ -1,24 +0,0 @@
-Fix building with CLANG-9.0.0
-
-Fixes
-clang-9: error: unknown argument: '-maccumulate-outgoing-args'
-
-Upstream-Status: Submitted [https://sourceforge.net/p/gnu-efi/patches/70/]
-Signed-off-by: Khem Raj <raj.khem@gmail.com>
-
---- a/Make.defaults
-+++ b/Make.defaults
-@@ -110,10 +110,10 @@
- || ( [ $(GCCVERSION) -eq "4" ] \
- && [ $(GCCMINOR) -ge "7" ] ) ) \
- && echo 1)
-- ifeq ($(GCCNEWENOUGH),1)
-- CPPFLAGS += -DGNU_EFI_USE_MS_ABI -maccumulate-outgoing-args --std=c11
-- else ifeq ($(USING_CLANG),clang)
-+ ifeq ($(USING_CLANG),clang)
- CPPFLAGS += -DGNU_EFI_USE_MS_ABI --std=c11
-+ else ifeq ($(GCCNEWENOUGH),1)
-+ CPPFLAGS += -DGNU_EFI_USE_MS_ABI -maccumulate-outgoing-args --std=c11
- endif
-
- CFLAGS += -mno-red-zone
diff --git a/meta/recipes-bsp/gnu-efi/gnu-efi_3.0.17.bb b/meta/recipes-bsp/gnu-efi/gnu-efi_3.0.18.bb
index 43b7cc7529..a56a85bdef 100644
--- a/meta/recipes-bsp/gnu-efi/gnu-efi_3.0.17.bb
+++ b/meta/recipes-bsp/gnu-efi/gnu-efi_3.0.18.bb
@@ -13,13 +13,10 @@ LIC_FILES_CHKSUM = "file://gnuefi/crt0-efi-arm.S;beginline=4;endline=16;md5=e582
"
SRC_URI = "${SOURCEFORGE_MIRROR}/${BPN}/files/${BP}.tar.bz2 \
- file://parallel-make-archives.patch \
- file://gnu-efi-3.0.9-fix-clang-build.patch \
- file://0001-riscv64-adjust-type-definitions.patch \
- file://0001-riscv64-ignore-unknown-relocs.patch \
- file://no-werror.patch \
+ file://0001-Fix-parallel-make-failure-for-archives.patch \
+ file://0002-Do-not-treat-warnings-as-errors.patch \
"
-SRC_URI[sha256sum] = "7807e903349343a7a142ebb934703a2872235e89688cf586c032b0a1087bcaf4"
+SRC_URI[sha256sum] = "7f212c96ee66547eeefb531267b641e5473d7d8529f0bd8ccdefd33cf7413f5c"
COMPATIBLE_HOST = "(x86_64.*|i.86.*|aarch64.*|arm.*|riscv64.*)-linux"
COMPATIBLE_HOST:armv4 = 'null'
diff --git a/meta/recipes-bsp/grub/files/0001-Disable-mfpmath-sse-as-well-when-SSE-is-disabled.patch b/meta/recipes-bsp/grub/files/0001-Disable-mfpmath-sse-as-well-when-SSE-is-disabled.patch
deleted file mode 100644
index 05a4697a73..0000000000
--- a/meta/recipes-bsp/grub/files/0001-Disable-mfpmath-sse-as-well-when-SSE-is-disabled.patch
+++ /dev/null
@@ -1,44 +0,0 @@
-From 006799e9c4babe8a8340a24501b253e759614a2d Mon Sep 17 00:00:00 2001
-From: Khem Raj <raj.khem@gmail.com>
-Date: Wed, 13 Jan 2016 19:17:31 +0000
-Subject: [PATCH] Disable -mfpmath=sse as well when SSE is disabled
-
-Fixes
-
-configure:20574: i586-poky-linux-gcc -m32 -march=core2 -msse3
--mtune=generic -mfpmath=sse
---sysroot=/usr/local/dev/yocto/grubtest2/build/tmp/sysroots/emenlow -o
-conftest -O2 -pipe -g -feliminate-unused-debug-types -Wall -W -Wshadow
--Wpointer-arith -Wmissing-prototypes -Wundef -Wstrict-prototypes -g
--falign-jumps=1 -falign-loops=1 -falign-functions=1 -mno-mmx -mno-sse
--mno-sse2 -mno-3dnow -fno-dwarf2-cfi-asm -m32 -fno-stack-protector
--mno-stack-arg-probe -Werror -nostdlib -Wl,--defsym,___main=0x8100
--Wall -W -I$(top_srcdir)/include -I$(top_builddir)/include
--DGRUB_MACHINE_PCBIOS=1 -DGRUB_MACHINE=I386_PC -Wl,-O1
--Wl,--hash-style=gnu -Wl,--as-needed conftest.c >&5
-conftest.c:1:0: error: SSE instruction set disabled, using 387
-arithmetics [-Werror]
-cc1: all warnings being treated as errors
-
-Signed-off-by: Nitin A Kamble <nitin.a.kamble@intel.com>
-Signed-off-by: Khem Raj <raj.khem@gmail.com>
-
-Upstream-Status: Pending
-
----
- configure.ac | 2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
-diff --git a/configure.ac b/configure.ac
-index cd667a2..8263876 100644
---- a/configure.ac
-+++ b/configure.ac
-@@ -846,7 +846,7 @@ fi
- if ( test "x$target_cpu" = xi386 || test "x$target_cpu" = xx86_64 ) && test "x$platform" != xemu; then
- # Some toolchains enable these features by default, but they need
- # registers that aren't set up properly in GRUB.
-- TARGET_CFLAGS="$TARGET_CFLAGS -mno-mmx -mno-sse -mno-sse2 -mno-sse3 -mno-3dnow"
-+ TARGET_CFLAGS="$TARGET_CFLAGS -mno-mmx -mno-sse -mno-sse2 -mno-sse3 -mno-3dnow -mfpmath=387"
- fi
-
- if ( test "x$target_cpu" = xi386 || test "x$target_cpu" = xx86_64 ); then
diff --git a/meta/recipes-bsp/grub/files/grub-module-explicitly-keeps-symbole-.module_license.patch b/meta/recipes-bsp/grub/files/grub-module-explicitly-keeps-symbole-.module_license.patch
index d9012d1dd6..7c8770ce8b 100644
--- a/meta/recipes-bsp/grub/files/grub-module-explicitly-keeps-symbole-.module_license.patch
+++ b/meta/recipes-bsp/grub/files/grub-module-explicitly-keeps-symbole-.module_license.patch
@@ -37,7 +37,7 @@ SYMBOL TABLE:
0000000000000000 l d .modname 0000000000000000 .modname
--------------
-Upstream-Status: Pending
+Upstream-Status: Inappropriate [workaround that needs investigation into @TARGET_STRIP@ behaviour in oe-core vs toolchain used by upstream]
Signed-off-by: Hongxu Jia <hongxu.jia@windriver.com>
diff --git a/meta/recipes-bsp/grub/grub-bootconf_1.00.bb b/meta/recipes-bsp/grub/grub-bootconf_1.00.bb
index 783e30bf38..fed3c7e9a3 100644
--- a/meta/recipes-bsp/grub/grub-bootconf_1.00.bb
+++ b/meta/recipes-bsp/grub/grub-bootconf_1.00.bb
@@ -11,7 +11,8 @@ inherit grub-efi-cfg
require conf/image-uefi.conf
-S = "${WORKDIR}"
+S = "${WORKDIR}/sources"
+UNPACKDIR = "${S}"
GRUB_CFG = "${S}/grub-bootconf"
LABELS = "boot"
diff --git a/meta/recipes-bsp/grub/grub-efi_2.12.bb b/meta/recipes-bsp/grub/grub-efi_2.12.bb
index 9857e8e036..7df77deca3 100644
--- a/meta/recipes-bsp/grub/grub-efi_2.12.bb
+++ b/meta/recipes-bsp/grub/grub-efi_2.12.bb
@@ -58,7 +58,7 @@ do_mkimage() {
# Search for the grub.cfg on the local boot media by using the
# built in cfg file provided via this recipe
- grub-mkimage -v -c ../cfg -p ${EFIDIR} -d ./grub-core/ \
+ grub-mkimage -v -c ${UNPACKDIR}/cfg -p ${EFIDIR} -d ./grub-core/ \
-O ${GRUB_TARGET}-efi -o ./${GRUB_IMAGE_PREFIX}${GRUB_IMAGE} \
${GRUB_MKIMAGE_MODULES}
}
diff --git a/meta/recipes-bsp/grub/grub2.inc b/meta/recipes-bsp/grub/grub2.inc
index bb9aacb478..e2a2a84277 100644
--- a/meta/recipes-bsp/grub/grub2.inc
+++ b/meta/recipes-bsp/grub/grub2.inc
@@ -14,7 +14,6 @@ LIC_FILES_CHKSUM = "file://COPYING;md5=d32239bcb673463ab874e80d47fae504"
CVE_PRODUCT = "grub2"
SRC_URI = "${GNU_MIRROR}/grub/grub-${PV}.tar.gz \
- file://0001-Disable-mfpmath-sse-as-well-when-SSE-is-disabled.patch \
file://autogen.sh-exclude-pc.patch \
file://grub-module-explicitly-keeps-symbole-.module_license.patch \
file://0001-grub.d-10_linux.in-add-oe-s-kernel-name.patch \
diff --git a/meta/recipes-bsp/keymaps/keymaps_1.0.bb b/meta/recipes-bsp/keymaps/keymaps_1.0.bb
index 3d5d127820..0425197c98 100644
--- a/meta/recipes-bsp/keymaps/keymaps_1.0.bb
+++ b/meta/recipes-bsp/keymaps/keymaps_1.0.bb
@@ -24,14 +24,15 @@ SRC_URI = "file://keymap.sh"
INITSCRIPT_NAME = "keymap.sh"
INITSCRIPT_PARAMS = "start 01 S ."
-S = "${WORKDIR}"
+S = "${WORKDIR}/sources"
+UNPACKDIR = "${S}"
do_install () {
# Only install the script if 'sysvinit' is in DISTRO_FEATURES
# THe ulitity this script provides could be achieved by systemd-vconsole-setup.service
if ${@bb.utils.contains('DISTRO_FEATURES','sysvinit','true','false',d)}; then
install -d ${D}${sysconfdir}/init.d/
- install -m 0755 ${WORKDIR}/keymap.sh ${D}${sysconfdir}/init.d/
+ install -m 0755 ${S}/keymap.sh ${D}${sysconfdir}/init.d/
fi
}
diff --git a/meta/recipes-bsp/lrzsz/lrzsz_0.12.20.bb b/meta/recipes-bsp/lrzsz/lrzsz_0.12.20.bb
index 63edcbd864..3024ddcaf0 100644
--- a/meta/recipes-bsp/lrzsz/lrzsz_0.12.20.bb
+++ b/meta/recipes-bsp/lrzsz/lrzsz_0.12.20.bb
@@ -46,3 +46,9 @@ ALTERNATIVE_TARGET[rb] = "${bindir}/lrz"
ALTERNATIVE_TARGET[sz] = "${bindir}/lsz"
ALTERNATIVE_TARGET[sx] = "${bindir}/lsz"
ALTERNATIVE_TARGET[sb] = "${bindir}/lsz"
+
+# http://errors.yoctoproject.org/Errors/Details/766929/
+# lrzsz-0.12.20/src/tcp.c:75:56: error: passing argument 3 of 'getsockname' from incompatible pointer type [-Wincompatible-pointer-types]
+# lrzsz-0.12.20/src/tcp.c:83:52: error: passing argument 3 of 'getsockname' from incompatible pointer type [-Wincompatible-pointer-types]
+# lrzsz-0.12.20/src/tcp.c:103:51: error: passing argument 3 of 'accept' from incompatible pointer type [-Wincompatible-pointer-types]
+CFLAGS += "-Wno-error=incompatible-pointer-types"
diff --git a/meta/recipes-bsp/pciutils/pciutils/configure.patch b/meta/recipes-bsp/pciutils/pciutils/configure.patch
index 5015cf4884..0ff151b8cf 100644
--- a/meta/recipes-bsp/pciutils/pciutils/configure.patch
+++ b/meta/recipes-bsp/pciutils/pciutils/configure.patch
@@ -1,4 +1,4 @@
-From 561216c8cbc280aaa9aecf30cb11835a4a0a78ed Mon Sep 17 00:00:00 2001
+From 6af07e1f812b2444d33ce199308c87e04b2f5dc7 Mon Sep 17 00:00:00 2001
From: Richard Purdie <rpurdie@linux.intel.com>
Date: Wed, 31 Dec 2008 17:20:38 +0000
Subject: [PATCH] pciutils: Upgarde 2.2.4 -> 3.0.3
@@ -23,20 +23,20 @@ Upstream-Status: Inappropriate [embedded specific]
2 files changed, 11 insertions(+), 5 deletions(-)
diff --git a/Makefile b/Makefile
-index aaec04e..9c1dab0 100644
+index be23593..aa13be5 100644
--- a/Makefile
+++ b/Makefile
@@ -123,7 +123,7 @@ pcilmr$(EXEEXT): pcilmr.o $(LMROBJS) $(COMMON) lib/$(PCIIMPLIB)
pcilmr.o: pcilmr.c $(LMRINC)
%$(EXEEXT): %.o
-- $(CC) $(LDFLAGS) $(TARGET_ARCH) $^ $(LDLIBS) -o $@
-+ $(CC) $(LDFLAGS) $(TARGET_ARCH) $^ $(LIB_LDLIBS) $(LDLIBS) -o $@
+- $(CC) $(CFLAGS) $(LDFLAGS) $(TARGET_ARCH) $^ $(LDLIBS) -o $@
++ $(CC) $(CFLAGS) $(LDFLAGS) $(TARGET_ARCH) $^ $(LIB_LDLIBS) $(LDLIBS) -o $@
ifdef PCI_OS_WINDOWS
comma := ,
diff --git a/lib/configure b/lib/configure
-index 3df057a..c87e71c 100755
+index d02160b..52c1eee 100755
--- a/lib/configure
+++ b/lib/configure
@@ -9,6 +9,10 @@ echo_n() {
@@ -88,3 +88,6 @@ index 3df057a..c87e71c 100755
c=config.h
m=config.mk
echo >$c '#define PCI_CONFIG_H'
+--
+2.42.0
+
diff --git a/meta/recipes-bsp/pciutils/pciutils_3.11.1.bb b/meta/recipes-bsp/pciutils/pciutils_3.12.0.bb
index 044074ccc3..480a338696 100644
--- a/meta/recipes-bsp/pciutils/pciutils_3.11.1.bb
+++ b/meta/recipes-bsp/pciutils/pciutils_3.12.0.bb
@@ -14,7 +14,7 @@ DEPENDS = "zlib kmod make-native"
SRC_URI = "${KERNELORG_MIRROR}/software/utils/pciutils/pciutils-${PV}.tar.xz \
file://configure.patch"
-SRC_URI[sha256sum] = "3f472ad864473de5ba17f765cc96ef5f33e1b730918d3adda6f945a2a9290df4"
+SRC_URI[sha256sum] = "f185d116d5ff99b797497efce8f19f1ee8ccc5a668b97a159e3d13472f674154"
inherit multilib_header pkgconfig update-alternatives
diff --git a/meta/recipes-bsp/u-boot/u-boot.inc b/meta/recipes-bsp/u-boot/u-boot.inc
index f5b43f6e36..45d700fbdd 100644
--- a/meta/recipes-bsp/u-boot/u-boot.inc
+++ b/meta/recipes-bsp/u-boot/u-boot.inc
@@ -157,9 +157,9 @@ do_install () {
fi
fi
- if [ -e ${WORKDIR}/fw_env.config ] ; then
+ if [ -e ${UNPACKDIR}/fw_env.config ] ; then
install -d ${D}${sysconfdir}
- install -m 644 ${WORKDIR}/fw_env.config ${D}${sysconfdir}/fw_env.config
+ install -m 644 ${UNPACKDIR}/fw_env.config ${D}${sysconfdir}/fw_env.config
fi
if [ -n "${SPL_BINARY}" ]
@@ -259,8 +259,8 @@ do_deploy () {
fi
fi
- if [ -e ${WORKDIR}/fw_env.config ] ; then
- install -D -m 644 ${WORKDIR}/fw_env.config ${DEPLOYDIR}/fw_env.config-${MACHINE}-${PV}-${PR}
+ if [ -e ${UNPACKDIR}/fw_env.config ] ; then
+ install -D -m 644 ${UNPACKDIR}/fw_env.config ${DEPLOYDIR}/fw_env.config-${MACHINE}-${PV}-${PR}
cd ${DEPLOYDIR}
ln -sf fw_env.config-${MACHINE}-${PV}-${PR} fw_env.config-${MACHINE}
ln -sf fw_env.config-${MACHINE}-${PV}-${PR} fw_env.config
diff --git a/meta/recipes-bsp/usbinit/usbinit.bb b/meta/recipes-bsp/usbinit/usbinit.bb
deleted file mode 100644
index 3a50b835c2..0000000000
--- a/meta/recipes-bsp/usbinit/usbinit.bb
+++ /dev/null
@@ -1,24 +0,0 @@
-SUMMARY = "Initscript for enabling USB gadget Ethernet"
-DESCRIPTION = "This module allows ethernet emulation over USB, allowing for \
-all sorts of nifty things like SSH and NFS in one go plus charging over the \
-same wire, at higher speeds than most Wifi connections."
-HOMEPAGE = "http://linux-sunxi.org/USB_Gadget/Ethernet"
-
-LICENSE = "GPL-2.0-only"
-LIC_FILES_CHKSUM = "file://${WORKDIR}/COPYING.GPL;md5=751419260aa954499f7abaabaa882bbe"
-
-
-SRC_URI = "file://usb-gether \
- file://COPYING.GPL"
-S = "${WORKDIR}"
-
-do_install() {
- install -d ${D}${sysconfdir}
- install -d ${D}${sysconfdir}/init.d
- install usb-gether ${D}${sysconfdir}/init.d
-}
-
-inherit update-rc.d allarch
-
-INITSCRIPT_NAME = "usb-gether"
-INITSCRIPT_PARAMS = "start 99 5 2 . stop 20 0 1 6 ."
diff --git a/meta/recipes-bsp/usbinit/usbinit/COPYING.GPL b/meta/recipes-bsp/usbinit/usbinit/COPYING.GPL
deleted file mode 100644
index d511905c16..0000000000
--- a/meta/recipes-bsp/usbinit/usbinit/COPYING.GPL
+++ /dev/null
@@ -1,339 +0,0 @@
- GNU GENERAL PUBLIC LICENSE
- Version 2, June 1991
-
- Copyright (C) 1989, 1991 Free Software Foundation, Inc.,
- 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
- Everyone is permitted to copy and distribute verbatim copies
- of this license document, but changing it is not allowed.
-
- Preamble
-
- The licenses for most software are designed to take away your
-freedom to share and change it. By contrast, the GNU General Public
-License is intended to guarantee your freedom to share and change free
-software--to make sure the software is free for all its users. This
-General Public License applies to most of the Free Software
-Foundation's software and to any other program whose authors commit to
-using it. (Some other Free Software Foundation software is covered by
-the GNU Lesser General Public License instead.) You can apply it to
-your programs, too.
-
- When we speak of free software, we are referring to freedom, not
-price. Our General Public Licenses are designed to make sure that you
-have the freedom to distribute copies of free software (and charge for
-this service if you wish), that you receive source code or can get it
-if you want it, that you can change the software or use pieces of it
-in new free programs; and that you know you can do these things.
-
- To protect your rights, we need to make restrictions that forbid
-anyone to deny you these rights or to ask you to surrender the rights.
-These restrictions translate to certain responsibilities for you if you
-distribute copies of the software, or if you modify it.
-
- For example, if you distribute copies of such a program, whether
-gratis or for a fee, you must give the recipients all the rights that
-you have. You must make sure that they, too, receive or can get the
-source code. And you must show them these terms so they know their
-rights.
-
- We protect your rights with two steps: (1) copyright the software, and
-(2) offer you this license which gives you legal permission to copy,
-distribute and/or modify the software.
-
- Also, for each author's protection and ours, we want to make certain
-that everyone understands that there is no warranty for this free
-software. If the software is modified by someone else and passed on, we
-want its recipients to know that what they have is not the original, so
-that any problems introduced by others will not reflect on the original
-authors' reputations.
-
- Finally, any free program is threatened constantly by software
-patents. We wish to avoid the danger that redistributors of a free
-program will individually obtain patent licenses, in effect making the
-program proprietary. To prevent this, we have made it clear that any
-patent must be licensed for everyone's free use or not licensed at all.
-
- The precise terms and conditions for copying, distribution and
-modification follow.
-
- GNU GENERAL PUBLIC LICENSE
- TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION
-
- 0. This License applies to any program or other work which contains
-a notice placed by the copyright holder saying it may be distributed
-under the terms of this General Public License. The "Program", below,
-refers to any such program or work, and a "work based on the Program"
-means either the Program or any derivative work under copyright law:
-that is to say, a work containing the Program or a portion of it,
-either verbatim or with modifications and/or translated into another
-language. (Hereinafter, translation is included without limitation in
-the term "modification".) Each licensee is addressed as "you".
-
-Activities other than copying, distribution and modification are not
-covered by this License; they are outside its scope. The act of
-running the Program is not restricted, and the output from the Program
-is covered only if its contents constitute a work based on the
-Program (independent of having been made by running the Program).
-Whether that is true depends on what the Program does.
-
- 1. You may copy and distribute verbatim copies of the Program's
-source code as you receive it, in any medium, provided that you
-conspicuously and appropriately publish on each copy an appropriate
-copyright notice and disclaimer of warranty; keep intact all the
-notices that refer to this License and to the absence of any warranty;
-and give any other recipients of the Program a copy of this License
-along with the Program.
-
-You may charge a fee for the physical act of transferring a copy, and
-you may at your option offer warranty protection in exchange for a fee.
-
- 2. You may modify your copy or copies of the Program or any portion
-of it, thus forming a work based on the Program, and copy and
-distribute such modifications or work under the terms of Section 1
-above, provided that you also meet all of these conditions:
-
- a) You must cause the modified files to carry prominent notices
- stating that you changed the files and the date of any change.
-
- b) You must cause any work that you distribute or publish, that in
- whole or in part contains or is derived from the Program or any
- part thereof, to be licensed as a whole at no charge to all third
- parties under the terms of this License.
-
- c) If the modified program normally reads commands interactively
- when run, you must cause it, when started running for such
- interactive use in the most ordinary way, to print or display an
- announcement including an appropriate copyright notice and a
- notice that there is no warranty (or else, saying that you provide
- a warranty) and that users may redistribute the program under
- these conditions, and telling the user how to view a copy of this
- License. (Exception: if the Program itself is interactive but
- does not normally print such an announcement, your work based on
- the Program is not required to print an announcement.)
-
-These requirements apply to the modified work as a whole. If
-identifiable sections of that work are not derived from the Program,
-and can be reasonably considered independent and separate works in
-themselves, then this License, and its terms, do not apply to those
-sections when you distribute them as separate works. But when you
-distribute the same sections as part of a whole which is a work based
-on the Program, the distribution of the whole must be on the terms of
-this License, whose permissions for other licensees extend to the
-entire whole, and thus to each and every part regardless of who wrote it.
-
-Thus, it is not the intent of this section to claim rights or contest
-your rights to work written entirely by you; rather, the intent is to
-exercise the right to control the distribution of derivative or
-collective works based on the Program.
-
-In addition, mere aggregation of another work not based on the Program
-with the Program (or with a work based on the Program) on a volume of
-a storage or distribution medium does not bring the other work under
-the scope of this License.
-
- 3. You may copy and distribute the Program (or a work based on it,
-under Section 2) in object code or executable form under the terms of
-Sections 1 and 2 above provided that you also do one of the following:
-
- a) Accompany it with the complete corresponding machine-readable
- source code, which must be distributed under the terms of Sections
- 1 and 2 above on a medium customarily used for software interchange; or,
-
- b) Accompany it with a written offer, valid for at least three
- years, to give any third party, for a charge no more than your
- cost of physically performing source distribution, a complete
- machine-readable copy of the corresponding source code, to be
- distributed under the terms of Sections 1 and 2 above on a medium
- customarily used for software interchange; or,
-
- c) Accompany it with the information you received as to the offer
- to distribute corresponding source code. (This alternative is
- allowed only for noncommercial distribution and only if you
- received the program in object code or executable form with such
- an offer, in accord with Subsection b above.)
-
-The source code for a work means the preferred form of the work for
-making modifications to it. For an executable work, complete source
-code means all the source code for all modules it contains, plus any
-associated interface definition files, plus the scripts used to
-control compilation and installation of the executable. However, as a
-special exception, the source code distributed need not include
-anything that is normally distributed (in either source or binary
-form) with the major components (compiler, kernel, and so on) of the
-operating system on which the executable runs, unless that component
-itself accompanies the executable.
-
-If distribution of executable or object code is made by offering
-access to copy from a designated place, then offering equivalent
-access to copy the source code from the same place counts as
-distribution of the source code, even though third parties are not
-compelled to copy the source along with the object code.
-
- 4. You may not copy, modify, sublicense, or distribute the Program
-except as expressly provided under this License. Any attempt
-otherwise to copy, modify, sublicense or distribute the Program is
-void, and will automatically terminate your rights under this License.
-However, parties who have received copies, or rights, from you under
-this License will not have their licenses terminated so long as such
-parties remain in full compliance.
-
- 5. You are not required to accept this License, since you have not
-signed it. However, nothing else grants you permission to modify or
-distribute the Program or its derivative works. These actions are
-prohibited by law if you do not accept this License. Therefore, by
-modifying or distributing the Program (or any work based on the
-Program), you indicate your acceptance of this License to do so, and
-all its terms and conditions for copying, distributing or modifying
-the Program or works based on it.
-
- 6. Each time you redistribute the Program (or any work based on the
-Program), the recipient automatically receives a license from the
-original licensor to copy, distribute or modify the Program subject to
-these terms and conditions. You may not impose any further
-restrictions on the recipients' exercise of the rights granted herein.
-You are not responsible for enforcing compliance by third parties to
-this License.
-
- 7. If, as a consequence of a court judgment or allegation of patent
-infringement or for any other reason (not limited to patent issues),
-conditions are imposed on you (whether by court order, agreement or
-otherwise) that contradict the conditions of this License, they do not
-excuse you from the conditions of this License. If you cannot
-distribute so as to satisfy simultaneously your obligations under this
-License and any other pertinent obligations, then as a consequence you
-may not distribute the Program at all. For example, if a patent
-license would not permit royalty-free redistribution of the Program by
-all those who receive copies directly or indirectly through you, then
-the only way you could satisfy both it and this License would be to
-refrain entirely from distribution of the Program.
-
-If any portion of this section is held invalid or unenforceable under
-any particular circumstance, the balance of the section is intended to
-apply and the section as a whole is intended to apply in other
-circumstances.
-
-It is not the purpose of this section to induce you to infringe any
-patents or other property right claims or to contest validity of any
-such claims; this section has the sole purpose of protecting the
-integrity of the free software distribution system, which is
-implemented by public license practices. Many people have made
-generous contributions to the wide range of software distributed
-through that system in reliance on consistent application of that
-system; it is up to the author/donor to decide if he or she is willing
-to distribute software through any other system and a licensee cannot
-impose that choice.
-
-This section is intended to make thoroughly clear what is believed to
-be a consequence of the rest of this License.
-
- 8. If the distribution and/or use of the Program is restricted in
-certain countries either by patents or by copyrighted interfaces, the
-original copyright holder who places the Program under this License
-may add an explicit geographical distribution limitation excluding
-those countries, so that distribution is permitted only in or among
-countries not thus excluded. In such case, this License incorporates
-the limitation as if written in the body of this License.
-
- 9. The Free Software Foundation may publish revised and/or new versions
-of the General Public License from time to time. Such new versions will
-be similar in spirit to the present version, but may differ in detail to
-address new problems or concerns.
-
-Each version is given a distinguishing version number. If the Program
-specifies a version number of this License which applies to it and "any
-later version", you have the option of following the terms and conditions
-either of that version or of any later version published by the Free
-Software Foundation. If the Program does not specify a version number of
-this License, you may choose any version ever published by the Free Software
-Foundation.
-
- 10. If you wish to incorporate parts of the Program into other free
-programs whose distribution conditions are different, write to the author
-to ask for permission. For software which is copyrighted by the Free
-Software Foundation, write to the Free Software Foundation; we sometimes
-make exceptions for this. Our decision will be guided by the two goals
-of preserving the free status of all derivatives of our free software and
-of promoting the sharing and reuse of software generally.
-
- NO WARRANTY
-
- 11. BECAUSE THE PROGRAM IS LICENSED FREE OF CHARGE, THERE IS NO WARRANTY
-FOR THE PROGRAM, TO THE EXTENT PERMITTED BY APPLICABLE LAW. EXCEPT WHEN
-OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR OTHER PARTIES
-PROVIDE THE PROGRAM "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED
-OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
-MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. THE ENTIRE RISK AS
-TO THE QUALITY AND PERFORMANCE OF THE PROGRAM IS WITH YOU. SHOULD THE
-PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF ALL NECESSARY SERVICING,
-REPAIR OR CORRECTION.
-
- 12. IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING
-WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY AND/OR
-REDISTRIBUTE THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES,
-INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING
-OUT OF THE USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED
-TO LOSS OF DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY
-YOU OR THIRD PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER
-PROGRAMS), EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE
-POSSIBILITY OF SUCH DAMAGES.
-
- END OF TERMS AND CONDITIONS
-
- How to Apply These Terms to Your New Programs
-
- If you develop a new program, and you want it to be of the greatest
-possible use to the public, the best way to achieve this is to make it
-free software which everyone can redistribute and change under these terms.
-
- To do so, attach the following notices to the program. It is safest
-to attach them to the start of each source file to most effectively
-convey the exclusion of warranty; and each file should have at least
-the "copyright" line and a pointer to where the full notice is found.
-
- <one line to give the program's name and a brief idea of what it does.>
- Copyright (C) <year> <name of author>
-
- This program is free software; you can redistribute it and/or modify
- it under the terms of the GNU General Public License as published by
- the Free Software Foundation; either version 2 of the License, or
- (at your option) any later version.
-
- This program is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- GNU General Public License for more details.
-
- You should have received a copy of the GNU General Public License along
- with this program; if not, write to the Free Software Foundation, Inc.,
- 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
-
-Also add information on how to contact you by electronic and paper mail.
-
-If the program is interactive, make it output a short notice like this
-when it starts in an interactive mode:
-
- Gnomovision version 69, Copyright (C) year name of author
- Gnomovision comes with ABSOLUTELY NO WARRANTY; for details type `show w'.
- This is free software, and you are welcome to redistribute it
- under certain conditions; type `show c' for details.
-
-The hypothetical commands `show w' and `show c' should show the appropriate
-parts of the General Public License. Of course, the commands you use may
-be called something other than `show w' and `show c'; they could even be
-mouse-clicks or menu items--whatever suits your program.
-
-You should also get your employer (if you work as a programmer) or your
-school, if any, to sign a "copyright disclaimer" for the program, if
-necessary. Here is a sample; alter the names:
-
- Yoyodyne, Inc., hereby disclaims all copyright interest in the program
- `Gnomovision' (which makes passes at compilers) written by James Hacker.
-
- <signature of Ty Coon>, 1 April 1989
- Ty Coon, President of Vice
-
-This General Public License does not permit incorporating your program into
-proprietary programs. If your program is a subroutine library, you may
-consider it more useful to permit linking proprietary applications with the
-library. If this is what you want to do, use the GNU Lesser General
-Public License instead of this License.
diff --git a/meta/recipes-bsp/usbinit/usbinit/usb-gether b/meta/recipes-bsp/usbinit/usbinit/usb-gether
deleted file mode 100755
index e80a0bb30e..0000000000
--- a/meta/recipes-bsp/usbinit/usbinit/usb-gether
+++ /dev/null
@@ -1,23 +0,0 @@
-#! /bin/sh
-#
-# usb-ether Start up the gadget usb ethernet interface.
-#
-
-case "$1" in
- start|"")
- test "$VERBOSE" != no && echo "Initializing g_ether gadget..."
- modprobe g_ether
- ifup usb0
- ;;
- stop)
- test "$VERBOSE" != no && echo "Disabling g_ether..."
- ifdown usb0
- rmmod g_ether
- ;;
- *)
- echo "Usage: usb-ether {start|stop}" >&2
- exit 1
- ;;
-esac
-
-exit 0
diff --git a/meta/recipes-connectivity/avahi/avahi_0.8.bb b/meta/recipes-connectivity/avahi/avahi_0.8.bb
index 1f18d4491d..a78e776a18 100644
--- a/meta/recipes-connectivity/avahi/avahi_0.8.bb
+++ b/meta/recipes-connectivity/avahi/avahi_0.8.bb
@@ -184,8 +184,8 @@ SYSTEMD_SERVICE:${PN}-dnsconfd = "avahi-dnsconfd.service"
do_install:append() {
install -d ${D}${sysconfdir}/udhcpc.d
- install ${WORKDIR}/00avahi-autoipd ${D}${sysconfdir}/udhcpc.d
- install ${WORKDIR}/99avahi-autoipd ${D}${sysconfdir}/udhcpc.d
+ install ${UNPACKDIR}/00avahi-autoipd ${D}${sysconfdir}/udhcpc.d
+ install ${UNPACKDIR}/99avahi-autoipd ${D}${sysconfdir}/udhcpc.d
}
# At the time the postinst runs, dbus might not be setup so only restart if running
diff --git a/meta/recipes-connectivity/bind/bind_9.18.26.bb b/meta/recipes-connectivity/bind/bind_9.18.27.bb
index 2784f3bdd9..98b8bb5513 100644
--- a/meta/recipes-connectivity/bind/bind_9.18.26.bb
+++ b/meta/recipes-connectivity/bind/bind_9.18.27.bb
@@ -20,7 +20,7 @@ SRC_URI = "https://ftp.isc.org/isc/bind9/${PV}/${BPN}-${PV}.tar.xz \
file://0001-avoid-start-failure-with-bind-user.patch \
"
-SRC_URI[sha256sum] = "75ffee52731e9604c849b658df29e927f1c4f01d5a71ea3ebcbeb63702cb6651"
+SRC_URI[sha256sum] = "ea3f3d8cfa2f6ae78c8722751d008f54bc17a3aed2be3f7399eb7bf5f4cda8f1"
UPSTREAM_CHECK_URI = "https://ftp.isc.org/isc/bind9/"
# follow the ESV versions divisible by 2
@@ -68,15 +68,15 @@ do_install:append() {
# Install systemd related files
install -d ${D}${sbindir}
- install -m 755 ${WORKDIR}/generate-rndc-key.sh ${D}${sbindir}
+ install -m 755 ${UNPACKDIR}/generate-rndc-key.sh ${D}${sbindir}
install -d ${D}${systemd_system_unitdir}
- install -m 0644 ${WORKDIR}/named.service ${D}${systemd_system_unitdir}
+ install -m 0644 ${UNPACKDIR}/named.service ${D}${systemd_system_unitdir}
sed -i -e 's,@BASE_BINDIR@,${base_bindir},g' \
-e 's,@SBINDIR@,${sbindir},g' \
${D}${systemd_system_unitdir}/named.service
install -d ${D}${sysconfdir}/default
- install -m 0644 ${WORKDIR}/bind9 ${D}${sysconfdir}/default
+ install -m 0644 ${UNPACKDIR}/bind9 ${D}${sysconfdir}/default
if ${@bb.utils.contains('DISTRO_FEATURES', 'systemd', 'true', 'false', d)}; then
install -d ${D}${sysconfdir}/tmpfiles.d
diff --git a/meta/recipes-connectivity/bluez5/bluez5.inc b/meta/recipes-connectivity/bluez5/bluez5.inc
index a31d7076ba..a1ffdeef8c 100644
--- a/meta/recipes-connectivity/bluez5/bluez5.inc
+++ b/meta/recipes-connectivity/bluez5/bluez5.inc
@@ -85,7 +85,7 @@ NOINST_TOOLS = " \
do_install:append() {
install -d ${D}${INIT_D_DIR}
- install -m 0755 ${WORKDIR}/init ${D}${INIT_D_DIR}/bluetooth
+ install -m 0755 ${UNPACKDIR}/init ${D}${INIT_D_DIR}/bluetooth
if [ -f ${D}/${sysconfdir}/init.d/bluetooth ]; then
sed -i -e 's#@LIBEXECDIR@#${libexecdir}#g' ${D}/${sysconfdir}/init.d/bluetooth
diff --git a/meta/recipes-connectivity/connman/connman-conf.bb b/meta/recipes-connectivity/connman/connman-conf.bb
index a1a0e08faa..73c54cddae 100644
--- a/meta/recipes-connectivity/connman/connman-conf.bb
+++ b/meta/recipes-connectivity/connman/connman-conf.bb
@@ -8,7 +8,8 @@ LIC_FILES_CHKSUM = "file://${COREBASE}/meta/files/common-licenses/GPL-2.0-only;m
SRC_URI = "file://main.conf \
"
-S = "${WORKDIR}"
+S = "${WORKDIR}/sources"
+UNPACKDIR = "${S}"
PACKAGE_ARCH = "${MACHINE_ARCH}"
diff --git a/meta/recipes-connectivity/connman/connman-gnome_0.7.bb b/meta/recipes-connectivity/connman/connman-gnome_0.7.bb
index fcd154b4b0..46b3f854c5 100644
--- a/meta/recipes-connectivity/connman/connman-gnome_0.7.bb
+++ b/meta/recipes-connectivity/connman/connman-gnome_0.7.bb
@@ -26,5 +26,9 @@ ANY_OF_DISTRO_FEATURES = "${GTK3DISTROFEATURES}"
RDEPENDS:${PN} = "connman"
do_install:append() {
- install -m 0644 ${WORKDIR}/images/* ${D}/usr/share/icons/hicolor/22x22/apps/
+ install -m 0644 ${UNPACKDIR}/images/* ${D}/usr/share/icons/hicolor/22x22/apps/
}
+
+# http://errors.yoctoproject.org/Errors/Details/766926/
+# connman-client.c:200:15: error: assignment to 'GtkTreeModel *' {aka 'struct _GtkTreeModel *'} from incompatible pointer type 'GtkTreeStore *' {aka 'struct _GtkTreeStore *'} [-Wincompatible-pointer-types]
+CFLAGS += "-Wno-error=incompatible-pointer-types"
diff --git a/meta/recipes-connectivity/connman/connman.inc b/meta/recipes-connectivity/connman/connman.inc
index 7487ca0d0c..073061eeda 100644
--- a/meta/recipes-connectivity/connman/connman.inc
+++ b/meta/recipes-connectivity/connman/connman.inc
@@ -86,7 +86,7 @@ ALTERNATIVE_LINK_NAME[resolv-conf] = "${@bb.utils.contains('DISTRO_FEATURES','sy
do_install:append() {
if ${@bb.utils.contains('DISTRO_FEATURES','sysvinit','true','false',d)}; then
install -d ${D}${sysconfdir}/init.d
- install -m 0755 ${WORKDIR}/connman ${D}${sysconfdir}/init.d/connman
+ install -m 0755 ${UNPACKDIR}/connman ${D}${sysconfdir}/init.d/connman
sed -i s%@DATADIR@%${datadir}% ${D}${sysconfdir}/init.d/connman
fi
diff --git a/meta/recipes-connectivity/dhcpcd/dhcpcd_10.0.6.bb b/meta/recipes-connectivity/dhcpcd/dhcpcd_10.0.6.bb
index 6bde9b1f51..fd193b2cff 100644
--- a/meta/recipes-connectivity/dhcpcd/dhcpcd_10.0.6.bb
+++ b/meta/recipes-connectivity/dhcpcd/dhcpcd_10.0.6.bb
@@ -52,7 +52,7 @@ USERADD_PARAM:${PN} = "--system -d ${DBDIR} -M -s /bin/false -U dhcpcd"
do_install:append () {
# install systemd unit files
install -d ${D}${systemd_system_unitdir}
- install -m 0644 ${WORKDIR}/dhcpcd*.service ${D}${systemd_system_unitdir}
+ install -m 0644 ${UNPACKDIR}/dhcpcd*.service ${D}${systemd_system_unitdir}
chmod 700 ${D}${DBDIR}
chown dhcpcd:dhcpcd ${D}${DBDIR}
diff --git a/meta/recipes-connectivity/inetutils/inetutils_2.5.bb b/meta/recipes-connectivity/inetutils/inetutils_2.5.bb
index 0f1a0736bd..afb0462c61 100644
--- a/meta/recipes-connectivity/inetutils/inetutils_2.5.bb
+++ b/meta/recipes-connectivity/inetutils/inetutils_2.5.bb
@@ -80,23 +80,23 @@ do_install:append () {
mv ${D}${libexecdir}/telnetd ${D}${sbindir}/in.telnetd
if [ -e ${D}${libexecdir}/rexecd ]; then
mv ${D}${libexecdir}/rexecd ${D}${sbindir}/in.rexecd
- cp ${WORKDIR}/rexec.xinetd.inetutils ${D}/${sysconfdir}/xinetd.d/rexec
+ cp ${UNPACKDIR}/rexec.xinetd.inetutils ${D}/${sysconfdir}/xinetd.d/rexec
fi
if [ -e ${D}${libexecdir}/rlogind ]; then
mv ${D}${libexecdir}/rlogind ${D}${sbindir}/in.rlogind
- cp ${WORKDIR}/rlogin.xinetd.inetutils ${D}/${sysconfdir}/xinetd.d/rlogin
+ cp ${UNPACKDIR}/rlogin.xinetd.inetutils ${D}/${sysconfdir}/xinetd.d/rlogin
fi
if [ -e ${D}${libexecdir}/rshd ]; then
mv ${D}${libexecdir}/rshd ${D}${sbindir}/in.rshd
- cp ${WORKDIR}/rsh.xinetd.inetutils ${D}/${sysconfdir}/xinetd.d/rsh
+ cp ${UNPACKDIR}/rsh.xinetd.inetutils ${D}/${sysconfdir}/xinetd.d/rsh
fi
if [ -e ${D}${libexecdir}/talkd ]; then
mv ${D}${libexecdir}/talkd ${D}${sbindir}/in.talkd
fi
mv ${D}${libexecdir}/uucpd ${D}${sbindir}/in.uucpd
mv ${D}${libexecdir}/* ${D}${bindir}/
- cp ${WORKDIR}/telnet.xinetd.inetutils ${D}/${sysconfdir}/xinetd.d/telnet
- cp ${WORKDIR}/tftpd.xinetd.inetutils ${D}/${sysconfdir}/xinetd.d/tftpd
+ cp ${UNPACKDIR}/telnet.xinetd.inetutils ${D}/${sysconfdir}/xinetd.d/telnet
+ cp ${UNPACKDIR}/tftpd.xinetd.inetutils ${D}/${sysconfdir}/xinetd.d/tftpd
sed -e 's,@SBINDIR@,${sbindir},g' -i ${D}/${sysconfdir}/xinetd.d/*
if [ -e ${D}${libdir}/charset.alias ]; then
diff --git a/meta/recipes-connectivity/iproute2/iproute2_6.8.0.bb b/meta/recipes-connectivity/iproute2/iproute2_6.9.0.bb
index 68f7611943..d21885cd73 100644
--- a/meta/recipes-connectivity/iproute2/iproute2_6.8.0.bb
+++ b/meta/recipes-connectivity/iproute2/iproute2_6.9.0.bb
@@ -13,7 +13,7 @@ DEPENDS = "flex-native bison-native iptables libcap"
SRC_URI = "${KERNELORG_MIRROR}/linux/utils/net/${BPN}/${BP}.tar.xz"
-SRC_URI[sha256sum] = "03a6cca3d71a908d1f15f7b495be2b8fe851f941458dc4664900d7f45fcf68ce"
+SRC_URI[sha256sum] = "2f643d09ea11a4a2a043c92e2b469b5f73228cbf241ae806760296ed0ec413d0"
inherit update-alternatives bash-completion pkgconfig
@@ -26,6 +26,8 @@ PACKAGECONFIG[selinux] = ",,libselinux"
IPROUTE2_MAKE_SUBDIRS = "lib tc ip bridge misc genl ${@bb.utils.filter('PACKAGECONFIG', 'devlink tipc rdma', d)}"
+# This is needed with GCC-14 and musl
+CFLAGS += "-Wno-error=incompatible-pointer-types"
# CFLAGS are computed in Makefile and reference CCOPTS
#
EXTRA_OEMAKE = "\
diff --git a/meta/recipes-connectivity/iw/iw_6.7.bb b/meta/recipes-connectivity/iw/iw_6.9.bb
index b46b54bc93..dc570d1124 100644
--- a/meta/recipes-connectivity/iw/iw_6.7.bb
+++ b/meta/recipes-connectivity/iw/iw_6.9.bb
@@ -14,7 +14,7 @@ SRC_URI = "http://www.kernel.org/pub/software/network/iw/${BP}.tar.gz \
file://separate-objdir.patch \
"
-SRC_URI[sha256sum] = "b3ef3fa85fa1177b11d3e97d6d38cdfe10ee250ca31482b581f3bd0fc79cb015"
+SRC_URI[sha256sum] = "4c3194778b175d58442907d51d1977e7270fce5cbebff0eab11c45c1da287a4b"
inherit pkgconfig
diff --git a/meta/recipes-connectivity/kea/kea_2.4.1.bb b/meta/recipes-connectivity/kea/kea_2.4.1.bb
index 9f8758f379..19309ce314 100644
--- a/meta/recipes-connectivity/kea/kea_2.4.1.bb
+++ b/meta/recipes-connectivity/kea/kea_2.4.1.bb
@@ -38,6 +38,7 @@ DEBUG_OPTIMIZATION:append:mipsel = " -O"
BUILD_OPTIMIZATION:remove:mipsel = " -Og"
BUILD_OPTIMIZATION:append:mipsel = " -O"
+CXXFLAGS:remove = "-fvisibility-inlines-hidden"
EXTRA_OECONF = "--with-boost-libs=-lboost_system \
--with-log4cplus=${STAGING_DIR_TARGET}${prefix} \
--with-openssl=${STAGING_DIR_TARGET}${prefix}"
@@ -58,8 +59,8 @@ do_install:append() {
install -d ${D}${sysconfdir}/init.d
install -d ${D}${systemd_system_unitdir}
- install -m 0644 ${WORKDIR}/kea-dhcp*service ${D}${systemd_system_unitdir}
- install -m 0755 ${WORKDIR}/kea-*-server ${D}${sysconfdir}/init.d
+ install -m 0644 ${UNPACKDIR}/kea-dhcp*service ${D}${systemd_system_unitdir}
+ install -m 0755 ${UNPACKDIR}/kea-*-server ${D}${sysconfdir}/init.d
sed -i -e 's,@SBINDIR@,${sbindir},g' -e 's,@BASE_BINDIR@,${base_bindir},g' \
-e 's,@LOCALSTATEDIR@,${localstatedir},g' -e 's,@SYSCONFDIR@,${sysconfdir},g' \
${D}${systemd_system_unitdir}/kea-dhcp*service ${D}${sbindir}/keactrl
diff --git a/meta/recipes-connectivity/neard/neard_0.19.bb b/meta/recipes-connectivity/neard/neard_0.19.bb
index a98f436b98..94df1ac3d6 100644
--- a/meta/recipes-connectivity/neard/neard_0.19.bb
+++ b/meta/recipes-connectivity/neard/neard_0.19.bb
@@ -31,7 +31,7 @@ EXTRA_OECONF += "--enable-tools"
do_install:append() {
if ${@bb.utils.contains('DISTRO_FEATURES', 'sysvinit', 'true', 'false', d)}; then
install -d ${D}${sysconfdir}/init.d/
- sed "s:@installpath@:${libexecdir}/nfc:" ${WORKDIR}/neard.in \
+ sed "s:@installpath@:${libexecdir}/nfc:" ${UNPACKDIR}/neard.in \
> ${D}${sysconfdir}/init.d/neard
chmod 0755 ${D}${sysconfdir}/init.d/neard
fi
diff --git a/meta/recipes-connectivity/nfs-utils/nfs-utils_2.6.4.bb b/meta/recipes-connectivity/nfs-utils/nfs-utils_2.6.4.bb
index 2f2644f9a8..af7a74a5fb 100644
--- a/meta/recipes-connectivity/nfs-utils/nfs-utils_2.6.4.bb
+++ b/meta/recipes-connectivity/nfs-utils/nfs-utils_2.6.4.bb
@@ -122,22 +122,22 @@ HIGH_RLIMIT_NOFILE ??= "4096"
do_install:append () {
install -d ${D}${sysconfdir}/init.d
- install -m 0755 ${WORKDIR}/nfsserver ${D}${sysconfdir}/init.d/nfsserver
- install -m 0755 ${WORKDIR}/nfscommon ${D}${sysconfdir}/init.d/nfscommon
+ install -m 0755 ${UNPACKDIR}/nfsserver ${D}${sysconfdir}/init.d/nfsserver
+ install -m 0755 ${UNPACKDIR}/nfscommon ${D}${sysconfdir}/init.d/nfscommon
- install -m 0755 ${WORKDIR}/nfs-utils.conf ${D}${sysconfdir}
+ install -m 0755 ${UNPACKDIR}/nfs-utils.conf ${D}${sysconfdir}
install -m 0755 ${S}/utils/mount/nfsmount.conf ${D}${sysconfdir}
install -d ${D}${systemd_system_unitdir}
- install -m 0644 ${WORKDIR}/nfs-server.service ${D}${systemd_system_unitdir}/
- install -m 0644 ${WORKDIR}/nfs-mountd.service ${D}${systemd_system_unitdir}/
- install -m 0644 ${WORKDIR}/nfs-statd.service ${D}${systemd_system_unitdir}/
+ install -m 0644 ${UNPACKDIR}/nfs-server.service ${D}${systemd_system_unitdir}/
+ install -m 0644 ${UNPACKDIR}/nfs-mountd.service ${D}${systemd_system_unitdir}/
+ install -m 0644 ${UNPACKDIR}/nfs-statd.service ${D}${systemd_system_unitdir}/
sed -i -e 's,@SBINDIR@,${sbindir},g' \
-e 's,@SYSCONFDIR@,${sysconfdir},g' \
-e 's,@HIGH_RLIMIT_NOFILE@,${HIGH_RLIMIT_NOFILE},g' \
${D}${systemd_system_unitdir}/*.service
if ${@bb.utils.contains('DISTRO_FEATURES','systemd','true','false',d)}; then
- install -m 0644 ${WORKDIR}/proc-fs-nfsd.mount ${D}${systemd_system_unitdir}/
+ install -m 0644 ${UNPACKDIR}/proc-fs-nfsd.mount ${D}${systemd_system_unitdir}/
install -d ${D}${systemd_system_unitdir}/sysinit.target.wants/
ln -sf ../proc-fs-nfsd.mount ${D}${systemd_system_unitdir}/sysinit.target.wants/proc-fs-nfsd.mount
fi
diff --git a/meta/recipes-connectivity/ofono/ofono/0001-mbim-add-an-optional-TEMP_FAILURE_RETRY-macro-copy.patch b/meta/recipes-connectivity/ofono/ofono/0001-mbim-add-an-optional-TEMP_FAILURE_RETRY-macro-copy.patch
deleted file mode 100644
index 8a5a300adc..0000000000
--- a/meta/recipes-connectivity/ofono/ofono/0001-mbim-add-an-optional-TEMP_FAILURE_RETRY-macro-copy.patch
+++ /dev/null
@@ -1,36 +0,0 @@
-From 22b52db4842611ac31a356f023fc09595384e2ad Mon Sep 17 00:00:00 2001
-From: Khem Raj <raj.khem@gmail.com>
-Date: Thu, 23 May 2019 18:11:22 -0700
-Subject: [PATCH] mbim: add an optional TEMP_FAILURE_RETRY macro copy
-
-Fixes build on musl which does not provide this macro
-
-Upstream-Status: Submitted [https://lists.ofono.org/pipermail/ofono/2019-May/019370.html]
-Signed-off-by: Khem Raj <raj.khem@gmail.com>
----
- drivers/mbimmodem/mbim-private.h | 9 +++++++++
- 1 file changed, 9 insertions(+)
-
-diff --git a/drivers/mbimmodem/mbim-private.h b/drivers/mbimmodem/mbim-private.h
-index e159235..51693ea 100644
---- a/drivers/mbimmodem/mbim-private.h
-+++ b/drivers/mbimmodem/mbim-private.h
-@@ -21,6 +21,15 @@
-
- #define align_len(len, boundary) (((len)+(boundary)-1) & ~((boundary)-1))
-
-+#ifndef TEMP_FAILURE_RETRY
-+#define TEMP_FAILURE_RETRY(expression) ({ \
-+ __typeof(expression) __result; \
-+ do { \
-+ __result = (expression); \
-+ } while (__result == -1 && errno == EINTR); \
-+ __result; })
-+#endif
-+
- enum mbim_control_message {
- MBIM_OPEN_MSG = 0x1,
- MBIM_CLOSE_MSG = 0x2,
---
-2.21.0
-
diff --git a/meta/recipes-connectivity/ofono/ofono/0002-mbim-Fix-build-with-ell-0.39-by-restoring-unlikely-m.patch b/meta/recipes-connectivity/ofono/ofono/0002-mbim-Fix-build-with-ell-0.39-by-restoring-unlikely-m.patch
deleted file mode 100644
index 3655b3fd66..0000000000
--- a/meta/recipes-connectivity/ofono/ofono/0002-mbim-Fix-build-with-ell-0.39-by-restoring-unlikely-m.patch
+++ /dev/null
@@ -1,28 +0,0 @@
-From 76e4054801350ebd4a44057379431a33d460ad0f Mon Sep 17 00:00:00 2001
-From: Martin Jansa <Martin.Jansa@gmail.com>
-Date: Wed, 21 Apr 2021 11:01:34 +0000
-Subject: [PATCH] mbim: Fix build with ell-0.39 by restoring unlikely macro
- from ell/util.h
-
-Upstream-Status: Pending
-
-Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
----
- drivers/mbimmodem/mbim-private.h | 4 ++++
- 1 file changed, 4 insertions(+)
-
-diff --git a/drivers/mbimmodem/mbim-private.h b/drivers/mbimmodem/mbim-private.h
-index 51693eae..d917312c 100644
---- a/drivers/mbimmodem/mbim-private.h
-+++ b/drivers/mbimmodem/mbim-private.h
-@@ -30,6 +30,10 @@
- __result; })
- #endif
-
-+/* used to be part of ell/util.h before 0.39:
-+ https://git.kernel.org/pub/scm/libs/ell/ell.git/commit/?id=2a682421b06e41c45098217a686157f576847021 */
-+#define unlikely(x) __builtin_expect(!!(x), 0)
-+
- enum mbim_control_message {
- MBIM_OPEN_MSG = 0x1,
- MBIM_CLOSE_MSG = 0x2,
diff --git a/meta/recipes-connectivity/ofono/ofono_2.4.bb b/meta/recipes-connectivity/ofono/ofono_2.7.bb
index dae5cc3c25..bc1f3efd04 100644
--- a/meta/recipes-connectivity/ofono/ofono_2.4.bb
+++ b/meta/recipes-connectivity/ofono/ofono_2.7.bb
@@ -10,10 +10,8 @@ DEPENDS = "dbus glib-2.0 udev mobile-broadband-provider-info ell"
SRC_URI = "\
${KERNELORG_MIRROR}/linux/network/${BPN}/${BP}.tar.xz \
file://ofono \
- file://0001-mbim-add-an-optional-TEMP_FAILURE_RETRY-macro-copy.patch \
- file://0002-mbim-Fix-build-with-ell-0.39-by-restoring-unlikely-m.patch \
"
-SRC_URI[sha256sum] = "93580adc1afd1890dc516efb069de0c5cdfef014415256ddfb28ab172df2d11d"
+SRC_URI[sha256sum] = "dabf6ef06b94beaad65253200abe3887046a4e722f4fe373c4264f357ae47ad3"
inherit autotools pkgconfig update-rc.d systemd gobject-introspection-data
@@ -30,14 +28,9 @@ PACKAGECONFIG[bluez] = "--enable-bluetooth, --disable-bluetooth, bluez5"
EXTRA_OECONF += "--enable-test --enable-external-ell"
-do_configure:prepend() {
- bbnote "Removing bundled ell from ${S}/ell to prevent including it"
- rm -rf ${S}/ell
-}
-
do_install:append() {
install -d ${D}${sysconfdir}/init.d/
- install -m 0755 ${WORKDIR}/ofono ${D}${sysconfdir}/init.d/ofono
+ install -m 0755 ${UNPACKDIR}/ofono ${D}${sysconfdir}/init.d/ofono
}
PACKAGES =+ "${PN}-tests"
diff --git a/meta/recipes-connectivity/openssh/openssh_9.7p1.bb b/meta/recipes-connectivity/openssh/openssh_9.7p1.bb
index d1468c59fc..82da92f63f 100644
--- a/meta/recipes-connectivity/openssh/openssh_9.7p1.bb
+++ b/meta/recipes-connectivity/openssh/openssh_9.7p1.bb
@@ -102,8 +102,8 @@ CACHED_CONFIGUREVARS += "ac_cv_header_maillock_h=no"
do_configure:prepend () {
export LD="${CC}"
- install -m 0644 ${WORKDIR}/sshd_config ${B}/
- install -m 0644 ${WORKDIR}/ssh_config ${B}/
+ install -m 0644 ${UNPACKDIR}/sshd_config ${B}/
+ install -m 0644 ${UNPACKDIR}/ssh_config ${B}/
}
do_compile_ptest() {
@@ -112,7 +112,7 @@ do_compile_ptest() {
do_install:append () {
if [ "${@bb.utils.filter('DISTRO_FEATURES', 'pam', d)}" ]; then
- install -D -m 0644 ${WORKDIR}/sshd ${D}${sysconfdir}/pam.d/sshd
+ install -D -m 0644 ${UNPACKDIR}/sshd ${D}${sysconfdir}/pam.d/sshd
sed -i -e 's:#UsePAM no:UsePAM yes:' ${D}${sysconfdir}/ssh/sshd_config
fi
@@ -121,11 +121,11 @@ do_install:append () {
fi
install -d ${D}${sysconfdir}/init.d
- install -m 0755 ${WORKDIR}/init ${D}${sysconfdir}/init.d/sshd
+ install -m 0755 ${UNPACKDIR}/init ${D}${sysconfdir}/init.d/sshd
rm -f ${D}${bindir}/slogin ${D}${datadir}/Ssh.bin
rmdir ${D}${localstatedir}/run/sshd ${D}${localstatedir}/run ${D}${localstatedir}
install -d ${D}/${sysconfdir}/default/volatiles
- install -m 644 ${WORKDIR}/volatiles.99_sshd ${D}/${sysconfdir}/default/volatiles/99_sshd
+ install -m 644 ${UNPACKDIR}/volatiles.99_sshd ${D}/${sysconfdir}/default/volatiles/99_sshd
install -m 0755 ${S}/contrib/ssh-copy-id ${D}${bindir}
# Create config files for read-only rootfs
@@ -138,8 +138,8 @@ do_install:append () {
install -d ${D}${systemd_system_unitdir}
if ${@bb.utils.contains('PACKAGECONFIG','systemd-sshd-socket-mode','true','false',d)}; then
- install -c -m 0644 ${WORKDIR}/sshd.socket ${D}${systemd_system_unitdir}
- install -c -m 0644 ${WORKDIR}/sshd@.service ${D}${systemd_system_unitdir}
+ install -c -m 0644 ${UNPACKDIR}/sshd.socket ${D}${systemd_system_unitdir}
+ install -c -m 0644 ${UNPACKDIR}/sshd@.service ${D}${systemd_system_unitdir}
sed -i -e 's,@BASE_BINDIR@,${base_bindir},g' \
-e 's,@SBINDIR@,${sbindir},g' \
-e 's,@BINDIR@,${bindir},g' \
@@ -147,9 +147,9 @@ do_install:append () {
${D}${systemd_system_unitdir}/sshd.socket
fi
if ${@bb.utils.contains('PACKAGECONFIG','systemd-sshd-service-mode','true','false',d)}; then
- install -c -m 0644 ${WORKDIR}/sshd.service ${D}${systemd_system_unitdir}
+ install -c -m 0644 ${UNPACKDIR}/sshd.service ${D}${systemd_system_unitdir}
fi
- install -c -m 0644 ${WORKDIR}/sshdgenkeys.service ${D}${systemd_system_unitdir}
+ install -c -m 0644 ${UNPACKDIR}/sshdgenkeys.service ${D}${systemd_system_unitdir}
sed -i -e 's,@BASE_BINDIR@,${base_bindir},g' \
-e 's,@SBINDIR@,${sbindir},g' \
-e 's,@BINDIR@,${bindir},g' \
@@ -159,7 +159,7 @@ do_install:append () {
sed -i -e 's,@LIBEXECDIR@,${libexecdir}/${BPN},g' \
${D}${sysconfdir}/init.d/sshd
- install -D -m 0755 ${WORKDIR}/sshd_check_keys ${D}${libexecdir}/${BPN}/sshd_check_keys
+ install -D -m 0755 ${UNPACKDIR}/sshd_check_keys ${D}${libexecdir}/${BPN}/sshd_check_keys
}
do_install_ptest () {
diff --git a/meta/recipes-connectivity/openssl/openssl/0001-Implement-riscv_vlen_asm-for-riscv32.patch b/meta/recipes-connectivity/openssl/openssl/0001-Implement-riscv_vlen_asm-for-riscv32.patch
new file mode 100644
index 0000000000..e398d1074a
--- /dev/null
+++ b/meta/recipes-connectivity/openssl/openssl/0001-Implement-riscv_vlen_asm-for-riscv32.patch
@@ -0,0 +1,43 @@
+From 725b1530456545e8511adc9cbdd265309dffad53 Mon Sep 17 00:00:00 2001
+From: Hongren Zheng <i@zenithal.me>
+Date: Fri, 26 Apr 2024 06:03:43 +0000
+Subject: [PATCH] Implement riscv_vlen_asm for riscv32
+
+riscvcap.c: undefined reference to 'riscv_vlen_asm'
+
+Upstream-Status: Backport [https://github.com/openssl/openssl/pull/24270]
+Signed-off-by: Khem Raj <raj.khem@gmail.com>
+---
+ crypto/riscv32cpuid.pl | 17 +++++++++++++++++
+ 1 file changed, 17 insertions(+)
+
+diff --git a/crypto/riscv32cpuid.pl b/crypto/riscv32cpuid.pl
+index 20694e7..ac1c043 100644
+--- a/crypto/riscv32cpuid.pl
++++ b/crypto/riscv32cpuid.pl
+@@ -84,5 +84,22 @@ OPENSSL_cleanse:
+ ___
+ }
+
++{
++my ($ret) = ('a0');
++$code .= <<___;
++################################################################################
++# size_t riscv_vlen_asm(void)
++# Return VLEN (i.e. the length of a vector register in bits).
++.p2align 3
++.globl riscv_vlen_asm
++.type riscv_vlen_asm,\@function
++riscv_vlen_asm:
++ csrr $ret, vlenb
++ slli $ret, $ret, 3
++ ret
++.size riscv_vlen_asm,.-riscv_vlen_asm
++___
++}
++
+ print $code;
+ close STDOUT or die "error closing STDOUT: $!";
+--
+2.45.0
+
diff --git a/meta/recipes-connectivity/openssl/openssl/CVE-2024-4603.patch b/meta/recipes-connectivity/openssl/openssl/CVE-2024-4603.patch
new file mode 100644
index 0000000000..cdc3d0d503
--- /dev/null
+++ b/meta/recipes-connectivity/openssl/openssl/CVE-2024-4603.patch
@@ -0,0 +1,179 @@
+From 53ea06486d296b890d565fb971b2764fcd826e7e Mon Sep 17 00:00:00 2001
+From: Tomas Mraz <tomas@openssl.org>
+Date: Wed, 8 May 2024 15:23:45 +0200
+Subject: [PATCH] Check DSA parameters for excessive sizes before validating
+
+This avoids overly long computation of various validation
+checks.
+
+Fixes CVE-2024-4603
+
+Reviewed-by: Paul Dale <ppzgs1@gmail.com>
+Reviewed-by: Matt Caswell <matt@openssl.org>
+Reviewed-by: Neil Horman <nhorman@openssl.org>
+Reviewed-by: Shane Lontis <shane.lontis@oracle.com>
+(Merged from https://github.com/openssl/openssl/pull/24346)
+
+(cherry picked from commit 85ccbab216da245cf9a6503dd327072f21950d9b)
+
+<dropped CHANGES.md modifications as it would need backport of all previous changes>
+
+CVE: CVE-2024-4603
+Upstream-Status: Backport [https://github.com/openssl/openssl/commit/53ea06486d296b890d565fb971b2764fcd826e7e]
+Signed-off-by: Peter Marko <peter.marko@siemens.com>
+---
+ crypto/dsa/dsa_check.c | 44 ++++++++++++--
+ .../invalid/p10240_q256_too_big.pem | 57 +++++++++++++++++++
+ 2 files changed, 97 insertions(+), 4 deletions(-)
+
+diff --git a/crypto/dsa/dsa_check.c b/crypto/dsa/dsa_check.c
+index 7b6d7df88f..e1375dfad9 100644
+--- a/crypto/dsa/dsa_check.c
++++ b/crypto/dsa/dsa_check.c
+@@ -19,8 +19,34 @@
+ #include "dsa_local.h"
+ #include "crypto/dsa.h"
+
++static int dsa_precheck_params(const DSA *dsa, int *ret)
++{
++ if (dsa->params.p == NULL || dsa->params.q == NULL) {
++ ERR_raise(ERR_LIB_DSA, DSA_R_BAD_FFC_PARAMETERS);
++ *ret = FFC_CHECK_INVALID_PQ;
++ return 0;
++ }
++
++ if (BN_num_bits(dsa->params.p) > OPENSSL_DSA_MAX_MODULUS_BITS) {
++ ERR_raise(ERR_LIB_DSA, DSA_R_MODULUS_TOO_LARGE);
++ *ret = FFC_CHECK_INVALID_PQ;
++ return 0;
++ }
++
++ if (BN_num_bits(dsa->params.q) >= BN_num_bits(dsa->params.p)) {
++ ERR_raise(ERR_LIB_DSA, DSA_R_BAD_Q_VALUE);
++ *ret = FFC_CHECK_INVALID_PQ;
++ return 0;
++ }
++
++ return 1;
++}
++
+ int ossl_dsa_check_params(const DSA *dsa, int checktype, int *ret)
+ {
++ if (!dsa_precheck_params(dsa, ret))
++ return 0;
++
+ if (checktype == OSSL_KEYMGMT_VALIDATE_QUICK_CHECK)
+ return ossl_ffc_params_simple_validate(dsa->libctx, &dsa->params,
+ FFC_PARAM_TYPE_DSA, ret);
+@@ -39,6 +65,9 @@ int ossl_dsa_check_params(const DSA *dsa, int checktype, int *ret)
+ */
+ int ossl_dsa_check_pub_key(const DSA *dsa, const BIGNUM *pub_key, int *ret)
+ {
++ if (!dsa_precheck_params(dsa, ret))
++ return 0;
++
+ return ossl_ffc_validate_public_key(&dsa->params, pub_key, ret)
+ && *ret == 0;
+ }
+@@ -50,6 +79,9 @@ int ossl_dsa_check_pub_key(const DSA *dsa, const BIGNUM *pub_key, int *ret)
+ */
+ int ossl_dsa_check_pub_key_partial(const DSA *dsa, const BIGNUM *pub_key, int *ret)
+ {
++ if (!dsa_precheck_params(dsa, ret))
++ return 0;
++
+ return ossl_ffc_validate_public_key_partial(&dsa->params, pub_key, ret)
+ && *ret == 0;
+ }
+@@ -58,8 +90,10 @@ int ossl_dsa_check_priv_key(const DSA *dsa, const BIGNUM *priv_key, int *ret)
+ {
+ *ret = 0;
+
+- return (dsa->params.q != NULL
+- && ossl_ffc_validate_private_key(dsa->params.q, priv_key, ret));
++ if (!dsa_precheck_params(dsa, ret))
++ return 0;
++
++ return ossl_ffc_validate_private_key(dsa->params.q, priv_key, ret);
+ }
+
+ /*
+@@ -72,8 +106,10 @@ int ossl_dsa_check_pairwise(const DSA *dsa)
+ BN_CTX *ctx = NULL;
+ BIGNUM *pub_key = NULL;
+
+- if (dsa->params.p == NULL
+- || dsa->params.g == NULL
++ if (!dsa_precheck_params(dsa, &ret))
++ return 0;
++
++ if (dsa->params.g == NULL
+ || dsa->priv_key == NULL
+ || dsa->pub_key == NULL)
+ return 0;
+diff --git a/test/recipes/15-test_dsaparam_data/invalid/p10240_q256_too_big.pem b/test/recipes/15-test_dsaparam_data/invalid/p10240_q256_too_big.pem
+new file mode 100644
+index 0000000000..e85e2953b7
+--- /dev/null
++++ b/test/recipes/15-test_dsaparam_data/invalid/p10240_q256_too_big.pem
+@@ -0,0 +1,57 @@
++-----BEGIN DSA PARAMETERS-----
++MIIKLAKCBQEAym47LzPFZdbz16WvjczLKuzLtsP8yRk/exxL4bBthJhP1qOwctja
++p1586SF7gDxCMn7yWVEYdfRbFefGoq0gj1XOE917XqlbnkmZhMgxut2KbNJo/xil
++XNFUjGvKs3F413U9rAodC8f07cWHP1iTcWL+vPe6u2yilKWYYfnLWHQH+Z6aPrrF
++x/R08LI6DZ6nEsIo+hxaQnEtx+iqNTJC6Q1RIjWDqxQkFVTkJ0Y7miRDXmRdneWk
++oLrMZRpaXr5l5tSjEghh1pBgJcdyOv0lh4dlDy/alAiqE2Qlb667yHl6A9dDPlpW
++dAntpffy4LwOxfbuEhISvKjjQoBwIvYE4TBPqL0Q6bC6HgQ4+tqd9b44pQjdIQjb
++Xcjc6azheITSnPEex3OdKtKoQeRq01qCeLBpMXu1c+CTf4ApKArZvT3vZSg0hM1O
++pR71bRZrEEegDj0LH2HCgI5W6H3blOS9A0kUTddCoQXr2lsVdiPtRbPKH1gcd9FQ
++P8cGrvbakpTiC0dCczOMDaCteM1QNILlkM7ZoV6VghsKvDnFPxFsiIr5GgjasXP5
++hhbn3g7sDoq1LiTEo+IKQY28pBWx7etSOSRuXW/spnvCkivZla7lSEGljoy9QlQ2
++UZmsEQI9G3YyzgpxHvKZBK1CiZVTywdYKTZ4TYCxvqzhYhjv2bqbpjI12HRFLojB
++koyEmMSp53lldCzp158PrIanqSp2rksMR8SmmCL3FwfAp2OjqFMEglG9DT8x0WaN
++TLSkjGC6t2csMte7WyU1ekNoFDKfMjDSAz0+xIx21DEmZtYqFOg1DNPK1xYLS0pl
++RSMRRkJVN2mk/G7/1oxlB8Wb9wgi3GKUqqCYT11SnBjzq0NdoJ3E4GMedp5Lx3AZ
++4mFuRPUd4iV86tE0XDSHSFE7Y3ZkrOjD7Q/26/L53L/UH5z4HW6CHP5os7QERJjg
++c1S3x87wXWo9QXbB9b2xmf+c+aWwAAr1cviw38tru58jF3/IGyduj9H8claKQqBG
++cIOUF4aNe1hK2K3ArAOApUxr4KE+tCvrltRfiTmVFip0g9Jt1CPY3Zu7Bd4Z2ZkE
++DtSztpwa49HrWF5E9xpquvBL2U8jQ68E7Xd8Wp4orI/TIChriamBmdkgRz3H2LvN
++Ozb6+hsnEGrz3sp2RVAToSqA9ysa6nHZdfufPNtMEbQdO/k1ehmGRb0ljBRsO6b2
++rsG2eYuC8tg8eCrIkua0TGRI7g6a4K32AJdzaX6NsISaaIW+OYJuoDSscvD3oOg8
++PPEhU+zM7xJskTA+jxvPlikKx8V7MNHOCQECldJlUBwzJvqp40JvwfnDsF+8VYwd
++UaiieR3pzMzyTjpReXRmZbnRPusRcsVzxb2OhB79wmuy4UPjjQBX+7eD0rs8xxvW
++5a5q1Cjq4AvbwmmcA/wDrHDOjcbD/zodad2O1QtBWa/R4xyWea4zKsflgACE1zY9
++wW2br7+YQFekcrXkkkEzgxd6zxv8KVEDpXRZjmAM1cI5LvkoN64To4GedN8Qe/G7
++R9SZh9gnS17PTP64hK+aYqhFafMdu87q/+qLfxaSux727qE5hiW01u4nnWhACf9s
++xuOozowKqxZxkolMIyZv6Lddwy1Zv5qjCyd0DvM/1skpXWkb9kfabYC+OhjsjVhs
++0Ktfs6a5B3eixiw5x94hhIcTEcS4hmvhGUL72FiTca6ZeSERTKmNBy8CIQC9/ZUN
++uU/V5JTcnYyUGHzm7+XcZBjyGBagBj9rCmW3SQKCBQAJ/k9rb39f1cO+/3XDEMjy
++9bIEXSuS48g5RAc1UGd5nrrBQwuDxGWFyz0yvAY7LgyidZuJS21+MAp9EY7AOMmx
++TDttifNaBJYt4GZ8of166PcqTKkHQwq5uBpxeSDv/ZE8YbYfaCtLTcUC8KlO+l36
++gjJHSkdkflSsGy1yObSNDQDfVAAwQs//TjDMnuEtvlNXZllsTvFFBceXVETn10K2
++ZMmdSIJNfLnjReUKEN6PfeGqv7F4xoyGwUybEfRE4u5RmXrqCODaIjY3SNMrOq8B
++R3Ata/cCozsM1jIdIW2z+OybDJH+BYsYm2nkSZQjZS6javTYClLrntEKG/hAQwL8
++F16YLOQXpHhgiAaWnTZzANtLppB2+5qCVy5ElzKongOwT8JTjTFXOaRnqe/ngm9W
++SSbrxfDaoWUOyK9XD8Cydzpv3n4Y8nWNGayi7/yAFCU36Ri040ufgv/TZLuKacnl
+++3ga3ZUpRlSigzx0kb1+KjTSWeQ8vE/psdWjvBukVEbzdUauMLyRLo/6znSVvvPX
++UGhviThE5uhrsUg+wEPFINriSHfF7JDKVhDcJnLBdaXvfN52pkF/naLBF5Rt3Gvq
++fjCxjx0Sy9Lag1hDN4dor7dzuO7wmwOS01DJW1PtNLuuH0Bbqh1kYSaQkmyXBZWX
++qo8K3nkoDM0niOtJJubOhTNrGmSaZpNXkK3Mcy9rBbdvEs5O0Jmqaax/eOdU0Yot
++B3lX+3ddOseT2ZEFjzObqTtkWuFBeBxuYNcRTsu3qMdIBsEb8URQdsTtjoIja2fK
++hreVgjK36GW70KXEl8V/vq5qjQulmqkBEjmilcDuiREKqQuyeagUOnhQaBplqVco
++4xznh5DMBMRbpGb5lHxKv4cPNi+uNAJ5i98zWUM1JRt6aXnRCuWcll1z8fRZ+5kD
++vK9FaZU3VRMK/eknEG49cGr8OuJ6ZRSaC+tKwV1y+amkSZpKPWnk2bUnQI3ApJv3
++k1e1EToeECpMUkLMDgNbpKBoz4nqMEvAAlYgw9xKNbLlQlahqTVEAmaJHh4yDMDy
++i7IZ9Wrn47IGoR7s3cvhDHUpRPeW4nsmgzj+tf5EAxemI61STZJTTWo0iaPGJxct
++9nhOOhw1I38Mvm4vkAbFH7YJ0B6QrjjYL2MbOTp5JiIh4vdOeWwNo9/y4ffyaN5+
++ADpxuuIAmcbdr6GPOhkOFFixRJa0B2eP1i032HESlLs8RB9oYtdTXdXQotnIgJGd
++Y8tSKOa1zjzeLHn3AVpRZTUW++/BxmApV3GKIeG8fsUjg/df0QRrBcdC/1uccdaG
++KKlAOwlywVn5jUlwHkTmDiTM9w5AqVVGHZ2b+4ZgQW8jnPKN0SrKf6U555D+zp7E
++x4uXoE8ojN9y8m8UKf0cTLnujH2XgZorjPfuMOt5VZEhQFMS2QaljSeni5CJJ8gk
++XtztNqfBlAtWR4V5iAHeQOfIB2YaOy8GESda89tyKraKeaez41VblpTVHTeq9IIF
++YB4cQA2PfuNaGVRGLMAgT3Dvl+mxxxeJyxnGAiUcETU/jJJt9QombiuszBlYGQ5d
++ELOSm/eQSRARV9zNSt5jaQlMSjMBqenIEM09BzYqa7jDwqoztFxNdO8bcuQPuKwa
++4z3bBZ1yYm63WFdNbQqqGEwc0OYmqg1raJ0zltgHyjFyw8IGu4g/wETs+nVQcH7D
++vKuje86bePD6kD/LH3wmkA==
++-----END DSA PARAMETERS-----
+--
+2.30.2
+
diff --git a/meta/recipes-connectivity/openssl/openssl_3.3.0.bb b/meta/recipes-connectivity/openssl/openssl_3.3.0.bb
index 2cdaf4c75d..a361185b65 100644
--- a/meta/recipes-connectivity/openssl/openssl_3.3.0.bb
+++ b/meta/recipes-connectivity/openssl/openssl_3.3.0.bb
@@ -12,7 +12,9 @@ SRC_URI = "http://www.openssl.org/source/openssl-${PV}.tar.gz \
file://0001-buildinfo-strip-sysroot-and-debug-prefix-map-from-co.patch \
file://0001-Configure-do-not-tweak-mips-cflags.patch \
file://0001-Added-handshake-history-reporting-when-test-fails.patch \
+ file://0001-Implement-riscv_vlen_asm-for-riscv32.patch \
file://bti.patch \
+ file://CVE-2024-4603.patch \
"
SRC_URI:append:class-nativesdk = " \
@@ -136,16 +138,12 @@ do_configure () {
;;
esac
- useprefix=${prefix}
- if [ "x$useprefix" = "x" ]; then
- useprefix=/
- fi
# WARNING: do not set compiler/linker flags (-I/-D etc.) in EXTRA_OECONF, as they will fully replace the
# environment variables set by bitbake. Adjust the environment variables instead.
PERLEXTERNAL="$(realpath ${S}/external/perl/Text-Template-*/lib)"
test -d "$PERLEXTERNAL" || bberror "PERLEXTERNAL '$PERLEXTERNAL' not found!"
HASHBANGPERL="/usr/bin/env perl" PERL=perl PERL5LIB="$PERLEXTERNAL" \
- perl ${S}/Configure ${EXTRA_OECONF} ${PACKAGECONFIG_CONFARGS} ${DEPRECATED_CRYPTO_FLAGS} --prefix=$useprefix --openssldir=${libdir}/ssl-3 --libdir=${libdir} $target
+ perl ${S}/Configure ${EXTRA_OECONF} ${PACKAGECONFIG_CONFARGS} ${DEPRECATED_CRYPTO_FLAGS} --prefix=${prefix} --openssldir=${libdir}/ssl-3 --libdir=${baselib} $target
perl ${B}/configdata.pm --dump
}
@@ -181,7 +179,7 @@ do_install:append:class-native () {
do_install:append:class-nativesdk () {
mkdir -p ${D}${SDKPATHNATIVE}/environment-setup.d
- install -m 644 ${WORKDIR}/environment.d-openssl.sh ${D}${SDKPATHNATIVE}/environment-setup.d/openssl.sh
+ install -m 644 ${UNPACKDIR}/environment.d-openssl.sh ${D}${SDKPATHNATIVE}/environment-setup.d/openssl.sh
sed 's|/usr/lib/ssl/|/usr/lib/ssl-3/|g' -i ${D}${SDKPATHNATIVE}/environment-setup.d/openssl.sh
}
diff --git a/meta/recipes-connectivity/ppp-dialin/ppp-dialin_0.1.bb b/meta/recipes-connectivity/ppp-dialin/ppp-dialin_0.1.bb
index 099c58bfc7..0ee47d47c2 100644
--- a/meta/recipes-connectivity/ppp-dialin/ppp-dialin_0.1.bb
+++ b/meta/recipes-connectivity/ppp-dialin/ppp-dialin_0.1.bb
@@ -11,14 +11,15 @@ SRC_URI = "file://host-peer \
inherit allarch useradd
-S = "${WORKDIR}"
+S = "${WORKDIR}/sources"
+UNPACKDIR = "${S}"
do_install() {
install -d ${D}${sysconfdir}/ppp/peers
- install -m 0644 ${WORKDIR}/host-peer ${D}${sysconfdir}/ppp/peers/host
+ install -m 0644 ${S}/host-peer ${D}${sysconfdir}/ppp/peers/host
install -d ${D}${sbindir}
- install -m 0755 ${WORKDIR}/ppp-dialin ${D}${sbindir}
+ install -m 0755 ${S}/ppp-dialin ${D}${sbindir}
}
USERADD_PACKAGES = "${PN}"
diff --git a/meta/recipes-connectivity/ppp/ppp_2.5.0.bb b/meta/recipes-connectivity/ppp/ppp_2.5.0.bb
index 5f0c75de83..36e2585de4 100644
--- a/meta/recipes-connectivity/ppp/ppp_2.5.0.bb
+++ b/meta/recipes-connectivity/ppp/ppp_2.5.0.bb
@@ -35,20 +35,20 @@ do_install:append () {
mkdir -p ${D}${bindir}/ ${D}${sysconfdir}/init.d
mkdir -p ${D}${sysconfdir}/ppp/ip-up.d/
mkdir -p ${D}${sysconfdir}/ppp/ip-down.d/
- install -m 0755 ${WORKDIR}/pon ${D}${bindir}/pon
- install -m 0755 ${WORKDIR}/poff ${D}${bindir}/poff
- install -m 0755 ${WORKDIR}/init ${D}${sysconfdir}/init.d/ppp
- install -m 0755 ${WORKDIR}/ip-up ${D}${sysconfdir}/ppp/
- install -m 0755 ${WORKDIR}/ip-down ${D}${sysconfdir}/ppp/
- install -m 0755 ${WORKDIR}/08setupdns ${D}${sysconfdir}/ppp/ip-up.d/
- install -m 0755 ${WORKDIR}/92removedns ${D}${sysconfdir}/ppp/ip-down.d/
+ install -m 0755 ${UNPACKDIR}/pon ${D}${bindir}/pon
+ install -m 0755 ${UNPACKDIR}/poff ${D}${bindir}/poff
+ install -m 0755 ${UNPACKDIR}/init ${D}${sysconfdir}/init.d/ppp
+ install -m 0755 ${UNPACKDIR}/ip-up ${D}${sysconfdir}/ppp/
+ install -m 0755 ${UNPACKDIR}/ip-down ${D}${sysconfdir}/ppp/
+ install -m 0755 ${UNPACKDIR}/08setupdns ${D}${sysconfdir}/ppp/ip-up.d/
+ install -m 0755 ${UNPACKDIR}/92removedns ${D}${sysconfdir}/ppp/ip-down.d/
mkdir -p ${D}${sysconfdir}/chatscripts
mkdir -p ${D}${sysconfdir}/ppp/peers
- install -m 0755 ${WORKDIR}/pap ${D}${sysconfdir}/chatscripts
- install -m 0755 ${WORKDIR}/ppp_on_boot ${D}${sysconfdir}/ppp/ppp_on_boot
- install -m 0755 ${WORKDIR}/provider ${D}${sysconfdir}/ppp/peers/provider
+ install -m 0755 ${UNPACKDIR}/pap ${D}${sysconfdir}/chatscripts
+ install -m 0755 ${UNPACKDIR}/ppp_on_boot ${D}${sysconfdir}/ppp/ppp_on_boot
+ install -m 0755 ${UNPACKDIR}/provider ${D}${sysconfdir}/ppp/peers/provider
install -d ${D}${systemd_system_unitdir}
- install -m 0644 ${WORKDIR}/ppp@.service ${D}${systemd_system_unitdir}
+ install -m 0644 ${UNPACKDIR}/ppp@.service ${D}${systemd_system_unitdir}
sed -i -e 's,@SBINDIR@,${sbindir},g' \
${D}${systemd_system_unitdir}/ppp@.service
}
diff --git a/meta/recipes-connectivity/resolvconf/resolvconf_1.92.bb b/meta/recipes-connectivity/resolvconf/resolvconf_1.92.bb
index 226cb7ee77..c3ce5bc22e 100644
--- a/meta/recipes-connectivity/resolvconf/resolvconf_1.92.bb
+++ b/meta/recipes-connectivity/resolvconf/resolvconf_1.92.bb
@@ -29,7 +29,7 @@ do_compile () {
do_install () {
install -d ${D}${sysconfdir}/default/volatiles
- install -m 0644 ${WORKDIR}/99_resolvconf ${D}${sysconfdir}/default/volatiles
+ install -m 0644 ${UNPACKDIR}/99_resolvconf ${D}${sysconfdir}/default/volatiles
if ${@bb.utils.contains('DISTRO_FEATURES', 'systemd', 'true', 'false', d)}; then
install -d ${D}${sysconfdir}/tmpfiles.d
echo "d /run/${BPN}/interface - - - -" \
diff --git a/meta/recipes-connectivity/slirp/libslirp_git.bb b/meta/recipes-connectivity/slirp/libslirp_git.bb
index 334b786b9b..05830ce833 100644
--- a/meta/recipes-connectivity/slirp/libslirp_git.bb
+++ b/meta/recipes-connectivity/slirp/libslirp_git.bb
@@ -5,8 +5,8 @@ LICENSE = "BSD-3-Clause & MIT"
LIC_FILES_CHKSUM = "file://COPYRIGHT;md5=bca0186b14e6b05e338e729f106db727"
SRC_URI = "git://gitlab.freedesktop.org/slirp/libslirp.git;protocol=https;branch=master"
-SRCREV = "3ad1710a96678fe79066b1469cead4058713a1d9"
-PV = "4.7.0"
+SRCREV = "ce314e39458223c2c42245fe536fbe1bcd94e9b1"
+PV = "4.8.0"
S = "${WORKDIR}/git"
DEPENDS = " \
diff --git a/meta/recipes-connectivity/ssh-pregen-hostkeys/ssh-pregen-hostkeys_1.0.bb b/meta/recipes-connectivity/ssh-pregen-hostkeys/ssh-pregen-hostkeys_1.0.bb
index ddd10e6eeb..db5a0eb8ce 100644
--- a/meta/recipes-connectivity/ssh-pregen-hostkeys/ssh-pregen-hostkeys_1.0.bb
+++ b/meta/recipes-connectivity/ssh-pregen-hostkeys/ssh-pregen-hostkeys_1.0.bb
@@ -6,14 +6,19 @@ SRC_URI = "file://dropbear_rsa_host_key \
LICENSE = "MIT"
LIC_FILES_CHKSUM = "file://${COMMON_LICENSE_DIR}/MIT;md5=0835ade698e0bcf8506ecda2f7b4f302"
+S = "${WORKDIR}/sources"
+UNPACKDIR = "${S}"
+
INHIBIT_DEFAULT_DEPS = "1"
+COMPATIBLE_MACHINE = "^qemu.*$"
+
do_install () {
install -d ${D}${sysconfdir}/dropbear
- install ${WORKDIR}/dropbear_rsa_host_key -m 0600 ${D}${sysconfdir}/dropbear/
+ install ${UNPACKDIR}/dropbear_rsa_host_key -m 0600 ${D}${sysconfdir}/dropbear/
install -d ${D}${sysconfdir}/ssh
- install ${WORKDIR}/openssh/* ${D}${sysconfdir}/ssh/
+ install ${UNPACKDIR}/openssh/* ${D}${sysconfdir}/ssh/
chmod 0600 ${D}${sysconfdir}/ssh/*
chmod 0644 ${D}${sysconfdir}/ssh/*.pub
-} \ No newline at end of file
+}
diff --git a/meta/recipes-connectivity/wpa-supplicant/wpa-supplicant_2.10.bb b/meta/recipes-connectivity/wpa-supplicant/wpa-supplicant_2.10.bb
index 22028ce957..8113bcab09 100644
--- a/meta/recipes-connectivity/wpa-supplicant/wpa-supplicant_2.10.bb
+++ b/meta/recipes-connectivity/wpa-supplicant/wpa-supplicant_2.10.bb
@@ -62,15 +62,15 @@ do_install () {
oe_runmake -C wpa_supplicant DESTDIR="${D}" install
install -d ${D}${docdir}/wpa_supplicant
- install -m 644 wpa_supplicant/README ${WORKDIR}/wpa_supplicant.conf ${D}${docdir}/wpa_supplicant
+ install -m 644 wpa_supplicant/README ${UNPACKDIR}/wpa_supplicant.conf ${D}${docdir}/wpa_supplicant
install -d ${D}${sysconfdir}
- install -m 600 ${WORKDIR}/wpa_supplicant.conf-sane ${D}${sysconfdir}/wpa_supplicant.conf
+ install -m 600 ${UNPACKDIR}/wpa_supplicant.conf-sane ${D}${sysconfdir}/wpa_supplicant.conf
install -d ${D}${sysconfdir}/network/if-pre-up.d/
install -d ${D}${sysconfdir}/network/if-post-down.d/
install -d ${D}${sysconfdir}/network/if-down.d/
- install -m 755 ${WORKDIR}/wpa-supplicant.sh ${D}${sysconfdir}/network/if-pre-up.d/wpa-supplicant
+ install -m 755 ${UNPACKDIR}/wpa-supplicant.sh ${D}${sysconfdir}/network/if-pre-up.d/wpa-supplicant
ln -sf ../if-pre-up.d/wpa-supplicant ${D}${sysconfdir}/network/if-post-down.d/wpa-supplicant
install -d ${D}/${sysconfdir}/dbus-1/system.d
@@ -84,7 +84,7 @@ do_install () {
fi
install -d ${D}/etc/default/volatiles
- install -m 0644 ${WORKDIR}/99_wpa_supplicant ${D}/etc/default/volatiles
+ install -m 0644 ${UNPACKDIR}/99_wpa_supplicant ${D}/etc/default/volatiles
install -d ${D}${includedir}
install -m 0644 ${S}/src/common/wpa_ctrl.h ${D}${includedir}
diff --git a/meta/recipes-core/base-files/base-files/profile b/meta/recipes-core/base-files/base-files/profile
index bded3757cc..5e8393c91c 100644
--- a/meta/recipes-core/base-files/base-files/profile
+++ b/meta/recipes-core/base-files/base-files/profile
@@ -58,7 +58,7 @@ resize() {
fi
# only do this for /dev/tty[A-z] which are typically
# serial ports
- if [ $FIRSTTIMESETUP -eq 1 -a $SHLVL -eq 1 ] ; then
+ if [ $FIRSTTIMESETUP -eq 1 -a ${SHLVL:-1} -eq 1 ] ; then
case $(tty 2>/dev/null) in
/dev/tty[A-z]*) resize >/dev/null;;
esac
diff --git a/meta/recipes-core/base-files/base-files_3.0.14.bb b/meta/recipes-core/base-files/base-files_3.0.14.bb
index 9fab53ce63..1b6e9671e4 100644
--- a/meta/recipes-core/base-files/base-files_3.0.14.bb
+++ b/meta/recipes-core/base-files/base-files_3.0.14.bb
@@ -25,7 +25,8 @@ SRC_URI = "file://rotation \
"
SRC_URI:append:libc-glibc = "${@bb.utils.contains('DISTRO_FEATURES', 'systemd systemd-resolved', ' file://0001-add-nss-resolve-to-nsswitch.patch', '', d)}"
-S = "${WORKDIR}"
+S = "${WORKDIR}/sources"
+UNPACKDIR = "${S}"
INHIBIT_DEFAULT_DEPS = "1"
@@ -113,23 +114,23 @@ do_install () {
ln -snf ../run ${D}${localstatedir}/run
ln -snf ../run/lock ${D}${localstatedir}/lock
- install -m 0644 ${WORKDIR}/hosts ${D}${sysconfdir}/hosts
+ install -m 0644 ${S}/hosts ${D}${sysconfdir}/hosts
${BASEFILESISSUEINSTALL}
- rotation=`cat ${WORKDIR}/rotation`
+ rotation=`cat ${S}/rotation`
if [ "$rotation" != "0" ]; then
- install -m 0644 ${WORKDIR}/rotation ${D}${sysconfdir}/rotation
+ install -m 0644 ${S}/rotation ${D}${sysconfdir}/rotation
fi
- install -m 0644 ${WORKDIR}/fstab ${D}${sysconfdir}/fstab
- install -m 0644 ${WORKDIR}/profile ${D}${sysconfdir}/profile
+ install -m 0644 ${S}/fstab ${D}${sysconfdir}/fstab
+ install -m 0644 ${S}/profile ${D}${sysconfdir}/profile
sed -i 's#ROOTHOME#${ROOT_HOME}#' ${D}${sysconfdir}/profile
sed -i 's#@BINDIR@#${bindir}#g' ${D}${sysconfdir}/profile
- install -m 0644 ${WORKDIR}/shells ${D}${sysconfdir}/shells
- install -m 0755 ${WORKDIR}/share/dot.profile ${D}${sysconfdir}/skel/.profile
- install -m 0755 ${WORKDIR}/share/dot.bashrc ${D}${sysconfdir}/skel/.bashrc
- install -m 0644 ${WORKDIR}/host.conf ${D}${sysconfdir}/host.conf
- install -m 0644 ${WORKDIR}/motd ${D}${sysconfdir}/motd
+ install -m 0644 ${S}/shells ${D}${sysconfdir}/shells
+ install -m 0755 ${S}/share/dot.profile ${D}${sysconfdir}/skel/.profile
+ install -m 0755 ${S}/share/dot.bashrc ${D}${sysconfdir}/skel/.bashrc
+ install -m 0644 ${S}/host.conf ${D}${sysconfdir}/host.conf
+ install -m 0644 ${S}/motd ${D}${sysconfdir}/motd
ln -sf /proc/mounts ${D}${sysconfdir}/mtab
@@ -145,12 +146,12 @@ do_install () {
}
do_install:append:libc-glibc () {
- install -m 0644 ${WORKDIR}/nsswitch.conf ${D}${sysconfdir}/nsswitch.conf
+ install -m 0644 ${S}/nsswitch.conf ${D}${sysconfdir}/nsswitch.conf
}
DISTRO_VERSION[vardepsexclude] += "DATE"
do_install_basefilesissue () {
- install -m 644 ${WORKDIR}/issue* ${D}${sysconfdir}
+ install -m 644 ${S}/issue* ${D}${sysconfdir}
if [ -n "${DISTRO_NAME}" ]; then
printf "${DISTRO_NAME} " >> ${D}${sysconfdir}/issue
printf "${DISTRO_NAME} " >> ${D}${sysconfdir}/issue.net
diff --git a/meta/recipes-core/busybox/busybox-inittab_1.36.1.bb b/meta/recipes-core/busybox/busybox-inittab_1.36.1.bb
index 6904a91930..4ffc44c808 100644
--- a/meta/recipes-core/busybox/busybox-inittab_1.36.1.bb
+++ b/meta/recipes-core/busybox/busybox-inittab_1.36.1.bb
@@ -4,7 +4,8 @@ LIC_FILES_CHKSUM = "file://${COREBASE}/meta/files/common-licenses/GPL-2.0-only;m
SRC_URI = "file://inittab"
-S = "${WORKDIR}"
+S = "${WORKDIR}/sources"
+UNPACKDIR = "${S}"
INHIBIT_DEFAULT_DEPS = "1"
@@ -14,7 +15,7 @@ do_compile() {
do_install() {
install -d ${D}${sysconfdir}
- install -D -m 0644 ${WORKDIR}/inittab ${D}${sysconfdir}/inittab
+ install -D -m 0644 ${S}/inittab ${D}${sysconfdir}/inittab
CONSOLES="${SERIAL_CONSOLES}"
for s in $CONSOLES
diff --git a/meta/recipes-core/busybox/busybox.inc b/meta/recipes-core/busybox/busybox.inc
index f5d7c3f9c8..67a9111e5b 100644
--- a/meta/recipes-core/busybox/busybox.inc
+++ b/meta/recipes-core/busybox/busybox.inc
@@ -114,7 +114,7 @@ do_prepare_config () {
export KCONFIG_NOTIMESTAMP=1
sed -e '/CONFIG_STATIC/d' \
- < ${WORKDIR}/defconfig > ${S}/.config
+ < ${UNPACKDIR}/defconfig > ${S}/.config
echo "# CONFIG_STATIC is not set" >> .config
for i in 'CROSS' 'DISTRO FEATURES'; do echo "### $i"; done >> \
${S}/.config
@@ -280,67 +280,67 @@ do_install () {
fi
if grep -q "CONFIG_SYSLOGD=y" ${B}/.config; then
- install -m 0755 ${WORKDIR}/syslog ${D}${sysconfdir}/init.d/syslog
- install -m 644 ${WORKDIR}/syslog-startup.conf ${D}${sysconfdir}/syslog-startup.conf
- install -m 644 ${WORKDIR}/syslog.conf ${D}${sysconfdir}/syslog.conf
+ install -m 0755 ${UNPACKDIR}/syslog ${D}${sysconfdir}/init.d/syslog
+ install -m 644 ${UNPACKDIR}/syslog-startup.conf ${D}${sysconfdir}/syslog-startup.conf
+ install -m 644 ${UNPACKDIR}/syslog.conf ${D}${sysconfdir}/syslog.conf
fi
if grep -q "CONFIG_CROND=y" ${B}/.config; then
- install -m 0755 ${WORKDIR}/busybox-cron ${D}${sysconfdir}/init.d/
+ install -m 0755 ${UNPACKDIR}/busybox-cron ${D}${sysconfdir}/init.d/
fi
if grep -q "CONFIG_HTTPD=y" ${B}/.config; then
- install -m 0755 ${WORKDIR}/busybox-httpd ${D}${sysconfdir}/init.d/
+ install -m 0755 ${UNPACKDIR}/busybox-httpd ${D}${sysconfdir}/init.d/
install -d ${D}/srv/www
fi
if grep -q "CONFIG_UDHCPD=y" ${B}/.config; then
- install -m 0755 ${WORKDIR}/busybox-udhcpd ${D}${sysconfdir}/init.d/
+ install -m 0755 ${UNPACKDIR}/busybox-udhcpd ${D}${sysconfdir}/init.d/
fi
if grep -q "CONFIG_HWCLOCK=y" ${B}/.config; then
- install -m 0755 ${WORKDIR}/hwclock.sh ${D}${sysconfdir}/init.d/
+ install -m 0755 ${UNPACKDIR}/hwclock.sh ${D}${sysconfdir}/init.d/
fi
if grep -q "CONFIG_UDHCPC=y" ${B}/.config; then
install -d ${D}${sysconfdir}/udhcpc.d
install -d ${D}${datadir}/udhcpc
- install -m 0755 ${WORKDIR}/simple.script ${D}${sysconfdir}/udhcpc.d/50default
+ install -m 0755 ${UNPACKDIR}/simple.script ${D}${sysconfdir}/udhcpc.d/50default
sed -i "s:/SBIN_DIR/:${base_sbindir}/:" ${D}${sysconfdir}/udhcpc.d/50default
- install -m 0755 ${WORKDIR}/default.script ${D}${datadir}/udhcpc/default.script
+ install -m 0755 ${UNPACKDIR}/default.script ${D}${datadir}/udhcpc/default.script
fi
if grep -q "CONFIG_INETD=y" ${B}/.config; then
- install -m 0755 ${WORKDIR}/inetd ${D}${sysconfdir}/init.d/inetd.${BPN}
+ install -m 0755 ${UNPACKDIR}/inetd ${D}${sysconfdir}/init.d/inetd.${BPN}
sed -i "s:/usr/sbin/:${sbindir}/:" ${D}${sysconfdir}/init.d/inetd.${BPN}
- install -m 0644 ${WORKDIR}/inetd.conf ${D}${sysconfdir}/
+ install -m 0644 ${UNPACKDIR}/inetd.conf ${D}${sysconfdir}/
fi
if grep -q "CONFIG_MDEV=y" ${B}/.config; then
- install -m 0755 ${WORKDIR}/mdev ${D}${sysconfdir}/init.d/mdev
+ install -m 0755 ${UNPACKDIR}/mdev ${D}${sysconfdir}/init.d/mdev
if grep "CONFIG_FEATURE_MDEV_CONF=y" ${B}/.config; then
- install -m 644 ${WORKDIR}/mdev.conf ${D}${sysconfdir}/mdev.conf
+ install -m 644 ${UNPACKDIR}/mdev.conf ${D}${sysconfdir}/mdev.conf
install -d ${D}${sysconfdir}/mdev
- install -m 0755 ${WORKDIR}/find-touchscreen.sh ${D}${sysconfdir}/mdev
- install -m 0755 ${WORKDIR}/mdev-mount.sh ${D}${sysconfdir}/mdev
+ install -m 0755 ${UNPACKDIR}/find-touchscreen.sh ${D}${sysconfdir}/mdev
+ install -m 0755 ${UNPACKDIR}/mdev-mount.sh ${D}${sysconfdir}/mdev
fi
fi
if grep -q "CONFIG_INIT=y" ${B}/.config && ${@bb.utils.contains('VIRTUAL-RUNTIME_init_manager','busybox','true','false',d)}; then
- install -D -m 0755 ${WORKDIR}/rcS ${D}${sysconfdir}/init.d/rcS
- install -D -m 0755 ${WORKDIR}/rcK ${D}${sysconfdir}/init.d/rcK
- install -D -m 0755 ${WORKDIR}/rcS.default ${D}${sysconfdir}/default/rcS
+ install -D -m 0755 ${UNPACKDIR}/rcS ${D}${sysconfdir}/init.d/rcS
+ install -D -m 0755 ${UNPACKDIR}/rcK ${D}${sysconfdir}/init.d/rcK
+ install -D -m 0755 ${UNPACKDIR}/rcS.default ${D}${sysconfdir}/default/rcS
fi
if ${@bb.utils.contains('DISTRO_FEATURES','systemd','true','false',d)}; then
if grep -q "CONFIG_KLOGD=y" ${B}/.config; then
install -d ${D}${systemd_system_unitdir}
- sed 's,@base_sbindir@,${base_sbindir},g' < ${WORKDIR}/busybox-klogd.service.in \
+ sed 's,@base_sbindir@,${base_sbindir},g' < ${UNPACKDIR}/busybox-klogd.service.in \
> ${D}${systemd_system_unitdir}/busybox-klogd.service
fi
if grep -q "CONFIG_SYSLOGD=y" ${B}/.config; then
install -d ${D}${systemd_system_unitdir}
- sed 's,@base_sbindir@,${base_sbindir},g' < ${WORKDIR}/busybox-syslog.service.in \
+ sed 's,@base_sbindir@,${base_sbindir},g' < ${UNPACKDIR}/busybox-syslog.service.in \
> ${D}${systemd_system_unitdir}/busybox-syslog.service
if [ ! -e ${D}${systemd_system_unitdir}/busybox-klogd.service ] ; then
sed -i '/klog/d' ${D}${systemd_system_unitdir}/busybox-syslog.service
fi
- if [ -f ${WORKDIR}/busybox-syslog.default ] ; then
+ if [ -f ${UNPACKDIR}/busybox-syslog.default ] ; then
install -d ${D}${sysconfdir}/default
- install -m 0644 ${WORKDIR}/busybox-syslog.default ${D}${sysconfdir}/default/busybox-syslog
+ install -m 0644 ${UNPACKDIR}/busybox-syslog.default ${D}${sysconfdir}/default/busybox-syslog
fi
fi
fi
diff --git a/meta/recipes-core/dbus/dbus_1.14.10.bb b/meta/recipes-core/dbus/dbus_1.14.10.bb
index 4fe7af7512..6a08f6984e 100644
--- a/meta/recipes-core/dbus/dbus_1.14.10.bb
+++ b/meta/recipes-core/dbus/dbus_1.14.10.bb
@@ -129,8 +129,8 @@ do_install() {
if ${@bb.utils.contains('DISTRO_FEATURES', 'sysvinit', 'true', 'false', d)}; then
install -d ${D}${sysconfdir}/init.d
- sed 's:@bindir@:${bindir}:' < ${WORKDIR}/dbus-1.init >${WORKDIR}/dbus-1.init.sh
- install -m 0755 ${WORKDIR}/dbus-1.init.sh ${D}${sysconfdir}/init.d/dbus-1
+ sed 's:@bindir@:${bindir}:' < ${UNPACKDIR}/dbus-1.init > ${S}/dbus-1.init.sh
+ install -m 0755 ${S}/dbus-1.init.sh ${D}${sysconfdir}/init.d/dbus-1
install -d ${D}${sysconfdir}/default/volatiles
echo "d messagebus messagebus 0755 /run/dbus none" \
> ${D}${sysconfdir}/default/volatiles/99_dbus
diff --git a/meta/recipes-core/dropbear/dropbear/0001-urandom-xauth-changes-to-options.h.patch b/meta/recipes-core/dropbear/dropbear/0001-urandom-xauth-changes-to-options.h.patch
index c74f09e484..9c1dd3f606 100644
--- a/meta/recipes-core/dropbear/dropbear/0001-urandom-xauth-changes-to-options.h.patch
+++ b/meta/recipes-core/dropbear/dropbear/0001-urandom-xauth-changes-to-options.h.patch
@@ -1,4 +1,7 @@
-Subject: [PATCH 1/6] urandom-xauth-changes-to-options.h
+From cdc6a4a57a86d8116a92a5d905993e65cf723556 Mon Sep 17 00:00:00 2001
+From: Richard Purdie <richard@openedhand.com>
+Date: Wed, 31 Aug 2005 10:45:47 +0000
+Subject: [PATCH] urandom-xauth-changes-to-options.h
Upstream-Status: Inappropriate [configuration]
---
@@ -18,6 +21,3 @@ index 6e970bb..ccc8b47 100644
/* If you want to enable running an sftp server (such as the one included with
---
-2.34.1
-
diff --git a/meta/recipes-core/dropbear/dropbear/0005-dropbear-enable-pam.patch b/meta/recipes-core/dropbear/dropbear/0005-dropbear-enable-pam.patch
index fe667ddc25..6743f506e9 100644
--- a/meta/recipes-core/dropbear/dropbear/0005-dropbear-enable-pam.patch
+++ b/meta/recipes-core/dropbear/dropbear/0005-dropbear-enable-pam.patch
@@ -1,7 +1,7 @@
-From b8cece92ba19aa77ac013ea161bfe4c7147747c9 Mon Sep 17 00:00:00 2001
+From 253ca01f0fc50dbaeb2ff8bcece0c34256eba94f Mon Sep 17 00:00:00 2001
From: Jussi Kukkonen <jussi.kukkonen@intel.com>
Date: Wed, 2 Dec 2015 11:36:02 +0200
-Subject: Enable pam
+Subject: [PATCH] Enable pam
We need modify file default_options.h besides enabling pam in
configure if we want dropbear to support pam.
@@ -15,10 +15,10 @@ Signed-off-by: Jussi Kukkonen <jussi.kukkonen@intel.com>
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/src/default_options.h b/src/default_options.h
-index 0e3d027..349338c 100644
+index ccc8b47..12768d1 100644
--- a/src/default_options.h
+++ b/src/default_options.h
-@@ -210,7 +210,7 @@ group1 in Dropbear server too */
+@@ -228,7 +228,7 @@ group1 in Dropbear server too */
/* Authentication Types - at least one required.
RFC Draft requires pubkey auth, and recommends password */
@@ -27,7 +27,7 @@ index 0e3d027..349338c 100644
/* Note: PAM auth is quite simple and only works for PAM modules which just do
* a simple "Login: " "Password: " (you can edit the strings in svr-authpam.c).
-@@ -218,7 +218,7 @@ group1 in Dropbear server too */
+@@ -236,7 +236,7 @@ group1 in Dropbear server too */
* but there's an interface via a PAM module. It won't work for more complex
* PAM challenge/response.
* You can't enable both PASSWORD and PAM. */
@@ -36,6 +36,3 @@ index 0e3d027..349338c 100644
/* ~/.ssh/authorized_keys authentication.
* You must define DROPBEAR_SVR_PUBKEY_AUTH in order to use plugins. */
---
-2.25.1
-
diff --git a/meta/recipes-core/dropbear/dropbear/0006-dropbear-configuration-file.patch b/meta/recipes-core/dropbear/dropbear/0006-dropbear-configuration-file.patch
index f54f634a4e..44861088cc 100644
--- a/meta/recipes-core/dropbear/dropbear/0006-dropbear-configuration-file.patch
+++ b/meta/recipes-core/dropbear/dropbear/0006-dropbear-configuration-file.patch
@@ -1,4 +1,4 @@
-From e3a5db1b6d3f6382a15b2266458c26c645a10f18 Mon Sep 17 00:00:00 2001
+From 16b147f97f0938cddb55ec1c90bc919c13f26fc0 Mon Sep 17 00:00:00 2001
From: Mingli Yu <Mingli.Yu@windriver.com>
Date: Thu, 6 Sep 2018 15:54:00 +0800
Subject: [PATCH] dropbear configuration file
@@ -15,11 +15,11 @@ Signed-off-by: Mingli Yu <Mingli.Yu@windriver.com>
src/svr-authpam.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
-diff --git a/srec/svr-authpam.c b/src/svr-authpam.c
-index d201bc9..165ec5c 100644
+diff --git a/src/svr-authpam.c b/src/svr-authpam.c
+index ec14632..026102f 100644
--- a/src/svr-authpam.c
+++ b/src/svr-authpam.c
-@@ -223,7 +223,7 @@ void svr_auth_pam(int valid_user) {
+@@ -224,7 +224,7 @@ void svr_auth_pam(int valid_user) {
}
/* Init pam */
@@ -28,6 +28,3 @@ index d201bc9..165ec5c 100644
dropbear_log(LOG_WARNING, "pam_start() failed, rc=%d, %s",
rc, pam_strerror(pamHandlep, rc));
goto cleanup;
---
-2.7.4
-
diff --git a/meta/recipes-core/dropbear/dropbear/dropbear-disable-weak-ciphers.patch b/meta/recipes-core/dropbear/dropbear/dropbear-disable-weak-ciphers.patch
index f998caa255..a20781d31d 100644
--- a/meta/recipes-core/dropbear/dropbear/dropbear-disable-weak-ciphers.patch
+++ b/meta/recipes-core/dropbear/dropbear/dropbear-disable-weak-ciphers.patch
@@ -1,4 +1,4 @@
-From c347ece05a7fdbf50d76cb136b9ed45caed333f6 Mon Sep 17 00:00:00 2001
+From c8a0c8e87b772576f3a431c3b4cacaf5aa001dcc Mon Sep 17 00:00:00 2001
From: Joseph Reynolds <joseph.reynolds1@ibm.com>
Date: Thu, 20 Jun 2019 16:29:15 -0500
Subject: [PATCH] dropbear: new feature: disable-weak-ciphers
@@ -14,10 +14,10 @@ Signed-off-by: Joseph Reynolds <joseph.reynolds1@ibm.com>
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/src/default_options.h b/src/default_options.h
-index d417588..bc5200f 100644
+index 12768d1..2b07497 100644
--- a/src/default_options.h
+++ b/src/default_options.h
-@@ -180,7 +180,7 @@ IMPORTANT: Some options will require "make clean" after changes */
+@@ -197,7 +197,7 @@ IMPORTANT: Some options will require "make clean" after changes */
* Small systems should generally include either curve25519 or ecdh for performance.
* curve25519 is less widely supported but is faster
*/
@@ -26,6 +26,3 @@ index d417588..bc5200f 100644
#define DROPBEAR_DH_GROUP14_SHA256 1
#define DROPBEAR_DH_GROUP16 0
#define DROPBEAR_CURVE25519 1
---
-2.25.1
-
diff --git a/meta/recipes-core/dropbear/dropbear_2024.84.bb b/meta/recipes-core/dropbear/dropbear_2024.85.bb
index 69c7b04c55..54001414d0 100644
--- a/meta/recipes-core/dropbear/dropbear_2024.84.bb
+++ b/meta/recipes-core/dropbear/dropbear_2024.85.bb
@@ -23,7 +23,7 @@ SRC_URI = "http://matt.ucc.asn.au/dropbear/releases/dropbear-${PV}.tar.bz2 \
${@bb.utils.contains('PACKAGECONFIG', 'disable-weak-ciphers', 'file://dropbear-disable-weak-ciphers.patch', '', d)} \
"
-SRC_URI[sha256sum] = "16e22b66b333d6b7e504c43679d04ed6ca30f2838db40a21f935c850dfc01009"
+SRC_URI[sha256sum] = "86b036c433a69d89ce51ebae335d65c47738ccf90d13e5eb0fea832e556da502"
PAM_SRC_URI = "file://0005-dropbear-enable-pam.patch \
file://0006-dropbear-configuration-file.patch \
@@ -76,7 +76,7 @@ do_install() {
${D}${sbindir} \
${D}${localstatedir}
- install -m 0644 ${WORKDIR}/dropbear.default ${D}${sysconfdir}/default/dropbear
+ install -m 0644 ${UNPACKDIR}/dropbear.default ${D}${sysconfdir}/default/dropbear
install -m 0755 dropbearmulti ${D}${sbindir}/
@@ -94,18 +94,18 @@ do_install() {
-e 's,/usr/sbin,${sbindir},g' \
-e 's,/var,${localstatedir},g' \
-e 's,/usr/bin,${bindir},g' \
- -e 's,/usr,${prefix},g' ${WORKDIR}/init > ${D}${sysconfdir}/init.d/dropbear
+ -e 's,/usr,${prefix},g' ${UNPACKDIR}/init > ${D}${sysconfdir}/init.d/dropbear
chmod 755 ${D}${sysconfdir}/init.d/dropbear
if [ "${@bb.utils.filter('DISTRO_FEATURES', 'pam', d)}" ]; then
install -d ${D}${sysconfdir}/pam.d
- install -m 0644 ${WORKDIR}/dropbear ${D}${sysconfdir}/pam.d/
+ install -m 0644 ${UNPACKDIR}/dropbear ${D}${sysconfdir}/pam.d/
fi
# deal with systemd unit files
install -d ${D}${systemd_system_unitdir}
- install -m 0644 ${WORKDIR}/dropbearkey.service ${D}${systemd_system_unitdir}
- install -m 0644 ${WORKDIR}/dropbear@.service ${D}${systemd_system_unitdir}
- install -m 0644 ${WORKDIR}/dropbear.socket ${D}${systemd_system_unitdir}
+ install -m 0644 ${UNPACKDIR}/dropbearkey.service ${D}${systemd_system_unitdir}
+ install -m 0644 ${UNPACKDIR}/dropbear@.service ${D}${systemd_system_unitdir}
+ install -m 0644 ${UNPACKDIR}/dropbear.socket ${D}${systemd_system_unitdir}
sed -i -e 's,@BASE_BINDIR@,${base_bindir},g' \
-e 's,@BINDIR@,${bindir},g' \
-e 's,@SBINDIR@,${sbindir},g' \
diff --git a/meta/recipes-core/ell/ell_0.64.bb b/meta/recipes-core/ell/ell_0.65.bb
index c4f16905fd..9b559caf8a 100644
--- a/meta/recipes-core/ell/ell_0.64.bb
+++ b/meta/recipes-core/ell/ell_0.65.bb
@@ -15,8 +15,4 @@ DEPENDS = "dbus"
inherit autotools pkgconfig
SRC_URI = "https://mirrors.edge.kernel.org/pub/linux/libs/${BPN}/${BPN}-${PV}.tar.xz"
-SRC_URI[sha256sum] = "760f3901078409f66cadf1bb24c8bdc60f13d53f6dd66b88631221d2494f8405"
-
-do_configure:prepend () {
- mkdir -p ${S}/build-aux
-}
+SRC_URI[sha256sum] = "9ee7ac57b188d391cead705d3596a6d3240341786475149db297782a52269aa5"
diff --git a/meta/recipes-core/gettext/gettext-minimal-native_0.22.5.bb b/meta/recipes-core/gettext/gettext-minimal-native_0.22.5.bb
index db1bbb7e68..96acf9bb9f 100644
--- a/meta/recipes-core/gettext/gettext-minimal-native_0.22.5.bb
+++ b/meta/recipes-core/gettext/gettext-minimal-native_0.22.5.bb
@@ -13,7 +13,7 @@ INHIBIT_DEFAULT_DEPS = "1"
INHIBIT_AUTOTOOLS_DEPS = "1"
LICENSE = "FSF-Unlimited"
-LIC_FILES_CHKSUM = "file://../COPYING;md5=4bd090a20bfcd1a18f1f79837b5e3e91"
+LIC_FILES_CHKSUM = "file://${UNPACKDIR}/COPYING;md5=4bd090a20bfcd1a18f1f79837b5e3e91"
inherit native
diff --git a/meta/recipes-core/glib-2.0/glib-2.0/0001-Do-not-write-bindir-into-pkg-config-files.patch b/meta/recipes-core/glib-2.0/files/0001-Do-not-write-bindir-into-pkg-config-files.patch
index 8e6598fbef..10568b7c9f 100644
--- a/meta/recipes-core/glib-2.0/glib-2.0/0001-Do-not-write-bindir-into-pkg-config-files.patch
+++ b/meta/recipes-core/glib-2.0/files/0001-Do-not-write-bindir-into-pkg-config-files.patch
@@ -1,26 +1,30 @@
-From e7077aa23bfcd31a8e72e39dc93ce4f854678376 Mon Sep 17 00:00:00 2001
+From 10b08af6c7dcb03f954da29b6c4f9636b8796f30 Mon Sep 17 00:00:00 2001
From: Alexander Kanavin <alex.kanavin@gmail.com>
Date: Fri, 15 Feb 2019 11:17:27 +0100
-Subject: [PATCH] Do not write $bindir into pkg-config files
+Subject: [PATCH] Do not prefix executables with $bindir in pkg-config files
-This would otherwise break when using the files to build other target
+This would otherwise break when using the executables to build other target
components (we need to rely on PATH containing the paths to utilities,
rather than use target paths).
Upstream-Status: Inappropriate [upstream wants the paths in .pc files]
Signed-off-by: Alexander Kanavin <alex.kanavin@gmail.com>
---
- gio/meson.build | 16 ++++++++--------
- glib/meson.build | 6 +++---
- 2 files changed, 11 insertions(+), 11 deletions(-)
+ gio/meson.build | 17 +++++++++--------
+ glib/meson.build | 7 ++++---
+ 2 files changed, 13 insertions(+), 11 deletions(-)
diff --git a/gio/meson.build b/gio/meson.build
-index 5f91586..1a95f4f 100644
+index 77cba7b..25d709e 100644
--- a/gio/meson.build
+++ b/gio/meson.build
-@@ -884,14 +884,14 @@ pkg.generate(libgio,
+@@ -883,17 +883,18 @@ libgio_dep = declare_dependency(link_with : libgio,
+ pkg.generate(libgio,
+ requires : ['glib-2.0', 'gobject-2.0'],
+ variables : [
++ 'bindir=' + '${prefix}' / get_option('bindir'),
+ 'schemasdir=' + '${datadir}' / schemas_subdir,
'dtdsdir=' + '${datadir}' / dtds_subdir,
- 'bindir=' + '${prefix}' / get_option('bindir'),
'giomoduledir=' + pkgconfig_giomodulesdir,
- 'gio=' + '${bindir}' / 'gio',
- 'gio_querymodules=' + pkgconfig_multiarch_bindir / 'gio-querymodules',
@@ -42,16 +46,17 @@ index 5f91586..1a95f4f 100644
version : glib_version,
install_dir : glib_pkgconfigreldir,
diff --git a/glib/meson.build b/glib/meson.build
-index c26a35e..1d8ca6b 100644
+index d2efeba..5f5841d 100644
--- a/glib/meson.build
+++ b/glib/meson.build
-@@ -447,9 +447,9 @@ pkg.generate(libglib,
+@@ -447,9 +447,10 @@ pkg.generate(libglib,
+ subdirs : ['glib-2.0'],
+ extra_cflags : ['-I${libdir}/glib-2.0/include'] + win32_cflags,
variables : [
- 'bindir=' + '${prefix}' / get_option('bindir'),
- 'datadir=' + '${prefix}' / get_option('datadir'),
- 'glib_genmarshal=' + '${bindir}' / 'glib-genmarshal',
- 'gobject_query=' + '${bindir}' / 'gobject-query',
- 'glib_mkenums=' + '${bindir}' / 'glib-mkenums',
++ 'bindir=' + '${prefix}' / get_option('bindir'),
+ 'glib_genmarshal=glib-genmarshal',
+ 'gobject_query=gobject-query',
+ 'glib_mkenums=glib-mkenums',
diff --git a/meta/recipes-core/glib-2.0/glib-2.0/0001-Fix-DATADIRNAME-on-uclibc-Linux.patch b/meta/recipes-core/glib-2.0/files/0001-Fix-DATADIRNAME-on-uclibc-Linux.patch
index eb9dfdbcf9..b9c9706fc4 100644
--- a/meta/recipes-core/glib-2.0/glib-2.0/0001-Fix-DATADIRNAME-on-uclibc-Linux.patch
+++ b/meta/recipes-core/glib-2.0/files/0001-Fix-DATADIRNAME-on-uclibc-Linux.patch
@@ -1,4 +1,4 @@
-From 9a5d4bf65b658d744d610ee27ecd2ae65b14b158 Mon Sep 17 00:00:00 2001
+From 55c49c51d8db5af15132653003d2b65a5215eebf Mon Sep 17 00:00:00 2001
From: Khem Raj <raj.khem@gmail.com>
Date: Sat, 15 Mar 2014 22:42:29 -0700
Subject: [PATCH] Fix DATADIRNAME on uclibc/Linux
diff --git a/meta/recipes-core/glib-2.0/glib-2.0/0001-Install-gio-querymodules-as-libexec_PROGRAM.patch b/meta/recipes-core/glib-2.0/files/0001-Install-gio-querymodules-as-libexec_PROGRAM.patch
index ad69f7ec65..bc539fe3e8 100644
--- a/meta/recipes-core/glib-2.0/glib-2.0/0001-Install-gio-querymodules-as-libexec_PROGRAM.patch
+++ b/meta/recipes-core/glib-2.0/files/0001-Install-gio-querymodules-as-libexec_PROGRAM.patch
@@ -1,4 +1,4 @@
-From 4933aef791857a5aac650b60af800778658b875b Mon Sep 17 00:00:00 2001
+From 53333cf3ec787cb7e60585237327390e2ca89f4c Mon Sep 17 00:00:00 2001
From: Jussi Kukkonen <jussi.kukkonen@intel.com>
Date: Tue, 22 Mar 2016 15:14:58 +0200
Subject: [PATCH] Install gio-querymodules as libexec_PROGRAM
@@ -13,10 +13,10 @@ Upstream-Status: Inappropriate [OE specific]
1 file changed, 1 insertion(+)
diff --git a/gio/meson.build b/gio/meson.build
-index f9fdf6e..5f91586 100644
+index 59c2b0f..77cba7b 100644
--- a/gio/meson.build
+++ b/gio/meson.build
-@@ -1005,6 +1005,7 @@ gio_querymodules = executable('gio-querymodules', 'gio-querymodules.c', 'giomodu
+@@ -1007,6 +1007,7 @@ gio_querymodules = executable('gio-querymodules', 'gio-querymodules.c', 'giomodu
c_args : gio_c_args,
# intl.lib is not compatible with SAFESEH
link_args : noseh_link_args,
diff --git a/meta/recipes-core/glib-2.0/glib-2.0/0001-Remove-the-warning-about-deprecated-paths-in-schemas.patch b/meta/recipes-core/glib-2.0/files/0001-Remove-the-warning-about-deprecated-paths-in-schemas.patch
index 0e3a62af6a..5e543339d8 100644
--- a/meta/recipes-core/glib-2.0/glib-2.0/0001-Remove-the-warning-about-deprecated-paths-in-schemas.patch
+++ b/meta/recipes-core/glib-2.0/files/0001-Remove-the-warning-about-deprecated-paths-in-schemas.patch
@@ -1,4 +1,4 @@
-From 8ae2e9c2a04e089306693a021149dc6b7d1bd679 Mon Sep 17 00:00:00 2001
+From 3db055ce8029372096be534c5cfc385f068bab17 Mon Sep 17 00:00:00 2001
From: Alexander Kanavin <alex.kanavin@gmail.com>
Date: Fri, 12 Jun 2015 17:08:46 +0300
Subject: [PATCH] Remove the warning about deprecated paths in schemas
diff --git a/meta/recipes-core/glib-2.0/glib-2.0/0001-gio-tests-resources.c-comment-out-a-build-host-only-.patch b/meta/recipes-core/glib-2.0/files/0001-gio-tests-resources.c-comment-out-a-build-host-only-.patch
index aee2986033..aa7127b65b 100644
--- a/meta/recipes-core/glib-2.0/glib-2.0/0001-gio-tests-resources.c-comment-out-a-build-host-only-.patch
+++ b/meta/recipes-core/glib-2.0/files/0001-gio-tests-resources.c-comment-out-a-build-host-only-.patch
@@ -1,4 +1,4 @@
-From 878e51f82100c698236fda0e069e14ea9249350c Mon Sep 17 00:00:00 2001
+From 97b4f18c65c52c9e6412ecf8affc22f6f42d3465 Mon Sep 17 00:00:00 2001
From: Alexander Kanavin <alex.kanavin@gmail.com>
Date: Wed, 8 Jan 2020 18:22:46 +0100
Subject: [PATCH] gio/tests/resources.c: comment out a build host-only test
@@ -13,7 +13,7 @@ Signed-off-by: Alexander Kanavin <alex.kanavin@gmail.com>
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/gio/tests/resources.c b/gio/tests/resources.c
-index f567914..b21b616 100644
+index f7dc039..f708876 100644
--- a/gio/tests/resources.c
+++ b/gio/tests/resources.c
@@ -1068,7 +1068,7 @@ main (int argc,
diff --git a/meta/recipes-core/glib-2.0/files/0001-girepository-introspection-correctly-install-.gir-fi.patch b/meta/recipes-core/glib-2.0/files/0001-girepository-introspection-correctly-install-.gir-fi.patch
new file mode 100644
index 0000000000..7be9cd8b84
--- /dev/null
+++ b/meta/recipes-core/glib-2.0/files/0001-girepository-introspection-correctly-install-.gir-fi.patch
@@ -0,0 +1,88 @@
+From f1beef5c2d09fae3a5e5a314f984cb3f20abe732 Mon Sep 17 00:00:00 2001
+From: Alexander Kanavin <alex@linutronix.de>
+Date: Tue, 23 Apr 2024 11:24:34 +0200
+Subject: [PATCH] girepository/introspection: correctly install .gir files into
+ custom locations provided via meson option
+
+Upstream-Status: Submitted [https://gitlab.gnome.org/GNOME/glib/-/merge_requests/4020]
+Signed-off-by: Alexander Kanavin <alex@linutronix.de>
+---
+ girepository/introspection/meson.build | 9 +++++++++
+ 1 file changed, 9 insertions(+)
+
+diff --git a/girepository/introspection/meson.build b/girepository/introspection/meson.build
+index 9405686..862ca61 100644
+--- a/girepository/introspection/meson.build
++++ b/girepository/introspection/meson.build
+@@ -49,6 +49,7 @@ glib_gir = gnome.generate_gir(libglib,
+ export_packages: 'glib-2.0',
+ header: 'glib.h',
+ install: true,
++ install_dir_gir: glib_girdir,
+ dependencies: [
+ libgobject_dep,
+ ],
+@@ -76,6 +77,7 @@ if host_system == 'windows'
+ header: 'glib.h',
+ includes: [ glib_gir[0] ],
+ install: true,
++ install_dir_gir: glib_girdir,
+ dependencies: [
+ libgobject_dep,
+ ],
+@@ -104,6 +106,7 @@ else
+ header: 'glib.h',
+ includes: [ glib_gir[0] ],
+ install: true,
++ install_dir_gir: glib_girdir,
+ dependencies: [
+ libgobject_dep,
+ ],
+@@ -137,6 +140,7 @@ gobject_gir = gnome.generate_gir(libgobject,
+ header: 'glib-object.h',
+ includes: [ glib_gir[0] ],
+ install: true,
++ install_dir_gir: glib_girdir,
+ env: gi_gen_env_variables,
+ extra_args: gir_args + [
+ '-DGOBJECT_COMPILATION',
+@@ -162,6 +166,7 @@ gmodule_gir = gnome.generate_gir(libgmodule,
+ header: 'gmodule.h',
+ includes: [ glib_gir[0] ],
+ install: true,
++ install_dir_gir: glib_girdir,
+ dependencies: [
+ libglib_dep,
+ ],
+@@ -224,6 +229,7 @@ gio_gir = gnome.generate_gir(libgio,
+ header: 'gio/gio.h',
+ includes: [ glib_gir[0], gmodule_gir[0], gobject_gir[0] ],
+ install: true,
++ install_dir_gir: glib_girdir,
+ dependencies: [
+ libglib_dep,
+ libgobject_dep,
+@@ -249,6 +255,7 @@ if host_system == 'windows'
+ header: 'gio/gio.h',
+ includes: [ glib_gir[0], gmodule_gir[0], gobject_gir[0], gio_gir[0] ],
+ install: true,
++ install_dir_gir: glib_girdir,
+ dependencies: [
+ libglib_dep,
+ libgobject_dep,
+@@ -277,6 +284,7 @@ else
+ header: 'gio/gio.h',
+ includes: [ glib_gir[0], gmodule_gir[0], gobject_gir[0], gio_gir[0] ],
+ install: true,
++ install_dir_gir: glib_girdir,
+ dependencies: [
+ libglib_dep,
+ libgobject_dep,
+@@ -314,6 +322,7 @@ girepository_gir = gnome.generate_gir(libgirepository,
+ header: 'girepository/girepository.h',
+ includes: [ glib_gir[0], gmodule_gir[0], gobject_gir[0], gio_gir[0] ],
+ install: true,
++ install_dir_gir: glib_girdir,
+ dependencies: [ libglib_dep, libgobject_dep, libgmodule_dep, libgio_dep ],
+ extra_args: gir_args + libgirepository_gir_args,
+ )
diff --git a/meta/recipes-core/glib-2.0/glib-2.0/0001-meson-Run-atomics-test-on-clang-as-well.patch b/meta/recipes-core/glib-2.0/files/0001-meson-Run-atomics-test-on-clang-as-well.patch
index 0b10269114..3a8d3596b0 100644
--- a/meta/recipes-core/glib-2.0/glib-2.0/0001-meson-Run-atomics-test-on-clang-as-well.patch
+++ b/meta/recipes-core/glib-2.0/files/0001-meson-Run-atomics-test-on-clang-as-well.patch
@@ -1,4 +1,4 @@
-From b4b523160ef550a53705fcc45ac6e10d086ce491 Mon Sep 17 00:00:00 2001
+From f04ea29f9f96892ada81bd0acfcef70183138229 Mon Sep 17 00:00:00 2001
From: Khem Raj <raj.khem@gmail.com>
Date: Sat, 12 Oct 2019 17:46:26 -0700
Subject: [PATCH] meson: Run atomics test on clang as well
@@ -14,10 +14,10 @@ Signed-off-by: Khem Raj <raj.khem@gmail.com>
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/meson.build b/meson.build
-index 6ee775e..8bc5fa7 100644
+index 257afb5..5caa6e6 100644
--- a/meson.build
+++ b/meson.build
-@@ -1938,7 +1938,7 @@ atomicdefine = '''
+@@ -2024,7 +2024,7 @@ atomicdefine = '''
# We know that we can always use real ("lock free") atomic operations with MSVC
if cc.get_id() == 'msvc' or cc.get_id() == 'clang-cl' or cc.links(atomictest, name : 'atomic ops')
have_atomic_lock_free = true
diff --git a/meta/recipes-core/glib-2.0/glib-2.0/0001-meson.build-do-not-enable-pidfd-features-on-native-g.patch b/meta/recipes-core/glib-2.0/files/0001-meson.build-do-not-enable-pidfd-features-on-native-g.patch
index 14dcb278e0..9be04960aa 100644
--- a/meta/recipes-core/glib-2.0/glib-2.0/0001-meson.build-do-not-enable-pidfd-features-on-native-g.patch
+++ b/meta/recipes-core/glib-2.0/files/0001-meson.build-do-not-enable-pidfd-features-on-native-g.patch
@@ -1,4 +1,4 @@
-From 294f3e6e9a0a9f4733e85ed6810d1b743055370b Mon Sep 17 00:00:00 2001
+From a63c865aa9a24f3230e8e2bcb5bce88f179c7e2b Mon Sep 17 00:00:00 2001
From: Alexander Kanavin <alex@linutronix.de>
Date: Sat, 16 Sep 2023 22:28:27 +0200
Subject: [PATCH] meson.build: do not enable pidfd features on native glib
@@ -14,10 +14,10 @@ Signed-off-by: Alexander Kanavin <alex@linutronix.de>
1 file changed, 2 insertions(+), 1 deletion(-)
diff --git a/meson.build b/meson.build
-index 8bc5fa7..df1fa60 100644
+index 5caa6e6..688f214 100644
--- a/meson.build
+++ b/meson.build
-@@ -981,7 +981,8 @@ if cc.links('''#include <sys/syscall.h>
+@@ -1022,7 +1022,8 @@ if cc.links('''#include <sys/syscall.h>
waitid (P_PIDFD, 0, &child_info, WEXITED | WNOHANG);
return 0;
}''', name : 'pidfd_open(2) system call')
diff --git a/meta/recipes-core/glib-2.0/glib-2.0/0010-Do-not-hardcode-python-path-into-various-tools.patch b/meta/recipes-core/glib-2.0/files/0010-Do-not-hardcode-python-path-into-various-tools.patch
index 6dff5179c7..4dec252c1f 100644
--- a/meta/recipes-core/glib-2.0/glib-2.0/0010-Do-not-hardcode-python-path-into-various-tools.patch
+++ b/meta/recipes-core/glib-2.0/files/0010-Do-not-hardcode-python-path-into-various-tools.patch
@@ -1,4 +1,4 @@
-From 50636758c73e5e61212a8f801c6c602b8aab5ba7 Mon Sep 17 00:00:00 2001
+From dc7f09c4f52638a70768c528d186da6f83dedc97 Mon Sep 17 00:00:00 2001
From: Alexander Kanavin <alex.kanavin@gmail.com>
Date: Tue, 3 Oct 2017 10:45:55 +0300
Subject: [PATCH] Do not hardcode python path into various tools
@@ -32,7 +32,7 @@ index aa5af43..56e8e2e 100755
# pylint: disable=too-many-lines, missing-docstring, invalid-name
diff --git a/gobject/glib-mkenums.in b/gobject/glib-mkenums.in
-index 353e53a..8ed6c39 100755
+index e10b910..4b619f8 100755
--- a/gobject/glib-mkenums.in
+++ b/gobject/glib-mkenums.in
@@ -1,4 +1,4 @@
diff --git a/meta/recipes-core/glib-2.0/glib-2.0/meson.cross.d/common b/meta/recipes-core/glib-2.0/files/meson.cross.d/common
index 0d7c5fa3f8..0d7c5fa3f8 100644
--- a/meta/recipes-core/glib-2.0/glib-2.0/meson.cross.d/common
+++ b/meta/recipes-core/glib-2.0/files/meson.cross.d/common
diff --git a/meta/recipes-core/glib-2.0/glib-2.0/meson.cross.d/common-glibc b/meta/recipes-core/glib-2.0/files/meson.cross.d/common-glibc
index 3049e5116e..3049e5116e 100644
--- a/meta/recipes-core/glib-2.0/glib-2.0/meson.cross.d/common-glibc
+++ b/meta/recipes-core/glib-2.0/files/meson.cross.d/common-glibc
diff --git a/meta/recipes-core/glib-2.0/glib-2.0/meson.cross.d/common-linux b/meta/recipes-core/glib-2.0/files/meson.cross.d/common-linux
index adad7e62ee..adad7e62ee 100644
--- a/meta/recipes-core/glib-2.0/glib-2.0/meson.cross.d/common-linux
+++ b/meta/recipes-core/glib-2.0/files/meson.cross.d/common-linux
diff --git a/meta/recipes-core/glib-2.0/glib-2.0/meson.cross.d/common-mingw b/meta/recipes-core/glib-2.0/files/meson.cross.d/common-mingw
index 75f911ba1e..75f911ba1e 100644
--- a/meta/recipes-core/glib-2.0/glib-2.0/meson.cross.d/common-mingw
+++ b/meta/recipes-core/glib-2.0/files/meson.cross.d/common-mingw
diff --git a/meta/recipes-core/glib-2.0/glib-2.0/meson.cross.d/common-musl b/meta/recipes-core/glib-2.0/files/meson.cross.d/common-musl
index 3049e5116e..3049e5116e 100644
--- a/meta/recipes-core/glib-2.0/glib-2.0/meson.cross.d/common-musl
+++ b/meta/recipes-core/glib-2.0/files/meson.cross.d/common-musl
diff --git a/meta/recipes-core/glib-2.0/glib-2.0/relocate-modules.patch b/meta/recipes-core/glib-2.0/files/relocate-modules.patch
index 3e79bbf679..a1ff198aa6 100644
--- a/meta/recipes-core/glib-2.0/glib-2.0/relocate-modules.patch
+++ b/meta/recipes-core/glib-2.0/files/relocate-modules.patch
@@ -1,4 +1,4 @@
-From f40e89b3852df37959606ee13b1a14ade81fa886 Mon Sep 17 00:00:00 2001
+From 0133aeabd37a9137722abd86039d7d0797b5896f Mon Sep 17 00:00:00 2001
From: Ross Burton <ross.burton@intel.com>
Date: Fri, 11 Mar 2016 15:35:55 +0000
Subject: [PATCH] glib-2.0: relocate the GIO module directory for native builds
@@ -18,10 +18,10 @@ Signed-off-by: Jussi Kukkonen <jussi.kukkonen@intel.com>
1 file changed, 7 deletions(-)
diff --git a/gio/giomodule.c b/gio/giomodule.c
-index 17fabe6..8021208 100644
+index 1e14955..3c09bb5 100644
--- a/gio/giomodule.c
+++ b/gio/giomodule.c
-@@ -1271,11 +1271,6 @@ get_gio_module_dir (void)
+@@ -1259,11 +1259,6 @@ get_gio_module_dir (void)
g_free (install_dir);
#else
module_dir = g_strdup (GIO_MODULE_DIR);
@@ -33,7 +33,7 @@ index 17fabe6..8021208 100644
#include <dlfcn.h>
{
g_autofree gchar *path = NULL;
-@@ -1294,8 +1289,6 @@ get_gio_module_dir (void)
+@@ -1282,8 +1277,6 @@ get_gio_module_dir (void)
}
}
}
diff --git a/meta/recipes-core/glib-2.0/glib-2.0/run-ptest b/meta/recipes-core/glib-2.0/files/run-ptest
index 831bc3b91f..831bc3b91f 100644
--- a/meta/recipes-core/glib-2.0/glib-2.0/run-ptest
+++ b/meta/recipes-core/glib-2.0/files/run-ptest
diff --git a/meta/recipes-core/glib-2.0/glib-2.0/skip-timeout.patch b/meta/recipes-core/glib-2.0/files/skip-timeout.patch
index cd5ac287c3..0f8b51294b 100644
--- a/meta/recipes-core/glib-2.0/glib-2.0/skip-timeout.patch
+++ b/meta/recipes-core/glib-2.0/files/skip-timeout.patch
@@ -1,4 +1,4 @@
-From bb11d1a4ae77d93ec0743e54077cf0f990243fa6 Mon Sep 17 00:00:00 2001
+From ac75f5d9206e52eec64fef0db4cd91b58a764c99 Mon Sep 17 00:00:00 2001
From: Ross Burton <ross.burton@arm.com>
Date: Thu, 28 Mar 2024 16:27:09 +0000
Subject: [PATCH] Skip /timeout/rounding test
@@ -16,7 +16,7 @@ Signed-off-by: Ross Burton <ross.burton@arm.com>
1 file changed, 1 deletion(-)
diff --git a/glib/tests/timeout.c b/glib/tests/timeout.c
-index 1ae3f3a34..85a715b0f 100644
+index 1ae3f3a..85a715b 100644
--- a/glib/tests/timeout.c
+++ b/glib/tests/timeout.c
@@ -214,7 +214,6 @@ main (int argc, char *argv[])
@@ -27,6 +27,3 @@ index 1ae3f3a34..85a715b0f 100644
return g_test_run ();
}
---
-2.34.1
-
diff --git a/meta/recipes-core/glib-2.0/glib-2.0-initial_2.80.2.bb b/meta/recipes-core/glib-2.0/glib-2.0-initial_2.80.2.bb
new file mode 100644
index 0000000000..7da2838265
--- /dev/null
+++ b/meta/recipes-core/glib-2.0/glib-2.0-initial_2.80.2.bb
@@ -0,0 +1,5 @@
+require glib.inc
+PACKAGES = ""
+PACKAGECONFIG = ""
+
+
diff --git a/meta/recipes-core/glib-2.0/glib-2.0/0001-Set-host_machine-correctly-when-building-with-mingw3.patch b/meta/recipes-core/glib-2.0/glib-2.0/0001-Set-host_machine-correctly-when-building-with-mingw3.patch
deleted file mode 100644
index 32b4cea409..0000000000
--- a/meta/recipes-core/glib-2.0/glib-2.0/0001-Set-host_machine-correctly-when-building-with-mingw3.patch
+++ /dev/null
@@ -1,80 +0,0 @@
-From c0733f7a91dfe13152abc60c5a3064456b3e9d63 Mon Sep 17 00:00:00 2001
-From: Alexander Kanavin <alex.kanavin@gmail.com>
-Date: Wed, 13 Feb 2019 15:32:05 +0100
-Subject: [PATCH] Set host_machine correctly when building with mingw32
-
-Upstream-Status: Inappropriate [oe-core specific]
-Signed-off-by: Alexander Kanavin <alex.kanavin@gmail.com>
----
- gio/tests/meson.build | 8 ++++----
- glib/tests/meson.build | 2 +-
- meson.build | 3 +++
- 3 files changed, 8 insertions(+), 5 deletions(-)
-
-diff --git a/gio/tests/meson.build b/gio/tests/meson.build
-index 4ef3343..e498e7e 100644
---- a/gio/tests/meson.build
-+++ b/gio/tests/meson.build
-@@ -29,7 +29,7 @@ endif
-
- test_cpp_args = test_c_args
-
--if host_machine.system() == 'windows'
-+if host_system == 'windows'
- common_gio_tests_deps += [iphlpapi_dep, winsock2, cc.find_library ('secur32')]
- endif
-
-@@ -230,7 +230,7 @@ if have_dbus_daemon
- endif
-
- # Test programs buildable on UNIX only
--if host_machine.system() != 'windows'
-+if host_system != 'windows'
- gio_tests += {
- 'file' : {},
- 'gdbus-peer-object-manager' : {},
-@@ -562,7 +562,7 @@ if host_machine.system() != 'windows'
- endif # unix
-
- # Test programs buildable on Windows only
--if host_machine.system() == 'windows'
-+if host_system == 'windows'
- gio_tests += {'win32-streams' : {}}
- endif
-
-@@ -632,7 +632,7 @@ if cc.get_id() != 'msvc' and cc.get_id() != 'clang-cl'
- }
- endif
-
--if host_machine.system() != 'windows'
-+if host_system != 'windows'
- test_extra_programs += {
- 'gdbus-example-unix-fd-client' : {
- 'install' : false,
-diff --git a/glib/tests/meson.build b/glib/tests/meson.build
-index d80c86e..5329cda 100644
---- a/glib/tests/meson.build
-+++ b/glib/tests/meson.build
-@@ -216,7 +216,7 @@ if glib_conf.has('HAVE_EVENTFD')
- }
- endif
-
--if host_machine.system() == 'windows'
-+if host_system == 'windows'
- if winsock2.found()
- glib_tests += {
- 'gpoll' : {
-diff --git a/meson.build b/meson.build
-index 813c9b7..6ee775e 100644
---- a/meson.build
-+++ b/meson.build
-@@ -54,6 +54,9 @@ else
- endif
-
- host_system = host_machine.system()
-+if host_system == 'mingw32'
-+ host_system = 'windows'
-+endif
-
- if host_system == 'darwin'
- ios_test_code = '''#include <TargetConditionals.h>
diff --git a/meta/recipes-core/glib-2.0/glib-2.0/0001-Switch-from-the-deprecated-distutils-module-to-the-p.patch b/meta/recipes-core/glib-2.0/glib-2.0/0001-Switch-from-the-deprecated-distutils-module-to-the-p.patch
deleted file mode 100644
index b11c283e6d..0000000000
--- a/meta/recipes-core/glib-2.0/glib-2.0/0001-Switch-from-the-deprecated-distutils-module-to-the-p.patch
+++ /dev/null
@@ -1,34 +0,0 @@
-From a8eb944a10353403241608a084787f6efcbb2eb7 Mon Sep 17 00:00:00 2001
-From: Jordan Williams <jordan@jwillikers.com>
-Date: Fri, 1 Dec 2023 09:53:50 -0600
-Subject: [PATCH] Switch from the deprecated distutils module to the packaging
- module
-
-The distutils module was removed in Python 3.12.
-
-Upstream-Status: Backport [https://gitlab.gnome.org/GNOME/glib/-/commit/6ef967a0f930ce37a8c9b5aff969693b34714291]
-
-Signed-off-by: Martin Jansa <martin.jansa@gmail.com>
----
- gio/gdbus-2.0/codegen/utils.py | 4 ++--
- 1 file changed, 2 insertions(+), 2 deletions(-)
-
-diff --git a/gio/gdbus-2.0/codegen/utils.py b/gio/gdbus-2.0/codegen/utils.py
-index 0204610..08f1ba9 100644
---- a/gio/gdbus-2.0/codegen/utils.py
-+++ b/gio/gdbus-2.0/codegen/utils.py
-@@ -19,7 +19,7 @@
- #
- # Author: David Zeuthen <davidz@redhat.com>
-
--import distutils.version
-+import packaging.version
- import os
- import sys
-
-@@ -166,4 +166,4 @@ def version_cmp_key(key):
- v = str(key[0])
- else:
- v = "0"
-- return (distutils.version.LooseVersion(v), key[1])
-+ return (packaging.version.Version(v), key[1])
diff --git a/meta/recipes-core/glib-2.0/glib-2.0/fix-regex.patch b/meta/recipes-core/glib-2.0/glib-2.0/fix-regex.patch
deleted file mode 100644
index bdfbd55899..0000000000
--- a/meta/recipes-core/glib-2.0/glib-2.0/fix-regex.patch
+++ /dev/null
@@ -1,54 +0,0 @@
-From cce3ae98a2c1966719daabff5a4ec6cf94a846f6 Mon Sep 17 00:00:00 2001
-From: Philip Withnall <pwithnall@gnome.org>
-Date: Mon, 26 Feb 2024 16:55:44 +0000
-Subject: [PATCH] tests: Remove variable-length lookbehind tests for GRegex
-MIME-Version: 1.0
-Content-Type: text/plain; charset=UTF-8
-Content-Transfer-Encoding: 8bit
-
-PCRE2 10.43 has now introduced support for variable-length lookbehind,
-so these tests now fail if GLib is built against PCRE2 10.43 or higher.
-
-See
-https://github.com/PCRE2Project/pcre2/blob/e8db6fa7137f4c6f66cb87e0a3c9467252ec1ef7/ChangeLog#L94.
-
-Rather than making the tests conditional on the version of PCRE2 in use,
-just remove them. They are mostly testing the PCRE2 code rather than
-any code in GLib, so don’t have much value.
-
-This should fix CI runs on msys2-mingw32, which updated to PCRE2 10.43 2
-days ago.
-
-Signed-off-by: Philip Withnall <pwithnall@gnome.org>
-
-Upstream-Status: Backport [https://gitlab.gnome.org/GNOME/glib/-/commit/cce3ae98a2c1966719daabff5a4ec6cf94a846f6]
-Signed-off-by: Alexander Kanavin <alex@linutronix.de>
----
- glib/tests/regex.c | 10 ----------
- 1 file changed, 10 deletions(-)
-
-diff --git a/glib/tests/regex.c b/glib/tests/regex.c
-index 1082526292..d7a698ec67 100644
---- a/glib/tests/regex.c
-+++ b/glib/tests/regex.c
-@@ -1885,16 +1885,6 @@ test_lookbehind (void)
- g_match_info_free (match);
- g_regex_unref (regex);
-
-- regex = g_regex_new ("(?<!dogs?|cats?) x", G_REGEX_OPTIMIZE, G_REGEX_MATCH_DEFAULT, &error);
-- g_assert (regex == NULL);
-- g_assert_error (error, G_REGEX_ERROR, G_REGEX_ERROR_VARIABLE_LENGTH_LOOKBEHIND);
-- g_clear_error (&error);
--
-- regex = g_regex_new ("(?<=ab(c|de)) foo", G_REGEX_OPTIMIZE, G_REGEX_MATCH_DEFAULT, &error);
-- g_assert (regex == NULL);
-- g_assert_error (error, G_REGEX_ERROR, G_REGEX_ERROR_VARIABLE_LENGTH_LOOKBEHIND);
-- g_clear_error (&error);
--
- regex = g_regex_new ("(?<=abc|abde)foo", G_REGEX_OPTIMIZE, G_REGEX_MATCH_DEFAULT, &error);
- g_assert (regex);
- g_assert_no_error (error);
---
-GitLab
-
-
diff --git a/meta/recipes-core/glib-2.0/glib-2.0/memory-monitor.patch b/meta/recipes-core/glib-2.0/glib-2.0/memory-monitor.patch
deleted file mode 100644
index 4f38509da6..0000000000
--- a/meta/recipes-core/glib-2.0/glib-2.0/memory-monitor.patch
+++ /dev/null
@@ -1,361 +0,0 @@
-From ce840b6b111e1e109e511f6833d6aa419e2b723a Mon Sep 17 00:00:00 2001
-From: Philip Withnall <philip@tecnocode.co.uk>
-Date: Tue, 23 Jan 2024 11:16:52 +0000
-Subject: [PATCH] Merge branch '2887-memory-monitor-tests' into 'main'
-
-tests: Fix race condition in memory-monitor-dbus.test
-
-Closes #2887
-
-See merge request GNOME/glib!3844
-
-Hopefully these commits fix the occasional failures we've been seeing:
-https://bugzilla.yoctoproject.org/show_bug.cgi?id=15362
-
-Upstream-Status: Backport
-Signed-off-by: Ross Burton <ross.burton@arm.com>
----
- gio/tests/memory-monitor-dbus.py.in | 64 +++++++++++++-------
- gio/tests/memory-monitor-portal.py.in | 54 ++++++++++-------
- gio/tests/power-profile-monitor-dbus.py.in | 35 ++++++-----
- gio/tests/power-profile-monitor-portal.py.in | 34 ++++++-----
- 4 files changed, 113 insertions(+), 74 deletions(-)
-
-diff --git a/gio/tests/memory-monitor-dbus.py.in b/gio/tests/memory-monitor-dbus.py.in
-index bf32918..7aae01e 100755
---- a/gio/tests/memory-monitor-dbus.py.in
-+++ b/gio/tests/memory-monitor-dbus.py.in
-@@ -16,7 +16,6 @@ import sys
- import subprocess
- import fcntl
- import os
--import time
-
- import taptestrunner
-
-@@ -57,53 +56,74 @@ try:
- fcntl.fcntl(self.p_mock.stdout, fcntl.F_SETFL, flags | os.O_NONBLOCK)
- self.last_warning = -1
- self.dbusmock = dbus.Interface(self.obj_lmm, dbusmock.MOCK_IFACE)
-+
-+ try:
-+ self.wait_for_bus_object('org.freedesktop.LowMemoryMonitor',
-+ '/org/freedesktop/LowMemoryMonitor',
-+ system_bus=True)
-+ except:
-+ raise
-+
- self.memory_monitor = Gio.MemoryMonitor.dup_default()
-+ assert("GMemoryMonitorDBus" in str(self.memory_monitor))
- self.memory_monitor.connect("low-memory-warning", self.memory_warning_cb)
- self.mainloop = GLib.MainLoop()
- self.main_context = self.mainloop.get_context()
-
-+ # The LowMemoryMonitor API is stateless: it doesn’t expose any
-+ # properties, just a warning signal. Emit the signal in a loop until
-+ # the GMemoryMonitor instance has initialised and synchronised to
-+ # the right state.
-+ def emit_warning(level):
-+ self.dbusmock.EmitWarning(level)
-+ return GLib.SOURCE_CONTINUE
-+
-+ idle_id = GLib.idle_add(emit_warning, 0)
-+ while self.last_warning != 0:
-+ self.main_context.iteration(True)
-+ GLib.source_remove(idle_id)
-+
- def tearDown(self):
- self.p_mock.terminate()
- self.p_mock.wait()
-
-- def assertEventually(self, condition, message=None, timeout=50):
-+ def assertEventually(self, condition, message=None, timeout=5):
- '''Assert that condition function eventually returns True.
-
-- Timeout is in deciseconds, defaulting to 50 (5 seconds). message is
-+ Timeout is in seconds, defaulting to 5 seconds. message is
- printed on failure.
- '''
-- while timeout >= 0:
-- context = GLib.MainContext.default()
-- while context.iteration(False):
-- pass
-- if condition():
-- break
-- timeout -= 1
-- time.sleep(0.1)
-- else:
-- self.fail(message or 'timed out waiting for ' + str(condition))
-+ if not message:
-+ message = 'timed out waiting for ' + str(condition)
-+
-+ def timed_out_cb(message):
-+ self.fail(message)
-+ return GLib.SOURCE_REMOVE
-+
-+ timeout_source = GLib.timeout_source_new_seconds(timeout)
-+ timeout_source.set_callback(timed_out_cb, message)
-+ timeout_source.attach(self.main_context)
-+
-+ while not condition():
-+ self.main_context.iteration(True)
-+
-+ timeout_source.destroy()
-
- def memory_warning_cb(self, monitor, level):
-+ print("Received memory warning signal, level", level)
- self.last_warning = level
- self.main_context.wakeup()
-
- def test_low_memory_warning_signal(self):
- '''LowMemoryWarning signal'''
-
-- # Wait 2 seconds
-- timeout = 2
-- while timeout > 0:
-- time.sleep(0.5)
-- timeout -= 0.5
-- self.main_context.iteration(False)
--
- self.dbusmock.EmitWarning(100)
- # Wait 2 seconds or until warning
-- self.assertEventually(lambda: self.last_warning == 100, "'100' low-memory warning not received", 20)
-+ self.assertEventually(lambda: self.last_warning == 100, "'100' low-memory warning not received", 2)
-
- self.dbusmock.EmitWarning(255)
- # Wait 2 seconds or until warning
-- self.assertEventually(lambda: self.last_warning == 255, "'255' low-memory warning not received", 20)
-+ self.assertEventually(lambda: self.last_warning == 255, "'255' low-memory warning not received", 2)
-
- except ImportError as e:
- @unittest.skip("Cannot import %s" % e.name)
-diff --git a/gio/tests/memory-monitor-portal.py.in b/gio/tests/memory-monitor-portal.py.in
-index 748cee8..f570508 100755
---- a/gio/tests/memory-monitor-portal.py.in
-+++ b/gio/tests/memory-monitor-portal.py.in
-@@ -16,7 +16,6 @@ import sys
- import subprocess
- import fcntl
- import os
--import time
-
- import taptestrunner
-
-@@ -80,26 +79,44 @@ try:
- self.mainloop = GLib.MainLoop()
- self.main_context = self.mainloop.get_context()
-
-+ # The LowMemoryMonitor API is stateless: it doesn’t expose any
-+ # properties, just a warning signal. Emit the signal in a loop until
-+ # the GMemoryMonitor instance has initialised and synchronised to
-+ # the right state.
-+ def emit_warning(level):
-+ self.dbusmock.EmitWarning(level)
-+ return GLib.SOURCE_CONTINUE
-+
-+ idle_id = GLib.idle_add(self.emit_warning, 0)
-+ while self.last_warning != 0:
-+ self.main_context.iteration(True)
-+ GLib.source_remove(idle_id)
-+
- def tearDown(self):
- self.p_mock.terminate()
- self.p_mock.wait()
-
-- def assertEventually(self, condition, message=None, timeout=50):
-+ def assertEventually(self, condition, message=None, timeout=5):
- '''Assert that condition function eventually returns True.
-
-- Timeout is in deciseconds, defaulting to 50 (5 seconds). message is
-+ Timeout is in seconds, defaulting to 5 seconds. message is
- printed on failure.
- '''
-- while timeout >= 0:
-- context = GLib.MainContext.default()
-- while context.iteration(False):
-- pass
-- if condition():
-- break
-- timeout -= 1
-- time.sleep(0.1)
-- else:
-- self.fail(message or 'timed out waiting for ' + str(condition))
-+ if not message:
-+ message = 'timed out waiting for ' + str(condition)
-+
-+ def timed_out_cb(message):
-+ self.fail(message)
-+ return GLib.SOURCE_REMOVE
-+
-+ timeout_source = GLib.timeout_source_new_seconds(timeout)
-+ timeout_source.set_callback(timed_out_cb, message)
-+ timeout_source.attach(self.main_context)
-+
-+ while not condition():
-+ self.main_context.iteration(True)
-+
-+ timeout_source.destroy()
-
- def portal_memory_warning_cb(self, monitor, level):
- self.last_warning = level
-@@ -108,20 +125,13 @@ try:
- def test_low_memory_warning_portal_signal(self):
- '''LowMemoryWarning signal'''
-
-- # Wait 2 seconds
-- timeout = 2
-- while timeout > 0:
-- time.sleep(0.5)
-- timeout -= 0.5
-- self.main_context.iteration(False)
--
- self.dbusmock.EmitWarning(100)
- # Wait 2 seconds or until warning
-- self.assertEventually(lambda: self.last_warning == 100, "'100' low-memory warning not received", 20)
-+ self.assertEventually(lambda: self.last_warning == 100, "'100' low-memory warning not received", 2)
-
- self.dbusmock.EmitWarning(255)
- # Wait 2 seconds or until warning
-- self.assertEventually(lambda: self.last_warning == 255, "'255' low-memory warning not received", 20)
-+ self.assertEventually(lambda: self.last_warning == 255, "'255' low-memory warning not received", 2)
-
- except ImportError as e:
- @unittest.skip("Cannot import %s" % e.name)
-diff --git a/gio/tests/power-profile-monitor-dbus.py.in b/gio/tests/power-profile-monitor-dbus.py.in
-index 06e594f..f955afc 100755
---- a/gio/tests/power-profile-monitor-dbus.py.in
-+++ b/gio/tests/power-profile-monitor-dbus.py.in
-@@ -16,7 +16,6 @@ import sys
- import subprocess
- import fcntl
- import os
--import time
-
- import taptestrunner
-
-@@ -58,6 +57,7 @@ try:
- self.power_saver_enabled = False
- self.dbus_props = dbus.Interface(self.obj_ppd, dbus.PROPERTIES_IFACE)
- self.power_profile_monitor = Gio.PowerProfileMonitor.dup_default()
-+ assert("GPowerProfileMonitorDBus" in str(self.power_profile_monitor))
- self.power_profile_monitor.connect("notify::power-saver-enabled", self.power_saver_enabled_cb)
- self.mainloop = GLib.MainLoop()
- self.main_context = self.mainloop.get_context()
-@@ -66,22 +66,27 @@ try:
- self.p_mock.terminate()
- self.p_mock.wait()
-
-- def assertEventually(self, condition, message=None, timeout=50):
-+ def assertEventually(self, condition, message=None, timeout=5):
- '''Assert that condition function eventually returns True.
-
-- Timeout is in deciseconds, defaulting to 50 (5 seconds). message is
-+ Timeout is in seconds, defaulting to 5 seconds. message is
- printed on failure.
- '''
-- while timeout >= 0:
-- context = GLib.MainContext.default()
-- while context.iteration(False):
-- pass
-- if condition():
-- break
-- timeout -= 1
-- time.sleep(0.1)
-- else:
-- self.fail(message or 'timed out waiting for ' + str(condition))
-+ if not message:
-+ message = 'timed out waiting for ' + str(condition)
-+
-+ def timed_out_cb(message):
-+ self.fail(message)
-+ return GLib.SOURCE_REMOVE
-+
-+ timeout_source = GLib.timeout_source_new_seconds(timeout)
-+ timeout_source.set_callback(timed_out_cb, message)
-+ timeout_source.attach(self.main_context)
-+
-+ while not condition():
-+ self.main_context.iteration(True)
-+
-+ timeout_source.destroy()
-
- def power_saver_enabled_cb(self, spec, data):
- self.power_saver_enabled = self.power_profile_monitor.get_power_saver_enabled()
-@@ -92,10 +97,10 @@ try:
-
- self.assertEqual(self.power_profile_monitor.get_power_saver_enabled(), False)
- self.dbus_props.Set('net.hadess.PowerProfiles', 'ActiveProfile', dbus.String('power-saver', variant_level=1))
-- self.assertEventually(lambda: self.power_saver_enabled == True, "power-saver didn't become enabled", 10)
-+ self.assertEventually(lambda: self.power_saver_enabled == True, "power-saver didn't become enabled", 1)
-
- self.dbus_props.Set('net.hadess.PowerProfiles', 'ActiveProfile', dbus.String('balanced', variant_level=1))
-- self.assertEventually(lambda: self.power_saver_enabled == False, "power-saver didn't become disabled", 10)
-+ self.assertEventually(lambda: self.power_saver_enabled == False, "power-saver didn't become disabled", 1)
-
- except ImportError as e:
- @unittest.skip("Cannot import %s" % e.name)
-diff --git a/gio/tests/power-profile-monitor-portal.py.in b/gio/tests/power-profile-monitor-portal.py.in
-index 09e9a45..ad2abf6 100755
---- a/gio/tests/power-profile-monitor-portal.py.in
-+++ b/gio/tests/power-profile-monitor-portal.py.in
-@@ -16,7 +16,6 @@ import sys
- import subprocess
- import fcntl
- import os
--import time
-
- import taptestrunner
-
-@@ -90,22 +89,27 @@ try:
- self.p_mock.terminate()
- self.p_mock.wait()
-
-- def assertEventually(self, condition, message=None, timeout=50):
-+ def assertEventually(self, condition, message=None, timeout=5):
- '''Assert that condition function eventually returns True.
-
-- Timeout is in deciseconds, defaulting to 50 (5 seconds). message is
-+ Timeout is in seconds, defaulting to 5 seconds. message is
- printed on failure.
- '''
-- while timeout >= 0:
-- context = GLib.MainContext.default()
-- while context.iteration(False):
-- pass
-- if condition():
-- break
-- timeout -= 1
-- time.sleep(0.1)
-- else:
-- self.fail(message or 'timed out waiting for ' + str(condition))
-+ if not message:
-+ message = 'timed out waiting for ' + str(condition)
-+
-+ def timed_out_cb(message):
-+ self.fail(message)
-+ return GLib.SOURCE_REMOVE
-+
-+ timeout_source = GLib.timeout_source_new_seconds(timeout)
-+ timeout_source.set_callback(timed_out_cb, message)
-+ timeout_source.attach(self.main_context)
-+
-+ while not condition():
-+ self.main_context.iteration(True)
-+
-+ timeout_source.destroy()
-
- def power_saver_enabled_cb(self, spec, data):
- self.power_saver_enabled = self.power_profile_monitor.get_power_saver_enabled()
-@@ -116,10 +120,10 @@ try:
-
- self.assertEqual(self.power_profile_monitor.get_power_saver_enabled(), False)
- self.dbus_props.Set('net.hadess.PowerProfiles', 'ActiveProfile', dbus.String('power-saver', variant_level=1))
-- self.assertEventually(lambda: self.power_saver_enabled == True, "power-saver didn't become enabled", 10)
-+ self.assertEventually(lambda: self.power_saver_enabled == True, "power-saver didn't become enabled", 1)
-
- self.dbus_props.Set('net.hadess.PowerProfiles', 'ActiveProfile', dbus.String('balanced', variant_level=1))
-- self.assertEventually(lambda: self.power_saver_enabled == False, "power-saver didn't become disabled", 10)
-+ self.assertEventually(lambda: self.power_saver_enabled == False, "power-saver didn't become disabled", 1)
-
- def test_power_profile_power_saver_enabled_portal_default(self):
- '''power-saver-enabled property default value'''
diff --git a/meta/recipes-core/glib-2.0/glib-2.0_2.78.4.bb b/meta/recipes-core/glib-2.0/glib-2.0_2.78.4.bb
deleted file mode 100644
index b1669ead75..0000000000
--- a/meta/recipes-core/glib-2.0/glib-2.0_2.78.4.bb
+++ /dev/null
@@ -1,57 +0,0 @@
-require glib.inc
-
-PE = "1"
-
-SHRT_VER = "${@oe.utils.trim_version("${PV}", 2)}"
-
-SRC_URI = "${GNOME_MIRROR}/glib/${SHRT_VER}/glib-${PV}.tar.xz \
- file://run-ptest \
- file://0001-Fix-DATADIRNAME-on-uclibc-Linux.patch \
- file://0001-Remove-the-warning-about-deprecated-paths-in-schemas.patch \
- file://0001-Install-gio-querymodules-as-libexec_PROGRAM.patch \
- file://0010-Do-not-hardcode-python-path-into-various-tools.patch \
- file://0001-Set-host_machine-correctly-when-building-with-mingw3.patch \
- file://0001-Do-not-write-bindir-into-pkg-config-files.patch \
- file://0001-meson-Run-atomics-test-on-clang-as-well.patch \
- file://0001-gio-tests-resources.c-comment-out-a-build-host-only-.patch \
- file://0001-Switch-from-the-deprecated-distutils-module-to-the-p.patch \
- file://memory-monitor.patch \
- file://fix-regex.patch \
- file://skip-timeout.patch \
- "
-SRC_URI:append:class-native = " file://relocate-modules.patch \
- file://0001-meson.build-do-not-enable-pidfd-features-on-native-g.patch \
- "
-
-SRC_URI[sha256sum] = "24b8e0672dca120cc32d394bccb85844e732e04fe75d18bb0573b2dbc7548f63"
-
-# Find any meson cross files in FILESPATH that are relevant for the current
-# build (using siteinfo) and add them to EXTRA_OEMESON.
-inherit siteinfo
-def find_meson_cross_files(d):
- if bb.data.inherits_class('native', d):
- return ""
-
- thisdir = os.path.normpath(d.getVar("THISDIR"))
- import collections
- sitedata = siteinfo_data(d)
- # filename -> found
- files = collections.OrderedDict()
- for path in d.getVar("FILESPATH").split(":"):
- for element in sitedata:
- filename = os.path.normpath(os.path.join(path, "meson.cross.d", element))
- sanitized_path = filename.replace(thisdir, "${THISDIR}")
- if sanitized_path == filename:
- if os.path.exists(filename):
- bb.error("Cannot add '%s' to --cross-file, because it's not relative to THISDIR '%s' and sstate signature would contain this full path" % (filename, thisdir))
- continue
- files[filename.replace(thisdir, "${THISDIR}")] = os.path.exists(filename)
-
- items = ["--cross-file=" + k for k,v in files.items() if v]
- d.appendVar("EXTRA_OEMESON", " " + " ".join(items))
- items = ["%s:%s" % (k, "True" if v else "False") for k,v in files.items()]
- d.appendVarFlag("do_configure", "file-checksums", " " + " ".join(items))
-
-python () {
- find_meson_cross_files(d)
-}
diff --git a/meta/recipes-core/glib-2.0/glib-2.0_2.80.2.bb b/meta/recipes-core/glib-2.0/glib-2.0_2.80.2.bb
new file mode 100644
index 0000000000..ef80cc47cf
--- /dev/null
+++ b/meta/recipes-core/glib-2.0/glib-2.0_2.80.2.bb
@@ -0,0 +1,2 @@
+require glib.inc
+
diff --git a/meta/recipes-core/glib-2.0/glib.inc b/meta/recipes-core/glib-2.0/glib.inc
index fac8875d84..690d1c162c 100644
--- a/meta/recipes-core/glib-2.0/glib.inc
+++ b/meta/recipes-core/glib-2.0/glib.inc
@@ -28,21 +28,26 @@ PACKAGES += "${PN}-codegen ${PN}-utils"
LEAD_SONAME = "libglib-2.0.*"
-inherit meson gettext gtk-doc pkgconfig ptest-gnome upstream-version-is-even bash-completion gio-module-cache manpages gobject-introspection-data
-
-GTKDOC_MESON_OPTION = "gtk_doc"
+inherit meson gettext gi-docgen pkgconfig ptest-gnome upstream-version-is-even bash-completion gio-module-cache manpages gobject-introspection-data
S = "${WORKDIR}/glib-${PV}"
+GIDOCGEN_MESON_OPTION = "documentation"
+
PACKAGECONFIG ??= "libmount \
+ ${@bb.utils.contains('GI_DATA_ENABLED', 'True', 'introspection', '', d)} \
${@bb.utils.contains('PTEST_ENABLED', '1', 'tests', '', d)}"
+PACKAGECONFIG:class-native = ""
+
PACKAGECONFIG[libmount] = "-Dlibmount=enabled,-Dlibmount=disabled,util-linux"
-PACKAGECONFIG[manpages] = "-Dman=true, -Dman=false, libxslt-native xmlto-native"
+PACKAGECONFIG[manpages] = "-Dman-pages=enabled, -Dman-pages=disabled, python3-docutils-native"
PACKAGECONFIG[libelf] = "-Dlibelf=enabled,-Dlibelf=disabled,elfutils"
PACKAGECONFIG[tests] = "-Dinstalled_tests=true,-Dinstalled_tests=false,"
PACKAGECONFIG[selinux] = "-Dselinux=enabled,-Dselinux=disabled,libselinux"
+PACKAGECONFIG[introspection] = "-Dintrospection=enabled,-Dintrospection=disabled,gobject-introspection-native gobject-introspection glib-2.0-initial"
EXTRA_OEMESON = "-Ddtrace=false -Dsystemtap=false"
+EXTRA_OEMESON:append:class-target = " ${@'-Dgir_dir_prefix=${libdir}' if d.getVar('MULTILIBS') else ''}"
do_configure:prepend() {
sed -i -e '1s,#!.*,#!${USRBINPATH}/env python3,' ${S}/gio/gdbus-2.0/codegen/gdbus-codegen.in
@@ -53,14 +58,16 @@ FILES:${PN} = "${libdir}/lib*${SOLIBS} \
${libexecdir}/*gio-querymodules \
${libexecdir}/*gio-launch-desktop \
${datadir}/glib-2.0/dtds \
- ${datadir}/glib-2.0/schemas"
-
+ ${datadir}/glib-2.0/schemas \
+ ${libdir}/girepository-*/*.typelib \
+"
FILES:${PN}-dev += "${libdir}/glib-2.0/include \
${libdir}/gio/modules/lib*${SOLIBSDEV} \
${libdir}/gio/modules/*.la \
${datadir}/glib-2.0/gettext/po/Makefile.in.in \
${datadir}/glib-2.0/schemas/gschema.dtd \
${datadir}/glib-2.0/valgrind/glib.supp \
+ ${datadir}/gir-*/*.gir ${libdir}/gir-*/*.gir \
${datadir}/gettext/its"
FILES:${PN}-dbg += "${datadir}/glib-2.0/gdb ${datadir}/gdb"
FILES:${PN}-codegen = "${datadir}/glib-2.0/codegen/*.py \
@@ -204,3 +211,56 @@ RDEPENDS:${PN}-ptest:append:libc-glibc = "\
locale-base-pl-pl.iso-8859-2 \
locale-base-tr-tr \
"
+
+PE = "1"
+
+SHRT_VER = "${@oe.utils.trim_version("${PV}", 2)}"
+
+SRC_URI = "${GNOME_MIRROR}/glib/${SHRT_VER}/glib-${PV}.tar.xz \
+ file://run-ptest \
+ file://0001-Fix-DATADIRNAME-on-uclibc-Linux.patch \
+ file://0001-Remove-the-warning-about-deprecated-paths-in-schemas.patch \
+ file://0001-Install-gio-querymodules-as-libexec_PROGRAM.patch \
+ file://0010-Do-not-hardcode-python-path-into-various-tools.patch \
+ file://0001-Do-not-write-bindir-into-pkg-config-files.patch \
+ file://0001-meson-Run-atomics-test-on-clang-as-well.patch \
+ file://0001-gio-tests-resources.c-comment-out-a-build-host-only-.patch \
+ file://skip-timeout.patch \
+ file://0001-girepository-introspection-correctly-install-.gir-fi.patch \
+ "
+SRC_URI:append:class-native = " file://relocate-modules.patch \
+ file://0001-meson.build-do-not-enable-pidfd-features-on-native-g.patch \
+ "
+
+SRC_URI[sha256sum] = "b9cfb6f7a5bd5b31238fd5d56df226b2dda5ea37611475bf89f6a0f9400fe8bd"
+
+# Find any meson cross files in FILESPATH that are relevant for the current
+# build (using siteinfo) and add them to EXTRA_OEMESON.
+inherit siteinfo
+def find_meson_cross_files(d):
+ if bb.data.inherits_class('native', d):
+ return ""
+
+ thisdir = os.path.normpath(d.getVar("THISDIR"))
+ import collections
+ sitedata = siteinfo_data(d)
+ # filename -> found
+ files = collections.OrderedDict()
+ for path in d.getVar("FILESPATH").split(":"):
+ for element in sitedata:
+ filename = os.path.normpath(os.path.join(path, "meson.cross.d", element))
+ sanitized_path = filename.replace(thisdir, "${THISDIR}")
+ if sanitized_path == filename:
+ if os.path.exists(filename):
+ bb.error("Cannot add '%s' to --cross-file, because it's not relative to THISDIR '%s' and sstate signature would contain this full path" % (filename, thisdir))
+ continue
+ files[filename.replace(thisdir, "${THISDIR}")] = os.path.exists(filename)
+
+ items = ["--cross-file=" + k for k,v in files.items() if v]
+ d.appendVar("EXTRA_OEMESON", " " + " ".join(items))
+ items = ["%s:%s" % (k, "True" if v else "False") for k,v in files.items()]
+ d.appendVarFlag("do_configure", "file-checksums", " " + " ".join(items))
+
+python () {
+ find_meson_cross_files(d)
+}
diff --git a/meta/recipes-core/glibc/glibc-common.inc b/meta/recipes-core/glibc/glibc-common.inc
index b9516e77f0..91a3f5bcd5 100644
--- a/meta/recipes-core/glibc/glibc-common.inc
+++ b/meta/recipes-core/glibc/glibc-common.inc
@@ -2,7 +2,7 @@ SUMMARY = "GLIBC (GNU C Library)"
DESCRIPTION = "The GNU C Library is used as the system C library in most systems with the Linux kernel."
HOMEPAGE = "http://www.gnu.org/software/libc/libc.html"
SECTION = "libs"
-LICENSE = "GPL-2.0-only & LGPL-2.1-only"
+LICENSE = "GPL-2.0-only & LGPL-2.1-or-later"
LIC_FILES_CHKSUM ?= "file://LICENSES;md5=f77e878d320e99e94ae9a4aea7f491d1 \
file://COPYING;md5=b234ee4d69f5fce4486a80fdaf4a4263 \
diff --git a/meta/recipes-core/glibc/glibc-package.inc b/meta/recipes-core/glibc/glibc-package.inc
index 1ef987be0a..0c5e3b4c3d 100644
--- a/meta/recipes-core/glibc/glibc-package.inc
+++ b/meta/recipes-core/glibc/glibc-package.inc
@@ -69,9 +69,9 @@ inherit multilib_header
do_install() {
oe_runmake install_root=${D} install
- install -Dm 0644 ${WORKDIR}/etc/ld.so.conf ${D}/${sysconfdir}/ld.so.conf
+ install -Dm 0644 ${UNPACKDIR}/etc/ld.so.conf ${D}/${sysconfdir}/ld.so.conf
install -d ${D}${localedir}
- make -f ${WORKDIR}/generate-supported.mk IN="${S}/localedata/SUPPORTED" OUT="${WORKDIR}/SUPPORTED"
+ make -f ${UNPACKDIR}/generate-supported.mk IN="${S}/localedata/SUPPORTED" OUT="${WORKDIR}/SUPPORTED"
# get rid of some broken files...
for i in ${GLIBC_BROKEN_LOCALES}; do
sed -i "/$i/d" ${WORKDIR}/SUPPORTED
@@ -101,7 +101,7 @@ do_install() {
install -d ${D}${localstatedir}/db/nscd
install -m 0755 ${S}/nscd/nscd.init ${D}${sysconfdir}/init.d/nscd
install -m 0755 ${S}/nscd/nscd.conf ${D}${sysconfdir}/nscd.conf
- install -m 0755 ${WORKDIR}/makedbs.sh ${D}${localstatedir}/db
+ install -m 0755 ${UNPACKDIR}/makedbs.sh ${D}${localstatedir}/db
sed -i "s%daemon%start-stop-daemon --start --exec%g" ${D}${sysconfdir}/init.d/nscd
sed -i "s|\(enable-cache\t\+netgroup\t\+\)yes|\1no|" ${D}${sysconfdir}/nscd.conf
diff --git a/meta/recipes-core/glibc/glibc-testsuite_2.39.bb b/meta/recipes-core/glibc/glibc-testsuite_2.39.bb
index 2e076f4b0f..3a2764e40b 100644
--- a/meta/recipes-core/glibc/glibc-testsuite_2.39.bb
+++ b/meta/recipes-core/glibc/glibc-testsuite_2.39.bb
@@ -18,7 +18,7 @@ TOOLCHAIN_TEST_HOST_PORT ??= "2222"
do_check[nostamp] = "1"
do_check[network] = "1"
do_check:append () {
- chmod 0755 ${WORKDIR}/check-test-wrapper
+ chmod 0755 ${UNPACKDIR}/check-test-wrapper
oe_runmake -i \
QEMU_SYSROOT="${RECIPE_SYSROOT}" \
@@ -26,7 +26,7 @@ do_check:append () {
SSH_HOST="${TOOLCHAIN_TEST_HOST}" \
SSH_HOST_USER="${TOOLCHAIN_TEST_HOST_USER}" \
SSH_HOST_PORT="${TOOLCHAIN_TEST_HOST_PORT}" \
- test-wrapper="${WORKDIR}/check-test-wrapper ${TOOLCHAIN_TEST_TARGET}" \
+ test-wrapper="${UNPACKDIR}/check-test-wrapper ${TOOLCHAIN_TEST_TARGET}" \
check
}
diff --git a/meta/recipes-core/glibc/glibc-version.inc b/meta/recipes-core/glibc/glibc-version.inc
index 618a574566..20125e4339 100644
--- a/meta/recipes-core/glibc/glibc-version.inc
+++ b/meta/recipes-core/glibc/glibc-version.inc
@@ -1,6 +1,6 @@
SRCBRANCH ?= "release/2.39/master"
PV = "2.39+git"
-SRCREV_glibc ?= "1b9c1a0047fb26a65a9b2a7b8cd977243f7d353c"
+SRCREV_glibc ?= "c7c3f5bf80ae86b34501f473f1a9fc545c911b7f"
SRCREV_localedef ?= "fab74f31b3811df543e24b6de47efdf45b538abc"
GLIBC_GIT_URI ?= "git://sourceware.org/git/glibc.git;protocol=https"
diff --git a/meta/recipes-core/glibc/glibc-y2038-tests_2.39.bb b/meta/recipes-core/glibc/glibc-y2038-tests_2.39.bb
index be49ca4cb7..b760230aec 100644
--- a/meta/recipes-core/glibc/glibc-y2038-tests_2.39.bb
+++ b/meta/recipes-core/glibc/glibc-y2038-tests_2.39.bb
@@ -76,7 +76,7 @@ do_install_ptest_base () {
done
install -d ${D}${PTEST_PATH}
- cp ${WORKDIR}/run-ptest ${D}${PTEST_PATH}/
+ cp ${UNPACKDIR}/run-ptest ${D}${PTEST_PATH}/
}
diff --git a/meta/recipes-core/glibc/glibc/0016-wordsize.h-Unify-the-header-between-arm-and-aarch64.patch b/meta/recipes-core/glibc/glibc/0016-wordsize.h-Unify-the-header-between-arm-and-aarch64.patch
index 066c3b1ea2..9bdfa76318 100644
--- a/meta/recipes-core/glibc/glibc/0016-wordsize.h-Unify-the-header-between-arm-and-aarch64.patch
+++ b/meta/recipes-core/glibc/glibc/0016-wordsize.h-Unify-the-header-between-arm-and-aarch64.patch
@@ -11,16 +11,15 @@ Upstream-Status: Inappropriate [ OE-Specific ]
Signed-off-by: Khem Raj <raj.khem@gmail.com>
---
- sysdeps/aarch64/bits/wordsize.h | 8 ++++++--
- sysdeps/arm/bits/wordsize.h | 1 +
- 2 files changed, 7 insertions(+), 2 deletions(-)
- create mode 120000 sysdeps/arm/bits/wordsize.h
+ sysdeps/aarch64/bits/wordsize.h | 11 +++++++++--
+ sysdeps/arm/bits/wordsize.h | 22 +---------------------
+ 2 files changed, 10 insertions(+), 23 deletions(-)
diff --git a/sysdeps/aarch64/bits/wordsize.h b/sysdeps/aarch64/bits/wordsize.h
-index 118e59172d..b4b0692eb5 100644
+index 118e59172d..ff86359fe8 100644
--- a/sysdeps/aarch64/bits/wordsize.h
+++ b/sysdeps/aarch64/bits/wordsize.h
-@@ -17,12 +17,16 @@
+@@ -17,12 +17,19 @@
License along with the GNU C Library; if not, see
<https://www.gnu.org/licenses/>. */
@@ -33,12 +32,42 @@ index 118e59172d..b4b0692eb5 100644
# define __WORDSIZE32_SIZE_ULONG 1
# define __WORDSIZE32_PTRDIFF_LONG 1
+#else
-+# define __WORDSIZE 32
-+# define __WORDSIZE32_SIZE_ULONG 0
-+# define __WORDSIZE32_PTRDIFF_LONG 0
++#define __WORDSIZE 32
++#define __WORDSIZE_TIME64_COMPAT32 1
++#define __WORDSIZE32_SIZE_ULONG 0
++#define __WORDSIZE32_PTRDIFF_LONG 0
#endif
++#ifdef __aarch64__
#define __WORDSIZE_TIME64_COMPAT32 0
++#endif
+diff --git a/sysdeps/arm/bits/wordsize.h b/sysdeps/arm/bits/wordsize.h
+deleted file mode 100644
+index 6ecbfe7c86..0000000000
+--- a/sysdeps/arm/bits/wordsize.h
++++ /dev/null
+@@ -1,21 +0,0 @@
+-/* Copyright (C) 1999-2024 Free Software Foundation, Inc.
+- This file is part of the GNU C Library.
+-
+- The GNU C Library is free software; you can redistribute it and/or
+- modify it under the terms of the GNU Lesser General Public
+- License as published by the Free Software Foundation; either
+- version 2.1 of the License, or (at your option) any later version.
+-
+- The GNU C Library is distributed in the hope that it will be useful,
+- but WITHOUT ANY WARRANTY; without even the implied warranty of
+- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+- Lesser General Public License for more details.
+-
+- You should have received a copy of the GNU Lesser General Public
+- License along with the GNU C Library; if not, see
+- <https://www.gnu.org/licenses/>. */
+-
+-#define __WORDSIZE 32
+-#define __WORDSIZE_TIME64_COMPAT32 1
+-#define __WORDSIZE32_SIZE_ULONG 0
+-#define __WORDSIZE32_PTRDIFF_LONG 0
diff --git a/sysdeps/arm/bits/wordsize.h b/sysdeps/arm/bits/wordsize.h
new file mode 120000
index 0000000000..4c4a788ec2
diff --git a/meta/recipes-core/glibc/glibc/0023-aarch64-configure-Pass-mcpu-along-with-march-to-dete.patch b/meta/recipes-core/glibc/glibc/0023-aarch64-configure-Pass-mcpu-along-with-march-to-dete.patch
deleted file mode 100644
index f6523c5498..0000000000
--- a/meta/recipes-core/glibc/glibc/0023-aarch64-configure-Pass-mcpu-along-with-march-to-dete.patch
+++ /dev/null
@@ -1,62 +0,0 @@
-From 73c26018ed0ecd9c807bb363cc2c2ab4aca66a82 Mon Sep 17 00:00:00 2001
-From: Szabolcs Nagy <szabolcs.nagy@arm.com>
-Date: Wed, 13 Mar 2024 14:34:14 +0000
-Subject: [PATCH] aarch64: fix check for SVE support in assembler
-
-Due to GCC bug 110901 -mcpu can override -march setting when compiling
-asm code and thus a compiler targetting a specific cpu can fail the
-configure check even when binutils gas supports SVE.
-
-The workaround is that explicit .arch directive overrides both -mcpu
-and -march, and since that's what the actual SVE memcpy uses the
-configure check should use that too even if the GCC issue is fixed
-independently.
-
-Upstream-Status: Backport [https://sourceware.org/git/?p=glibc.git;a=commit;h=73c26018ed0ecd9c807bb363cc2c2ab4aca66a82]
-Signed-off-by: Khem Raj <raj.khem@gmail.com>
-Reviewed-by: Florian Weimer <fweimer@redhat.com>
----
- sysdeps/aarch64/configure | 5 +++--
- sysdeps/aarch64/configure.ac | 5 +++--
- 2 files changed, 6 insertions(+), 4 deletions(-)
- mode change 100644 => 100755 sysdeps/aarch64/configure
-
-diff --git a/sysdeps/aarch64/configure b/sysdeps/aarch64/configure
-old mode 100644
-new mode 100755
-index ca57edce47..9606137e8d
---- a/sysdeps/aarch64/configure
-+++ b/sysdeps/aarch64/configure
-@@ -325,9 +325,10 @@ then :
- printf %s "(cached) " >&6
- else $as_nop
- cat > conftest.s <<\EOF
-- ptrue p0.b
-+ .arch armv8.2-a+sve
-+ ptrue p0.b
- EOF
--if { ac_try='${CC-cc} -c -march=armv8.2-a+sve conftest.s 1>&5'
-+if { ac_try='${CC-cc} -c conftest.s 1>&5'
- { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_try\""; } >&5
- (eval $ac_try) 2>&5
- ac_status=$?
-diff --git a/sysdeps/aarch64/configure.ac b/sysdeps/aarch64/configure.ac
-index 27874eceb4..56d12d661d 100644
---- a/sysdeps/aarch64/configure.ac
-+++ b/sysdeps/aarch64/configure.ac
-@@ -90,9 +90,10 @@ LIBC_CONFIG_VAR([aarch64-variant-pcs], [$libc_cv_aarch64_variant_pcs])
- # Check if asm support armv8.2-a+sve
- AC_CACHE_CHECK([for SVE support in assembler], [libc_cv_aarch64_sve_asm], [dnl
- cat > conftest.s <<\EOF
-- ptrue p0.b
-+ .arch armv8.2-a+sve
-+ ptrue p0.b
- EOF
--if AC_TRY_COMMAND(${CC-cc} -c -march=armv8.2-a+sve conftest.s 1>&AS_MESSAGE_LOG_FD); then
-+if AC_TRY_COMMAND(${CC-cc} -c conftest.s 1>&AS_MESSAGE_LOG_FD); then
- libc_cv_aarch64_sve_asm=yes
- else
- libc_cv_aarch64_sve_asm=no
---
-2.44.0
-
diff --git a/meta/recipes-core/glibc/glibc/0024-qemu-stale-process.patch b/meta/recipes-core/glibc/glibc/0023-qemu-stale-process.patch
index c0a467fcec..c0a467fcec 100644
--- a/meta/recipes-core/glibc/glibc/0024-qemu-stale-process.patch
+++ b/meta/recipes-core/glibc/glibc/0023-qemu-stale-process.patch
diff --git a/meta/recipes-core/glibc/glibc_2.39.bb b/meta/recipes-core/glibc/glibc_2.39.bb
index 9122472689..2484ae1cd9 100644
--- a/meta/recipes-core/glibc/glibc_2.39.bb
+++ b/meta/recipes-core/glibc/glibc_2.39.bb
@@ -16,6 +16,10 @@ CVE_STATUS[CVE-2019-1010025] = "disputed: \
Allows for ASLR bypass so can bypass some hardening, not an exploit in itself, may allow \
easier access for another. 'ASLR bypass itself is not a vulnerability.'"
+CVE_STATUS_GROUPS += "CVE_STATUS_STABLE_BACKPORTS"
+CVE_STATUS_STABLE_BACKPORTS = "CVE-2024-2961 CVE-2024-33599 CVE-2024-33600 CVE-2024-33601 CVE-2024-33602"
+CVE_STATUS_STABLE_BACKPORTS[status] = "cpe-stable-backport: fix available in used git hash"
+
DEPENDS += "gperf-native bison-native"
NATIVESDKFIXES ?= ""
@@ -48,8 +52,7 @@ SRC_URI = "${GLIBC_GIT_URI};branch=${SRCBRANCH};name=glibc \
file://0020-tzselect.ksh-Use-bin-sh-default-shell-interpreter.patch \
file://0021-fix-create-thread-failed-in-unprivileged-process-BZ-.patch \
file://0022-Avoid-hardcoded-build-time-paths-in-the-output-binar.patch \
- file://0023-aarch64-configure-Pass-mcpu-along-with-march-to-dete.patch \
- file://0024-qemu-stale-process.patch \
+ file://0023-qemu-stale-process.patch \
"
S = "${WORKDIR}/git"
B = "${WORKDIR}/build-${TARGET_SYS}"
diff --git a/meta/recipes-core/ifupdown/ifupdown_0.8.41.bb b/meta/recipes-core/ifupdown/ifupdown_0.8.41.bb
index 16425ea9e4..c7004ab41d 100644
--- a/meta/recipes-core/ifupdown/ifupdown_0.8.41.bb
+++ b/meta/recipes-core/ifupdown/ifupdown_0.8.41.bb
@@ -35,7 +35,7 @@ do_install () {
# If volatiles are used, then we'll also need /run/network there too.
install -d ${D}/etc/default/volatiles
- install -m 0644 ${WORKDIR}/99_network ${D}/etc/default/volatiles
+ install -m 0644 ${UNPACKDIR}/99_network ${D}/etc/default/volatiles
install -m 0755 ifup ${D}${base_sbindir}/
ln ${D}${base_sbindir}/ifup ${D}${base_sbindir}/ifdown
diff --git a/meta/recipes-core/images/build-appliance-image_15.0.0.bb b/meta/recipes-core/images/build-appliance-image_15.0.0.bb
index 4cf55519cc..e406968df2 100644
--- a/meta/recipes-core/images/build-appliance-image_15.0.0.bb
+++ b/meta/recipes-core/images/build-appliance-image_15.0.0.bb
@@ -44,10 +44,10 @@ IMAGE_CMD:ext4:append () {
fakeroot do_populate_poky_src () {
# Because fetch2's git's unpack uses -s cloneflag, the unpacked git repo
# will become invalid in the target.
- rm -rf ${WORKDIR}/git/.git
- rm -f ${WORKDIR}/git/.gitignore
+ rm -rf ${UNPACKDIR}/git/.git
+ rm -f ${UNPACKDIR}/git/.gitignore
- cp -R ${WORKDIR}/git ${IMAGE_ROOTFS}/home/builder/poky
+ cp -R ${UNPACKDIR}/git ${IMAGE_ROOTFS}/home/builder/poky
mkdir -p ${IMAGE_ROOTFS}/home/builder/poky/build/conf
mkdir -p ${IMAGE_ROOTFS}/home/builder/poky/build/downloads
@@ -58,10 +58,10 @@ fakeroot do_populate_poky_src () {
fi
# Place the README_VirtualBox_Guest_Additions file in builders home folder.
- cp ${WORKDIR}/README_VirtualBox_Guest_Additions.txt ${IMAGE_ROOTFS}/home/builder/
+ cp ${UNPACKDIR}/README_VirtualBox_Guest_Additions.txt ${IMAGE_ROOTFS}/home/builder/
# Place the README_VirtualBox_Toaster file in builders home folder.
- cp ${WORKDIR}/README_VirtualBox_Toaster.txt ${IMAGE_ROOTFS}/home/builder/
+ cp ${UNPACKDIR}/README_VirtualBox_Toaster.txt ${IMAGE_ROOTFS}/home/builder/
echo "INHERIT += \"rm_work\"" >> ${IMAGE_ROOTFS}/home/builder/poky/build/conf/auto.conf
echo "export LC_ALL=en_US.utf8" >> ${IMAGE_ROOTFS}/home/builder/.bashrc
@@ -129,10 +129,15 @@ python () {
d.delVarFlag("do_unpack", "noexec")
}
+# ${S} doesn't exist for us
+do_qa_unpack() {
+ return
+}
+
create_bundle_files () {
cd ${WORKDIR}
mkdir -p Yocto_Build_Appliance
- cp *.vmx* Yocto_Build_Appliance
+ cp ${UNPACKDIR}/*.vmx* Yocto_Build_Appliance
ln -sf ${IMGDEPLOYDIR}/${IMAGE_NAME}.wic.vmdk Yocto_Build_Appliance/Yocto_Build_Appliance.vmdk
ln -sf ${IMGDEPLOYDIR}/${IMAGE_NAME}.wic.vhdx Yocto_Build_Appliance/Yocto_Build_Appliance.vhdx
ln -sf ${IMGDEPLOYDIR}/${IMAGE_NAME}.wic.vhd Yocto_Build_Appliance/Yocto_Build_Appliance.vhd
diff --git a/meta/recipes-core/init-ifupdown/init-ifupdown_1.0.bb b/meta/recipes-core/init-ifupdown/init-ifupdown_1.0.bb
index 409b1c0403..ddf9d1b311 100644
--- a/meta/recipes-core/init-ifupdown/init-ifupdown_1.0.bb
+++ b/meta/recipes-core/init-ifupdown/init-ifupdown_1.0.bb
@@ -3,7 +3,7 @@ DESCRIPTION = "This package provides high level tools to configure network inter
HOMEPAGE = "http://packages.debian.org/ifupdown"
SECTION = "base"
LICENSE = "GPL-2.0-only"
-LIC_FILES_CHKSUM = "file://${WORKDIR}/copyright;md5=3dd6192d306f582dee7687da3d8748ab"
+LIC_FILES_CHKSUM = "file://${S}/copyright;md5=3dd6192d306f582dee7687da3d8748ab"
inherit update-rc.d
@@ -15,7 +15,8 @@ SRC_URI = "file://copyright \
file://interfaces \
file://nfsroot"
-S = "${WORKDIR}"
+S = "${WORKDIR}/sources"
+UNPACKDIR = "${S}"
do_install () {
install -d ${D}${sysconfdir}/init.d \
@@ -23,9 +24,9 @@ do_install () {
${D}${sysconfdir}/network/if-up.d \
${D}${sysconfdir}/network/if-down.d \
${D}${sysconfdir}/network/if-post-down.d
- install -m 0755 ${WORKDIR}/init ${D}${sysconfdir}/init.d/networking
- install -m 0644 ${WORKDIR}/interfaces ${D}${sysconfdir}/network/interfaces
- install -m 0755 ${WORKDIR}/nfsroot ${D}${sysconfdir}/network/if-pre-up.d
+ install -m 0755 ${S}/init ${D}${sysconfdir}/init.d/networking
+ install -m 0644 ${S}/interfaces ${D}${sysconfdir}/network/interfaces
+ install -m 0755 ${S}/nfsroot ${D}${sysconfdir}/network/if-pre-up.d
}
do_install:append:qemuall () {
diff --git a/meta/recipes-core/initrdscripts/initramfs-boot_1.0.bb b/meta/recipes-core/initrdscripts/initramfs-boot_1.0.bb
index 198459f2b2..ec3544c67a 100644
--- a/meta/recipes-core/initrdscripts/initramfs-boot_1.0.bb
+++ b/meta/recipes-core/initrdscripts/initramfs-boot_1.0.bb
@@ -3,11 +3,11 @@ LICENSE = "MIT"
LIC_FILES_CHKSUM = "file://${COREBASE}/meta/COPYING.MIT;md5=3da9cfbcb788c80a0384361b4de20420"
SRC_URI = "file://init-boot.sh"
-
-S = "${WORKDIR}"
+S = "${WORKDIR}/sources"
+UNPACKDIR = "${S}"
do_install() {
- install -m 0755 ${WORKDIR}/init-boot.sh ${D}/init
+ install -m 0755 ${S}/init-boot.sh ${D}/init
# Create device nodes expected by some kernels in initramfs
# before even executing /init.
diff --git a/meta/recipes-core/initrdscripts/initramfs-framework/init b/meta/recipes-core/initrdscripts/initramfs-framework/init
index 567694aff7..e3d8caa0e1 100755
--- a/meta/recipes-core/initrdscripts/initramfs-framework/init
+++ b/meta/recipes-core/initrdscripts/initramfs-framework/init
@@ -54,17 +54,20 @@ debug() {
}
# Prints a message and start a endless loop
+# Force reboot if init_fatal_reboot bootparam is set
fatal() {
- echo $1 >/dev/console
- echo >/dev/console
-
- if [ -n "$bootparam_init_fatal_sh" ]; then
- sh
- else
- while [ "true" ]; do
- sleep 3600
- done
- fi
+ echo $1 >/dev/console
+ echo >/dev/console
+
+ if [ -n "$bootparam_init_fatal_reboot" ]; then
+ reboot -f
+ elif [ -n "$bootparam_init_fatal_sh" ]; then
+ sh
+ else
+ while [ "true" ]; do
+ sleep 3600
+ done
+ fi
}
# Variables shared amoung modules
diff --git a/meta/recipes-core/initrdscripts/initramfs-framework_1.0.bb b/meta/recipes-core/initrdscripts/initramfs-framework_1.0.bb
index 39ea51ccbd..bb4984366d 100644
--- a/meta/recipes-core/initrdscripts/initramfs-framework_1.0.bb
+++ b/meta/recipes-core/initrdscripts/initramfs-framework_1.0.bb
@@ -20,37 +20,38 @@ SRC_URI = "file://init \
file://overlayroot \
"
-S = "${WORKDIR}"
+S = "${WORKDIR}/sources"
+UNPACKDIR = "${S}"
do_install() {
install -d ${D}/init.d
# base
- install -m 0755 ${WORKDIR}/init ${D}/init
- install -m 0755 ${WORKDIR}/nfsrootfs ${D}/init.d/85-nfsrootfs
- install -m 0755 ${WORKDIR}/rootfs ${D}/init.d/90-rootfs
- install -m 0755 ${WORKDIR}/finish ${D}/init.d/99-finish
+ install -m 0755 ${S}/init ${D}/init
+ install -m 0755 ${S}/nfsrootfs ${D}/init.d/85-nfsrootfs
+ install -m 0755 ${S}/rootfs ${D}/init.d/90-rootfs
+ install -m 0755 ${S}/finish ${D}/init.d/99-finish
# exec
- install -m 0755 ${WORKDIR}/exec ${D}/init.d/89-exec
+ install -m 0755 ${S}/exec ${D}/init.d/89-exec
# mdev
- install -m 0755 ${WORKDIR}/mdev ${D}/init.d/01-mdev
+ install -m 0755 ${S}/mdev ${D}/init.d/01-mdev
# udev
- install -m 0755 ${WORKDIR}/udev ${D}/init.d/01-udev
+ install -m 0755 ${S}/udev ${D}/init.d/01-udev
# e2fs
- install -m 0755 ${WORKDIR}/e2fs ${D}/init.d/10-e2fs
+ install -m 0755 ${S}/e2fs ${D}/init.d/10-e2fs
# debug
- install -m 0755 ${WORKDIR}/debug ${D}/init.d/00-debug
+ install -m 0755 ${S}/debug ${D}/init.d/00-debug
# lvm
- install -m 0755 ${WORKDIR}/lvm ${D}/init.d/09-lvm
+ install -m 0755 ${S}/lvm ${D}/init.d/09-lvm
# overlayroot needs to run after rootfs module but before finish
- install -m 0755 ${WORKDIR}/overlayroot ${D}/init.d/91-overlayroot
+ install -m 0755 ${S}/overlayroot ${D}/init.d/91-overlayroot
# Create device nodes expected by some kernels in initramfs
# before even executing /init.
diff --git a/meta/recipes-core/initrdscripts/initramfs-live-boot-tiny_1.0.bb b/meta/recipes-core/initrdscripts/initramfs-live-boot-tiny_1.0.bb
index 847dbc0472..40046f30a7 100644
--- a/meta/recipes-core/initrdscripts/initramfs-live-boot-tiny_1.0.bb
+++ b/meta/recipes-core/initrdscripts/initramfs-live-boot-tiny_1.0.bb
@@ -5,11 +5,11 @@ DEPENDS = "virtual/kernel"
RDEPENDS:${PN} = "busybox-mdev"
SRC_URI = "file://init-live.sh"
-
-S = "${WORKDIR}"
+S = "${WORKDIR}/sources"
+UNPACKDIR = "${S}"
do_install() {
- install -m 0755 ${WORKDIR}/init-live.sh ${D}/init
+ install -m 0755 ${S}/init-live.sh ${D}/init
install -d ${D}/dev
mknod -m 622 ${D}/dev/console c 5 1
}
diff --git a/meta/recipes-core/initrdscripts/initramfs-live-boot_1.0.bb b/meta/recipes-core/initrdscripts/initramfs-live-boot_1.0.bb
index b3b991b8fd..7851cc9605 100644
--- a/meta/recipes-core/initrdscripts/initramfs-live-boot_1.0.bb
+++ b/meta/recipes-core/initrdscripts/initramfs-live-boot_1.0.bb
@@ -5,11 +5,11 @@ DEPENDS = "virtual/kernel"
RDEPENDS:${PN} = "udev udev-extraconf"
SRC_URI = "file://init-live.sh"
-
-S = "${WORKDIR}"
+S = "${WORKDIR}/sources"
+UNPACKDIR = "${S}"
do_install() {
- install -m 0755 ${WORKDIR}/init-live.sh ${D}/init
+ install -m 0755 ${S}/init-live.sh ${D}/init
install -d ${D}/dev
mknod -m 622 ${D}/dev/console c 5 1
}
diff --git a/meta/recipes-core/initrdscripts/initramfs-live-install-efi-testfs_1.0.bb b/meta/recipes-core/initrdscripts/initramfs-live-install-efi-testfs_1.0.bb
index 495eccbeda..31291bcdf2 100644
--- a/meta/recipes-core/initrdscripts/initramfs-live-install-efi-testfs_1.0.bb
+++ b/meta/recipes-core/initrdscripts/initramfs-live-install-efi-testfs_1.0.bb
@@ -5,10 +5,11 @@ SRC_URI = "file://init-install-efi-testfs.sh"
RDEPENDS:${PN} = "parted e2fsprogs-mke2fs dosfstools"
-S = "${WORKDIR}"
+S = "${WORKDIR}/sources"
+UNPACKDIR = "${S}"
do_install() {
- install -m 0755 ${WORKDIR}/init-install-efi-testfs.sh ${D}/install-efi.sh
+ install -m 0755 ${S}/init-install-efi-testfs.sh ${D}/install-efi.sh
}
INHIBIT_DEFAULT_DEPS = "1"
diff --git a/meta/recipes-core/initrdscripts/initramfs-live-install-efi_1.0.bb b/meta/recipes-core/initrdscripts/initramfs-live-install-efi_1.0.bb
index e10faadfbe..ff3b5622db 100644
--- a/meta/recipes-core/initrdscripts/initramfs-live-install-efi_1.0.bb
+++ b/meta/recipes-core/initrdscripts/initramfs-live-install-efi_1.0.bb
@@ -3,14 +3,14 @@ LICENSE = "MIT"
LIC_FILES_CHKSUM = "file://${COREBASE}/meta/COPYING.MIT;md5=3da9cfbcb788c80a0384361b4de20420"
SRC_URI = "file://init-install-efi.sh"
-
RDEPENDS:${PN} = "parted e2fsprogs-mke2fs dosfstools util-linux-blkid ${VIRTUAL-RUNTIME_base-utils}"
RRECOMMENDS:${PN} = "${VIRTUAL-RUNTIME_base-utils-syslog}"
-S = "${WORKDIR}"
+S = "${WORKDIR}/sources"
+UNPACKDIR = "${S}"
do_install() {
- install -m 0755 ${WORKDIR}/init-install-efi.sh ${D}/install-efi.sh
+ install -m 0755 ${S}/init-install-efi.sh ${D}/install-efi.sh
}
# While this package maybe an allarch due to it being a
diff --git a/meta/recipes-core/initrdscripts/initramfs-live-install-testfs_1.0.bb b/meta/recipes-core/initrdscripts/initramfs-live-install-testfs_1.0.bb
index d347e323b3..19f05f9fec 100644
--- a/meta/recipes-core/initrdscripts/initramfs-live-install-testfs_1.0.bb
+++ b/meta/recipes-core/initrdscripts/initramfs-live-install-testfs_1.0.bb
@@ -5,10 +5,11 @@ SRC_URI = "file://init-install-testfs.sh"
RDEPENDS:${PN} = "grub parted e2fsprogs-mke2fs"
-S = "${WORKDIR}"
+S = "${WORKDIR}/sources"
+UNPACKDIR = "${S}"
do_install() {
- install -m 0755 ${WORKDIR}/init-install-testfs.sh ${D}/install.sh
+ install -m 0755 ${S}/init-install-testfs.sh ${D}/install.sh
}
INHIBIT_DEFAULT_DEPS = "1"
diff --git a/meta/recipes-core/initrdscripts/initramfs-live-install_1.0.bb b/meta/recipes-core/initrdscripts/initramfs-live-install_1.0.bb
index 9046d06c02..1d489e2b64 100644
--- a/meta/recipes-core/initrdscripts/initramfs-live-install_1.0.bb
+++ b/meta/recipes-core/initrdscripts/initramfs-live-install_1.0.bb
@@ -3,14 +3,14 @@ LICENSE = "MIT"
LIC_FILES_CHKSUM = "file://${COREBASE}/meta/COPYING.MIT;md5=3da9cfbcb788c80a0384361b4de20420"
SRC_URI = "file://init-install.sh"
-
-S = "${WORKDIR}"
+S = "${WORKDIR}/sources"
+UNPACKDIR = "${S}"
RDEPENDS:${PN} = "grub parted e2fsprogs-mke2fs util-linux-blkid ${VIRTUAL-RUNTIME_base-utils}"
RRECOMMENDS:${PN} = "${VIRTUAL-RUNTIME_base-utils-syslog}"
do_install() {
- install -m 0755 ${WORKDIR}/init-install.sh ${D}/install.sh
+ install -m 0755 ${S}/init-install.sh ${D}/install.sh
}
# While this package maybe an allarch due to it being a
diff --git a/meta/recipes-core/initrdscripts/initramfs-module-install-efi_1.0.bb b/meta/recipes-core/initrdscripts/initramfs-module-install-efi_1.0.bb
index b7499644f0..bb3f275f26 100644
--- a/meta/recipes-core/initrdscripts/initramfs-module-install-efi_1.0.bb
+++ b/meta/recipes-core/initrdscripts/initramfs-module-install-efi_1.0.bb
@@ -7,11 +7,12 @@ RRECOMMENDS:${PN} = "${VIRTUAL-RUNTIME_base-utils-syslog}"
SRC_URI = "file://init-install-efi.sh"
-S = "${WORKDIR}"
+S = "${WORKDIR}/sources"
+UNPACKDIR = "${S}"
do_install() {
install -d ${D}/init.d
- install -m 0755 ${WORKDIR}/init-install-efi.sh ${D}/init.d/install-efi.sh
+ install -m 0755 ${S}/init-install-efi.sh ${D}/init.d/install-efi.sh
}
FILES:${PN} = "/init.d/install-efi.sh"
diff --git a/meta/recipes-core/initrdscripts/initramfs-module-install_1.0.bb b/meta/recipes-core/initrdscripts/initramfs-module-install_1.0.bb
index 11db7124af..b87e59f347 100644
--- a/meta/recipes-core/initrdscripts/initramfs-module-install_1.0.bb
+++ b/meta/recipes-core/initrdscripts/initramfs-module-install_1.0.bb
@@ -12,11 +12,12 @@ COMPATIBLE_HOST:armv7ve = 'null'
SRC_URI = "file://init-install.sh"
-S = "${WORKDIR}"
+S = "${WORKDIR}/sources"
+UNPACKDIR = "${S}"
do_install() {
install -d ${D}/init.d
- install -m 0755 ${WORKDIR}/init-install.sh ${D}/init.d/install.sh
+ install -m 0755 ${S}/init-install.sh ${D}/init.d/install.sh
}
FILES:${PN} = "/init.d/install.sh"
diff --git a/meta/recipes-core/initrdscripts/initramfs-module-setup-live_1.0.bb b/meta/recipes-core/initrdscripts/initramfs-module-setup-live_1.0.bb
index 48a779e9aa..4d9ef79a63 100644
--- a/meta/recipes-core/initrdscripts/initramfs-module-setup-live_1.0.bb
+++ b/meta/recipes-core/initrdscripts/initramfs-module-setup-live_1.0.bb
@@ -9,11 +9,12 @@ inherit allarch
FILESEXTRAPATHS:prepend := "${THISDIR}/initramfs-framework:"
SRC_URI = "file://setup-live"
-S = "${WORKDIR}"
+S = "${WORKDIR}/sources"
+UNPACKDIR = "${S}"
do_install() {
install -d ${D}/init.d
- install -m 0755 ${WORKDIR}/setup-live ${D}/init.d/80-setup-live
+ install -m 0755 ${S}/setup-live ${D}/init.d/80-setup-live
}
FILES:${PN} = "/init.d/80-setup-live"
diff --git a/meta/recipes-core/initscripts/initscripts_1.0.bb b/meta/recipes-core/initscripts/initscripts_1.0.bb
index e61ac554f3..65f97a0af2 100644
--- a/meta/recipes-core/initscripts/initscripts_1.0.bb
+++ b/meta/recipes-core/initscripts/initscripts_1.0.bb
@@ -35,7 +35,8 @@ SRC_URI = "file://functions \
${@bb.utils.contains('DISTRO_FEATURES','selinux','file://sushell','',d)} \
"
-S = "${WORKDIR}"
+S = "${WORKDIR}/sources"
+UNPACKDIR = "${S}"
SRC_URI:append:arm = " file://alignment.sh"
SRC_URI:append:armeb = " file://alignment.sh"
@@ -61,9 +62,9 @@ HALTARGS ?= "-d -f"
VARLIBMOUNTARGS ?= ""
do_configure() {
- sed -i -e "s:SED_HALTARGS:${HALTARGS}:g" ${WORKDIR}/halt
- sed -i -e "s:SED_HALTARGS:${HALTARGS}:g" ${WORKDIR}/reboot
- sed -i -e "s:SED_VARLIBMOUNTARGS:${VARLIBMOUNTARGS}:g" ${WORKDIR}/read-only-rootfs-hook.sh
+ sed -i -e "s:SED_HALTARGS:${HALTARGS}:g" ${S}/halt
+ sed -i -e "s:SED_HALTARGS:${HALTARGS}:g" ${S}/reboot
+ sed -i -e "s:SED_VARLIBMOUNTARGS:${VARLIBMOUNTARGS}:g" ${S}/read-only-rootfs-hook.sh
}
do_install () {
@@ -84,27 +85,27 @@ do_install () {
# Holds state information pertaining to urandom
install -d ${D}${localstatedir}/lib/urandom
- install -m 0644 ${WORKDIR}/functions ${D}${sysconfdir}/init.d
- install -m 0755 ${WORKDIR}/bootmisc.sh ${D}${sysconfdir}/init.d
- install -m 0755 ${WORKDIR}/checkroot.sh ${D}${sysconfdir}/init.d
- install -m 0755 ${WORKDIR}/halt ${D}${sysconfdir}/init.d
- install -m 0755 ${WORKDIR}/hostname.sh ${D}${sysconfdir}/init.d
- install -m 0755 ${WORKDIR}/mountall.sh ${D}${sysconfdir}/init.d
- install -m 0755 ${WORKDIR}/mountnfs.sh ${D}${sysconfdir}/init.d
- install -m 0755 ${WORKDIR}/reboot ${D}${sysconfdir}/init.d
- install -m 0755 ${WORKDIR}/rmnologin.sh ${D}${sysconfdir}/init.d
- install -m 0755 ${WORKDIR}/sendsigs ${D}${sysconfdir}/init.d
- install -m 0755 ${WORKDIR}/single ${D}${sysconfdir}/init.d
- install -m 0755 ${WORKDIR}/umountnfs.sh ${D}${sysconfdir}/init.d
- install -m 0755 ${WORKDIR}/urandom ${D}${sysconfdir}/init.d
+ install -m 0644 ${S}/functions ${D}${sysconfdir}/init.d
+ install -m 0755 ${S}/bootmisc.sh ${D}${sysconfdir}/init.d
+ install -m 0755 ${S}/checkroot.sh ${D}${sysconfdir}/init.d
+ install -m 0755 ${S}/halt ${D}${sysconfdir}/init.d
+ install -m 0755 ${S}/hostname.sh ${D}${sysconfdir}/init.d
+ install -m 0755 ${S}/mountall.sh ${D}${sysconfdir}/init.d
+ install -m 0755 ${S}/mountnfs.sh ${D}${sysconfdir}/init.d
+ install -m 0755 ${S}/reboot ${D}${sysconfdir}/init.d
+ install -m 0755 ${S}/rmnologin.sh ${D}${sysconfdir}/init.d
+ install -m 0755 ${S}/sendsigs ${D}${sysconfdir}/init.d
+ install -m 0755 ${S}/single ${D}${sysconfdir}/init.d
+ install -m 0755 ${S}/umountnfs.sh ${D}${sysconfdir}/init.d
+ install -m 0755 ${S}/urandom ${D}${sysconfdir}/init.d
sed -i ${D}${sysconfdir}/init.d/urandom -e 's,/var/,${localstatedir}/,g;s,/etc/,${sysconfdir}/,g'
- install -m 0755 ${WORKDIR}/devpts.sh ${D}${sysconfdir}/init.d
- install -m 0755 ${WORKDIR}/devpts ${D}${sysconfdir}/default
- install -m 0755 ${WORKDIR}/sysfs.sh ${D}${sysconfdir}/init.d
- install -m 0755 ${WORKDIR}/populate-volatile.sh ${D}${sysconfdir}/init.d
- install -m 0755 ${WORKDIR}/read-only-rootfs-hook.sh ${D}${sysconfdir}/init.d
- install -m 0755 ${WORKDIR}/save-rtc.sh ${D}${sysconfdir}/init.d
- install -m 0644 ${WORKDIR}/volatiles ${D}${sysconfdir}/default/volatiles/00_core
+ install -m 0755 ${S}/devpts.sh ${D}${sysconfdir}/init.d
+ install -m 0755 ${S}/devpts ${D}${sysconfdir}/default
+ install -m 0755 ${S}/sysfs.sh ${D}${sysconfdir}/init.d
+ install -m 0755 ${S}/populate-volatile.sh ${D}${sysconfdir}/init.d
+ install -m 0755 ${S}/read-only-rootfs-hook.sh ${D}${sysconfdir}/init.d
+ install -m 0755 ${S}/save-rtc.sh ${D}${sysconfdir}/init.d
+ install -m 0644 ${S}/volatiles ${D}${sysconfdir}/default/volatiles/00_core
if [ ${@ oe.types.boolean('${VOLATILE_LOG_DIR}') } = True ]; then
sed -i -e '\@^d root root 0755 /var/volatile/log none$@ a\l root root 0755 /var/log /var/volatile/log' \
${D}${sysconfdir}/default/volatiles/00_core
@@ -112,22 +113,22 @@ do_install () {
if [ "${VOLATILE_TMP_DIR}" != "yes" ]; then
sed -i -e "/\<tmp\>/d" ${D}${sysconfdir}/default/volatiles/00_core
fi
- install -m 0755 ${WORKDIR}/dmesg.sh ${D}${sysconfdir}/init.d
- install -m 0644 ${WORKDIR}/logrotate-dmesg.conf ${D}${sysconfdir}/
+ install -m 0755 ${S}/dmesg.sh ${D}${sysconfdir}/init.d
+ install -m 0644 ${S}/logrotate-dmesg.conf ${D}${sysconfdir}/
if [ "${TARGET_ARCH}" = "arm" ]; then
- install -m 0755 ${WORKDIR}/alignment.sh ${D}${sysconfdir}/init.d
+ install -m 0755 ${S}/alignment.sh ${D}${sysconfdir}/init.d
fi
if ${@bb.utils.contains('DISTRO_FEATURES','selinux','true','false',d)}; then
install -d ${D}/${base_sbindir}
- install -m 0755 ${WORKDIR}/sushell ${D}/${base_sbindir}
+ install -m 0755 ${S}/sushell ${D}/${base_sbindir}
fi
#
# Install device dependent scripts
#
- install -m 0755 ${WORKDIR}/banner.sh ${D}${sysconfdir}/init.d/banner.sh
- install -m 0755 ${WORKDIR}/umountfs ${D}${sysconfdir}/init.d/umountfs
+ install -m 0755 ${S}/banner.sh ${D}${sysconfdir}/init.d/banner.sh
+ install -m 0755 ${S}/umountfs ${D}${sysconfdir}/init.d/umountfs
#
# Create runlevel links
#
diff --git a/meta/recipes-core/libcgroup/libcgroup/0001-include-Makefile-install-systemd.h-by-default.patch b/meta/recipes-core/libcgroup/libcgroup/0001-include-Makefile-install-systemd.h-by-default.patch
new file mode 100644
index 0000000000..4b743f9b33
--- /dev/null
+++ b/meta/recipes-core/libcgroup/libcgroup/0001-include-Makefile-install-systemd.h-by-default.patch
@@ -0,0 +1,37 @@
+From 592dcdcf243576bd2517d3da9bc18990de08e37e Mon Sep 17 00:00:00 2001
+From: Kamalesh Babulal <kamalesh.babulal@oracle.com>
+Date: Mon, 27 Nov 2023 20:07:33 +0530
+Subject: [PATCH 1/1] include/Makefile: install systemd.h by default
+
+Install systemd.h header file by default, as we have stub and defined
+versions of the systemd functions for both non-systemd and systemd
+enabled configurations. This will help packagers to ship package
+without systemd support (--enable-systemd=no).
+
+Signed-off-by: Kamalesh Babulal <kamalesh.babulal@oracle.com>
+Signed-off-by: Tom Hromatka <tom.hromatka@oracle.com>
+
+Upstream-Status: Backport [https://github.com/libcgroup/libcgroup/commit/592dcdcf243576bd2517d3da9bc18990de08e37e]
+
+Signed-off-by: Adriaan Schmidt <adriaan.schmidt@siemens.com>
+---
+ include/Makefile.am | 6 +-----
+ 1 file changed, 1 insertion(+), 5 deletions(-)
+
+diff --git a/include/Makefile.am b/include/Makefile.am
+index 23cebaac..4cb05529 100644
+--- a/include/Makefile.am
++++ b/include/Makefile.am
+@@ -2,8 +2,4 @@
+ nobase_include_HEADERS = libcgroup.h libcgroup/error.h libcgroup/init.h \
+ libcgroup/groups.h libcgroup/tasks.h \
+ libcgroup/iterators.h libcgroup/config.h \
+- libcgroup/log.h libcgroup/tools.h
+-
+-if WITH_SYSTEMD
+-nobase_include_HEADERS += libcgroup/systemd.h
+-endif
++ libcgroup/log.h libcgroup/tools.h libcgroup/systemd.h
+--
+2.39.2
+
diff --git a/meta/recipes-core/libcgroup/libcgroup_3.1.0.bb b/meta/recipes-core/libcgroup/libcgroup_3.1.0.bb
index 4b4f19e36f..a1d27c7e7f 100644
--- a/meta/recipes-core/libcgroup/libcgroup_3.1.0.bb
+++ b/meta/recipes-core/libcgroup/libcgroup_3.1.0.bb
@@ -13,6 +13,7 @@ DEPENDS = "bison-native flex-native"
DEPENDS:append:libc-musl = " fts"
SRC_URI = "${GITHUB_BASE_URI}/download/v${PV}/${BP}.tar.gz \
+ file://0001-include-Makefile-install-systemd.h-by-default.patch \
"
UPSTREAM_CHECK_URI = "https://github.com/libcgroup/libcgroup/tags"
diff --git a/meta/recipes-core/libxcrypt/libxcrypt-compat_4.4.36.bb b/meta/recipes-core/libxcrypt/libxcrypt-compat_4.4.36.bb
index d5546ce9ba..30ec6a4674 100644
--- a/meta/recipes-core/libxcrypt/libxcrypt-compat_4.4.36.bb
+++ b/meta/recipes-core/libxcrypt/libxcrypt-compat_4.4.36.bb
@@ -1,5 +1,5 @@
#
-# This provides libcrypto.so.1 which contains obsolete APIs, needed for uninative in particular
+# This provides libcrypt.so.1 which contains obsolete APIs, needed for uninative in particular
#
require libxcrypt.inc
diff --git a/meta/recipes-core/libxml/libxml2_2.12.6.bb b/meta/recipes-core/libxml/libxml2_2.12.7.bb
index 14fcff7fa4..84601c282f 100644
--- a/meta/recipes-core/libxml/libxml2_2.12.6.bb
+++ b/meta/recipes-core/libxml/libxml2_2.12.7.bb
@@ -20,7 +20,7 @@ SRC_URI += "http://www.w3.org/XML/Test/xmlts20130923.tar;subdir=${BP};name=testt
file://install-tests.patch \
"
-SRC_URI[archive.sha256sum] = "889c593a881a3db5fdd96cc9318c87df34eb648edfc458272ad46fd607353fbb"
+SRC_URI[archive.sha256sum] = "24ae78ff1363a973e6d8beba941a7945da2ac056e19b53956aeb6927fd6cfb56"
SRC_URI[testtar.sha256sum] = "c6b2d42ee50b8b236e711a97d68e6c4b5c8d83e69a2be4722379f08702ea7273"
# Disputed as a security issue, but fixed in d39f780
diff --git a/meta/recipes-core/meta/uninative-tarball.bb b/meta/recipes-core/meta/uninative-tarball.bb
index 7eebcaf11a..0fd01fdb64 100644
--- a/meta/recipes-core/meta/uninative-tarball.bb
+++ b/meta/recipes-core/meta/uninative-tarball.bb
@@ -58,6 +58,8 @@ fakeroot archive_sdk() {
DEST="./${SDK_ARCH}-${SDK_OS}"
mv sysroots/${SDK_SYS} $DEST
rm sysroots -rf
+ # There is a check in meta/files/toolchain-shar-extract.sh -- make sure to
+ # keep that check up to date if changing the `1024`
patchelf --set-interpreter ${@''.join('a' for n in range(1024))} $DEST/usr/bin/patchelf
mv $DEST/usr/bin/patchelf $DEST/usr/bin/patchelf-uninative
${SDK_ARCHIVE_CMD}
diff --git a/meta/recipes-core/musl/bsd-headers.bb b/meta/recipes-core/musl/bsd-headers.bb
index 887a816031..7d0bdee870 100644
--- a/meta/recipes-core/musl/bsd-headers.bb
+++ b/meta/recipes-core/musl/bsd-headers.bb
@@ -15,7 +15,8 @@ do_compile[noexec] = "1"
INHIBIT_DEFAULT_DEPS = "1"
-S = "${WORKDIR}"
+S = "${WORKDIR}/sources"
+UNPACKDIR = "${S}"
do_install() {
install -Dm 0644 ${S}/sys-queue.h ${D}${includedir}/sys/queue.h
diff --git a/meta/recipes-core/musl/libc-test_git.bb b/meta/recipes-core/musl/libc-test_git.bb
index 619a959fd2..f55a125a89 100644
--- a/meta/recipes-core/musl/libc-test_git.bb
+++ b/meta/recipes-core/musl/libc-test_git.bb
@@ -50,7 +50,7 @@ do_install () {
}
do_install_ptest_base:append() {
- install -Dm 0755 ${WORKDIR}/run-libc-ptests ${D}${PTEST_PATH}/run-libc-ptests
+ install -Dm 0755 ${UNPACKDIR}/run-libc-ptests ${D}${PTEST_PATH}/run-libc-ptests
}
COMPATIBLE_HOST = "null"
diff --git a/meta/recipes-core/musl/libssp-nonshared.bb b/meta/recipes-core/musl/libssp-nonshared.bb
index 3faf8f00c3..e9f652fc3e 100644
--- a/meta/recipes-core/musl/libssp-nonshared.bb
+++ b/meta/recipes-core/musl/libssp-nonshared.bb
@@ -17,7 +17,8 @@ DEPENDS = "virtual/${TARGET_PREFIX}binutils \
do_configure[noexec] = "1"
-S = "${WORKDIR}"
+S = "${WORKDIR}/sources"
+UNPACKDIR = "${S}"
do_compile() {
${CC} ${CPPFLAGS} ${CFLAGS} -fPIE -c stack_chk.c -o stack_chk.o
diff --git a/meta/recipes-core/musl/musl-legacy-error.bb b/meta/recipes-core/musl/musl-legacy-error.bb
index 5ce5a233ab..11a838a6e8 100644
--- a/meta/recipes-core/musl/musl-legacy-error.bb
+++ b/meta/recipes-core/musl/musl-legacy-error.bb
@@ -13,7 +13,8 @@ do_compile[noexec] = "1"
INHIBIT_DEFAULT_DEPS = "1"
-S = "${WORKDIR}"
+S = "${WORKDIR}/sources"
+UNPACKDIR = "${S}"
do_install() {
install -Dm 0644 ${S}/error.h -t ${D}${includedir}
diff --git a/meta/recipes-core/ncurses/files/0001-Fix-CVE-2023-29491.patch b/meta/recipes-core/ncurses/files/0001-Fix-CVE-2023-29491.patch
deleted file mode 100644
index 1232c8c2a8..0000000000
--- a/meta/recipes-core/ncurses/files/0001-Fix-CVE-2023-29491.patch
+++ /dev/null
@@ -1,462 +0,0 @@
-From 3d54a41f12e9aa059f06e66e72d872f2283395b6 Mon Sep 17 00:00:00 2001
-From: Chen Qi <Qi.Chen@windriver.com>
-Date: Sun, 30 Jul 2023 21:14:00 -0700
-Subject: [PATCH] Fix CVE-2023-29491
-
-CVE: CVE-2023-29491
-
-Upstream-Status: Backport [http://ncurses.scripts.mit.edu/?p=ncurses.git;a=commitdiff;h=eb51b1ea1f75a0ec17c9c5937cb28df1e8eeec56]
-
-Signed-off-by: Chen Qi <Qi.Chen@windriver.com>
----
- ncurses/tinfo/lib_tgoto.c | 10 +++-
- ncurses/tinfo/lib_tparm.c | 116 ++++++++++++++++++++++++++++++++-----
- ncurses/tinfo/read_entry.c | 3 +
- progs/tic.c | 6 ++
- progs/tparm_type.c | 9 +++
- progs/tparm_type.h | 2 +
- progs/tput.c | 61 ++++++++++++++++---
- 7 files changed, 185 insertions(+), 22 deletions(-)
-
-diff --git a/ncurses/tinfo/lib_tgoto.c b/ncurses/tinfo/lib_tgoto.c
-index 9cf5e100..c50ed4df 100644
---- a/ncurses/tinfo/lib_tgoto.c
-+++ b/ncurses/tinfo/lib_tgoto.c
-@@ -207,6 +207,14 @@ tgoto(const char *string, int x, int y)
- result = tgoto_internal(string, x, y);
- else
- #endif
-- result = TIPARM_2(string, y, x);
-+ if ((result = TIPARM_2(string, y, x)) == NULL) {
-+ /*
-+ * Because termcap did not provide a more general solution such as
-+ * tparm(), it was necessary to handle single-parameter capabilities
-+ * using tgoto(). The internal _nc_tiparm() function returns a NULL
-+ * for that case; retry for the single-parameter case.
-+ */
-+ result = TIPARM_1(string, y);
-+ }
- returnPtr(result);
- }
-diff --git a/ncurses/tinfo/lib_tparm.c b/ncurses/tinfo/lib_tparm.c
-index d9bdfd8f..a10a3877 100644
---- a/ncurses/tinfo/lib_tparm.c
-+++ b/ncurses/tinfo/lib_tparm.c
-@@ -1086,6 +1086,64 @@ tparam_internal(TPARM_STATE *tps, const char *string, TPARM_DATA *data)
- return (TPS(out_buff));
- }
-
-+#ifdef CUR
-+/*
-+ * Only a few standard capabilities accept string parameters. The others that
-+ * are parameterized accept only numeric parameters.
-+ */
-+static bool
-+check_string_caps(TPARM_DATA *data, const char *string)
-+{
-+ bool result = FALSE;
-+
-+#define CHECK_CAP(name) (VALID_STRING(name) && !strcmp(name, string))
-+
-+ /*
-+ * Disallow string parameters unless we can check them against a terminal
-+ * description.
-+ */
-+ if (cur_term != NULL) {
-+ int want_type = 0;
-+
-+ if (CHECK_CAP(pkey_key))
-+ want_type = 2; /* function key #1, type string #2 */
-+ else if (CHECK_CAP(pkey_local))
-+ want_type = 2; /* function key #1, execute string #2 */
-+ else if (CHECK_CAP(pkey_xmit))
-+ want_type = 2; /* function key #1, transmit string #2 */
-+ else if (CHECK_CAP(plab_norm))
-+ want_type = 2; /* label #1, show string #2 */
-+ else if (CHECK_CAP(pkey_plab))
-+ want_type = 6; /* function key #1, type string #2, show string #3 */
-+#if NCURSES_XNAMES
-+ else {
-+ char *check;
-+
-+ check = tigetstr("Cs");
-+ if (CHECK_CAP(check))
-+ want_type = 1; /* style #1 */
-+
-+ check = tigetstr("Ms");
-+ if (CHECK_CAP(check))
-+ want_type = 3; /* storage unit #1, content #2 */
-+ }
-+#endif
-+
-+ if (want_type == data->tparm_type) {
-+ result = TRUE;
-+ } else {
-+ T(("unexpected string-parameter"));
-+ }
-+ }
-+ return result;
-+}
-+
-+#define ValidCap() (myData.tparm_type == 0 || \
-+ check_string_caps(&myData, string))
-+#else
-+#define ValidCap() 1
-+#endif
-+
- #if NCURSES_TPARM_VARARGS
-
- NCURSES_EXPORT(char *)
-@@ -1100,7 +1158,7 @@ tparm(const char *string, ...)
- tps->tname = "tparm";
- #endif /* TRACE */
-
-- if (tparm_setup(cur_term, string, &myData) == OK) {
-+ if (tparm_setup(cur_term, string, &myData) == OK && ValidCap()) {
- va_list ap;
-
- va_start(ap, string);
-@@ -1135,7 +1193,7 @@ tparm(const char *string,
- tps->tname = "tparm";
- #endif /* TRACE */
-
-- if (tparm_setup(cur_term, string, &myData) == OK) {
-+ if (tparm_setup(cur_term, string, &myData) == OK && ValidCap()) {
-
- myData.param[0] = a1;
- myData.param[1] = a2;
-@@ -1166,7 +1224,7 @@ tiparm(const char *string, ...)
- tps->tname = "tiparm";
- #endif /* TRACE */
-
-- if (tparm_setup(cur_term, string, &myData) == OK) {
-+ if (tparm_setup(cur_term, string, &myData) == OK && ValidCap()) {
- va_list ap;
-
- va_start(ap, string);
-@@ -1179,7 +1237,25 @@ tiparm(const char *string, ...)
- }
-
- /*
-- * The internal-use flavor ensures that the parameters are numbers, not strings
-+ * The internal-use flavor ensures that parameters are numbers, not strings.
-+ * In addition to ensuring that they are numbers, it ensures that the parameter
-+ * count is consistent with intended usage.
-+ *
-+ * Unlike the general-purpose tparm/tiparm, these internal calls are fairly
-+ * well defined:
-+ *
-+ * expected == 0 - not applicable
-+ * expected == 1 - set color, or vertical/horizontal addressing
-+ * expected == 2 - cursor addressing
-+ * expected == 4 - initialize color or color pair
-+ * expected == 9 - set attributes
-+ *
-+ * Only for the last case (set attributes) should a parameter be optional.
-+ * Also, a capability which calls for more parameters than expected should be
-+ * ignored.
-+ *
-+ * Return a null if the parameter-checks fail. Otherwise, return a pointer to
-+ * the formatted capability string.
- */
- NCURSES_EXPORT(char *)
- _nc_tiparm(int expected, const char *string, ...)
-@@ -1189,22 +1265,36 @@ _nc_tiparm(int expected, const char *string, ...)
- char *result = NULL;
-
- _nc_tparm_err = 0;
-+ T((T_CALLED("_nc_tiparm(%d, %s, ...)"), expected, _nc_visbuf(string)));
- #ifdef TRACE
- tps->tname = "_nc_tiparm";
- #endif /* TRACE */
-
-- if (tparm_setup(cur_term, string, &myData) == OK
-- && myData.num_actual <= expected
-- && myData.tparm_type == 0) {
-- va_list ap;
-+ if (tparm_setup(cur_term, string, &myData) == OK && ValidCap()) {
-+ if (myData.num_actual == 0) {
-+ T(("missing parameter%s, expected %s%d",
-+ expected > 1 ? "s" : "",
-+ expected == 9 ? "up to " : "",
-+ expected));
-+ } else if (myData.num_actual > expected) {
-+ T(("too many parameters, have %d, expected %d",
-+ myData.num_actual,
-+ expected));
-+ } else if (expected != 9 && myData.num_actual != expected) {
-+ T(("expected %d parameters, have %d",
-+ myData.num_actual,
-+ expected));
-+ } else {
-+ va_list ap;
-
-- va_start(ap, string);
-- tparm_copy_valist(&myData, FALSE, ap);
-- va_end(ap);
-+ va_start(ap, string);
-+ tparm_copy_valist(&myData, FALSE, ap);
-+ va_end(ap);
-
-- result = tparam_internal(tps, string, &myData);
-+ result = tparam_internal(tps, string, &myData);
-+ }
- }
-- return result;
-+ returnPtr(result);
- }
-
- /*
-diff --git a/ncurses/tinfo/read_entry.c b/ncurses/tinfo/read_entry.c
-index 2b1875ed..341337d2 100644
---- a/ncurses/tinfo/read_entry.c
-+++ b/ncurses/tinfo/read_entry.c
-@@ -323,6 +323,9 @@ _nc_read_termtype(TERMTYPE2 *ptr, char *buffer, int limit)
- || bool_count < 0
- || num_count < 0
- || str_count < 0
-+ || bool_count > BOOLCOUNT
-+ || num_count > NUMCOUNT
-+ || str_count > STRCOUNT
- || str_size < 0) {
- returnDB(TGETENT_NO);
- }
-diff --git a/progs/tic.c b/progs/tic.c
-index 93a0b491..888927e2 100644
---- a/progs/tic.c
-+++ b/progs/tic.c
-@@ -2270,9 +2270,15 @@ check_1_infotocap(const char *name, NCURSES_CONST char *value, int count)
-
- _nc_reset_tparm(NULL);
- switch (actual) {
-+ case Str:
-+ result = TPARM_1(value, strings[1]);
-+ break;
- case Num_Str:
- result = TPARM_2(value, numbers[1], strings[2]);
- break;
-+ case Str_Str:
-+ result = TPARM_2(value, strings[1], strings[2]);
-+ break;
- case Num_Str_Str:
- result = TPARM_3(value, numbers[1], strings[2], strings[3]);
- break;
-diff --git a/progs/tparm_type.c b/progs/tparm_type.c
-index 3da4a077..644aa62a 100644
---- a/progs/tparm_type.c
-+++ b/progs/tparm_type.c
-@@ -47,6 +47,7 @@ tparm_type(const char *name)
- {code, {longname} }, \
- {code, {ti} }, \
- {code, {tc} }
-+#define XD(code, onlyname) TD(code, onlyname, onlyname, onlyname)
- TParams result = Numbers;
- /* *INDENT-OFF* */
- static const struct {
-@@ -58,6 +59,10 @@ tparm_type(const char *name)
- TD(Num_Str, "pkey_xmit", "pfx", "px"),
- TD(Num_Str, "plab_norm", "pln", "pn"),
- TD(Num_Str_Str, "pkey_plab", "pfxl", "xl"),
-+#if NCURSES_XNAMES
-+ XD(Str, "Cs"),
-+ XD(Str_Str, "Ms"),
-+#endif
- };
- /* *INDENT-ON* */
-
-@@ -80,12 +85,16 @@ guess_tparm_type(int nparam, char **p_is_s)
- case 1:
- if (!p_is_s[0])
- result = Numbers;
-+ if (p_is_s[0])
-+ result = Str;
- break;
- case 2:
- if (!p_is_s[0] && !p_is_s[1])
- result = Numbers;
- if (!p_is_s[0] && p_is_s[1])
- result = Num_Str;
-+ if (p_is_s[0] && p_is_s[1])
-+ result = Str_Str;
- break;
- case 3:
- if (!p_is_s[0] && !p_is_s[1] && !p_is_s[2])
-diff --git a/progs/tparm_type.h b/progs/tparm_type.h
-index 7c102a30..af5bcf0f 100644
---- a/progs/tparm_type.h
-+++ b/progs/tparm_type.h
-@@ -45,8 +45,10 @@
- typedef enum {
- Other = -1
- ,Numbers = 0
-+ ,Str
- ,Num_Str
- ,Num_Str_Str
-+ ,Str_Str
- } TParams;
-
- extern TParams tparm_type(const char *name);
-diff --git a/progs/tput.c b/progs/tput.c
-index 4cd0c5ba..41508b72 100644
---- a/progs/tput.c
-+++ b/progs/tput.c
-@@ -1,5 +1,5 @@
- /****************************************************************************
-- * Copyright 2018-2021,2022 Thomas E. Dickey *
-+ * Copyright 2018-2022,2023 Thomas E. Dickey *
- * Copyright 1998-2016,2017 Free Software Foundation, Inc. *
- * *
- * Permission is hereby granted, free of charge, to any person obtaining a *
-@@ -47,12 +47,15 @@
- #include <transform.h>
- #include <tty_settings.h>
-
--MODULE_ID("$Id: tput.c,v 1.99 2022/02/26 23:19:31 tom Exp $")
-+MODULE_ID("$Id: tput.c,v 1.102 2023/04/08 16:26:36 tom Exp $")
-
- #define PUTS(s) fputs(s, stdout)
-
- const char *_nc_progname = "tput";
-
-+static bool opt_v = FALSE; /* quiet, do not show warnings */
-+static bool opt_x = FALSE; /* clear scrollback if possible */
-+
- static bool is_init = FALSE;
- static bool is_reset = FALSE;
- static bool is_clear = FALSE;
-@@ -81,6 +84,7 @@ usage(const char *optstring)
- KEEP(" -S << read commands from standard input")
- KEEP(" -T TERM use this instead of $TERM")
- KEEP(" -V print curses-version")
-+ KEEP(" -v verbose, show warnings")
- KEEP(" -x do not try to clear scrollback")
- KEEP("")
- KEEP("Commands:")
-@@ -148,7 +152,7 @@ exit_code(int token, int value)
- * Returns nonzero on error.
- */
- static int
--tput_cmd(int fd, TTY * settings, bool opt_x, int argc, char **argv, int *used)
-+tput_cmd(int fd, TTY * settings, int argc, char **argv, int *used)
- {
- NCURSES_CONST char *name;
- char *s;
-@@ -231,7 +235,9 @@ tput_cmd(int fd, TTY * settings, bool opt_x, int argc, char **argv, int *used)
- } else if (VALID_STRING(s)) {
- if (argc > 1) {
- int k;
-+ int narg;
- int analyzed;
-+ int provided;
- int popcount;
- long numbers[1 + NUM_PARM];
- char *strings[1 + NUM_PARM];
-@@ -271,14 +277,45 @@ tput_cmd(int fd, TTY * settings, bool opt_x, int argc, char **argv, int *used)
-
- popcount = 0;
- _nc_reset_tparm(NULL);
-+ /*
-+ * Count the number of numeric parameters which are provided.
-+ */
-+ provided = 0;
-+ for (narg = 1; narg < argc; ++narg) {
-+ char *ending = NULL;
-+ long check = strtol(argv[narg], &ending, 10);
-+ if (check < 0 || ending == argv[narg] || *ending != '\0')
-+ break;
-+ provided = narg;
-+ }
- switch (paramType) {
-+ case Str:
-+ s = TPARM_1(s, strings[1]);
-+ analyzed = 1;
-+ if (provided == 0 && argc >= 1)
-+ provided++;
-+ break;
-+ case Str_Str:
-+ s = TPARM_2(s, strings[1], strings[2]);
-+ analyzed = 2;
-+ if (provided == 0 && argc >= 1)
-+ provided++;
-+ if (provided == 1 && argc >= 2)
-+ provided++;
-+ break;
- case Num_Str:
- s = TPARM_2(s, numbers[1], strings[2]);
- analyzed = 2;
-+ if (provided == 1 && argc >= 2)
-+ provided++;
- break;
- case Num_Str_Str:
- s = TPARM_3(s, numbers[1], strings[2], strings[3]);
- analyzed = 3;
-+ if (provided == 1 && argc >= 2)
-+ provided++;
-+ if (provided == 2 && argc >= 3)
-+ provided++;
- break;
- case Numbers:
- analyzed = _nc_tparm_analyze(NULL, s, p_is_s, &popcount);
-@@ -316,7 +353,13 @@ tput_cmd(int fd, TTY * settings, bool opt_x, int argc, char **argv, int *used)
- if (analyzed < popcount) {
- analyzed = popcount;
- }
-- *used += analyzed;
-+ if (opt_v && (analyzed != provided)) {
-+ fprintf(stderr, "%s: %s parameters for \"%s\"\n",
-+ _nc_progname,
-+ (analyzed < provided ? "extra" : "missing"),
-+ argv[0]);
-+ }
-+ *used += provided;
- }
-
- /* use putp() in order to perform padding */
-@@ -339,7 +382,6 @@ main(int argc, char **argv)
- int used;
- TTY old_settings;
- TTY tty_settings;
-- bool opt_x = FALSE; /* clear scrollback if possible */
- bool is_alias;
- bool need_tty;
-
-@@ -348,7 +390,7 @@ main(int argc, char **argv)
-
- term = getenv("TERM");
-
-- while ((c = getopt(argc, argv, is_alias ? "T:Vx" : "ST:Vx")) != -1) {
-+ while ((c = getopt(argc, argv, is_alias ? "T:Vvx" : "ST:Vvx")) != -1) {
- switch (c) {
- case 'S':
- cmdline = FALSE;
-@@ -361,6 +403,9 @@ main(int argc, char **argv)
- case 'V':
- puts(curses_version());
- ExitProgram(EXIT_SUCCESS);
-+ case 'v': /* verbose */
-+ opt_v = TRUE;
-+ break;
- case 'x': /* do not try to clear scrollback */
- opt_x = TRUE;
- break;
-@@ -404,7 +449,7 @@ main(int argc, char **argv)
- usage(NULL);
- while (argc > 0) {
- tty_settings = old_settings;
-- code = tput_cmd(fd, &tty_settings, opt_x, argc, argv, &used);
-+ code = tput_cmd(fd, &tty_settings, argc, argv, &used);
- if (code != 0)
- break;
- argc -= used;
-@@ -439,7 +484,7 @@ main(int argc, char **argv)
- while (argnum > 0) {
- int code;
- tty_settings = old_settings;
-- code = tput_cmd(fd, &tty_settings, opt_x, argnum, argnow, &used);
-+ code = tput_cmd(fd, &tty_settings, argnum, argnow, &used);
- if (code != 0) {
- if (result == 0)
- result = ErrSystem(0); /* will return value >4 */
---
-2.40.0
-
diff --git a/meta/recipes-core/ncurses/files/0001-Updating-reset-code-ncurses-6.4-patch-20231104.patch b/meta/recipes-core/ncurses/files/0001-Updating-reset-code-ncurses-6.4-patch-20231104.patch
deleted file mode 100644
index 121db6bffe..0000000000
--- a/meta/recipes-core/ncurses/files/0001-Updating-reset-code-ncurses-6.4-patch-20231104.patch
+++ /dev/null
@@ -1,499 +0,0 @@
-From 135d37072755704b8d018e5de74e62ff3f28c930 Mon Sep 17 00:00:00 2001
-From: Thomas E. Dickey <dickey@invisible-island.net>
-Date: Sun, 5 Nov 2023 05:54:54 +0530
-Subject: [PATCH] Updating reset code - ncurses 6.4 - patch 20231104
-
-+ modify reset command to avoid altering clocal if the terminal uses a
- modem (prompted by discussion with Werner Fink, Michal Suchanek,
- OpenSUSE #1201384, Debian #60377).
-+ build-fixes for --with-caps variations.
-+ correct a couple of section-references in INSTALL.
-
-Signed-off-by: Thomas E. Dickey <dickey@invisible-island.net>
-
-Upstream-Status: Backport [https://ncurses.scripts.mit.edu/?p=ncurses.git;a=commitdiff;h=135d37072755704b8d018e5de74e62ff3f28c930]
-
-Signed-off-by: Soumya Sambu <soumya.sambu@windriver.com>
----
- INSTALL | 8 +-
- include/curses.events | 2 +-
- ncurses/tinfo/lib_tparm.c | 2 +
- progs/reset_cmd.c | 281 +++++++++++++++++++++-----------------
- progs/tabs.c | 10 +-
- progs/tic.c | 4 +
- 6 files changed, 176 insertions(+), 131 deletions(-)
-
-diff --git a/INSTALL b/INSTALL
-index d9c1dd12..d0a39af0 100644
---- a/INSTALL
-+++ b/INSTALL
-@@ -47,7 +47,7 @@ If you are converting from BSD curses and do not have root access, be sure
- to read the BSD CONVERSION NOTES section below.
-
- If you are trying to build applications using gpm with ncurses,
--read the USING NCURSES WITH GPM section below.
-+read the USING GPM section below.
-
- If you are cross-compiling, see the note below on BUILDING WITH A CROSS-COMPILER.
-
-@@ -79,7 +79,7 @@ INSTALLATION PROCEDURE:
- The --prefix option to configure changes the root directory for installing
- ncurses. The default is normally in subdirectories of /usr/local, except
- for systems where ncurses is normally installed as a system library (see
-- "IF YOU ARE A SYSTEM INTEGRATOR"). Use --prefix=/usr to replace your
-+ "FOR SYSTEM INTEGRATORS"). Use --prefix=/usr to replace your
- default curses distribution.
-
- The package gets installed beneath the --prefix directory as follows:
-@@ -176,7 +176,7 @@ INSTALLATION PROCEDURE:
- You can make curses and terminfo fall back to an existing file of termcap
- definitions by configuring with --enable-termcap. If you do this, the
- library will search /etc/termcap before the terminfo database, and will
-- also interpret the contents of the TERM environment variable. See the
-+ also interpret the contents of the $TERM environment variable. See the
- section BSD CONVERSION NOTES below.
-
- 3. Type `make'. Ignore any warnings, no error messages should be produced.
-@@ -1231,7 +1231,7 @@ CONFIGURE OPTIONS:
- Specify a search-list of terminfo directories which will be compiled
- into the ncurses library (default: DATADIR/terminfo)
-
-- This is a colon-separated list, like the TERMINFO_DIRS environment
-+ This is a colon-separated list, like the $TERMINFO_DIRS environment
- variable.
-
- --with-termlib[=XXX]
-diff --git a/include/curses.events b/include/curses.events
-index 25a2583f..468bde18 100644
---- a/include/curses.events
-+++ b/include/curses.events
-@@ -50,6 +50,6 @@ typedef struct
- extern NCURSES_EXPORT(int) wgetch_events (WINDOW *, _nc_eventlist *) GCC_DEPRECATED(experimental option); /* experimental */
- extern NCURSES_EXPORT(int) wgetnstr_events (WINDOW *,char *,int,_nc_eventlist *) GCC_DEPRECATED(experimental option); /* experimental */
-
--#define KEY_EVENT 0633 /* We were interrupted by an event */
-+#define KEY_EVENT 0634 /* We were interrupted by an event */
-
- #endif /* NCURSES_WGETCH_EVENTS */
-diff --git a/ncurses/tinfo/lib_tparm.c b/ncurses/tinfo/lib_tparm.c
-index a10a3877..cd972c0f 100644
---- a/ncurses/tinfo/lib_tparm.c
-+++ b/ncurses/tinfo/lib_tparm.c
-@@ -1113,8 +1113,10 @@ check_string_caps(TPARM_DATA *data, const char *string)
- want_type = 2; /* function key #1, transmit string #2 */
- else if (CHECK_CAP(plab_norm))
- want_type = 2; /* label #1, show string #2 */
-+#ifdef pkey_plab
- else if (CHECK_CAP(pkey_plab))
- want_type = 6; /* function key #1, type string #2, show string #3 */
-+#endif
- #if NCURSES_XNAMES
- else {
- char *check;
-diff --git a/progs/reset_cmd.c b/progs/reset_cmd.c
-index eff3af72..aec4b077 100644
---- a/progs/reset_cmd.c
-+++ b/progs/reset_cmd.c
-@@ -75,6 +75,9 @@ MODULE_ID("$Id: reset_cmd.c,v 1.28 2021/10/02 18:08:44 tom Exp $")
- # endif
- #endif
-
-+#define set_flags(target, mask) target |= mask
-+#define clear_flags(target, mask) target &= ~((unsigned)(mask))
-+
- static FILE *my_file;
-
- static bool use_reset = FALSE; /* invoked as reset */
-@@ -188,6 +191,79 @@ out_char(int c)
- #define reset_char(item, value) \
- tty_settings->c_cc[item] = CHK(tty_settings->c_cc[item], value)
-
-+/*
-+ * Simplify ifdefs
-+ */
-+#ifndef BSDLY
-+#define BSDLY 0
-+#endif
-+#ifndef CRDLY
-+#define CRDLY 0
-+#endif
-+#ifndef ECHOCTL
-+#define ECHOCTL 0
-+#endif
-+#ifndef ECHOKE
-+#define ECHOKE 0
-+#endif
-+#ifndef ECHOPRT
-+#define ECHOPRT 0
-+#endif
-+#ifndef FFDLY
-+#define FFDLY 0
-+#endif
-+#ifndef IMAXBEL
-+#define IMAXBEL 0
-+#endif
-+#ifndef IUCLC
-+#define IUCLC 0
-+#endif
-+#ifndef IXANY
-+#define IXANY 0
-+#endif
-+#ifndef NLDLY
-+#define NLDLY 0
-+#endif
-+#ifndef OCRNL
-+#define OCRNL 0
-+#endif
-+#ifndef OFDEL
-+#define OFDEL 0
-+#endif
-+#ifndef OFILL
-+#define OFILL 0
-+#endif
-+#ifndef OLCUC
-+#define OLCUC 0
-+#endif
-+#ifndef ONLCR
-+#define ONLCR 0
-+#endif
-+#ifndef ONLRET
-+#define ONLRET 0
-+#endif
-+#ifndef ONOCR
-+#define ONOCR 0
-+#endif
-+#ifndef OXTABS
-+#define OXTABS 0
-+#endif
-+#ifndef TAB3
-+#define TAB3 0
-+#endif
-+#ifndef TABDLY
-+#define TABDLY 0
-+#endif
-+#ifndef TOSTOP
-+#define TOSTOP 0
-+#endif
-+#ifndef VTDLY
-+#define VTDLY 0
-+#endif
-+#ifndef XCASE
-+#define XCASE 0
-+#endif
-+
- /*
- * Reset the terminal mode bits to a sensible state. Very useful after
- * a child program dies in raw mode.
-@@ -195,6 +271,10 @@ out_char(int c)
- void
- reset_tty_settings(int fd, TTY * tty_settings, int noset)
- {
-+ unsigned mask;
-+#ifdef TIOCMGET
-+ int modem_bits;
-+#endif
- GET_TTY(fd, tty_settings);
-
- #ifdef TERMIOS
-@@ -228,106 +308,65 @@ reset_tty_settings(int fd, TTY * tty_settings, int noset)
- reset_char(VWERASE, CWERASE);
- #endif
-
-- tty_settings->c_iflag &= ~((unsigned) (IGNBRK
-- | PARMRK
-- | INPCK
-- | ISTRIP
-- | INLCR
-- | IGNCR
--#ifdef IUCLC
-- | IUCLC
--#endif
--#ifdef IXANY
-- | IXANY
--#endif
-- | IXOFF));
--
-- tty_settings->c_iflag |= (BRKINT
-- | IGNPAR
-- | ICRNL
-- | IXON
--#ifdef IMAXBEL
-- | IMAXBEL
--#endif
-- );
--
-- tty_settings->c_oflag &= ~((unsigned) (0
--#ifdef OLCUC
-- | OLCUC
--#endif
--#ifdef OCRNL
-- | OCRNL
--#endif
--#ifdef ONOCR
-- | ONOCR
--#endif
--#ifdef ONLRET
-- | ONLRET
--#endif
--#ifdef OFILL
-- | OFILL
--#endif
--#ifdef OFDEL
-- | OFDEL
--#endif
--#ifdef NLDLY
-- | NLDLY
--#endif
--#ifdef CRDLY
-- | CRDLY
--#endif
--#ifdef TABDLY
-- | TABDLY
--#endif
--#ifdef BSDLY
-- | BSDLY
--#endif
--#ifdef VTDLY
-- | VTDLY
--#endif
--#ifdef FFDLY
-- | FFDLY
--#endif
-- ));
--
-- tty_settings->c_oflag |= (OPOST
--#ifdef ONLCR
-- | ONLCR
--#endif
-- );
--
-- tty_settings->c_cflag &= ~((unsigned) (CSIZE
-- | CSTOPB
-- | PARENB
-- | PARODD
-- | CLOCAL));
-- tty_settings->c_cflag |= (CS8 | CREAD);
-- tty_settings->c_lflag &= ~((unsigned) (ECHONL
-- | NOFLSH
--#ifdef TOSTOP
-- | TOSTOP
--#endif
--#ifdef ECHOPTR
-- | ECHOPRT
--#endif
--#ifdef XCASE
-- | XCASE
--#endif
-- ));
--
-- tty_settings->c_lflag |= (ISIG
-- | ICANON
-- | ECHO
-- | ECHOE
-- | ECHOK
--#ifdef ECHOCTL
-- | ECHOCTL
--#endif
--#ifdef ECHOKE
-- | ECHOKE
--#endif
-- );
--#endif
-+ clear_flags(tty_settings->c_iflag, (IGNBRK
-+ | PARMRK
-+ | INPCK
-+ | ISTRIP
-+ | INLCR
-+ | IGNCR
-+ | IUCLC
-+ | IXANY
-+ | IXOFF));
-+
-+ set_flags(tty_settings->c_iflag, (BRKINT
-+ | IGNPAR
-+ | ICRNL
-+ | IXON
-+ | IMAXBEL));
-+
-+ clear_flags(tty_settings->c_oflag, (0
-+ | OLCUC
-+ | OCRNL
-+ | ONOCR
-+ | ONLRET
-+ | OFILL
-+ | OFDEL
-+ | NLDLY
-+ | CRDLY
-+ | TABDLY
-+ | BSDLY
-+ | VTDLY
-+ | FFDLY));
-+
-+ set_flags(tty_settings->c_oflag, (OPOST
-+ | ONLCR));
-+
-+ mask = (CSIZE | CSTOPB | PARENB | PARODD);
-+#ifdef TIOCMGET
-+ /* leave clocal alone if this appears to use a modem */
-+ if (ioctl(fd, TIOCMGET, &modem_bits) == -1)
-+ mask |= CLOCAL;
-+#else
-+ /* cannot check - use the behavior from tset */
-+ mask |= CLOCAL;
-+#endif
-+ clear_flags(tty_settings->c_cflag, mask);
-+
-+ set_flags(tty_settings->c_cflag, (CS8 | CREAD));
-+ clear_flags(tty_settings->c_lflag, (ECHONL
-+ | NOFLSH
-+ | TOSTOP
-+ | ECHOPRT
-+ | XCASE));
-+
-+ set_flags(tty_settings->c_lflag, (ISIG
-+ | ICANON
-+ | ECHO
-+ | ECHOE
-+ | ECHOK
-+ | ECHOCTL
-+ | ECHOKE));
-+#endif /* TERMIOS */
-
- if (!noset) {
- SET_TTY(fd, tty_settings);
-@@ -402,29 +441,23 @@ set_conversions(TTY * tty_settings)
- #if defined(EXP_WIN32_DRIVER)
- /* FIXME */
- #else
--#ifdef ONLCR
-- tty_settings->c_oflag |= ONLCR;
--#endif
-- tty_settings->c_iflag |= ICRNL;
-- tty_settings->c_lflag |= ECHO;
--#ifdef OXTABS
-- tty_settings->c_oflag |= OXTABS;
--#endif /* OXTABS */
-+ set_flags(tty_settings->c_oflag, ONLCR);
-+ set_flags(tty_settings->c_iflag, ICRNL);
-+ set_flags(tty_settings->c_lflag, ECHO);
-+ set_flags(tty_settings->c_oflag, OXTABS);
-
- /* test used to be tgetflag("NL") */
- if (VALID_STRING(newline) && newline[0] == '\n' && !newline[1]) {
- /* Newline, not linefeed. */
--#ifdef ONLCR
-- tty_settings->c_oflag &= ~((unsigned) ONLCR);
--#endif
-- tty_settings->c_iflag &= ~((unsigned) ICRNL);
-+ clear_flags(tty_settings->c_oflag, ONLCR);
-+ clear_flags(tty_settings->c_iflag, ICRNL);
- }
--#ifdef OXTABS
-+#if OXTABS
- /* test used to be tgetflag("pt") */
- if (VALID_STRING(set_tab) && VALID_STRING(clear_all_tabs))
-- tty_settings->c_oflag &= ~OXTABS;
-+ clear_flags(tty_settings->c_oflag, OXTABS);
- #endif /* OXTABS */
-- tty_settings->c_lflag |= (ECHOE | ECHOK);
-+ set_flags(tty_settings->c_lflag, (ECHOE | ECHOK));
- #endif
- }
-
-@@ -490,7 +523,7 @@ send_init_strings(int fd GCC_UNUSED, TTY * old_settings)
- bool need_flush = FALSE;
-
- (void) old_settings;
--#ifdef TAB3
-+#if TAB3
- if (old_settings != 0 &&
- old_settings->c_oflag & (TAB3 | ONLCR | OCRNL | ONLRET)) {
- old_settings->c_oflag &= (TAB3 | ONLCR | OCRNL | ONLRET);
-@@ -512,22 +545,22 @@ send_init_strings(int fd GCC_UNUSED, TTY * old_settings)
-
- if (VALID_STRING(clear_margins)) {
- need_flush |= sent_string(clear_margins);
-- } else
-+ }
- #if defined(set_lr_margin)
-- if (VALID_STRING(set_lr_margin)) {
-+ else if (VALID_STRING(set_lr_margin)) {
- need_flush |= sent_string(TIPARM_2(set_lr_margin, 0, columns - 1));
-- } else
-+ }
- #endif
- #if defined(set_left_margin_parm) && defined(set_right_margin_parm)
-- if (VALID_STRING(set_left_margin_parm)
-- && VALID_STRING(set_right_margin_parm)) {
-+ else if (VALID_STRING(set_left_margin_parm)
-+ && VALID_STRING(set_right_margin_parm)) {
- need_flush |= sent_string(TIPARM_1(set_left_margin_parm, 0));
- need_flush |= sent_string(TIPARM_1(set_right_margin_parm,
- columns - 1));
-- } else
-+ }
- #endif
-- if (VALID_STRING(set_left_margin)
-- && VALID_STRING(set_right_margin)) {
-+ else if (VALID_STRING(set_left_margin)
-+ && VALID_STRING(set_right_margin)) {
- need_flush |= to_left_margin();
- need_flush |= sent_string(set_left_margin);
- if (VALID_STRING(parm_right_cursor)) {
-diff --git a/progs/tabs.c b/progs/tabs.c
-index 7378d116..d904330b 100644
---- a/progs/tabs.c
-+++ b/progs/tabs.c
-@@ -370,7 +370,9 @@ do_set_margin(int margin, bool no_op)
- }
- tputs(set_left_margin, 1, putch);
- }
-- } else if (VALID_STRING(set_left_margin_parm)) {
-+ }
-+#if defined(set_left_margin_parm) && defined(set_right_margin_parm)
-+ else if (VALID_STRING(set_left_margin_parm)) {
- result = TRUE;
- if (!no_op) {
- if (VALID_STRING(set_right_margin_parm)) {
-@@ -379,12 +381,16 @@ do_set_margin(int margin, bool no_op)
- tputs(TIPARM_2(set_left_margin_parm, margin, max_cols), 1, putch);
- }
- }
-- } else if (VALID_STRING(set_lr_margin)) {
-+ }
-+#endif
-+#if defined(set_lr_margin)
-+ else if (VALID_STRING(set_lr_margin)) {
- result = TRUE;
- if (!no_op) {
- tputs(TIPARM_2(set_lr_margin, margin, max_cols), 1, putch);
- }
- }
-+#endif
- return result;
- }
-
-diff --git a/progs/tic.c b/progs/tic.c
-index 888927e2..78b568fa 100644
---- a/progs/tic.c
-+++ b/progs/tic.c
-@@ -3142,6 +3142,7 @@ guess_ANSI_VTxx(TERMTYPE2 *tp)
- * In particular, any ECMA-48 terminal should support these, though the details
- * for u9 are implementation dependent.
- */
-+#if defined(user6) && defined(user7) && defined(user8) && defined(user9)
- static void
- check_user_6789(TERMTYPE2 *tp)
- {
-@@ -3177,6 +3178,9 @@ check_user_6789(TERMTYPE2 *tp)
- break;
- }
- }
-+#else
-+#define check_user_6789(tp) /* nothing */
-+#endif
-
- /* other sanity-checks (things that we don't want in the normal
- * logic that reads a terminfo entry)
---
-2.40.0
diff --git a/meta/recipes-core/ncurses/files/0001-tic-hang.patch b/meta/recipes-core/ncurses/files/0001-tic-hang.patch
index f98a943e5c..8cb92a3939 100644
--- a/meta/recipes-core/ncurses/files/0001-tic-hang.patch
+++ b/meta/recipes-core/ncurses/files/0001-tic-hang.patch
@@ -1,7 +1,7 @@
-From 168ba7a681be73ac024438e33e14fde1d5aea97d Mon Sep 17 00:00:00 2001
+From a51a53f0eecfd4d083aba8dfcd47c65e93978ff1 Mon Sep 17 00:00:00 2001
From: Hongxu Jia <hongxu.jia@windriver.com>
Date: Fri, 30 Mar 2018 10:02:24 +0800
-Subject: [PATCH 1/2] tic hang
+Subject: [PATCH] tic hang
Upstream-Status: Inappropriate [configuration]
@@ -17,10 +17,10 @@ Signed-off-by: Hongxu Jia <hongxu.jia@windriver.com>
1 file changed, 5 insertions(+), 6 deletions(-)
diff --git a/misc/terminfo.src b/misc/terminfo.src
-index 84f4810..6b385ec 100644
+index 5d575b8e..f9cc6880 100644
--- a/misc/terminfo.src
+++ b/misc/terminfo.src
-@@ -5562,12 +5562,11 @@ konsole-xf3x|KDE console window with keyboard for XFree86 3.x xterm,
+@@ -6518,12 +6518,11 @@ konsole-xf3x|KDE console window with keyboard for XFree86 3.x xterm,
# The value for kbs (see konsole-vt100) reflects local customization rather
# than the settings used for XFree86 xterm.
konsole-xf4x|KDE console window with keyboard for XFree86 4.x xterm,
@@ -38,6 +38,3 @@ index 84f4810..6b385ec 100644
# Obsolete: vt100.keymap
# KDE's "vt100" keyboard has no relationship to any terminal that DEC made, but
---
-1.8.3.1
-
diff --git a/meta/recipes-core/ncurses/files/0002-configure-reproducible.patch b/meta/recipes-core/ncurses/files/0002-configure-reproducible.patch
index 66f26c06ab..11ca66c8e8 100644
--- a/meta/recipes-core/ncurses/files/0002-configure-reproducible.patch
+++ b/meta/recipes-core/ncurses/files/0002-configure-reproducible.patch
@@ -1,4 +1,4 @@
-From ec87e53066a9942e9aaba817d71268342f5e83b9 Mon Sep 17 00:00:00 2001
+From 63cf58044f4ab3297c5a2d0e132e87ebfa80c753 Mon Sep 17 00:00:00 2001
From: Hongxu Jia <hongxu.jia@windriver.com>
Date: Wed, 16 Aug 2017 14:45:27 +0800
Subject: [PATCH] configure: reproducible
@@ -13,16 +13,15 @@ Signed-off-by: Juro Bystricky <juro.bystricky@intel.com>
Rebase to 6.1
Signed-off-by: Hongxu Jia <hongxu.jia@windriver.com>
-
---
configure | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/configure b/configure
-index 421cf859..a1b7840d 100755
+index 488d93fc..005d44e2 100755
--- a/configure
+++ b/configure
-@@ -5072,7 +5072,7 @@ else
+@@ -5129,7 +5129,7 @@ else
;;
(*)
cf_cv_ar_flags=unknown
diff --git a/meta/recipes-core/ncurses/files/0003-gen-pkgconfig.in-Do-not-include-LDFLAGS-in-generated.patch b/meta/recipes-core/ncurses/files/0003-gen-pkgconfig.in-Do-not-include-LDFLAGS-in-generated.patch
index a15694d4d4..d89399bbe5 100644
--- a/meta/recipes-core/ncurses/files/0003-gen-pkgconfig.in-Do-not-include-LDFLAGS-in-generated.patch
+++ b/meta/recipes-core/ncurses/files/0003-gen-pkgconfig.in-Do-not-include-LDFLAGS-in-generated.patch
@@ -1,4 +1,4 @@
-From 10cd0c12a6e14fb4f0498c299c1dd32720b710da Mon Sep 17 00:00:00 2001
+From 5962a5ee2885f67a396f7e8955ac1bbd7f15d4aa Mon Sep 17 00:00:00 2001
From: Nathan Rossi <nathan@nathanrossi.com>
Date: Mon, 14 Dec 2020 13:39:02 +1000
Subject: [PATCH] gen-pkgconfig.in: Do not include LDFLAGS in generated pc
@@ -10,13 +10,12 @@ includes build host specific paths and options (e.g. uninative and
Upstream-Status: Inappropriate [OE Specific]
Signed-off-by: Nathan Rossi <nathan@nathanrossi.com>
-
---
misc/gen-pkgconfig.in | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/misc/gen-pkgconfig.in b/misc/gen-pkgconfig.in
-index a45dd54f..85273054 100644
+index 89a5cd4a..07d94d17 100644
--- a/misc/gen-pkgconfig.in
+++ b/misc/gen-pkgconfig.in
@@ -83,7 +83,7 @@ if [ "$includedir" != "/usr/include" ]; then
diff --git a/meta/recipes-core/ncurses/files/CVE-2023-50495.patch b/meta/recipes-core/ncurses/files/CVE-2023-50495.patch
deleted file mode 100644
index 7d90ddd30f..0000000000
--- a/meta/recipes-core/ncurses/files/CVE-2023-50495.patch
+++ /dev/null
@@ -1,301 +0,0 @@
-From 7daae3f2139a678fe0ae0b42fcf8d807cbff485c Mon Sep 17 00:00:00 2001
-From: Mingli Yu <mingli.yu@windriver.com>
-Date: Sun, 4 Feb 2024 13:42:38 +0800
-Subject: [PATCH] parse_entry.c: check return value of _nc_save_str
-
-* check return value of _nc_save_str(), in special case for tic where
-extended capabilities are processed but the terminal description was
-not initialized (report by Ziqiao Kong).
-
-* regenerate llib-* files.
-
-CVE: CVE-2023-50495
-
-Upstream-Status: Backport [http://ncurses.scripts.mit.edu/?p=ncurses.git;a=commitdiff;h=7723dd6799ab10b32047ec73b14df9f107bafe99]
-
-Signed-off-by: Mingli Yu <mingli.yu@windriver.com>
----
- ncurses/llib-lncurses | 15 +++++++++++++++
- ncurses/llib-lncursest | 15 +++++++++++++++
- ncurses/llib-lncursestw | 15 +++++++++++++++
- ncurses/llib-lncursesw | 15 +++++++++++++++
- ncurses/llib-ltinfo | 15 +++++++++++++++
- ncurses/llib-ltinfot | 15 +++++++++++++++
- ncurses/llib-ltinfotw | 15 +++++++++++++++
- ncurses/llib-ltinfow | 15 +++++++++++++++
- ncurses/tinfo/parse_entry.c | 23 ++++++++++++++++-------
- 9 files changed, 136 insertions(+), 7 deletions(-)
-
-diff --git a/ncurses/llib-lncurses b/ncurses/llib-lncurses
-index 211cf3b7..e4190aa2 100644
---- a/ncurses/llib-lncurses
-+++ b/ncurses/llib-lncurses
-@@ -3656,6 +3656,21 @@ char *tiparm(
- ...)
- { return(*(char **)0); }
-
-+#undef tiparm_s
-+char *tiparm_s(
-+ int num_expected,
-+ int tparm_type,
-+ const char *string,
-+ ...)
-+ { return(*(char **)0); }
-+
-+#undef tiscan_s
-+int tiscan_s(
-+ int *num_expected,
-+ int *tparm_type,
-+ const char *string)
-+ { return(*(int *)0); }
-+
- #undef _nc_tiparm
- char *_nc_tiparm(
- int expected,
-diff --git a/ncurses/llib-lncursest b/ncurses/llib-lncursest
-index 1b09d676..e07abba6 100644
---- a/ncurses/llib-lncursest
-+++ b/ncurses/llib-lncursest
-@@ -3741,6 +3741,21 @@ char *tiparm(
- ...)
- { return(*(char **)0); }
-
-+#undef tiparm_s
-+char *tiparm_s(
-+ int num_expected,
-+ int tparm_type,
-+ const char *string,
-+ ...)
-+ { return(*(char **)0); }
-+
-+#undef tiscan_s
-+int tiscan_s(
-+ int *num_expected,
-+ int *tparm_type,
-+ const char *string)
-+ { return(*(int *)0); }
-+
- #undef _nc_tiparm
- char *_nc_tiparm(
- int expected,
-diff --git a/ncurses/llib-lncursestw b/ncurses/llib-lncursestw
-index 4576e0fc..747c6be8 100644
---- a/ncurses/llib-lncursestw
-+++ b/ncurses/llib-lncursestw
-@@ -4702,6 +4702,21 @@ char *tiparm(
- ...)
- { return(*(char **)0); }
-
-+#undef tiparm_s
-+char *tiparm_s(
-+ int num_expected,
-+ int tparm_type,
-+ const char *string,
-+ ...)
-+ { return(*(char **)0); }
-+
-+#undef tiscan_s
-+int tiscan_s(
-+ int *num_expected,
-+ int *tparm_type,
-+ const char *string)
-+ { return(*(int *)0); }
-+
- #undef _nc_tiparm
- char *_nc_tiparm(
- int expected,
-diff --git a/ncurses/llib-lncursesw b/ncurses/llib-lncursesw
-index 127350d2..862305d9 100644
---- a/ncurses/llib-lncursesw
-+++ b/ncurses/llib-lncursesw
-@@ -4617,6 +4617,21 @@ char *tiparm(
- ...)
- { return(*(char **)0); }
-
-+#undef tiparm_s
-+char *tiparm_s(
-+ int num_expected,
-+ int tparm_type,
-+ const char *string,
-+ ...)
-+ { return(*(char **)0); }
-+
-+#undef tiscan_s
-+int tiscan_s(
-+ int *num_expected,
-+ int *tparm_type,
-+ const char *string)
-+ { return(*(int *)0); }
-+
- #undef _nc_tiparm
- char *_nc_tiparm(
- int expected,
-diff --git a/ncurses/llib-ltinfo b/ncurses/llib-ltinfo
-index a5cd7cd3..31e5e9a6 100644
---- a/ncurses/llib-ltinfo
-+++ b/ncurses/llib-ltinfo
-@@ -927,6 +927,21 @@ char *tiparm(
- ...)
- { return(*(char **)0); }
-
-+#undef tiparm_s
-+char *tiparm_s(
-+ int num_expected,
-+ int tparm_type,
-+ const char *string,
-+ ...)
-+ { return(*(char **)0); }
-+
-+#undef tiscan_s
-+int tiscan_s(
-+ int *num_expected,
-+ int *tparm_type,
-+ const char *string)
-+ { return(*(int *)0); }
-+
- #undef _nc_tiparm
- char *_nc_tiparm(
- int expected,
-diff --git a/ncurses/llib-ltinfot b/ncurses/llib-ltinfot
-index bd3de812..48e5c25a 100644
---- a/ncurses/llib-ltinfot
-+++ b/ncurses/llib-ltinfot
-@@ -1003,6 +1003,21 @@ char *tiparm(
- ...)
- { return(*(char **)0); }
-
-+#undef tiparm_s
-+char *tiparm_s(
-+ int num_expected,
-+ int tparm_type,
-+ const char *string,
-+ ...)
-+ { return(*(char **)0); }
-+
-+#undef tiscan_s
-+int tiscan_s(
-+ int *num_expected,
-+ int *tparm_type,
-+ const char *string)
-+ { return(*(int *)0); }
-+
- #undef _nc_tiparm
- char *_nc_tiparm(
- int expected,
-diff --git a/ncurses/llib-ltinfotw b/ncurses/llib-ltinfotw
-index 4d35a1e1..64dfdfa5 100644
---- a/ncurses/llib-ltinfotw
-+++ b/ncurses/llib-ltinfotw
-@@ -1025,6 +1025,21 @@ char *tiparm(
- ...)
- { return(*(char **)0); }
-
-+#undef tiparm_s
-+char *tiparm_s(
-+ int num_expected,
-+ int tparm_type,
-+ const char *string,
-+ ...)
-+ { return(*(char **)0); }
-+
-+#undef tiscan_s
-+int tiscan_s(
-+ int *num_expected,
-+ int *tparm_type,
-+ const char *string)
-+ { return(*(int *)0); }
-+
- #undef _nc_tiparm
- char *_nc_tiparm(
- int expected,
-diff --git a/ncurses/llib-ltinfow b/ncurses/llib-ltinfow
-index db846764..7e17a35f 100644
---- a/ncurses/llib-ltinfow
-+++ b/ncurses/llib-ltinfow
-@@ -949,6 +949,21 @@ char *tiparm(
- ...)
- { return(*(char **)0); }
-
-+#undef tiparm_s
-+char *tiparm_s(
-+ int num_expected,
-+ int tparm_type,
-+ const char *string,
-+ ...)
-+ { return(*(char **)0); }
-+
-+#undef tiscan_s
-+int tiscan_s(
-+ int *num_expected,
-+ int *tparm_type,
-+ const char *string)
-+ { return(*(int *)0); }
-+
- #undef _nc_tiparm
- char *_nc_tiparm(
- int expected,
-diff --git a/ncurses/tinfo/parse_entry.c b/ncurses/tinfo/parse_entry.c
-index 14bcb67e..0a0b5637 100644
---- a/ncurses/tinfo/parse_entry.c
-+++ b/ncurses/tinfo/parse_entry.c
-@@ -110,7 +110,7 @@ _nc_extend_names(ENTRY * entryp, const char *name, int token_type)
- /* Well, we are given a cancel for a name that we don't recognize */
- return _nc_extend_names(entryp, name, STRING);
- default:
-- return 0;
-+ return NULL;
- }
-
- /* Adjust the 'offset' (insertion-point) to keep the lists of extended
-@@ -142,6 +142,11 @@ _nc_extend_names(ENTRY * entryp, const char *name, int token_type)
- for (last = (unsigned) (max - 1); last > tindex; last--)
-
- if (!found) {
-+ char *saved;
-+
-+ if ((saved = _nc_save_str(name)) == NULL)
-+ return NULL;
-+
- switch (token_type) {
- case BOOLEAN:
- tp->ext_Booleans++;
-@@ -169,7 +174,7 @@ _nc_extend_names(ENTRY * entryp, const char *name, int token_type)
- TYPE_REALLOC(char *, actual, tp->ext_Names);
- while (--actual > offset)
- tp->ext_Names[actual] = tp->ext_Names[actual - 1];
-- tp->ext_Names[offset] = _nc_save_str(name);
-+ tp->ext_Names[offset] = saved;
- }
-
- temp.nte_name = tp->ext_Names[offset];
-@@ -364,6 +369,8 @@ _nc_parse_entry(ENTRY * entryp, int literal, bool silent)
- bool is_use = (strcmp(_nc_curr_token.tk_name, "use") == 0);
- bool is_tc = !is_use && (strcmp(_nc_curr_token.tk_name, "tc") == 0);
- if (is_use || is_tc) {
-+ char *saved;
-+
- if (!VALID_STRING(_nc_curr_token.tk_valstring)
- || _nc_curr_token.tk_valstring[0] == '\0') {
- _nc_warning("missing name for use-clause");
-@@ -377,11 +384,13 @@ _nc_parse_entry(ENTRY * entryp, int literal, bool silent)
- _nc_curr_token.tk_valstring);
- continue;
- }
-- entryp->uses[entryp->nuses].name = _nc_save_str(_nc_curr_token.tk_valstring);
-- entryp->uses[entryp->nuses].line = _nc_curr_line;
-- entryp->nuses++;
-- if (entryp->nuses > 1 && is_tc) {
-- BAD_TC_USAGE
-+ if ((saved = _nc_save_str(_nc_curr_token.tk_valstring)) != NULL) {
-+ entryp->uses[entryp->nuses].name = saved;
-+ entryp->uses[entryp->nuses].line = _nc_curr_line;
-+ entryp->nuses++;
-+ if (entryp->nuses > 1 && is_tc) {
-+ BAD_TC_USAGE
-+ }
- }
- } else {
- /* normal token lookup */
---
-2.25.1
-
diff --git a/meta/recipes-core/ncurses/files/exit_prototype.patch b/meta/recipes-core/ncurses/files/exit_prototype.patch
index fd961512e0..299852d2c0 100644
--- a/meta/recipes-core/ncurses/files/exit_prototype.patch
+++ b/meta/recipes-core/ncurses/files/exit_prototype.patch
@@ -1,28 +1,27 @@
-From 4a769a441d7e57a23017c3037cde3e53fb9f35fe Mon Sep 17 00:00:00 2001
+From af798dceafec8a9ea3f83fc250d784511ca0a29c Mon Sep 17 00:00:00 2001
From: Khem Raj <raj.khem@gmail.com>
Date: Tue, 30 Aug 2022 15:58:32 -0700
Subject: [PATCH] Add needed headers for including mbstate_t and exit()
Upstream-Status: Inappropriate [Reconfigure will solve it]
Signed-off-by: Khem Raj <raj.khem@gmail.com>
-
---
configure | 2 ++
1 file changed, 2 insertions(+)
diff --git a/configure b/configure
-index f377f551..163f8899 100755
+index 005d44e2..72fa6c23 100755
--- a/configure
+++ b/configure
-@@ -3423,6 +3423,7 @@ rm -f "conftest.$ac_objext" "conftest.$ac_ext"
+@@ -3462,6 +3462,7 @@ rm -f "conftest.$ac_objext" "conftest.$ac_ext"
cat >"conftest.$ac_ext" <<_ACEOF
- #line 3424 "configure"
+ #line 3463 "configure"
#include "confdefs.h"
+#include <stdlib.h>
$ac_declaration
int
main (void)
-@@ -13111,6 +13112,7 @@ cat >"conftest.$ac_ext" <<_ACEOF
+@@ -13533,6 +13534,7 @@ cat >"conftest.$ac_ext" <<_ACEOF
#include <stdlib.h>
#include <stdarg.h>
#include <stdio.h>
diff --git a/meta/recipes-core/ncurses/ncurses.inc b/meta/recipes-core/ncurses/ncurses.inc
index 761b6a3d31..2a3fd4f2c5 100644
--- a/meta/recipes-core/ncurses/ncurses.inc
+++ b/meta/recipes-core/ncurses/ncurses.inc
@@ -2,7 +2,7 @@ SUMMARY = "The New Curses library"
DESCRIPTION = "SVr4 and XSI-Curses compatible curses library and terminfo tools including tic, infocmp, captoinfo. Supports color, multiple highlights, forms-drawing characters, and automatic recognition of keypad and function-key sequences. Extensions include resizable windows and mouse support on both xterm and Linux console using the gpm library."
HOMEPAGE = "http://www.gnu.org/software/ncurses/ncurses.html"
LICENSE = "MIT"
-LIC_FILES_CHKSUM = "file://COPYING;md5=c5a4600fdef86384c41ca33ecc70a4b8;endline=27"
+LIC_FILES_CHKSUM = "file://COPYING;md5=6f291ee54551d9d8d992ecd623fe4bc7;endline=27"
SECTION = "libs"
DEPENDS = "ncurses-native"
DEPENDS:class-native = ""
@@ -13,7 +13,7 @@ BINCONFIG = "${bindir}/ncurses5-config ${bindir}/ncursesw5-config \
inherit autotools binconfig-disabled multilib_header pkgconfig
# Upstream has useful patches at times at ftp://invisible-island.net/ncurses/
-SRC_URI = "git://github.com/mirror/ncurses.git;protocol=https;branch=master"
+SRC_URI = "git://github.com/ThomasDickey/ncurses-snapshots.git;protocol=https;branch=master"
EXTRA_AUTORECONF = "-I m4"
diff --git a/meta/recipes-core/ncurses/ncurses_6.4.bb b/meta/recipes-core/ncurses/ncurses_6.5.bb
index 31f18bbadc..2e3ee337ea 100644
--- a/meta/recipes-core/ncurses/ncurses_6.4.bb
+++ b/meta/recipes-core/ncurses/ncurses_6.5.bb
@@ -4,15 +4,12 @@ SRC_URI += "file://0001-tic-hang.patch \
file://0002-configure-reproducible.patch \
file://0003-gen-pkgconfig.in-Do-not-include-LDFLAGS-in-generated.patch \
file://exit_prototype.patch \
- file://0001-Fix-CVE-2023-29491.patch \
- file://0001-Updating-reset-code-ncurses-6.4-patch-20231104.patch \
- file://CVE-2023-50495.patch \
"
# commit id corresponds to the revision in package version
-SRCREV = "79b9071f2be20a24c7be031655a5638f6032f29f"
+SRCREV = "1c55d64d9d3e00399a21f04e9cac1e472ab5f70a"
S = "${WORKDIR}/git"
EXTRA_OECONF += "--with-abi-version=5"
-UPSTREAM_CHECK_GITTAGREGEX = "(?P<pver>\d+(\.\d+)+)$"
+UPSTREAM_CHECK_GITTAGREGEX = "v(?P<pver>\d+_\d+)$"
# This is needed when using patchlevel versions like 6.1+20181013
#CVE_VERSION = "${@d.getVar("PV").split('+')[0]}.${@d.getVar("PV").split('+')[1]}"
diff --git a/meta/recipes-core/newlib/newlib.inc b/meta/recipes-core/newlib/newlib.inc
index 6113f5e831..34b0f3f747 100644
--- a/meta/recipes-core/newlib/newlib.inc
+++ b/meta/recipes-core/newlib/newlib.inc
@@ -28,6 +28,14 @@ B = "${WORKDIR}/build"
## disable stdlib
TARGET_CC_ARCH:append = " -nostdlib"
+# Both the C library and the application should share the same mcmodel.
+# Use the medium-any code model for the RISC-V 64 bit implementation,
+# since medlow can only access addresses below 0x80000000 and RAM
+# starts at 0x80000000 on RISC-V 64
+# Keep RISC-V 32 using -mcmodel=medlow (symbols lie between -2GB:2GB)
+TARGET_CFLAGS:append:qemuriscv64 = " -mcmodel=medany"
+
+
EXTRA_OECONF = " \
--build=${BUILD_SYS} \
--target=${TARGET_SYS} \
diff --git a/meta/recipes-core/psplash/psplash_git.bb b/meta/recipes-core/psplash/psplash_git.bb
index 40937098e6..30cf61a2cb 100644
--- a/meta/recipes-core/psplash/psplash_git.bb
+++ b/meta/recipes-core/psplash/psplash_git.bb
@@ -80,7 +80,7 @@ python do_compile () {
import subprocess
# Build a separate executable for each splash image
- workdir = d.getVar('WORKDIR')
+ workdir = d.getVar('UNPACKDIR')
convertscript = "%s/make-image-header.sh" % d.getVar('S')
destfile = "%s/psplash-poky-img.h" % d.getVar('B')
localfiles = d.getVar('SPLASH_LOCALPATHS').split()
@@ -103,7 +103,7 @@ python do_compile () {
do_install:append() {
if ${@bb.utils.contains('DISTRO_FEATURES', 'sysvinit', 'true', 'false', d)}; then
install -d ${D}${sysconfdir}/init.d/
- install -m 0755 ${WORKDIR}/psplash-init ${D}${sysconfdir}/init.d/psplash.sh
+ install -m 0755 ${UNPACKDIR}/psplash-init ${D}${sysconfdir}/init.d/psplash.sh
# make fifo for psplash
install -d ${D}/mnt
@@ -112,8 +112,8 @@ do_install:append() {
if ${@bb.utils.contains('DISTRO_FEATURES', 'systemd', 'true', 'false', d)}; then
install -d ${D}${systemd_system_unitdir}
- install -m 644 ${WORKDIR}/psplash-start.service ${D}/${systemd_system_unitdir}
- install -m 644 ${WORKDIR}/psplash-systemd.service ${D}/${systemd_system_unitdir}
+ install -m 644 ${UNPACKDIR}/psplash-start.service ${D}/${systemd_system_unitdir}
+ install -m 644 ${UNPACKDIR}/psplash-systemd.service ${D}/${systemd_system_unitdir}
fi
install -d ${D}${bindir}
diff --git a/meta/recipes-core/readline/readline.inc b/meta/recipes-core/readline/readline.inc
index 4aefc5636d..555bd0876f 100644
--- a/meta/recipes-core/readline/readline.inc
+++ b/meta/recipes-core/readline/readline.inc
@@ -38,7 +38,7 @@ do_install:append () {
rmdir ${D}${datadir}/${BPN} || true
install -m 0755 -d ${D}${sysconfdir}
- install -m 0644 ${WORKDIR}/inputrc ${D}${sysconfdir}/inputrc
+ install -m 0644 ${UNPACKDIR}/inputrc ${D}${sysconfdir}/inputrc
}
BBCLASSEXTEND = "native nativesdk"
@@ -54,4 +54,4 @@ ALTERNATIVE_LINK_NAME[history.3] = "${mandir}/man3/history.3"
# OpenSuse injects versions into libreadline leading to conficits between our native one and theirs
# see their spec file for where this is injected. Extra versioning is harmless so we just do the same.
SRC_URI:append:class-native = " file://rl-native.map"
-LDFLAGS:append:class-native = " -Wl,--version-script=${WORKDIR}/rl-native.map"
+LDFLAGS:append:class-native = " -Wl,--version-script=${UNPACKDIR}/rl-native.map"
diff --git a/meta/recipes-core/seatd/seatd_0.8.0.bb b/meta/recipes-core/seatd/seatd_0.8.0.bb
index 14c5b1b7ae..df5fe35f98 100644
--- a/meta/recipes-core/seatd/seatd_0.8.0.bb
+++ b/meta/recipes-core/seatd/seatd_0.8.0.bb
@@ -26,7 +26,7 @@ PACKAGECONFIG[systemd] = ",,systemd"
do_install:append() {
if [ "${VIRTUAL-RUNTIME_init_manager}" != "systemd" ]; then
- install -Dm755 ${WORKDIR}/init ${D}/${sysconfdir}/init.d/seatd
+ install -Dm755 ${UNPACKDIR}/init ${D}/${sysconfdir}/init.d/seatd
fi
}
diff --git a/meta/recipes-core/systemd/systemd-boot-native_255.4.bb b/meta/recipes-core/systemd/systemd-boot-native_255.6.bb
index 73db59b14e..73db59b14e 100644
--- a/meta/recipes-core/systemd/systemd-boot-native_255.4.bb
+++ b/meta/recipes-core/systemd/systemd-boot-native_255.6.bb
diff --git a/meta/recipes-core/systemd/systemd-boot_255.4.bb b/meta/recipes-core/systemd/systemd-boot_255.6.bb
index 4ee25ee72f..4ee25ee72f 100644
--- a/meta/recipes-core/systemd/systemd-boot_255.4.bb
+++ b/meta/recipes-core/systemd/systemd-boot_255.6.bb
diff --git a/meta/recipes-core/systemd/systemd-bootconf_1.00.bb b/meta/recipes-core/systemd/systemd-bootconf_1.00.bb
index 19637546a9..0ec49365d0 100644
--- a/meta/recipes-core/systemd/systemd-bootconf_1.00.bb
+++ b/meta/recipes-core/systemd/systemd-bootconf_1.00.bb
@@ -7,7 +7,8 @@ PACKAGE_ARCH = "${MACHINE_ARCH}"
inherit systemd-boot-cfg
-S = "${WORKDIR}"
+S = "${WORKDIR}/sources"
+UNPACKDIR = "${S}"
LABELS = "boot"
diff --git a/meta/recipes-core/systemd/systemd-compat-units.bb b/meta/recipes-core/systemd/systemd-compat-units.bb
index c03d97f9c9..b929545823 100644
--- a/meta/recipes-core/systemd/systemd-compat-units.bb
+++ b/meta/recipes-core/systemd/systemd-compat-units.bb
@@ -5,7 +5,8 @@ LICENSE = "MIT"
PACKAGE_WRITE_DEPS += "systemd-systemctl-native"
-S = "${WORKDIR}"
+S = "${WORKDIR}/sources"
+UNPACKDIR = "${S}"
inherit features_check
diff --git a/meta/recipes-core/systemd/systemd-conf_1.0.bb b/meta/recipes-core/systemd/systemd-conf_1.0.bb
index 2355936631..b8bea0c25b 100644
--- a/meta/recipes-core/systemd/systemd-conf_1.0.bb
+++ b/meta/recipes-core/systemd/systemd-conf_1.0.bb
@@ -21,19 +21,22 @@ SRC_URI = "\
file://wired.network \
"
+S = "${WORKDIR}/sources"
+UNPACKDIR = "${S}"
+
do_install() {
- install -D -m0644 ${WORKDIR}/journald.conf ${D}${systemd_unitdir}/journald.conf.d/00-${PN}.conf
- install -D -m0644 ${WORKDIR}/logind.conf ${D}${systemd_unitdir}/logind.conf.d/00-${PN}.conf
- install -D -m0644 ${WORKDIR}/system.conf ${D}${systemd_unitdir}/system.conf.d/00-${PN}.conf
+ install -D -m0644 ${S}/journald.conf ${D}${systemd_unitdir}/journald.conf.d/00-${PN}.conf
+ install -D -m0644 ${S}/logind.conf ${D}${systemd_unitdir}/logind.conf.d/00-${PN}.conf
+ install -D -m0644 ${S}/system.conf ${D}${systemd_unitdir}/system.conf.d/00-${PN}.conf
if ${@bb.utils.contains('PACKAGECONFIG', 'dhcp-ethernet', 'true', 'false', d)}; then
- install -D -m0644 ${WORKDIR}/wired.network ${D}${systemd_unitdir}/network/80-wired.network
+ install -D -m0644 ${S}/wired.network ${D}${systemd_unitdir}/network/80-wired.network
fi
}
# Based on change from YP bug 8141, OE commit 5196d7bacaef1076c361adaa2867be31759c1b52
do_install:append:qemuall() {
- install -D -m0644 ${WORKDIR}/system.conf-qemuall ${D}${systemd_unitdir}/system.conf.d/01-${PN}.conf
+ install -D -m0644 ${S}/system.conf-qemuall ${D}${systemd_unitdir}/system.conf.d/01-${PN}.conf
}
PACKAGE_ARCH = "${MACHINE_ARCH}"
diff --git a/meta/recipes-core/systemd/systemd-serialgetty.bb b/meta/recipes-core/systemd/systemd-serialgetty.bb
index 44a93ac684..9035b8c335 100644
--- a/meta/recipes-core/systemd/systemd-serialgetty.bb
+++ b/meta/recipes-core/systemd/systemd-serialgetty.bb
@@ -9,7 +9,8 @@ SERIAL_TERM ?= "linux"
SRC_URI = "file://serial-getty@.service"
-S = "${WORKDIR}"
+S = "${WORKDIR}/sources"
+UNPACKDIR = "${S}"
# As this package is tied to systemd, only build it when we're also building systemd.
inherit features_check
@@ -21,7 +22,7 @@ do_install() {
default_baudrate=`echo "${SERIAL_CONSOLES}" | sed 's/\;.*//'`
install -d ${D}${systemd_system_unitdir}/
install -d ${D}${sysconfdir}/systemd/system/getty.target.wants/
- install -m 0644 ${WORKDIR}/serial-getty@.service ${D}${systemd_system_unitdir}/
+ install -m 0644 ${S}/serial-getty@.service ${D}${systemd_system_unitdir}/
sed -i -e "s/\@BAUDRATE\@/$default_baudrate/g" ${D}${systemd_system_unitdir}/serial-getty@.service
sed -i -e "s/\@TERM\@/${SERIAL_TERM}/g" ${D}${systemd_system_unitdir}/serial-getty@.service
@@ -35,7 +36,7 @@ do_install() {
${D}${sysconfdir}/systemd/system/getty.target.wants/serial-getty@$ttydev.service
else
# install custom service file for the non-default baudrate
- install -m 0644 ${WORKDIR}/serial-getty@.service ${D}${systemd_system_unitdir}/serial-getty$baudrate@.service
+ install -m 0644 ${S}/serial-getty@.service ${D}${systemd_system_unitdir}/serial-getty$baudrate@.service
sed -i -e "s/\@BAUDRATE\@/$baudrate/g" ${D}${systemd_system_unitdir}/serial-getty$baudrate@.service
# enable the service
ln -sf ${systemd_system_unitdir}/serial-getty$baudrate@.service \
diff --git a/meta/recipes-core/systemd/systemd-systemctl-native.bb b/meta/recipes-core/systemd/systemd-systemctl-native.bb
index 54283bcba1..ffa024caef 100644
--- a/meta/recipes-core/systemd/systemd-systemctl-native.bb
+++ b/meta/recipes-core/systemd/systemd-systemctl-native.bb
@@ -8,9 +8,10 @@ inherit native
SRC_URI = "file://systemctl"
-S = "${WORKDIR}"
+S = "${WORKDIR}/sources"
+UNPACKDIR = "${S}"
do_install() {
install -d ${D}${bindir}
- install -m 0755 ${WORKDIR}/systemctl ${D}${bindir}
+ install -m 0755 ${S}/systemctl ${D}${bindir}
}
diff --git a/meta/recipes-core/systemd/systemd.inc b/meta/recipes-core/systemd/systemd.inc
index a35db5091e..8bda47dd38 100644
--- a/meta/recipes-core/systemd/systemd.inc
+++ b/meta/recipes-core/systemd/systemd.inc
@@ -15,7 +15,7 @@ LICENSE:libsystemd = "LGPL-2.1-or-later"
LIC_FILES_CHKSUM = "file://LICENSE.GPL2;md5=751419260aa954499f7abaabaa882bbe \
file://LICENSE.LGPL2.1;md5=4fbd65380cdd255951079008b364516c"
-SRCREV = "387a14a7b67b8b76adaed4175e14bb7e39b2f738"
+SRCREV = "5810c25792d4268282dd3892af1a253b690423c9"
SRCBRANCH = "v255-stable"
SRC_URI = "git://github.com/systemd/systemd-stable.git;protocol=https;branch=${SRCBRANCH}"
diff --git a/meta/recipes-core/systemd/systemd/0001-missing_type.h-add-comparison_fn_t.patch b/meta/recipes-core/systemd/systemd/0001-missing_type.h-add-comparison_fn_t.patch
index 2aa5dee6b5..49871d16a8 100644
--- a/meta/recipes-core/systemd/systemd/0001-missing_type.h-add-comparison_fn_t.patch
+++ b/meta/recipes-core/systemd/systemd/0001-missing_type.h-add-comparison_fn_t.patch
@@ -1,7 +1,7 @@
-From 01195eb9f7d59139fb45df506ac6b3968c14a57f Mon Sep 17 00:00:00 2001
+From d4b0bb9c7651017985fdd75469f37c34ce2f2c50 Mon Sep 17 00:00:00 2001
From: Chen Qi <Qi.Chen@windriver.com>
Date: Mon, 25 Feb 2019 13:55:12 +0800
-Subject: [PATCH 01/22] missing_type.h: add comparison_fn_t
+Subject: [PATCH] missing_type.h: add comparison_fn_t
Make it work with musl where comparison_fn_t and is not provided.
@@ -56,6 +56,3 @@ index ae91534198..7f67eea38b 100644
const char * const catalog_file_dirs[] = {
"/usr/local/lib/systemd/catalog/",
---
-2.34.1
-
diff --git a/meta/recipes-core/systemd/systemd/0002-add-fallback-parse_printf_format-implementation.patch b/meta/recipes-core/systemd/systemd/0002-add-fallback-parse_printf_format-implementation.patch
index 900a931632..593d6261e1 100644
--- a/meta/recipes-core/systemd/systemd/0002-add-fallback-parse_printf_format-implementation.patch
+++ b/meta/recipes-core/systemd/systemd/0002-add-fallback-parse_printf_format-implementation.patch
@@ -1,7 +1,7 @@
-From 872b72739e62123867ce6c4f82aa37de24cc3f75 Mon Sep 17 00:00:00 2001
+From 776913624aaf696a3b2920b8d7506b3aae042bf1 Mon Sep 17 00:00:00 2001
From: Alexander Kanavin <alex.kanavin@gmail.com>
Date: Sat, 22 May 2021 20:26:24 +0200
-Subject: [PATCH 02/22] add fallback parse_printf_format implementation
+Subject: [PATCH] add fallback parse_printf_format implementation
Upstream-Status: Inappropriate [musl specific]
@@ -22,10 +22,10 @@ Signed-off-by: Scott Murray <scott.murray@konsulko.com>
create mode 100644 src/basic/parse-printf-format.h
diff --git a/meson.build b/meson.build
-index 7419e2b0b0..01fd3ffc19 100644
+index 187e7b216d..c4694a9ddc 100644
--- a/meson.build
+++ b/meson.build
-@@ -725,6 +725,7 @@ endif
+@@ -727,6 +727,7 @@ endif
foreach header : ['crypt.h',
'linux/memfd.h',
'linux/vm_sockets.h',
@@ -34,7 +34,7 @@ index 7419e2b0b0..01fd3ffc19 100644
'threads.h',
'valgrind/memcheck.h',
diff --git a/src/basic/meson.build b/src/basic/meson.build
-index d7450d8b44..c3e3daf4bd 100644
+index 111253e3a5..bdaa2fc5e4 100644
--- a/src/basic/meson.build
+++ b/src/basic/meson.build
@@ -183,6 +183,11 @@ endforeach
@@ -429,6 +429,3 @@ index be23b2fe75..69a2eb6404 100644
#define SNDBUF_SIZE (8*1024*1024)
---
-2.34.1
-
diff --git a/meta/recipes-core/systemd/systemd/0002-binfmt-Don-t-install-dependency-links-at-install-tim.patch b/meta/recipes-core/systemd/systemd/0002-binfmt-Don-t-install-dependency-links-at-install-tim.patch
index be231cf6b2..4c73c924ef 100644
--- a/meta/recipes-core/systemd/systemd/0002-binfmt-Don-t-install-dependency-links-at-install-tim.patch
+++ b/meta/recipes-core/systemd/systemd/0002-binfmt-Don-t-install-dependency-links-at-install-tim.patch
@@ -1,8 +1,8 @@
-From 29a58009a172e369ad7166e16dab2f4945c6b0d2 Mon Sep 17 00:00:00 2001
+From 661a34c3de30d4ff4a2a62c9a0573c6ce55424e4 Mon Sep 17 00:00:00 2001
From: Chen Qi <Qi.Chen@windriver.com>
Date: Thu, 21 Feb 2019 16:23:24 +0800
-Subject: [PATCH 1/2] binfmt: Don't install dependency links at install time
- for the binfmt services
+Subject: [PATCH] binfmt: Don't install dependency links at install time for
+ the binfmt services
use [Install] blocks so that they get created when the service is enabled
like a traditional service.
@@ -74,6 +74,3 @@ index 6861c76674..531e9fbd90 100644
+
+[Install]
+WantedBy=sysinit.target
---
-2.34.1
-
diff --git a/meta/recipes-core/systemd/systemd/0003-src-basic-missing.h-check-for-missing-strndupa.patch b/meta/recipes-core/systemd/systemd/0003-src-basic-missing.h-check-for-missing-strndupa.patch
index 5595b5bc23..f09f2114d3 100644
--- a/meta/recipes-core/systemd/systemd/0003-src-basic-missing.h-check-for-missing-strndupa.patch
+++ b/meta/recipes-core/systemd/systemd/0003-src-basic-missing.h-check-for-missing-strndupa.patch
@@ -1,7 +1,7 @@
-From 87f1d38f40c5fe9cadf2b2de442473e4e5605788 Mon Sep 17 00:00:00 2001
+From 843c6c94bf6a29eaceeefafa420cd86a32e844d2 Mon Sep 17 00:00:00 2001
From: Chen Qi <Qi.Chen@windriver.com>
Date: Mon, 25 Feb 2019 14:18:21 +0800
-Subject: [PATCH 03/22] src/basic/missing.h: check for missing strndupa
+Subject: [PATCH] src/basic/missing.h: check for missing strndupa
include missing.h for definition of strndupa
@@ -75,10 +75,10 @@ Signed-off-by: Chen Qi <Qi.Chen@windriver.com>
51 files changed, 62 insertions(+)
diff --git a/meson.build b/meson.build
-index 01fd3ffc19..61a872b753 100644
+index c4694a9ddc..d376b76afa 100644
--- a/meson.build
+++ b/meson.build
-@@ -567,6 +567,7 @@ foreach ident : ['secure_getenv', '__secure_getenv']
+@@ -569,6 +569,7 @@ foreach ident : ['secure_getenv', '__secure_getenv']
endforeach
foreach ident : [
@@ -87,7 +87,7 @@ index 01fd3ffc19..61a872b753 100644
['gettid', '''#include <sys/types.h>
#include <unistd.h>'''],
diff --git a/src/backlight/backlight.c b/src/backlight/backlight.c
-index 5ac9f904a9..99d5122dd7 100644
+index b2032adaa5..ee9201826d 100644
--- a/src/backlight/backlight.c
+++ b/src/backlight/backlight.c
@@ -20,6 +20,7 @@
@@ -111,7 +111,7 @@ index 18b16ecc0e..d2be79622f 100644
static int cg_enumerate_items(const char *controller, const char *path, FILE **ret, const char *item) {
_cleanup_free_ char *fs = NULL;
diff --git a/src/basic/env-util.c b/src/basic/env-util.c
-index d3bf73385f..16b17358ca 100644
+index a97651d7af..09fa601250 100644
--- a/src/basic/env-util.c
+++ b/src/basic/env-util.c
@@ -19,6 +19,7 @@
@@ -123,7 +123,7 @@ index d3bf73385f..16b17358ca 100644
/* We follow bash for the character set. Different shells have different rules. */
#define VALID_BASH_ENV_NAME_CHARS \
diff --git a/src/basic/log.c b/src/basic/log.c
-index 1470611a75..9924ec2b9a 100644
+index 7a443005f6..eed69a48ee 100644
--- a/src/basic/log.c
+++ b/src/basic/log.c
@@ -40,6 +40,7 @@
@@ -251,7 +251,7 @@ index f9014dc560..1d7840a5b5 100644
static clockid_t map_clock_id(clockid_t c) {
diff --git a/src/boot/bless-boot.c b/src/boot/bless-boot.c
-index 0c0b4f23c7..68fe5ca509 100644
+index 12dfdf76fa..e66332519a 100644
--- a/src/boot/bless-boot.c
+++ b/src/boot/bless-boot.c
@@ -22,6 +22,7 @@
@@ -263,7 +263,7 @@ index 0c0b4f23c7..68fe5ca509 100644
static char **arg_path = NULL;
diff --git a/src/core/dbus-cgroup.c b/src/core/dbus-cgroup.c
-index 4237e694c0..05f9d9d9a9 100644
+index 8a9570fd21..ac4202e5ce 100644
--- a/src/core/dbus-cgroup.c
+++ b/src/core/dbus-cgroup.c
@@ -25,6 +25,7 @@
@@ -275,7 +275,7 @@ index 4237e694c0..05f9d9d9a9 100644
BUS_DEFINE_PROPERTY_GET(bus_property_get_tasks_max, "t", CGroupTasksMax, cgroup_tasks_max_resolve);
diff --git a/src/core/dbus-execute.c b/src/core/dbus-execute.c
-index 4daa1cefd3..2c77901471 100644
+index 2d05ba7e1d..61a7de0037 100644
--- a/src/core/dbus-execute.c
+++ b/src/core/dbus-execute.c
@@ -42,6 +42,7 @@
@@ -287,10 +287,10 @@ index 4daa1cefd3..2c77901471 100644
BUS_DEFINE_PROPERTY_GET_ENUM(bus_property_get_exec_output, exec_output, ExecOutput);
static BUS_DEFINE_PROPERTY_GET_ENUM(property_get_exec_input, exec_input, ExecInput);
diff --git a/src/core/dbus-util.c b/src/core/dbus-util.c
-index d680a64268..e59f48103e 100644
+index 7bb026af48..a86128e40c 100644
--- a/src/core/dbus-util.c
+++ b/src/core/dbus-util.c
-@@ -9,6 +9,7 @@
+@@ -10,6 +10,7 @@
#include "unit-printf.h"
#include "user-util.h"
#include "unit.h"
@@ -299,7 +299,7 @@ index d680a64268..e59f48103e 100644
int bus_property_get_triggered_unit(
sd_bus *bus,
diff --git a/src/core/execute.c b/src/core/execute.c
-index ef0bf88687..bd3da0c401 100644
+index 8dbdfcf369..531bec4c92 100644
--- a/src/core/execute.c
+++ b/src/core/execute.c
@@ -72,6 +72,7 @@
@@ -323,7 +323,7 @@ index b8e3f7aadd..8ce8ca68d8 100644
#if HAVE_KMOD
#include "module-util.h"
diff --git a/src/core/service.c b/src/core/service.c
-index b9eb40c555..268fe7573b 100644
+index 42fffbbd67..80a8d05a19 100644
--- a/src/core/service.c
+++ b/src/core/service.c
@@ -45,6 +45,7 @@
@@ -359,7 +359,7 @@ index 016f3baa7f..b1def81313 100644
typedef enum MountPointFlags {
MOUNT_NOAUTO = 1 << 0,
diff --git a/src/journal-remote/journal-remote-main.c b/src/journal-remote/journal-remote-main.c
-index da0f20d3ce..f22ce41908 100644
+index 2d380bc7a7..d3f5612728 100644
--- a/src/journal-remote/journal-remote-main.c
+++ b/src/journal-remote/journal-remote-main.c
@@ -27,6 +27,7 @@
@@ -371,7 +371,7 @@ index da0f20d3ce..f22ce41908 100644
#define PRIV_KEY_FILE CERTIFICATE_ROOT "/private/journal-remote.pem"
#define CERT_FILE CERTIFICATE_ROOT "/certs/journal-remote.pem"
diff --git a/src/journal/journalctl.c b/src/journal/journalctl.c
-index 7f3dcd56a4..41b7cbaaf1 100644
+index 87e2f28841..58275f41f1 100644
--- a/src/journal/journalctl.c
+++ b/src/journal/journalctl.c
@@ -77,6 +77,7 @@
@@ -383,7 +383,7 @@ index 7f3dcd56a4..41b7cbaaf1 100644
#define DEFAULT_FSS_INTERVAL_USEC (15*USEC_PER_MINUTE)
#define PROCESS_INOTIFY_INTERVAL 1024 /* Every 1,024 messages processed */
diff --git a/src/libsystemd/sd-bus/bus-message.c b/src/libsystemd/sd-bus/bus-message.c
-index ff0228081f..9066fcb133 100644
+index ab8b06896d..43f9131205 100644
--- a/src/libsystemd/sd-bus/bus-message.c
+++ b/src/libsystemd/sd-bus/bus-message.c
@@ -19,6 +19,7 @@
@@ -407,7 +407,7 @@ index c25c40ff37..57a5da704f 100644
static int node_vtable_get_userdata(
sd_bus *bus,
diff --git a/src/libsystemd/sd-bus/bus-socket.c b/src/libsystemd/sd-bus/bus-socket.c
-index 3c59d0d615..746922d46f 100644
+index 5ade8e99aa..7553cf319d 100644
--- a/src/libsystemd/sd-bus/bus-socket.c
+++ b/src/libsystemd/sd-bus/bus-socket.c
@@ -29,6 +29,7 @@
@@ -419,7 +419,7 @@ index 3c59d0d615..746922d46f 100644
#define SNDBUF_SIZE (8*1024*1024)
diff --git a/src/libsystemd/sd-bus/sd-bus.c b/src/libsystemd/sd-bus/sd-bus.c
-index 4a0259f8bb..aaa90d2223 100644
+index 8befc97460..6ee4d4f595 100644
--- a/src/libsystemd/sd-bus/sd-bus.c
+++ b/src/libsystemd/sd-bus/sd-bus.c
@@ -46,6 +46,7 @@
@@ -443,7 +443,7 @@ index d988588de0..458df8df9a 100644
#define MAX_SIZE (2*1024*1024)
diff --git a/src/libsystemd/sd-journal/sd-journal.c b/src/libsystemd/sd-journal/sd-journal.c
-index 6b9ff0a4ed..4a5027ad0f 100644
+index 7a1dd2569f..d187baad47 100644
--- a/src/libsystemd/sd-journal/sd-journal.c
+++ b/src/libsystemd/sd-journal/sd-journal.c
@@ -44,6 +44,7 @@
@@ -455,7 +455,7 @@ index 6b9ff0a4ed..4a5027ad0f 100644
#define JOURNAL_FILES_RECHECK_USEC (2 * USEC_PER_SEC)
diff --git a/src/login/pam_systemd.c b/src/login/pam_systemd.c
-index b8da266e27..4bb8dd9496 100644
+index bf45974ca5..2cb7e930c0 100644
--- a/src/login/pam_systemd.c
+++ b/src/login/pam_systemd.c
@@ -35,6 +35,7 @@
@@ -503,10 +503,10 @@ index c64e79bdff..eda26b0b9a 100644
static void setup_logging_once(void) {
static pthread_once_t once = PTHREAD_ONCE_INIT;
diff --git a/src/portable/portable.c b/src/portable/portable.c
-index d4b448a627..bb26623565 100644
+index 3b2a37912f..835a3fdeaa 100644
--- a/src/portable/portable.c
+++ b/src/portable/portable.c
-@@ -40,6 +40,7 @@
+@@ -42,6 +42,7 @@
#include "strv.h"
#include "tmpfile-util.h"
#include "user-util.h"
@@ -551,7 +551,7 @@ index 8b462b5627..183ce1c18e 100644
struct CGroupInfo {
char *cgroup_path;
diff --git a/src/shared/bus-unit-util.c b/src/shared/bus-unit-util.c
-index 4ee9706847..30c8084847 100644
+index 50de98941f..d47beccb0b 100644
--- a/src/shared/bus-unit-util.c
+++ b/src/shared/bus-unit-util.c
@@ -50,6 +50,7 @@
@@ -599,7 +599,7 @@ index 83e9834bbf..74eaae6f5e 100644
enum {
IMPORTER_STATE_LINE = 0, /* waiting to read, or reading line */
diff --git a/src/shared/logs-show.c b/src/shared/logs-show.c
-index a5d04003bd..10392c132d 100644
+index 0a31be382f..92d629e7e0 100644
--- a/src/shared/logs-show.c
+++ b/src/shared/logs-show.c
@@ -41,6 +41,7 @@
@@ -683,7 +683,7 @@ index ed22c8b679..19ebe20237 100644
UdevEvent *udev_event_new(sd_device *dev, usec_t exec_delay_usec, sd_netlink *rtnl, int log_level) {
UdevEvent *event;
diff --git a/src/udev/udev-rules.c b/src/udev/udev-rules.c
-index 5f12002394..febe345b4c 100644
+index c242549654..e5b8df5c2d 100644
--- a/src/udev/udev-rules.c
+++ b/src/udev/udev-rules.c
@@ -41,6 +41,7 @@
@@ -694,6 +694,3 @@ index 5f12002394..febe345b4c 100644
#define RULES_DIRS ((const char* const*) CONF_PATHS_STRV("udev/rules.d"))
---
-2.34.1
-
diff --git a/meta/recipes-core/systemd/systemd/0004-don-t-fail-if-GLOB_BRACE-and-GLOB_ALTDIRFUNC-is-not-.patch b/meta/recipes-core/systemd/systemd/0004-don-t-fail-if-GLOB_BRACE-and-GLOB_ALTDIRFUNC-is-not-.patch
index 15877bea88..15d25e9f19 100644
--- a/meta/recipes-core/systemd/systemd/0004-don-t-fail-if-GLOB_BRACE-and-GLOB_ALTDIRFUNC-is-not-.patch
+++ b/meta/recipes-core/systemd/systemd/0004-don-t-fail-if-GLOB_BRACE-and-GLOB_ALTDIRFUNC-is-not-.patch
@@ -1,8 +1,7 @@
-From 5325ab5813617f35f03806ec420829dde7104387 Mon Sep 17 00:00:00 2001
+From 2903e42c7cd727a2374d21b78950308de792ebe8 Mon Sep 17 00:00:00 2001
From: Chen Qi <Qi.Chen@windriver.com>
Date: Mon, 25 Feb 2019 14:56:21 +0800
-Subject: [PATCH 04/22] don't fail if GLOB_BRACE and GLOB_ALTDIRFUNC is not
- defined
+Subject: [PATCH] don't fail if GLOB_BRACE and GLOB_ALTDIRFUNC is not defined
If the standard library doesn't provide brace
expansion users just won't get it.
@@ -115,7 +114,7 @@ index 9b3e73cce0..3790ba3be5 100644
(void) rm_rf(template, REMOVE_ROOT|REMOVE_PHYSICAL);
diff --git a/src/tmpfiles/tmpfiles.c b/src/tmpfiles/tmpfiles.c
-index 230ec09b97..2cc5f391d7 100644
+index 6a1c7725a1..138b3ac561 100644
--- a/src/tmpfiles/tmpfiles.c
+++ b/src/tmpfiles/tmpfiles.c
@@ -73,6 +73,12 @@
@@ -131,7 +130,7 @@ index 230ec09b97..2cc5f391d7 100644
/* This reads all files listed in /etc/tmpfiles.d/?*.conf and creates
* them in the file system. This is intended to be used to create
* properly owned directories beneath /tmp, /var/tmp, /run, which are
-@@ -2434,7 +2440,9 @@ finish:
+@@ -2426,7 +2432,9 @@ finish:
static int glob_item(Context *c, Item *i, action_t action) {
_cleanup_globfree_ glob_t g = {
@@ -141,7 +140,7 @@ index 230ec09b97..2cc5f391d7 100644
};
int r = 0, k;
-@@ -2461,7 +2469,9 @@ static int glob_item_recursively(
+@@ -2453,7 +2461,9 @@ static int glob_item_recursively(
fdaction_t action) {
_cleanup_globfree_ glob_t g = {
@@ -151,6 +150,3 @@ index 230ec09b97..2cc5f391d7 100644
};
int r = 0, k;
---
-2.34.1
-
diff --git a/meta/recipes-core/systemd/systemd/0005-add-missing-FTW_-macros-for-musl.patch b/meta/recipes-core/systemd/systemd/0005-add-missing-FTW_-macros-for-musl.patch
index a1dfca22cd..deb0e83b6d 100644
--- a/meta/recipes-core/systemd/systemd/0005-add-missing-FTW_-macros-for-musl.patch
+++ b/meta/recipes-core/systemd/systemd/0005-add-missing-FTW_-macros-for-musl.patch
@@ -1,7 +1,7 @@
-From dad7f897c0de654fa5592fda3e90f874639849f9 Mon Sep 17 00:00:00 2001
+From dcd9639657e4122b7665b01a067219f990ee3ace Mon Sep 17 00:00:00 2001
From: Chen Qi <Qi.Chen@windriver.com>
Date: Mon, 25 Feb 2019 15:00:06 +0800
-Subject: [PATCH 05/22] add missing FTW_ macros for musl
+Subject: [PATCH] add missing FTW_ macros for musl
This is to avoid build failures like below for musl.
@@ -39,6 +39,3 @@ index 8684d064ec..70fc2b5376 100644
static char **list_nftw = NULL;
---
-2.34.1
-
diff --git a/meta/recipes-core/systemd/systemd/0006-Use-uintmax_t-for-handling-rlim_t.patch b/meta/recipes-core/systemd/systemd/0006-Use-uintmax_t-for-handling-rlim_t.patch
index 4be14b72ec..f02675604d 100644
--- a/meta/recipes-core/systemd/systemd/0006-Use-uintmax_t-for-handling-rlim_t.patch
+++ b/meta/recipes-core/systemd/systemd/0006-Use-uintmax_t-for-handling-rlim_t.patch
@@ -1,7 +1,7 @@
-From 96e975a2412a20e5f80bd3ab144057d275eb8597 Mon Sep 17 00:00:00 2001
+From c58933386caa8e45b5e814ec4ff210b18ab401da Mon Sep 17 00:00:00 2001
From: Chen Qi <Qi.Chen@windriver.com>
Date: Mon, 25 Feb 2019 15:12:41 +0800
-Subject: [PATCH 06/22] Use uintmax_t for handling rlim_t
+Subject: [PATCH] Use uintmax_t for handling rlim_t
PRIu{32,64} is not right format to represent rlim_t type
therefore use %ju and typecast the rlim_t variables to
@@ -86,10 +86,10 @@ index c1f0b2b974..61c5412582 100644
return 1;
}
diff --git a/src/core/execute.c b/src/core/execute.c
-index bd3da0c401..df1870fd2f 100644
+index 531bec4c92..602a95f674 100644
--- a/src/core/execute.c
+++ b/src/core/execute.c
-@@ -1045,9 +1045,9 @@ void exec_context_dump(const ExecContext *c, FILE* f, const char *prefix) {
+@@ -1041,9 +1041,9 @@ void exec_context_dump(const ExecContext *c, FILE* f, const char *prefix) {
for (unsigned i = 0; i < RLIM_NLIMITS; i++)
if (c->rlimit[i]) {
fprintf(f, "%sLimit%s: " RLIM_FMT "\n",
@@ -101,6 +101,3 @@ index bd3da0c401..df1870fd2f 100644
}
if (c->ioprio_set) {
---
-2.34.1
-
diff --git a/meta/recipes-core/systemd/systemd/0007-don-t-pass-AT_SYMLINK_NOFOLLOW-flag-to-faccessat.patch b/meta/recipes-core/systemd/systemd/0007-don-t-pass-AT_SYMLINK_NOFOLLOW-flag-to-faccessat.patch
index 8d6084239e..1d4ce33712 100644
--- a/meta/recipes-core/systemd/systemd/0007-don-t-pass-AT_SYMLINK_NOFOLLOW-flag-to-faccessat.patch
+++ b/meta/recipes-core/systemd/systemd/0007-don-t-pass-AT_SYMLINK_NOFOLLOW-flag-to-faccessat.patch
@@ -1,7 +1,7 @@
-From 4842cff4f1329f0b5034b529d56f8ad1f234ac4c Mon Sep 17 00:00:00 2001
+From 5bf8235bc5c802908aa5d95740350927d87e953a Mon Sep 17 00:00:00 2001
From: Andre McCurdy <armccurdy@gmail.com>
Date: Tue, 10 Oct 2017 14:33:30 -0700
-Subject: [PATCH 07/22] don't pass AT_SYMLINK_NOFOLLOW flag to faccessat()
+Subject: [PATCH] don't pass AT_SYMLINK_NOFOLLOW flag to faccessat()
Avoid using AT_SYMLINK_NOFOLLOW flag. It doesn't seem like the right
thing to do and it's not portable (not supported by musl). See:
@@ -31,7 +31,7 @@ Signed-off-by: Andre McCurdy <armccurdy@gmail.com>
2 files changed, 23 insertions(+), 4 deletions(-)
diff --git a/src/basic/fs-util.h b/src/basic/fs-util.h
-index 1023ab73ca..c78ff6f27f 100644
+index 6a1e2e76d1..c3f7235e09 100644
--- a/src/basic/fs-util.h
+++ b/src/basic/fs-util.h
@@ -49,8 +49,27 @@ int futimens_opath(int fd, const struct timespec ts[2]);
@@ -64,7 +64,7 @@ index 1023ab73ca..c78ff6f27f 100644
int touch_file(const char *path, bool parents, usec_t stamp, uid_t uid, gid_t gid, mode_t mode);
diff --git a/src/shared/base-filesystem.c b/src/shared/base-filesystem.c
-index 569ef466c3..7ae921a113 100644
+index a4e2dae245..67aa8ea1f2 100644
--- a/src/shared/base-filesystem.c
+++ b/src/shared/base-filesystem.c
@@ -145,7 +145,7 @@ int base_filesystem_create_fd(int fd, const char *root, uid_t uid, gid_t gid) {
@@ -94,6 +94,3 @@ index 569ef466c3..7ae921a113 100644
continue;
}
---
-2.34.1
-
diff --git a/meta/recipes-core/systemd/systemd/0008-Define-glibc-compatible-basename-for-non-glibc-syste.patch b/meta/recipes-core/systemd/systemd/0008-Define-glibc-compatible-basename-for-non-glibc-syste.patch
index c1a8bb19fe..1ab23553f9 100644
--- a/meta/recipes-core/systemd/systemd/0008-Define-glibc-compatible-basename-for-non-glibc-syste.patch
+++ b/meta/recipes-core/systemd/systemd/0008-Define-glibc-compatible-basename-for-non-glibc-syste.patch
@@ -1,8 +1,7 @@
-From bab07e779ff23d5593bb118efaaa31b60a6dce87 Mon Sep 17 00:00:00 2001
+From d98f6bd4d8acdc4c1a5bff4c699f5004a6ebccce Mon Sep 17 00:00:00 2001
From: Khem Raj <raj.khem@gmail.com>
Date: Sun, 27 May 2018 08:36:44 -0700
-Subject: [PATCH 08/22] Define glibc compatible basename() for non-glibc
- systems
+Subject: [PATCH] Define glibc compatible basename() for non-glibc systems
Fixes builds with musl, even though systemd is adamant about
using non-posix basename implementation, we have a way out
@@ -29,6 +28,3 @@ index b6d8be3083..0a29036c4c 100644
static inline char* strstr_ptr(const char *haystack, const char *needle) {
if (!haystack || !needle)
return NULL;
---
-2.34.1
-
diff --git a/meta/recipes-core/systemd/systemd/0008-implment-systemd-sysv-install-for-OE.patch b/meta/recipes-core/systemd/systemd/0008-implment-systemd-sysv-install-for-OE.patch
index acff18dc43..8b833ce073 100644
--- a/meta/recipes-core/systemd/systemd/0008-implment-systemd-sysv-install-for-OE.patch
+++ b/meta/recipes-core/systemd/systemd/0008-implment-systemd-sysv-install-for-OE.patch
@@ -1,4 +1,4 @@
-From 5712d56f1cd654d2e5d2e9117ff77fe4c299f76b Mon Sep 17 00:00:00 2001
+From 5f89867f2b15f9bd411564d04e660cdeedd370ca Mon Sep 17 00:00:00 2001
From: Khem Raj <raj.khem@gmail.com>
Date: Sat, 5 Sep 2015 06:31:47 +0000
Subject: [PATCH] implment systemd-sysv-install for OE
@@ -38,6 +38,3 @@ index cb58d8243b..000bdf6165 100755
;;
*)
usage ;;
---
-2.39.2
-
diff --git a/meta/recipes-core/systemd/systemd/0009-Do-not-disable-buffering-when-writing-to-oom_score_a.patch b/meta/recipes-core/systemd/systemd/0009-Do-not-disable-buffering-when-writing-to-oom_score_a.patch
index 3ff0177ae3..98ab397eff 100644
--- a/meta/recipes-core/systemd/systemd/0009-Do-not-disable-buffering-when-writing-to-oom_score_a.patch
+++ b/meta/recipes-core/systemd/systemd/0009-Do-not-disable-buffering-when-writing-to-oom_score_a.patch
@@ -1,7 +1,7 @@
-From 25093c5017725b8577c444dfea0f42ad85b43522 Mon Sep 17 00:00:00 2001
+From f3943f58f3c8a9d20dcada56eb5ca5f673a49b3d Mon Sep 17 00:00:00 2001
From: Chen Qi <Qi.Chen@windriver.com>
Date: Wed, 4 Jul 2018 15:00:44 +0800
-Subject: [PATCH 09/22] Do not disable buffering when writing to oom_score_adj
+Subject: [PATCH] Do not disable buffering when writing to oom_score_adj
On musl, disabling buffering when writing to oom_score_adj will
cause the following error.
@@ -24,7 +24,7 @@ Signed-off-by: Scott Murray <scott.murray@konsulko.com>
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/src/basic/process-util.c b/src/basic/process-util.c
-index 201c5596ae..ea51595b6c 100644
+index 4492e7ded2..b61a2aba74 100644
--- a/src/basic/process-util.c
+++ b/src/basic/process-util.c
@@ -1716,7 +1716,7 @@ int set_oom_score_adjust(int value) {
@@ -36,6 +36,3 @@ index 201c5596ae..ea51595b6c 100644
}
int get_oom_score_adjust(int *ret) {
---
-2.34.1
-
diff --git a/meta/recipes-core/systemd/systemd/0010-distinguish-XSI-compliant-strerror_r-from-GNU-specif.patch b/meta/recipes-core/systemd/systemd/0010-distinguish-XSI-compliant-strerror_r-from-GNU-specif.patch
index cf59ac7d06..e1ffe4ddb5 100644
--- a/meta/recipes-core/systemd/systemd/0010-distinguish-XSI-compliant-strerror_r-from-GNU-specif.patch
+++ b/meta/recipes-core/systemd/systemd/0010-distinguish-XSI-compliant-strerror_r-from-GNU-specif.patch
@@ -1,7 +1,7 @@
-From 2adbe9773cd65c48eec9df96868d4a738927c8d9 Mon Sep 17 00:00:00 2001
+From 5305c5f18236a9d7f2e633ea6ad317e09e8f29d5 Mon Sep 17 00:00:00 2001
From: Chen Qi <Qi.Chen@windriver.com>
Date: Tue, 10 Jul 2018 15:40:17 +0800
-Subject: [PATCH 10/22] distinguish XSI-compliant strerror_r from GNU-specifi
+Subject: [PATCH] distinguish XSI-compliant strerror_r from GNU-specifi
strerror_r
XSI-compliant strerror_r and GNU-specifi strerror_r are different.
@@ -24,10 +24,10 @@ Signed-off-by: Chen Qi <Qi.Chen@windriver.com>
2 files changed, 15 insertions(+), 1 deletion(-)
diff --git a/src/libsystemd/sd-bus/bus-error.c b/src/libsystemd/sd-bus/bus-error.c
-index 77b2e1a0fd..fdba0e0142 100644
+index f415797700..a5c6e9a3bd 100644
--- a/src/libsystemd/sd-bus/bus-error.c
+++ b/src/libsystemd/sd-bus/bus-error.c
-@@ -408,7 +408,12 @@ static void bus_error_strerror(sd_bus_error *e, int error) {
+@@ -410,7 +410,12 @@ static void bus_error_strerror(sd_bus_error *e, int error) {
return;
errno = 0;
@@ -40,7 +40,7 @@ index 77b2e1a0fd..fdba0e0142 100644
if (errno == ERANGE || strlen(x) >= k - 1) {
free(m);
k *= 2;
-@@ -593,8 +598,12 @@ const char* _bus_error_message(const sd_bus_error *e, int error, char buf[static
+@@ -595,8 +600,12 @@ const char* _bus_error_message(const sd_bus_error *e, int error, char buf[static
if (e && e->message)
return e->message;
@@ -71,6 +71,3 @@ index 69a2eb6404..1561859650 100644
if (errno == 0) {
char error[STRLEN("ERRNO=") + DECIMAL_STR_MAX(int) + 1];
---
-2.34.1
-
diff --git a/meta/recipes-core/systemd/systemd/0011-avoid-redefinition-of-prctl_mm_map-structure.patch b/meta/recipes-core/systemd/systemd/0011-avoid-redefinition-of-prctl_mm_map-structure.patch
index e481b2e2e4..3075f9d003 100644
--- a/meta/recipes-core/systemd/systemd/0011-avoid-redefinition-of-prctl_mm_map-structure.patch
+++ b/meta/recipes-core/systemd/systemd/0011-avoid-redefinition-of-prctl_mm_map-structure.patch
@@ -1,7 +1,7 @@
-From 49c446cfb78cf74a909bed8c3798b77a5469866a Mon Sep 17 00:00:00 2001
+From c866c8652f06af4cd0b9bd7eedc606449f432b95 Mon Sep 17 00:00:00 2001
From: Chen Qi <Qi.Chen@windriver.com>
Date: Mon, 25 Feb 2019 15:44:54 +0800
-Subject: [PATCH 11/22] avoid redefinition of prctl_mm_map structure
+Subject: [PATCH] avoid redefinition of prctl_mm_map structure
Fix the following compile failure:
error: redefinition of 'struct prctl_mm_map'
@@ -27,6 +27,3 @@ index 7d9e395c92..88c2d7dfac 100644
/* 58319057b7847667f0c9585b9de0e8932b0fdb08 (4.3) */
#ifndef PR_CAP_AMBIENT
---
-2.34.1
-
diff --git a/meta/recipes-core/systemd/systemd/0012-do-not-disable-buffer-in-writing-files.patch b/meta/recipes-core/systemd/systemd/0012-do-not-disable-buffer-in-writing-files.patch
index 66be79077e..0fec84724d 100644
--- a/meta/recipes-core/systemd/systemd/0012-do-not-disable-buffer-in-writing-files.patch
+++ b/meta/recipes-core/systemd/systemd/0012-do-not-disable-buffer-in-writing-files.patch
@@ -1,7 +1,7 @@
-From e4885a8e60f883d9217e26e1db3754c2906aca31 Mon Sep 17 00:00:00 2001
+From 8464b845e6df1be303e09274c13e653072701671 Mon Sep 17 00:00:00 2001
From: Chen Qi <Qi.Chen@windriver.com>
Date: Fri, 1 Mar 2019 15:22:15 +0800
-Subject: [PATCH 12/22] do not disable buffer in writing files
+Subject: [PATCH] do not disable buffer in writing files
Do not disable buffer in writing files, otherwise we get
failure at boot for musl like below.
@@ -201,7 +201,7 @@ index 61ac4df1a6..ea18970196 100644
return r;
diff --git a/src/core/main.c b/src/core/main.c
-index 3f71cc0947..0e5aec3e9e 100644
+index 1c0030a75f..7108a87d46 100644
--- a/src/core/main.c
+++ b/src/core/main.c
@@ -1678,7 +1678,7 @@ static void initialize_core_pattern(bool skip_setup) {
@@ -253,7 +253,7 @@ index 066483e342..5f92dd7064 100644
log_warning_errno(r, "Failed to drop caches, ignoring: %m");
else
diff --git a/src/libsystemd/sd-device/sd-device.c b/src/libsystemd/sd-device/sd-device.c
-index 2fbc619a34..09d9591e37 100644
+index 01e66b4658..f3ea82ca1b 100644
--- a/src/libsystemd/sd-device/sd-device.c
+++ b/src/libsystemd/sd-device/sd-device.c
@@ -2516,7 +2516,7 @@ _public_ int sd_device_set_sysattr_value(sd_device *device, const char *sysattr,
@@ -279,10 +279,10 @@ index a5002437c6..b12e6cd9c9 100644
log_error_errno(r, "Failed to move process: %m");
goto finish;
diff --git a/src/nspawn/nspawn.c b/src/nspawn/nspawn.c
-index 6ab604d3dc..bbec6b686c 100644
+index 0600f3e014..ea369c32b2 100644
--- a/src/nspawn/nspawn.c
+++ b/src/nspawn/nspawn.c
-@@ -2688,7 +2688,7 @@ static int reset_audit_loginuid(void) {
+@@ -2690,7 +2690,7 @@ static int reset_audit_loginuid(void) {
if (streq(p, "4294967295"))
return 0;
@@ -291,7 +291,7 @@ index 6ab604d3dc..bbec6b686c 100644
if (r < 0) {
log_error_errno(r,
"Failed to reset audit login UID. This probably means that your kernel is too\n"
-@@ -4141,7 +4141,7 @@ static int setup_uid_map(
+@@ -4143,7 +4143,7 @@ static int setup_uid_map(
return log_oom();
xsprintf(uid_map, "/proc/" PID_FMT "/uid_map", pid);
@@ -300,7 +300,7 @@ index 6ab604d3dc..bbec6b686c 100644
if (r < 0)
return log_error_errno(r, "Failed to write UID map: %m");
-@@ -4151,7 +4151,7 @@ static int setup_uid_map(
+@@ -4153,7 +4153,7 @@ static int setup_uid_map(
return log_oom();
xsprintf(uid_map, "/proc/" PID_FMT "/gid_map", pid);
@@ -367,10 +367,10 @@ index 805503f366..01a7ccb291 100644
log_debug_errno(r, "Failed to turn off coredumps, ignoring: %m");
}
diff --git a/src/shared/hibernate-util.c b/src/shared/hibernate-util.c
-index 3eb13d48f6..d09b901be1 100644
+index c3991cfa4c..7d522d8d1f 100644
--- a/src/shared/hibernate-util.c
+++ b/src/shared/hibernate-util.c
-@@ -481,7 +481,7 @@ int write_resume_config(dev_t devno, uint64_t offset, const char *device) {
+@@ -501,7 +501,7 @@ int write_resume_config(dev_t devno, uint64_t offset, const char *device) {
/* We write the offset first since it's safer. Note that this file is only available in 4.17+, so
* fail gracefully if it doesn't exist and we're only overwriting it with 0. */
@@ -379,7 +379,7 @@ index 3eb13d48f6..d09b901be1 100644
if (r == -ENOENT) {
if (offset != 0)
return log_error_errno(SYNTHETIC_ERRNO(EOPNOTSUPP),
-@@ -497,7 +497,7 @@ int write_resume_config(dev_t devno, uint64_t offset, const char *device) {
+@@ -517,7 +517,7 @@ int write_resume_config(dev_t devno, uint64_t offset, const char *device) {
log_debug("Wrote resume_offset=%s for device '%s' to /sys/power/resume_offset.",
offset_str, device);
@@ -402,7 +402,7 @@ index 1f88e724d0..feb18b320a 100644
return r;
diff --git a/src/shared/watchdog.c b/src/shared/watchdog.c
-index 4c1a968718..6faf6806a5 100644
+index 99ccefb227..e4975018ab 100644
--- a/src/shared/watchdog.c
+++ b/src/shared/watchdog.c
@@ -93,7 +93,7 @@ static int set_pretimeout_governor(const char *governor) {
@@ -412,10 +412,10 @@ index 4c1a968718..6faf6806a5 100644
- WRITE_STRING_FILE_DISABLE_BUFFER | WRITE_STRING_FILE_VERIFY_ON_FAILURE | WRITE_STRING_FILE_VERIFY_IGNORE_NEWLINE);
+ WRITE_STRING_FILE_VERIFY_ON_FAILURE | WRITE_STRING_FILE_VERIFY_IGNORE_NEWLINE);
if (r < 0)
- return log_error_errno(r, "Failed to set pretimeout_governor to '%s': %m", governor);
+ return log_error_errno(r, "Failed to set watchdog pretimeout_governor to '%s': %m", governor);
diff --git a/src/sleep/sleep.c b/src/sleep/sleep.c
-index 21af3e9e52..6d4b84b5d5 100644
+index 21062b24e0..262dd71d72 100644
--- a/src/sleep/sleep.c
+++ b/src/sleep/sleep.c
@@ -137,7 +137,7 @@ static int write_state(int fd, char * const *states) {
@@ -437,7 +437,7 @@ index 21af3e9e52..6d4b84b5d5 100644
log_debug("Using sleep disk mode '%s'.", *mode);
return 0;
diff --git a/src/storagetm/storagetm.c b/src/storagetm/storagetm.c
-index ae63baaf79..82eeca479a 100644
+index 16d4fb07d4..aca7506463 100644
--- a/src/storagetm/storagetm.c
+++ b/src/storagetm/storagetm.c
@@ -186,7 +186,7 @@ static int nvme_subsystem_unlink(NvmeSubsystem *s) {
@@ -533,7 +533,7 @@ index ae63baaf79..82eeca479a 100644
return log_error_errno(r, "Failed to set IP address on NVME port %" PRIu16 ": %m", portnr);
diff --git a/src/udev/udev-rules.c b/src/udev/udev-rules.c
-index febe345b4c..a90b610ba1 100644
+index e5b8df5c2d..63ca15628c 100644
--- a/src/udev/udev-rules.c
+++ b/src/udev/udev-rules.c
@@ -2711,7 +2711,6 @@ static int udev_rule_apply_token_to_event(
@@ -557,6 +557,3 @@ index 4d82c65f0a..3a3d861b83 100644
if (r < 0)
return log_warning_errno(r, "Failed to %s sysfs UTF-8 flag: %m", enable_disable(utf8));
---
-2.34.1
-
diff --git a/meta/recipes-core/systemd/systemd/0013-Handle-__cpu_mask-usage.patch b/meta/recipes-core/systemd/systemd/0013-Handle-__cpu_mask-usage.patch
index 43f75373a6..6d7e002d61 100644
--- a/meta/recipes-core/systemd/systemd/0013-Handle-__cpu_mask-usage.patch
+++ b/meta/recipes-core/systemd/systemd/0013-Handle-__cpu_mask-usage.patch
@@ -1,7 +1,7 @@
-From 2f90f8463423cfbb7e83fcef42f1071018c3b56e Mon Sep 17 00:00:00 2001
+From f6b69f28657c09b1181552d85e52ced0e01182e3 Mon Sep 17 00:00:00 2001
From: Scott Murray <scott.murray@konsulko.com>
Date: Fri, 13 Sep 2019 19:26:27 -0400
-Subject: [PATCH 13/22] Handle __cpu_mask usage
+Subject: [PATCH] Handle __cpu_mask usage
Fixes errors:
@@ -55,6 +55,3 @@ index ea0c58770e..b65c0bd370 100644
/* Print information about various types. Useful when diagnosing
* gcc diagnostics on an unfamiliar architecture. */
---
-2.34.1
-
diff --git a/meta/recipes-core/systemd/systemd/0014-Handle-missing-gshadow.patch b/meta/recipes-core/systemd/systemd/0014-Handle-missing-gshadow.patch
index a751e1ba6f..40b60399aa 100644
--- a/meta/recipes-core/systemd/systemd/0014-Handle-missing-gshadow.patch
+++ b/meta/recipes-core/systemd/systemd/0014-Handle-missing-gshadow.patch
@@ -1,7 +1,7 @@
-From b7c827bb44edbb6251c9fcdb80aa03982c0e7bf3 Mon Sep 17 00:00:00 2001
+From 5442d8ddb285d33b459aefc76962640afd131280 Mon Sep 17 00:00:00 2001
From: Alex Kiernan <alex.kiernan@gmail.com>
Date: Tue, 10 Mar 2020 11:05:20 +0000
-Subject: [PATCH 14/22] Handle missing gshadow
+Subject: [PATCH] Handle missing gshadow
gshadow usage is now present in the userdb code. Mask all uses of it to
allow compilation on musl
@@ -168,6 +168,3 @@ index f60d48ace4..e878199a28 100644
if (r < 0)
return r;
---
-2.34.1
-
diff --git a/meta/recipes-core/systemd/systemd/0015-missing_syscall.h-Define-MIPS-ABI-defines-for-musl.patch b/meta/recipes-core/systemd/systemd/0015-missing_syscall.h-Define-MIPS-ABI-defines-for-musl.patch
index e112766a9b..51f0b048fa 100644
--- a/meta/recipes-core/systemd/systemd/0015-missing_syscall.h-Define-MIPS-ABI-defines-for-musl.patch
+++ b/meta/recipes-core/systemd/systemd/0015-missing_syscall.h-Define-MIPS-ABI-defines-for-musl.patch
@@ -1,7 +1,7 @@
-From 3dc9d9d410bcce54fddfd94f43f7f77f3aa8e281 Mon Sep 17 00:00:00 2001
+From 863dd6f502d53a4a2644e031eee2e8dfa3fd05aa Mon Sep 17 00:00:00 2001
From: Khem Raj <raj.khem@gmail.com>
Date: Mon, 12 Apr 2021 23:44:53 -0700
-Subject: [PATCH 15/22] missing_syscall.h: Define MIPS ABI defines for musl
+Subject: [PATCH] missing_syscall.h: Define MIPS ABI defines for musl
musl does not define _MIPS_SIM_ABI32, _MIPS_SIM_NABI32, _MIPS_SIM_ABI64
unlike glibc where these are provided by libc headers, therefore define
@@ -16,7 +16,7 @@ Signed-off-by: Khem Raj <raj.khem@gmail.com>
2 files changed, 7 insertions(+)
diff --git a/src/basic/missing_syscall.h b/src/basic/missing_syscall.h
-index d795efd8f2..d6729d3c1d 100644
+index 86280771c4..20d05db506 100644
--- a/src/basic/missing_syscall.h
+++ b/src/basic/missing_syscall.h
@@ -20,6 +20,12 @@
@@ -33,7 +33,7 @@ index d795efd8f2..d6729d3c1d 100644
#include "missing_keyctl.h"
#include "missing_stat.h"
diff --git a/src/shared/base-filesystem.c b/src/shared/base-filesystem.c
-index 7ae921a113..0ef9d1fd39 100644
+index 67aa8ea1f2..8d9824495e 100644
--- a/src/shared/base-filesystem.c
+++ b/src/shared/base-filesystem.c
@@ -20,6 +20,7 @@
@@ -44,6 +44,3 @@ index 7ae921a113..0ef9d1fd39 100644
typedef struct BaseFilesystem {
const char *dir; /* directory or symlink to create */
---
-2.34.1
-
diff --git a/meta/recipes-core/systemd/systemd/0016-pass-correct-parameters-to-getdents64.patch b/meta/recipes-core/systemd/systemd/0016-pass-correct-parameters-to-getdents64.patch
index 0be817e62d..66b8f66806 100644
--- a/meta/recipes-core/systemd/systemd/0016-pass-correct-parameters-to-getdents64.patch
+++ b/meta/recipes-core/systemd/systemd/0016-pass-correct-parameters-to-getdents64.patch
@@ -1,7 +1,7 @@
-From 0994b59dba9f248ad31cb7087046dc00b72cb4ea Mon Sep 17 00:00:00 2001
+From 01de9e5a6e4ad2f361d3eb4d9839c7afd91cc677 Mon Sep 17 00:00:00 2001
From: Khem Raj <raj.khem@gmail.com>
Date: Fri, 21 Jan 2022 15:15:11 -0800
-Subject: [PATCH 16/22] pass correct parameters to getdents64
+Subject: [PATCH] pass correct parameters to getdents64
Fixes
../git/src/basic/recurse-dir.c:57:40: error: incompatible pointer types passing 'uint8_t *' (aka 'unsigned char *') to parameter of type 'struct dirent *' [-Werror,-Wincompatible-pointer-types]
@@ -32,6 +32,3 @@ index 5e98b7a5d8..aef065047b 100644
if (n < 0)
return -errno;
if (n == 0)
---
-2.34.1
-
diff --git a/meta/recipes-core/systemd/systemd/0017-Adjust-for-musl-headers.patch b/meta/recipes-core/systemd/systemd/0017-Adjust-for-musl-headers.patch
index 4176522a1c..f86b8c889c 100644
--- a/meta/recipes-core/systemd/systemd/0017-Adjust-for-musl-headers.patch
+++ b/meta/recipes-core/systemd/systemd/0017-Adjust-for-musl-headers.patch
@@ -1,7 +1,7 @@
-From 3c094d443ca30f19114392fd8ef274af6eabc12d Mon Sep 17 00:00:00 2001
+From a45cf93772ac5055665cc55454509747b9c68ad2 Mon Sep 17 00:00:00 2001
From: Khem Raj <raj.khem@gmail.com>
Date: Fri, 21 Jan 2022 22:19:37 -0800
-Subject: [PATCH 17/22] Adjust for musl headers
+Subject: [PATCH] Adjust for musl headers
Upstream-Status: Inappropriate [musl specific]
@@ -425,7 +425,7 @@ index 607fe0053c..9ce4005874 100644
#include "sd-dhcp-server.h"
diff --git a/src/network/networkd-dhcp4.c b/src/network/networkd-dhcp4.c
-index efbae6d868..1ea2151d50 100644
+index 49c452da7c..98aad1f3cd 100644
--- a/src/network/networkd-dhcp4.c
+++ b/src/network/networkd-dhcp4.c
@@ -3,7 +3,7 @@
@@ -451,7 +451,7 @@ index 32229a3fc7..662a345d6e 100644
#include "in-addr-util.h"
#include "networkd-address.h"
diff --git a/src/network/networkd-link.c b/src/network/networkd-link.c
-index ee5f0f2c0a..ea5269a2de 100644
+index 4ef1be4bad..e5aa53604d 100644
--- a/src/network/networkd-link.c
+++ b/src/network/networkd-link.c
@@ -3,7 +3,7 @@
@@ -464,7 +464,7 @@ index ee5f0f2c0a..ea5269a2de 100644
#include <linux/netdevice.h>
#include <sys/socket.h>
diff --git a/src/network/networkd-ndisc.c b/src/network/networkd-ndisc.c
-index ab9eeb13a5..dd96fe7483 100644
+index 840ccb158d..9f2e85e32f 100644
--- a/src/network/networkd-ndisc.c
+++ b/src/network/networkd-ndisc.c
@@ -6,7 +6,7 @@
@@ -477,7 +477,7 @@ index ab9eeb13a5..dd96fe7483 100644
#include "sd-ndisc.h"
diff --git a/src/network/networkd-route.c b/src/network/networkd-route.c
-index 7218d799fc..30d5574eae 100644
+index eb502ae2cf..5b25ee4523 100644
--- a/src/network/networkd-route.c
+++ b/src/network/networkd-route.c
@@ -1,9 +1,5 @@
@@ -502,7 +502,7 @@ index 7218d799fc..30d5574eae 100644
_cleanup_(route_freep) Route *route = NULL;
diff --git a/src/network/networkd-setlink.c b/src/network/networkd-setlink.c
-index 2298f9ea3a..7d5f87de53 100644
+index 011ea1fe6e..59dfe733eb 100644
--- a/src/network/networkd-setlink.c
+++ b/src/network/networkd-setlink.c
@@ -2,7 +2,7 @@
@@ -567,6 +567,3 @@ index f528a46b8e..830318cda5 100644
#include <linux/netdevice.h>
#include <linux/pci_regs.h>
---
-2.34.1
-
diff --git a/meta/recipes-core/systemd/systemd/0018-test-bus-error-strerror-is-assumed-to-be-GNU-specifi.patch b/meta/recipes-core/systemd/systemd/0018-test-bus-error-strerror-is-assumed-to-be-GNU-specifi.patch
index 75f6b9094a..67388e6807 100644
--- a/meta/recipes-core/systemd/systemd/0018-test-bus-error-strerror-is-assumed-to-be-GNU-specifi.patch
+++ b/meta/recipes-core/systemd/systemd/0018-test-bus-error-strerror-is-assumed-to-be-GNU-specifi.patch
@@ -1,8 +1,8 @@
-From be02bd0876a061728661535a709d313e39fe1ac3 Mon Sep 17 00:00:00 2001
+From 20dfb0b5e7113c2e7f82c01488b419dffe8714ab Mon Sep 17 00:00:00 2001
From: Khem Raj <raj.khem@gmail.com>
Date: Tue, 8 Nov 2022 13:31:34 -0800
-Subject: [PATCH 18/22] test-bus-error: strerror() is assumed to be GNU
- specific version mark it so
+Subject: [PATCH] test-bus-error: strerror() is assumed to be GNU specific
+ version mark it so
Upstream-Status: Inappropriate [Upstream systemd only supports glibc]
@@ -47,6 +47,3 @@ index 376d532281..967cfd4d67 100644
TEST(PROTECT_ERRNO) {
errno = 12;
---
-2.34.1
-
diff --git a/meta/recipes-core/systemd/systemd/0019-errno-util-Make-STRERROR-portable-for-musl.patch b/meta/recipes-core/systemd/systemd/0019-errno-util-Make-STRERROR-portable-for-musl.patch
index e038b73678..36d468959a 100644
--- a/meta/recipes-core/systemd/systemd/0019-errno-util-Make-STRERROR-portable-for-musl.patch
+++ b/meta/recipes-core/systemd/systemd/0019-errno-util-Make-STRERROR-portable-for-musl.patch
@@ -1,7 +1,7 @@
-From 46d80840bfe37e67d4f18c37a77751ea1fe63a07 Mon Sep 17 00:00:00 2001
+From 32371040c2aa649e23c3b0f2c5ee27995a16526a Mon Sep 17 00:00:00 2001
From: Khem Raj <raj.khem@gmail.com>
Date: Mon, 23 Jan 2023 23:39:46 -0800
-Subject: [PATCH 19/22] errno-util: Make STRERROR portable for musl
+Subject: [PATCH] errno-util: Make STRERROR portable for musl
Sadly, systemd has decided to use yet another GNU extention in a macro
lets make this such that we can use XSI compliant strerror_r() for
@@ -37,6 +37,3 @@ index 27804e6382..274c1c6ef1 100644
/* A helper to print an error message or message for functions that return 0 on EOF.
* Note that we can't use ({ … }) to define a temporary variable, so errnum is
* evaluated twice. */
---
-2.34.1
-
diff --git a/meta/recipes-core/systemd/systemd/0020-sd-event-Make-malloc_trim-conditional-on-glibc.patch b/meta/recipes-core/systemd/systemd/0020-sd-event-Make-malloc_trim-conditional-on-glibc.patch
index b83fffe793..f860b5f542 100644
--- a/meta/recipes-core/systemd/systemd/0020-sd-event-Make-malloc_trim-conditional-on-glibc.patch
+++ b/meta/recipes-core/systemd/systemd/0020-sd-event-Make-malloc_trim-conditional-on-glibc.patch
@@ -1,7 +1,7 @@
-From 9eb4867b4e2dbdb2484ae854022aff97e2f0feb3 Mon Sep 17 00:00:00 2001
+From 751fb8c9a05115f5329cfa25e69afe7657124c20 Mon Sep 17 00:00:00 2001
From: Khem Raj <raj.khem@gmail.com>
Date: Wed, 2 Aug 2023 12:06:27 -0700
-Subject: [PATCH 20/22] sd-event: Make malloc_trim() conditional on glibc
+Subject: [PATCH] sd-event: Make malloc_trim() conditional on glibc
musl does not have this API
@@ -12,7 +12,7 @@ Signed-off-by: Khem Raj <raj.khem@gmail.com>
1 file changed, 3 insertions(+), 1 deletion(-)
diff --git a/src/libsystemd/sd-event/sd-event.c b/src/libsystemd/sd-event/sd-event.c
-index 288798a0dc..6419a7f216 100644
+index b6899df192..0c03287004 100644
--- a/src/libsystemd/sd-event/sd-event.c
+++ b/src/libsystemd/sd-event/sd-event.c
@@ -1874,7 +1874,7 @@ _public_ int sd_event_add_exit(
@@ -34,6 +34,3 @@ index 288798a0dc..6419a7f216 100644
usec_t after_timestamp = now(CLOCK_MONOTONIC);
if (r > 0)
---
-2.34.1
-
diff --git a/meta/recipes-core/systemd/systemd/0021-shared-Do-not-use-malloc_info-on-musl.patch b/meta/recipes-core/systemd/systemd/0021-shared-Do-not-use-malloc_info-on-musl.patch
index 7eff069bb7..ece9873bbc 100644
--- a/meta/recipes-core/systemd/systemd/0021-shared-Do-not-use-malloc_info-on-musl.patch
+++ b/meta/recipes-core/systemd/systemd/0021-shared-Do-not-use-malloc_info-on-musl.patch
@@ -1,7 +1,7 @@
-From 502597b9ddd6b145541b23fadca0b1d3ca9f6367 Mon Sep 17 00:00:00 2001
+From 4fe2a8b1aab7297beac50f6ce46f3df4169de218 Mon Sep 17 00:00:00 2001
From: Khem Raj <raj.khem@gmail.com>
Date: Wed, 2 Aug 2023 12:20:40 -0700
-Subject: [PATCH 21/22] shared: Do not use malloc_info on musl
+Subject: [PATCH] shared: Do not use malloc_info on musl
Upstream-Status: Inappropriate [musl-specific]
Signed-off-by: Khem Raj <raj.khem@gmail.com>
@@ -52,6 +52,3 @@ index 8e70e365dd..9e782caec9 100644
(void) memstream_dump(LOG_INFO, &m);
break;
}
---
-2.34.1
-
diff --git a/meta/recipes-core/systemd/systemd/0022-avoid-missing-LOCK_EX-declaration.patch b/meta/recipes-core/systemd/systemd/0022-avoid-missing-LOCK_EX-declaration.patch
index 24f3bf74a0..f517392e58 100644
--- a/meta/recipes-core/systemd/systemd/0022-avoid-missing-LOCK_EX-declaration.patch
+++ b/meta/recipes-core/systemd/systemd/0022-avoid-missing-LOCK_EX-declaration.patch
@@ -1,7 +1,7 @@
-From fd52f1764647e03a35e8f0ed0ef952049073ccbd Mon Sep 17 00:00:00 2001
+From 97d3ed7834bd86615ba4acdbef984c677b7e7791 Mon Sep 17 00:00:00 2001
From: Chen Qi <Qi.Chen@windriver.com>
Date: Tue, 2 Jan 2024 11:03:27 +0800
-Subject: [PATCH 22/22] avoid missing LOCK_EX declaration
+Subject: [PATCH] avoid missing LOCK_EX declaration
This only happens on MUSL. Include sys/file.h to avoid compilation
error about missing LOCK_EX declaration.
@@ -15,7 +15,7 @@ Signed-off-by: Chen Qi <Qi.Chen@windriver.com>
2 files changed, 2 insertions(+)
diff --git a/src/core/exec-invoke.c b/src/core/exec-invoke.c
-index 70d963e269..7084811439 100644
+index fe14ceeb31..521e7b87ff 100644
--- a/src/core/exec-invoke.c
+++ b/src/core/exec-invoke.c
@@ -4,6 +4,7 @@
@@ -38,6 +38,3 @@ index 5339bc4e5e..0697495f23 100644
int lock_dev_console(void);
---
-2.34.1
-
diff --git a/meta/recipes-core/systemd/systemd_255.4.bb b/meta/recipes-core/systemd/systemd_255.6.bb
index f58a1bc2b6..62842d43c8 100644
--- a/meta/recipes-core/systemd/systemd_255.4.bb
+++ b/meta/recipes-core/systemd/systemd_255.6.bb
@@ -293,15 +293,15 @@ do_install() {
install -d ${D}${sysconfdir}/udev/rules.d/
install -d ${D}${nonarch_libdir}/tmpfiles.d
- for rule in $(find ${WORKDIR} -maxdepth 1 -type f -name "*.rules"); do
+ for rule in $(find ${UNPACKDIR} -maxdepth 1 -type f -name "*.rules"); do
install -m 0644 $rule ${D}${sysconfdir}/udev/rules.d/
done
- install -m 0644 ${WORKDIR}/00-create-volatile.conf ${D}${nonarch_libdir}/tmpfiles.d/
+ install -m 0644 ${UNPACKDIR}/00-create-volatile.conf ${D}${nonarch_libdir}/tmpfiles.d/
if ${@bb.utils.contains('DISTRO_FEATURES','sysvinit','true','false',d)}; then
install -d ${D}${sysconfdir}/init.d
- install -m 0755 ${WORKDIR}/init ${D}${sysconfdir}/init.d/systemd-udevd
+ install -m 0755 ${UNPACKDIR}/init ${D}${sysconfdir}/init.d/systemd-udevd
sed -i s%@UDEVD@%${rootlibexecdir}/systemd/systemd-udevd% ${D}${sysconfdir}/init.d/systemd-udevd
install -Dm 0755 ${S}/src/systemctl/systemd-sysv-install.SKELETON ${D}${systemd_unitdir}/systemd-sysv-install
fi
@@ -372,9 +372,9 @@ do_install() {
# request hostname changes via DBUS without elevating its privileges
if ${@bb.utils.contains('PACKAGECONFIG', 'polkit_hostnamed_fallback', 'true', 'false', d)}; then
install -d ${D}${systemd_system_unitdir}/systemd-hostnamed.service.d/
- install -m 0644 ${WORKDIR}/00-hostnamed-network-user.conf ${D}${systemd_system_unitdir}/systemd-hostnamed.service.d/
+ install -m 0644 ${UNPACKDIR}/00-hostnamed-network-user.conf ${D}${systemd_system_unitdir}/systemd-hostnamed.service.d/
install -d ${D}${datadir}/dbus-1/system.d/
- install -m 0644 ${WORKDIR}/org.freedesktop.hostname1_no_polkit.conf ${D}${datadir}/dbus-1/system.d/
+ install -m 0644 ${UNPACKDIR}/org.freedesktop.hostname1_no_polkit.conf ${D}${datadir}/dbus-1/system.d/
fi
# create link for existing udev rules
@@ -382,10 +382,10 @@ do_install() {
# install default policy for presets
# https://www.freedesktop.org/wiki/Software/systemd/Preset/#howto
- install -Dm 0644 ${WORKDIR}/99-default.preset ${D}${systemd_unitdir}/system-preset/99-default.preset
+ install -Dm 0644 ${UNPACKDIR}/99-default.preset ${D}${systemd_unitdir}/system-preset/99-default.preset
# add a profile fragment to disable systemd pager with busybox less
- install -Dm 0644 ${WORKDIR}/systemd-pager.sh ${D}${sysconfdir}/profile.d/systemd-pager.sh
+ install -Dm 0644 ${UNPACKDIR}/systemd-pager.sh ${D}${sysconfdir}/profile.d/systemd-pager.sh
if [ -n "${WATCHDOG_TIMEOUT}" ]; then
sed -i -e 's/#RebootWatchdogSec=10min/RebootWatchdogSec=${WATCHDOG_TIMEOUT}/' \
diff --git a/meta/recipes-core/sysvinit/sysvinit-inittab_2.88dsf.bb b/meta/recipes-core/sysvinit/sysvinit-inittab_2.88dsf.bb
index 6bbe517df1..6ff2ca1bf4 100644
--- a/meta/recipes-core/sysvinit/sysvinit-inittab_2.88dsf.bb
+++ b/meta/recipes-core/sysvinit/sysvinit-inittab_2.88dsf.bb
@@ -6,7 +6,8 @@ LIC_FILES_CHKSUM = "file://${COREBASE}/meta/files/common-licenses/GPL-2.0-only;m
SRC_URI = "file://inittab \
file://start_getty"
-S = "${WORKDIR}"
+S = "${WORKDIR}/sources"
+UNPACKDIR = "${S}"
INHIBIT_DEFAULT_DEPS = "1"
@@ -16,9 +17,9 @@ do_compile() {
do_install() {
install -d ${D}${sysconfdir}
- install -m 0644 ${WORKDIR}/inittab ${D}${sysconfdir}/inittab
+ install -m 0644 ${S}/inittab ${D}${sysconfdir}/inittab
install -d ${D}${base_bindir}
- install -m 0755 ${WORKDIR}/start_getty ${D}${base_bindir}/start_getty
+ install -m 0755 ${S}/start_getty ${D}${base_bindir}/start_getty
sed -e 's,/usr/bin,${bindir},g' -i ${D}${base_bindir}/start_getty
CONSOLES="${SERIAL_CONSOLES}"
diff --git a/meta/recipes-core/sysvinit/sysvinit_3.04.bb b/meta/recipes-core/sysvinit/sysvinit_3.04.bb
index 6a612468f3..fb9d00891c 100644
--- a/meta/recipes-core/sysvinit/sysvinit_3.04.bb
+++ b/meta/recipes-core/sysvinit/sysvinit_3.04.bb
@@ -97,18 +97,18 @@ do_install () {
sed -e \
's:#PSPLASH_TEXT#:${@bb.utils.contains("PACKAGECONFIG","psplash-text-updates","yes","no", d)}:g' \
- ${WORKDIR}/rcS-default > ${D}${sysconfdir}/default/rcS
+ ${UNPACKDIR}/rcS-default > ${D}${sysconfdir}/default/rcS
chmod 0644 ${D}${sysconfdir}/default/rcS
- install -m 0755 ${WORKDIR}/rc ${D}${sysconfdir}/init.d
- install -m 0755 ${WORKDIR}/rcS ${D}${sysconfdir}/init.d
- install -m 0755 ${WORKDIR}/bootlogd.init ${D}${sysconfdir}/init.d/bootlogd
+ install -m 0755 ${UNPACKDIR}/rc ${D}${sysconfdir}/init.d
+ install -m 0755 ${UNPACKDIR}/rcS ${D}${sysconfdir}/init.d
+ install -m 0755 ${UNPACKDIR}/bootlogd.init ${D}${sysconfdir}/init.d/bootlogd
ln -sf bootlogd ${D}${sysconfdir}/init.d/stop-bootlogd
update-rc.d -r ${D} bootlogd start 07 S .
update-rc.d -r ${D} stop-bootlogd start 99 2 3 4 5 .
install -d ${D}${sysconfdir}/default/volatiles
- install -m 0644 ${WORKDIR}/01_bootlogd ${D}${sysconfdir}/default/volatiles
+ install -m 0644 ${UNPACKDIR}/01_bootlogd ${D}${sysconfdir}/default/volatiles
chown root:shutdown ${D}${base_sbindir}/halt ${D}${base_sbindir}/shutdown
chmod o-x,u+s ${D}${base_sbindir}/halt ${D}${base_sbindir}/shutdown
diff --git a/meta/recipes-core/udev/eudev_3.2.14.bb b/meta/recipes-core/udev/eudev_3.2.14.bb
index 18696679c8..0e5610f77c 100644
--- a/meta/recipes-core/udev/eudev_3.2.14.bb
+++ b/meta/recipes-core/udev/eudev_3.2.14.bb
@@ -42,12 +42,12 @@ PACKAGECONFIG[selinux] = "--enable-selinux,--disable-selinux,libselinux"
do_install:append() {
install -d ${D}${sysconfdir}/init.d
- install -m 0755 ${WORKDIR}/init ${D}${sysconfdir}/init.d/udev
+ install -m 0755 ${UNPACKDIR}/init ${D}${sysconfdir}/init.d/udev
sed -i s%@UDEVD@%${base_sbindir}/udevd% ${D}${sysconfdir}/init.d/udev
sed -i s%@KMOD@%${base_bindir}/kmod% ${D}${sysconfdir}/init.d/udev
install -d ${D}${sysconfdir}/udev/rules.d
- install -m 0644 ${WORKDIR}/local.rules ${D}${sysconfdir}/udev/rules.d/local.rules
+ install -m 0644 ${UNPACKDIR}/local.rules ${D}${sysconfdir}/udev/rules.d/local.rules
# Use classic network interface naming scheme if no 'pni-names' distro feature
if ${@bb.utils.contains('DISTRO_FEATURES', 'pni-names', 'false', 'true', d)}; then
diff --git a/meta/recipes-core/udev/udev-extraconf_1.1.bb b/meta/recipes-core/udev/udev-extraconf_1.1.bb
index 30f1fe76d0..0e2abcd424 100644
--- a/meta/recipes-core/udev/udev-extraconf_1.1.bb
+++ b/meta/recipes-core/udev/udev-extraconf_1.1.bb
@@ -13,28 +13,29 @@ SRC_URI = " \
file://localextra.rules \
"
-S = "${WORKDIR}"
+S = "${WORKDIR}/sources"
+UNPACKDIR = "${S}"
MOUNT_BASE = "/run/media"
do_install() {
install -d ${D}${sysconfdir}/udev/rules.d
- install -m 0644 ${WORKDIR}/automount.rules ${D}${sysconfdir}/udev/rules.d/automount.rules
- install -m 0644 ${WORKDIR}/autonet.rules ${D}${sysconfdir}/udev/rules.d/autonet.rules
- install -m 0644 ${WORKDIR}/localextra.rules ${D}${sysconfdir}/udev/rules.d/localextra.rules
+ install -m 0644 ${S}/automount.rules ${D}${sysconfdir}/udev/rules.d/automount.rules
+ install -m 0644 ${S}/autonet.rules ${D}${sysconfdir}/udev/rules.d/autonet.rules
+ install -m 0644 ${S}/localextra.rules ${D}${sysconfdir}/udev/rules.d/localextra.rules
install -d ${D}${sysconfdir}/udev/mount.ignorelist.d
- install -m 0644 ${WORKDIR}/mount.ignorelist ${D}${sysconfdir}/udev/
+ install -m 0644 ${S}/mount.ignorelist ${D}${sysconfdir}/udev/
install -d ${D}${sysconfdir}/udev/scripts/
- install -m 0755 ${WORKDIR}/mount.sh ${D}${sysconfdir}/udev/scripts/mount.sh
+ install -m 0755 ${S}/mount.sh ${D}${sysconfdir}/udev/scripts/mount.sh
sed -i 's|@systemd_unitdir@|${systemd_unitdir}|g' ${D}${sysconfdir}/udev/scripts/mount.sh
sed -i 's|@base_sbindir@|${base_sbindir}|g' ${D}${sysconfdir}/udev/scripts/mount.sh
sed -i 's|@MOUNT_BASE@|${MOUNT_BASE}|g' ${D}${sysconfdir}/udev/scripts/mount.sh
- install -m 0755 ${WORKDIR}/network.sh ${D}${sysconfdir}/udev/scripts
+ install -m 0755 ${S}/network.sh ${D}${sysconfdir}/udev/scripts
}
pkg_postinst:${PN} () {
diff --git a/meta/recipes-core/util-linux/util-linux_2.39.3.bb b/meta/recipes-core/util-linux/util-linux_2.39.3.bb
index a3f9badbd9..2cd7750afc 100644
--- a/meta/recipes-core/util-linux/util-linux_2.39.3.bb
+++ b/meta/recipes-core/util-linux/util-linux_2.39.3.bb
@@ -148,7 +148,7 @@ SYSTEMD_SERVICE:${PN}-fstrim = "fstrim.timer fstrim.service"
SYSTEMD_AUTO_ENABLE:${PN}-fstrim = "disable"
do_compile:append () {
- cp ${WORKDIR}/fcntl-lock.c ${S}/fcntl-lock.c
+ cp ${UNPACKDIR}/fcntl-lock.c ${S}/fcntl-lock.c
${CC} ${CFLAGS} ${LDFLAGS} ${S}/fcntl-lock.c -o ${B}/fcntl-lock
}
@@ -194,8 +194,8 @@ do_install () {
do_install:append:class-target () {
if [ "${@bb.utils.filter('PACKAGECONFIG', 'pam', d)}" ]; then
install -d ${D}${sysconfdir}/pam.d
- install -m 0644 ${WORKDIR}/runuser.pamd ${D}${sysconfdir}/pam.d/runuser
- install -m 0644 ${WORKDIR}/runuser-l.pamd ${D}${sysconfdir}/pam.d/runuser-l
+ install -m 0644 ${UNPACKDIR}/runuser.pamd ${D}${sysconfdir}/pam.d/runuser
+ install -m 0644 ${UNPACKDIR}/runuser-l.pamd ${D}${sysconfdir}/pam.d/runuser-l
# Required for "su -" aka "su --login" because
# otherwise it uses "other", which has "auth pam_deny.so"
# and thus prevents the operation.
@@ -322,7 +322,7 @@ do_install_ptest() {
cp ${S}/tests/*.sh ${D}${PTEST_PATH}/tests/
cp -pR ${S}/tests/expected ${D}${PTEST_PATH}/tests/expected
cp -pR ${S}/tests/ts ${D}${PTEST_PATH}/tests/
- cp ${WORKDIR}/build/config.h ${D}${PTEST_PATH}
+ cp ${B}/config.h ${D}${PTEST_PATH}
sed -i 's|@base_sbindir@|${base_sbindir}|g' ${D}${PTEST_PATH}/run-ptest
diff --git a/meta/recipes-core/volatile-binds/volatile-binds.bb b/meta/recipes-core/volatile-binds/volatile-binds.bb
index cca8a65fb4..3597ec7356 100644
--- a/meta/recipes-core/volatile-binds/volatile-binds.bb
+++ b/meta/recipes-core/volatile-binds/volatile-binds.bb
@@ -9,7 +9,8 @@ SRC_URI = "\
file://volatile-binds.service.in \
"
-S = "${WORKDIR}"
+S = "${WORKDIR}/sources"
+UNPACKDIR = "${S}"
inherit allarch systemd features_check
@@ -64,7 +65,6 @@ END
"$var_lib_servicefile"
fi
}
-do_compile[dirs] = "${WORKDIR}"
do_install () {
install -d ${D}${base_sbindir}
@@ -82,4 +82,3 @@ do_install () {
ln -s /dev/null ${D}${sysconfdir}/tmpfiles.d/etc.conf
ln -s /dev/null ${D}${sysconfdir}/tmpfiles.d/home.conf
}
-do_install[dirs] = "${WORKDIR}"
diff --git a/meta/recipes-devtools/apt/apt_2.6.1.bb b/meta/recipes-devtools/apt/apt_2.6.1.bb
index fb4ff899d2..68bd7c5407 100644
--- a/meta/recipes-devtools/apt/apt_2.6.1.bb
+++ b/meta/recipes-devtools/apt/apt_2.6.1.bb
@@ -49,7 +49,7 @@ DEPENDS += "db gnutls lz4 zlib bzip2 xz libgcrypt xxhash"
EXTRA_OECMAKE:append = " -DCURRENT_VENDOR=debian -DWITH_DOC=False \
-DDPKG_DATADIR=${datadir}/dpkg \
- -DTRIEHASH_EXECUTABLE=${WORKDIR}/triehash \
+ -DTRIEHASH_EXECUTABLE=${UNPACKDIR}/triehash \
-DCMAKE_DISABLE_FIND_PACKAGE_ZSTD=True \
-DCMAKE_DISABLE_FIND_PACKAGE_SECCOMP=True \
-DWITH_TESTS=False \
diff --git a/meta/recipes-devtools/binutils/binutils-2.42.inc b/meta/recipes-devtools/binutils/binutils-2.42.inc
index 3b6f47d4ce..b4d273c9c3 100644
--- a/meta/recipes-devtools/binutils/binutils-2.42.inc
+++ b/meta/recipes-devtools/binutils/binutils-2.42.inc
@@ -20,7 +20,7 @@ UPSTREAM_CHECK_GITTAGREGEX = "binutils-(?P<pver>\d+_(\d_?)*)"
CVE_STATUS[CVE-2023-25584] = "cpe-incorrect: Applies only for version 2.40 and earlier"
-SRCREV ?= "553c7f61b74badf91df484450944675efd9cd485"
+SRCREV ?= "73b22b4481e85635eb978585f405c4433bcc0174"
BINUTILS_GIT_URI ?= "git://sourceware.org/git/binutils-gdb.git;branch=${SRCBRANCH};protocol=https"
SRC_URI = "\
${BINUTILS_GIT_URI} \
diff --git a/meta/recipes-devtools/bootchart2/bootchart2_0.14.9.bb b/meta/recipes-devtools/bootchart2/bootchart2_0.14.9.bb
index 4d8ce4c741..8a211366bf 100644
--- a/meta/recipes-devtools/bootchart2/bootchart2_0.14.9.bb
+++ b/meta/recipes-devtools/bootchart2/bootchart2_0.14.9.bb
@@ -132,7 +132,7 @@ do_install () {
oe_runmake install NO_PYTHON_COMPILE=1
install -d ${D}${sysconfdir}/init.d
- install -m 0755 ${WORKDIR}/bootchartd_stop.sh ${D}${sysconfdir}/init.d
+ install -m 0755 ${UNPACKDIR}/bootchartd_stop.sh ${D}${sysconfdir}/init.d
echo 'EXIT_PROC="$EXIT_PROC matchbox-window-manager"' >> ${D}${sysconfdir}/bootchartd.conf
diff --git a/meta/recipes-devtools/btrfs-tools/btrfs-tools_6.8.bb b/meta/recipes-devtools/btrfs-tools/btrfs-tools_6.8.1.bb
index 15cc7ac244..fac9f8f7ef 100644
--- a/meta/recipes-devtools/btrfs-tools/btrfs-tools_6.8.bb
+++ b/meta/recipes-devtools/btrfs-tools/btrfs-tools_6.8.1.bb
@@ -18,7 +18,7 @@ DEPENDS = "util-linux zlib"
SRC_URI = "git://git.kernel.org/pub/scm/linux/kernel/git/kdave/btrfs-progs.git;branch=master;protocol=https \
file://0001-Add-a-possibility-to-specify-where-python-modules-ar.patch \
"
-SRCREV = "3793e987d2b4e878410da16f33d963043d137d48"
+SRCREV = "5d97c32d6f94cf6f473a5f82964e3edaeb1b146e"
S = "${WORKDIR}/git"
PACKAGECONFIG ??= " \
diff --git a/meta/recipes-devtools/cdrtools/cdrtools-native_3.01.bb b/meta/recipes-devtools/cdrtools/cdrtools-native_3.01.bb
index bf8be1ad0c..9dc5caf87c 100644
--- a/meta/recipes-devtools/cdrtools/cdrtools-native_3.01.bb
+++ b/meta/recipes-devtools/cdrtools/cdrtools-native_3.01.bb
@@ -13,23 +13,31 @@ DEPENDS += "gnu-config-native"
SRC_URI = " \
${SOURCEFORGE_MIRROR}/project/cdrtools/cdrtools-${PV}.tar.bz2 \
file://0001-Don-t-set-uid-gid-during-install.patch \
- file://riscv64-linux-gcc.rul \
+ file://riscv64-linux-gcc.rul \
+ file://gcc14-fix.patch \
"
SRC_URI[md5sum] = "7d45c5b7e1f78d85d1583b361aee6e8b"
SRC_URI[sha256sum] = "ed282eb6276c4154ce6a0b5dee0bdb81940d0cbbfc7d03f769c4735ef5f5860f"
-EXTRA_OEMAKE = "-e MAKEFLAGS="
+EXTRA_OEMAKE = "-e MAKEFLAGS= CPPOPTX='${CPPFLAGS}' COPTX='${CFLAGS}' C++OPTX='${CXXFLAGS}' LDOPTX='${LDFLAGS}' GMAKE_NOWARN='true'"
# Stop failures when 'cc' can't be found
export ac_cv_prog_CC = "${CC}"
inherit native
+# Use -std=gnu89 to build with gcc-14 (https://bugs.gentoo.org/903876)
+# this needs to be after native inherit (which sets CFLAGS to BUILD_CFLAGS)
+CFLAGS += "-std=gnu89"
+
do_configure() {
+ # cdda2wav does not build with GCC 14
+ rm -f ${S}/TARGETS/55cdda2wav
+
install -m 0755 ${STAGING_DATADIR_NATIVE}/gnu-config/config.sub ${S}/autoconf
install -m 0755 ${STAGING_DATADIR_NATIVE}/gnu-config/config.guess ${S}/autoconf
- install -m 0644 ${WORKDIR}/riscv64-linux-gcc.rul ${S}/RULES/
+ install -m 0644 ${UNPACKDIR}/riscv64-linux-gcc.rul ${S}/RULES/
}
do_install() {
diff --git a/meta/recipes-devtools/cdrtools/cdrtools/gcc14-fix.patch b/meta/recipes-devtools/cdrtools/cdrtools/gcc14-fix.patch
new file mode 100644
index 0000000000..ce02bb8bcf
--- /dev/null
+++ b/meta/recipes-devtools/cdrtools/cdrtools/gcc14-fix.patch
@@ -0,0 +1,13 @@
+Signed-off-by: Zoltán Böszörményi <zboszor@gmail.com>
+Upstream-Status: Inappropriate [native]
+--- cdrtools-3.01/autoconf/configure~ 2015-07-06 23:41:27.000000000 +0200
++++ cdrtools-3.01/autoconf/configure 2024-05-01 09:37:40.897253690 +0200
+@@ -1205,7 +1205,7 @@
+ #line 1206 "configure"
+ #include "confdefs.h"
+
+-main(){return(0);}
++int main(){return(0);}
+ EOF
+ if { (eval echo configure:1211: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+ ac_cv_prog_cc_works=yes
diff --git a/meta/recipes-devtools/cmake/cmake-native_3.28.3.bb b/meta/recipes-devtools/cmake/cmake-native_3.28.3.bb
index 546d117156..7f89441fb4 100644
--- a/meta/recipes-devtools/cmake/cmake-native_3.28.3.bb
+++ b/meta/recipes-devtools/cmake/cmake-native_3.28.3.bb
@@ -54,9 +54,9 @@ do_install() {
# The following codes are here because eSDK needs to provide compatibilty
# for SDK. That is, eSDK could also be used like traditional SDK.
mkdir -p ${D}${datadir}/cmake
- install -m 644 ${WORKDIR}/OEToolchainConfig.cmake ${D}${datadir}/cmake/
+ install -m 644 ${UNPACKDIR}/OEToolchainConfig.cmake ${D}${datadir}/cmake/
mkdir -p ${D}${base_prefix}/environment-setup.d
- install -m 644 ${WORKDIR}/environment.d-cmake.sh ${D}${base_prefix}/environment-setup.d/cmake.sh
+ install -m 644 ${UNPACKDIR}/environment.d-cmake.sh ${D}${base_prefix}/environment-setup.d/cmake.sh
# Help docs create tons of files in the native sysroot and aren't needed there
rm -rf ${D}${datadir}/cmake-*/Help
diff --git a/meta/recipes-devtools/cmake/cmake_3.28.3.bb b/meta/recipes-devtools/cmake/cmake_3.28.3.bb
index 6a9a3266df..9146fa8c0f 100644
--- a/meta/recipes-devtools/cmake/cmake_3.28.3.bb
+++ b/meta/recipes-devtools/cmake/cmake_3.28.3.bb
@@ -48,15 +48,15 @@ EXTRA_OECMAKE=" \
do_install:append:class-nativesdk() {
mkdir -p ${D}${datadir}/cmake
- install -m 644 ${WORKDIR}/OEToolchainConfig.cmake ${D}${datadir}/cmake/
+ install -m 644 ${UNPACKDIR}/OEToolchainConfig.cmake ${D}${datadir}/cmake/
mkdir -p ${D}${SDKPATHNATIVE}/environment-setup.d
- install -m 644 ${WORKDIR}/environment.d-cmake.sh ${D}${SDKPATHNATIVE}/environment-setup.d/cmake.sh
+ install -m 644 ${UNPACKDIR}/environment.d-cmake.sh ${D}${SDKPATHNATIVE}/environment-setup.d/cmake.sh
# install cmake-setup.py to create arch-specific toolchain cmake file from template
- install -m 0644 ${WORKDIR}/SDKToolchainConfig.cmake.template ${D}${datadir}/cmake/
+ install -m 0644 ${UNPACKDIR}/SDKToolchainConfig.cmake.template ${D}${datadir}/cmake/
install -d ${D}${SDKPATHNATIVE}/post-relocate-setup.d
- install -m 0755 ${WORKDIR}/cmake-setup.py ${D}${SDKPATHNATIVE}/post-relocate-setup.d/
+ install -m 0755 ${UNPACKDIR}/cmake-setup.py ${D}${SDKPATHNATIVE}/post-relocate-setup.d/
}
FILES:${PN}:append:class-nativesdk = " ${SDKPATHNATIVE}"
diff --git a/meta/recipes-devtools/createrepo-c/createrepo-c_1.1.0.bb b/meta/recipes-devtools/createrepo-c/createrepo-c_1.1.1.bb
index 1f97c99bde..e6714629af 100644
--- a/meta/recipes-devtools/createrepo-c/createrepo-c_1.1.0.bb
+++ b/meta/recipes-devtools/createrepo-c/createrepo-c_1.1.1.bb
@@ -9,7 +9,7 @@ SRC_URI = "git://github.com/rpm-software-management/createrepo_c;branch=master;p
file://0001-include-rpm-rpmstring.h.patch \
"
-SRCREV = "10a8a7af4f1de3f98a21a7d08fe3a46ef306d197"
+SRCREV = "78b0c3ff48bd58eb9c0a72879cf1025e9f225684"
S = "${WORKDIR}/git"
diff --git a/meta/recipes-devtools/devel-config/distcc-config.bb b/meta/recipes-devtools/devel-config/distcc-config.bb
index 698fd3585a..2c30488b82 100644
--- a/meta/recipes-devtools/devel-config/distcc-config.bb
+++ b/meta/recipes-devtools/devel-config/distcc-config.bb
@@ -6,7 +6,8 @@ LIC_FILES_CHKSUM = "file://${COREBASE}/meta/COPYING.MIT;md5=3da9cfbcb788c80a0384
SRC_URI = "file://distcc.sh"
-S = "${WORKDIR}"
+S = "${WORKDIR}/sources"
+UNPACKDIR = "${S}"
# Default to the host machine for a running qemu session
DISTCC_HOSTS ?= "192.168.7.1"
diff --git a/meta/recipes-devtools/devel-config/nfs-export-root.bb b/meta/recipes-devtools/devel-config/nfs-export-root.bb
index 5e69962d7c..ad5486aa87 100644
--- a/meta/recipes-devtools/devel-config/nfs-export-root.bb
+++ b/meta/recipes-devtools/devel-config/nfs-export-root.bb
@@ -3,10 +3,10 @@ DESCRIPTION = "Enables NFS access from any host to the entire filesystem (for de
LICENSE = "MIT"
LIC_FILES_CHKSUM = "file://${COREBASE}/meta/COPYING.MIT;md5=3da9cfbcb788c80a0384361b4de20420"
-
SRC_URI = "file://exports"
-S = "${WORKDIR}"
+S = "${WORKDIR}/sources"
+UNPACKDIR = "${S}"
do_install() {
install -d ${D}${sysconfdir}
diff --git a/meta/recipes-devtools/distcc/distcc_3.4.bb b/meta/recipes-devtools/distcc/distcc_3.4.bb
index 45fc7cde53..ab138b3ab6 100644
--- a/meta/recipes-devtools/distcc/distcc_3.4.bb
+++ b/meta/recipes-devtools/distcc/distcc_3.4.bb
@@ -50,10 +50,10 @@ do_install() {
oe_runmake 'DESTDIR=${D}' "GZIP_BIN=gzip -n" install
install -d ${D}${sysconfdir}/init.d/
install -d ${D}${sysconfdir}/default
- install -m 0755 ${WORKDIR}/distcc ${D}${sysconfdir}/init.d/
- install -m 0755 ${WORKDIR}/default ${D}${sysconfdir}/default/distcc
+ install -m 0755 ${UNPACKDIR}/distcc ${D}${sysconfdir}/init.d/
+ install -m 0755 ${UNPACKDIR}/default ${D}${sysconfdir}/default/distcc
install -d ${D}${systemd_system_unitdir}/
- install -m 0644 ${WORKDIR}/distcc.service ${D}${systemd_system_unitdir}
+ install -m 0644 ${UNPACKDIR}/distcc.service ${D}${systemd_system_unitdir}
sed -i -e 's,@BINDIR@,${bindir},g' ${D}${systemd_system_unitdir}/distcc.service
}
diff --git a/meta/recipes-devtools/dmidecode/dmidecode_3.5.bb b/meta/recipes-devtools/dmidecode/dmidecode_3.6.bb
index 3e2bb6e30b..e5b4e27687 100644
--- a/meta/recipes-devtools/dmidecode/dmidecode_3.5.bb
+++ b/meta/recipes-devtools/dmidecode/dmidecode_3.6.bb
@@ -18,4 +18,4 @@ do_install() {
install
}
-SRC_URI[sha256sum] = "79d76735ee8e25196e2a722964cf9683f5a09581503537884b256b01389cc073"
+SRC_URI[sha256sum] = "e40c65f3ec3dafe31ad8349a4ef1a97122d38f65004ed66575e1a8d575dd8bae"
diff --git a/meta/recipes-devtools/dnf/dnf_4.19.2.bb b/meta/recipes-devtools/dnf/dnf_4.20.0.bb
index cc91dbe400..4757346cbf 100644
--- a/meta/recipes-devtools/dnf/dnf_4.19.2.bb
+++ b/meta/recipes-devtools/dnf/dnf_4.20.0.bb
@@ -20,7 +20,7 @@ SRC_URI = "git://github.com/rpm-software-management/dnf.git;branch=master;protoc
SRC_URI:append:class-native = "file://0001-dnf-write-the-log-lock-to-root.patch"
-SRCREV = "9b2b2e8ddab99caba4bc8059cab4263163172e81"
+SRCREV = "e3cb438c0fd08c79676c0f3276aa7d75cd8557c6"
UPSTREAM_CHECK_GITTAGREGEX = "(?P<pver>\d+(\.\d+)+)"
S = "${WORKDIR}/git"
diff --git a/meta/recipes-devtools/docbook-xml/docbook-xml-dtd4_4.5.bb b/meta/recipes-devtools/docbook-xml/docbook-xml-dtd4_4.5.bb
index e4b4201b1f..5229a0366c 100644
--- a/meta/recipes-devtools/docbook-xml/docbook-xml-dtd4_4.5.bb
+++ b/meta/recipes-devtools/docbook-xml/docbook-xml-dtd4_4.5.bb
@@ -8,7 +8,7 @@ HOMEPAGE = "https://docbook.org"
# upgrading this recipe, please verify whether this is still needed.
LICENSE = "OASIS"
-LIC_FILES_CHKSUM = "file://${WORKDIR}/LICENSE-OASIS;md5=c608985dd5f7f215e669e7639a0b1d2e"
+LIC_FILES_CHKSUM = "file://${S}/LICENSE-OASIS;md5=c608985dd5f7f215e669e7639a0b1d2e"
# To support apps with xml schema backward compatibility, we must
# install a set of schemas. Install the latest based on PV and then
@@ -41,7 +41,8 @@ SRC_URI[payloadPV.sha256sum] = "4e4e037a2b83c98c6c94818390d4bdd3f6e10f6ec62dd791
UPSTREAM_CHECK_REGEX = "docbook-xml-(?P<pver>4(\.\d+)).zip"
-S = "${WORKDIR}"
+S = "${WORKDIR}/sources"
+UNPACKDIR = "${S}"
do_configure (){
:
diff --git a/meta/recipes-devtools/dwarfsrcfiles/dwarfsrcfiles.bb b/meta/recipes-devtools/dwarfsrcfiles/dwarfsrcfiles.bb
index c596497b8e..8e42b12b77 100644
--- a/meta/recipes-devtools/dwarfsrcfiles/dwarfsrcfiles.bb
+++ b/meta/recipes-devtools/dwarfsrcfiles/dwarfsrcfiles.bb
@@ -1,19 +1,22 @@
SUMMARY = "A small utility for printing debug source file locations embedded in binaries"
DESCRIPTION = "${SUMMARY}"
LICENSE = "GPL-2.0-or-later"
-LIC_FILES_CHKSUM = "file://../dwarfsrcfiles.c;md5=31483894e453a77acbb67847565f1b5c;beginline=1;endline=8"
+LIC_FILES_CHKSUM = "file://dwarfsrcfiles.c;md5=31483894e453a77acbb67847565f1b5c;beginline=1;endline=8"
SRC_URI = "file://dwarfsrcfiles.c"
BBCLASSEXTEND = "native"
DEPENDS = "elfutils"
DEPENDS:append:libc-musl = " argp-standalone"
+S = "${WORKDIR}/sources"
+UNPACKDIR = "${S}"
+
do_compile () {
- ${CC} ${CFLAGS} ${LDFLAGS} -o dwarfsrcfiles ../dwarfsrcfiles.c -lelf -ldw
+ ${CC} ${CFLAGS} ${LDFLAGS} -o dwarfsrcfiles ${S}/dwarfsrcfiles.c -lelf -ldw
}
do_compile:libc-musl () {
- ${CC} ${CFLAGS} ${LDFLAGS} -o dwarfsrcfiles ../dwarfsrcfiles.c -lelf -ldw -largp
+ ${CC} ${CFLAGS} ${LDFLAGS} -o dwarfsrcfiles ${S}/dwarfsrcfiles.c -lelf -ldw -largp
}
do_install () {
diff --git a/meta/recipes-devtools/elfutils/elfutils_0.191.bb b/meta/recipes-devtools/elfutils/elfutils_0.191.bb
index c4d872430b..76bd2b3a99 100644
--- a/meta/recipes-devtools/elfutils/elfutils_0.191.bb
+++ b/meta/recipes-devtools/elfutils/elfutils_0.191.bb
@@ -15,7 +15,6 @@ SRC_URI = "https://sourceware.org/elfutils/ftp/${PV}/${BP}.tar.bz2 \
file://0001-dso-link-change.patch \
file://0002-Fix-elf_cvt_gunhash-if-dest-and-src-are-same.patch \
file://0003-fixheadercheck.patch \
- file://0006-Fix-build-on-aarch64-musl.patch \
file://0001-libasm-may-link-with-libbz2-if-found.patch \
file://0001-libelf-elf_end.c-check-data_list.data.d.d_buf-before.patch \
file://0001-skip-the-test-when-gcc-not-deployed.patch \
diff --git a/meta/recipes-devtools/elfutils/files/0006-Fix-build-on-aarch64-musl.patch b/meta/recipes-devtools/elfutils/files/0006-Fix-build-on-aarch64-musl.patch
deleted file mode 100644
index 149e0e6a7b..0000000000
--- a/meta/recipes-devtools/elfutils/files/0006-Fix-build-on-aarch64-musl.patch
+++ /dev/null
@@ -1,58 +0,0 @@
-From 4409f128c81a9d76b9360b002a1d76043c77b53e Mon Sep 17 00:00:00 2001
-From: Hongxu Jia <hongxu.jia@windriver.com>
-Date: Tue, 15 Aug 2017 17:27:30 +0800
-Subject: [PATCH] Fix build on aarch64/musl
-
-Errors
-
-invalid operands to binary & (have 'long double' and 'unsigned int')
-
-error: redefinition
- of 'struct iovec'
- struct iovec { void *iov_base; size_t iov_len; };
- ^
-Upstream-Status: Pending
-Signed-off-by: Khem Raj <raj.khem@gmail.com>
-
-Rebase to 0.170
-Signed-off-by: Hongxu Jia <hongxu.jia@windriver.com>
----
- backends/aarch64_initreg.c | 4 ++--
- backends/arm_initreg.c | 2 +-
- 2 files changed, 3 insertions(+), 3 deletions(-)
-
-diff --git a/backends/aarch64_initreg.c b/backends/aarch64_initreg.c
-index daf6f37..6445276 100644
---- a/backends/aarch64_initreg.c
-+++ b/backends/aarch64_initreg.c
-@@ -33,7 +33,7 @@
- #include "system.h"
- #include <assert.h>
- #if defined(__aarch64__) && defined(__linux__)
--# include <linux/uio.h>
-+# include <sys/uio.h>
- # include <sys/user.h>
- # include <sys/ptrace.h>
- /* Deal with old glibc defining user_pt_regs instead of user_regs_struct. */
-@@ -82,7 +82,7 @@ aarch64_set_initial_registers_tid (pid_t tid __attribute__ ((unused)),
-
- Dwarf_Word dwarf_fregs[32];
- for (int r = 0; r < 32; r++)
-- dwarf_fregs[r] = fregs.vregs[r] & 0xFFFFFFFF;
-+ dwarf_fregs[r] = (unsigned int)fregs.vregs[r] & 0xFFFFFFFF;
-
- if (! setfunc (64, 32, dwarf_fregs, arg))
- return false;
-diff --git a/backends/arm_initreg.c b/backends/arm_initreg.c
-index efcabaf..062bb9e 100644
---- a/backends/arm_initreg.c
-+++ b/backends/arm_initreg.c
-@@ -38,7 +38,7 @@
- #endif
-
- #ifdef __aarch64__
--# include <linux/uio.h>
-+# include <sys/uio.h>
- # include <sys/user.h>
- # include <sys/ptrace.h>
- /* Deal with old glibc defining user_pt_regs instead of user_regs_struct. */
diff --git a/meta/recipes-devtools/expect/expect_5.45.4.bb b/meta/recipes-devtools/expect/expect_5.45.4.bb
index 7b610b1ff2..18904ebc10 100644
--- a/meta/recipes-devtools/expect/expect_5.45.4.bb
+++ b/meta/recipes-devtools/expect/expect_5.45.4.bb
@@ -81,3 +81,7 @@ FILES:${PN} += "${libdir}/libexpect${PV}.so \
"
BBCLASSEXTEND = "native nativesdk"
+
+# http://errors.yoctoproject.org/Errors/Details/766950/
+# expect5.45.4/exp_chan.c:62:5: error: initialization of 'struct Tcl_ChannelTypeVersion_ *' from incompatible pointer type 'int (*)(void *, int)' [-Wincompatible-pointer-types]
+CFLAGS += "-Wno-error=incompatible-pointer-types"
diff --git a/meta/recipes-devtools/gcc/gcc-13.2.inc b/meta/recipes-devtools/gcc/gcc-14.1.inc
index 603377a49a..c639cb51f4 100644
--- a/meta/recipes-devtools/gcc/gcc-13.2.inc
+++ b/meta/recipes-devtools/gcc/gcc-14.1.inc
@@ -2,11 +2,11 @@ require gcc-common.inc
# Third digit in PV should be incremented after a minor release
-PV = "13.2.0"
+PV = "14.1.0"
# BINV should be incremented to a revision after a minor gcc release
-BINV = "13.2.0"
+BINV = "14.1.0"
FILESEXTRAPATHS =. "${FILE_DIRNAME}/gcc:${FILE_DIRNAME}/gcc/backport:"
@@ -28,16 +28,19 @@ LIC_FILES_CHKSUM = "\
#SOURCEDIR = "gcc-${RELEASE}"
#BASEURI ?= "https://repo.or.cz/official-gcc.git/snapshot/${RELEASE}.tar.gz;downloadfilename=gcc-${PV}-${RELEASE}.tar.gz"
#SOURCEDIR ?= "official-gcc-${@'${RELEASE}'[0:7]}"
+#SRC_URI[sha256sum] = "41bf7be5dc029112a9df625266e7de030ffc36ff3638f270b180ae8c91fe6449"
# from snapshot
-#RELEASE ?= "13-20230520"
-#SOURCEDIR ?= "gcc-${RELEASE}"
+#RELEASE ?= "14-20240504"
#BASEURI ?= "https://gcc.gnu.org/pub/gcc/snapshots/${RELEASE}/gcc-${RELEASE}.tar.xz"
+#SOURCEDIR ?= "gcc-${RELEASE}"
+#SRC_URI[sha256sum] = "34ac232bbf31e0cd5752fd344c2cf55719aaaad2ca0096593e01c97a3d5e274e"
# official release
RELEASE ?= "${PV}"
BASEURI ?= "${GNU_MIRROR}/gcc/gcc-${PV}/gcc-${PV}.tar.xz"
SOURCEDIR ?= "gcc-${PV}"
+SRC_URI[sha256sum] = "e283c654987afe3de9d8080bc0bd79534b5ca0d681a73a11ff2b5d3767426840"
SRC_URI = "${BASEURI} \
file://0001-gcc-4.3.1-ARCH_FLAGS_FOR_TARGET.patch \
@@ -65,11 +68,7 @@ SRC_URI = "${BASEURI} \
file://0023-Fix-install-path-of-linux64.h.patch \
file://0024-Avoid-hardcoded-build-paths-into-ppc-libgcc.patch \
file://0025-gcc-testsuite-tweaks-for-mips-OE.patch \
- file://CVE-2023-4039.patch \
- file://0026-aarch64-Fix-loose-ldpstp-check-PR111411.patch \
- file://0027-Fix-gcc-vect-module-testcases.patch \
"
-SRC_URI[sha256sum] = "e275e76442a6067341a27f04c5c6b83d8613144004c0413528863dc6b5c743da"
S = "${TMPDIR}/work-shared/gcc-${PV}-${PR}/${SOURCEDIR}"
B = "${WORKDIR}/gcc-${PV}/build.${HOST_SYS}.${TARGET_SYS}"
@@ -116,4 +115,3 @@ 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/meta/recipes-devtools/gcc/gcc-cross-canadian_13.2.bb b/meta/recipes-devtools/gcc/gcc-cross-canadian_14.1.bb
index bf53c5cd78..bf53c5cd78 100644
--- a/meta/recipes-devtools/gcc/gcc-cross-canadian_13.2.bb
+++ b/meta/recipes-devtools/gcc/gcc-cross-canadian_14.1.bb
diff --git a/meta/recipes-devtools/gcc/gcc-cross_13.2.bb b/meta/recipes-devtools/gcc/gcc-cross_14.1.bb
index b43cca0c52..b43cca0c52 100644
--- a/meta/recipes-devtools/gcc/gcc-cross_13.2.bb
+++ b/meta/recipes-devtools/gcc/gcc-cross_14.1.bb
diff --git a/meta/recipes-devtools/gcc/gcc-crosssdk_13.2.bb b/meta/recipes-devtools/gcc/gcc-crosssdk_14.1.bb
index 40a6c4feff..40a6c4feff 100644
--- a/meta/recipes-devtools/gcc/gcc-crosssdk_13.2.bb
+++ b/meta/recipes-devtools/gcc/gcc-crosssdk_14.1.bb
diff --git a/meta/recipes-devtools/gcc/gcc-runtime.inc b/meta/recipes-devtools/gcc/gcc-runtime.inc
index dbc9141000..89b0bebcfb 100644
--- a/meta/recipes-devtools/gcc/gcc-runtime.inc
+++ b/meta/recipes-devtools/gcc/gcc-runtime.inc
@@ -92,7 +92,7 @@ do_install () {
mv ${D}${libdir}/gcc/${TARGET_SYS}/${BINV}/include/* ${D}${libdir}/${TARGET_SYS}/${BINV}/include
rmdir --ignore-fail-on-non-empty -p ${D}${libdir}/gcc/${TARGET_SYS}/${BINV}/include
fi
- rm -rf ${D}${infodir}/libgomp.info ${D}${infodir}/dir
+ rm -rf ${D}${infodir}/libgomp.info* ${D}${infodir}/dir
rm -rf ${D}${infodir}/libitm.info ${D}${infodir}/dir
rm -rf ${D}${infodir}/libquadmath.info ${D}${infodir}/dir
if [ -d ${D}${libdir}/gcc/${TARGET_SYS}/${BINV}/finclude ]; then
diff --git a/meta/recipes-devtools/gcc/gcc-runtime_13.2.bb b/meta/recipes-devtools/gcc/gcc-runtime_14.1.bb
index dd430b57eb..dd430b57eb 100644
--- a/meta/recipes-devtools/gcc/gcc-runtime_13.2.bb
+++ b/meta/recipes-devtools/gcc/gcc-runtime_14.1.bb
diff --git a/meta/recipes-devtools/gcc/gcc-sanitizers_13.2.bb b/meta/recipes-devtools/gcc/gcc-sanitizers_14.1.bb
index 8bda2ccad6..8bda2ccad6 100644
--- a/meta/recipes-devtools/gcc/gcc-sanitizers_13.2.bb
+++ b/meta/recipes-devtools/gcc/gcc-sanitizers_14.1.bb
diff --git a/meta/recipes-devtools/gcc/gcc-source_13.2.bb b/meta/recipes-devtools/gcc/gcc-source_14.1.bb
index b890fa33ea..b890fa33ea 100644
--- a/meta/recipes-devtools/gcc/gcc-source_13.2.bb
+++ b/meta/recipes-devtools/gcc/gcc-source_14.1.bb
diff --git a/meta/recipes-devtools/gcc/gcc/0001-gcc-4.3.1-ARCH_FLAGS_FOR_TARGET.patch b/meta/recipes-devtools/gcc/gcc/0001-gcc-4.3.1-ARCH_FLAGS_FOR_TARGET.patch
index 5c75698eda..0b7c0af86f 100644
--- a/meta/recipes-devtools/gcc/gcc/0001-gcc-4.3.1-ARCH_FLAGS_FOR_TARGET.patch
+++ b/meta/recipes-devtools/gcc/gcc/0001-gcc-4.3.1-ARCH_FLAGS_FOR_TARGET.patch
@@ -1,4 +1,4 @@
-From 553564bdcabdcc5d4cc4de73c7eb94c505ef51f5 Mon Sep 17 00:00:00 2001
+From 76ef337260aadeb475fd380ff9aca31ea1731345 Mon Sep 17 00:00:00 2001
From: Khem Raj <raj.khem@gmail.com>
Date: Fri, 29 Mar 2013 08:37:11 +0400
Subject: [PATCH] gcc-4.3.1: ARCH_FLAGS_FOR_TARGET
@@ -12,10 +12,10 @@ Upstream-Status: Inappropriate [embedded specific]
2 files changed, 2 insertions(+), 2 deletions(-)
diff --git a/configure b/configure
-index 117a7ef23f2..535265253fd 100755
+index 02b435c1163..85a82fad302 100755
--- a/configure
+++ b/configure
-@@ -10195,7 +10195,7 @@ fi
+@@ -10387,7 +10387,7 @@ fi
# for target_alias and gcc doesn't manage it consistently.
target_configargs="--cache-file=./config.cache ${target_configargs}"
@@ -25,10 +25,10 @@ index 117a7ef23f2..535265253fd 100755
*" newlib "*)
case " $target_configargs " in
diff --git a/configure.ac b/configure.ac
-index b3e9bbd2aa5..5ac8d6490f6 100644
+index 1a19c07a27b..bc8e1b8c4ef 100644
--- a/configure.ac
+++ b/configure.ac
-@@ -3351,7 +3351,7 @@ fi
+@@ -3509,7 +3509,7 @@ fi
# for target_alias and gcc doesn't manage it consistently.
target_configargs="--cache-file=./config.cache ${target_configargs}"
diff --git a/meta/recipes-devtools/gcc/gcc/0002-gcc-poison-system-directories.patch b/meta/recipes-devtools/gcc/gcc/0002-gcc-poison-system-directories.patch
index 492300047d..76aa69c26e 100644
--- a/meta/recipes-devtools/gcc/gcc/0002-gcc-poison-system-directories.patch
+++ b/meta/recipes-devtools/gcc/gcc/0002-gcc-poison-system-directories.patch
@@ -1,4 +1,4 @@
-From 52676b5934ba127c3af39fc484c8236c8fa60b96 Mon Sep 17 00:00:00 2001
+From 05be69910c99d739ce9246a3bb9426fa6d9f19d4 Mon Sep 17 00:00:00 2001
From: Khem Raj <raj.khem@gmail.com>
Date: Mon, 8 Mar 2021 16:04:20 -0800
Subject: [PATCH] gcc: poison-system-directories
@@ -25,10 +25,10 @@ Signed-off-by: Khem Raj <raj.khem@gmail.com>
7 files changed, 86 insertions(+), 2 deletions(-)
diff --git a/gcc/common.opt b/gcc/common.opt
-index 862c474d3c8..64c4277c991 100644
+index ad348844775..df3992b420d 100644
--- a/gcc/common.opt
+++ b/gcc/common.opt
-@@ -711,6 +711,10 @@ Wreturn-local-addr
+@@ -715,6 +715,10 @@ Wreturn-local-addr
Common Var(warn_return_local_addr) Init(1) Warning
Warn about returning a pointer/reference to a local or temporary variable.
@@ -40,10 +40,10 @@ index 862c474d3c8..64c4277c991 100644
Common Var(warn_shadow) Warning
Warn when one variable shadows another. Same as -Wshadow=global.
diff --git a/gcc/config.in b/gcc/config.in
-index 4cad077bfbe..80e832fdb84 100644
+index f3de4ba6776..3ce3113510b 100644
--- a/gcc/config.in
+++ b/gcc/config.in
-@@ -236,6 +236,16 @@
+@@ -249,6 +249,16 @@
#endif
@@ -61,18 +61,18 @@ index 4cad077bfbe..80e832fdb84 100644
optimizer and back end) to be checked for dynamic type safety at runtime.
This is quite expensive. */
diff --git a/gcc/configure b/gcc/configure
-index c7b26d1927d..3508be7b439 100755
+index 266ab8f84b2..3c346acbce0 100755
--- a/gcc/configure
+++ b/gcc/configure
-@@ -1026,6 +1026,7 @@ enable_maintainer_mode
+@@ -1050,6 +1050,7 @@ enable_maintainer_mode
enable_link_mutex
enable_link_serialization
enable_version_specific_runtime_libs
+enable_poison_system_directories
enable_plugin
enable_host_shared
- enable_libquadmath_support
-@@ -1788,6 +1789,8 @@ Optional Features:
+ enable_host_pie
+@@ -1823,6 +1824,8 @@ Optional Features:
--enable-version-specific-runtime-libs
specify that runtime libraries should be installed
in a compiler-specific directory
@@ -80,8 +80,8 @@ index c7b26d1927d..3508be7b439 100755
+ warn for use of native system header directories
--enable-plugin enable plugin support
--enable-host-shared build host code as shared libraries
- --disable-libquadmath-support
-@@ -31753,6 +31756,22 @@ if test "${enable_version_specific_runtime_libs+set}" = set; then :
+ --enable-host-pie build host code as PIE
+@@ -34020,6 +34023,22 @@ if test "${enable_version_specific_runtime_libs+set}" = set; then :
fi
@@ -105,10 +105,10 @@ index c7b26d1927d..3508be7b439 100755
diff --git a/gcc/configure.ac b/gcc/configure.ac
-index 09082e8ccae..6cd01a8966b 100644
+index a5aec1bc967..4d8123085b8 100644
--- a/gcc/configure.ac
+++ b/gcc/configure.ac
-@@ -7292,6 +7292,22 @@ AC_ARG_ENABLE(version-specific-runtime-libs,
+@@ -7518,6 +7518,22 @@ AC_ARG_ENABLE(version-specific-runtime-libs,
[specify that runtime libraries should be
installed in a compiler-specific directory])])
@@ -132,10 +132,10 @@ index 09082e8ccae..6cd01a8966b 100644
AC_SUBST(subdirs)
AC_SUBST(srcdir)
diff --git a/gcc/doc/invoke.texi b/gcc/doc/invoke.texi
-index de40f62e219..d6f203c8b71 100644
+index 1006510fc6a..389155f8ed5 100644
--- a/gcc/doc/invoke.texi
+++ b/gcc/doc/invoke.texi
-@@ -384,6 +384,7 @@ Objective-C and Objective-C++ Dialects}.
+@@ -391,6 +391,7 @@ Objective-C and Objective-C++ Dialects}.
-Wpacked -Wno-packed-bitfield-compat -Wpacked-not-aligned -Wpadded
-Wparentheses -Wno-pedantic-ms-format
-Wpointer-arith -Wno-pointer-compare -Wno-pointer-to-int-cast
@@ -143,7 +143,7 @@ index de40f62e219..d6f203c8b71 100644
-Wno-pragmas -Wno-prio-ctor-dtor -Wredundant-decls
-Wrestrict -Wno-return-local-addr -Wreturn-type
-Wno-scalar-storage-order -Wsequence-point
-@@ -8426,6 +8427,14 @@ made up of data only and thus requires no special treatment. But, for
+@@ -8860,6 +8861,14 @@ made up of data only and thus requires no special treatment. But, for
most targets, it is made up of code and thus requires the stack to be
made executable in order for the program to work properly.
@@ -159,19 +159,19 @@ index de40f62e219..d6f203c8b71 100644
@opindex Wno-float-equal
@item -Wfloat-equal
diff --git a/gcc/gcc.cc b/gcc/gcc.cc
-index 16bb07f2cdc..5feae021545 100644
+index 728332b8153..343e4915097 100644
--- a/gcc/gcc.cc
+++ b/gcc/gcc.cc
-@@ -1146,6 +1146,8 @@ proper position among the other output files. */
+@@ -1159,6 +1159,8 @@ proper position among the other output files. */
"%{fuse-ld=*:-fuse-ld=%*} " LINK_COMPRESS_DEBUG_SPEC \
"%X %{o*} %{e*} %{N} %{n} %{r}\
%{s} %{t} %{u*} %{z} %{Z} %{!nostdlib:%{!r:%{!nostartfiles:%S}}} \
+ %{Wno-poison-system-directories:--no-poison-system-directories} \
+ %{Werror=poison-system-directories:--error-poison-system-directories} \
- %{static|no-pie|static-pie:} %@{L*} %(mfwrap) %(link_libgcc) " \
+ %{static|no-pie|static-pie:} %@{L*} %(link_libgcc) " \
VTABLE_VERIFICATION_SPEC " " SANITIZER_EARLY_SPEC " %o "" \
%{fopenacc|fopenmp|%:gt(%{ftree-parallelize-loops=*:%*} 1):\
-@@ -1241,8 +1243,11 @@ static const char *cpp_unique_options =
+@@ -1260,8 +1262,11 @@ static const char *cpp_unique_options =
static const char *cpp_options =
"%(cpp_unique_options) %1 %{m*} %{std*&ansi&trigraphs} %{W*&pedantic*} %{w}\
%{f*} %{g*:%{%:debug-level-gt(0):%{g*}\
@@ -186,7 +186,7 @@ index 16bb07f2cdc..5feae021545 100644
/* Pass -d* flags, possibly modifying -dumpdir, -dumpbase et al.
diff --git a/gcc/incpath.cc b/gcc/incpath.cc
-index 4d44321183f..46c0d543205 100644
+index 64cdd2f4a1b..e572d98ab17 100644
--- a/gcc/incpath.cc
+++ b/gcc/incpath.cc
@@ -26,6 +26,7 @@
diff --git a/meta/recipes-devtools/gcc/gcc/0003-64-bit-multilib-hack.patch b/meta/recipes-devtools/gcc/gcc/0003-64-bit-multilib-hack.patch
index 69e7fa0ba9..dfd370aba9 100644
--- a/meta/recipes-devtools/gcc/gcc/0003-64-bit-multilib-hack.patch
+++ b/meta/recipes-devtools/gcc/gcc/0003-64-bit-multilib-hack.patch
@@ -1,4 +1,4 @@
-From febfac59d0e8a864370d0b4018b4e497ceec156d Mon Sep 17 00:00:00 2001
+From 25bc008191c9b518f30e3ed87e204e25bdafb854 Mon Sep 17 00:00:00 2001
From: Khem Raj <raj.khem@gmail.com>
Date: Fri, 29 Mar 2013 09:10:06 +0400
Subject: [PATCH] 64-bit multilib hack
@@ -28,19 +28,17 @@ Upstream-Status: Inappropriate [OE-Specific]
Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Elvis Dowson <elvis.dowson@gmail.com>
Signed-off-by: Mark Hatle <mark.hatle@windriver.com>
-Signed-off-by: Zang Ruochen <zangruochen@loongson.cn>
---
gcc/config/aarch64/t-aarch64-linux | 8 ++++----
gcc/config/arc/t-multilib-linux | 4 ++--
gcc/config/i386/t-linux64 | 6 ++----
gcc/config/mips/t-linux64 | 28 ++--------------------------
- gcc/config/riscv/t-linux | 4 ++--
+ gcc/config/riscv/t-linux | 6 +++---
gcc/config/rs6000/t-linux64 | 5 ++---
- gcc/config/loongarch/t-linux | 34 ++++++++++++++++++----------------
- 7 files changed, 32 insertions(+), 57 deletions(-)
+ 6 files changed, 15 insertions(+), 42 deletions(-)
diff --git a/gcc/config/aarch64/t-aarch64-linux b/gcc/config/aarch64/t-aarch64-linux
-index 57bf4100fcd..aaef5da8059 100644
+index 3f7b786ecbb..a6c1c92fc7f 100644
--- a/gcc/config/aarch64/t-aarch64-linux
+++ b/gcc/config/aarch64/t-aarch64-linux
@@ -21,8 +21,8 @@
@@ -57,7 +55,7 @@ index 57bf4100fcd..aaef5da8059 100644
-MULTILIB_OSDIRNAMES += mabi.ilp32=../libilp32$(call if_multiarch,:aarch64$(AARCH_BE)-linux-gnu_ilp32)
+#MULTILIB_OSDIRNAMES += mabi.ilp32=../libilp32$(call if_multiarch,:aarch64$(AARCH_BE)-linux-gnu_ilp32)
diff --git a/gcc/config/arc/t-multilib-linux b/gcc/config/arc/t-multilib-linux
-index a839e4ea67c..f92664573a9 100644
+index 07bc77ba34a..f7e2e3919cf 100644
--- a/gcc/config/arc/t-multilib-linux
+++ b/gcc/config/arc/t-multilib-linux
@@ -16,9 +16,9 @@
@@ -73,7 +71,7 @@ index a839e4ea67c..f92664573a9 100644
# Aliases:
MULTILIB_MATCHES += mcpu?arc700=mA7
diff --git a/gcc/config/i386/t-linux64 b/gcc/config/i386/t-linux64
-index 138956b0962..d6e0cdc4342 100644
+index f9edc289e57..047d8e4aff9 100644
--- a/gcc/config/i386/t-linux64
+++ b/gcc/config/i386/t-linux64
@@ -32,7 +32,5 @@
@@ -87,7 +85,7 @@ index 138956b0962..d6e0cdc4342 100644
+MULTILIB_DIRNAMES = . .
+MULTILIB_OSDIRNAMES = ../$(shell basename $(base_libdir)) ../$(shell basename $(base_libdir))
diff --git a/gcc/config/mips/t-linux64 b/gcc/config/mips/t-linux64
-index 176091cabb6..8258ef40559 100644
+index e4e2f5eaedb..c503974de37 100644
--- a/gcc/config/mips/t-linux64
+++ b/gcc/config/mips/t-linux64
@@ -17,29 +17,5 @@
@@ -123,17 +121,20 @@ index 176091cabb6..8258ef40559 100644
+MULTILIB_DIRNAMES = . . .
+MULTILIB_OSDIRNAMES = ../$(shell basename $(base_libdir)) ../$(shell basename $(base_libdir)) ../$(shell basename $(base_libdir))
diff --git a/gcc/config/riscv/t-linux b/gcc/config/riscv/t-linux
-index 216d2776a18..e3c520f4bf6 100644
+index a6f64f88d25..0e21db58f7d 100644
--- a/gcc/config/riscv/t-linux
+++ b/gcc/config/riscv/t-linux
-@@ -1,3 +1,3 @@
+@@ -1,5 +1,5 @@
# Only XLEN and ABI affect Linux multilib dir names, e.g. /lib32/ilp32d/
-MULTILIB_DIRNAMES := $(patsubst rv32%,lib32,$(patsubst rv64%,lib64,$(MULTILIB_DIRNAMES)))
-MULTILIB_OSDIRNAMES := $(patsubst lib%,../lib%,$(MULTILIB_DIRNAMES))
+#MULTILIB_DIRNAMES := $(patsubst rv32%,lib32,$(patsubst rv64%,lib64,$(MULTILIB_DIRNAMES)))
+#MULTILIB_OSDIRNAMES := $(patsubst lib%,../lib%,$(MULTILIB_DIRNAMES))
+
+-MULTIARCH_DIRNAME := $(call if_multiarch,$(firstword $(subst -, ,$(target)))-linux-gnu)
++#MULTIARCH_DIRNAME := $(call if_multiarch,$(firstword $(subst -, ,$(target)))-linux-gnu)
diff --git a/gcc/config/rs6000/t-linux64 b/gcc/config/rs6000/t-linux64
-index 01a94242308..1429eceaebf 100644
+index 248b5891e36..379689561a7 100644
--- a/gcc/config/rs6000/t-linux64
+++ b/gcc/config/rs6000/t-linux64
@@ -26,10 +26,9 @@
@@ -149,53 +150,3 @@ index 01a94242308..1429eceaebf 100644
rs6000-linux.o: $(srcdir)/config/rs6000/rs6000-linux.cc
$(COMPILE) $<
-diff --git a/gcc/config/loongarch/t-linux b/gcc/config/loongarch/t-linux
-index e40da1792..0c7ec9f8a 100644
---- a/gcc/config/loongarch/t-linux
-+++ b/gcc/config/loongarch/t-linux
-@@ -18,7 +18,9 @@
-
- # Multilib
- MULTILIB_OPTIONS = mabi=lp64d/mabi=lp64f/mabi=lp64s
--MULTILIB_DIRNAMES = base/lp64d base/lp64f base/lp64s
-+#MULTILIB_DIRNAMES = base/lp64d base/lp64f base/lp64s
-+MULTILIB_DIRNAMES = . . .
-+MULTILIB_OSDIRNAMES = ../$(shell basename $(base_libdir)) ../$(shell basename $(base_libdir)) ../$(shell basename $(base_libdir))
-
- # The GCC driver always gets all abi-related options on the command line.
- # (see loongarch-driver.c:driver_get_normalized_m_opts)
-@@ -36,18 +38,18 @@ else
- endif
-
- # Don't define MULTILIB_OSDIRNAMES if multilib is disabled.
--ifeq ($(filter LA_DISABLE_MULTILIB,$(tm_defines)),)
--
-- MULTILIB_OSDIRNAMES = \
-- mabi.lp64d=../lib64$\
-- $(call if_multiarch,:loongarch64-linux-gnu)
--
-- MULTILIB_OSDIRNAMES += \
-- mabi.lp64f=../lib64/f32$\
-- $(call if_multiarch,:loongarch64-linux-gnuf32)
--
-- MULTILIB_OSDIRNAMES += \
-- mabi.lp64s=../lib64/sf$\
-- $(call if_multiarch,:loongarch64-linux-gnusf)
--
--endif
-+#ifeq ($(filter LA_DISABLE_MULTILIB,$(tm_defines)),)
-+#
-+# MULTILIB_OSDIRNAMES = \
-+# mabi.lp64d=../lib64$\
-+# $(call if_multiarch,:loongarch64-linux-gnu)
-+#
-+# MULTILIB_OSDIRNAMES += \
-+# mabi.lp64f=../lib64/f32$\
-+# $(call if_multiarch,:loongarch64-linux-gnuf32)
-+#
-+# MULTILIB_OSDIRNAMES += \
-+# mabi.lp64s=../lib64/sf$\
-+# $(call if_multiarch,:loongarch64-linux-gnusf)
-+#
-+#endif
-
diff --git a/meta/recipes-devtools/gcc/gcc/0004-Pass-CXXFLAGS_FOR_BUILD-in-a-couple-of-places-to-avo.patch b/meta/recipes-devtools/gcc/gcc/0004-Pass-CXXFLAGS_FOR_BUILD-in-a-couple-of-places-to-avo.patch
index 7e33bf17b0..35e92a6a9e 100644
--- a/meta/recipes-devtools/gcc/gcc/0004-Pass-CXXFLAGS_FOR_BUILD-in-a-couple-of-places-to-avo.patch
+++ b/meta/recipes-devtools/gcc/gcc/0004-Pass-CXXFLAGS_FOR_BUILD-in-a-couple-of-places-to-avo.patch
@@ -1,4 +1,4 @@
-From 6fbf920ccde6efc2d0caafde996d9e5738a1ba37 Mon Sep 17 00:00:00 2001
+From 5bef09b829ab8042acc045474cf10f4c4fb15dd5 Mon Sep 17 00:00:00 2001
From: Richard Purdie <richard.purdie@linuxfoundation.org>
Date: Thu, 28 Oct 2021 11:33:40 +0100
Subject: [PATCH] Pass CXXFLAGS_FOR_BUILD in a couple of places to avoid these
@@ -23,10 +23,10 @@ Signed-off-by: Khem Raj <raj.khem@gmail.com>
2 files changed, 4 insertions(+)
diff --git a/Makefile.in b/Makefile.in
-index 06a9398e172..4b0069b257c 100644
+index db4fa6c6260..dee862be8a5 100644
--- a/Makefile.in
+++ b/Makefile.in
-@@ -178,6 +178,7 @@ BUILD_EXPORTS = \
+@@ -179,6 +179,7 @@ BUILD_EXPORTS = \
# built for the build system to override those in BASE_FLAGS_TO_PASS.
EXTRA_BUILD_FLAGS = \
CFLAGS="$(CFLAGS_FOR_BUILD)" \
@@ -34,7 +34,7 @@ index 06a9398e172..4b0069b257c 100644
LDFLAGS="$(LDFLAGS_FOR_BUILD)"
# This is the list of directories to built for the host system.
-@@ -210,6 +211,7 @@ HOST_EXPORTS = \
+@@ -211,6 +212,7 @@ HOST_EXPORTS = \
CPP_FOR_BUILD="$(CPP_FOR_BUILD)"; export CPP_FOR_BUILD; \
CPPFLAGS_FOR_BUILD="$(CPPFLAGS_FOR_BUILD)"; export CPPFLAGS_FOR_BUILD; \
CXX_FOR_BUILD="$(CXX_FOR_BUILD)"; export CXX_FOR_BUILD; \
@@ -43,10 +43,10 @@ index 06a9398e172..4b0069b257c 100644
DSYMUTIL="$(DSYMUTIL)"; export DSYMUTIL; \
LD="$(LD)"; export LD; \
diff --git a/Makefile.tpl b/Makefile.tpl
-index dfbd74b68f8..419b332953b 100644
+index 1d5813cd569..ff0fae53b0c 100644
--- a/Makefile.tpl
+++ b/Makefile.tpl
-@@ -181,6 +181,7 @@ BUILD_EXPORTS = \
+@@ -182,6 +182,7 @@ BUILD_EXPORTS = \
# built for the build system to override those in BASE_FLAGS_TO_PASS.
EXTRA_BUILD_FLAGS = \
CFLAGS="$(CFLAGS_FOR_BUILD)" \
@@ -54,7 +54,7 @@ index dfbd74b68f8..419b332953b 100644
LDFLAGS="$(LDFLAGS_FOR_BUILD)"
# This is the list of directories to built for the host system.
-@@ -213,6 +214,7 @@ HOST_EXPORTS = \
+@@ -214,6 +215,7 @@ HOST_EXPORTS = \
CPP_FOR_BUILD="$(CPP_FOR_BUILD)"; export CPP_FOR_BUILD; \
CPPFLAGS_FOR_BUILD="$(CPPFLAGS_FOR_BUILD)"; export CPPFLAGS_FOR_BUILD; \
CXX_FOR_BUILD="$(CXX_FOR_BUILD)"; export CXX_FOR_BUILD; \
diff --git a/meta/recipes-devtools/gcc/gcc/0005-Use-the-defaults.h-in-B-instead-of-S-and-t-oe-in-B.patch b/meta/recipes-devtools/gcc/gcc/0005-Use-the-defaults.h-in-B-instead-of-S-and-t-oe-in-B.patch
index db2fea3d16..8c6ae38e95 100644
--- a/meta/recipes-devtools/gcc/gcc/0005-Use-the-defaults.h-in-B-instead-of-S-and-t-oe-in-B.patch
+++ b/meta/recipes-devtools/gcc/gcc/0005-Use-the-defaults.h-in-B-instead-of-S-and-t-oe-in-B.patch
@@ -1,4 +1,4 @@
-From 2cedf13819c0cc929660072d8a972f5e422f9701 Mon Sep 17 00:00:00 2001
+From fd3f513fa7e4f63a2b28b31ed5a4ddf8f5c543c0 Mon Sep 17 00:00:00 2001
From: Khem Raj <raj.khem@gmail.com>
Date: Fri, 29 Mar 2013 09:17:25 +0400
Subject: [PATCH] Use the defaults.h in ${B} instead of ${S}, and t-oe in ${B}
@@ -26,10 +26,10 @@ Signed-off-by: Hongxu Jia <hongxu.jia@windriver.com>
4 files changed, 7 insertions(+), 7 deletions(-)
diff --git a/gcc/Makefile.in b/gcc/Makefile.in
-index 775aaa1b3c4..04f28984b34 100644
+index a74761b7ab3..956437df95b 100644
--- a/gcc/Makefile.in
+++ b/gcc/Makefile.in
-@@ -561,7 +561,7 @@ TARGET_SYSTEM_ROOT = @TARGET_SYSTEM_ROOT@
+@@ -590,7 +590,7 @@ TARGET_SYSTEM_ROOT = @TARGET_SYSTEM_ROOT@
TARGET_SYSTEM_ROOT_DEFINE = @TARGET_SYSTEM_ROOT_DEFINE@
xmake_file=@xmake_file@
@@ -39,10 +39,10 @@ index 775aaa1b3c4..04f28984b34 100644
TM_MULTILIB_CONFIG=@TM_MULTILIB_CONFIG@
TM_MULTILIB_EXCEPTIONS_CONFIG=@TM_MULTILIB_EXCEPTIONS_CONFIG@
diff --git a/gcc/configure b/gcc/configure
-index 3508be7b439..cf773a8b854 100755
+index 3c346acbce0..3870d6e9b6d 100755
--- a/gcc/configure
+++ b/gcc/configure
-@@ -13507,8 +13507,8 @@ for f in $tm_file; do
+@@ -15155,8 +15155,8 @@ for f in $tm_file; do
tm_include_list="${tm_include_list} $f"
;;
defaults.h )
@@ -54,10 +54,10 @@ index 3508be7b439..cf773a8b854 100755
* )
tm_file_list="${tm_file_list} \$(srcdir)/config/$f"
diff --git a/gcc/configure.ac b/gcc/configure.ac
-index 6cd01a8966b..22591478b72 100644
+index 4d8123085b8..15670de1706 100644
--- a/gcc/configure.ac
+++ b/gcc/configure.ac
-@@ -2357,8 +2357,8 @@ for f in $tm_file; do
+@@ -2383,8 +2383,8 @@ for f in $tm_file; do
tm_include_list="${tm_include_list} $f"
;;
defaults.h )
@@ -69,7 +69,7 @@ index 6cd01a8966b..22591478b72 100644
* )
tm_file_list="${tm_file_list} \$(srcdir)/config/$f"
diff --git a/gcc/mkconfig.sh b/gcc/mkconfig.sh
-index 054ede89647..3b2c2b9df37 100644
+index 1b015b70b38..145af56745e 100644
--- a/gcc/mkconfig.sh
+++ b/gcc/mkconfig.sh
@@ -77,7 +77,7 @@ if [ -n "$HEADERS" ]; then
diff --git a/meta/recipes-devtools/gcc/gcc/0006-cpp-honor-sysroot.patch b/meta/recipes-devtools/gcc/gcc/0006-cpp-honor-sysroot.patch
index 704c44cb72..e0d6aea46b 100644
--- a/meta/recipes-devtools/gcc/gcc/0006-cpp-honor-sysroot.patch
+++ b/meta/recipes-devtools/gcc/gcc/0006-cpp-honor-sysroot.patch
@@ -1,4 +1,4 @@
-From f0b4d02a3a3dca1d67fd7add15ed63c2cd572bb9 Mon Sep 17 00:00:00 2001
+From 970960876045c99011658836f385c6f4d6d78fa6 Mon Sep 17 00:00:00 2001
From: Khem Raj <raj.khem@gmail.com>
Date: Fri, 29 Mar 2013 09:22:00 +0400
Subject: [PATCH] cpp: honor sysroot.
@@ -26,7 +26,7 @@ Signed-off-by: Khem Raj <raj.khem@gmail.com>
2 files changed, 2 insertions(+), 2 deletions(-)
diff --git a/gcc/cp/lang-specs.h b/gcc/cp/lang-specs.h
-index c591d155cc1..61927869fe1 100644
+index 7a7f5ff0ab5..fb3d88cdb11 100644
--- a/gcc/cp/lang-specs.h
+++ b/gcc/cp/lang-specs.h
@@ -116,7 +116,7 @@ along with GCC; see the file COPYING3. If not see
@@ -39,11 +39,11 @@ index c591d155cc1..61927869fe1 100644
" %{fmodule-only:%{!S:-o %g.s%V}}"
" %{!fmodule-only:%{!fmodule-header*:%(invoke_as)}}}"
diff --git a/gcc/gcc.cc b/gcc/gcc.cc
-index 5feae021545..8af0c814c33 100644
+index 343e4915097..e3e9374d1cc 100644
--- a/gcc/gcc.cc
+++ b/gcc/gcc.cc
-@@ -1468,7 +1468,7 @@ static const struct compiler default_compilers[] =
- %W{o*:--output-pch %*}}%V}}}}}}}", 0, 0, 0},
+@@ -1487,7 +1487,7 @@ static const struct compiler default_compilers[] =
+ %W{o*:--output-pch %w%*}}%{!S:%V}}}}}}}}", 0, 0, 0},
{".i", "@cpp-output", 0, 0, 0},
{"@cpp-output",
- "%{!M:%{!MM:%{!E:cc1 -fpreprocessed %i %(cc1_options) %{!fsyntax-only:%(invoke_as)}}}}", 0, 0, 0},
diff --git a/meta/recipes-devtools/gcc/gcc/0007-Define-GLIBC_DYNAMIC_LINKER-and-UCLIBC_DYNAMIC_LINKE.patch b/meta/recipes-devtools/gcc/gcc/0007-Define-GLIBC_DYNAMIC_LINKER-and-UCLIBC_DYNAMIC_LINKE.patch
index 079142c540..eacdbd1dbe 100644
--- a/meta/recipes-devtools/gcc/gcc/0007-Define-GLIBC_DYNAMIC_LINKER-and-UCLIBC_DYNAMIC_LINKE.patch
+++ b/meta/recipes-devtools/gcc/gcc/0007-Define-GLIBC_DYNAMIC_LINKER-and-UCLIBC_DYNAMIC_LINKE.patch
@@ -1,4 +1,4 @@
-From aacfd6e14dd583b1fdc65691def61c5e1bc89708 Mon Sep 17 00:00:00 2001
+From bce0b7e2e130a069a93c839b856aa19b64d5ca54 Mon Sep 17 00:00:00 2001
From: Khem Raj <raj.khem@gmail.com>
Date: Fri, 29 Mar 2013 09:24:50 +0400
Subject: [PATCH] Define GLIBC_DYNAMIC_LINKER and UCLIBC_DYNAMIC_LINKER
@@ -36,7 +36,7 @@ Signed-off-by: Khem Raj <raj.khem@gmail.com>
18 files changed, 53 insertions(+), 58 deletions(-)
diff --git a/gcc/config/aarch64/aarch64-linux.h b/gcc/config/aarch64/aarch64-linux.h
-index 4277f03da2a..e4c92c03291 100644
+index 8e51c8202cc..732e4f4a477 100644
--- a/gcc/config/aarch64/aarch64-linux.h
+++ b/gcc/config/aarch64/aarch64-linux.h
@@ -21,10 +21,10 @@
@@ -53,7 +53,7 @@ index 4277f03da2a..e4c92c03291 100644
#undef ASAN_CC1_SPEC
#define ASAN_CC1_SPEC "%{%:sanitize(address):-funwind-tables}"
diff --git a/gcc/config/alpha/linux-elf.h b/gcc/config/alpha/linux-elf.h
-index 03f783f2ad1..4fa02668aa7 100644
+index 40ccf0bd9b4..ab5c59655fc 100644
--- a/gcc/config/alpha/linux-elf.h
+++ b/gcc/config/alpha/linux-elf.h
@@ -23,8 +23,8 @@ along with GCC; see the file COPYING3. If not see
@@ -68,7 +68,7 @@ index 03f783f2ad1..4fa02668aa7 100644
#define CHOOSE_DYNAMIC_LINKER(G, U) "%{mglibc:" G ";:" U "}"
#elif DEFAULT_LIBC == LIBC_GLIBC
diff --git a/gcc/config/arm/linux-eabi.h b/gcc/config/arm/linux-eabi.h
-index a119875599d..dce7f59eeea 100644
+index eef791f6a02..335cb4c3607 100644
--- a/gcc/config/arm/linux-eabi.h
+++ b/gcc/config/arm/linux-eabi.h
@@ -62,8 +62,8 @@
@@ -92,7 +92,7 @@ index a119875599d..dce7f59eeea 100644
/* At this point, bpabi.h will have clobbered LINK_SPEC. We want to
use the GNU/Linux version, not the generic BPABI version. */
diff --git a/gcc/config/arm/linux-elf.h b/gcc/config/arm/linux-elf.h
-index 7b7b7cbbe14..98ef2267117 100644
+index ccae8abf6f6..ea421d03891 100644
--- a/gcc/config/arm/linux-elf.h
+++ b/gcc/config/arm/linux-elf.h
@@ -60,7 +60,7 @@
@@ -105,7 +105,7 @@ index 7b7b7cbbe14..98ef2267117 100644
#define LINUX_TARGET_LINK_SPEC "%{h*} \
%{static:-Bstatic} \
diff --git a/gcc/config/i386/linux.h b/gcc/config/i386/linux.h
-index bbb7cc7115e..7d9272040ee 100644
+index 20a96d56e65..7a7a4f873e4 100644
--- a/gcc/config/i386/linux.h
+++ b/gcc/config/i386/linux.h
@@ -20,7 +20,7 @@ along with GCC; see the file COPYING3. If not see
@@ -119,7 +119,7 @@ index bbb7cc7115e..7d9272040ee 100644
-#define MUSL_DYNAMIC_LINKER "/lib/ld-musl-i386.so.1"
+#define MUSL_DYNAMIC_LINKER SYSTEMLIBS_DIR "ld-musl-i386.so.1"
diff --git a/gcc/config/i386/linux64.h b/gcc/config/i386/linux64.h
-index 2bd9f48e271..dbbe7ca5440 100644
+index 3dd23eef5e5..960cd7c0450 100644
--- a/gcc/config/i386/linux64.h
+++ b/gcc/config/i386/linux64.h
@@ -27,13 +27,13 @@ see the files COPYING3 and COPYING.RUNTIME respectively. If not, see
@@ -143,7 +143,7 @@ index 2bd9f48e271..dbbe7ca5440 100644
-#define MUSL_DYNAMIC_LINKERX32 "/lib/ld-musl-x32.so.1"
+#define MUSL_DYNAMIC_LINKERX32 SYSTEMLIBS_DIR "ld-musl-x32.so.1"
diff --git a/gcc/config/linux.h b/gcc/config/linux.h
-index e3aca79cccc..6491c6b84f5 100644
+index a7248ac90d0..e36f32bf59e 100644
--- a/gcc/config/linux.h
+++ b/gcc/config/linux.h
@@ -86,10 +86,10 @@ see the files COPYING3 and COPYING.RUNTIME respectively. If not, see
@@ -162,25 +162,29 @@ index e3aca79cccc..6491c6b84f5 100644
#define BIONIC_DYNAMIC_LINKER32 "/system/bin/linker"
#define BIONIC_DYNAMIC_LINKER64 "/system/bin/linker64"
diff --git a/gcc/config/loongarch/gnu-user.h b/gcc/config/loongarch/gnu-user.h
-index aecaa02a199..62f88f7f9a2 100644
+index e5d84e180e3..98cb49c189f 100644
--- a/gcc/config/loongarch/gnu-user.h
+++ b/gcc/config/loongarch/gnu-user.h
-@@ -31,11 +31,11 @@ along with GCC; see the file COPYING3. If not see
+@@ -31,7 +31,7 @@ along with GCC; see the file COPYING3. If not see
#undef GLIBC_DYNAMIC_LINKER
#define GLIBC_DYNAMIC_LINKER \
- "/lib" ABI_GRLEN_SPEC "/ld-linux-loongarch-" ABI_SPEC ".so.1"
+ SYSTEMLIBS_DIR "ld-linux-loongarch-" ABI_SPEC ".so.1"
+ #define MUSL_ABI_SPEC \
+ "%{mabi=lp64d:}" \
+@@ -40,7 +40,7 @@ along with GCC; see the file COPYING3. If not see
+
#undef MUSL_DYNAMIC_LINKER
#define MUSL_DYNAMIC_LINKER \
-- "/lib" ABI_GRLEN_SPEC "/ld-musl-loongarch-" ABI_SPEC ".so.1"
-+ SYSTEMLIBS_DIR "ld-musl-loongarch-" ABI_SPEC ".so.1"
+- "/lib/ld-musl-loongarch" ABI_GRLEN_SPEC MUSL_ABI_SPEC ".so.1"
++ SYSTEMLIBS_DIR "ld-musl-loongarch" ABI_GRLEN_SPEC MUSL_ABI_SPEC ".so.1"
#undef GNU_USER_TARGET_LINK_SPEC
#define GNU_USER_TARGET_LINK_SPEC \
diff --git a/gcc/config/microblaze/linux.h b/gcc/config/microblaze/linux.h
-index e2e2c421c52..6f26480e3b5 100644
+index 5ed8ee518be..5553e7cac21 100644
--- a/gcc/config/microblaze/linux.h
+++ b/gcc/config/microblaze/linux.h
@@ -28,7 +28,7 @@
@@ -202,7 +206,7 @@ index e2e2c421c52..6f26480e3b5 100644
#undef SUBTARGET_EXTRA_SPECS
#define SUBTARGET_EXTRA_SPECS \
diff --git a/gcc/config/mips/linux.h b/gcc/config/mips/linux.h
-index 5add34ea134..34692b433b8 100644
+index 8d098dd2f44..1c5ebbd26d5 100644
--- a/gcc/config/mips/linux.h
+++ b/gcc/config/mips/linux.h
@@ -22,29 +22,29 @@ along with GCC; see the file COPYING3. If not see
@@ -245,7 +249,7 @@ index 5add34ea134..34692b433b8 100644
#define BIONIC_DYNAMIC_LINKERN32 "/system/bin/linker32"
#define GNU_USER_DYNAMIC_LINKERN32 \
diff --git a/gcc/config/nios2/linux.h b/gcc/config/nios2/linux.h
-index 2ce097ebbce..1d45d7b4962 100644
+index 06c442e85f4..b21a3c076c9 100644
--- a/gcc/config/nios2/linux.h
+++ b/gcc/config/nios2/linux.h
@@ -29,10 +29,10 @@
@@ -262,7 +266,7 @@ index 2ce097ebbce..1d45d7b4962 100644
#undef LINK_SPEC
#define LINK_SPEC LINK_SPEC_ENDIAN \
diff --git a/gcc/config/riscv/linux.h b/gcc/config/riscv/linux.h
-index 3e625e0f867..dc3afc97e27 100644
+index 15851f653bc..d8aaab9631f 100644
--- a/gcc/config/riscv/linux.h
+++ b/gcc/config/riscv/linux.h
@@ -22,7 +22,7 @@ along with GCC; see the file COPYING3. If not see
@@ -284,10 +288,10 @@ index 3e625e0f867..dc3afc97e27 100644
#define ICACHE_FLUSH_FUNC "__riscv_flush_icache"
diff --git a/gcc/config/rs6000/linux64.h b/gcc/config/rs6000/linux64.h
-index 9e457033d11..2ddab7c99c1 100644
+index 655d1054d76..a11ae7643b7 100644
--- a/gcc/config/rs6000/linux64.h
+++ b/gcc/config/rs6000/linux64.h
-@@ -339,24 +339,19 @@ extern int dot_symbols;
+@@ -340,24 +340,19 @@ extern int dot_symbols;
#undef LINK_OS_DEFAULT_SPEC
#define LINK_OS_DEFAULT_SPEC "%(link_os_linux)"
@@ -318,7 +322,7 @@ index 9e457033d11..2ddab7c99c1 100644
#undef DEFAULT_ASM_ENDIAN
#if (TARGET_DEFAULT & MASK_LITTLE_ENDIAN)
diff --git a/gcc/config/rs6000/sysv4.h b/gcc/config/rs6000/sysv4.h
-index ae932fc22f0..26db003cb3a 100644
+index bcafa9d0cf4..8fda952e69c 100644
--- a/gcc/config/rs6000/sysv4.h
+++ b/gcc/config/rs6000/sysv4.h
@@ -771,10 +771,10 @@ GNU_USER_TARGET_CC1_SPEC
@@ -335,7 +339,7 @@ index ae932fc22f0..26db003cb3a 100644
#ifndef GNU_USER_DYNAMIC_LINKER
#define GNU_USER_DYNAMIC_LINKER GLIBC_DYNAMIC_LINKER
diff --git a/gcc/config/s390/linux.h b/gcc/config/s390/linux.h
-index 02aa1edaff8..fab268d61f4 100644
+index 83ea2f669a0..bc7cffbad3f 100644
--- a/gcc/config/s390/linux.h
+++ b/gcc/config/s390/linux.h
@@ -72,13 +72,13 @@ along with GCC; see the file COPYING3. If not see
@@ -357,7 +361,7 @@ index 02aa1edaff8..fab268d61f4 100644
#undef LINK_SPEC
#define LINK_SPEC \
diff --git a/gcc/config/sh/linux.h b/gcc/config/sh/linux.h
-index 29f5902b98b..83d1e53e6e2 100644
+index 34cbbed633f..14000d3394c 100644
--- a/gcc/config/sh/linux.h
+++ b/gcc/config/sh/linux.h
@@ -61,10 +61,10 @@ along with GCC; see the file COPYING3. If not see
@@ -374,7 +378,7 @@ index 29f5902b98b..83d1e53e6e2 100644
#undef SUBTARGET_LINK_EMUL_SUFFIX
#define SUBTARGET_LINK_EMUL_SUFFIX "%{mfdpic:_fd;:_linux}"
diff --git a/gcc/config/sparc/linux.h b/gcc/config/sparc/linux.h
-index 0e33b3cac2c..84f29adbb35 100644
+index 9646fa9c41e..396fb047fac 100644
--- a/gcc/config/sparc/linux.h
+++ b/gcc/config/sparc/linux.h
@@ -78,7 +78,7 @@ extern const char *host_detect_local_cpu (int argc, const char **argv);
@@ -387,7 +391,7 @@ index 0e33b3cac2c..84f29adbb35 100644
#undef LINK_SPEC
#define LINK_SPEC "-m elf32_sparc %{shared:-shared} \
diff --git a/gcc/config/sparc/linux64.h b/gcc/config/sparc/linux64.h
-index f1cc0a19e49..94bc2032803 100644
+index 1e2e4aef2ad..25fcc37eca2 100644
--- a/gcc/config/sparc/linux64.h
+++ b/gcc/config/sparc/linux64.h
@@ -78,8 +78,8 @@ along with GCC; see the file COPYING3. If not see
diff --git a/meta/recipes-devtools/gcc/gcc/0008-libtool.patch b/meta/recipes-devtools/gcc/gcc/0008-libtool.patch
index 5b44dc809e..9b78377493 100644
--- a/meta/recipes-devtools/gcc/gcc/0008-libtool.patch
+++ b/meta/recipes-devtools/gcc/gcc/0008-libtool.patch
@@ -1,4 +1,4 @@
-From 7608e93ab97e8c33e3b14323d0cabc651926e403 Mon Sep 17 00:00:00 2001
+From 869295f6f1095b6334c1ea34f8d11a676c67e256 Mon Sep 17 00:00:00 2001
From: Khem Raj <raj.khem@gmail.com>
Date: Fri, 29 Mar 2013 09:29:11 +0400
Subject: [PATCH] libtool
diff --git a/meta/recipes-devtools/gcc/gcc/0009-gcc-armv4-pass-fix-v4bx-to-linker-to-support-EABI.patch b/meta/recipes-devtools/gcc/gcc/0009-gcc-armv4-pass-fix-v4bx-to-linker-to-support-EABI.patch
index 86542bd146..3e24e53d7b 100644
--- a/meta/recipes-devtools/gcc/gcc/0009-gcc-armv4-pass-fix-v4bx-to-linker-to-support-EABI.patch
+++ b/meta/recipes-devtools/gcc/gcc/0009-gcc-armv4-pass-fix-v4bx-to-linker-to-support-EABI.patch
@@ -1,4 +1,4 @@
-From 4b0efc18e0d91967a3db11d9ef0595a5a76ad67a Mon Sep 17 00:00:00 2001
+From 19279e08417124b4567fafdf9300b779ce1a1e1c Mon Sep 17 00:00:00 2001
From: Khem Raj <raj.khem@gmail.com>
Date: Fri, 29 Mar 2013 09:30:32 +0400
Subject: [PATCH] gcc: armv4: pass fix-v4bx to linker to support EABI.
@@ -18,7 +18,7 @@ Signed-off-by: Khem Raj <raj.khem@gmail.com>
1 file changed, 5 insertions(+), 1 deletion(-)
diff --git a/gcc/config/arm/linux-eabi.h b/gcc/config/arm/linux-eabi.h
-index dce7f59eeea..27402c629c6 100644
+index 335cb4c3607..1d5235075cb 100644
--- a/gcc/config/arm/linux-eabi.h
+++ b/gcc/config/arm/linux-eabi.h
@@ -88,10 +88,14 @@
diff --git a/meta/recipes-devtools/gcc/gcc/0010-Use-the-multilib-config-files-from-B-instead-of-usin.patch b/meta/recipes-devtools/gcc/gcc/0010-Use-the-multilib-config-files-from-B-instead-of-usin.patch
index bc3943087c..c3484360ee 100644
--- a/meta/recipes-devtools/gcc/gcc/0010-Use-the-multilib-config-files-from-B-instead-of-usin.patch
+++ b/meta/recipes-devtools/gcc/gcc/0010-Use-the-multilib-config-files-from-B-instead-of-usin.patch
@@ -1,4 +1,4 @@
-From b015460586e2ea8a35a11d1a607728707bdf6509 Mon Sep 17 00:00:00 2001
+From 7e5706e74643d8bf78b117620849e546a31295c5 Mon Sep 17 00:00:00 2001
From: Khem Raj <raj.khem@gmail.com>
Date: Fri, 29 Mar 2013 09:33:04 +0400
Subject: [PATCH] Use the multilib config files from ${B} instead of using the
@@ -18,10 +18,10 @@ Upstream-Status: Inappropriate [configuration]
2 files changed, 36 insertions(+), 8 deletions(-)
diff --git a/gcc/configure b/gcc/configure
-index cf773a8b854..448a1ec093e 100755
+index 3870d6e9b6d..07a0b8571d2 100755
--- a/gcc/configure
+++ b/gcc/configure
-@@ -13487,10 +13487,20 @@ done
+@@ -15135,10 +15135,20 @@ done
tmake_file_=
for f in ${tmake_file}
do
@@ -46,7 +46,7 @@ index cf773a8b854..448a1ec093e 100755
done
tmake_file="${tmake_file_}${omp_device_property_tmake_file}"
-@@ -13501,6 +13511,10 @@ tm_file_list="options.h"
+@@ -15149,6 +15159,10 @@ tm_file_list="options.h"
tm_include_list="options.h insn-constants.h"
for f in $tm_file; do
case $f in
@@ -58,10 +58,10 @@ index cf773a8b854..448a1ec093e 100755
f=`echo $f | sed 's/^..//'`
tm_file_list="${tm_file_list} $f"
diff --git a/gcc/configure.ac b/gcc/configure.ac
-index 22591478b72..b6e7f5149a7 100644
+index 15670de1706..fd96dd7ba49 100644
--- a/gcc/configure.ac
+++ b/gcc/configure.ac
-@@ -2337,10 +2337,20 @@ done
+@@ -2363,10 +2363,20 @@ done
tmake_file_=
for f in ${tmake_file}
do
@@ -86,7 +86,7 @@ index 22591478b72..b6e7f5149a7 100644
done
tmake_file="${tmake_file_}${omp_device_property_tmake_file}"
-@@ -2351,6 +2361,10 @@ tm_file_list="options.h"
+@@ -2377,6 +2387,10 @@ tm_file_list="options.h"
tm_include_list="options.h insn-constants.h"
for f in $tm_file; do
case $f in
diff --git a/meta/recipes-devtools/gcc/gcc/0011-aarch64-Fix-include-paths-when-S-B.patch b/meta/recipes-devtools/gcc/gcc/0011-aarch64-Fix-include-paths-when-S-B.patch
index 974aca5ee4..8633f7c436 100644
--- a/meta/recipes-devtools/gcc/gcc/0011-aarch64-Fix-include-paths-when-S-B.patch
+++ b/meta/recipes-devtools/gcc/gcc/0011-aarch64-Fix-include-paths-when-S-B.patch
@@ -1,4 +1,4 @@
-From b7ce05b2d969b311c6061bda32c3117c76bf7e0c Mon Sep 17 00:00:00 2001
+From 0671715ae6d411b5d2d4c53fee42a6e9fe2562c2 Mon Sep 17 00:00:00 2001
From: Khem Raj <raj.khem@gmail.com>
Date: Tue, 31 Jan 2023 22:03:38 -0800
Subject: [PATCH] aarch64: Fix include paths when S != B
@@ -24,32 +24,44 @@ Upstream-Status: Pending
Signed-off-by: Khem Raj <raj.khem@gmail.com>
---
- gcc/config/aarch64/aarch64.h | 8 ++++----
- 1 file changed, 4 insertions(+), 4 deletions(-)
+ gcc/config/aarch64/aarch64.h | 14 +++++++-------
+ 1 file changed, 7 insertions(+), 7 deletions(-)
diff --git a/gcc/config/aarch64/aarch64.h b/gcc/config/aarch64/aarch64.h
-index 73b09e20508..10ea3672f20 100644
+index 45e901cda64..591062d4b39 100644
--- a/gcc/config/aarch64/aarch64.h
+++ b/gcc/config/aarch64/aarch64.h
-@@ -161,8 +161,8 @@
- enum class aarch64_feature : unsigned char {
+@@ -170,9 +170,9 @@ enum class aarch64_feature : unsigned char {
+ #define DEF_AARCH64_ISA_MODE(IDENT) IDENT,
#define AARCH64_OPT_EXTENSION(A, IDENT, C, D, E, F) IDENT,
#define AARCH64_ARCH(A, B, IDENT, D, E) IDENT,
+-#include "aarch64-isa-modes.def"
-#include "aarch64-option-extensions.def"
-#include "aarch64-arches.def"
++#include "config/aarch64/aarch64-isa-modes.def"
+#include "config/aarch64/aarch64-option-extensions.def"
+#include "config/aarch64/aarch64-arches.def"
};
/* Define unique flags for each of the above. */
-@@ -171,8 +171,8 @@ enum class aarch64_feature : unsigned char {
- = aarch64_feature_flags (1) << int (aarch64_feature::IDENT);
+@@ -182,16 +182,16 @@ enum class aarch64_feature : unsigned char {
+ #define DEF_AARCH64_ISA_MODE(IDENT) HANDLE (IDENT)
#define AARCH64_OPT_EXTENSION(A, IDENT, C, D, E, F) HANDLE (IDENT)
#define AARCH64_ARCH(A, B, IDENT, D, E) HANDLE (IDENT)
+-#include "aarch64-isa-modes.def"
-#include "aarch64-option-extensions.def"
-#include "aarch64-arches.def"
++#include "config/aarch64/aarch64-isa-modes.def"
+#include "config/aarch64/aarch64-option-extensions.def"
+#include "config/aarch64/aarch64-arches.def"
#undef HANDLE
- #endif
+ constexpr auto AARCH64_FL_SM_STATE = AARCH64_FL_SM_ON | AARCH64_FL_SM_OFF;
+
+ constexpr unsigned int AARCH64_NUM_ISA_MODES = (0
+ #define DEF_AARCH64_ISA_MODE(IDENT) + 1
+-#include "aarch64-isa-modes.def"
++#include "config/aarch64/aarch64-isa-modes.def"
+ );
+
+ /* The mask of all ISA modes. */
diff --git a/meta/recipes-devtools/gcc/gcc/0012-Avoid-using-libdir-from-.la-which-usually-points-to-.patch b/meta/recipes-devtools/gcc/gcc/0012-Avoid-using-libdir-from-.la-which-usually-points-to-.patch
index cf5efcd32d..2f6ecd53bb 100644
--- a/meta/recipes-devtools/gcc/gcc/0012-Avoid-using-libdir-from-.la-which-usually-points-to-.patch
+++ b/meta/recipes-devtools/gcc/gcc/0012-Avoid-using-libdir-from-.la-which-usually-points-to-.patch
@@ -1,4 +1,4 @@
-From 39ab6fe76f2788b2c989d29c9016f1fe53cb736e Mon Sep 17 00:00:00 2001
+From a40108180f552788bb321a853ed4d5f034866a48 Mon Sep 17 00:00:00 2001
From: Khem Raj <raj.khem@gmail.com>
Date: Fri, 20 Feb 2015 09:39:38 +0000
Subject: [PATCH] Avoid using libdir from .la which usually points to a host
diff --git a/meta/recipes-devtools/gcc/gcc/0013-Ensure-target-gcc-headers-can-be-included.patch b/meta/recipes-devtools/gcc/gcc/0013-Ensure-target-gcc-headers-can-be-included.patch
index e2343a3c17..eb4f0b3045 100644
--- a/meta/recipes-devtools/gcc/gcc/0013-Ensure-target-gcc-headers-can-be-included.patch
+++ b/meta/recipes-devtools/gcc/gcc/0013-Ensure-target-gcc-headers-can-be-included.patch
@@ -1,4 +1,4 @@
-From 531b9df680c4380797e8e7705a8e7f8ed17ebe68 Mon Sep 17 00:00:00 2001
+From 6ad8db533c7d53a85e6280da1ad88ed4077258fb Mon Sep 17 00:00:00 2001
From: Khem Raj <raj.khem@gmail.com>
Date: Fri, 20 Feb 2015 10:25:11 +0000
Subject: [PATCH] Ensure target gcc headers can be included
@@ -25,10 +25,10 @@ Signed-off-by: Khem Raj <raj.khem@gmail.com>
4 files changed, 22 insertions(+)
diff --git a/gcc/Makefile.in b/gcc/Makefile.in
-index 04f28984b34..8ef996c0f4d 100644
+index 956437df95b..6a009c696e9 100644
--- a/gcc/Makefile.in
+++ b/gcc/Makefile.in
-@@ -640,6 +640,7 @@ libexecdir = @libexecdir@
+@@ -671,6 +671,7 @@ libexecdir = @libexecdir@
# Directory in which the compiler finds libraries etc.
libsubdir = $(libdir)/gcc/$(real_target_noncanonical)/$(version)$(accel_dir_suffix)
@@ -36,7 +36,7 @@ index 04f28984b34..8ef996c0f4d 100644
# Directory in which the compiler finds executables
libexecsubdir = $(libexecdir)/gcc/$(real_target_noncanonical)/$(version)$(accel_dir_suffix)
# Directory in which all plugin resources are installed
-@@ -3059,6 +3060,7 @@ CFLAGS-intl.o += -DLOCALEDIR=\"$(localedir)\"
+@@ -3199,6 +3200,7 @@ CFLAGS-intl.o += -DLOCALEDIR=\"$(localedir)\"
PREPROCESSOR_DEFINES = \
-DGCC_INCLUDE_DIR=\"$(libsubdir)/include\" \
@@ -45,7 +45,7 @@ index 04f28984b34..8ef996c0f4d 100644
-DGPLUSPLUS_INCLUDE_DIR=\"$(gcc_gxx_include_dir)\" \
-DGPLUSPLUS_INCLUDE_DIR_ADD_SYSROOT=$(gcc_gxx_include_dir_add_sysroot) \
diff --git a/gcc/config/linux.h b/gcc/config/linux.h
-index 6491c6b84f5..57496ff1f2f 100644
+index e36f32bf59e..c6aada42eb7 100644
--- a/gcc/config/linux.h
+++ b/gcc/config/linux.h
@@ -157,6 +157,13 @@ see the files COPYING3 and COPYING.RUNTIME respectively. If not, see
@@ -71,7 +71,7 @@ index 6491c6b84f5..57496ff1f2f 100644
{ GCC_INCLUDE_DIR, "GCC", 0, 1, 0, 0 }, \
{ 0, 0, 0, 0, 0, 0 } \
diff --git a/gcc/config/rs6000/sysv4.h b/gcc/config/rs6000/sysv4.h
-index 26db003cb3a..3a443abcf6b 100644
+index 8fda952e69c..247acec9d8e 100644
--- a/gcc/config/rs6000/sysv4.h
+++ b/gcc/config/rs6000/sysv4.h
@@ -986,6 +986,13 @@ ncrtn.o%s"
@@ -97,7 +97,7 @@ index 26db003cb3a..3a443abcf6b 100644
{ GCC_INCLUDE_DIR, "GCC", 0, 1, 0, 0 }, \
{ 0, 0, 0, 0, 0, 0 } \
diff --git a/gcc/cppdefault.cc b/gcc/cppdefault.cc
-index 141bb4d25f6..734590a7059 100644
+index f82b4badad7..98bd66f95c6 100644
--- a/gcc/cppdefault.cc
+++ b/gcc/cppdefault.cc
@@ -64,6 +64,10 @@ const struct default_include cpp_include_defaults[]
diff --git a/meta/recipes-devtools/gcc/gcc/0014-Don-t-search-host-directory-during-relink-if-inst_pr.patch b/meta/recipes-devtools/gcc/gcc/0014-Don-t-search-host-directory-during-relink-if-inst_pr.patch
index 30224d7485..a9cbc08f1a 100644
--- a/meta/recipes-devtools/gcc/gcc/0014-Don-t-search-host-directory-during-relink-if-inst_pr.patch
+++ b/meta/recipes-devtools/gcc/gcc/0014-Don-t-search-host-directory-during-relink-if-inst_pr.patch
@@ -1,4 +1,4 @@
-From 793201cebfeb129f6f263e64310b30a0ffa48895 Mon Sep 17 00:00:00 2001
+From e0d53bf9d59438a1dce0774163fa8c41cf32f306 Mon Sep 17 00:00:00 2001
From: Khem Raj <raj.khem@gmail.com>
Date: Tue, 3 Mar 2015 08:21:19 +0000
Subject: [PATCH] Don't search host directory during "relink" if $inst_prefix
diff --git a/meta/recipes-devtools/gcc/gcc/0015-libcc1-fix-libcc1-s-install-path-and-rpath.patch b/meta/recipes-devtools/gcc/gcc/0015-libcc1-fix-libcc1-s-install-path-and-rpath.patch
index 33c601ac97..8eb00287fc 100644
--- a/meta/recipes-devtools/gcc/gcc/0015-libcc1-fix-libcc1-s-install-path-and-rpath.patch
+++ b/meta/recipes-devtools/gcc/gcc/0015-libcc1-fix-libcc1-s-install-path-and-rpath.patch
@@ -1,4 +1,4 @@
-From 5de63874335c1c673dd132f6aca00dc13f1eac51 Mon Sep 17 00:00:00 2001
+From c2ea8aaa7b00c519c9c269c23ff840138ae491ac Mon Sep 17 00:00:00 2001
From: Robert Yang <liezhi.yang@windriver.com>
Date: Sun, 5 Jul 2015 20:25:18 -0700
Subject: [PATCH] libcc1: fix libcc1's install path and rpath
@@ -20,7 +20,7 @@ Signed-off-by: Robert Yang <liezhi.yang@windriver.com>
2 files changed, 4 insertions(+), 4 deletions(-)
diff --git a/libcc1/Makefile.am b/libcc1/Makefile.am
-index 921a33fe236..938e6f964cd 100644
+index b592bc8645f..97e2b615fb7 100644
--- a/libcc1/Makefile.am
+++ b/libcc1/Makefile.am
@@ -40,8 +40,8 @@ libiberty = $(if $(wildcard $(libiberty_noasan)),$(Wc)$(libiberty_noasan), \
diff --git a/meta/recipes-devtools/gcc/gcc/0016-handle-sysroot-support-for-nativesdk-gcc.patch b/meta/recipes-devtools/gcc/gcc/0016-handle-sysroot-support-for-nativesdk-gcc.patch
index bdffcae7dc..82342b0532 100644
--- a/meta/recipes-devtools/gcc/gcc/0016-handle-sysroot-support-for-nativesdk-gcc.patch
+++ b/meta/recipes-devtools/gcc/gcc/0016-handle-sysroot-support-for-nativesdk-gcc.patch
@@ -1,4 +1,4 @@
-From bbc75b93bff66891fa7ffb3af5c6ad53df1fff68 Mon Sep 17 00:00:00 2001
+From 82da570396a6835e7208c8bb508220524b3a07c7 Mon Sep 17 00:00:00 2001
From: Khem Raj <raj.khem@gmail.com>
Date: Mon, 7 Dec 2015 23:39:54 +0000
Subject: [PATCH] handle sysroot support for nativesdk-gcc
@@ -46,10 +46,10 @@ Signed-off-by: Mark Hatle <mark.hatle@kernel.crashing.org>
8 files changed, 95 insertions(+), 73 deletions(-)
diff --git a/gcc/c-family/c-opts.cc b/gcc/c-family/c-opts.cc
-index c68a2a27469..77e9b5eceaa 100644
+index be3058dca63..0be85374760 100644
--- a/gcc/c-family/c-opts.cc
+++ b/gcc/c-family/c-opts.cc
-@@ -1458,8 +1458,8 @@ add_prefixed_path (const char *suffix, incpath_kind chain)
+@@ -1542,8 +1542,8 @@ add_prefixed_path (const char *suffix, incpath_kind chain)
size_t prefix_len, suffix_len;
suffix_len = strlen (suffix);
@@ -61,7 +61,7 @@ index c68a2a27469..77e9b5eceaa 100644
path = (char *) xmalloc (prefix_len + suffix_len + 1);
memcpy (path, prefix, prefix_len);
diff --git a/gcc/config/linux.h b/gcc/config/linux.h
-index 57496ff1f2f..c921cf6ef63 100644
+index c6aada42eb7..79ff13184d3 100644
--- a/gcc/config/linux.h
+++ b/gcc/config/linux.h
@@ -121,53 +121,53 @@ see the files COPYING3 and COPYING.RUNTIME respectively. If not, see
@@ -139,7 +139,7 @@ index 57496ff1f2f..c921cf6ef63 100644
}
#endif
diff --git a/gcc/config/rs6000/sysv4.h b/gcc/config/rs6000/sysv4.h
-index 3a443abcf6b..ef83a5a432e 100644
+index 247acec9d8e..5526bf050b8 100644
--- a/gcc/config/rs6000/sysv4.h
+++ b/gcc/config/rs6000/sysv4.h
@@ -950,53 +950,53 @@ ncrtn.o%s"
@@ -217,7 +217,7 @@ index 3a443abcf6b..ef83a5a432e 100644
}
#endif
diff --git a/gcc/cppdefault.cc b/gcc/cppdefault.cc
-index 734590a7059..b4a8fc29e4a 100644
+index 98bd66f95c6..742a4e56d5b 100644
--- a/gcc/cppdefault.cc
+++ b/gcc/cppdefault.cc
@@ -35,6 +35,30 @@
@@ -347,7 +347,7 @@ index 734590a7059..b4a8fc29e4a 100644
/* This value is set by cpp_relocated at runtime */
const char *gcc_exec_prefix;
diff --git a/gcc/cppdefault.h b/gcc/cppdefault.h
-index e26b424e99c..c9abb090dcd 100644
+index e9b9264caff..168144b84b8 100644
--- a/gcc/cppdefault.h
+++ b/gcc/cppdefault.h
@@ -33,7 +33,8 @@
@@ -382,10 +382,10 @@ index e26b424e99c..c9abb090dcd 100644
subdirectory of the actual installation. */
extern const char *gcc_exec_prefix;
diff --git a/gcc/gcc.cc b/gcc/gcc.cc
-index 8af0c814c33..605fe3b8c0d 100644
+index e3e9374d1cc..b080609341b 100644
--- a/gcc/gcc.cc
+++ b/gcc/gcc.cc
-@@ -255,6 +255,8 @@ FILE *report_times_to_file = NULL;
+@@ -259,6 +259,8 @@ FILE *report_times_to_file = NULL;
#endif
static const char *target_system_root = DEFAULT_TARGET_SYSTEM_ROOT;
@@ -394,7 +394,7 @@ index 8af0c814c33..605fe3b8c0d 100644
/* Nonzero means pass the updated target_system_root to the compiler. */
static int target_system_root_changed;
-@@ -578,6 +580,7 @@ or with constant text in a single argument.
+@@ -591,6 +593,7 @@ or with constant text in a single argument.
%G process LIBGCC_SPEC as a spec.
%R Output the concatenation of target_system_root and
target_sysroot_suffix.
@@ -402,7 +402,7 @@ index 8af0c814c33..605fe3b8c0d 100644
%S process STARTFILE_SPEC as a spec. A capital S is actually used here.
%E process ENDFILE_SPEC as a spec. A capital E is actually used here.
%C process CPP_SPEC as a spec.
-@@ -1619,10 +1622,10 @@ static const char *gcc_libexec_prefix;
+@@ -1638,10 +1641,10 @@ static const char *gcc_libexec_prefix;
gcc_exec_prefix is set because, in that case, we know where the
compiler has been installed, and use paths relative to that
location instead. */
@@ -417,7 +417,7 @@ index 8af0c814c33..605fe3b8c0d 100644
/* For native compilers, these are well-known paths containing
components that may be provided by the system. For cross
-@@ -1630,9 +1633,9 @@ static const char *const standard_startfile_prefix = STANDARD_STARTFILE_PREFIX;
+@@ -1649,9 +1652,9 @@ static const char *const standard_startfile_prefix = STANDARD_STARTFILE_PREFIX;
static const char *md_exec_prefix = MD_EXEC_PREFIX;
static const char *md_startfile_prefix = MD_STARTFILE_PREFIX;
static const char *md_startfile_prefix_1 = MD_STARTFILE_PREFIX_1;
@@ -429,7 +429,7 @@ index 8af0c814c33..605fe3b8c0d 100644
= STANDARD_STARTFILE_PREFIX_2;
/* A relative path to be used in finding the location of tools
-@@ -6652,6 +6655,11 @@ do_spec_1 (const char *spec, int inswitch, const char *soft_matched_part)
+@@ -6796,6 +6799,11 @@ do_spec_1 (const char *spec, int inswitch, const char *soft_matched_part)
}
break;
@@ -442,7 +442,7 @@ index 8af0c814c33..605fe3b8c0d 100644
value = do_spec_1 (startfile_spec, 0, NULL);
if (value != 0)
diff --git a/gcc/incpath.cc b/gcc/incpath.cc
-index 46c0d543205..d088dae7b04 100644
+index e572d98ab17..2cb2b586e4a 100644
--- a/gcc/incpath.cc
+++ b/gcc/incpath.cc
@@ -135,7 +135,7 @@ add_standard_paths (const char *sysroot, const char *iprefix,
@@ -489,7 +489,7 @@ index 46c0d543205..d088dae7b04 100644
str = update_path (ostr, p->component);
free (ostr);
diff --git a/gcc/prefix.cc b/gcc/prefix.cc
-index c2a37bde5ea..33944701ced 100644
+index 6a98e856855..c403b2da7a3 100644
--- a/gcc/prefix.cc
+++ b/gcc/prefix.cc
@@ -73,7 +73,9 @@ License along with GCC; see the file COPYING3. If not see
diff --git a/meta/recipes-devtools/gcc/gcc/0017-Search-target-sysroot-gcc-version-specific-dirs-with.patch b/meta/recipes-devtools/gcc/gcc/0017-Search-target-sysroot-gcc-version-specific-dirs-with.patch
index 8a11049ca3..f87461bcaf 100644
--- a/meta/recipes-devtools/gcc/gcc/0017-Search-target-sysroot-gcc-version-specific-dirs-with.patch
+++ b/meta/recipes-devtools/gcc/gcc/0017-Search-target-sysroot-gcc-version-specific-dirs-with.patch
@@ -1,4 +1,4 @@
-From 7e095089452b6e895ec40981752e9f902f0ad889 Mon Sep 17 00:00:00 2001
+From cafcdfea0526dda5377a999dd9b1b8c805eafe0a 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] Search target sysroot gcc version specific dirs with
@@ -52,10 +52,10 @@ Signed-off-by: Khem Raj <raj.khem@gmail.com>
1 file changed, 28 insertions(+), 1 deletion(-)
diff --git a/gcc/gcc.cc b/gcc/gcc.cc
-index 605fe3b8c0d..c3a1dab38c4 100644
+index b080609341b..1a1ca05064e 100644
--- a/gcc/gcc.cc
+++ b/gcc/gcc.cc
-@@ -2809,7 +2809,7 @@ for_each_path (const struct path_prefix *paths,
+@@ -2823,7 +2823,7 @@ for_each_path (const struct path_prefix *paths,
if (path == NULL)
{
len = paths->max_len + extra_space + 1;
@@ -64,7 +64,7 @@ index 605fe3b8c0d..c3a1dab38c4 100644
path = XNEWVEC (char, len);
}
-@@ -2821,6 +2821,33 @@ for_each_path (const struct path_prefix *paths,
+@@ -2835,6 +2835,33 @@ for_each_path (const struct path_prefix *paths,
/* Look first in MACHINE/VERSION subdirectory. */
if (!skip_multi_dir)
{
diff --git a/meta/recipes-devtools/gcc/gcc/0018-Add-ssp_nonshared-to-link-commandline-for-musl-targe.patch b/meta/recipes-devtools/gcc/gcc/0018-Add-ssp_nonshared-to-link-commandline-for-musl-targe.patch
index 9bc77b485f..71e43e556d 100644
--- a/meta/recipes-devtools/gcc/gcc/0018-Add-ssp_nonshared-to-link-commandline-for-musl-targe.patch
+++ b/meta/recipes-devtools/gcc/gcc/0018-Add-ssp_nonshared-to-link-commandline-for-musl-targe.patch
@@ -1,4 +1,4 @@
-From bf92b290556b7050df0a001cc7ae43cf79990456 Mon Sep 17 00:00:00 2001
+From f2ad66276fd197cc088d7316662b1d792357ef6c Mon Sep 17 00:00:00 2001
From: Khem Raj <raj.khem@gmail.com>
Date: Tue, 27 Jun 2017 18:10:54 -0700
Subject: [PATCH] Add ssp_nonshared to link commandline for musl targets
@@ -23,7 +23,7 @@ Signed-off-by: Khem Raj <raj.khem@gmail.com>
3 files changed, 27 insertions(+)
diff --git a/gcc/config/linux.h b/gcc/config/linux.h
-index c921cf6ef63..32e1bc1ae2d 100644
+index 79ff13184d3..19f552e8c7d 100644
--- a/gcc/config/linux.h
+++ b/gcc/config/linux.h
@@ -195,6 +195,13 @@ see the files COPYING3 and COPYING.RUNTIME respectively. If not, see
@@ -41,10 +41,10 @@ index c921cf6ef63..32e1bc1ae2d 100644
#if (DEFAULT_LIBC == LIBC_UCLIBC) && defined (SINGLE_LIBC) /* uClinux */
diff --git a/gcc/config/rs6000/linux.h b/gcc/config/rs6000/linux.h
-index 5d21befe8e4..1248a68e4ca 100644
+index 5f6cede558a..900993b6da4 100644
--- a/gcc/config/rs6000/linux.h
+++ b/gcc/config/rs6000/linux.h
-@@ -99,6 +99,16 @@
+@@ -102,6 +102,16 @@
" -m elf32ppclinux")
#endif
@@ -62,10 +62,10 @@ index 5d21befe8e4..1248a68e4ca 100644
#define LINK_OS_LINUX_SPEC LINK_OS_LINUX_EMUL " %{!shared: %{!static: \
%{!static-pie: \
diff --git a/gcc/config/rs6000/linux64.h b/gcc/config/rs6000/linux64.h
-index 2ddab7c99c1..9641580fc83 100644
+index a11ae7643b7..2abde270813 100644
--- a/gcc/config/rs6000/linux64.h
+++ b/gcc/config/rs6000/linux64.h
-@@ -372,6 +372,16 @@ extern int dot_symbols;
+@@ -373,6 +373,16 @@ extern int dot_symbols;
" -m elf64ppc")
#endif
diff --git a/meta/recipes-devtools/gcc/gcc/0019-Re-introduce-spe-commandline-options.patch b/meta/recipes-devtools/gcc/gcc/0019-Re-introduce-spe-commandline-options.patch
index f785688661..7f92dea0c6 100644
--- a/meta/recipes-devtools/gcc/gcc/0019-Re-introduce-spe-commandline-options.patch
+++ b/meta/recipes-devtools/gcc/gcc/0019-Re-introduce-spe-commandline-options.patch
@@ -1,4 +1,4 @@
-From 587ac4a59ea56da18a9989c31a75124e974cb37c Mon Sep 17 00:00:00 2001
+From 65baa3804819fbcd540be48f4c4611be5cba43c4 Mon Sep 17 00:00:00 2001
From: Khem Raj <raj.khem@gmail.com>
Date: Wed, 6 Jun 2018 12:10:22 -0700
Subject: [PATCH] Re-introduce spe commandline options
@@ -14,7 +14,7 @@ Signed-off-by: Khem Raj <raj.khem@gmail.com>
1 file changed, 13 insertions(+)
diff --git a/gcc/config/rs6000/rs6000.opt b/gcc/config/rs6000/rs6000.opt
-index bde6d3ff664..5af9640825c 100644
+index 83197681b66..04bea50b894 100644
--- a/gcc/config/rs6000/rs6000.opt
+++ b/gcc/config/rs6000/rs6000.opt
@@ -344,6 +344,19 @@ mdebug=
diff --git a/meta/recipes-devtools/gcc/gcc/0020-libgcc_s-Use-alias-for-__cpu_indicator_init-instead-.patch b/meta/recipes-devtools/gcc/gcc/0020-libgcc_s-Use-alias-for-__cpu_indicator_init-instead-.patch
index b86edab5d5..c5f43f5ba4 100644
--- a/meta/recipes-devtools/gcc/gcc/0020-libgcc_s-Use-alias-for-__cpu_indicator_init-instead-.patch
+++ b/meta/recipes-devtools/gcc/gcc/0020-libgcc_s-Use-alias-for-__cpu_indicator_init-instead-.patch
@@ -1,4 +1,4 @@
-From 8c4c59521720f8c1b1e38e38896b47fcb1bf00ac Mon Sep 17 00:00:00 2001
+From 18b0057e4e2c5cf6fc6541670418f43f0381db3e Mon Sep 17 00:00:00 2001
From: Szabolcs Nagy <nsz@port70.net>
Date: Sat, 24 Oct 2015 20:09:53 +0000
Subject: [PATCH] libgcc_s: Use alias for __cpu_indicator_init instead of
@@ -39,10 +39,10 @@ Signed-off-by: Khem Raj <raj.khem@gmail.com>
3 files changed, 6 insertions(+), 6 deletions(-)
diff --git a/gcc/config/i386/i386-expand.cc b/gcc/config/i386/i386-expand.cc
-index 0d817fc3f3b..8d34d19d3f9 100644
+index 8bb8f21e686..bcf976aa1b9 100644
--- a/gcc/config/i386/i386-expand.cc
+++ b/gcc/config/i386/i386-expand.cc
-@@ -12691,10 +12691,10 @@ ix86_expand_builtin (tree exp, rtx target, rtx subtarget,
+@@ -13087,10 +13087,10 @@ ix86_expand_builtin (tree exp, rtx target, rtx subtarget,
{
case IX86_BUILTIN_CPU_INIT:
{
@@ -56,7 +56,7 @@ index 0d817fc3f3b..8d34d19d3f9 100644
return expand_expr (call_expr, target, mode, EXPAND_NORMAL);
}
diff --git a/libgcc/config/i386/cpuinfo.c b/libgcc/config/i386/cpuinfo.c
-index 50b6d8248a2..724ced402a1 100644
+index 0bd6dffe17e..ef4acb175a4 100644
--- a/libgcc/config/i386/cpuinfo.c
+++ b/libgcc/config/i386/cpuinfo.c
@@ -63,7 +63,7 @@ __cpu_indicator_init (void)
diff --git a/meta/recipes-devtools/gcc/gcc/0021-gentypes-genmodes-Do-not-use-__LINE__-for-maintainin.patch b/meta/recipes-devtools/gcc/gcc/0021-gentypes-genmodes-Do-not-use-__LINE__-for-maintainin.patch
index b6707592dc..dce2c047d0 100644
--- a/meta/recipes-devtools/gcc/gcc/0021-gentypes-genmodes-Do-not-use-__LINE__-for-maintainin.patch
+++ b/meta/recipes-devtools/gcc/gcc/0021-gentypes-genmodes-Do-not-use-__LINE__-for-maintainin.patch
@@ -1,4 +1,4 @@
-From f15b19d8e058c983c49c4566c1879fdaf5b1ab54 Mon Sep 17 00:00:00 2001
+From a9bb04b7cf02b2f2d16f68733488f9e48fc7e7a9 Mon Sep 17 00:00:00 2001
From: Richard Purdie <richard.purdie@linuxfoundation.org>
Date: Tue, 10 Mar 2020 08:26:53 -0700
Subject: [PATCH] gentypes/genmodes: Do not use __LINE__ for maintaining
@@ -17,7 +17,7 @@ Signed-off-by: Khem Raj <raj.khem@gmail.com>
2 files changed, 19 insertions(+), 19 deletions(-)
diff --git a/gcc/gengtype.cc b/gcc/gengtype.cc
-index 7763f40e9ab..4f0c1eb1508 100644
+index c0ecbe8558b..9f8ab7146c0 100644
--- a/gcc/gengtype.cc
+++ b/gcc/gengtype.cc
@@ -1005,7 +1005,7 @@ create_field_at (pair_p next, type_p type, const char *name, options_p opt,
@@ -38,7 +38,7 @@ index 7763f40e9ab..4f0c1eb1508 100644
/* Reverse a linked list of 'struct pair's in place. */
pair_p
-@@ -5223,7 +5223,7 @@ main (int argc, char **argv)
+@@ -5232,7 +5232,7 @@ main (int argc, char **argv)
/* These types are set up with #define or else outside of where
we can see them. We should initialize them before calling
read_input_list. */
@@ -48,7 +48,7 @@ index 7763f40e9ab..4f0c1eb1508 100644
POS_HERE (do_scalar_typedef ("CUMULATIVE_ARGS", &pos));
POS_HERE (do_scalar_typedef ("REAL_VALUE_TYPE", &pos));
diff --git a/gcc/genmodes.cc b/gcc/genmodes.cc
-index 715787b8f48..302adff28d5 100644
+index eb3f9e2f0c1..5425635cb22 100644
--- a/gcc/genmodes.cc
+++ b/gcc/genmodes.cc
@@ -441,7 +441,7 @@ complete_all_modes (void)
diff --git a/meta/recipes-devtools/gcc/gcc/0022-libatomic-Do-not-enforce-march-on-aarch64.patch b/meta/recipes-devtools/gcc/gcc/0022-libatomic-Do-not-enforce-march-on-aarch64.patch
index 0ea8aac543..d710b50594 100644
--- a/meta/recipes-devtools/gcc/gcc/0022-libatomic-Do-not-enforce-march-on-aarch64.patch
+++ b/meta/recipes-devtools/gcc/gcc/0022-libatomic-Do-not-enforce-march-on-aarch64.patch
@@ -1,4 +1,4 @@
-From 939a899b862f7a25e52b74d1587fc75fc65779c0 Mon Sep 17 00:00:00 2001
+From db4380eac3cd9baa2f31bcd2fb936ed51f27b415 Mon Sep 17 00:00:00 2001
From: Khem Raj <raj.khem@gmail.com>
Date: Wed, 13 May 2020 15:10:38 -0700
Subject: [PATCH] libatomic: Do not enforce march on aarch64
@@ -17,25 +17,25 @@ Signed-off-by: Khem Raj <raj.khem@gmail.com>
2 files changed, 2 deletions(-)
diff --git a/libatomic/Makefile.am b/libatomic/Makefile.am
-index c6c8d81c56a..d959a5d040e 100644
+index 980677f3533..26188917946 100644
--- a/libatomic/Makefile.am
+++ b/libatomic/Makefile.am
-@@ -125,7 +125,6 @@ libatomic_la_LIBADD = $(foreach s,$(SIZES),$(addsuffix _$(s)_.lo,$(SIZEOBJS)))
+@@ -130,7 +130,6 @@ libatomic_la_LIBADD = $(foreach s,$(SIZES),$(addsuffix _$(s)_.lo,$(SIZEOBJS)))
## On a target-specific basis, include alternates to be selected by IFUNC.
if HAVE_IFUNC
if ARCH_AARCH64_LINUX
-IFUNC_OPTIONS = -march=armv8-a+lse
libatomic_la_LIBADD += $(foreach s,$(SIZES),$(addsuffix _$(s)_1_.lo,$(SIZEOBJS)))
- libatomic_la_SOURCES += atomic_16.S
+ endif
diff --git a/libatomic/Makefile.in b/libatomic/Makefile.in
-index a0fa3dfc8cc..e70d389874a 100644
+index d9d529bc502..47dacef9e01 100644
--- a/libatomic/Makefile.in
+++ b/libatomic/Makefile.in
-@@ -447,7 +447,6 @@ M_SRC = $(firstword $(filter %/$(M_FILE), $(all_c_files)))
+@@ -452,7 +452,6 @@ M_SRC = $(firstword $(filter %/$(M_FILE), $(all_c_files)))
libatomic_la_LIBADD = $(foreach s,$(SIZES),$(addsuffix \
- _$(s)_.lo,$(SIZEOBJS))) $(am__append_1) $(am__append_3) \
- $(am__append_4) $(am__append_5)
+ _$(s)_.lo,$(SIZEOBJS))) $(am__append_1) $(am__append_2) \
+ $(am__append_3) $(am__append_4)
-@ARCH_AARCH64_LINUX_TRUE@@HAVE_IFUNC_TRUE@IFUNC_OPTIONS = -march=armv8-a+lse
@ARCH_ARM_LINUX_TRUE@@HAVE_IFUNC_TRUE@IFUNC_OPTIONS = -march=armv7-a+fp -DHAVE_KERNEL64
@ARCH_I386_TRUE@@HAVE_IFUNC_TRUE@IFUNC_OPTIONS = -march=i586
diff --git a/meta/recipes-devtools/gcc/gcc/0023-Fix-install-path-of-linux64.h.patch b/meta/recipes-devtools/gcc/gcc/0023-Fix-install-path-of-linux64.h.patch
index cd962d82bd..7f1cd0b3d8 100644
--- a/meta/recipes-devtools/gcc/gcc/0023-Fix-install-path-of-linux64.h.patch
+++ b/meta/recipes-devtools/gcc/gcc/0023-Fix-install-path-of-linux64.h.patch
@@ -1,4 +1,4 @@
-From 696d696381dd99ec2bddb1170f96f98da36eb418 Mon Sep 17 00:00:00 2001
+From 92a77026cc64f5eab4cb6b35e4a7c59e6ab8aa20 Mon Sep 17 00:00:00 2001
From: Andrei Gherzan <andrei.gherzan@huawei.com>
Date: Wed, 22 Dec 2021 12:49:25 +0100
Subject: [PATCH] Fix install path of linux64.h
@@ -17,11 +17,11 @@ Signed-off-by: Khem Raj <raj.khem@gmail.com>
1 file changed, 2 insertions(+)
diff --git a/gcc/Makefile.in b/gcc/Makefile.in
-index 8ef996c0f4d..21daf380e34 100644
+index 6a009c696e9..da54dd42adf 100644
--- a/gcc/Makefile.in
+++ b/gcc/Makefile.in
-@@ -3731,6 +3731,8 @@ install-plugin: installdirs lang.install-plugin s-header-vars install-gengtype
- "$(srcdir)"/config/* | "$(srcdir)"/common/config/* \
+@@ -3900,6 +3900,8 @@ install-plugin: installdirs lang.install-plugin s-header-vars install-gengtype
+ | "$(srcdir)"/config/* | "$(srcdir)"/common/config/* \
| "$(srcdir)"/c-family/* | "$(srcdir)"/*.def ) \
base=`echo "$$path" | sed -e "s|$$srcdirstrip/||"`;; \
+ */linux64.h ) \
diff --git a/meta/recipes-devtools/gcc/gcc/0024-Avoid-hardcoded-build-paths-into-ppc-libgcc.patch b/meta/recipes-devtools/gcc/gcc/0024-Avoid-hardcoded-build-paths-into-ppc-libgcc.patch
index 04d940ae0b..a34e6afdb4 100644
--- a/meta/recipes-devtools/gcc/gcc/0024-Avoid-hardcoded-build-paths-into-ppc-libgcc.patch
+++ b/meta/recipes-devtools/gcc/gcc/0024-Avoid-hardcoded-build-paths-into-ppc-libgcc.patch
@@ -1,4 +1,4 @@
-From 9487b1d6136ea09cce4792d59d0170c712575550 Mon Sep 17 00:00:00 2001
+From c6fc577e9e89dc16d3e971aa165602746232de4c Mon Sep 17 00:00:00 2001
From: Richard Purdie <richard.purdie@linuxfoundation.org>
Date: Sat, 20 Aug 2022 09:04:14 -0700
Subject: [PATCH] Avoid hardcoded build paths into ppc libgcc
diff --git a/meta/recipes-devtools/gcc/gcc/0025-gcc-testsuite-tweaks-for-mips-OE.patch b/meta/recipes-devtools/gcc/gcc/0025-gcc-testsuite-tweaks-for-mips-OE.patch
index e4d57c27ef..454d05d473 100644
--- a/meta/recipes-devtools/gcc/gcc/0025-gcc-testsuite-tweaks-for-mips-OE.patch
+++ b/meta/recipes-devtools/gcc/gcc/0025-gcc-testsuite-tweaks-for-mips-OE.patch
@@ -1,6 +1,6 @@
-From f12acc6a383546d48da3bdfb2f25ca2adb7976d7 Mon Sep 17 00:00:00 2001
+From 8845248c81c0695ccc65311017deef824fa538fa Mon Sep 17 00:00:00 2001
From: Richard Purdie <richard.purdie@linuxfoundation.org>
-Date: Sun, 13 Aug 2023 10:24:05 +0100
+Date: Thu, 17 Aug 2023 09:01:40 -0700
Subject: [PATCH] gcc testsuite tweaks for mips/OE
Disable loongson-mmi runtine, qemu doesn't appear to fully support them even if some
@@ -26,10 +26,12 @@ Also, for gcc.target tests, add checks on wheter loongson or msa code can
be run before trying that, allowing downgrading of tests there to work too.
Upstream-Status: Pending
+
[Parts of the patch may be able to be split off and acceptable to upstream with
discussion. Need to investigate why qemu-user passes the 'bad' instructions']
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
+Signed-off-by: Khem Raj <raj.khem@gmail.com>
---
gcc/testsuite/gcc.target/mips/mips.exp | 16 +++++++++
gcc/testsuite/lib/gcc-dg.exp | 11 +++++++
@@ -37,10 +39,10 @@ Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
3 files changed, 41 insertions(+), 31 deletions(-)
diff --git a/gcc/testsuite/gcc.target/mips/mips.exp b/gcc/testsuite/gcc.target/mips/mips.exp
-index 15d574202d3..2cef9709774 100644
+index e028bc93b40..b54a40d6509 100644
--- a/gcc/testsuite/gcc.target/mips/mips.exp
+++ b/gcc/testsuite/gcc.target/mips/mips.exp
-@@ -709,7 +709,23 @@ proc mips_first_unsupported_option { upstatus } {
+@@ -711,7 +711,23 @@ proc mips_first_unsupported_option { upstatus } {
global mips_option_tests
upvar $upstatus status
@@ -65,10 +67,10 @@ index 15d574202d3..2cef9709774 100644
regsub -all "\n" $code "\\n\\\n" asm
# Use check_runtime from target-supports.exp, which caches
diff --git a/gcc/testsuite/lib/gcc-dg.exp b/gcc/testsuite/lib/gcc-dg.exp
-index 9d79b9402e9..e0e5cbb1af8 100644
+index 228c21d1207..d3b88e0419e 100644
--- a/gcc/testsuite/lib/gcc-dg.exp
+++ b/gcc/testsuite/lib/gcc-dg.exp
-@@ -240,9 +240,20 @@ proc schedule-cleanups { opts } {
+@@ -232,9 +232,20 @@ proc schedule-cleanups { opts } {
proc gcc-dg-test-1 { target_compile prog do_what extra_tool_flags } {
# Set up the compiler flags, based on what we're going to do.
@@ -77,23 +79,23 @@ index 9d79b9402e9..e0e5cbb1af8 100644
set options [list]
+ if [info exists do-what-limit] then {
-+ # Demote run tests to $do-what-limit if set
-+ switch $do_what {
++ # Demote run tests to $do-what-limit if set
++ switch $do_what {
+ run {
-+ set do_what ${do-what-limit}
-+ set dg-do-what ${do-what-limit}
-+ }
-+ }
++ set do_what ${do-what-limit}
++ set dg-do-what ${do-what-limit}
++ }
++ }
+ }
+
switch $do_what {
"preprocess" {
set compile_type "preprocess"
diff --git a/gcc/testsuite/lib/target-supports.exp b/gcc/testsuite/lib/target-supports.exp
-index 40f71e9ed8b..10e267fa16d 100644
+index 45435586de2..04942540d8b 100644
--- a/gcc/testsuite/lib/target-supports.exp
+++ b/gcc/testsuite/lib/target-supports.exp
-@@ -2155,14 +2155,7 @@ proc check_mips_loongson_mmi_hw_available { } {
+@@ -2483,14 +2483,7 @@ proc check_mips_loongson_mmi_hw_available { } {
if { !([istarget mips*-*-*]) } {
expr 0
} else {
@@ -109,7 +111,7 @@ index 40f71e9ed8b..10e267fa16d 100644
}
}]
}
-@@ -2176,29 +2169,7 @@ proc check_mips_msa_hw_available { } {
+@@ -2504,29 +2497,7 @@ proc check_mips_msa_hw_available { } {
if { !([istarget mips*-*-*]) } {
expr 0
} else {
@@ -140,7 +142,7 @@ index 40f71e9ed8b..10e267fa16d 100644
}
}]
}
-@@ -9187,6 +9158,7 @@ proc is-effective-target-keyword { arg } {
+@@ -9897,6 +9868,7 @@ proc is-effective-target-keyword { arg } {
proc et-dg-runtest { runtest testcases flags default-extra-flags } {
global dg-do-what-default
@@ -148,7 +150,7 @@ index 40f71e9ed8b..10e267fa16d 100644
global EFFECTIVE_TARGETS
global et_index
-@@ -9194,6 +9166,7 @@ proc et-dg-runtest { runtest testcases flags default-extra-flags } {
+@@ -9904,6 +9876,7 @@ proc et-dg-runtest { runtest testcases flags default-extra-flags } {
foreach target $EFFECTIVE_TARGETS {
set target_flags $flags
set dg-do-what-default compile
@@ -156,7 +158,7 @@ index 40f71e9ed8b..10e267fa16d 100644
set et_index [lsearch -exact $EFFECTIVE_TARGETS $target]
if { [info procs add_options_for_${target}] != [list] } {
set target_flags [add_options_for_${target} "$flags"]
-@@ -9201,8 +9174,10 @@ proc et-dg-runtest { runtest testcases flags default-extra-flags } {
+@@ -9911,8 +9884,10 @@ proc et-dg-runtest { runtest testcases flags default-extra-flags } {
if { [info procs check_effective_target_${target}_runtime]
!= [list] && [check_effective_target_${target}_runtime] } {
set dg-do-what-default run
@@ -167,7 +169,7 @@ index 40f71e9ed8b..10e267fa16d 100644
}
} else {
set et_index 0
-@@ -10789,6 +10764,7 @@ proc check_effective_target_sigsetjmp {} {
+@@ -11606,6 +11581,7 @@ proc check_effective_target_sigsetjmp {} {
proc check_vect_support_and_set_flags { } {
global DEFAULT_VECTCFLAGS
global dg-do-what-default
@@ -175,7 +177,7 @@ index 40f71e9ed8b..10e267fa16d 100644
global EFFECTIVE_TARGETS
if [istarget powerpc-*paired*] {
-@@ -10797,6 +10773,7 @@ proc check_vect_support_and_set_flags { } {
+@@ -11614,6 +11590,7 @@ proc check_vect_support_and_set_flags { } {
set dg-do-what-default run
} else {
set dg-do-what-default compile
@@ -183,15 +185,15 @@ index 40f71e9ed8b..10e267fa16d 100644
}
} elseif [istarget powerpc*-*-*] {
# Skip targets not supporting -maltivec.
-@@ -10821,6 +10798,7 @@ proc check_vect_support_and_set_flags { } {
- lappend DEFAULT_VECTCFLAGS "-mcpu=970"
+@@ -11644,6 +11621,7 @@ proc check_vect_support_and_set_flags { } {
+ set DEFAULT_VECTCFLAGS [linsert $DEFAULT_VECTCFLAGS 0 "-mcpu=970"]
}
set dg-do-what-default compile
+ set do-what-limit link
}
} elseif { [istarget i?86-*-*] || [istarget x86_64-*-*] } {
lappend DEFAULT_VECTCFLAGS "-msse2"
-@@ -10828,6 +10806,7 @@ proc check_vect_support_and_set_flags { } {
+@@ -11651,6 +11629,7 @@ proc check_vect_support_and_set_flags { } {
set dg-do-what-default run
} else {
set dg-do-what-default compile
@@ -199,7 +201,7 @@ index 40f71e9ed8b..10e267fa16d 100644
}
} elseif { [istarget mips*-*-*]
&& [check_effective_target_nomips16] } {
-@@ -10847,6 +10826,7 @@ proc check_vect_support_and_set_flags { } {
+@@ -11670,6 +11649,7 @@ proc check_vect_support_and_set_flags { } {
set dg-do-what-default run
} else {
set dg-do-what-default compile
@@ -207,7 +209,7 @@ index 40f71e9ed8b..10e267fa16d 100644
}
} elseif [istarget alpha*-*-*] {
# Alpha's vectorization capabilities are extremely limited.
-@@ -10860,6 +10840,7 @@ proc check_vect_support_and_set_flags { } {
+@@ -11683,6 +11663,7 @@ proc check_vect_support_and_set_flags { } {
set dg-do-what-default run
} else {
set dg-do-what-default compile
@@ -215,7 +217,7 @@ index 40f71e9ed8b..10e267fa16d 100644
}
} elseif [istarget ia64-*-*] {
set dg-do-what-default run
-@@ -10873,6 +10854,7 @@ proc check_vect_support_and_set_flags { } {
+@@ -11696,6 +11677,7 @@ proc check_vect_support_and_set_flags { } {
set dg-do-what-default run
} else {
set dg-do-what-default compile
@@ -223,7 +225,7 @@ index 40f71e9ed8b..10e267fa16d 100644
}
} elseif [istarget aarch64*-*-*] {
set dg-do-what-default run
-@@ -10897,6 +10879,7 @@ proc check_vect_support_and_set_flags { } {
+@@ -11720,6 +11702,7 @@ proc check_vect_support_and_set_flags { } {
} else {
lappend DEFAULT_VECTCFLAGS "-march=z14" "-mzarch"
set dg-do-what-default compile
diff --git a/meta/recipes-devtools/gcc/gcc/0026-aarch64-Fix-loose-ldpstp-check-PR111411.patch b/meta/recipes-devtools/gcc/gcc/0026-aarch64-Fix-loose-ldpstp-check-PR111411.patch
deleted file mode 100644
index a408a98698..0000000000
--- a/meta/recipes-devtools/gcc/gcc/0026-aarch64-Fix-loose-ldpstp-check-PR111411.patch
+++ /dev/null
@@ -1,117 +0,0 @@
-From adb60dc78e0da4877747f32347cee339364775be Mon Sep 17 00:00:00 2001
-From: Richard Sandiford <richard.sandiford@arm.com>
-Date: Fri, 15 Sep 2023 09:19:14 +0100
-Subject: [PATCH] aarch64: Fix loose ldpstp check [PR111411]
-
-aarch64_operands_ok_for_ldpstp contained the code:
-
- /* One of the memory accesses must be a mempair operand.
- If it is not the first one, they need to be swapped by the
- peephole. */
- if (!aarch64_mem_pair_operand (mem_1, GET_MODE (mem_1))
- && !aarch64_mem_pair_operand (mem_2, GET_MODE (mem_2)))
- return false;
-
-But the requirement isn't just that one of the accesses must be a
-valid mempair operand. It's that the lower access must be, since
-that's the access that will be used for the instruction operand.
-
-gcc/
- PR target/111411
- * config/aarch64/aarch64.cc (aarch64_operands_ok_for_ldpstp): Require
- the lower memory access to a mem-pair operand.
-
-gcc/testsuite/
- PR target/111411
- * gcc.dg/rtl/aarch64/pr111411.c: New test.
-
-Upstream-Status: Backport [https://gcc.gnu.org/git/gitweb.cgi?p=gcc.git;h=2d38f45bcca62ca0c7afef4b579f82c5c2a01610]
-Signed-off-by: Martin Jansa <martin.jansa@gmail.com>
----
- gcc/config/aarch64/aarch64.cc | 8 ++-
- gcc/testsuite/gcc.dg/rtl/aarch64/pr111411.c | 57 +++++++++++++++++++++
- 2 files changed, 60 insertions(+), 5 deletions(-)
- create mode 100644 gcc/testsuite/gcc.dg/rtl/aarch64/pr111411.c
-
-diff --git a/gcc/config/aarch64/aarch64.cc b/gcc/config/aarch64/aarch64.cc
-index 6118a3354ac..9b1f791ca8b 100644
---- a/gcc/config/aarch64/aarch64.cc
-+++ b/gcc/config/aarch64/aarch64.cc
-@@ -26154,11 +26154,9 @@ aarch64_operands_ok_for_ldpstp (rtx *operands, bool load,
- gcc_assert (known_eq (GET_MODE_SIZE (GET_MODE (mem_1)),
- GET_MODE_SIZE (GET_MODE (mem_2))));
-
-- /* One of the memory accesses must be a mempair operand.
-- If it is not the first one, they need to be swapped by the
-- peephole. */
-- if (!aarch64_mem_pair_operand (mem_1, GET_MODE (mem_1))
-- && !aarch64_mem_pair_operand (mem_2, GET_MODE (mem_2)))
-+ /* The lower memory access must be a mem-pair operand. */
-+ rtx lower_mem = reversed ? mem_2 : mem_1;
-+ if (!aarch64_mem_pair_operand (lower_mem, GET_MODE (lower_mem)))
- return false;
-
- if (REG_P (reg_1) && FP_REGNUM_P (REGNO (reg_1)))
-diff --git a/gcc/testsuite/gcc.dg/rtl/aarch64/pr111411.c b/gcc/testsuite/gcc.dg/rtl/aarch64/pr111411.c
-new file mode 100644
-index 00000000000..ad07e9c6c89
---- /dev/null
-+++ b/gcc/testsuite/gcc.dg/rtl/aarch64/pr111411.c
-@@ -0,0 +1,57 @@
-+/* { dg-do compile { target aarch64*-*-* } } */
-+/* { dg-require-effective-target lp64 } */
-+/* { dg-options "-O -fdisable-rtl-postreload -fpeephole2 -fno-schedule-fusion" } */
-+
-+extern int data[];
-+
-+void __RTL (startwith ("ira")) foo (void *ptr)
-+{
-+ (function "foo"
-+ (param "ptr"
-+ (DECL_RTL (reg/v:DI <0> [ ptr ]))
-+ (DECL_RTL_INCOMING (reg/v:DI x0 [ ptr ]))
-+ ) ;; param "ptr"
-+ (insn-chain
-+ (block 2
-+ (edge-from entry (flags "FALLTHRU"))
-+ (cnote 3 [bb 2] NOTE_INSN_BASIC_BLOCK)
-+ (insn 4 (set (reg:DI <0>) (reg:DI x0)))
-+ (insn 5 (set (reg:DI <1>)
-+ (plus:DI (reg:DI <0>) (const_int 768))))
-+ (insn 6 (set (mem:SI (plus:DI (reg:DI <0>)
-+ (const_int 508)) [1 &data+508 S4 A4])
-+ (const_int 0)))
-+ (insn 7 (set (mem:SI (plus:DI (reg:DI <1>)
-+ (const_int -256)) [1 &data+512 S4 A4])
-+ (const_int 0)))
-+ (edge-to exit (flags "FALLTHRU"))
-+ ) ;; block 2
-+ ) ;; insn-chain
-+ ) ;; function
-+}
-+
-+void __RTL (startwith ("ira")) bar (void *ptr)
-+{
-+ (function "bar"
-+ (param "ptr"
-+ (DECL_RTL (reg/v:DI <0> [ ptr ]))
-+ (DECL_RTL_INCOMING (reg/v:DI x0 [ ptr ]))
-+ ) ;; param "ptr"
-+ (insn-chain
-+ (block 2
-+ (edge-from entry (flags "FALLTHRU"))
-+ (cnote 3 [bb 2] NOTE_INSN_BASIC_BLOCK)
-+ (insn 4 (set (reg:DI <0>) (reg:DI x0)))
-+ (insn 5 (set (reg:DI <1>)
-+ (plus:DI (reg:DI <0>) (const_int 768))))
-+ (insn 6 (set (mem:SI (plus:DI (reg:DI <1>)
-+ (const_int -256)) [1 &data+512 S4 A4])
-+ (const_int 0)))
-+ (insn 7 (set (mem:SI (plus:DI (reg:DI <0>)
-+ (const_int 508)) [1 &data+508 S4 A4])
-+ (const_int 0)))
-+ (edge-to exit (flags "FALLTHRU"))
-+ ) ;; block 2
-+ ) ;; insn-chain
-+ ) ;; function
-+}
diff --git a/meta/recipes-devtools/gcc/gcc/0027-Fix-gcc-vect-module-testcases.patch b/meta/recipes-devtools/gcc/gcc/0027-Fix-gcc-vect-module-testcases.patch
deleted file mode 100644
index 4b89036814..0000000000
--- a/meta/recipes-devtools/gcc/gcc/0027-Fix-gcc-vect-module-testcases.patch
+++ /dev/null
@@ -1,26 +0,0 @@
-Upstream-Status: Backport [https://gcc.gnu.org/git/gitweb.cgi?p=gcc.git;h=948dbc5ee45f9ffd5f41fd6782704081cc7c8c27]
-
-Signed-off-by: Harish Sadineni <Harish.Sadineni@windriver.com>
-
-diff --git a/gcc/testsuite/gcc.dg/vect/vect-simd-clone-10.c b/gcc/testsuite/gcc.dg/vect/vect-simd-clone-10.c
-index ed63ff59cc0..009c849b7e7 100644
---- a/gcc/testsuite/gcc.dg/vect/vect-simd-clone-10.c
-+++ b/gcc/testsuite/gcc.dg/vect/vect-simd-clone-10.c
-@@ -1,3 +1,5 @@
-+/* Since this uses dg-additional-sources, need to specify `dg-do run` instead of the default. */
-+/* { dg-do run } */
- /* { dg-require-effective-target vect_simd_clones } */
- /* { dg-additional-options "-fopenmp-simd" } */
- /* { dg-additional-options "-mavx" { target avx_runtime } } */
-diff --git a/gcc/testsuite/gcc.dg/vect/vect-simd-clone-12.c b/gcc/testsuite/gcc.dg/vect/vect-simd-clone-12.c
-index c44471e35bc..4699a3f3c80 100644
---- a/gcc/testsuite/gcc.dg/vect/vect-simd-clone-12.c
-+++ b/gcc/testsuite/gcc.dg/vect/vect-simd-clone-12.c
-@@ -1,3 +1,5 @@
-+/* Since this uses dg-additional-sources, need to specify `dg-do run` instead of the default. */
-+/* { dg-do run } */
- /* { dg-require-effective-target vect_simd_clones } */
- /* { dg-additional-options "-fopenmp-simd" } */
- /* { dg-additional-options "-mavx" { target avx_runtime } } */
---
-2.43.0
diff --git a/meta/recipes-devtools/gcc/gcc/CVE-2023-4039.patch b/meta/recipes-devtools/gcc/gcc/CVE-2023-4039.patch
deleted file mode 100644
index 81b5067c33..0000000000
--- a/meta/recipes-devtools/gcc/gcc/CVE-2023-4039.patch
+++ /dev/null
@@ -1,3093 +0,0 @@
-From: Richard Sandiford <richard.sandiford@arm.com>
-Subject: [PATCH 00/19] aarch64: Fix -fstack-protector issue
-Date: Tue, 12 Sep 2023 16:25:10 +0100
-
-This series of patches fixes deficiencies in GCC's -fstack-protector
-implementation for AArch64 when using dynamically allocated stack space.
-This is CVE-2023-4039. See:
-
-https://developer.arm.com/Arm%20Security%20Center/GCC%20Stack%20Protector%20Vulnerability%20AArch64
-https://github.com/metaredteam/external-disclosures/security/advisories/GHSA-x7ch-h5rf-w2mf
-
-for more details.
-
-The fix is to put the saved registers above the locals area when
--fstack-protector is used.
-
-The series also fixes a stack-clash problem that I found while working
-on the CVE. In unpatched sources, the stack-clash problem would only
-trigger for unrealistic numbers of arguments (8K 64-bit arguments, or an
-equivalent). But it would be a more significant issue with the new
--fstack-protector frame layout. It's therefore important that both
-problems are fixed together.
-
-Some reorganisation of the code seemed necessary to fix the problems in a
-cleanish way. The series is therefore quite long, but only a handful of
-patches should have any effect on code generation.
-
-See the individual patches for a detailed description.
-
-Tested on aarch64-linux-gnu. Pushed to trunk and to all active branches.
-I've also pushed backports to GCC 7+ to vendors/ARM/heads/CVE-2023-4039.
-
-CVE: CVE-2023-4039
-Upstream-Status: Backport
-Signed-off-by: Ross Burton <ross.burton@arm.com>
-
-
-From 71a2aa2127283f450c623d3604dbcabe0e14a8d4 Mon Sep 17 00:00:00 2001
-From: Richard Sandiford <richard.sandiford@arm.com>
-Date: Tue, 12 Sep 2023 16:07:12 +0100
-Subject: [PATCH 01/19] aarch64: Use local frame vars in shrink-wrapping code
-
-aarch64_layout_frame uses a shorthand for referring to
-cfun->machine->frame:
-
- aarch64_frame &frame = cfun->machine->frame;
-
-This patch does the same for some other heavy users of the structure.
-No functional change intended.
-
-gcc/
- * config/aarch64/aarch64.cc (aarch64_save_callee_saves): Use
- a local shorthand for cfun->machine->frame.
- (aarch64_restore_callee_saves, aarch64_get_separate_components):
- (aarch64_process_components): Likewise.
- (aarch64_allocate_and_probe_stack_space): Likewise.
- (aarch64_expand_prologue, aarch64_expand_epilogue): Likewise.
- (aarch64_layout_frame): Use existing shorthand for one more case.
----
- gcc/config/aarch64/aarch64.cc | 123 ++++++++++++++++++----------------
- 1 file changed, 64 insertions(+), 59 deletions(-)
-
-diff --git a/gcc/config/aarch64/aarch64.cc b/gcc/config/aarch64/aarch64.cc
-index 822a2b49a46..5d473d161d9 100644
---- a/gcc/config/aarch64/aarch64.cc
-+++ b/gcc/config/aarch64/aarch64.cc
-@@ -8612,7 +8612,7 @@ aarch64_layout_frame (void)
- frame.is_scs_enabled
- = (!crtl->calls_eh_return
- && sanitize_flags_p (SANITIZE_SHADOW_CALL_STACK)
-- && known_ge (cfun->machine->frame.reg_offset[LR_REGNUM], 0));
-+ && known_ge (frame.reg_offset[LR_REGNUM], 0));
-
- /* When shadow call stack is enabled, the scs_pop in the epilogue will
- restore x30, and we don't need to pop x30 again in the traditional
-@@ -9078,6 +9078,7 @@ aarch64_save_callee_saves (poly_int64 start_offset,
- unsigned start, unsigned limit, bool skip_wb,
- bool hard_fp_valid_p)
- {
-+ aarch64_frame &frame = cfun->machine->frame;
- rtx_insn *insn;
- unsigned regno;
- unsigned regno2;
-@@ -9092,8 +9093,8 @@ aarch64_save_callee_saves (poly_int64 start_offset,
- bool frame_related_p = aarch64_emit_cfi_for_reg_p (regno);
-
- if (skip_wb
-- && (regno == cfun->machine->frame.wb_push_candidate1
-- || regno == cfun->machine->frame.wb_push_candidate2))
-+ && (regno == frame.wb_push_candidate1
-+ || regno == frame.wb_push_candidate2))
- continue;
-
- if (cfun->machine->reg_is_wrapped_separately[regno])
-@@ -9101,7 +9102,7 @@ aarch64_save_callee_saves (poly_int64 start_offset,
-
- machine_mode mode = aarch64_reg_save_mode (regno);
- reg = gen_rtx_REG (mode, regno);
-- offset = start_offset + cfun->machine->frame.reg_offset[regno];
-+ offset = start_offset + frame.reg_offset[regno];
- rtx base_rtx = stack_pointer_rtx;
- poly_int64 sp_offset = offset;
-
-@@ -9114,7 +9115,7 @@ aarch64_save_callee_saves (poly_int64 start_offset,
- {
- gcc_assert (known_eq (start_offset, 0));
- poly_int64 fp_offset
-- = cfun->machine->frame.below_hard_fp_saved_regs_size;
-+ = frame.below_hard_fp_saved_regs_size;
- if (hard_fp_valid_p)
- base_rtx = hard_frame_pointer_rtx;
- else
-@@ -9136,8 +9137,7 @@ aarch64_save_callee_saves (poly_int64 start_offset,
- && (regno2 = aarch64_next_callee_save (regno + 1, limit)) <= limit
- && !cfun->machine->reg_is_wrapped_separately[regno2]
- && known_eq (GET_MODE_SIZE (mode),
-- cfun->machine->frame.reg_offset[regno2]
-- - cfun->machine->frame.reg_offset[regno]))
-+ frame.reg_offset[regno2] - frame.reg_offset[regno]))
- {
- rtx reg2 = gen_rtx_REG (mode, regno2);
- rtx mem2;
-@@ -9187,6 +9187,7 @@ static void
- aarch64_restore_callee_saves (poly_int64 start_offset, unsigned start,
- unsigned limit, bool skip_wb, rtx *cfi_ops)
- {
-+ aarch64_frame &frame = cfun->machine->frame;
- unsigned regno;
- unsigned regno2;
- poly_int64 offset;
-@@ -9203,13 +9204,13 @@ aarch64_restore_callee_saves (poly_int64 start_offset, unsigned start,
- rtx reg, mem;
-
- if (skip_wb
-- && (regno == cfun->machine->frame.wb_pop_candidate1
-- || regno == cfun->machine->frame.wb_pop_candidate2))
-+ && (regno == frame.wb_pop_candidate1
-+ || regno == frame.wb_pop_candidate2))
- continue;
-
- machine_mode mode = aarch64_reg_save_mode (regno);
- reg = gen_rtx_REG (mode, regno);
-- offset = start_offset + cfun->machine->frame.reg_offset[regno];
-+ offset = start_offset + frame.reg_offset[regno];
- rtx base_rtx = stack_pointer_rtx;
- if (mode == VNx2DImode && BYTES_BIG_ENDIAN)
- aarch64_adjust_sve_callee_save_base (mode, base_rtx, anchor_reg,
-@@ -9220,8 +9221,7 @@ aarch64_restore_callee_saves (poly_int64 start_offset, unsigned start,
- && (regno2 = aarch64_next_callee_save (regno + 1, limit)) <= limit
- && !cfun->machine->reg_is_wrapped_separately[regno2]
- && known_eq (GET_MODE_SIZE (mode),
-- cfun->machine->frame.reg_offset[regno2]
-- - cfun->machine->frame.reg_offset[regno]))
-+ frame.reg_offset[regno2] - frame.reg_offset[regno]))
- {
- rtx reg2 = gen_rtx_REG (mode, regno2);
- rtx mem2;
-@@ -9326,6 +9326,7 @@ offset_12bit_unsigned_scaled_p (machine_mode mode, poly_int64 offset)
- static sbitmap
- aarch64_get_separate_components (void)
- {
-+ aarch64_frame &frame = cfun->machine->frame;
- sbitmap components = sbitmap_alloc (LAST_SAVED_REGNUM + 1);
- bitmap_clear (components);
-
-@@ -9342,18 +9343,18 @@ aarch64_get_separate_components (void)
- if (mode == VNx2DImode && BYTES_BIG_ENDIAN)
- continue;
-
-- poly_int64 offset = cfun->machine->frame.reg_offset[regno];
-+ poly_int64 offset = frame.reg_offset[regno];
-
- /* If the register is saved in the first SVE save slot, we use
- it as a stack probe for -fstack-clash-protection. */
- if (flag_stack_clash_protection
-- && maybe_ne (cfun->machine->frame.below_hard_fp_saved_regs_size, 0)
-+ && maybe_ne (frame.below_hard_fp_saved_regs_size, 0)
- && known_eq (offset, 0))
- continue;
-
- /* Get the offset relative to the register we'll use. */
- if (frame_pointer_needed)
-- offset -= cfun->machine->frame.below_hard_fp_saved_regs_size;
-+ offset -= frame.below_hard_fp_saved_regs_size;
- else
- offset += crtl->outgoing_args_size;
-
-@@ -9372,11 +9373,11 @@ aarch64_get_separate_components (void)
- /* If the spare predicate register used by big-endian SVE code
- is call-preserved, it must be saved in the main prologue
- before any saves that use it. */
-- if (cfun->machine->frame.spare_pred_reg != INVALID_REGNUM)
-- bitmap_clear_bit (components, cfun->machine->frame.spare_pred_reg);
-+ if (frame.spare_pred_reg != INVALID_REGNUM)
-+ bitmap_clear_bit (components, frame.spare_pred_reg);
-
-- unsigned reg1 = cfun->machine->frame.wb_push_candidate1;
-- unsigned reg2 = cfun->machine->frame.wb_push_candidate2;
-+ unsigned reg1 = frame.wb_push_candidate1;
-+ unsigned reg2 = frame.wb_push_candidate2;
- /* If registers have been chosen to be stored/restored with
- writeback don't interfere with them to avoid having to output explicit
- stack adjustment instructions. */
-@@ -9485,6 +9486,7 @@ aarch64_get_next_set_bit (sbitmap bmp, unsigned int start)
- static void
- aarch64_process_components (sbitmap components, bool prologue_p)
- {
-+ aarch64_frame &frame = cfun->machine->frame;
- rtx ptr_reg = gen_rtx_REG (Pmode, frame_pointer_needed
- ? HARD_FRAME_POINTER_REGNUM
- : STACK_POINTER_REGNUM);
-@@ -9499,9 +9501,9 @@ aarch64_process_components (sbitmap components, bool prologue_p)
- machine_mode mode = aarch64_reg_save_mode (regno);
-
- rtx reg = gen_rtx_REG (mode, regno);
-- poly_int64 offset = cfun->machine->frame.reg_offset[regno];
-+ poly_int64 offset = frame.reg_offset[regno];
- if (frame_pointer_needed)
-- offset -= cfun->machine->frame.below_hard_fp_saved_regs_size;
-+ offset -= frame.below_hard_fp_saved_regs_size;
- else
- offset += crtl->outgoing_args_size;
-
-@@ -9526,14 +9528,14 @@ aarch64_process_components (sbitmap components, bool prologue_p)
- break;
- }
-
-- poly_int64 offset2 = cfun->machine->frame.reg_offset[regno2];
-+ poly_int64 offset2 = frame.reg_offset[regno2];
- /* The next register is not of the same class or its offset is not
- mergeable with the current one into a pair. */
- if (aarch64_sve_mode_p (mode)
- || !satisfies_constraint_Ump (mem)
- || GP_REGNUM_P (regno) != GP_REGNUM_P (regno2)
- || (crtl->abi->id () == ARM_PCS_SIMD && FP_REGNUM_P (regno))
-- || maybe_ne ((offset2 - cfun->machine->frame.reg_offset[regno]),
-+ || maybe_ne ((offset2 - frame.reg_offset[regno]),
- GET_MODE_SIZE (mode)))
- {
- insn = emit_insn (set);
-@@ -9555,7 +9557,7 @@ aarch64_process_components (sbitmap components, bool prologue_p)
- /* REGNO2 can be saved/restored in a pair with REGNO. */
- rtx reg2 = gen_rtx_REG (mode, regno2);
- if (frame_pointer_needed)
-- offset2 -= cfun->machine->frame.below_hard_fp_saved_regs_size;
-+ offset2 -= frame.below_hard_fp_saved_regs_size;
- else
- offset2 += crtl->outgoing_args_size;
- rtx addr2 = plus_constant (Pmode, ptr_reg, offset2);
-@@ -9650,6 +9652,7 @@ aarch64_allocate_and_probe_stack_space (rtx temp1, rtx temp2,
- bool frame_related_p,
- bool final_adjustment_p)
- {
-+ aarch64_frame &frame = cfun->machine->frame;
- HOST_WIDE_INT guard_size
- = 1 << param_stack_clash_protection_guard_size;
- HOST_WIDE_INT guard_used_by_caller = STACK_CLASH_CALLER_GUARD;
-@@ -9670,25 +9673,25 @@ aarch64_allocate_and_probe_stack_space (rtx temp1, rtx temp2,
- register as a probe. We can't assume that LR was saved at position 0
- though, so treat any space below it as unprobed. */
- if (final_adjustment_p
-- && known_eq (cfun->machine->frame.below_hard_fp_saved_regs_size, 0))
-+ && known_eq (frame.below_hard_fp_saved_regs_size, 0))
- {
-- poly_int64 lr_offset = cfun->machine->frame.reg_offset[LR_REGNUM];
-+ poly_int64 lr_offset = frame.reg_offset[LR_REGNUM];
- if (known_ge (lr_offset, 0))
- min_probe_threshold -= lr_offset.to_constant ();
- else
- gcc_assert (!flag_stack_clash_protection || known_eq (poly_size, 0));
- }
-
-- poly_int64 frame_size = cfun->machine->frame.frame_size;
-+ poly_int64 frame_size = frame.frame_size;
-
- /* We should always have a positive probe threshold. */
- gcc_assert (min_probe_threshold > 0);
-
- if (flag_stack_clash_protection && !final_adjustment_p)
- {
-- poly_int64 initial_adjust = cfun->machine->frame.initial_adjust;
-- poly_int64 sve_callee_adjust = cfun->machine->frame.sve_callee_adjust;
-- poly_int64 final_adjust = cfun->machine->frame.final_adjust;
-+ poly_int64 initial_adjust = frame.initial_adjust;
-+ poly_int64 sve_callee_adjust = frame.sve_callee_adjust;
-+ poly_int64 final_adjust = frame.final_adjust;
-
- if (known_eq (frame_size, 0))
- {
-@@ -9977,17 +9980,18 @@ aarch64_epilogue_uses (int regno)
- void
- aarch64_expand_prologue (void)
- {
-- poly_int64 frame_size = cfun->machine->frame.frame_size;
-- poly_int64 initial_adjust = cfun->machine->frame.initial_adjust;
-- HOST_WIDE_INT callee_adjust = cfun->machine->frame.callee_adjust;
-- poly_int64 final_adjust = cfun->machine->frame.final_adjust;
-- poly_int64 callee_offset = cfun->machine->frame.callee_offset;
-- poly_int64 sve_callee_adjust = cfun->machine->frame.sve_callee_adjust;
-+ aarch64_frame &frame = cfun->machine->frame;
-+ poly_int64 frame_size = frame.frame_size;
-+ poly_int64 initial_adjust = frame.initial_adjust;
-+ HOST_WIDE_INT callee_adjust = frame.callee_adjust;
-+ poly_int64 final_adjust = frame.final_adjust;
-+ poly_int64 callee_offset = frame.callee_offset;
-+ poly_int64 sve_callee_adjust = frame.sve_callee_adjust;
- poly_int64 below_hard_fp_saved_regs_size
-- = cfun->machine->frame.below_hard_fp_saved_regs_size;
-- unsigned reg1 = cfun->machine->frame.wb_push_candidate1;
-- unsigned reg2 = cfun->machine->frame.wb_push_candidate2;
-- bool emit_frame_chain = cfun->machine->frame.emit_frame_chain;
-+ = frame.below_hard_fp_saved_regs_size;
-+ unsigned reg1 = frame.wb_push_candidate1;
-+ unsigned reg2 = frame.wb_push_candidate2;
-+ bool emit_frame_chain = frame.emit_frame_chain;
- rtx_insn *insn;
-
- if (flag_stack_clash_protection && known_eq (callee_adjust, 0))
-@@ -10018,7 +10022,7 @@ aarch64_expand_prologue (void)
- }
-
- /* Push return address to shadow call stack. */
-- if (cfun->machine->frame.is_scs_enabled)
-+ if (frame.is_scs_enabled)
- emit_insn (gen_scs_push ());
-
- if (flag_stack_usage_info)
-@@ -10057,7 +10061,7 @@ aarch64_expand_prologue (void)
-
- /* The offset of the frame chain record (if any) from the current SP. */
- poly_int64 chain_offset = (initial_adjust + callee_adjust
-- - cfun->machine->frame.hard_fp_offset);
-+ - frame.hard_fp_offset);
- gcc_assert (known_ge (chain_offset, 0));
-
- /* The offset of the bottom of the save area from the current SP. */
-@@ -10160,16 +10164,17 @@ aarch64_use_return_insn_p (void)
- void
- aarch64_expand_epilogue (bool for_sibcall)
- {
-- poly_int64 initial_adjust = cfun->machine->frame.initial_adjust;
-- HOST_WIDE_INT callee_adjust = cfun->machine->frame.callee_adjust;
-- poly_int64 final_adjust = cfun->machine->frame.final_adjust;
-- poly_int64 callee_offset = cfun->machine->frame.callee_offset;
-- poly_int64 sve_callee_adjust = cfun->machine->frame.sve_callee_adjust;
-+ aarch64_frame &frame = cfun->machine->frame;
-+ poly_int64 initial_adjust = frame.initial_adjust;
-+ HOST_WIDE_INT callee_adjust = frame.callee_adjust;
-+ poly_int64 final_adjust = frame.final_adjust;
-+ poly_int64 callee_offset = frame.callee_offset;
-+ poly_int64 sve_callee_adjust = frame.sve_callee_adjust;
- poly_int64 below_hard_fp_saved_regs_size
-- = cfun->machine->frame.below_hard_fp_saved_regs_size;
-- unsigned reg1 = cfun->machine->frame.wb_pop_candidate1;
-- unsigned reg2 = cfun->machine->frame.wb_pop_candidate2;
-- unsigned int last_gpr = (cfun->machine->frame.is_scs_enabled
-+ = frame.below_hard_fp_saved_regs_size;
-+ unsigned reg1 = frame.wb_pop_candidate1;
-+ unsigned reg2 = frame.wb_pop_candidate2;
-+ unsigned int last_gpr = (frame.is_scs_enabled
- ? R29_REGNUM : R30_REGNUM);
- rtx cfi_ops = NULL;
- rtx_insn *insn;
-@@ -10203,7 +10208,7 @@ aarch64_expand_epilogue (bool for_sibcall)
- /* We need to add memory barrier to prevent read from deallocated stack. */
- bool need_barrier_p
- = maybe_ne (get_frame_size ()
-- + cfun->machine->frame.saved_varargs_size, 0);
-+ + frame.saved_varargs_size, 0);
-
- /* Emit a barrier to prevent loads from a deallocated stack. */
- if (maybe_gt (final_adjust, crtl->outgoing_args_size)
-@@ -10284,7 +10289,7 @@ aarch64_expand_epilogue (bool for_sibcall)
- }
-
- /* Pop return address from shadow call stack. */
-- if (cfun->machine->frame.is_scs_enabled)
-+ if (frame.is_scs_enabled)
- {
- machine_mode mode = aarch64_reg_save_mode (R30_REGNUM);
- rtx reg = gen_rtx_REG (mode, R30_REGNUM);
-@@ -12740,24 +12745,24 @@ aarch64_can_eliminate (const int from ATTRIBUTE_UNUSED, const int to)
- poly_int64
- aarch64_initial_elimination_offset (unsigned from, unsigned to)
- {
-+ aarch64_frame &frame = cfun->machine->frame;
-+
- if (to == HARD_FRAME_POINTER_REGNUM)
- {
- if (from == ARG_POINTER_REGNUM)
-- return cfun->machine->frame.hard_fp_offset;
-+ return frame.hard_fp_offset;
-
- if (from == FRAME_POINTER_REGNUM)
-- return cfun->machine->frame.hard_fp_offset
-- - cfun->machine->frame.locals_offset;
-+ return frame.hard_fp_offset - frame.locals_offset;
- }
-
- if (to == STACK_POINTER_REGNUM)
- {
- if (from == FRAME_POINTER_REGNUM)
-- return cfun->machine->frame.frame_size
-- - cfun->machine->frame.locals_offset;
-+ return frame.frame_size - frame.locals_offset;
- }
-
-- return cfun->machine->frame.frame_size;
-+ return frame.frame_size;
- }
-
-
---
-2.34.1
-
-
-From 89a9fa287706c5011f61926eaf65e7b996b963a3 Mon Sep 17 00:00:00 2001
-From: Richard Sandiford <richard.sandiford@arm.com>
-Date: Tue, 12 Sep 2023 16:07:12 +0100
-Subject: [PATCH 02/19] aarch64: Avoid a use of callee_offset
-
-When we emit the frame chain, i.e. when we reach Here in this statement
-of aarch64_expand_prologue:
-
- if (emit_frame_chain)
- {
- // Here
- ...
- }
-
-the stack is in one of two states:
-
-- We've allocated up to the frame chain, but no more.
-
-- We've allocated the whole frame, and the frame chain is within easy
- reach of the new SP.
-
-The offset of the frame chain from the current SP is available
-in aarch64_frame as callee_offset. It is also available as the
-chain_offset local variable, where the latter is calculated from other
-data. (However, chain_offset is not always equal to callee_offset when
-!emit_frame_chain, so chain_offset isn't redundant.)
-
-In c600df9a4060da3c6121ff4d0b93f179eafd69d1 I switched to using
-chain_offset for the initialisation of the hard frame pointer:
-
- aarch64_add_offset (Pmode, hard_frame_pointer_rtx,
-- stack_pointer_rtx, callee_offset,
-+ stack_pointer_rtx, chain_offset,
- tmp1_rtx, tmp0_rtx, frame_pointer_needed);
-
-But the later REG_CFA_ADJUST_CFA handling still used callee_offset.
-
-I think the difference is harmless, but it's more logical for the
-CFA note to be in sync, and it's more convenient for later patches
-if it uses chain_offset.
-
-gcc/
- * config/aarch64/aarch64.cc (aarch64_expand_prologue): Use
- chain_offset rather than callee_offset.
----
- gcc/config/aarch64/aarch64.cc | 4 +---
- 1 file changed, 1 insertion(+), 3 deletions(-)
-
-diff --git a/gcc/config/aarch64/aarch64.cc b/gcc/config/aarch64/aarch64.cc
-index 5d473d161d9..4f233c95140 100644
---- a/gcc/config/aarch64/aarch64.cc
-+++ b/gcc/config/aarch64/aarch64.cc
-@@ -9985,7 +9985,6 @@ aarch64_expand_prologue (void)
- poly_int64 initial_adjust = frame.initial_adjust;
- HOST_WIDE_INT callee_adjust = frame.callee_adjust;
- poly_int64 final_adjust = frame.final_adjust;
-- poly_int64 callee_offset = frame.callee_offset;
- poly_int64 sve_callee_adjust = frame.sve_callee_adjust;
- poly_int64 below_hard_fp_saved_regs_size
- = frame.below_hard_fp_saved_regs_size;
-@@ -10098,8 +10097,7 @@ aarch64_expand_prologue (void)
- implicit. */
- if (!find_reg_note (insn, REG_CFA_ADJUST_CFA, NULL_RTX))
- {
-- rtx src = plus_constant (Pmode, stack_pointer_rtx,
-- callee_offset);
-+ rtx src = plus_constant (Pmode, stack_pointer_rtx, chain_offset);
- add_reg_note (insn, REG_CFA_ADJUST_CFA,
- gen_rtx_SET (hard_frame_pointer_rtx, src));
- }
---
-2.34.1
-
-
-From b36a2a78040722dab6124366c5d6baf8eaf80aef Mon Sep 17 00:00:00 2001
-From: Richard Sandiford <richard.sandiford@arm.com>
-Date: Tue, 12 Sep 2023 16:07:13 +0100
-Subject: [PATCH 03/19] aarch64: Explicitly handle frames with no saved
- registers
-
-If a frame has no saved registers, it can be allocated in one go.
-There is no need to treat the areas below and above the saved
-registers as separate.
-
-And if we allocate the frame in one go, it should be allocated
-as the initial_adjust rather than the final_adjust. This allows the
-frame size to grow to guard_size - guard_used_by_caller before a stack
-probe is needed. (A frame with no register saves is necessarily a
-leaf frame.)
-
-This is a no-op as thing stand, since a leaf function will have
-no outgoing arguments, and so all the frame will be above where
-the saved registers normally go.
-
-gcc/
- * config/aarch64/aarch64.cc (aarch64_layout_frame): Explicitly
- allocate the frame in one go if there are no saved registers.
----
- gcc/config/aarch64/aarch64.cc | 8 +++++---
- 1 file changed, 5 insertions(+), 3 deletions(-)
-
-diff --git a/gcc/config/aarch64/aarch64.cc b/gcc/config/aarch64/aarch64.cc
-index 4f233c95140..37643041ffb 100644
---- a/gcc/config/aarch64/aarch64.cc
-+++ b/gcc/config/aarch64/aarch64.cc
-@@ -8639,9 +8639,11 @@ aarch64_layout_frame (void)
-
- HOST_WIDE_INT const_size, const_outgoing_args_size, const_fp_offset;
- HOST_WIDE_INT const_saved_regs_size;
-- if (frame.frame_size.is_constant (&const_size)
-- && const_size < max_push_offset
-- && known_eq (frame.hard_fp_offset, const_size))
-+ if (known_eq (frame.saved_regs_size, 0))
-+ frame.initial_adjust = frame.frame_size;
-+ else if (frame.frame_size.is_constant (&const_size)
-+ && const_size < max_push_offset
-+ && known_eq (frame.hard_fp_offset, const_size))
- {
- /* Simple, small frame with no outgoing arguments:
-
---
-2.34.1
-
-
-From ada2ab0093596be707f23a3466ac82cff59fcffe Mon Sep 17 00:00:00 2001
-From: Richard Sandiford <richard.sandiford@arm.com>
-Date: Tue, 12 Sep 2023 16:07:13 +0100
-Subject: [PATCH 04/19] aarch64: Add bytes_below_saved_regs to frame info
-
-The frame layout code currently hard-codes the assumption that
-the number of bytes below the saved registers is equal to the
-size of the outgoing arguments. This patch abstracts that
-value into a new field of aarch64_frame.
-
-gcc/
- * config/aarch64/aarch64.h (aarch64_frame::bytes_below_saved_regs): New
- field.
- * config/aarch64/aarch64.cc (aarch64_layout_frame): Initialize it,
- and use it instead of crtl->outgoing_args_size.
- (aarch64_get_separate_components): Use bytes_below_saved_regs instead
- of outgoing_args_size.
- (aarch64_process_components): Likewise.
----
- gcc/config/aarch64/aarch64.cc | 71 ++++++++++++++++++-----------------
- gcc/config/aarch64/aarch64.h | 5 +++
- 2 files changed, 41 insertions(+), 35 deletions(-)
-
-diff --git a/gcc/config/aarch64/aarch64.cc b/gcc/config/aarch64/aarch64.cc
-index 37643041ffb..dacc2b0e4dd 100644
---- a/gcc/config/aarch64/aarch64.cc
-+++ b/gcc/config/aarch64/aarch64.cc
-@@ -8478,6 +8478,8 @@ aarch64_layout_frame (void)
- gcc_assert (crtl->is_leaf
- || maybe_ne (frame.reg_offset[R30_REGNUM], SLOT_NOT_REQUIRED));
-
-+ frame.bytes_below_saved_regs = crtl->outgoing_args_size;
-+
- /* Now assign stack slots for the registers. Start with the predicate
- registers, since predicate LDR and STR have a relatively small
- offset range. These saves happen below the hard frame pointer. */
-@@ -8582,18 +8584,18 @@ aarch64_layout_frame (void)
-
- poly_int64 varargs_and_saved_regs_size = offset + frame.saved_varargs_size;
-
-- poly_int64 above_outgoing_args
-+ poly_int64 saved_regs_and_above
- = aligned_upper_bound (varargs_and_saved_regs_size
- + get_frame_size (),
- STACK_BOUNDARY / BITS_PER_UNIT);
-
- frame.hard_fp_offset
-- = above_outgoing_args - frame.below_hard_fp_saved_regs_size;
-+ = saved_regs_and_above - frame.below_hard_fp_saved_regs_size;
-
- /* Both these values are already aligned. */
-- gcc_assert (multiple_p (crtl->outgoing_args_size,
-+ gcc_assert (multiple_p (frame.bytes_below_saved_regs,
- STACK_BOUNDARY / BITS_PER_UNIT));
-- frame.frame_size = above_outgoing_args + crtl->outgoing_args_size;
-+ frame.frame_size = saved_regs_and_above + frame.bytes_below_saved_regs;
-
- frame.locals_offset = frame.saved_varargs_size;
-
-@@ -8637,7 +8639,7 @@ aarch64_layout_frame (void)
- else if (frame.wb_pop_candidate1 != INVALID_REGNUM)
- max_push_offset = 256;
-
-- HOST_WIDE_INT const_size, const_outgoing_args_size, const_fp_offset;
-+ HOST_WIDE_INT const_size, const_below_saved_regs, const_fp_offset;
- HOST_WIDE_INT const_saved_regs_size;
- if (known_eq (frame.saved_regs_size, 0))
- frame.initial_adjust = frame.frame_size;
-@@ -8645,31 +8647,31 @@ aarch64_layout_frame (void)
- && const_size < max_push_offset
- && known_eq (frame.hard_fp_offset, const_size))
- {
-- /* Simple, small frame with no outgoing arguments:
-+ /* Simple, small frame with no data below the saved registers.
-
- stp reg1, reg2, [sp, -frame_size]!
- stp reg3, reg4, [sp, 16] */
- frame.callee_adjust = const_size;
- }
-- else if (crtl->outgoing_args_size.is_constant (&const_outgoing_args_size)
-+ else if (frame.bytes_below_saved_regs.is_constant (&const_below_saved_regs)
- && frame.saved_regs_size.is_constant (&const_saved_regs_size)
-- && const_outgoing_args_size + const_saved_regs_size < 512
-- /* We could handle this case even with outgoing args, provided
-- that the number of args left us with valid offsets for all
-- predicate and vector save slots. It's such a rare case that
-- it hardly seems worth the effort though. */
-- && (!saves_below_hard_fp_p || const_outgoing_args_size == 0)
-+ && const_below_saved_regs + const_saved_regs_size < 512
-+ /* We could handle this case even with data below the saved
-+ registers, provided that that data left us with valid offsets
-+ for all predicate and vector save slots. It's such a rare
-+ case that it hardly seems worth the effort though. */
-+ && (!saves_below_hard_fp_p || const_below_saved_regs == 0)
- && !(cfun->calls_alloca
- && frame.hard_fp_offset.is_constant (&const_fp_offset)
- && const_fp_offset < max_push_offset))
- {
-- /* Frame with small outgoing arguments:
-+ /* Frame with small area below the saved registers:
-
- sub sp, sp, frame_size
-- stp reg1, reg2, [sp, outgoing_args_size]
-- stp reg3, reg4, [sp, outgoing_args_size + 16] */
-+ stp reg1, reg2, [sp, bytes_below_saved_regs]
-+ stp reg3, reg4, [sp, bytes_below_saved_regs + 16] */
- frame.initial_adjust = frame.frame_size;
-- frame.callee_offset = const_outgoing_args_size;
-+ frame.callee_offset = const_below_saved_regs;
- }
- else if (saves_below_hard_fp_p
- && known_eq (frame.saved_regs_size,
-@@ -8679,30 +8681,29 @@ aarch64_layout_frame (void)
-
- sub sp, sp, hard_fp_offset + below_hard_fp_saved_regs_size
- save SVE registers relative to SP
-- sub sp, sp, outgoing_args_size */
-+ sub sp, sp, bytes_below_saved_regs */
- frame.initial_adjust = (frame.hard_fp_offset
- + frame.below_hard_fp_saved_regs_size);
-- frame.final_adjust = crtl->outgoing_args_size;
-+ frame.final_adjust = frame.bytes_below_saved_regs;
- }
- else if (frame.hard_fp_offset.is_constant (&const_fp_offset)
- && const_fp_offset < max_push_offset)
- {
-- /* Frame with large outgoing arguments or SVE saves, but with
-- a small local area:
-+ /* Frame with large area below the saved registers, or with SVE saves,
-+ but with a small area above:
-
- stp reg1, reg2, [sp, -hard_fp_offset]!
- stp reg3, reg4, [sp, 16]
- [sub sp, sp, below_hard_fp_saved_regs_size]
- [save SVE registers relative to SP]
-- sub sp, sp, outgoing_args_size */
-+ sub sp, sp, bytes_below_saved_regs */
- frame.callee_adjust = const_fp_offset;
- frame.sve_callee_adjust = frame.below_hard_fp_saved_regs_size;
-- frame.final_adjust = crtl->outgoing_args_size;
-+ frame.final_adjust = frame.bytes_below_saved_regs;
- }
- else
- {
-- /* Frame with large local area and outgoing arguments or SVE saves,
-- using frame pointer:
-+ /* General case:
-
- sub sp, sp, hard_fp_offset
- stp x29, x30, [sp, 0]
-@@ -8710,10 +8711,10 @@ aarch64_layout_frame (void)
- stp reg3, reg4, [sp, 16]
- [sub sp, sp, below_hard_fp_saved_regs_size]
- [save SVE registers relative to SP]
-- sub sp, sp, outgoing_args_size */
-+ sub sp, sp, bytes_below_saved_regs */
- frame.initial_adjust = frame.hard_fp_offset;
- frame.sve_callee_adjust = frame.below_hard_fp_saved_regs_size;
-- frame.final_adjust = crtl->outgoing_args_size;
-+ frame.final_adjust = frame.bytes_below_saved_regs;
- }
-
- /* Make sure the individual adjustments add up to the full frame size. */
-@@ -9358,7 +9359,7 @@ aarch64_get_separate_components (void)
- if (frame_pointer_needed)
- offset -= frame.below_hard_fp_saved_regs_size;
- else
-- offset += crtl->outgoing_args_size;
-+ offset += frame.bytes_below_saved_regs;
-
- /* Check that we can access the stack slot of the register with one
- direct load with no adjustments needed. */
-@@ -9507,7 +9508,7 @@ aarch64_process_components (sbitmap components, bool prologue_p)
- if (frame_pointer_needed)
- offset -= frame.below_hard_fp_saved_regs_size;
- else
-- offset += crtl->outgoing_args_size;
-+ offset += frame.bytes_below_saved_regs;
-
- rtx addr = plus_constant (Pmode, ptr_reg, offset);
- rtx mem = gen_frame_mem (mode, addr);
-@@ -9561,7 +9562,7 @@ aarch64_process_components (sbitmap components, bool prologue_p)
- if (frame_pointer_needed)
- offset2 -= frame.below_hard_fp_saved_regs_size;
- else
-- offset2 += crtl->outgoing_args_size;
-+ offset2 += frame.bytes_below_saved_regs;
- rtx addr2 = plus_constant (Pmode, ptr_reg, offset2);
- rtx mem2 = gen_frame_mem (mode, addr2);
- rtx set2 = prologue_p ? gen_rtx_SET (mem2, reg2)
-@@ -9635,10 +9636,10 @@ aarch64_stack_clash_protection_alloca_probe_range (void)
- registers. If POLY_SIZE is not large enough to require a probe this function
- will only adjust the stack. When allocating the stack space
- FRAME_RELATED_P is then used to indicate if the allocation is frame related.
-- FINAL_ADJUSTMENT_P indicates whether we are allocating the outgoing
-- arguments. If we are then we ensure that any allocation larger than the ABI
-- defined buffer needs a probe so that the invariant of having a 1KB buffer is
-- maintained.
-+ FINAL_ADJUSTMENT_P indicates whether we are allocating the area below
-+ the saved registers. If we are then we ensure that any allocation
-+ larger than the ABI defined buffer needs a probe so that the
-+ invariant of having a 1KB buffer is maintained.
-
- We emit barriers after each stack adjustment to prevent optimizations from
- breaking the invariant that we never drop the stack more than a page. This
-@@ -9847,7 +9848,7 @@ aarch64_allocate_and_probe_stack_space (rtx temp1, rtx temp2,
- /* Handle any residuals. Residuals of at least MIN_PROBE_THRESHOLD have to
- be probed. This maintains the requirement that each page is probed at
- least once. For initial probing we probe only if the allocation is
-- more than GUARD_SIZE - buffer, and for the outgoing arguments we probe
-+ more than GUARD_SIZE - buffer, and below the saved registers we probe
- if the amount is larger than buffer. GUARD_SIZE - buffer + buffer ==
- GUARD_SIZE. This works that for any allocation that is large enough to
- trigger a probe here, we'll have at least one, and if they're not large
-diff --git a/gcc/config/aarch64/aarch64.h b/gcc/config/aarch64/aarch64.h
-index 73b09e20508..0b6faa3ddf1 100644
---- a/gcc/config/aarch64/aarch64.h
-+++ b/gcc/config/aarch64/aarch64.h
-@@ -777,6 +777,11 @@ struct GTY (()) aarch64_frame
- /* The size of the callee-save registers with a slot in REG_OFFSET. */
- poly_int64 saved_regs_size;
-
-+ /* The number of bytes between the bottom of the static frame (the bottom
-+ of the outgoing arguments) and the bottom of the register save area.
-+ This value is always a multiple of STACK_BOUNDARY. */
-+ poly_int64 bytes_below_saved_regs;
-+
- /* The size of the callee-save registers with a slot in REG_OFFSET that
- are saved below the hard frame pointer. */
- poly_int64 below_hard_fp_saved_regs_size;
---
-2.34.1
-
-
-From 82f6b3e1b596ef0f4e3ac3bb9c6e88fb4458f402 Mon Sep 17 00:00:00 2001
-From: Richard Sandiford <richard.sandiford@arm.com>
-Date: Tue, 12 Sep 2023 16:07:14 +0100
-Subject: [PATCH 05/19] aarch64: Add bytes_below_hard_fp to frame info
-
-Following on from the previous bytes_below_saved_regs patch, this one
-records the number of bytes that are below the hard frame pointer.
-This eventually replaces below_hard_fp_saved_regs_size.
-
-If a frame pointer is not needed, the epilogue adds final_adjust
-to the stack pointer before restoring registers:
-
- aarch64_add_sp (tmp1_rtx, tmp0_rtx, final_adjust, true);
-
-Therefore, if the epilogue needs to restore the stack pointer from
-the hard frame pointer, the directly corresponding offset is:
-
- -bytes_below_hard_fp + final_adjust
-
-i.e. go from the hard frame pointer to the bottom of the frame,
-then add the same amount as if we were using the stack pointer
-from the outset.
-
-gcc/
- * config/aarch64/aarch64.h (aarch64_frame::bytes_below_hard_fp): New
- field.
- * config/aarch64/aarch64.cc (aarch64_layout_frame): Initialize it.
- (aarch64_expand_epilogue): Use it instead of
- below_hard_fp_saved_regs_size.
----
- gcc/config/aarch64/aarch64.cc | 6 +++---
- gcc/config/aarch64/aarch64.h | 5 +++++
- 2 files changed, 8 insertions(+), 3 deletions(-)
-
-diff --git a/gcc/config/aarch64/aarch64.cc b/gcc/config/aarch64/aarch64.cc
-index dacc2b0e4dd..a3f7aabcc59 100644
---- a/gcc/config/aarch64/aarch64.cc
-+++ b/gcc/config/aarch64/aarch64.cc
-@@ -8530,6 +8530,7 @@ aarch64_layout_frame (void)
- of the callee save area. */
- bool saves_below_hard_fp_p = maybe_ne (offset, 0);
- frame.below_hard_fp_saved_regs_size = offset;
-+ frame.bytes_below_hard_fp = offset + frame.bytes_below_saved_regs;
- if (frame.emit_frame_chain)
- {
- /* FP and LR are placed in the linkage record. */
-@@ -10171,8 +10172,7 @@ aarch64_expand_epilogue (bool for_sibcall)
- poly_int64 final_adjust = frame.final_adjust;
- poly_int64 callee_offset = frame.callee_offset;
- poly_int64 sve_callee_adjust = frame.sve_callee_adjust;
-- poly_int64 below_hard_fp_saved_regs_size
-- = frame.below_hard_fp_saved_regs_size;
-+ poly_int64 bytes_below_hard_fp = frame.bytes_below_hard_fp;
- unsigned reg1 = frame.wb_pop_candidate1;
- unsigned reg2 = frame.wb_pop_candidate2;
- unsigned int last_gpr = (frame.is_scs_enabled
-@@ -10230,7 +10230,7 @@ aarch64_expand_epilogue (bool for_sibcall)
- is restored on the instruction doing the writeback. */
- aarch64_add_offset (Pmode, stack_pointer_rtx,
- hard_frame_pointer_rtx,
-- -callee_offset - below_hard_fp_saved_regs_size,
-+ -bytes_below_hard_fp + final_adjust,
- tmp1_rtx, tmp0_rtx, callee_adjust == 0);
- else
- /* The case where we need to re-use the register here is very rare, so
-diff --git a/gcc/config/aarch64/aarch64.h b/gcc/config/aarch64/aarch64.h
-index 0b6faa3ddf1..4263d29d29d 100644
---- a/gcc/config/aarch64/aarch64.h
-+++ b/gcc/config/aarch64/aarch64.h
-@@ -786,6 +786,11 @@ struct GTY (()) aarch64_frame
- are saved below the hard frame pointer. */
- poly_int64 below_hard_fp_saved_regs_size;
-
-+ /* The number of bytes between the bottom of the static frame (the bottom
-+ of the outgoing arguments) and the hard frame pointer. This value is
-+ always a multiple of STACK_BOUNDARY. */
-+ poly_int64 bytes_below_hard_fp;
-+
- /* Offset from the base of the frame (incomming SP) to the
- top of the locals area. This value is always a multiple of
- STACK_BOUNDARY. */
---
-2.34.1
-
-
-From 86fa43e9fe4a8bf954f2919f07cbe3646d1d1df3 Mon Sep 17 00:00:00 2001
-From: Richard Sandiford <richard.sandiford@arm.com>
-Date: Tue, 12 Sep 2023 16:07:14 +0100
-Subject: [PATCH 06/19] aarch64: Tweak aarch64_save/restore_callee_saves
-
-aarch64_save_callee_saves and aarch64_restore_callee_saves took
-a parameter called start_offset that gives the offset of the
-bottom of the saved register area from the current stack pointer.
-However, it's more convenient for later patches if we use the
-bottom of the entire frame as the reference point, rather than
-the bottom of the saved registers.
-
-Doing that removes the need for the callee_offset field.
-Other than that, this is not a win on its own. It only really
-makes sense in combination with the follow-on patches.
-
-gcc/
- * config/aarch64/aarch64.h (aarch64_frame::callee_offset): Delete.
- * config/aarch64/aarch64.cc (aarch64_layout_frame): Remove
- callee_offset handling.
- (aarch64_save_callee_saves): Replace the start_offset parameter
- with a bytes_below_sp parameter.
- (aarch64_restore_callee_saves): Likewise.
- (aarch64_expand_prologue): Update accordingly.
- (aarch64_expand_epilogue): Likewise.
----
- gcc/config/aarch64/aarch64.cc | 56 +++++++++++++++++------------------
- gcc/config/aarch64/aarch64.h | 4 ---
- 2 files changed, 28 insertions(+), 32 deletions(-)
-
-diff --git a/gcc/config/aarch64/aarch64.cc b/gcc/config/aarch64/aarch64.cc
-index a3f7aabcc59..46ae5cf7673 100644
---- a/gcc/config/aarch64/aarch64.cc
-+++ b/gcc/config/aarch64/aarch64.cc
-@@ -8604,7 +8604,6 @@ aarch64_layout_frame (void)
- frame.final_adjust = 0;
- frame.callee_adjust = 0;
- frame.sve_callee_adjust = 0;
-- frame.callee_offset = 0;
-
- frame.wb_pop_candidate1 = frame.wb_push_candidate1;
- frame.wb_pop_candidate2 = frame.wb_push_candidate2;
-@@ -8672,7 +8671,6 @@ aarch64_layout_frame (void)
- stp reg1, reg2, [sp, bytes_below_saved_regs]
- stp reg3, reg4, [sp, bytes_below_saved_regs + 16] */
- frame.initial_adjust = frame.frame_size;
-- frame.callee_offset = const_below_saved_regs;
- }
- else if (saves_below_hard_fp_p
- && known_eq (frame.saved_regs_size,
-@@ -9073,12 +9071,13 @@ aarch64_add_cfa_expression (rtx_insn *insn, rtx reg,
- }
-
- /* Emit code to save the callee-saved registers from register number START
-- to LIMIT to the stack at the location starting at offset START_OFFSET,
-- skipping any write-back candidates if SKIP_WB is true. HARD_FP_VALID_P
-- is true if the hard frame pointer has been set up. */
-+ to LIMIT to the stack. The stack pointer is currently BYTES_BELOW_SP
-+ bytes above the bottom of the static frame. Skip any write-back
-+ candidates if SKIP_WB is true. HARD_FP_VALID_P is true if the hard
-+ frame pointer has been set up. */
-
- static void
--aarch64_save_callee_saves (poly_int64 start_offset,
-+aarch64_save_callee_saves (poly_int64 bytes_below_sp,
- unsigned start, unsigned limit, bool skip_wb,
- bool hard_fp_valid_p)
- {
-@@ -9106,7 +9105,9 @@ aarch64_save_callee_saves (poly_int64 start_offset,
-
- machine_mode mode = aarch64_reg_save_mode (regno);
- reg = gen_rtx_REG (mode, regno);
-- offset = start_offset + frame.reg_offset[regno];
-+ offset = (frame.reg_offset[regno]
-+ + frame.bytes_below_saved_regs
-+ - bytes_below_sp);
- rtx base_rtx = stack_pointer_rtx;
- poly_int64 sp_offset = offset;
-
-@@ -9117,9 +9118,7 @@ aarch64_save_callee_saves (poly_int64 start_offset,
- else if (GP_REGNUM_P (regno)
- && (!offset.is_constant (&const_offset) || const_offset >= 512))
- {
-- gcc_assert (known_eq (start_offset, 0));
-- poly_int64 fp_offset
-- = frame.below_hard_fp_saved_regs_size;
-+ poly_int64 fp_offset = frame.bytes_below_hard_fp - bytes_below_sp;
- if (hard_fp_valid_p)
- base_rtx = hard_frame_pointer_rtx;
- else
-@@ -9183,12 +9182,13 @@ aarch64_save_callee_saves (poly_int64 start_offset,
- }
-
- /* Emit code to restore the callee registers from register number START
-- up to and including LIMIT. Restore from the stack offset START_OFFSET,
-- skipping any write-back candidates if SKIP_WB is true. Write the
-- appropriate REG_CFA_RESTORE notes into CFI_OPS. */
-+ up to and including LIMIT. The stack pointer is currently BYTES_BELOW_SP
-+ bytes above the bottom of the static frame. Skip any write-back
-+ candidates if SKIP_WB is true. Write the appropriate REG_CFA_RESTORE
-+ notes into CFI_OPS. */
-
- static void
--aarch64_restore_callee_saves (poly_int64 start_offset, unsigned start,
-+aarch64_restore_callee_saves (poly_int64 bytes_below_sp, unsigned start,
- unsigned limit, bool skip_wb, rtx *cfi_ops)
- {
- aarch64_frame &frame = cfun->machine->frame;
-@@ -9214,7 +9214,9 @@ aarch64_restore_callee_saves (poly_int64 start_offset, unsigned start,
-
- machine_mode mode = aarch64_reg_save_mode (regno);
- reg = gen_rtx_REG (mode, regno);
-- offset = start_offset + frame.reg_offset[regno];
-+ offset = (frame.reg_offset[regno]
-+ + frame.bytes_below_saved_regs
-+ - bytes_below_sp);
- rtx base_rtx = stack_pointer_rtx;
- if (mode == VNx2DImode && BYTES_BIG_ENDIAN)
- aarch64_adjust_sve_callee_save_base (mode, base_rtx, anchor_reg,
-@@ -9990,8 +9992,6 @@ aarch64_expand_prologue (void)
- HOST_WIDE_INT callee_adjust = frame.callee_adjust;
- poly_int64 final_adjust = frame.final_adjust;
- poly_int64 sve_callee_adjust = frame.sve_callee_adjust;
-- poly_int64 below_hard_fp_saved_regs_size
-- = frame.below_hard_fp_saved_regs_size;
- unsigned reg1 = frame.wb_push_candidate1;
- unsigned reg2 = frame.wb_push_candidate2;
- bool emit_frame_chain = frame.emit_frame_chain;
-@@ -10067,8 +10067,8 @@ aarch64_expand_prologue (void)
- - frame.hard_fp_offset);
- gcc_assert (known_ge (chain_offset, 0));
-
-- /* The offset of the bottom of the save area from the current SP. */
-- poly_int64 saved_regs_offset = chain_offset - below_hard_fp_saved_regs_size;
-+ /* The offset of the current SP from the bottom of the static frame. */
-+ poly_int64 bytes_below_sp = frame_size - initial_adjust - callee_adjust;
-
- if (emit_frame_chain)
- {
-@@ -10076,7 +10076,7 @@ aarch64_expand_prologue (void)
- {
- reg1 = R29_REGNUM;
- reg2 = R30_REGNUM;
-- aarch64_save_callee_saves (saved_regs_offset, reg1, reg2,
-+ aarch64_save_callee_saves (bytes_below_sp, reg1, reg2,
- false, false);
- }
- else
-@@ -10116,7 +10116,7 @@ aarch64_expand_prologue (void)
- emit_insn (gen_stack_tie (stack_pointer_rtx, hard_frame_pointer_rtx));
- }
-
-- aarch64_save_callee_saves (saved_regs_offset, R0_REGNUM, R30_REGNUM,
-+ aarch64_save_callee_saves (bytes_below_sp, R0_REGNUM, R30_REGNUM,
- callee_adjust != 0 || emit_frame_chain,
- emit_frame_chain);
- if (maybe_ne (sve_callee_adjust, 0))
-@@ -10126,16 +10126,17 @@ aarch64_expand_prologue (void)
- aarch64_allocate_and_probe_stack_space (tmp1_rtx, tmp0_rtx,
- sve_callee_adjust,
- !frame_pointer_needed, false);
-- saved_regs_offset += sve_callee_adjust;
-+ bytes_below_sp -= sve_callee_adjust;
- }
-- aarch64_save_callee_saves (saved_regs_offset, P0_REGNUM, P15_REGNUM,
-+ aarch64_save_callee_saves (bytes_below_sp, P0_REGNUM, P15_REGNUM,
- false, emit_frame_chain);
-- aarch64_save_callee_saves (saved_regs_offset, V0_REGNUM, V31_REGNUM,
-+ aarch64_save_callee_saves (bytes_below_sp, V0_REGNUM, V31_REGNUM,
- callee_adjust != 0 || emit_frame_chain,
- emit_frame_chain);
-
- /* We may need to probe the final adjustment if it is larger than the guard
- that is assumed by the called. */
-+ gcc_assert (known_eq (bytes_below_sp, final_adjust));
- aarch64_allocate_and_probe_stack_space (tmp1_rtx, tmp0_rtx, final_adjust,
- !frame_pointer_needed, true);
- }
-@@ -10170,7 +10171,6 @@ aarch64_expand_epilogue (bool for_sibcall)
- poly_int64 initial_adjust = frame.initial_adjust;
- HOST_WIDE_INT callee_adjust = frame.callee_adjust;
- poly_int64 final_adjust = frame.final_adjust;
-- poly_int64 callee_offset = frame.callee_offset;
- poly_int64 sve_callee_adjust = frame.sve_callee_adjust;
- poly_int64 bytes_below_hard_fp = frame.bytes_below_hard_fp;
- unsigned reg1 = frame.wb_pop_candidate1;
-@@ -10240,9 +10240,9 @@ aarch64_expand_epilogue (bool for_sibcall)
-
- /* Restore the vector registers before the predicate registers,
- so that we can use P4 as a temporary for big-endian SVE frames. */
-- aarch64_restore_callee_saves (callee_offset, V0_REGNUM, V31_REGNUM,
-+ aarch64_restore_callee_saves (final_adjust, V0_REGNUM, V31_REGNUM,
- callee_adjust != 0, &cfi_ops);
-- aarch64_restore_callee_saves (callee_offset, P0_REGNUM, P15_REGNUM,
-+ aarch64_restore_callee_saves (final_adjust, P0_REGNUM, P15_REGNUM,
- false, &cfi_ops);
- if (maybe_ne (sve_callee_adjust, 0))
- aarch64_add_sp (NULL_RTX, NULL_RTX, sve_callee_adjust, true);
-@@ -10250,7 +10250,7 @@ aarch64_expand_epilogue (bool for_sibcall)
- /* When shadow call stack is enabled, the scs_pop in the epilogue will
- restore x30, we don't need to restore x30 again in the traditional
- way. */
-- aarch64_restore_callee_saves (callee_offset - sve_callee_adjust,
-+ aarch64_restore_callee_saves (final_adjust + sve_callee_adjust,
- R0_REGNUM, last_gpr,
- callee_adjust != 0, &cfi_ops);
-
-diff --git a/gcc/config/aarch64/aarch64.h b/gcc/config/aarch64/aarch64.h
-index 4263d29d29d..fd820b1be4e 100644
---- a/gcc/config/aarch64/aarch64.h
-+++ b/gcc/config/aarch64/aarch64.h
-@@ -813,10 +813,6 @@ struct GTY (()) aarch64_frame
- It is zero when no push is used. */
- HOST_WIDE_INT callee_adjust;
-
-- /* The offset from SP to the callee-save registers after initial_adjust.
-- It may be non-zero if no push is used (ie. callee_adjust == 0). */
-- poly_int64 callee_offset;
--
- /* The size of the stack adjustment before saving or after restoring
- SVE registers. */
- poly_int64 sve_callee_adjust;
---
-2.34.1
-
-
-From 8ae9181426f2700c2e5a2909487fa630e6fa406b Mon Sep 17 00:00:00 2001
-From: Richard Sandiford <richard.sandiford@arm.com>
-Date: Tue, 12 Sep 2023 16:07:15 +0100
-Subject: [PATCH 07/19] aarch64: Only calculate chain_offset if there is a
- chain
-
-After previous patches, it is no longer necessary to calculate
-a chain_offset in cases where there is no chain record.
-
-gcc/
- * config/aarch64/aarch64.cc (aarch64_expand_prologue): Move the
- calculation of chain_offset into the emit_frame_chain block.
----
- gcc/config/aarch64/aarch64.cc | 10 +++++-----
- 1 file changed, 5 insertions(+), 5 deletions(-)
-
-diff --git a/gcc/config/aarch64/aarch64.cc b/gcc/config/aarch64/aarch64.cc
-index 46ae5cf7673..0e9b9717c08 100644
---- a/gcc/config/aarch64/aarch64.cc
-+++ b/gcc/config/aarch64/aarch64.cc
-@@ -10062,16 +10062,16 @@ aarch64_expand_prologue (void)
- if (callee_adjust != 0)
- aarch64_push_regs (reg1, reg2, callee_adjust);
-
-- /* The offset of the frame chain record (if any) from the current SP. */
-- poly_int64 chain_offset = (initial_adjust + callee_adjust
-- - frame.hard_fp_offset);
-- gcc_assert (known_ge (chain_offset, 0));
--
- /* The offset of the current SP from the bottom of the static frame. */
- poly_int64 bytes_below_sp = frame_size - initial_adjust - callee_adjust;
-
- if (emit_frame_chain)
- {
-+ /* The offset of the frame chain record (if any) from the current SP. */
-+ poly_int64 chain_offset = (initial_adjust + callee_adjust
-+ - frame.hard_fp_offset);
-+ gcc_assert (known_ge (chain_offset, 0));
-+
- if (callee_adjust == 0)
- {
- reg1 = R29_REGNUM;
---
-2.34.1
-
-
-From 375794feb614cee1f41b710b9cc1b6f25da6c1cb Mon Sep 17 00:00:00 2001
-From: Richard Sandiford <richard.sandiford@arm.com>
-Date: Tue, 12 Sep 2023 16:07:15 +0100
-Subject: [PATCH 08/19] aarch64: Rename locals_offset to bytes_above_locals
-MIME-Version: 1.0
-Content-Type: text/plain; charset=UTF-8
-Content-Transfer-Encoding: 8bit
-
-locals_offset was described as:
-
- /* Offset from the base of the frame (incomming SP) to the
- top of the locals area. This value is always a multiple of
- STACK_BOUNDARY. */
-
-This is implicitly an “upside down” view of the frame: the incoming
-SP is at offset 0, and anything N bytes below the incoming SP is at
-offset N (rather than -N).
-
-However, reg_offset instead uses a “right way up” view; that is,
-it views offsets in address terms. Something above X is at a
-positive offset from X and something below X is at a negative
-offset from X.
-
-Also, even on FRAME_GROWS_DOWNWARD targets like AArch64,
-target-independent code views offsets in address terms too:
-locals are allocated at negative offsets to virtual_stack_vars.
-
-It seems confusing to have *_offset fields of the same structure
-using different polarities like this. This patch tries to avoid
-that by renaming locals_offset to bytes_above_locals.
-
-gcc/
- * config/aarch64/aarch64.h (aarch64_frame::locals_offset): Rename to...
- (aarch64_frame::bytes_above_locals): ...this.
- * config/aarch64/aarch64.cc (aarch64_layout_frame)
- (aarch64_initial_elimination_offset): Update accordingly.
----
- gcc/config/aarch64/aarch64.cc | 6 +++---
- gcc/config/aarch64/aarch64.h | 6 +++---
- 2 files changed, 6 insertions(+), 6 deletions(-)
-
-diff --git a/gcc/config/aarch64/aarch64.cc b/gcc/config/aarch64/aarch64.cc
-index 0e9b9717c08..0a22f91520e 100644
---- a/gcc/config/aarch64/aarch64.cc
-+++ b/gcc/config/aarch64/aarch64.cc
-@@ -8598,7 +8598,7 @@ aarch64_layout_frame (void)
- STACK_BOUNDARY / BITS_PER_UNIT));
- frame.frame_size = saved_regs_and_above + frame.bytes_below_saved_regs;
-
-- frame.locals_offset = frame.saved_varargs_size;
-+ frame.bytes_above_locals = frame.saved_varargs_size;
-
- frame.initial_adjust = 0;
- frame.final_adjust = 0;
-@@ -12754,13 +12754,13 @@ aarch64_initial_elimination_offset (unsigned from, unsigned to)
- return frame.hard_fp_offset;
-
- if (from == FRAME_POINTER_REGNUM)
-- return frame.hard_fp_offset - frame.locals_offset;
-+ return frame.hard_fp_offset - frame.bytes_above_locals;
- }
-
- if (to == STACK_POINTER_REGNUM)
- {
- if (from == FRAME_POINTER_REGNUM)
-- return frame.frame_size - frame.locals_offset;
-+ return frame.frame_size - frame.bytes_above_locals;
- }
-
- return frame.frame_size;
-diff --git a/gcc/config/aarch64/aarch64.h b/gcc/config/aarch64/aarch64.h
-index fd820b1be4e..7ae12d13e2b 100644
---- a/gcc/config/aarch64/aarch64.h
-+++ b/gcc/config/aarch64/aarch64.h
-@@ -791,10 +791,10 @@ struct GTY (()) aarch64_frame
- always a multiple of STACK_BOUNDARY. */
- poly_int64 bytes_below_hard_fp;
-
-- /* Offset from the base of the frame (incomming SP) to the
-- top of the locals area. This value is always a multiple of
-+ /* The number of bytes between the top of the locals area and the top
-+ of the frame (the incomming SP). This value is always a multiple of
- STACK_BOUNDARY. */
-- poly_int64 locals_offset;
-+ poly_int64 bytes_above_locals;
-
- /* Offset from the base of the frame (incomming SP) to the
- hard_frame_pointer. This value is always a multiple of
---
-2.34.1
-
-
-From 1a9ea1c45c75615ffbfabe652b3598a1d7be2168 Mon Sep 17 00:00:00 2001
-From: Richard Sandiford <richard.sandiford@arm.com>
-Date: Tue, 12 Sep 2023 16:07:16 +0100
-Subject: [PATCH 09/19] aarch64: Rename hard_fp_offset to bytes_above_hard_fp
-MIME-Version: 1.0
-Content-Type: text/plain; charset=UTF-8
-Content-Transfer-Encoding: 8bit
-
-Similarly to the previous locals_offset patch, hard_fp_offset
-was described as:
-
- /* Offset from the base of the frame (incomming SP) to the
- hard_frame_pointer. This value is always a multiple of
- STACK_BOUNDARY. */
- poly_int64 hard_fp_offset;
-
-which again took an “upside-down” view: higher offsets meant lower
-addresses. This patch renames the field to bytes_above_hard_fp instead.
-
-gcc/
- * config/aarch64/aarch64.h (aarch64_frame::hard_fp_offset): Rename
- to...
- (aarch64_frame::bytes_above_hard_fp): ...this.
- * config/aarch64/aarch64.cc (aarch64_layout_frame)
- (aarch64_expand_prologue): Update accordingly.
- (aarch64_initial_elimination_offset): Likewise.
----
- gcc/config/aarch64/aarch64.cc | 26 +++++++++++++-------------
- gcc/config/aarch64/aarch64.h | 6 +++---
- 2 files changed, 16 insertions(+), 16 deletions(-)
-
-diff --git a/gcc/config/aarch64/aarch64.cc b/gcc/config/aarch64/aarch64.cc
-index 0a22f91520e..95499ae49ba 100644
---- a/gcc/config/aarch64/aarch64.cc
-+++ b/gcc/config/aarch64/aarch64.cc
-@@ -8590,7 +8590,7 @@ aarch64_layout_frame (void)
- + get_frame_size (),
- STACK_BOUNDARY / BITS_PER_UNIT);
-
-- frame.hard_fp_offset
-+ frame.bytes_above_hard_fp
- = saved_regs_and_above - frame.below_hard_fp_saved_regs_size;
-
- /* Both these values are already aligned. */
-@@ -8639,13 +8639,13 @@ aarch64_layout_frame (void)
- else if (frame.wb_pop_candidate1 != INVALID_REGNUM)
- max_push_offset = 256;
-
-- HOST_WIDE_INT const_size, const_below_saved_regs, const_fp_offset;
-+ HOST_WIDE_INT const_size, const_below_saved_regs, const_above_fp;
- HOST_WIDE_INT const_saved_regs_size;
- if (known_eq (frame.saved_regs_size, 0))
- frame.initial_adjust = frame.frame_size;
- else if (frame.frame_size.is_constant (&const_size)
- && const_size < max_push_offset
-- && known_eq (frame.hard_fp_offset, const_size))
-+ && known_eq (frame.bytes_above_hard_fp, const_size))
- {
- /* Simple, small frame with no data below the saved registers.
-
-@@ -8662,8 +8662,8 @@ aarch64_layout_frame (void)
- case that it hardly seems worth the effort though. */
- && (!saves_below_hard_fp_p || const_below_saved_regs == 0)
- && !(cfun->calls_alloca
-- && frame.hard_fp_offset.is_constant (&const_fp_offset)
-- && const_fp_offset < max_push_offset))
-+ && frame.bytes_above_hard_fp.is_constant (&const_above_fp)
-+ && const_above_fp < max_push_offset))
- {
- /* Frame with small area below the saved registers:
-
-@@ -8681,12 +8681,12 @@ aarch64_layout_frame (void)
- sub sp, sp, hard_fp_offset + below_hard_fp_saved_regs_size
- save SVE registers relative to SP
- sub sp, sp, bytes_below_saved_regs */
-- frame.initial_adjust = (frame.hard_fp_offset
-+ frame.initial_adjust = (frame.bytes_above_hard_fp
- + frame.below_hard_fp_saved_regs_size);
- frame.final_adjust = frame.bytes_below_saved_regs;
- }
-- else if (frame.hard_fp_offset.is_constant (&const_fp_offset)
-- && const_fp_offset < max_push_offset)
-+ else if (frame.bytes_above_hard_fp.is_constant (&const_above_fp)
-+ && const_above_fp < max_push_offset)
- {
- /* Frame with large area below the saved registers, or with SVE saves,
- but with a small area above:
-@@ -8696,7 +8696,7 @@ aarch64_layout_frame (void)
- [sub sp, sp, below_hard_fp_saved_regs_size]
- [save SVE registers relative to SP]
- sub sp, sp, bytes_below_saved_regs */
-- frame.callee_adjust = const_fp_offset;
-+ frame.callee_adjust = const_above_fp;
- frame.sve_callee_adjust = frame.below_hard_fp_saved_regs_size;
- frame.final_adjust = frame.bytes_below_saved_regs;
- }
-@@ -8711,7 +8711,7 @@ aarch64_layout_frame (void)
- [sub sp, sp, below_hard_fp_saved_regs_size]
- [save SVE registers relative to SP]
- sub sp, sp, bytes_below_saved_regs */
-- frame.initial_adjust = frame.hard_fp_offset;
-+ frame.initial_adjust = frame.bytes_above_hard_fp;
- frame.sve_callee_adjust = frame.below_hard_fp_saved_regs_size;
- frame.final_adjust = frame.bytes_below_saved_regs;
- }
-@@ -10069,7 +10069,7 @@ aarch64_expand_prologue (void)
- {
- /* The offset of the frame chain record (if any) from the current SP. */
- poly_int64 chain_offset = (initial_adjust + callee_adjust
-- - frame.hard_fp_offset);
-+ - frame.bytes_above_hard_fp);
- gcc_assert (known_ge (chain_offset, 0));
-
- if (callee_adjust == 0)
-@@ -12751,10 +12751,10 @@ aarch64_initial_elimination_offset (unsigned from, unsigned to)
- if (to == HARD_FRAME_POINTER_REGNUM)
- {
- if (from == ARG_POINTER_REGNUM)
-- return frame.hard_fp_offset;
-+ return frame.bytes_above_hard_fp;
-
- if (from == FRAME_POINTER_REGNUM)
-- return frame.hard_fp_offset - frame.bytes_above_locals;
-+ return frame.bytes_above_hard_fp - frame.bytes_above_locals;
- }
-
- if (to == STACK_POINTER_REGNUM)
-diff --git a/gcc/config/aarch64/aarch64.h b/gcc/config/aarch64/aarch64.h
-index 7ae12d13e2b..3808f49e9ca 100644
---- a/gcc/config/aarch64/aarch64.h
-+++ b/gcc/config/aarch64/aarch64.h
-@@ -796,10 +796,10 @@ struct GTY (()) aarch64_frame
- STACK_BOUNDARY. */
- poly_int64 bytes_above_locals;
-
-- /* Offset from the base of the frame (incomming SP) to the
-- hard_frame_pointer. This value is always a multiple of
-+ /* The number of bytes between the hard_frame_pointer and the top of
-+ the frame (the incomming SP). This value is always a multiple of
- STACK_BOUNDARY. */
-- poly_int64 hard_fp_offset;
-+ poly_int64 bytes_above_hard_fp;
-
- /* The size of the frame. This value is the offset from base of the
- frame (incomming SP) to the stack_pointer. This value is always
---
-2.34.1
-
-
-From d202ce1ecf60a36a3e1009917dd76109248ce9be Mon Sep 17 00:00:00 2001
-From: Richard Sandiford <richard.sandiford@arm.com>
-Date: Tue, 12 Sep 2023 16:07:16 +0100
-Subject: [PATCH 10/19] aarch64: Tweak frame_size comment
-MIME-Version: 1.0
-Content-Type: text/plain; charset=UTF-8
-Content-Transfer-Encoding: 8bit
-
-This patch fixes another case in which a value was described with
-an “upside-down” view.
-
-gcc/
- * config/aarch64/aarch64.h (aarch64_frame::frame_size): Tweak comment.
----
- gcc/config/aarch64/aarch64.h | 4 ++--
- 1 file changed, 2 insertions(+), 2 deletions(-)
-
-diff --git a/gcc/config/aarch64/aarch64.h b/gcc/config/aarch64/aarch64.h
-index 3808f49e9ca..108a5731b0d 100644
---- a/gcc/config/aarch64/aarch64.h
-+++ b/gcc/config/aarch64/aarch64.h
-@@ -801,8 +801,8 @@ struct GTY (()) aarch64_frame
- STACK_BOUNDARY. */
- poly_int64 bytes_above_hard_fp;
-
-- /* The size of the frame. This value is the offset from base of the
-- frame (incomming SP) to the stack_pointer. This value is always
-+ /* The size of the frame, i.e. the number of bytes between the bottom
-+ of the outgoing arguments and the incoming SP. This value is always
- a multiple of STACK_BOUNDARY. */
- poly_int64 frame_size;
-
---
-2.34.1
-
-
-From f2b585375205b0a1802d79c682ba33766ecd1f0f Mon Sep 17 00:00:00 2001
-From: Richard Sandiford <richard.sandiford@arm.com>
-Date: Tue, 12 Sep 2023 16:07:17 +0100
-Subject: [PATCH 11/19] aarch64: Measure reg_offset from the bottom of the
- frame
-
-reg_offset was measured from the bottom of the saved register area.
-This made perfect sense with the original layout, since the bottom
-of the saved register area was also the hard frame pointer address.
-It became slightly less obvious with SVE, since we save SVE
-registers below the hard frame pointer, but it still made sense.
-
-However, if we want to allow different frame layouts, it's more
-convenient and obvious to measure reg_offset from the bottom of
-the frame. After previous patches, it's also a slight simplification
-in its own right.
-
-gcc/
- * config/aarch64/aarch64.h (aarch64_frame): Add comment above
- reg_offset.
- * config/aarch64/aarch64.cc (aarch64_layout_frame): Walk offsets
- from the bottom of the frame, rather than the bottom of the saved
- register area. Measure reg_offset from the bottom of the frame
- rather than the bottom of the saved register area.
- (aarch64_save_callee_saves): Update accordingly.
- (aarch64_restore_callee_saves): Likewise.
- (aarch64_get_separate_components): Likewise.
- (aarch64_process_components): Likewise.
----
- gcc/config/aarch64/aarch64.cc | 53 ++++++++++++++++-------------------
- gcc/config/aarch64/aarch64.h | 3 ++
- 2 files changed, 27 insertions(+), 29 deletions(-)
-
-diff --git a/gcc/config/aarch64/aarch64.cc b/gcc/config/aarch64/aarch64.cc
-index 95499ae49ba..af99807ef8a 100644
---- a/gcc/config/aarch64/aarch64.cc
-+++ b/gcc/config/aarch64/aarch64.cc
-@@ -8400,7 +8400,6 @@ aarch64_needs_frame_chain (void)
- static void
- aarch64_layout_frame (void)
- {
-- poly_int64 offset = 0;
- int regno, last_fp_reg = INVALID_REGNUM;
- machine_mode vector_save_mode = aarch64_reg_save_mode (V8_REGNUM);
- poly_int64 vector_save_size = GET_MODE_SIZE (vector_save_mode);
-@@ -8478,7 +8477,9 @@ aarch64_layout_frame (void)
- gcc_assert (crtl->is_leaf
- || maybe_ne (frame.reg_offset[R30_REGNUM], SLOT_NOT_REQUIRED));
-
-- frame.bytes_below_saved_regs = crtl->outgoing_args_size;
-+ poly_int64 offset = crtl->outgoing_args_size;
-+ gcc_assert (multiple_p (offset, STACK_BOUNDARY / BITS_PER_UNIT));
-+ frame.bytes_below_saved_regs = offset;
-
- /* Now assign stack slots for the registers. Start with the predicate
- registers, since predicate LDR and STR have a relatively small
-@@ -8490,7 +8491,8 @@ aarch64_layout_frame (void)
- offset += BYTES_PER_SVE_PRED;
- }
-
-- if (maybe_ne (offset, 0))
-+ poly_int64 saved_prs_size = offset - frame.bytes_below_saved_regs;
-+ if (maybe_ne (saved_prs_size, 0))
- {
- /* If we have any vector registers to save above the predicate registers,
- the offset of the vector register save slots need to be a multiple
-@@ -8508,10 +8510,10 @@ aarch64_layout_frame (void)
- offset = aligned_upper_bound (offset, STACK_BOUNDARY / BITS_PER_UNIT);
- else
- {
-- if (known_le (offset, vector_save_size))
-- offset = vector_save_size;
-- else if (known_le (offset, vector_save_size * 2))
-- offset = vector_save_size * 2;
-+ if (known_le (saved_prs_size, vector_save_size))
-+ offset = frame.bytes_below_saved_regs + vector_save_size;
-+ else if (known_le (saved_prs_size, vector_save_size * 2))
-+ offset = frame.bytes_below_saved_regs + vector_save_size * 2;
- else
- gcc_unreachable ();
- }
-@@ -8528,9 +8530,10 @@ aarch64_layout_frame (void)
-
- /* OFFSET is now the offset of the hard frame pointer from the bottom
- of the callee save area. */
-- bool saves_below_hard_fp_p = maybe_ne (offset, 0);
-- frame.below_hard_fp_saved_regs_size = offset;
-- frame.bytes_below_hard_fp = offset + frame.bytes_below_saved_regs;
-+ frame.below_hard_fp_saved_regs_size = offset - frame.bytes_below_saved_regs;
-+ bool saves_below_hard_fp_p
-+ = maybe_ne (frame.below_hard_fp_saved_regs_size, 0);
-+ frame.bytes_below_hard_fp = offset;
- if (frame.emit_frame_chain)
- {
- /* FP and LR are placed in the linkage record. */
-@@ -8581,9 +8584,10 @@ aarch64_layout_frame (void)
-
- offset = aligned_upper_bound (offset, STACK_BOUNDARY / BITS_PER_UNIT);
-
-- frame.saved_regs_size = offset;
-+ frame.saved_regs_size = offset - frame.bytes_below_saved_regs;
-
-- poly_int64 varargs_and_saved_regs_size = offset + frame.saved_varargs_size;
-+ poly_int64 varargs_and_saved_regs_size
-+ = frame.saved_regs_size + frame.saved_varargs_size;
-
- poly_int64 saved_regs_and_above
- = aligned_upper_bound (varargs_and_saved_regs_size
-@@ -9105,9 +9109,7 @@ aarch64_save_callee_saves (poly_int64 bytes_below_sp,
-
- machine_mode mode = aarch64_reg_save_mode (regno);
- reg = gen_rtx_REG (mode, regno);
-- offset = (frame.reg_offset[regno]
-- + frame.bytes_below_saved_regs
-- - bytes_below_sp);
-+ offset = frame.reg_offset[regno] - bytes_below_sp;
- rtx base_rtx = stack_pointer_rtx;
- poly_int64 sp_offset = offset;
-
-@@ -9214,9 +9216,7 @@ aarch64_restore_callee_saves (poly_int64 bytes_below_sp, unsigned start,
-
- machine_mode mode = aarch64_reg_save_mode (regno);
- reg = gen_rtx_REG (mode, regno);
-- offset = (frame.reg_offset[regno]
-- + frame.bytes_below_saved_regs
-- - bytes_below_sp);
-+ offset = frame.reg_offset[regno] - bytes_below_sp;
- rtx base_rtx = stack_pointer_rtx;
- if (mode == VNx2DImode && BYTES_BIG_ENDIAN)
- aarch64_adjust_sve_callee_save_base (mode, base_rtx, anchor_reg,
-@@ -9355,14 +9355,12 @@ aarch64_get_separate_components (void)
- it as a stack probe for -fstack-clash-protection. */
- if (flag_stack_clash_protection
- && maybe_ne (frame.below_hard_fp_saved_regs_size, 0)
-- && known_eq (offset, 0))
-+ && known_eq (offset, frame.bytes_below_saved_regs))
- continue;
-
- /* Get the offset relative to the register we'll use. */
- if (frame_pointer_needed)
-- offset -= frame.below_hard_fp_saved_regs_size;
-- else
-- offset += frame.bytes_below_saved_regs;
-+ offset -= frame.bytes_below_hard_fp;
-
- /* Check that we can access the stack slot of the register with one
- direct load with no adjustments needed. */
-@@ -9509,9 +9507,7 @@ aarch64_process_components (sbitmap components, bool prologue_p)
- rtx reg = gen_rtx_REG (mode, regno);
- poly_int64 offset = frame.reg_offset[regno];
- if (frame_pointer_needed)
-- offset -= frame.below_hard_fp_saved_regs_size;
-- else
-- offset += frame.bytes_below_saved_regs;
-+ offset -= frame.bytes_below_hard_fp;
-
- rtx addr = plus_constant (Pmode, ptr_reg, offset);
- rtx mem = gen_frame_mem (mode, addr);
-@@ -9563,9 +9559,7 @@ aarch64_process_components (sbitmap components, bool prologue_p)
- /* REGNO2 can be saved/restored in a pair with REGNO. */
- rtx reg2 = gen_rtx_REG (mode, regno2);
- if (frame_pointer_needed)
-- offset2 -= frame.below_hard_fp_saved_regs_size;
-- else
-- offset2 += frame.bytes_below_saved_regs;
-+ offset2 -= frame.bytes_below_hard_fp;
- rtx addr2 = plus_constant (Pmode, ptr_reg, offset2);
- rtx mem2 = gen_frame_mem (mode, addr2);
- rtx set2 = prologue_p ? gen_rtx_SET (mem2, reg2)
-@@ -9681,7 +9675,8 @@ aarch64_allocate_and_probe_stack_space (rtx temp1, rtx temp2,
- if (final_adjustment_p
- && known_eq (frame.below_hard_fp_saved_regs_size, 0))
- {
-- poly_int64 lr_offset = frame.reg_offset[LR_REGNUM];
-+ poly_int64 lr_offset = (frame.reg_offset[LR_REGNUM]
-+ - frame.bytes_below_saved_regs);
- if (known_ge (lr_offset, 0))
- min_probe_threshold -= lr_offset.to_constant ();
- else
-diff --git a/gcc/config/aarch64/aarch64.h b/gcc/config/aarch64/aarch64.h
-index 108a5731b0d..c8becb098c8 100644
---- a/gcc/config/aarch64/aarch64.h
-+++ b/gcc/config/aarch64/aarch64.h
-@@ -766,6 +766,9 @@ extern enum aarch64_processor aarch64_tune;
- #ifdef HAVE_POLY_INT_H
- struct GTY (()) aarch64_frame
- {
-+ /* The offset from the bottom of the static frame (the bottom of the
-+ outgoing arguments) of each register save slot, or -2 if no save is
-+ needed. */
- poly_int64 reg_offset[LAST_SAVED_REGNUM + 1];
-
- /* The number of extra stack bytes taken up by register varargs.
---
-2.34.1
-
-
-From 79faabda181d0d9fd29a3cf5726ba65bdee945b5 Mon Sep 17 00:00:00 2001
-From: Richard Sandiford <richard.sandiford@arm.com>
-Date: Tue, 12 Sep 2023 16:07:17 +0100
-Subject: [PATCH 12/19] aarch64: Simplify top of frame allocation
-
-After previous patches, it no longer really makes sense to allocate
-the top of the frame in terms of varargs_and_saved_regs_size and
-saved_regs_and_above.
-
-gcc/
- * config/aarch64/aarch64.cc (aarch64_layout_frame): Simplify
- the allocation of the top of the frame.
----
- gcc/config/aarch64/aarch64.cc | 23 ++++++++---------------
- 1 file changed, 8 insertions(+), 15 deletions(-)
-
-diff --git a/gcc/config/aarch64/aarch64.cc b/gcc/config/aarch64/aarch64.cc
-index af99807ef8a..31b00094c2a 100644
---- a/gcc/config/aarch64/aarch64.cc
-+++ b/gcc/config/aarch64/aarch64.cc
-@@ -8586,23 +8586,16 @@ aarch64_layout_frame (void)
-
- frame.saved_regs_size = offset - frame.bytes_below_saved_regs;
-
-- poly_int64 varargs_and_saved_regs_size
-- = frame.saved_regs_size + frame.saved_varargs_size;
--
-- poly_int64 saved_regs_and_above
-- = aligned_upper_bound (varargs_and_saved_regs_size
-- + get_frame_size (),
-- STACK_BOUNDARY / BITS_PER_UNIT);
--
-- frame.bytes_above_hard_fp
-- = saved_regs_and_above - frame.below_hard_fp_saved_regs_size;
-+ offset += get_frame_size ();
-+ offset = aligned_upper_bound (offset, STACK_BOUNDARY / BITS_PER_UNIT);
-+ auto top_of_locals = offset;
-
-- /* Both these values are already aligned. */
-- gcc_assert (multiple_p (frame.bytes_below_saved_regs,
-- STACK_BOUNDARY / BITS_PER_UNIT));
-- frame.frame_size = saved_regs_and_above + frame.bytes_below_saved_regs;
-+ offset += frame.saved_varargs_size;
-+ gcc_assert (multiple_p (offset, STACK_BOUNDARY / BITS_PER_UNIT));
-+ frame.frame_size = offset;
-
-- frame.bytes_above_locals = frame.saved_varargs_size;
-+ frame.bytes_above_hard_fp = frame.frame_size - frame.bytes_below_hard_fp;
-+ frame.bytes_above_locals = frame.frame_size - top_of_locals;
-
- frame.initial_adjust = 0;
- frame.final_adjust = 0;
---
-2.34.1
-
-
-From 4e62049e403b141e6f916176160dac8cbd65fe47 Mon Sep 17 00:00:00 2001
-From: Richard Sandiford <richard.sandiford@arm.com>
-Date: Tue, 12 Sep 2023 16:07:18 +0100
-Subject: [PATCH 13/19] aarch64: Minor initial adjustment tweak
-
-This patch just changes a calculation of initial_adjust
-to one that makes it slightly more obvious that the total
-adjustment is frame.frame_size.
-
-gcc/
- * config/aarch64/aarch64.cc (aarch64_layout_frame): Tweak
- calculation of initial_adjust for frames in which all saves
- are SVE saves.
----
- gcc/config/aarch64/aarch64.cc | 5 ++---
- 1 file changed, 2 insertions(+), 3 deletions(-)
-
-diff --git a/gcc/config/aarch64/aarch64.cc b/gcc/config/aarch64/aarch64.cc
-index 31b00094c2a..1aa79da0673 100644
---- a/gcc/config/aarch64/aarch64.cc
-+++ b/gcc/config/aarch64/aarch64.cc
-@@ -8675,11 +8675,10 @@ aarch64_layout_frame (void)
- {
- /* Frame in which all saves are SVE saves:
-
-- sub sp, sp, hard_fp_offset + below_hard_fp_saved_regs_size
-+ sub sp, sp, frame_size - bytes_below_saved_regs
- save SVE registers relative to SP
- sub sp, sp, bytes_below_saved_regs */
-- frame.initial_adjust = (frame.bytes_above_hard_fp
-- + frame.below_hard_fp_saved_regs_size);
-+ frame.initial_adjust = frame.frame_size - frame.bytes_below_saved_regs;
- frame.final_adjust = frame.bytes_below_saved_regs;
- }
- else if (frame.bytes_above_hard_fp.is_constant (&const_above_fp)
---
-2.34.1
-
-
-From aaa1a0a5912d9e5d571e5f1c6f09ceac99544ab5 Mon Sep 17 00:00:00 2001
-From: Richard Sandiford <richard.sandiford@arm.com>
-Date: Tue, 12 Sep 2023 16:07:18 +0100
-Subject: [PATCH 14/19] aarch64: Tweak stack clash boundary condition
-
-The AArch64 ABI says that, when stack clash protection is used,
-there can be a maximum of 1KiB of unprobed space at sp on entry
-to a function. Therefore, we need to probe when allocating
->= guard_size - 1KiB of data (>= rather than >). This is what
-GCC does.
-
-If an allocation is exactly guard_size bytes, it is enough to allocate
-those bytes and probe once at offset 1024. It isn't possible to use a
-single probe at any other offset: higher would conmplicate later code,
-by leaving more unprobed space than usual, while lower would risk
-leaving an entire page unprobed. For simplicity, the code probes all
-allocations at offset 1024.
-
-Some register saves also act as probes. If we need to allocate
-more space below the last such register save probe, we need to
-probe the allocation if it is > 1KiB. Again, this allocation is
-then sometimes (but not always) probed at offset 1024. This sort of
-allocation is currently only used for outgoing arguments, which are
-rarely this big.
-
-However, the code also probed if this final outgoing-arguments
-allocation was == 1KiB, rather than just > 1KiB. This isn't
-necessary, since the register save then probes at offset 1024
-as required. Continuing to probe allocations of exactly 1KiB
-would complicate later patches.
-
-gcc/
- * config/aarch64/aarch64.cc (aarch64_allocate_and_probe_stack_space):
- Don't probe final allocations that are exactly 1KiB in size (after
- unprobed space above the final allocation has been deducted).
-
-gcc/testsuite/
- * gcc.target/aarch64/stack-check-prologue-17.c: New test.
----
- gcc/config/aarch64/aarch64.cc | 4 +-
- .../aarch64/stack-check-prologue-17.c | 55 +++++++++++++++++++
- 2 files changed, 58 insertions(+), 1 deletion(-)
- create mode 100644 gcc/testsuite/gcc.target/aarch64/stack-check-prologue-17.c
-
-diff --git a/gcc/config/aarch64/aarch64.cc b/gcc/config/aarch64/aarch64.cc
-index 1aa79da0673..5cad847977a 100644
---- a/gcc/config/aarch64/aarch64.cc
-+++ b/gcc/config/aarch64/aarch64.cc
-@@ -9648,9 +9648,11 @@ aarch64_allocate_and_probe_stack_space (rtx temp1, rtx temp2,
- HOST_WIDE_INT guard_size
- = 1 << param_stack_clash_protection_guard_size;
- HOST_WIDE_INT guard_used_by_caller = STACK_CLASH_CALLER_GUARD;
-+ HOST_WIDE_INT byte_sp_alignment = STACK_BOUNDARY / BITS_PER_UNIT;
-+ gcc_assert (multiple_p (poly_size, byte_sp_alignment));
- HOST_WIDE_INT min_probe_threshold
- = (final_adjustment_p
-- ? guard_used_by_caller
-+ ? guard_used_by_caller + byte_sp_alignment
- : guard_size - guard_used_by_caller);
- /* When doing the final adjustment for the outgoing arguments, take into
- account any unprobed space there is above the current SP. There are
-diff --git a/gcc/testsuite/gcc.target/aarch64/stack-check-prologue-17.c b/gcc/testsuite/gcc.target/aarch64/stack-check-prologue-17.c
-new file mode 100644
-index 00000000000..0d8a25d73a2
---- /dev/null
-+++ b/gcc/testsuite/gcc.target/aarch64/stack-check-prologue-17.c
-@@ -0,0 +1,55 @@
-+/* { dg-options "-O2 -fstack-clash-protection -fomit-frame-pointer --param stack-clash-protection-guard-size=12" } */
-+/* { dg-final { check-function-bodies "**" "" } } */
-+
-+void f(int, ...);
-+void g();
-+
-+/*
-+** test1:
-+** ...
-+** str x30, \[sp\]
-+** sub sp, sp, #1024
-+** cbnz w0, .*
-+** bl g
-+** ...
-+*/
-+int test1(int z) {
-+ __uint128_t x = 0;
-+ int y[0x400];
-+ if (z)
-+ {
-+ f(0, 0, 0, 0, 0, 0, 0, &y,
-+ x, x, x, x, x, x, x, x, x, x, x, x, x, x, x, x,
-+ x, x, x, x, x, x, x, x, x, x, x, x, x, x, x, x,
-+ x, x, x, x, x, x, x, x, x, x, x, x, x, x, x, x,
-+ x, x, x, x, x, x, x, x, x, x, x, x, x, x, x, x);
-+ }
-+ g();
-+ return 1;
-+}
-+
-+/*
-+** test2:
-+** ...
-+** str x30, \[sp\]
-+** sub sp, sp, #1040
-+** str xzr, \[sp\]
-+** cbnz w0, .*
-+** bl g
-+** ...
-+*/
-+int test2(int z) {
-+ __uint128_t x = 0;
-+ int y[0x400];
-+ if (z)
-+ {
-+ f(0, 0, 0, 0, 0, 0, 0, &y,
-+ x, x, x, x, x, x, x, x, x, x, x, x, x, x, x, x,
-+ x, x, x, x, x, x, x, x, x, x, x, x, x, x, x, x,
-+ x, x, x, x, x, x, x, x, x, x, x, x, x, x, x, x,
-+ x, x, x, x, x, x, x, x, x, x, x, x, x, x, x, x,
-+ x);
-+ }
-+ g();
-+ return 1;
-+}
---
-2.34.1
-
-
-From 8433953434a7b58c0923140d39eb3c5988c1d097 Mon Sep 17 00:00:00 2001
-From: Richard Sandiford <richard.sandiford@arm.com>
-Date: Tue, 12 Sep 2023 16:07:19 +0100
-Subject: [PATCH 15/19] aarch64: Put LR save probe in first 16 bytes
-
--fstack-clash-protection uses the save of LR as a probe for the next
-allocation. The next allocation could be:
-
-* another part of the static frame, e.g. when allocating SVE save slots
- or outgoing arguments
-
-* an alloca in the same function
-
-* an allocation made by a callee function
-
-However, when -fomit-frame-pointer is used, the LR save slot is placed
-above the other GPR save slots. It could therefore be up to 80 bytes
-above the base of the GPR save area (which is also the hard fp address).
-
-aarch64_allocate_and_probe_stack_space took this into account when
-deciding how much subsequent space could be allocated without needing
-a probe. However, it interacted badly with:
-
- /* If doing a small final adjustment, we always probe at offset 0.
- This is done to avoid issues when LR is not at position 0 or when
- the final adjustment is smaller than the probing offset. */
- else if (final_adjustment_p && rounded_size == 0)
- residual_probe_offset = 0;
-
-which forces any allocation that is smaller than the guard page size
-to be probed at offset 0 rather than the usual offset 1024. It was
-therefore possible to construct cases in which we had:
-
-* a probe using LR at SP + 80 bytes (or some other value >= 16)
-* an allocation of the guard page size - 16 bytes
-* a probe at SP + 0
-
-which allocates guard page size + 64 consecutive unprobed bytes.
-
-This patch requires the LR probe to be in the first 16 bytes of the
-save area when stack clash protection is active. Doing it
-unconditionally would cause code-quality regressions.
-
-Putting LR before other registers prevents push/pop allocation
-when shadow call stacks are enabled, since LR is restored
-separately from the other callee-saved registers.
-
-The new comment doesn't say that the probe register is required
-to be LR, since a later patch removes that restriction.
-
-gcc/
- * config/aarch64/aarch64.cc (aarch64_layout_frame): Ensure that
- the LR save slot is in the first 16 bytes of the register save area.
- Only form STP/LDP push/pop candidates if both registers are valid.
- (aarch64_allocate_and_probe_stack_space): Remove workaround for
- when LR was not in the first 16 bytes.
-
-gcc/testsuite/
- * gcc.target/aarch64/stack-check-prologue-18.c: New test.
- * gcc.target/aarch64/stack-check-prologue-19.c: Likewise.
- * gcc.target/aarch64/stack-check-prologue-20.c: Likewise.
----
- gcc/config/aarch64/aarch64.cc | 72 ++++++-------
- .../aarch64/stack-check-prologue-18.c | 100 ++++++++++++++++++
- .../aarch64/stack-check-prologue-19.c | 100 ++++++++++++++++++
- .../aarch64/stack-check-prologue-20.c | 3 +
- 4 files changed, 233 insertions(+), 42 deletions(-)
- create mode 100644 gcc/testsuite/gcc.target/aarch64/stack-check-prologue-18.c
- create mode 100644 gcc/testsuite/gcc.target/aarch64/stack-check-prologue-19.c
- create mode 100644 gcc/testsuite/gcc.target/aarch64/stack-check-prologue-20.c
-
-diff --git a/gcc/config/aarch64/aarch64.cc b/gcc/config/aarch64/aarch64.cc
-index 5cad847977a..a765f92329d 100644
---- a/gcc/config/aarch64/aarch64.cc
-+++ b/gcc/config/aarch64/aarch64.cc
-@@ -8534,26 +8534,34 @@ aarch64_layout_frame (void)
- bool saves_below_hard_fp_p
- = maybe_ne (frame.below_hard_fp_saved_regs_size, 0);
- frame.bytes_below_hard_fp = offset;
-+
-+ auto allocate_gpr_slot = [&](unsigned int regno)
-+ {
-+ frame.reg_offset[regno] = offset;
-+ if (frame.wb_push_candidate1 == INVALID_REGNUM)
-+ frame.wb_push_candidate1 = regno;
-+ else if (frame.wb_push_candidate2 == INVALID_REGNUM)
-+ frame.wb_push_candidate2 = regno;
-+ offset += UNITS_PER_WORD;
-+ };
-+
- if (frame.emit_frame_chain)
- {
- /* FP and LR are placed in the linkage record. */
-- frame.reg_offset[R29_REGNUM] = offset;
-- frame.wb_push_candidate1 = R29_REGNUM;
-- frame.reg_offset[R30_REGNUM] = offset + UNITS_PER_WORD;
-- frame.wb_push_candidate2 = R30_REGNUM;
-- offset += 2 * UNITS_PER_WORD;
-+ allocate_gpr_slot (R29_REGNUM);
-+ allocate_gpr_slot (R30_REGNUM);
- }
-+ else if (flag_stack_clash_protection
-+ && known_eq (frame.reg_offset[R30_REGNUM], SLOT_REQUIRED))
-+ /* Put the LR save slot first, since it makes a good choice of probe
-+ for stack clash purposes. The idea is that the link register usually
-+ has to be saved before a call anyway, and so we lose little by
-+ stopping it from being individually shrink-wrapped. */
-+ allocate_gpr_slot (R30_REGNUM);
-
- for (regno = R0_REGNUM; regno <= R30_REGNUM; regno++)
- if (known_eq (frame.reg_offset[regno], SLOT_REQUIRED))
-- {
-- frame.reg_offset[regno] = offset;
-- if (frame.wb_push_candidate1 == INVALID_REGNUM)
-- frame.wb_push_candidate1 = regno;
-- else if (frame.wb_push_candidate2 == INVALID_REGNUM)
-- frame.wb_push_candidate2 = regno;
-- offset += UNITS_PER_WORD;
-- }
-+ allocate_gpr_slot (regno);
-
- poly_int64 max_int_offset = offset;
- offset = aligned_upper_bound (offset, STACK_BOUNDARY / BITS_PER_UNIT);
-@@ -8631,10 +8639,13 @@ aarch64_layout_frame (void)
- max_push_offset to 0, because no registers are popped at this time,
- so callee_adjust cannot be adjusted. */
- HOST_WIDE_INT max_push_offset = 0;
-- if (frame.wb_pop_candidate2 != INVALID_REGNUM)
-- max_push_offset = 512;
-- else if (frame.wb_pop_candidate1 != INVALID_REGNUM)
-- max_push_offset = 256;
-+ if (frame.wb_pop_candidate1 != INVALID_REGNUM)
-+ {
-+ if (frame.wb_pop_candidate2 != INVALID_REGNUM)
-+ max_push_offset = 512;
-+ else
-+ max_push_offset = 256;
-+ }
-
- HOST_WIDE_INT const_size, const_below_saved_regs, const_above_fp;
- HOST_WIDE_INT const_saved_regs_size;
-@@ -9654,29 +9665,6 @@ aarch64_allocate_and_probe_stack_space (rtx temp1, rtx temp2,
- = (final_adjustment_p
- ? guard_used_by_caller + byte_sp_alignment
- : guard_size - guard_used_by_caller);
-- /* When doing the final adjustment for the outgoing arguments, take into
-- account any unprobed space there is above the current SP. There are
-- two cases:
--
-- - When saving SVE registers below the hard frame pointer, we force
-- the lowest save to take place in the prologue before doing the final
-- adjustment (i.e. we don't allow the save to be shrink-wrapped).
-- This acts as a probe at SP, so there is no unprobed space.
--
-- - When there are no SVE register saves, we use the store of the link
-- register as a probe. We can't assume that LR was saved at position 0
-- though, so treat any space below it as unprobed. */
-- if (final_adjustment_p
-- && known_eq (frame.below_hard_fp_saved_regs_size, 0))
-- {
-- poly_int64 lr_offset = (frame.reg_offset[LR_REGNUM]
-- - frame.bytes_below_saved_regs);
-- if (known_ge (lr_offset, 0))
-- min_probe_threshold -= lr_offset.to_constant ();
-- else
-- gcc_assert (!flag_stack_clash_protection || known_eq (poly_size, 0));
-- }
--
- poly_int64 frame_size = frame.frame_size;
-
- /* We should always have a positive probe threshold. */
-@@ -9856,8 +9844,8 @@ aarch64_allocate_and_probe_stack_space (rtx temp1, rtx temp2,
- if (final_adjustment_p && rounded_size != 0)
- min_probe_threshold = 0;
- /* If doing a small final adjustment, we always probe at offset 0.
-- This is done to avoid issues when LR is not at position 0 or when
-- the final adjustment is smaller than the probing offset. */
-+ This is done to avoid issues when the final adjustment is smaller
-+ than the probing offset. */
- else if (final_adjustment_p && rounded_size == 0)
- residual_probe_offset = 0;
-
-diff --git a/gcc/testsuite/gcc.target/aarch64/stack-check-prologue-18.c b/gcc/testsuite/gcc.target/aarch64/stack-check-prologue-18.c
-new file mode 100644
-index 00000000000..82447d20fff
---- /dev/null
-+++ b/gcc/testsuite/gcc.target/aarch64/stack-check-prologue-18.c
-@@ -0,0 +1,100 @@
-+/* { dg-options "-O2 -fstack-clash-protection -fomit-frame-pointer --param stack-clash-protection-guard-size=12" } */
-+/* { dg-final { check-function-bodies "**" "" } } */
-+
-+void f(int, ...);
-+void g();
-+
-+/*
-+** test1:
-+** ...
-+** str x30, \[sp\]
-+** sub sp, sp, #4064
-+** str xzr, \[sp\]
-+** cbnz w0, .*
-+** bl g
-+** ...
-+** str x26, \[sp, #?4128\]
-+** ...
-+*/
-+int test1(int z) {
-+ __uint128_t x = 0;
-+ int y[0x400];
-+ if (z)
-+ {
-+ asm volatile ("" :::
-+ "x19", "x20", "x21", "x22", "x23", "x24", "x25", "x26");
-+ f(0, 0, 0, 0, 0, 0, 0, &y,
-+ x, x, x, x, x, x, x, x, x, x, x, x, x, x, x, x,
-+ x, x, x, x, x, x, x, x, x, x, x, x, x, x, x, x,
-+ x, x, x, x, x, x, x, x, x, x, x, x, x, x, x, x,
-+ x, x, x, x, x, x, x, x, x, x, x, x, x, x, x, x,
-+ x, x, x, x, x, x, x, x, x, x, x, x, x, x, x, x,
-+ x, x, x, x, x, x, x, x, x, x, x, x, x, x, x, x,
-+ x, x, x, x, x, x, x, x, x, x, x, x, x, x, x, x,
-+ x, x, x, x, x, x, x, x, x, x, x, x, x, x, x, x,
-+ x, x, x, x, x, x, x, x, x, x, x, x, x, x, x, x,
-+ x, x, x, x, x, x, x, x, x, x, x, x, x, x, x, x,
-+ x, x, x, x, x, x, x, x, x, x, x, x, x, x, x, x,
-+ x, x, x, x, x, x, x, x, x, x, x, x, x, x, x, x,
-+ x, x, x, x, x, x, x, x, x, x, x, x, x, x, x, x,
-+ x, x, x, x, x, x, x, x, x, x, x, x, x, x, x, x,
-+ x, x, x, x, x, x, x, x, x, x, x, x, x, x, x, x,
-+ x, x, x, x, x, x, x, x, x, x, x, x, x, x);
-+ }
-+ g();
-+ return 1;
-+}
-+
-+/*
-+** test2:
-+** ...
-+** str x30, \[sp\]
-+** sub sp, sp, #1040
-+** str xzr, \[sp\]
-+** cbnz w0, .*
-+** bl g
-+** ...
-+*/
-+int test2(int z) {
-+ __uint128_t x = 0;
-+ int y[0x400];
-+ if (z)
-+ {
-+ asm volatile ("" :::
-+ "x19", "x20", "x21", "x22", "x23", "x24", "x25", "x26");
-+ f(0, 0, 0, 0, 0, 0, 0, &y,
-+ x, x, x, x, x, x, x, x, x, x, x, x, x, x, x, x,
-+ x, x, x, x, x, x, x, x, x, x, x, x, x, x, x, x,
-+ x, x, x, x, x, x, x, x, x, x, x, x, x, x, x, x,
-+ x, x, x, x, x, x, x, x, x, x, x, x, x, x, x, x,
-+ x);
-+ }
-+ g();
-+ return 1;
-+}
-+
-+/*
-+** test3:
-+** ...
-+** str x30, \[sp\]
-+** sub sp, sp, #1024
-+** cbnz w0, .*
-+** bl g
-+** ...
-+*/
-+int test3(int z) {
-+ __uint128_t x = 0;
-+ int y[0x400];
-+ if (z)
-+ {
-+ asm volatile ("" :::
-+ "x19", "x20", "x21", "x22", "x23", "x24", "x25", "x26");
-+ f(0, 0, 0, 0, 0, 0, 0, &y,
-+ x, x, x, x, x, x, x, x, x, x, x, x, x, x, x, x,
-+ x, x, x, x, x, x, x, x, x, x, x, x, x, x, x, x,
-+ x, x, x, x, x, x, x, x, x, x, x, x, x, x, x, x,
-+ x, x, x, x, x, x, x, x, x, x, x, x, x, x, x, x);
-+ }
-+ g();
-+ return 1;
-+}
-diff --git a/gcc/testsuite/gcc.target/aarch64/stack-check-prologue-19.c b/gcc/testsuite/gcc.target/aarch64/stack-check-prologue-19.c
-new file mode 100644
-index 00000000000..73ac3e4e4eb
---- /dev/null
-+++ b/gcc/testsuite/gcc.target/aarch64/stack-check-prologue-19.c
-@@ -0,0 +1,100 @@
-+/* { dg-options "-O2 -fstack-clash-protection -fomit-frame-pointer --param stack-clash-protection-guard-size=12 -fsanitize=shadow-call-stack -ffixed-x18" } */
-+/* { dg-final { check-function-bodies "**" "" } } */
-+
-+void f(int, ...);
-+void g();
-+
-+/*
-+** test1:
-+** ...
-+** str x30, \[sp\]
-+** sub sp, sp, #4064
-+** str xzr, \[sp\]
-+** cbnz w0, .*
-+** bl g
-+** ...
-+** str x26, \[sp, #?4128\]
-+** ...
-+*/
-+int test1(int z) {
-+ __uint128_t x = 0;
-+ int y[0x400];
-+ if (z)
-+ {
-+ asm volatile ("" :::
-+ "x19", "x20", "x21", "x22", "x23", "x24", "x25", "x26");
-+ f(0, 0, 0, 0, 0, 0, 0, &y,
-+ x, x, x, x, x, x, x, x, x, x, x, x, x, x, x, x,
-+ x, x, x, x, x, x, x, x, x, x, x, x, x, x, x, x,
-+ x, x, x, x, x, x, x, x, x, x, x, x, x, x, x, x,
-+ x, x, x, x, x, x, x, x, x, x, x, x, x, x, x, x,
-+ x, x, x, x, x, x, x, x, x, x, x, x, x, x, x, x,
-+ x, x, x, x, x, x, x, x, x, x, x, x, x, x, x, x,
-+ x, x, x, x, x, x, x, x, x, x, x, x, x, x, x, x,
-+ x, x, x, x, x, x, x, x, x, x, x, x, x, x, x, x,
-+ x, x, x, x, x, x, x, x, x, x, x, x, x, x, x, x,
-+ x, x, x, x, x, x, x, x, x, x, x, x, x, x, x, x,
-+ x, x, x, x, x, x, x, x, x, x, x, x, x, x, x, x,
-+ x, x, x, x, x, x, x, x, x, x, x, x, x, x, x, x,
-+ x, x, x, x, x, x, x, x, x, x, x, x, x, x, x, x,
-+ x, x, x, x, x, x, x, x, x, x, x, x, x, x, x, x,
-+ x, x, x, x, x, x, x, x, x, x, x, x, x, x, x, x,
-+ x, x, x, x, x, x, x, x, x, x, x, x, x, x);
-+ }
-+ g();
-+ return 1;
-+}
-+
-+/*
-+** test2:
-+** ...
-+** str x30, \[sp\]
-+** sub sp, sp, #1040
-+** str xzr, \[sp\]
-+** cbnz w0, .*
-+** bl g
-+** ...
-+*/
-+int test2(int z) {
-+ __uint128_t x = 0;
-+ int y[0x400];
-+ if (z)
-+ {
-+ asm volatile ("" :::
-+ "x19", "x20", "x21", "x22", "x23", "x24", "x25", "x26");
-+ f(0, 0, 0, 0, 0, 0, 0, &y,
-+ x, x, x, x, x, x, x, x, x, x, x, x, x, x, x, x,
-+ x, x, x, x, x, x, x, x, x, x, x, x, x, x, x, x,
-+ x, x, x, x, x, x, x, x, x, x, x, x, x, x, x, x,
-+ x, x, x, x, x, x, x, x, x, x, x, x, x, x, x, x,
-+ x);
-+ }
-+ g();
-+ return 1;
-+}
-+
-+/*
-+** test3:
-+** ...
-+** str x30, \[sp\]
-+** sub sp, sp, #1024
-+** cbnz w0, .*
-+** bl g
-+** ...
-+*/
-+int test3(int z) {
-+ __uint128_t x = 0;
-+ int y[0x400];
-+ if (z)
-+ {
-+ asm volatile ("" :::
-+ "x19", "x20", "x21", "x22", "x23", "x24", "x25", "x26");
-+ f(0, 0, 0, 0, 0, 0, 0, &y,
-+ x, x, x, x, x, x, x, x, x, x, x, x, x, x, x, x,
-+ x, x, x, x, x, x, x, x, x, x, x, x, x, x, x, x,
-+ x, x, x, x, x, x, x, x, x, x, x, x, x, x, x, x,
-+ x, x, x, x, x, x, x, x, x, x, x, x, x, x, x, x);
-+ }
-+ g();
-+ return 1;
-+}
-diff --git a/gcc/testsuite/gcc.target/aarch64/stack-check-prologue-20.c b/gcc/testsuite/gcc.target/aarch64/stack-check-prologue-20.c
-new file mode 100644
-index 00000000000..690aae8dfd5
---- /dev/null
-+++ b/gcc/testsuite/gcc.target/aarch64/stack-check-prologue-20.c
-@@ -0,0 +1,3 @@
-+/* { dg-options "-O2 -fstack-protector-all -fstack-clash-protection -fomit-frame-pointer --param stack-clash-protection-guard-size=12 -fsanitize=shadow-call-stack -ffixed-x18" } */
-+
-+#include "stack-check-prologue-19.c"
---
-2.34.1
-
-
-From eea1759073e09dd1aefbc9a881601ab1eebfdd18 Mon Sep 17 00:00:00 2001
-From: Richard Sandiford <richard.sandiford@arm.com>
-Date: Tue, 12 Sep 2023 16:07:19 +0100
-Subject: [PATCH 16/19] aarch64: Simplify probe of final frame allocation
-
-Previous patches ensured that the final frame allocation only needs
-a probe when the size is strictly greater than 1KiB. It's therefore
-safe to use the normal 1024 probe offset in all cases.
-
-The main motivation for doing this is to simplify the code and
-remove the number of special cases.
-
-gcc/
- * config/aarch64/aarch64.cc (aarch64_allocate_and_probe_stack_space):
- Always probe the residual allocation at offset 1024, asserting
- that that is in range.
-
-gcc/testsuite/
- * gcc.target/aarch64/stack-check-prologue-17.c: Expect the probe
- to be at offset 1024 rather than offset 0.
- * gcc.target/aarch64/stack-check-prologue-18.c: Likewise.
- * gcc.target/aarch64/stack-check-prologue-19.c: Likewise.
----
- gcc/config/aarch64/aarch64.cc | 12 ++++--------
- .../gcc.target/aarch64/stack-check-prologue-17.c | 2 +-
- .../gcc.target/aarch64/stack-check-prologue-18.c | 4 ++--
- .../gcc.target/aarch64/stack-check-prologue-19.c | 4 ++--
- 4 files changed, 9 insertions(+), 13 deletions(-)
-
-diff --git a/gcc/config/aarch64/aarch64.cc b/gcc/config/aarch64/aarch64.cc
-index a765f92329d..37809a306f7 100644
---- a/gcc/config/aarch64/aarch64.cc
-+++ b/gcc/config/aarch64/aarch64.cc
-@@ -9838,16 +9838,12 @@ aarch64_allocate_and_probe_stack_space (rtx temp1, rtx temp2,
- are still safe. */
- if (residual)
- {
-- HOST_WIDE_INT residual_probe_offset = guard_used_by_caller;
-+ gcc_assert (guard_used_by_caller + byte_sp_alignment <= size);
-+
- /* If we're doing final adjustments, and we've done any full page
- allocations then any residual needs to be probed. */
- if (final_adjustment_p && rounded_size != 0)
- min_probe_threshold = 0;
-- /* If doing a small final adjustment, we always probe at offset 0.
-- This is done to avoid issues when the final adjustment is smaller
-- than the probing offset. */
-- else if (final_adjustment_p && rounded_size == 0)
-- residual_probe_offset = 0;
-
- aarch64_sub_sp (temp1, temp2, residual, frame_related_p);
- if (residual >= min_probe_threshold)
-@@ -9858,8 +9854,8 @@ aarch64_allocate_and_probe_stack_space (rtx temp1, rtx temp2,
- HOST_WIDE_INT_PRINT_DEC " bytes, probing will be required."
- "\n", residual);
-
-- emit_stack_probe (plus_constant (Pmode, stack_pointer_rtx,
-- residual_probe_offset));
-+ emit_stack_probe (plus_constant (Pmode, stack_pointer_rtx,
-+ guard_used_by_caller));
- emit_insn (gen_blockage ());
- }
- }
-diff --git a/gcc/testsuite/gcc.target/aarch64/stack-check-prologue-17.c b/gcc/testsuite/gcc.target/aarch64/stack-check-prologue-17.c
-index 0d8a25d73a2..f0ec1389771 100644
---- a/gcc/testsuite/gcc.target/aarch64/stack-check-prologue-17.c
-+++ b/gcc/testsuite/gcc.target/aarch64/stack-check-prologue-17.c
-@@ -33,7 +33,7 @@ int test1(int z) {
- ** ...
- ** str x30, \[sp\]
- ** sub sp, sp, #1040
--** str xzr, \[sp\]
-+** str xzr, \[sp, #?1024\]
- ** cbnz w0, .*
- ** bl g
- ** ...
-diff --git a/gcc/testsuite/gcc.target/aarch64/stack-check-prologue-18.c b/gcc/testsuite/gcc.target/aarch64/stack-check-prologue-18.c
-index 82447d20fff..6383bec5ebc 100644
---- a/gcc/testsuite/gcc.target/aarch64/stack-check-prologue-18.c
-+++ b/gcc/testsuite/gcc.target/aarch64/stack-check-prologue-18.c
-@@ -9,7 +9,7 @@ void g();
- ** ...
- ** str x30, \[sp\]
- ** sub sp, sp, #4064
--** str xzr, \[sp\]
-+** str xzr, \[sp, #?1024\]
- ** cbnz w0, .*
- ** bl g
- ** ...
-@@ -50,7 +50,7 @@ int test1(int z) {
- ** ...
- ** str x30, \[sp\]
- ** sub sp, sp, #1040
--** str xzr, \[sp\]
-+** str xzr, \[sp, #?1024\]
- ** cbnz w0, .*
- ** bl g
- ** ...
-diff --git a/gcc/testsuite/gcc.target/aarch64/stack-check-prologue-19.c b/gcc/testsuite/gcc.target/aarch64/stack-check-prologue-19.c
-index 73ac3e4e4eb..562039b5e9b 100644
---- a/gcc/testsuite/gcc.target/aarch64/stack-check-prologue-19.c
-+++ b/gcc/testsuite/gcc.target/aarch64/stack-check-prologue-19.c
-@@ -9,7 +9,7 @@ void g();
- ** ...
- ** str x30, \[sp\]
- ** sub sp, sp, #4064
--** str xzr, \[sp\]
-+** str xzr, \[sp, #?1024\]
- ** cbnz w0, .*
- ** bl g
- ** ...
-@@ -50,7 +50,7 @@ int test1(int z) {
- ** ...
- ** str x30, \[sp\]
- ** sub sp, sp, #1040
--** str xzr, \[sp\]
-+** str xzr, \[sp, #?1024\]
- ** cbnz w0, .*
- ** bl g
- ** ...
---
-2.34.1
-
-
-From 96d85187c3b9c9a7efc2fd698c3d452e80d8aa47 Mon Sep 17 00:00:00 2001
-From: Richard Sandiford <richard.sandiford@arm.com>
-Date: Tue, 12 Sep 2023 16:07:20 +0100
-Subject: [PATCH 17/19] aarch64: Explicitly record probe registers in frame
- info
-
-The stack frame is currently divided into three areas:
-
-A: the area above the hard frame pointer
-B: the SVE saves below the hard frame pointer
-C: the outgoing arguments
-
-If the stack frame is allocated in one chunk, the allocation needs a
-probe if the frame size is >= guard_size - 1KiB. In addition, if the
-function is not a leaf function, it must probe an address no more than
-1KiB above the outgoing SP. We ensured the second condition by
-
-(1) using single-chunk allocations for non-leaf functions only if
- the link register save slot is within 512 bytes of the bottom
- of the frame; and
-
-(2) using the link register save as a probe (meaning, for instance,
- that it can't be individually shrink wrapped)
-
-If instead the stack is allocated in multiple chunks, then:
-
-* an allocation involving only the outgoing arguments (C above) requires
- a probe if the allocation size is > 1KiB
-
-* any other allocation requires a probe if the allocation size
- is >= guard_size - 1KiB
-
-* second and subsequent allocations require the previous allocation
- to probe at the bottom of the allocated area, regardless of the size
- of that previous allocation
-
-The final point means that, unlike for single allocations,
-it can be necessary to have both a non-SVE register probe and
-an SVE register probe. For example:
-
-* allocate A, probe using a non-SVE register save
-* allocate B, probe using an SVE register save
-* allocate C
-
-The non-SVE register used in this case was again the link register.
-It was previously used even if the link register save slot was some
-bytes above the bottom of the non-SVE register saves, but an earlier
-patch avoided that by putting the link register save slot first.
-
-As a belt-and-braces fix, this patch explicitly records which
-probe registers we're using and allows the non-SVE probe to be
-whichever register comes first (as for SVE).
-
-The patch also avoids unnecessary probes in sve/pcs/stack_clash_3.c.
-
-gcc/
- * config/aarch64/aarch64.h (aarch64_frame::sve_save_and_probe)
- (aarch64_frame::hard_fp_save_and_probe): New fields.
- * config/aarch64/aarch64.cc (aarch64_layout_frame): Initialize them.
- Rather than asserting that a leaf function saves LR, instead assert
- that a leaf function saves something.
- (aarch64_get_separate_components): Prevent the chosen probe
- registers from being individually shrink-wrapped.
- (aarch64_allocate_and_probe_stack_space): Remove workaround for
- probe registers that aren't at the bottom of the previous allocation.
-
-gcc/testsuite/
- * gcc.target/aarch64/sve/pcs/stack_clash_3.c: Avoid redundant probes.
----
- gcc/config/aarch64/aarch64.cc | 68 +++++++++++++++----
- gcc/config/aarch64/aarch64.h | 8 +++
- .../aarch64/sve/pcs/stack_clash_3.c | 6 +-
- 3 files changed, 64 insertions(+), 18 deletions(-)
-
-diff --git a/gcc/config/aarch64/aarch64.cc b/gcc/config/aarch64/aarch64.cc
-index 37809a306f7..6c59c39a639 100644
---- a/gcc/config/aarch64/aarch64.cc
-+++ b/gcc/config/aarch64/aarch64.cc
-@@ -8471,15 +8471,11 @@ aarch64_layout_frame (void)
- && !crtl->abi->clobbers_full_reg_p (regno))
- frame.reg_offset[regno] = SLOT_REQUIRED;
-
-- /* With stack-clash, LR must be saved in non-leaf functions. The saving of
-- LR counts as an implicit probe which allows us to maintain the invariant
-- described in the comment at expand_prologue. */
-- gcc_assert (crtl->is_leaf
-- || maybe_ne (frame.reg_offset[R30_REGNUM], SLOT_NOT_REQUIRED));
-
- poly_int64 offset = crtl->outgoing_args_size;
- gcc_assert (multiple_p (offset, STACK_BOUNDARY / BITS_PER_UNIT));
- frame.bytes_below_saved_regs = offset;
-+ frame.sve_save_and_probe = INVALID_REGNUM;
-
- /* Now assign stack slots for the registers. Start with the predicate
- registers, since predicate LDR and STR have a relatively small
-@@ -8487,6 +8483,8 @@ aarch64_layout_frame (void)
- for (regno = P0_REGNUM; regno <= P15_REGNUM; regno++)
- if (known_eq (frame.reg_offset[regno], SLOT_REQUIRED))
- {
-+ if (frame.sve_save_and_probe == INVALID_REGNUM)
-+ frame.sve_save_and_probe = regno;
- frame.reg_offset[regno] = offset;
- offset += BYTES_PER_SVE_PRED;
- }
-@@ -8524,6 +8522,8 @@ aarch64_layout_frame (void)
- for (regno = V0_REGNUM; regno <= V31_REGNUM; regno++)
- if (known_eq (frame.reg_offset[regno], SLOT_REQUIRED))
- {
-+ if (frame.sve_save_and_probe == INVALID_REGNUM)
-+ frame.sve_save_and_probe = regno;
- frame.reg_offset[regno] = offset;
- offset += vector_save_size;
- }
-@@ -8533,10 +8533,18 @@ aarch64_layout_frame (void)
- frame.below_hard_fp_saved_regs_size = offset - frame.bytes_below_saved_regs;
- bool saves_below_hard_fp_p
- = maybe_ne (frame.below_hard_fp_saved_regs_size, 0);
-+ gcc_assert (!saves_below_hard_fp_p
-+ || (frame.sve_save_and_probe != INVALID_REGNUM
-+ && known_eq (frame.reg_offset[frame.sve_save_and_probe],
-+ frame.bytes_below_saved_regs)));
-+
- frame.bytes_below_hard_fp = offset;
-+ frame.hard_fp_save_and_probe = INVALID_REGNUM;
-
- auto allocate_gpr_slot = [&](unsigned int regno)
- {
-+ if (frame.hard_fp_save_and_probe == INVALID_REGNUM)
-+ frame.hard_fp_save_and_probe = regno;
- frame.reg_offset[regno] = offset;
- if (frame.wb_push_candidate1 == INVALID_REGNUM)
- frame.wb_push_candidate1 = regno;
-@@ -8570,6 +8578,8 @@ aarch64_layout_frame (void)
- for (regno = V0_REGNUM; regno <= V31_REGNUM; regno++)
- if (known_eq (frame.reg_offset[regno], SLOT_REQUIRED))
- {
-+ if (frame.hard_fp_save_and_probe == INVALID_REGNUM)
-+ frame.hard_fp_save_and_probe = regno;
- /* If there is an alignment gap between integer and fp callee-saves,
- allocate the last fp register to it if possible. */
- if (regno == last_fp_reg
-@@ -8593,6 +8603,17 @@ aarch64_layout_frame (void)
- offset = aligned_upper_bound (offset, STACK_BOUNDARY / BITS_PER_UNIT);
-
- frame.saved_regs_size = offset - frame.bytes_below_saved_regs;
-+ gcc_assert (known_eq (frame.saved_regs_size,
-+ frame.below_hard_fp_saved_regs_size)
-+ || (frame.hard_fp_save_and_probe != INVALID_REGNUM
-+ && known_eq (frame.reg_offset[frame.hard_fp_save_and_probe],
-+ frame.bytes_below_hard_fp)));
-+
-+ /* With stack-clash, a register must be saved in non-leaf functions.
-+ The saving of the bottommost register counts as an implicit probe,
-+ which allows us to maintain the invariant described in the comment
-+ at expand_prologue. */
-+ gcc_assert (crtl->is_leaf || maybe_ne (frame.saved_regs_size, 0));
-
- offset += get_frame_size ();
- offset = aligned_upper_bound (offset, STACK_BOUNDARY / BITS_PER_UNIT);
-@@ -8723,6 +8744,25 @@ aarch64_layout_frame (void)
- frame.final_adjust = frame.bytes_below_saved_regs;
- }
-
-+ /* The frame is allocated in pieces, with each non-final piece
-+ including a register save at offset 0 that acts as a probe for
-+ the following piece. In addition, the save of the bottommost register
-+ acts as a probe for callees and allocas. Roll back any probes that
-+ aren't needed.
-+
-+ A probe isn't needed if it is associated with the final allocation
-+ (including callees and allocas) that happens before the epilogue is
-+ executed. */
-+ if (crtl->is_leaf
-+ && !cfun->calls_alloca
-+ && known_eq (frame.final_adjust, 0))
-+ {
-+ if (maybe_ne (frame.sve_callee_adjust, 0))
-+ frame.sve_save_and_probe = INVALID_REGNUM;
-+ else
-+ frame.hard_fp_save_and_probe = INVALID_REGNUM;
-+ }
-+
- /* Make sure the individual adjustments add up to the full frame size. */
- gcc_assert (known_eq (frame.initial_adjust
- + frame.callee_adjust
-@@ -9354,13 +9394,6 @@ aarch64_get_separate_components (void)
-
- poly_int64 offset = frame.reg_offset[regno];
-
-- /* If the register is saved in the first SVE save slot, we use
-- it as a stack probe for -fstack-clash-protection. */
-- if (flag_stack_clash_protection
-- && maybe_ne (frame.below_hard_fp_saved_regs_size, 0)
-- && known_eq (offset, frame.bytes_below_saved_regs))
-- continue;
--
- /* Get the offset relative to the register we'll use. */
- if (frame_pointer_needed)
- offset -= frame.bytes_below_hard_fp;
-@@ -9395,6 +9428,13 @@ aarch64_get_separate_components (void)
-
- bitmap_clear_bit (components, LR_REGNUM);
- bitmap_clear_bit (components, SP_REGNUM);
-+ if (flag_stack_clash_protection)
-+ {
-+ if (frame.sve_save_and_probe != INVALID_REGNUM)
-+ bitmap_clear_bit (components, frame.sve_save_and_probe);
-+ if (frame.hard_fp_save_and_probe != INVALID_REGNUM)
-+ bitmap_clear_bit (components, frame.hard_fp_save_and_probe);
-+ }
-
- return components;
- }
-@@ -9931,8 +9971,8 @@ aarch64_epilogue_uses (int regno)
- When probing is needed, we emit a probe at the start of the prologue
- and every PARAM_STACK_CLASH_PROTECTION_GUARD_SIZE bytes thereafter.
-
-- We have to track how much space has been allocated and the only stores
-- to the stack we track as implicit probes are the FP/LR stores.
-+ We can also use register saves as probes. These are stored in
-+ sve_save_and_probe and hard_fp_save_and_probe.
-
- For outgoing arguments we probe if the size is larger than 1KB, such that
- the ABI specified buffer is maintained for the next callee.
-diff --git a/gcc/config/aarch64/aarch64.h b/gcc/config/aarch64/aarch64.h
-index c8becb098c8..fbfb73545ba 100644
---- a/gcc/config/aarch64/aarch64.h
-+++ b/gcc/config/aarch64/aarch64.h
-@@ -863,6 +863,14 @@ struct GTY (()) aarch64_frame
- This is the register they should use. */
- unsigned spare_pred_reg;
-
-+ /* An SVE register that is saved below the hard frame pointer and that acts
-+ as a probe for later allocations, or INVALID_REGNUM if none. */
-+ unsigned sve_save_and_probe;
-+
-+ /* A register that is saved at the hard frame pointer and that acts
-+ as a probe for later allocations, or INVALID_REGNUM if none. */
-+ unsigned hard_fp_save_and_probe;
-+
- bool laid_out;
-
- /* True if shadow call stack should be enabled for the current function. */
-diff --git a/gcc/testsuite/gcc.target/aarch64/sve/pcs/stack_clash_3.c b/gcc/testsuite/gcc.target/aarch64/sve/pcs/stack_clash_3.c
-index 3e01ec36c3a..3530a0d504b 100644
---- a/gcc/testsuite/gcc.target/aarch64/sve/pcs/stack_clash_3.c
-+++ b/gcc/testsuite/gcc.target/aarch64/sve/pcs/stack_clash_3.c
-@@ -11,11 +11,10 @@
- ** mov x11, sp
- ** ...
- ** sub sp, sp, x13
--** str p4, \[sp\]
- ** cbz w0, [^\n]*
-+** str p4, \[sp\]
- ** ...
- ** ptrue p0\.b, all
--** ldr p4, \[sp\]
- ** addvl sp, sp, #1
- ** ldr x24, \[sp\], 32
- ** ret
-@@ -39,13 +38,12 @@ test_1 (int n)
- ** mov x11, sp
- ** ...
- ** sub sp, sp, x13
--** str p4, \[sp\]
- ** cbz w0, [^\n]*
-+** str p4, \[sp\]
- ** str p5, \[sp, #1, mul vl\]
- ** str p6, \[sp, #2, mul vl\]
- ** ...
- ** ptrue p0\.b, all
--** ldr p4, \[sp\]
- ** addvl sp, sp, #1
- ** ldr x24, \[sp\], 32
- ** ret
---
-2.34.1
-
-
-From 56df065080950bb30dda9c260f71be54269bdda5 Mon Sep 17 00:00:00 2001
-From: Richard Sandiford <richard.sandiford@arm.com>
-Date: Tue, 12 Sep 2023 16:07:20 +0100
-Subject: [PATCH 18/19] aarch64: Remove below_hard_fp_saved_regs_size
-
-After previous patches, it's no longer necessary to store
-saved_regs_size and below_hard_fp_saved_regs_size in the frame info.
-All measurements instead use the top or bottom of the frame as
-reference points.
-
-gcc/
- * config/aarch64/aarch64.h (aarch64_frame::saved_regs_size)
- (aarch64_frame::below_hard_fp_saved_regs_size): Delete.
- * config/aarch64/aarch64.cc (aarch64_layout_frame): Update accordingly.
----
- gcc/config/aarch64/aarch64.cc | 45 ++++++++++++++++-------------------
- gcc/config/aarch64/aarch64.h | 7 ------
- 2 files changed, 21 insertions(+), 31 deletions(-)
-
-diff --git a/gcc/config/aarch64/aarch64.cc b/gcc/config/aarch64/aarch64.cc
-index 6c59c39a639..b95e805a8cc 100644
---- a/gcc/config/aarch64/aarch64.cc
-+++ b/gcc/config/aarch64/aarch64.cc
-@@ -8530,9 +8530,8 @@ aarch64_layout_frame (void)
-
- /* OFFSET is now the offset of the hard frame pointer from the bottom
- of the callee save area. */
-- frame.below_hard_fp_saved_regs_size = offset - frame.bytes_below_saved_regs;
-- bool saves_below_hard_fp_p
-- = maybe_ne (frame.below_hard_fp_saved_regs_size, 0);
-+ auto below_hard_fp_saved_regs_size = offset - frame.bytes_below_saved_regs;
-+ bool saves_below_hard_fp_p = maybe_ne (below_hard_fp_saved_regs_size, 0);
- gcc_assert (!saves_below_hard_fp_p
- || (frame.sve_save_and_probe != INVALID_REGNUM
- && known_eq (frame.reg_offset[frame.sve_save_and_probe],
-@@ -8602,9 +8601,8 @@ aarch64_layout_frame (void)
-
- offset = aligned_upper_bound (offset, STACK_BOUNDARY / BITS_PER_UNIT);
-
-- frame.saved_regs_size = offset - frame.bytes_below_saved_regs;
-- gcc_assert (known_eq (frame.saved_regs_size,
-- frame.below_hard_fp_saved_regs_size)
-+ auto saved_regs_size = offset - frame.bytes_below_saved_regs;
-+ gcc_assert (known_eq (saved_regs_size, below_hard_fp_saved_regs_size)
- || (frame.hard_fp_save_and_probe != INVALID_REGNUM
- && known_eq (frame.reg_offset[frame.hard_fp_save_and_probe],
- frame.bytes_below_hard_fp)));
-@@ -8613,7 +8611,7 @@ aarch64_layout_frame (void)
- The saving of the bottommost register counts as an implicit probe,
- which allows us to maintain the invariant described in the comment
- at expand_prologue. */
-- gcc_assert (crtl->is_leaf || maybe_ne (frame.saved_regs_size, 0));
-+ gcc_assert (crtl->is_leaf || maybe_ne (saved_regs_size, 0));
-
- offset += get_frame_size ();
- offset = aligned_upper_bound (offset, STACK_BOUNDARY / BITS_PER_UNIT);
-@@ -8670,7 +8668,7 @@ aarch64_layout_frame (void)
-
- HOST_WIDE_INT const_size, const_below_saved_regs, const_above_fp;
- HOST_WIDE_INT const_saved_regs_size;
-- if (known_eq (frame.saved_regs_size, 0))
-+ if (known_eq (saved_regs_size, 0))
- frame.initial_adjust = frame.frame_size;
- else if (frame.frame_size.is_constant (&const_size)
- && const_size < max_push_offset
-@@ -8683,7 +8681,7 @@ aarch64_layout_frame (void)
- frame.callee_adjust = const_size;
- }
- else if (frame.bytes_below_saved_regs.is_constant (&const_below_saved_regs)
-- && frame.saved_regs_size.is_constant (&const_saved_regs_size)
-+ && saved_regs_size.is_constant (&const_saved_regs_size)
- && const_below_saved_regs + const_saved_regs_size < 512
- /* We could handle this case even with data below the saved
- registers, provided that that data left us with valid offsets
-@@ -8702,8 +8700,7 @@ aarch64_layout_frame (void)
- frame.initial_adjust = frame.frame_size;
- }
- else if (saves_below_hard_fp_p
-- && known_eq (frame.saved_regs_size,
-- frame.below_hard_fp_saved_regs_size))
-+ && known_eq (saved_regs_size, below_hard_fp_saved_regs_size))
- {
- /* Frame in which all saves are SVE saves:
-
-@@ -8725,7 +8722,7 @@ aarch64_layout_frame (void)
- [save SVE registers relative to SP]
- sub sp, sp, bytes_below_saved_regs */
- frame.callee_adjust = const_above_fp;
-- frame.sve_callee_adjust = frame.below_hard_fp_saved_regs_size;
-+ frame.sve_callee_adjust = below_hard_fp_saved_regs_size;
- frame.final_adjust = frame.bytes_below_saved_regs;
- }
- else
-@@ -8740,7 +8737,7 @@ aarch64_layout_frame (void)
- [save SVE registers relative to SP]
- sub sp, sp, bytes_below_saved_regs */
- frame.initial_adjust = frame.bytes_above_hard_fp;
-- frame.sve_callee_adjust = frame.below_hard_fp_saved_regs_size;
-+ frame.sve_callee_adjust = below_hard_fp_saved_regs_size;
- frame.final_adjust = frame.bytes_below_saved_regs;
- }
-
-@@ -9936,17 +9933,17 @@ aarch64_epilogue_uses (int regno)
- | local variables | <-- frame_pointer_rtx
- | |
- +-------------------------------+
-- | padding | \
-- +-------------------------------+ |
-- | callee-saved registers | | frame.saved_regs_size
-- +-------------------------------+ |
-- | LR' | |
-- +-------------------------------+ |
-- | FP' | |
-- +-------------------------------+ |<- hard_frame_pointer_rtx (aligned)
-- | SVE vector registers | | \
-- +-------------------------------+ | | below_hard_fp_saved_regs_size
-- | SVE predicate registers | / /
-+ | padding |
-+ +-------------------------------+
-+ | callee-saved registers |
-+ +-------------------------------+
-+ | LR' |
-+ +-------------------------------+
-+ | FP' |
-+ +-------------------------------+ <-- hard_frame_pointer_rtx (aligned)
-+ | SVE vector registers |
-+ +-------------------------------+
-+ | SVE predicate registers |
- +-------------------------------+
- | dynamic allocation |
- +-------------------------------+
-diff --git a/gcc/config/aarch64/aarch64.h b/gcc/config/aarch64/aarch64.h
-index fbfb73545ba..cfeaf4657ab 100644
---- a/gcc/config/aarch64/aarch64.h
-+++ b/gcc/config/aarch64/aarch64.h
-@@ -777,18 +777,11 @@ struct GTY (()) aarch64_frame
- STACK_BOUNDARY. */
- HOST_WIDE_INT saved_varargs_size;
-
-- /* The size of the callee-save registers with a slot in REG_OFFSET. */
-- poly_int64 saved_regs_size;
--
- /* The number of bytes between the bottom of the static frame (the bottom
- of the outgoing arguments) and the bottom of the register save area.
- This value is always a multiple of STACK_BOUNDARY. */
- poly_int64 bytes_below_saved_regs;
-
-- /* The size of the callee-save registers with a slot in REG_OFFSET that
-- are saved below the hard frame pointer. */
-- poly_int64 below_hard_fp_saved_regs_size;
--
- /* The number of bytes between the bottom of the static frame (the bottom
- of the outgoing arguments) and the hard frame pointer. This value is
- always a multiple of STACK_BOUNDARY. */
---
-2.34.1
-
-
-From b96e66fd4ef3e36983969fb8cdd1956f551a074b Mon Sep 17 00:00:00 2001
-From: Richard Sandiford <richard.sandiford@arm.com>
-Date: Tue, 12 Sep 2023 16:07:21 +0100
-Subject: [PATCH 19/19] aarch64: Make stack smash canary protect saved
- registers
-
-AArch64 normally puts the saved registers near the bottom of the frame,
-immediately above any dynamic allocations. But this means that a
-stack-smash attack on those dynamic allocations could overwrite the
-saved registers without needing to reach as far as the stack smash
-canary.
-
-The same thing could also happen for variable-sized arguments that are
-passed by value, since those are allocated before a call and popped on
-return.
-
-This patch avoids that by putting the locals (and thus the canary) below
-the saved registers when stack smash protection is active.
-
-The patch fixes CVE-2023-4039.
-
-gcc/
- * config/aarch64/aarch64.cc (aarch64_save_regs_above_locals_p):
- New function.
- (aarch64_layout_frame): Use it to decide whether locals should
- go above or below the saved registers.
- (aarch64_expand_prologue): Update stack layout comment.
- Emit a stack tie after the final adjustment.
-
-gcc/testsuite/
- * gcc.target/aarch64/stack-protector-8.c: New test.
- * gcc.target/aarch64/stack-protector-9.c: Likewise.
----
- gcc/config/aarch64/aarch64.cc | 46 +++++++--
- .../gcc.target/aarch64/stack-protector-8.c | 95 +++++++++++++++++++
- .../gcc.target/aarch64/stack-protector-9.c | 33 +++++++
- 3 files changed, 168 insertions(+), 6 deletions(-)
- create mode 100644 gcc/testsuite/gcc.target/aarch64/stack-protector-8.c
- create mode 100644 gcc/testsuite/gcc.target/aarch64/stack-protector-9.c
-
-diff --git a/gcc/config/aarch64/aarch64.cc b/gcc/config/aarch64/aarch64.cc
-index b95e805a8cc..389c0e29353 100644
---- a/gcc/config/aarch64/aarch64.cc
-+++ b/gcc/config/aarch64/aarch64.cc
-@@ -8394,6 +8394,20 @@ aarch64_needs_frame_chain (void)
- return aarch64_use_frame_pointer;
- }
-
-+/* Return true if the current function should save registers above
-+ the locals area, rather than below it. */
-+
-+static bool
-+aarch64_save_regs_above_locals_p ()
-+{
-+ /* When using stack smash protection, make sure that the canary slot
-+ comes between the locals and the saved registers. Otherwise,
-+ it would be possible for a carefully sized smash attack to change
-+ the saved registers (particularly LR and FP) without reaching the
-+ canary. */
-+ return crtl->stack_protect_guard;
-+}
-+
- /* Mark the registers that need to be saved by the callee and calculate
- the size of the callee-saved registers area and frame record (both FP
- and LR may be omitted). */
-@@ -8405,6 +8419,7 @@ aarch64_layout_frame (void)
- poly_int64 vector_save_size = GET_MODE_SIZE (vector_save_mode);
- bool frame_related_fp_reg_p = false;
- aarch64_frame &frame = cfun->machine->frame;
-+ poly_int64 top_of_locals = -1;
-
- frame.emit_frame_chain = aarch64_needs_frame_chain ();
-
-@@ -8471,9 +8486,16 @@ aarch64_layout_frame (void)
- && !crtl->abi->clobbers_full_reg_p (regno))
- frame.reg_offset[regno] = SLOT_REQUIRED;
-
-+ bool regs_at_top_p = aarch64_save_regs_above_locals_p ();
-
- poly_int64 offset = crtl->outgoing_args_size;
- gcc_assert (multiple_p (offset, STACK_BOUNDARY / BITS_PER_UNIT));
-+ if (regs_at_top_p)
-+ {
-+ offset += get_frame_size ();
-+ offset = aligned_upper_bound (offset, STACK_BOUNDARY / BITS_PER_UNIT);
-+ top_of_locals = offset;
-+ }
- frame.bytes_below_saved_regs = offset;
- frame.sve_save_and_probe = INVALID_REGNUM;
-
-@@ -8613,15 +8635,18 @@ aarch64_layout_frame (void)
- at expand_prologue. */
- gcc_assert (crtl->is_leaf || maybe_ne (saved_regs_size, 0));
-
-- offset += get_frame_size ();
-- offset = aligned_upper_bound (offset, STACK_BOUNDARY / BITS_PER_UNIT);
-- auto top_of_locals = offset;
--
-+ if (!regs_at_top_p)
-+ {
-+ offset += get_frame_size ();
-+ offset = aligned_upper_bound (offset, STACK_BOUNDARY / BITS_PER_UNIT);
-+ top_of_locals = offset;
-+ }
- offset += frame.saved_varargs_size;
- gcc_assert (multiple_p (offset, STACK_BOUNDARY / BITS_PER_UNIT));
- frame.frame_size = offset;
-
- frame.bytes_above_hard_fp = frame.frame_size - frame.bytes_below_hard_fp;
-+ gcc_assert (known_ge (top_of_locals, 0));
- frame.bytes_above_locals = frame.frame_size - top_of_locals;
-
- frame.initial_adjust = 0;
-@@ -9930,10 +9955,10 @@ aarch64_epilogue_uses (int regno)
- | for register varargs |
- | |
- +-------------------------------+
-- | local variables | <-- frame_pointer_rtx
-+ | local variables (1) | <-- frame_pointer_rtx
- | |
- +-------------------------------+
-- | padding |
-+ | padding (1) |
- +-------------------------------+
- | callee-saved registers |
- +-------------------------------+
-@@ -9945,6 +9970,10 @@ aarch64_epilogue_uses (int regno)
- +-------------------------------+
- | SVE predicate registers |
- +-------------------------------+
-+ | local variables (2) |
-+ +-------------------------------+
-+ | padding (2) |
-+ +-------------------------------+
- | dynamic allocation |
- +-------------------------------+
- | padding |
-@@ -9954,6 +9983,9 @@ aarch64_epilogue_uses (int regno)
- +-------------------------------+
- | | <-- stack_pointer_rtx (aligned)
-
-+ The regions marked (1) and (2) are mutually exclusive. (2) is used
-+ when aarch64_save_regs_above_locals_p is true.
-+
- Dynamic stack allocations via alloca() decrease stack_pointer_rtx
- but leave frame_pointer_rtx and hard_frame_pointer_rtx
- unchanged.
-@@ -10149,6 +10181,8 @@ aarch64_expand_prologue (void)
- gcc_assert (known_eq (bytes_below_sp, final_adjust));
- aarch64_allocate_and_probe_stack_space (tmp1_rtx, tmp0_rtx, final_adjust,
- !frame_pointer_needed, true);
-+ if (emit_frame_chain && maybe_ne (final_adjust, 0))
-+ emit_insn (gen_stack_tie (stack_pointer_rtx, hard_frame_pointer_rtx));
- }
-
- /* Return TRUE if we can use a simple_return insn.
-diff --git a/gcc/testsuite/gcc.target/aarch64/stack-protector-8.c b/gcc/testsuite/gcc.target/aarch64/stack-protector-8.c
-new file mode 100644
-index 00000000000..e71d820e365
---- /dev/null
-+++ b/gcc/testsuite/gcc.target/aarch64/stack-protector-8.c
-@@ -0,0 +1,95 @@
-+/* { dg-options " -O -fstack-protector-strong -mstack-protector-guard=sysreg -mstack-protector-guard-reg=tpidr2_el0 -mstack-protector-guard-offset=16" } */
-+/* { dg-final { check-function-bodies "**" "" } } */
-+
-+void g(void *);
-+__SVBool_t *h(void *);
-+
-+/*
-+** test1:
-+** sub sp, sp, #288
-+** stp x29, x30, \[sp, #?272\]
-+** add x29, sp, #?272
-+** mrs (x[0-9]+), tpidr2_el0
-+** ldr (x[0-9]+), \[\1, #?16\]
-+** str \2, \[sp, #?264\]
-+** mov \2, #?0
-+** add x0, sp, #?8
-+** bl g
-+** ...
-+** mrs .*
-+** ...
-+** bne .*
-+** ...
-+** ldp x29, x30, \[sp, #?272\]
-+** add sp, sp, #?288
-+** ret
-+** bl __stack_chk_fail
-+*/
-+int test1() {
-+ int y[0x40];
-+ g(y);
-+ return 1;
-+}
-+
-+/*
-+** test2:
-+** stp x29, x30, \[sp, #?-16\]!
-+** mov x29, sp
-+** sub sp, sp, #1040
-+** mrs (x[0-9]+), tpidr2_el0
-+** ldr (x[0-9]+), \[\1, #?16\]
-+** str \2, \[sp, #?1032\]
-+** mov \2, #?0
-+** add x0, sp, #?8
-+** bl g
-+** ...
-+** mrs .*
-+** ...
-+** bne .*
-+** ...
-+** add sp, sp, #?1040
-+** ldp x29, x30, \[sp\], #?16
-+** ret
-+** bl __stack_chk_fail
-+*/
-+int test2() {
-+ int y[0x100];
-+ g(y);
-+ return 1;
-+}
-+
-+#pragma GCC target "+sve"
-+
-+/*
-+** test3:
-+** stp x29, x30, \[sp, #?-16\]!
-+** mov x29, sp
-+** addvl sp, sp, #-18
-+** ...
-+** str p4, \[sp\]
-+** ...
-+** sub sp, sp, #272
-+** mrs (x[0-9]+), tpidr2_el0
-+** ldr (x[0-9]+), \[\1, #?16\]
-+** str \2, \[sp, #?264\]
-+** mov \2, #?0
-+** add x0, sp, #?8
-+** bl h
-+** ...
-+** mrs .*
-+** ...
-+** bne .*
-+** ...
-+** add sp, sp, #?272
-+** ...
-+** ldr p4, \[sp\]
-+** ...
-+** addvl sp, sp, #18
-+** ldp x29, x30, \[sp\], #?16
-+** ret
-+** bl __stack_chk_fail
-+*/
-+__SVBool_t test3() {
-+ int y[0x40];
-+ return *h(y);
-+}
-diff --git a/gcc/testsuite/gcc.target/aarch64/stack-protector-9.c b/gcc/testsuite/gcc.target/aarch64/stack-protector-9.c
-new file mode 100644
-index 00000000000..58f322aa480
---- /dev/null
-+++ b/gcc/testsuite/gcc.target/aarch64/stack-protector-9.c
-@@ -0,0 +1,33 @@
-+/* { dg-options "-O2 -mcpu=neoverse-v1 -fstack-protector-all" } */
-+/* { dg-final { check-function-bodies "**" "" } } */
-+
-+/*
-+** main:
-+** ...
-+** stp x29, x30, \[sp, #?-[0-9]+\]!
-+** ...
-+** sub sp, sp, #[0-9]+
-+** ...
-+** str x[0-9]+, \[x29, #?-8\]
-+** ...
-+*/
-+int f(const char *);
-+void g(void *);
-+int main(int argc, char* argv[])
-+{
-+ int a;
-+ int b;
-+ char c[2+f(argv[1])];
-+ int d[0x100];
-+ char y;
-+
-+ y=42; a=4; b=10;
-+ c[0] = 'h'; c[1] = '\0';
-+
-+ c[f(argv[2])] = '\0';
-+
-+ __builtin_printf("%d %d\n%s\n", a, b, c);
-+ g(d);
-+
-+ return 0;
-+}
---
-2.34.1
-
diff --git a/meta/recipes-devtools/gcc/gcc_13.2.bb b/meta/recipes-devtools/gcc/gcc_14.1.bb
index 255fe552bd..255fe552bd 100644
--- a/meta/recipes-devtools/gcc/gcc_13.2.bb
+++ b/meta/recipes-devtools/gcc/gcc_14.1.bb
diff --git a/meta/recipes-devtools/gcc/libgcc-initial_13.2.bb b/meta/recipes-devtools/gcc/libgcc-initial_14.1.bb
index a259082b47..a259082b47 100644
--- a/meta/recipes-devtools/gcc/libgcc-initial_13.2.bb
+++ b/meta/recipes-devtools/gcc/libgcc-initial_14.1.bb
diff --git a/meta/recipes-devtools/gcc/libgcc_13.2.bb b/meta/recipes-devtools/gcc/libgcc_14.1.bb
index fdcd6cc0da..fdcd6cc0da 100644
--- a/meta/recipes-devtools/gcc/libgcc_13.2.bb
+++ b/meta/recipes-devtools/gcc/libgcc_14.1.bb
diff --git a/meta/recipes-devtools/gcc/libgfortran_13.2.bb b/meta/recipes-devtools/gcc/libgfortran_14.1.bb
index 71dd8b4bdc..71dd8b4bdc 100644
--- a/meta/recipes-devtools/gcc/libgfortran_13.2.bb
+++ b/meta/recipes-devtools/gcc/libgfortran_14.1.bb
diff --git a/meta/recipes-devtools/gdb/gdb.inc b/meta/recipes-devtools/gdb/gdb.inc
index 81ac441462..c2fbcb2ac6 100644
--- a/meta/recipes-devtools/gdb/gdb.inc
+++ b/meta/recipes-devtools/gdb/gdb.inc
@@ -10,7 +10,6 @@ SRC_URI = "${GNU_MIRROR}/gdb/gdb-${PV}.tar.xz \
file://0003-Dont-disable-libreadline.a-when-using-disable-static.patch \
file://0004-use-asm-sgidefs.h.patch \
file://0005-Change-order-of-CFLAGS.patch \
- file://0006-resolve-restrict-keyword-conflict.patch \
file://0007-Fix-invalid-sigprocmask-call.patch \
file://0008-Define-alignof-using-_Alignof-when-using-C11-or-newe.patch \
"
diff --git a/meta/recipes-devtools/gdb/gdb/0006-resolve-restrict-keyword-conflict.patch b/meta/recipes-devtools/gdb/gdb/0006-resolve-restrict-keyword-conflict.patch
deleted file mode 100644
index 45388c5ac5..0000000000
--- a/meta/recipes-devtools/gdb/gdb/0006-resolve-restrict-keyword-conflict.patch
+++ /dev/null
@@ -1,45 +0,0 @@
-From 477f1b2049c7f940b8e8fda4ac396cfe322b269f Mon Sep 17 00:00:00 2001
-From: Khem Raj <raj.khem@gmail.com>
-Date: Tue, 10 May 2016 08:47:05 -0700
-Subject: [PATCH] resolve restrict keyword conflict
-
-GCC detects that we call 'restrict' as param name in function
-signatures and complains since both params are called 'restrict'
-therefore we use __restrict to denote the C99 keywork
-
-Upstream-Status: Pending
-
-Signed-off-by: Khem Raj <raj.khem@gmail.com>
----
- gnulib/import/sys_time.in.h | 8 ++++----
- 1 file changed, 4 insertions(+), 4 deletions(-)
-
-diff --git a/gnulib/import/sys_time.in.h b/gnulib/import/sys_time.in.h
-index 87db1a88745..e6b98c7e467 100644
---- a/gnulib/import/sys_time.in.h
-+++ b/gnulib/import/sys_time.in.h
-@@ -93,20 +93,20 @@ struct timeval
- # define gettimeofday rpl_gettimeofday
- # endif
- _GL_FUNCDECL_RPL (gettimeofday, int,
-- (struct timeval *restrict, void *restrict)
-+ (struct timeval *__restrict, void *__restrict)
- _GL_ARG_NONNULL ((1)));
- _GL_CXXALIAS_RPL (gettimeofday, int,
-- (struct timeval *restrict, void *restrict));
-+ (struct timeval *__restrict, void *__restrict));
- # else
- # if !@HAVE_GETTIMEOFDAY@
- _GL_FUNCDECL_SYS (gettimeofday, int,
-- (struct timeval *restrict, void *restrict)
-+ (struct timeval *__restrict, void *__restrict)
- _GL_ARG_NONNULL ((1)));
- # endif
- /* Need to cast, because on glibc systems, by default, the second argument is
- struct timezone *. */
- _GL_CXXALIAS_SYS_CAST (gettimeofday, int,
-- (struct timeval *restrict, void *restrict));
-+ (struct timeval *__restrict, void *__restrict));
- # endif
- _GL_CXXALIASWARN (gettimeofday);
- # if defined __cplusplus && defined GNULIB_NAMESPACE
diff --git a/meta/recipes-devtools/git/git_2.44.0.bb b/meta/recipes-devtools/git/git_2.44.1.bb
index 90e555eba7..53d67eb40a 100644
--- a/meta/recipes-devtools/git/git_2.44.0.bb
+++ b/meta/recipes-devtools/git/git_2.44.1.bb
@@ -40,6 +40,7 @@ EXTRA_OECONF = "--with-perl=${STAGING_BINDIR_NATIVE}/perl-native/perl \
--without-iconv \
"
EXTRA_OECONF:append:class-nativesdk = " --with-gitconfig=/etc/gitconfig "
+EXTRA_OECONF:append:class-native = " --with-gitconfig=/etc/gitconfig "
# Needs brokensep as this doesn't use automake
inherit autotools-brokensep perlnative bash-completion manpages
@@ -163,4 +164,4 @@ EXTRA_OECONF += "ac_cv_snprintf_returns_bogus=no \
"
EXTRA_OEMAKE += "NO_GETTEXT=1"
-SRC_URI[tarball.sha256sum] = "f9e36f085458fe9688fbbe7846b8c4770b13d161fcd8953655f36b2b85f06b76"
+SRC_URI[tarball.sha256sum] = "118214bb8d7ba971a62741416e757562b8f5451cefc087a407e91857897c92cc"
diff --git a/meta/recipes-devtools/gnu-config/gnu-config_git.bb b/meta/recipes-devtools/gnu-config/gnu-config_git.bb
index f9d864b987..95a7d5485b 100644
--- a/meta/recipes-devtools/gnu-config/gnu-config_git.bb
+++ b/meta/recipes-devtools/gnu-config/gnu-config_git.bb
@@ -24,7 +24,7 @@ do_compile[noexec] = "1"
do_install () {
install -d ${D}${datadir}/gnu-config \
${D}${bindir}
- cat ${WORKDIR}/gnu-configize.in | \
+ cat ${UNPACKDIR}/gnu-configize.in | \
sed -e 's,@gnu-configdir@,${datadir}/gnu-config,g' \
-e 's,@autom4te_perllibdir@,${datadir}/autoconf,g' > ${D}${bindir}/gnu-configize
# In the native case we want the system perl as perl-native can't have built yet
diff --git a/meta/recipes-devtools/go/go-1.22.2.inc b/meta/recipes-devtools/go/go-1.22.3.inc
index b399207311..34703bc1fa 100644
--- a/meta/recipes-devtools/go/go-1.22.2.inc
+++ b/meta/recipes-devtools/go/go-1.22.3.inc
@@ -15,4 +15,4 @@ SRC_URI += "\
file://0008-src-cmd-dist-buildgo.go-do-not-hardcode-host-compile.patch \
file://0009-go-Filter-build-paths-on-staticly-linked-arches.patch \
"
-SRC_URI[main.sha256sum] = "374ea82b289ec738e968267cac59c7d5ff180f9492250254784b2044e90df5a9"
+SRC_URI[main.sha256sum] = "80648ef34f903193d72a59c0dff019f5f98ae0c9aa13ade0b0ecbff991a76f68"
diff --git a/meta/recipes-devtools/go/go-binary-native_1.22.2.bb b/meta/recipes-devtools/go/go-binary-native_1.22.3.bb
index 0f00509f03..b67d97608d 100644
--- a/meta/recipes-devtools/go/go-binary-native_1.22.2.bb
+++ b/meta/recipes-devtools/go/go-binary-native_1.22.3.bb
@@ -9,9 +9,9 @@ PROVIDES = "go-native"
# Checksums available at https://go.dev/dl/
SRC_URI = "https://dl.google.com/go/go${PV}.${BUILD_GOOS}-${BUILD_GOARCH}.tar.gz;name=go_${BUILD_GOTUPLE}"
-SRC_URI[go_linux_amd64.sha256sum] = "5901c52b7a78002aeff14a21f93e0f064f74ce1360fce51c6ee68cd471216a17"
-SRC_URI[go_linux_arm64.sha256sum] = "36e720b2d564980c162a48c7e97da2e407dfcc4239e1e58d98082dfa2486a0c1"
-SRC_URI[go_linux_ppc64le.sha256sum] = "251a8886c5113be6490bdbb955ddee98763b49c9b1bf4c8364c02d3b482dab00"
+SRC_URI[go_linux_amd64.sha256sum] = "8920ea521bad8f6b7bc377b4824982e011c19af27df88a815e3586ea895f1b36"
+SRC_URI[go_linux_arm64.sha256sum] = "6c33e52a5b26e7aa021b94475587fce80043a727a54ceb0eee2f9fc160646434"
+SRC_URI[go_linux_ppc64le.sha256sum] = "04b7b05283de30dd2da20bf3114b2e22cc727938aed3148babaf35cc951051ac"
UPSTREAM_CHECK_URI = "https://golang.org/dl/"
UPSTREAM_CHECK_REGEX = "go(?P<pver>\d+(\.\d+)+)\.linux"
diff --git a/meta/recipes-devtools/go/go-cross-canadian_1.22.2.bb b/meta/recipes-devtools/go/go-cross-canadian_1.22.3.bb
index 7ac9449e47..7ac9449e47 100644
--- a/meta/recipes-devtools/go/go-cross-canadian_1.22.2.bb
+++ b/meta/recipes-devtools/go/go-cross-canadian_1.22.3.bb
diff --git a/meta/recipes-devtools/go/go-cross_1.22.2.bb b/meta/recipes-devtools/go/go-cross_1.22.3.bb
index 80b5a03f6c..80b5a03f6c 100644
--- a/meta/recipes-devtools/go/go-cross_1.22.2.bb
+++ b/meta/recipes-devtools/go/go-cross_1.22.3.bb
diff --git a/meta/recipes-devtools/go/go-crosssdk_1.22.2.bb b/meta/recipes-devtools/go/go-crosssdk_1.22.3.bb
index 1857c8a577..1857c8a577 100644
--- a/meta/recipes-devtools/go/go-crosssdk_1.22.2.bb
+++ b/meta/recipes-devtools/go/go-crosssdk_1.22.3.bb
diff --git a/meta/recipes-devtools/go/go-native_1.22.2.bb b/meta/recipes-devtools/go/go-native_1.22.3.bb
index ddf25b2c9b..ddf25b2c9b 100644
--- a/meta/recipes-devtools/go/go-native_1.22.2.bb
+++ b/meta/recipes-devtools/go/go-native_1.22.3.bb
diff --git a/meta/recipes-devtools/go/go-runtime_1.22.2.bb b/meta/recipes-devtools/go/go-runtime_1.22.3.bb
index 63464a1501..63464a1501 100644
--- a/meta/recipes-devtools/go/go-runtime_1.22.2.bb
+++ b/meta/recipes-devtools/go/go-runtime_1.22.3.bb
diff --git a/meta/recipes-devtools/go/go_1.22.2.bb b/meta/recipes-devtools/go/go_1.22.3.bb
index 46f5fbc6be..46f5fbc6be 100644
--- a/meta/recipes-devtools/go/go_1.22.2.bb
+++ b/meta/recipes-devtools/go/go_1.22.3.bb
diff --git a/meta/recipes-devtools/icecc-create-env/icecc-create-env_0.1.bb b/meta/recipes-devtools/icecc-create-env/icecc-create-env_0.1.bb
index 1826c7a40e..dd1b257b10 100644
--- a/meta/recipes-devtools/icecc-create-env/icecc-create-env_0.1.bb
+++ b/meta/recipes-devtools/icecc-create-env/icecc-create-env_0.1.bb
@@ -26,11 +26,12 @@ ICECC_DISABLED = "1"
PATCHTOOL = "patch"
SRC_URI = "file://icecc-create-env"
-S = "${WORKDIR}"
+S = "${WORKDIR}/sources"
+UNPACKDIR = "${S}"
do_install() {
install -d ${D}/${bindir}
- install -m 0755 ${WORKDIR}/icecc-create-env ${D}/${bindir}
+ install -m 0755 ${S}/icecc-create-env ${D}/${bindir}
}
BBCLASSEXTEND = "native nativesdk"
diff --git a/meta/recipes-devtools/icecc-toolchain/nativesdk-icecc-toolchain_0.1.bb b/meta/recipes-devtools/icecc-toolchain/nativesdk-icecc-toolchain_0.1.bb
index 034a0047d7..d03d8adcb0 100644
--- a/meta/recipes-devtools/icecc-toolchain/nativesdk-icecc-toolchain_0.1.bb
+++ b/meta/recipes-devtools/icecc-toolchain/nativesdk-icecc-toolchain_0.1.bb
@@ -3,7 +3,7 @@
SUMMARY = "Generates Icecream toolchain for SDK"
DESCRIPTION = "${SUMMARY}"
LICENSE = "MIT"
-LIC_FILES_CHKSUM = "file://${WORKDIR}/icecc-env.sh;beginline=2;endline=20;md5=dd6b68c1efed8a9fb04e409b3b287d47"
+LIC_FILES_CHKSUM = "file://${UNPACKDIR}/icecc-env.sh;beginline=2;endline=20;md5=dd6b68c1efed8a9fb04e409b3b287d47"
INHIBIT_DEFAULT_DEPS = "1"
@@ -23,12 +23,12 @@ do_install() {
install -d ${D}${SDKPATHNATIVE}${datadir}/icecream/bin
install -d ${D}${SDKPATHNATIVE}/environment-setup.d/
- install -m 0644 ${WORKDIR}/icecc-env.sh ${D}${SDKPATHNATIVE}/environment-setup.d/
+ install -m 0644 ${UNPACKDIR}/icecc-env.sh ${D}${SDKPATHNATIVE}/environment-setup.d/
sed -i ${D}${SDKPATHNATIVE}/environment-setup.d/icecc-env.sh \
-e 's,@TOOLCHAIN_ENV@,${ENV_NAME},g'
install -d ${D}${SDKPATHNATIVE}/post-relocate-setup.d/
- install -m 0755 ${WORKDIR}/icecc-setup.sh ${D}${SDKPATHNATIVE}/post-relocate-setup.d/
+ install -m 0755 ${UNPACKDIR}/icecc-setup.sh ${D}${SDKPATHNATIVE}/post-relocate-setup.d/
sed -i ${D}${SDKPATHNATIVE}/post-relocate-setup.d/icecc-setup.sh \
-e 's,@TOOLCHAIN_ENV@,${ENV_NAME},g'
}
diff --git a/meta/recipes-devtools/libedit/libedit_20230828-3.1.bb b/meta/recipes-devtools/libedit/libedit_20240517-3.1.bb
index 1684b57d31..f8fa871ec9 100644
--- a/meta/recipes-devtools/libedit/libedit_20230828-3.1.bb
+++ b/meta/recipes-devtools/libedit/libedit_20240517-3.1.bb
@@ -13,7 +13,7 @@ inherit autotools
SRC_URI = "http://www.thrysoee.dk/editline/${BP}.tar.gz \
file://stdc-predef.patch \
"
-SRC_URI[sha256sum] = "4ee8182b6e569290e7d1f44f0f78dac8716b35f656b76528f699c69c98814dad"
+SRC_URI[sha256sum] = "3a489097bb4115495f3bd85ae782852b7097c556d9500088d74b6fa38dbd12ff"
BBCLASSEXTEND = "native nativesdk"
diff --git a/meta/recipes-devtools/llvm/llvm_git.bb b/meta/recipes-devtools/llvm/llvm_18.1.6.bb
index e7fa88b30e..189f5b1146 100644
--- a/meta/recipes-devtools/llvm/llvm_git.bb
+++ b/meta/recipes-devtools/llvm/llvm_18.1.6.bb
@@ -13,27 +13,26 @@ DEPENDS = "libffi libxml2 zlib zstd libedit ninja-native llvm-native"
RDEPENDS:${PN}:append:class-target = " ncurses-terminfo"
inherit cmake pkgconfig
-
# could be 'rcX' or 'git' or empty ( for release )
VER_SUFFIX = ""
-PV = "18.1.4${VER_SUFFIX}"
+PV .= "${VER_SUFFIX}"
MAJOR_VERSION = "${@oe.utils.trim_version("${PV}", 1)}"
LLVM_RELEASE = "${PV}"
-BRANCH = "release/${MAJOR_VERSION}.x"
-SRCREV = "e6c3289804a67ea0bb6a86fadbe454dd93b8d855"
-SRC_URI = "git://github.com/llvm/llvm-project.git;branch=${BRANCH};protocol=https \
+SRC_URI = "https://github.com/llvm/llvm-project/releases/download/llvmorg-${PV}/llvm-project-${PV}.src.tar.xz \
file://0007-llvm-allow-env-override-of-exe-path.patch;striplevel=2 \
file://0001-AsmMatcherEmitter-sort-ClassInfo-lists-by-name-as-we.patch;striplevel=2 \
file://llvm-config \
"
+SRC_URI[sha256sum] = "bd4b4cb6374bcd5fc5a3ba60cb80425d29da34f316b8821abc12c0db225cf6b4"
-UPSTREAM_CHECK_GITTAGREGEX = "llvmorg-(?P<pver>\d+(\.\d+)+)"
+UPSTREAM_CHECK_URI = "https://github.com/llvm/llvm-project"
+UPSTREAM_CHECK_REGEX = "llvmorg-(?P<pver>\d+(\.\d+)+)"
-S = "${WORKDIR}/git/llvm"
+S = "${WORKDIR}/llvm-project-${PV}.src/llvm"
LLVM_INSTALL_DIR = "${WORKDIR}/llvm-install"
@@ -134,7 +133,7 @@ SYSROOT_PREPROCESS_FUNCS:append:class-target = " llvm_sysroot_preprocess"
llvm_sysroot_preprocess() {
install -d ${SYSROOT_DESTDIR}${bindir_crossscripts}/
- install -m 0755 ${WORKDIR}/llvm-config ${SYSROOT_DESTDIR}${bindir_crossscripts}/
+ install -m 0755 ${UNPACKDIR}/llvm-config ${SYSROOT_DESTDIR}${bindir_crossscripts}/
ln -sf llvm-config ${SYSROOT_DESTDIR}${bindir_crossscripts}/llvm-config${PV}
}
diff --git a/meta/recipes-devtools/lua/lua_5.4.6.bb b/meta/recipes-devtools/lua/lua_5.4.6.bb
index eabfc89575..17dc8fb17d 100644
--- a/meta/recipes-devtools/lua/lua_5.4.6.bb
+++ b/meta/recipes-devtools/lua/lua_5.4.6.bb
@@ -44,14 +44,14 @@ do_install () {
install
install -d ${D}${libdir}/pkgconfig
- sed -e s/@VERSION@/${PV}/ -e s#@LIBDIR@#${libdir}# -e s#@INCLUDEDIR@#${includedir}# ${WORKDIR}/lua.pc.in > ${WORKDIR}/lua.pc
- install -m 0644 ${WORKDIR}/lua.pc ${D}${libdir}/pkgconfig/
+ sed -e s/@VERSION@/${PV}/ -e s#@LIBDIR@#${libdir}# -e s#@INCLUDEDIR@#${includedir}# ${UNPACKDIR}/lua.pc.in > ${S}/lua.pc
+ install -m 0644 ${S}/lua.pc ${D}${libdir}/pkgconfig/
rmdir ${D}${datadir}/lua/5.4
rmdir ${D}${datadir}/lua
}
do_install_ptest () {
- cp -R --no-dereference --preserve=mode,links -v ${WORKDIR}/lua-${PV_testsuites}-tests ${D}${PTEST_PATH}/test
+ cp -R --no-dereference --preserve=mode,links -v ${UNPACKDIR}/lua-${PV_testsuites}-tests ${D}${PTEST_PATH}/test
}
do_install_ptest:append:libc-musl () {
diff --git a/meta/recipes-devtools/makedevs/makedevs_1.0.1.bb b/meta/recipes-devtools/makedevs/makedevs_1.0.1.bb
index 0d6c7a01eb..7b11093364 100644
--- a/meta/recipes-devtools/makedevs/makedevs_1.0.1.bb
+++ b/meta/recipes-devtools/makedevs/makedevs_1.0.1.bb
@@ -5,7 +5,8 @@ LIC_FILES_CHKSUM = "file://makedevs.c;beginline=2;endline=2;md5=c3817b10013a3007
SECTION = "base"
SRC_URI = "file://makedevs.c"
-S = "${WORKDIR}"
+S = "${WORKDIR}/sources"
+UNPACKDIR = "${S}"
FILES:${PN}:append:class-nativesdk = " ${datadir}"
diff --git a/meta/recipes-devtools/meson/meson_1.3.1.bb b/meta/recipes-devtools/meson/meson_1.3.1.bb
index 9cc0cc31ab..5b0d82fe9f 100644
--- a/meta/recipes-devtools/meson/meson_1.3.1.bb
+++ b/meta/recipes-devtools/meson/meson_1.3.1.bb
@@ -86,7 +86,7 @@ ar = ${@meson_array('BUILD_AR', d)}
nm = ${@meson_array('BUILD_NM', d)}
strip = ${@meson_array('BUILD_STRIP', d)}
readelf = ${@meson_array('BUILD_READELF', d)}
-pkgconfig = 'pkg-config-native'
+pkg-config = 'pkg-config-native'
[built-in options]
c_args = ['-isystem@{OECORE_NATIVE_SYSROOT}${includedir_native}' , ${@var_list2str('BUILD_OPTIMIZATION', d)}]
@@ -104,7 +104,7 @@ cpp = @CXX
ar = @AR
nm = @NM
strip = @STRIP
-pkgconfig = 'pkg-config'
+pkg-config = 'pkg-config'
[built-in options]
c_args = @CFLAGS
@@ -132,11 +132,11 @@ do_install:append:class-nativesdk() {
install_templates
install -d ${D}${SDKPATHNATIVE}/post-relocate-setup.d
- install -m 0755 ${WORKDIR}/meson-setup.py ${D}${SDKPATHNATIVE}/post-relocate-setup.d/
+ install -m 0755 ${UNPACKDIR}/meson-setup.py ${D}${SDKPATHNATIVE}/post-relocate-setup.d/
# We need to wrap the real meson with a thin env setup wrapper.
mv ${D}${bindir}/meson ${D}${bindir}/meson.real
- install -m 0755 ${WORKDIR}/meson-wrapper ${D}${bindir}/meson
+ install -m 0755 ${UNPACKDIR}/meson-wrapper ${D}${bindir}/meson
}
FILES:${PN}:append:class-nativesdk = "${datadir}/meson ${SDKPATHNATIVE}"
@@ -149,10 +149,10 @@ do_install:append:class-native() {
install_templates
install -d ${D}${datadir}/post-relocate-setup.d
- install -m 0755 ${WORKDIR}/meson-setup.py ${D}${datadir}/post-relocate-setup.d/
+ install -m 0755 ${UNPACKDIR}/meson-setup.py ${D}${datadir}/post-relocate-setup.d/
# We need to wrap the real meson with a thin wrapper that substitues native/cross files
# when running in a direct SDK environment.
mv ${D}${bindir}/meson ${D}${bindir}/meson.real
- install -m 0755 ${WORKDIR}/meson-wrapper ${D}${bindir}/meson
+ install -m 0755 ${UNPACKDIR}/meson-wrapper ${D}${bindir}/meson
}
diff --git a/meta/recipes-devtools/mmc/mmc-utils_git.bb b/meta/recipes-devtools/mmc/mmc-utils_git.bb
index a7e4d369ff..0bfd5c1cc8 100644
--- a/meta/recipes-devtools/mmc/mmc-utils_git.bb
+++ b/meta/recipes-devtools/mmc/mmc-utils_git.bb
@@ -1,15 +1,15 @@
SUMMARY = "Userspace tools for MMC/SD devices"
-HOMEPAGE = "http://git.kernel.org/cgit/linux/kernel/git/cjb/mmc-utils.git/"
+HOMEPAGE = "https://git.kernel.org/pub/scm/utils/mmc/mmc-utils.git/"
DESCRIPTION = "${SUMMARY}"
LICENSE = "GPL-2.0-only"
LIC_FILES_CHKSUM = "file://mmc.c;beginline=1;endline=20;md5=fae32792e20f4d27ade1c5a762d16b7d"
SRCBRANCH ?= "master"
-SRCREV = "b5ca140312d279ad2f22068fd72a6230eea13436"
+SRCREV = "f757f413dea4a143ad7c3b48b8264176f0499a82"
PV = "0.1+git"
-SRC_URI = "git://git.kernel.org/pub/scm/linux/kernel/git/cjb/mmc-utils.git;branch=${SRCBRANCH};protocol=https"
+SRC_URI = "git://git.kernel.org/pub/scm/utils/mmc/mmc-utils.git;branch=${SRCBRANCH};protocol=https"
UPSTREAM_CHECK_COMMITS = "1"
S = "${WORKDIR}/git"
diff --git a/meta/recipes-devtools/ninja/ninja_1.12.0.bb b/meta/recipes-devtools/ninja/ninja_1.12.1.bb
index ef7f80d0ae..9f5c014b9b 100644
--- a/meta/recipes-devtools/ninja/ninja_1.12.0.bb
+++ b/meta/recipes-devtools/ninja/ninja_1.12.1.bb
@@ -6,7 +6,7 @@ LIC_FILES_CHKSUM = "file://COPYING;md5=a81586a64ad4e476c791cda7e2f2c52e"
DEPENDS = "re2c-native ninja-native"
-SRCREV = "65d0dfcbbea6b8ca7d8a3a0f673ecb522379e43c"
+SRCREV = "2daa09ba270b0a43e1929d29b073348aa985dfaa"
SRC_URI = "git://github.com/ninja-build/ninja.git;branch=release;protocol=https"
UPSTREAM_CHECK_GITTAGREGEX = "v(?P<pver>.*)"
diff --git a/meta/recipes-devtools/opkg/opkg-arch-config_1.0.bb b/meta/recipes-devtools/opkg/opkg-arch-config_1.0.bb
index 726a259a8c..4db35c1092 100644
--- a/meta/recipes-devtools/opkg/opkg-arch-config_1.0.bb
+++ b/meta/recipes-devtools/opkg/opkg-arch-config_1.0.bb
@@ -3,7 +3,8 @@ HOMEPAGE = "https://git.yoctoproject.org/opkg/"
LICENSE = "MIT"
PACKAGE_ARCH = "${MACHINE_ARCH}"
-S = "${WORKDIR}"
+S = "${WORKDIR}/sources"
+UNPACKDIR = "${S}"
do_compile() {
mkdir -p ${S}/${sysconfdir}/opkg/
diff --git a/meta/recipes-devtools/opkg/opkg_0.6.3.bb b/meta/recipes-devtools/opkg/opkg_0.6.3.bb
index 9592ffc5d6..ef7c4f3a72 100644
--- a/meta/recipes-devtools/opkg/opkg_0.6.3.bb
+++ b/meta/recipes-devtools/opkg/opkg_0.6.3.bb
@@ -47,7 +47,7 @@ EXTRA_OECONF:append:class-native = " --localstatedir=/${@os.path.relpath('${loca
do_install:append () {
install -d ${D}${sysconfdir}/opkg
- install -m 0644 ${WORKDIR}/opkg.conf ${D}${sysconfdir}/opkg/opkg.conf
+ install -m 0644 ${UNPACKDIR}/opkg.conf ${D}${sysconfdir}/opkg/opkg.conf
echo "option lists_dir ${OPKGLIBDIR}/opkg/lists" >>${D}${sysconfdir}/opkg/opkg.conf
echo "option info_dir ${OPKGLIBDIR}/opkg/info" >>${D}${sysconfdir}/opkg/opkg.conf
echo "option status_file ${OPKGLIBDIR}/opkg/status" >>${D}${sysconfdir}/opkg/opkg.conf
diff --git a/meta/recipes-devtools/perl-cross/perlcross_1.5.2.bb b/meta/recipes-devtools/perl-cross/perlcross_1.5.2.bb
index b41c182fad..48bda7e4b6 100644
--- a/meta/recipes-devtools/perl-cross/perlcross_1.5.2.bb
+++ b/meta/recipes-devtools/perl-cross/perlcross_1.5.2.bb
@@ -6,7 +6,7 @@ SECTION = "devel"
LICENSE = "Artistic-1.0 | GPL-1.0-or-later"
# README.md is taken from https://github.com/arsv/perl-cross/blob/master/README.md
# but is not provided inside the release tarballs
-LIC_FILES_CHKSUM = "file://${WORKDIR}/README.md;md5=252fcce2026b765fee1ad74d2fb07a3b"
+LIC_FILES_CHKSUM = "file://${UNPACKDIR}/README.md;md5=252fcce2026b765fee1ad74d2fb07a3b"
inherit allarch github-releases
diff --git a/meta/recipes-devtools/perl/files/determinism.patch b/meta/recipes-devtools/perl/files/determinism.patch
index aa85ccef10..f2b1111552 100644
--- a/meta/recipes-devtools/perl/files/determinism.patch
+++ b/meta/recipes-devtools/perl/files/determinism.patch
@@ -8,9 +8,9 @@ b) Sort the order of the module lists from configure_mods.sh since otherwise
the result isn't the same leading to makefile differences.
Reported upstream: https://github.com/arsv/perl-cross/issues/88
-c) Sort the Encode::Byte byte_t.fnm file output (and the makefile depends whilst
+c) Sort the Encode::Byte byte_t.fnm file output (and the makefile depends whilst
there for good measure)
- This needs to go to upstream perl (not done)
+ Submitted to upstream perl: https://github.com/dankogai/p5-encode/pull/179
d) Use bash for perl-cross configure since otherwise trnl gets set to "\n" with bash
and "" with dash
@@ -18,7 +18,7 @@ d) Use bash for perl-cross configure since otherwise trnl gets set to "\n" with
RP 2020/2/7
-Upstream-Status: Pending [75% submitted]
+Upstream-Status: Submitted [see links above]
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org
Index: perl-5.30.1/cpan/Encode/Byte/Makefile.PL
diff --git a/meta/recipes-devtools/perl/perl_5.38.2.bb b/meta/recipes-devtools/perl/perl_5.38.2.bb
index b6c9cda7ae..63909c242d 100644
--- a/meta/recipes-devtools/perl/perl_5.38.2.bb
+++ b/meta/recipes-devtools/perl/perl_5.38.2.bb
@@ -331,7 +331,7 @@ python split_perl_packages () {
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():
+ for line in open(d.getVar("UNPACKDIR") + '/perl-rdepends.txt').readlines():
splitline = line.split()
# Filter empty lines and comments
if len(splitline) == 0 or splitline[0].startswith("#"):
diff --git a/meta/recipes-devtools/pkgconf/pkgconf_2.2.0.bb b/meta/recipes-devtools/pkgconf/pkgconf_2.2.0.bb
index e98458ea55..5f4ef73d43 100644
--- a/meta/recipes-devtools/pkgconf/pkgconf_2.2.0.bb
+++ b/meta/recipes-devtools/pkgconf/pkgconf_2.2.0.bb
@@ -29,18 +29,18 @@ EXTRA_OECONF += "--with-pkg-config-dir='${libdir}/pkgconfig:${datadir}/pkgconfig
do_install:append () {
# Install a wrapper which deals, as much as possible with pkgconf vs
# pkg-config compatibility issues.
- install -m 0755 "${WORKDIR}/pkg-config-wrapper" "${D}${bindir}/pkg-config"
+ install -m 0755 "${UNPACKDIR}/pkg-config-wrapper" "${D}${bindir}/pkg-config"
}
do_install:append:class-native () {
# Install a pkg-config-native wrapper that will use the native sysroot instead
# of the MACHINE sysroot, for using pkg-config when building native tools.
sed -e "s|@PATH_NATIVE@|${PKG_CONFIG_PATH}|" \
- < ${WORKDIR}/pkg-config-native.in > ${B}/pkg-config-native
+ < ${UNPACKDIR}/pkg-config-native.in > ${B}/pkg-config-native
install -m755 ${B}/pkg-config-native ${D}${bindir}/pkg-config-native
sed -e "s|@PATH_NATIVE@|${PKG_CONFIG_PATH}|" \
-e "s|@LIBDIR_NATIVE@|${PKG_CONFIG_LIBDIR}|" \
- < ${WORKDIR}/pkg-config-esdk.in > ${B}/pkg-config-esdk
+ < ${UNPACKDIR}/pkg-config-esdk.in > ${B}/pkg-config-esdk
install -m755 ${B}/pkg-config-esdk ${D}${bindir}/pkg-config-esdk
}
diff --git a/meta/recipes-devtools/pkgconfig/pkgconfig_git.bb b/meta/recipes-devtools/pkgconfig/pkgconfig_git.bb
index 16e6c5b609..6f13d0177e 100644
--- a/meta/recipes-devtools/pkgconfig/pkgconfig_git.bb
+++ b/meta/recipes-devtools/pkgconfig/pkgconfig_git.bb
@@ -51,11 +51,11 @@ RPROVIDES:${PN} += "pkgconfig(pkg-config)"
do_install:append:class-native () {
sed -e "s|@PATH_NATIVE@|${PKG_CONFIG_PATH}|" \
-e "s|@LIBDIR_NATIVE@|${PKG_CONFIG_LIBDIR}|" \
- < ${WORKDIR}/pkg-config-native.in > ${B}/pkg-config-native
+ < ${UNPACKDIR}/pkg-config-native.in > ${B}/pkg-config-native
install -m755 ${B}/pkg-config-native ${D}${bindir}/pkg-config-native
sed -e "s|@PATH_NATIVE@|${PKG_CONFIG_PATH}|" \
-e "s|@LIBDIR_NATIVE@|${PKG_CONFIG_LIBDIR}|" \
- < ${WORKDIR}/pkg-config-esdk.in > ${B}/pkg-config-esdk
+ < ${UNPACKDIR}/pkg-config-esdk.in > ${B}/pkg-config-esdk
install -m755 ${B}/pkg-config-esdk ${D}${bindir}/pkg-config-esdk
}
diff --git a/meta/recipes-devtools/pseudo/pseudo.inc b/meta/recipes-devtools/pseudo/pseudo.inc
index 7e09b6d58c..36283ffa74 100644
--- a/meta/recipes-devtools/pseudo/pseudo.inc
+++ b/meta/recipes-devtools/pseudo/pseudo.inc
@@ -133,8 +133,8 @@ do_install:append:class-native () {
chrpath ${D}${bindir}/pseudo -r `chrpath ${D}${bindir}/pseudo | cut -d = -f 2 | sed s/XORIGIN/\\$ORIGIN/`
install -d ${D}${sysconfdir}
# The fallback files should never be modified
- install -m 444 ${WORKDIR}/fallback-passwd ${D}${sysconfdir}/passwd
- install -m 444 ${WORKDIR}/fallback-group ${D}${sysconfdir}/group
+ install -m 444 ${UNPACKDIR}/fallback-passwd ${D}${sysconfdir}/passwd
+ install -m 444 ${UNPACKDIR}/fallback-group ${D}${sysconfdir}/group
# Two native/nativesdk entries below are the same
# If necessary install for the alternative machine arch. This is only
diff --git a/meta/recipes-devtools/pseudo/pseudo_git.bb b/meta/recipes-devtools/pseudo/pseudo_git.bb
index c70b509233..5f32b3777a 100644
--- a/meta/recipes-devtools/pseudo/pseudo_git.bb
+++ b/meta/recipes-devtools/pseudo/pseudo_git.bb
@@ -14,7 +14,7 @@ SRC_URI:append:class-nativesdk = " \
file://older-glibc-symbols.patch"
SRC_URI[prebuilt.sha256sum] = "ed9f456856e9d86359f169f46a70ad7be4190d6040282b84c8d97b99072485aa"
-SRCREV = "0d292df61aeb886ae8ca33d9edc3b6d0ff5c0f0f"
+SRCREV = "e11ae91da7d0711f5e33ea9dfbf1875dde3c1734"
S = "${WORKDIR}/git"
PV = "1.9.0+git"
diff --git a/meta/recipes-devtools/python/python3-bcrypt-crates.inc b/meta/recipes-devtools/python/python3-bcrypt-crates.inc
index 0e7479f0b5..7d9e1f3b59 100644
--- a/meta/recipes-devtools/python/python3-bcrypt-crates.inc
+++ b/meta/recipes-devtools/python/python3-bcrypt-crates.inc
@@ -2,113 +2,115 @@
# from src/_bcrypt/Cargo.lock
SRC_URI += " \
- crate://crates.io/autocfg/1.1.0 \
- crate://crates.io/base64/0.21.5 \
- crate://crates.io/bcrypt/0.15.0 \
+ crate://crates.io/autocfg/1.3.0 \
+ crate://crates.io/base64/0.22.1 \
+ crate://crates.io/bcrypt/0.15.1 \
crate://crates.io/bcrypt-pbkdf/0.10.0 \
- crate://crates.io/bitflags/1.3.2 \
+ crate://crates.io/bitflags/2.5.0 \
crate://crates.io/block-buffer/0.10.4 \
crate://crates.io/blowfish/0.9.1 \
crate://crates.io/byteorder/1.5.0 \
crate://crates.io/cfg-if/1.0.0 \
crate://crates.io/cipher/0.4.4 \
- crate://crates.io/cpufeatures/0.2.11 \
+ crate://crates.io/cpufeatures/0.2.12 \
crate://crates.io/crypto-common/0.1.6 \
crate://crates.io/digest/0.10.7 \
crate://crates.io/generic-array/0.14.7 \
- crate://crates.io/getrandom/0.2.11 \
+ crate://crates.io/getrandom/0.2.14 \
crate://crates.io/heck/0.4.1 \
- crate://crates.io/indoc/2.0.4 \
+ crate://crates.io/indoc/2.0.5 \
crate://crates.io/inout/0.1.3 \
- crate://crates.io/libc/0.2.151 \
- crate://crates.io/lock_api/0.4.11 \
- crate://crates.io/memoffset/0.9.0 \
+ crate://crates.io/libc/0.2.154 \
+ crate://crates.io/lock_api/0.4.12 \
+ crate://crates.io/memoffset/0.9.1 \
crate://crates.io/once_cell/1.19.0 \
- crate://crates.io/parking_lot/0.12.1 \
- crate://crates.io/parking_lot_core/0.9.9 \
+ crate://crates.io/parking_lot/0.12.2 \
+ crate://crates.io/parking_lot_core/0.9.10 \
crate://crates.io/pbkdf2/0.12.2 \
crate://crates.io/portable-atomic/1.6.0 \
- crate://crates.io/proc-macro2/1.0.70 \
- crate://crates.io/pyo3/0.20.3 \
- crate://crates.io/pyo3-build-config/0.20.3 \
- crate://crates.io/pyo3-ffi/0.20.3 \
- crate://crates.io/pyo3-macros/0.20.3 \
- crate://crates.io/pyo3-macros-backend/0.20.3 \
- crate://crates.io/quote/1.0.33 \
- crate://crates.io/redox_syscall/0.4.1 \
+ crate://crates.io/proc-macro2/1.0.81 \
+ crate://crates.io/pyo3/0.21.2 \
+ crate://crates.io/pyo3-build-config/0.21.2 \
+ crate://crates.io/pyo3-ffi/0.21.2 \
+ crate://crates.io/pyo3-macros/0.21.2 \
+ crate://crates.io/pyo3-macros-backend/0.21.2 \
+ crate://crates.io/quote/1.0.36 \
+ crate://crates.io/redox_syscall/0.5.1 \
crate://crates.io/scopeguard/1.2.0 \
crate://crates.io/sha2/0.10.8 \
- crate://crates.io/smallvec/1.11.2 \
+ crate://crates.io/smallvec/1.13.2 \
crate://crates.io/subtle/2.5.0 \
- crate://crates.io/syn/2.0.41 \
- crate://crates.io/target-lexicon/0.12.12 \
+ crate://crates.io/syn/2.0.60 \
+ crate://crates.io/target-lexicon/0.12.14 \
crate://crates.io/typenum/1.17.0 \
crate://crates.io/unicode-ident/1.0.12 \
crate://crates.io/unindent/0.2.3 \
crate://crates.io/version_check/0.9.4 \
crate://crates.io/wasi/0.11.0+wasi-snapshot-preview1 \
- crate://crates.io/windows-targets/0.48.5 \
- crate://crates.io/windows_aarch64_gnullvm/0.48.5 \
- crate://crates.io/windows_aarch64_msvc/0.48.5 \
- crate://crates.io/windows_i686_gnu/0.48.5 \
- crate://crates.io/windows_i686_msvc/0.48.5 \
- crate://crates.io/windows_x86_64_gnu/0.48.5 \
- crate://crates.io/windows_x86_64_gnullvm/0.48.5 \
- crate://crates.io/windows_x86_64_msvc/0.48.5 \
+ crate://crates.io/windows-targets/0.52.5 \
+ crate://crates.io/windows_aarch64_gnullvm/0.52.5 \
+ crate://crates.io/windows_aarch64_msvc/0.52.5 \
+ crate://crates.io/windows_i686_gnu/0.52.5 \
+ crate://crates.io/windows_i686_gnullvm/0.52.5 \
+ crate://crates.io/windows_i686_msvc/0.52.5 \
+ crate://crates.io/windows_x86_64_gnu/0.52.5 \
+ crate://crates.io/windows_x86_64_gnullvm/0.52.5 \
+ crate://crates.io/windows_x86_64_msvc/0.52.5 \
crate://crates.io/zeroize/1.7.0 \
"
-SRC_URI[autocfg-1.1.0.sha256sum] = "d468802bab17cbc0cc575e9b053f41e72aa36bfa6b7f55e3529ffa43161b97fa"
-SRC_URI[base64-0.21.5.sha256sum] = "35636a1494ede3b646cc98f74f8e62c773a38a659ebc777a2cf26b9b74171df9"
-SRC_URI[bcrypt-0.15.0.sha256sum] = "28d1c9c15093eb224f0baa400f38fcd713fc1391a6f1c389d886beef146d60a3"
+SRC_URI[autocfg-1.3.0.sha256sum] = "0c4b4d0bd25bd0b74681c0ad21497610ce1b7c91b1022cd21c80c6fbdd9476b0"
+SRC_URI[base64-0.22.1.sha256sum] = "72b3254f16251a8381aa12e40e3c4d2f0199f8c6508fbecb9d91f575e0fbb8c6"
+SRC_URI[bcrypt-0.15.1.sha256sum] = "e65938ed058ef47d92cf8b346cc76ef48984572ade631927e9937b5ffc7662c7"
SRC_URI[bcrypt-pbkdf-0.10.0.sha256sum] = "6aeac2e1fe888769f34f05ac343bbef98b14d1ffb292ab69d4608b3abc86f2a2"
-SRC_URI[bitflags-1.3.2.sha256sum] = "bef38d45163c2f1dde094a7dfd33ccf595c92905c8f8f4fdc18d06fb1037718a"
+SRC_URI[bitflags-2.5.0.sha256sum] = "cf4b9d6a944f767f8e5e0db018570623c85f3d925ac718db4e06d0187adb21c1"
SRC_URI[block-buffer-0.10.4.sha256sum] = "3078c7629b62d3f0439517fa394996acacc5cbc91c5a20d8c658e77abd503a71"
SRC_URI[blowfish-0.9.1.sha256sum] = "e412e2cd0f2b2d93e02543ceae7917b3c70331573df19ee046bcbc35e45e87d7"
SRC_URI[byteorder-1.5.0.sha256sum] = "1fd0f2584146f6f2ef48085050886acf353beff7305ebd1ae69500e27c67f64b"
SRC_URI[cfg-if-1.0.0.sha256sum] = "baf1de4339761588bc0619e3cbc0120ee582ebb74b53b4efbf79117bd2da40fd"
SRC_URI[cipher-0.4.4.sha256sum] = "773f3b9af64447d2ce9850330c473515014aa235e6a783b02db81ff39e4a3dad"
-SRC_URI[cpufeatures-0.2.11.sha256sum] = "ce420fe07aecd3e67c5f910618fe65e94158f6dcc0adf44e00d69ce2bdfe0fd0"
+SRC_URI[cpufeatures-0.2.12.sha256sum] = "53fe5e26ff1b7aef8bca9c6080520cfb8d9333c7568e1829cef191a9723e5504"
SRC_URI[crypto-common-0.1.6.sha256sum] = "1bfb12502f3fc46cca1bb51ac28df9d618d813cdc3d2f25b9fe775a34af26bb3"
SRC_URI[digest-0.10.7.sha256sum] = "9ed9a281f7bc9b7576e61468ba615a66a5c8cfdff42420a70aa82701a3b1e292"
SRC_URI[generic-array-0.14.7.sha256sum] = "85649ca51fd72272d7821adaf274ad91c288277713d9c18820d8499a7ff69e9a"
-SRC_URI[getrandom-0.2.11.sha256sum] = "fe9006bed769170c11f845cf00c7c1e9092aeb3f268e007c3e760ac68008070f"
+SRC_URI[getrandom-0.2.14.sha256sum] = "94b22e06ecb0110981051723910cbf0b5f5e09a2062dd7663334ee79a9d1286c"
SRC_URI[heck-0.4.1.sha256sum] = "95505c38b4572b2d910cecb0281560f54b440a19336cbbcb27bf6ce6adc6f5a8"
-SRC_URI[indoc-2.0.4.sha256sum] = "1e186cfbae8084e513daff4240b4797e342f988cecda4fb6c939150f96315fd8"
+SRC_URI[indoc-2.0.5.sha256sum] = "b248f5224d1d606005e02c97f5aa4e88eeb230488bcc03bc9ca4d7991399f2b5"
SRC_URI[inout-0.1.3.sha256sum] = "a0c10553d664a4d0bcff9f4215d0aac67a639cc68ef660840afe309b807bc9f5"
-SRC_URI[libc-0.2.151.sha256sum] = "302d7ab3130588088d277783b1e2d2e10c9e9e4a16dd9050e6ec93fb3e7048f4"
-SRC_URI[lock_api-0.4.11.sha256sum] = "3c168f8615b12bc01f9c17e2eb0cc07dcae1940121185446edc3744920e8ef45"
-SRC_URI[memoffset-0.9.0.sha256sum] = "5a634b1c61a95585bd15607c6ab0c4e5b226e695ff2800ba0cdccddf208c406c"
+SRC_URI[libc-0.2.154.sha256sum] = "ae743338b92ff9146ce83992f766a31066a91a8c84a45e0e9f21e7cf6de6d346"
+SRC_URI[lock_api-0.4.12.sha256sum] = "07af8b9cdd281b7915f413fa73f29ebd5d55d0d3f0155584dade1ff18cea1b17"
+SRC_URI[memoffset-0.9.1.sha256sum] = "488016bfae457b036d996092f6cb448677611ce4449e970ceaf42695203f218a"
SRC_URI[once_cell-1.19.0.sha256sum] = "3fdb12b2476b595f9358c5161aa467c2438859caa136dec86c26fdd2efe17b92"
-SRC_URI[parking_lot-0.12.1.sha256sum] = "3742b2c103b9f06bc9fff0a37ff4912935851bee6d36f3c02bcc755bcfec228f"
-SRC_URI[parking_lot_core-0.9.9.sha256sum] = "4c42a9226546d68acdd9c0a280d17ce19bfe27a46bf68784e4066115788d008e"
+SRC_URI[parking_lot-0.12.2.sha256sum] = "7e4af0ca4f6caed20e900d564c242b8e5d4903fdacf31d3daf527b66fe6f42fb"
+SRC_URI[parking_lot_core-0.9.10.sha256sum] = "1e401f977ab385c9e4e3ab30627d6f26d00e2c73eef317493c4ec6d468726cf8"
SRC_URI[pbkdf2-0.12.2.sha256sum] = "f8ed6a7761f76e3b9f92dfb0a60a6a6477c61024b775147ff0973a02653abaf2"
SRC_URI[portable-atomic-1.6.0.sha256sum] = "7170ef9988bc169ba16dd36a7fa041e5c4cbeb6a35b76d4c03daded371eae7c0"
-SRC_URI[proc-macro2-1.0.70.sha256sum] = "39278fbbf5fb4f646ce651690877f89d1c5811a3d4acb27700c1cb3cdb78fd3b"
-SRC_URI[pyo3-0.20.3.sha256sum] = "53bdbb96d49157e65d45cc287af5f32ffadd5f4761438b527b055fb0d4bb8233"
-SRC_URI[pyo3-build-config-0.20.3.sha256sum] = "deaa5745de3f5231ce10517a1f5dd97d53e5a2fd77aa6b5842292085831d48d7"
-SRC_URI[pyo3-ffi-0.20.3.sha256sum] = "62b42531d03e08d4ef1f6e85a2ed422eb678b8cd62b762e53891c05faf0d4afa"
-SRC_URI[pyo3-macros-0.20.3.sha256sum] = "7305c720fa01b8055ec95e484a6eca7a83c841267f0dd5280f0c8b8551d2c158"
-SRC_URI[pyo3-macros-backend-0.20.3.sha256sum] = "7c7e9b68bb9c3149c5b0cade5d07f953d6d125eb4337723c4ccdb665f1f96185"
-SRC_URI[quote-1.0.33.sha256sum] = "5267fca4496028628a95160fc423a33e8b2e6af8a5302579e322e4b520293cae"
-SRC_URI[redox_syscall-0.4.1.sha256sum] = "4722d768eff46b75989dd134e5c353f0d6296e5aaa3132e776cbdb56be7731aa"
+SRC_URI[proc-macro2-1.0.81.sha256sum] = "3d1597b0c024618f09a9c3b8655b7e430397a36d23fdafec26d6965e9eec3eba"
+SRC_URI[pyo3-0.21.2.sha256sum] = "a5e00b96a521718e08e03b1a622f01c8a8deb50719335de3f60b3b3950f069d8"
+SRC_URI[pyo3-build-config-0.21.2.sha256sum] = "7883df5835fafdad87c0d888b266c8ec0f4c9ca48a5bed6bbb592e8dedee1b50"
+SRC_URI[pyo3-ffi-0.21.2.sha256sum] = "01be5843dc60b916ab4dad1dca6d20b9b4e6ddc8e15f50c47fe6d85f1fb97403"
+SRC_URI[pyo3-macros-0.21.2.sha256sum] = "77b34069fc0682e11b31dbd10321cbf94808394c56fd996796ce45217dfac53c"
+SRC_URI[pyo3-macros-backend-0.21.2.sha256sum] = "08260721f32db5e1a5beae69a55553f56b99bd0e1c3e6e0a5e8851a9d0f5a85c"
+SRC_URI[quote-1.0.36.sha256sum] = "0fa76aaf39101c457836aec0ce2316dbdc3ab723cdda1c6bd4e6ad4208acaca7"
+SRC_URI[redox_syscall-0.5.1.sha256sum] = "469052894dcb553421e483e4209ee581a45100d31b4018de03e5a7ad86374a7e"
SRC_URI[scopeguard-1.2.0.sha256sum] = "94143f37725109f92c262ed2cf5e59bce7498c01bcc1502d7b9afe439a4e9f49"
SRC_URI[sha2-0.10.8.sha256sum] = "793db75ad2bcafc3ffa7c68b215fee268f537982cd901d132f89c6343f3a3dc8"
-SRC_URI[smallvec-1.11.2.sha256sum] = "4dccd0940a2dcdf68d092b8cbab7dc0ad8fa938bf95787e1b916b0e3d0e8e970"
+SRC_URI[smallvec-1.13.2.sha256sum] = "3c5e1a9a646d36c3599cd173a41282daf47c44583ad367b8e6837255952e5c67"
SRC_URI[subtle-2.5.0.sha256sum] = "81cdd64d312baedb58e21336b31bc043b77e01cc99033ce76ef539f78e965ebc"
-SRC_URI[syn-2.0.41.sha256sum] = "44c8b28c477cc3bf0e7966561e3460130e1255f7a1cf71931075f1c5e7a7e269"
-SRC_URI[target-lexicon-0.12.12.sha256sum] = "14c39fd04924ca3a864207c66fc2cd7d22d7c016007f9ce846cbb9326331930a"
+SRC_URI[syn-2.0.60.sha256sum] = "909518bc7b1c9b779f1bbf07f2929d35af9f0f37e47c6e9ef7f9dddc1e1821f3"
+SRC_URI[target-lexicon-0.12.14.sha256sum] = "e1fc403891a21bcfb7c37834ba66a547a8f402146eba7265b5a6d88059c9ff2f"
SRC_URI[typenum-1.17.0.sha256sum] = "42ff0bf0c66b8238c6f3b578df37d0b7848e55df8577b3f74f92a69acceeb825"
SRC_URI[unicode-ident-1.0.12.sha256sum] = "3354b9ac3fae1ff6755cb6db53683adb661634f67557942dea4facebec0fee4b"
SRC_URI[unindent-0.2.3.sha256sum] = "c7de7d73e1754487cb58364ee906a499937a0dfabd86bcb980fa99ec8c8fa2ce"
SRC_URI[version_check-0.9.4.sha256sum] = "49874b5167b65d7193b8aba1567f5c7d93d001cafc34600cee003eda787e483f"
SRC_URI[wasi-0.11.0+wasi-snapshot-preview1.sha256sum] = "9c8d87e72b64a3b4db28d11ce29237c246188f4f51057d65a7eab63b7987e423"
-SRC_URI[windows-targets-0.48.5.sha256sum] = "9a2fa6e2155d7247be68c096456083145c183cbbbc2764150dda45a87197940c"
-SRC_URI[windows_aarch64_gnullvm-0.48.5.sha256sum] = "2b38e32f0abccf9987a4e3079dfb67dcd799fb61361e53e2882c3cbaf0d905d8"
-SRC_URI[windows_aarch64_msvc-0.48.5.sha256sum] = "dc35310971f3b2dbbf3f0690a219f40e2d9afcf64f9ab7cc1be722937c26b4bc"
-SRC_URI[windows_i686_gnu-0.48.5.sha256sum] = "a75915e7def60c94dcef72200b9a8e58e5091744960da64ec734a6c6e9b3743e"
-SRC_URI[windows_i686_msvc-0.48.5.sha256sum] = "8f55c233f70c4b27f66c523580f78f1004e8b5a8b659e05a4eb49d4166cca406"
-SRC_URI[windows_x86_64_gnu-0.48.5.sha256sum] = "53d40abd2583d23e4718fddf1ebec84dbff8381c07cae67ff7768bbf19c6718e"
-SRC_URI[windows_x86_64_gnullvm-0.48.5.sha256sum] = "0b7b52767868a23d5bab768e390dc5f5c55825b6d30b86c844ff2dc7414044cc"
-SRC_URI[windows_x86_64_msvc-0.48.5.sha256sum] = "ed94fce61571a4006852b7389a063ab983c02eb1bb37b47f8272ce92d06d9538"
+SRC_URI[windows-targets-0.52.5.sha256sum] = "6f0713a46559409d202e70e28227288446bf7841d3211583a4b53e3f6d96e7eb"
+SRC_URI[windows_aarch64_gnullvm-0.52.5.sha256sum] = "7088eed71e8b8dda258ecc8bac5fb1153c5cffaf2578fc8ff5d61e23578d3263"
+SRC_URI[windows_aarch64_msvc-0.52.5.sha256sum] = "9985fd1504e250c615ca5f281c3f7a6da76213ebd5ccc9561496568a2752afb6"
+SRC_URI[windows_i686_gnu-0.52.5.sha256sum] = "88ba073cf16d5372720ec942a8ccbf61626074c6d4dd2e745299726ce8b89670"
+SRC_URI[windows_i686_gnullvm-0.52.5.sha256sum] = "87f4261229030a858f36b459e748ae97545d6f1ec60e5e0d6a3d32e0dc232ee9"
+SRC_URI[windows_i686_msvc-0.52.5.sha256sum] = "db3c2bf3d13d5b658be73463284eaf12830ac9a26a90c717b7f771dfe97487bf"
+SRC_URI[windows_x86_64_gnu-0.52.5.sha256sum] = "4e4246f76bdeff09eb48875a0fd3e2af6aada79d409d33011886d3e1581517d9"
+SRC_URI[windows_x86_64_gnullvm-0.52.5.sha256sum] = "852298e482cd67c356ddd9570386e2862b5673c85bd5f88df9ab6802b334c596"
+SRC_URI[windows_x86_64_msvc-0.52.5.sha256sum] = "bec47e5bfd1bff0eeaf6d8b485cc1074891a197ab4225d504cb7a1ab88b02bf0"
SRC_URI[zeroize-1.7.0.sha256sum] = "525b4ec142c6b68a2d10f01f7bbf6755599ca3f81ea53b8431b7dd348f5fdb2d"
diff --git a/meta/recipes-devtools/python/python3-bcrypt/0001-Bump-pyo3-from-0.20.0-to-0.20.3-in-src-_bcrypt-746.patch b/meta/recipes-devtools/python/python3-bcrypt/0001-Bump-pyo3-from-0.20.0-to-0.20.3-in-src-_bcrypt-746.patch
deleted file mode 100644
index 3f671fcc98..0000000000
--- a/meta/recipes-devtools/python/python3-bcrypt/0001-Bump-pyo3-from-0.20.0-to-0.20.3-in-src-_bcrypt-746.patch
+++ /dev/null
@@ -1,111 +0,0 @@
-From cfdd98b3215cc12e66190a9c7f0a32c052e3c2e7 Mon Sep 17 00:00:00 2001
-From: Khem Raj <raj.khem@gmail.com>
-Date: Mon, 26 Feb 2024 18:26:30 -0800
-Subject: [PATCH] Bump pyo3 from 0.20.0 to 0.20.3 in /src/_bcrypt (#746)
-
-It fixes build on hosts without 64bit atomics
-
-Upstream-Status: Backport [https://github.com/pyca/bcrypt/commit/c2ef9350798ab59b18e8a0e04a01389858578fe0]
-Signed-off-by: Khem Raj <raj.khem@gmail.com>
----
- src/_bcrypt/Cargo.lock | 22 ++++++++++++++--------
- src/_bcrypt/Cargo.toml | 2 +-
- 2 files changed, 15 insertions(+), 9 deletions(-)
-
---- a/src/_bcrypt/Cargo.lock
-+++ b/src/_bcrypt/Cargo.lock
-@@ -233,6 +233,12 @@ dependencies = [
- ]
-
- [[package]]
-+name = "portable-atomic"
-+version = "1.6.0"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "7170ef9988bc169ba16dd36a7fa041e5c4cbeb6a35b76d4c03daded371eae7c0"
-+
-+[[package]]
- name = "proc-macro2"
- version = "1.0.70"
- source = "registry+https://github.com/rust-lang/crates.io-index"
-@@ -243,15 +249,16 @@ dependencies = [
-
- [[package]]
- name = "pyo3"
--version = "0.20.0"
-+version = "0.20.3"
- source = "registry+https://github.com/rust-lang/crates.io-index"
--checksum = "04e8453b658fe480c3e70c8ed4e3d3ec33eb74988bd186561b0cc66b85c3bc4b"
-+checksum = "53bdbb96d49157e65d45cc287af5f32ffadd5f4761438b527b055fb0d4bb8233"
- dependencies = [
- "cfg-if",
- "indoc",
- "libc",
- "memoffset",
- "parking_lot",
-+ "portable-atomic",
- "pyo3-build-config",
- "pyo3-ffi",
- "pyo3-macros",
-@@ -260,9 +267,9 @@ dependencies = [
-
- [[package]]
- name = "pyo3-build-config"
--version = "0.20.0"
-+version = "0.20.3"
- source = "registry+https://github.com/rust-lang/crates.io-index"
--checksum = "a96fe70b176a89cff78f2fa7b3c930081e163d5379b4dcdf993e3ae29ca662e5"
-+checksum = "deaa5745de3f5231ce10517a1f5dd97d53e5a2fd77aa6b5842292085831d48d7"
- dependencies = [
- "once_cell",
- "target-lexicon",
-@@ -270,9 +277,9 @@ dependencies = [
-
- [[package]]
- name = "pyo3-ffi"
--version = "0.20.0"
-+version = "0.20.3"
- source = "registry+https://github.com/rust-lang/crates.io-index"
--checksum = "214929900fd25e6604661ed9cf349727c8920d47deff196c4e28165a6ef2a96b"
-+checksum = "62b42531d03e08d4ef1f6e85a2ed422eb678b8cd62b762e53891c05faf0d4afa"
- dependencies = [
- "libc",
- "pyo3-build-config",
-@@ -280,9 +287,9 @@ dependencies = [
-
- [[package]]
- name = "pyo3-macros"
--version = "0.20.0"
-+version = "0.20.3"
- source = "registry+https://github.com/rust-lang/crates.io-index"
--checksum = "dac53072f717aa1bfa4db832b39de8c875b7c7af4f4a6fe93cdbf9264cf8383b"
-+checksum = "7305c720fa01b8055ec95e484a6eca7a83c841267f0dd5280f0c8b8551d2c158"
- dependencies = [
- "proc-macro2",
- "pyo3-macros-backend",
-@@ -292,12 +299,13 @@ dependencies = [
-
- [[package]]
- name = "pyo3-macros-backend"
--version = "0.20.0"
-+version = "0.20.3"
- source = "registry+https://github.com/rust-lang/crates.io-index"
--checksum = "7774b5a8282bd4f25f803b1f0d945120be959a36c72e08e7cd031c792fdfd424"
-+checksum = "7c7e9b68bb9c3149c5b0cade5d07f953d6d125eb4337723c4ccdb665f1f96185"
- dependencies = [
- "heck",
- "proc-macro2",
-+ "pyo3-build-config",
- "quote",
- "syn",
- ]
---- a/src/_bcrypt/Cargo.toml
-+++ b/src/_bcrypt/Cargo.toml
-@@ -6,7 +6,7 @@ edition = "2018"
- publish = false
-
- [dependencies]
--pyo3 = { version = "0.20.0", features = ["abi3"] }
-+pyo3 = { version = "0.20.3", features = ["abi3"] }
- bcrypt = "0.15"
- bcrypt-pbkdf = "0.10.0"
- base64 = "0.21.5"
diff --git a/meta/recipes-devtools/python/python3-bcrypt_4.1.2.bb b/meta/recipes-devtools/python/python3-bcrypt_4.1.3.bb
index 93fa645f33..deb5cbdee3 100644
--- a/meta/recipes-devtools/python/python3-bcrypt_4.1.2.bb
+++ b/meta/recipes-devtools/python/python3-bcrypt_4.1.3.bb
@@ -6,12 +6,11 @@ HOMEPAGE = "https://pypi.org/project/bcrypt/"
DEPENDS += "python3-cffi-native"
LDFLAGS:append = "${@bb.utils.contains('DISTRO_FEATURES', 'ptest', ' -fuse-ld=bfd', '', d)}"
-SRC_URI[sha256sum] = "33313a1200a3ae90b75587ceac502b048b840fc69e7f7a0905b5f87fac7a1258"
+SRC_URI[sha256sum] = "2ee15dd749f5952fe3f0430d0ff6b74082e159c50332a1413d51b5689cf06623"
inherit pypi python_setuptools3_rust ptest-cargo cargo-update-recipe-crates
SRC_URI += " \
- file://0001-Bump-pyo3-from-0.20.0-to-0.20.3-in-src-_bcrypt-746.patch \
file://run-ptest \
"
@@ -33,5 +32,4 @@ RDEPENDS:${PN}:class-target += "\
python3-cffi \
python3-ctypes \
python3-shell \
- python3-six \
"
diff --git a/meta/recipes-devtools/python/python3-cryptography-crates.inc b/meta/recipes-devtools/python/python3-cryptography-crates.inc
index b26e22b70c..dbeda05dc4 100644
--- a/meta/recipes-devtools/python/python3-cryptography-crates.inc
+++ b/meta/recipes-devtools/python/python3-cryptography-crates.inc
@@ -18,9 +18,9 @@ SRC_URI += " \
crate://crates.io/lock_api/0.4.11 \
crate://crates.io/memoffset/0.9.0 \
crate://crates.io/once_cell/1.19.0 \
- crate://crates.io/openssl/0.10.63 \
+ crate://crates.io/openssl/0.10.64 \
crate://crates.io/openssl-macros/0.1.1 \
- crate://crates.io/openssl-sys/0.9.99 \
+ crate://crates.io/openssl-sys/0.9.102 \
crate://crates.io/parking_lot/0.12.1 \
crate://crates.io/parking_lot_core/0.9.9 \
crate://crates.io/pem/3.0.3 \
@@ -68,9 +68,9 @@ SRC_URI[libc-0.2.152.sha256sum] = "13e3bf6590cbc649f4d1a3eefc9d5d6eb746f5200ffb0
SRC_URI[lock_api-0.4.11.sha256sum] = "3c168f8615b12bc01f9c17e2eb0cc07dcae1940121185446edc3744920e8ef45"
SRC_URI[memoffset-0.9.0.sha256sum] = "5a634b1c61a95585bd15607c6ab0c4e5b226e695ff2800ba0cdccddf208c406c"
SRC_URI[once_cell-1.19.0.sha256sum] = "3fdb12b2476b595f9358c5161aa467c2438859caa136dec86c26fdd2efe17b92"
-SRC_URI[openssl-0.10.63.sha256sum] = "15c9d69dd87a29568d4d017cfe8ec518706046a05184e5aea92d0af890b803c8"
+SRC_URI[openssl-0.10.64.sha256sum] = "95a0481286a310808298130d22dd1fef0fa571e05a8f44ec801801e84b216b1f"
SRC_URI[openssl-macros-0.1.1.sha256sum] = "a948666b637a0f465e8564c73e89d4dde00d72d4d473cc972f390fc3dcee7d9c"
-SRC_URI[openssl-sys-0.9.99.sha256sum] = "22e1bf214306098e4832460f797824c05d25aacdf896f64a985fb0fd992454ae"
+SRC_URI[openssl-sys-0.9.102.sha256sum] = "c597637d56fbc83893a35eb0dd04b2b8e7a50c91e64e9493e398b5df4fb45fa2"
SRC_URI[parking_lot-0.12.1.sha256sum] = "3742b2c103b9f06bc9fff0a37ff4912935851bee6d36f3c02bcc755bcfec228f"
SRC_URI[parking_lot_core-0.9.9.sha256sum] = "4c42a9226546d68acdd9c0a280d17ce19bfe27a46bf68784e4066115788d008e"
SRC_URI[pem-3.0.3.sha256sum] = "1b8fcc794035347fb64beda2d3b462595dd2753e3f268d89c5aae77e8cf2c310"
diff --git a/meta/recipes-devtools/python/python3-cryptography-vectors_42.0.5.bb b/meta/recipes-devtools/python/python3-cryptography-vectors_42.0.7.bb
index ee522af08e..9a025a530c 100644
--- a/meta/recipes-devtools/python/python3-cryptography-vectors_42.0.5.bb
+++ b/meta/recipes-devtools/python/python3-cryptography-vectors_42.0.7.bb
@@ -9,7 +9,7 @@ LIC_FILES_CHKSUM = "file://LICENSE;md5=8c3617db4fb6fae01f1d253ab91511e4 \
# NOTE: Make sure to keep this recipe at the same version as python3-cryptography
# Upgrade both recipes at the same time
-SRC_URI[sha256sum] = "505cd5e3b0cb32da1526f07042b7fc38a4b6c356710cb73d2b5f76b037a38ed1"
+SRC_URI[sha256sum] = "8294c632dbe2cb14c7b7e24219560e674bc2224dfc4bed577ab077dbb82bfa3c"
PYPI_PACKAGE = "cryptography_vectors"
diff --git a/meta/recipes-devtools/python/python3-cryptography/0001-pyproject.toml-remove-benchmark-disable-option.patch b/meta/recipes-devtools/python/python3-cryptography/0001-pyproject.toml-remove-benchmark-disable-option.patch
index f9c8d1393d..ec4bfcc98b 100644
--- a/meta/recipes-devtools/python/python3-cryptography/0001-pyproject.toml-remove-benchmark-disable-option.patch
+++ b/meta/recipes-devtools/python/python3-cryptography/0001-pyproject.toml-remove-benchmark-disable-option.patch
@@ -1,4 +1,4 @@
-From b7dd3ce1d75d1e6255e1aca82aa7f401d4246a75 Mon Sep 17 00:00:00 2001
+From 18d78736f5c39784d5151b08fdfdd21c61225686 Mon Sep 17 00:00:00 2001
From: Mingli Yu <mingli.yu@windriver.com>
Date: Tue, 17 May 2022 17:22:48 +0800
Subject: [PATCH] pyproject.toml: remove --benchmark-disable option
@@ -26,7 +26,7 @@ Signed-off-by: Tim Orling <tim.orling@konsulko.com>
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/pyproject.toml b/pyproject.toml
-index c9a7979bd..dec4b7157 100644
+index 4f0fa36..0d54ea6 100644
--- a/pyproject.toml
+++ b/pyproject.toml
@@ -92,7 +92,7 @@ rust-version = ">=1.63.0"
@@ -38,6 +38,3 @@ index c9a7979bd..dec4b7157 100644
console_output_style = "progress-even-when-capture-no"
markers = [
"skip_fips: this test is not executed in FIPS mode",
---
-2.34.1
-
diff --git a/meta/recipes-devtools/python/python3-cryptography_42.0.5.bb b/meta/recipes-devtools/python/python3-cryptography_42.0.7.bb
index 732f925d92..5964400a04 100644
--- a/meta/recipes-devtools/python/python3-cryptography_42.0.5.bb
+++ b/meta/recipes-devtools/python/python3-cryptography_42.0.7.bb
@@ -8,7 +8,7 @@ LIC_FILES_CHKSUM = "file://LICENSE;md5=8c3617db4fb6fae01f1d253ab91511e4 \
"
LDSHARED += "-pthread"
-SRC_URI[sha256sum] = "6fe07eec95dfd477eb9530aef5bead34fec819b3aaf6c5bd6d20565da607bfe1"
+SRC_URI[sha256sum] = "ecbfbc00bf55888edda9868a4cf927205de8499e7fabe6c050322298382953f2"
SRC_URI += "file://0001-pyproject.toml-remove-benchmark-disable-option.patch \
file://check-memfree.py \
@@ -49,7 +49,7 @@ RDEPENDS:${PN}-ptest += " \
inherit ptest
do_install_ptest() {
- install -D ${WORKDIR}/check-memfree.py ${D}${PTEST_PATH}/
+ install -D ${UNPACKDIR}/check-memfree.py ${D}${PTEST_PATH}/
install -d ${D}${PTEST_PATH}/tests
cp -rf ${S}/tests/* ${D}${PTEST_PATH}/tests/
# remove test_x509.py as it needs benchmark and we don't
diff --git a/meta/recipes-devtools/python/python3-hatchling_1.24.1.bb b/meta/recipes-devtools/python/python3-hatchling_1.24.2.bb
index fc8d953281..0ad545f448 100644
--- a/meta/recipes-devtools/python/python3-hatchling_1.24.1.bb
+++ b/meta/recipes-devtools/python/python3-hatchling_1.24.2.bb
@@ -8,7 +8,7 @@ inherit pypi python_hatchling
DEPENDS += "python3-pluggy-native python3-pathspec-native python3-packaging-native python3-editables-native python3-trove-classifiers-native"
DEPENDS:remove:class-native = "python3-hatchling-native"
-SRC_URI[sha256sum] = "51f861891e98c4044eb455163a737e5d2328d7aa74890b182db2d80fee22a497"
+SRC_URI[sha256sum] = "41ddc27cdb25db9ef7b68bef075f829c84cb349aa1bff8240797d012510547b0"
do_compile:prepend() {
export PYTHONPATH=src
diff --git a/meta/recipes-devtools/python/python3-hypothesis_6.100.1.bb b/meta/recipes-devtools/python/python3-hypothesis_6.102.4.bb
index af7facfe7e..ec43514d41 100644
--- a/meta/recipes-devtools/python/python3-hypothesis_6.100.1.bb
+++ b/meta/recipes-devtools/python/python3-hypothesis_6.102.4.bb
@@ -13,7 +13,7 @@ SRC_URI += " \
file://test_rle.py \
"
-SRC_URI[sha256sum] = "ebff09d7fa4f1fb6a855a812baf17e578b4481b7b70ec6d96496210d1a4c6c35"
+SRC_URI[sha256sum] = "59b4d144346d5cffb482cc1bafbd21b13ff31608e8c4b3e4630339aee3e87763"
RDEPENDS:${PN} += " \
python3-attrs \
@@ -32,8 +32,8 @@ RDEPENDS:${PN}-ptest += " \
do_install_ptest() {
install -d ${D}${PTEST_PATH}/examples
- install -m 0755 ${WORKDIR}/test_binary_search.py ${D}${PTEST_PATH}/examples/
- install -m 0755 ${WORKDIR}/test_rle.py ${D}${PTEST_PATH}/examples/
+ install -m 0755 ${UNPACKDIR}/test_binary_search.py ${D}${PTEST_PATH}/examples/
+ install -m 0755 ${UNPACKDIR}/test_rle.py ${D}${PTEST_PATH}/examples/
}
BBCLASSEXTEND = "native nativesdk"
diff --git a/meta/recipes-devtools/python/python3-jsonschema_4.21.1.bb b/meta/recipes-devtools/python/python3-jsonschema_4.22.0.bb
index 381148f4bb..c3184396d2 100644
--- a/meta/recipes-devtools/python/python3-jsonschema_4.21.1.bb
+++ b/meta/recipes-devtools/python/python3-jsonschema_4.22.0.bb
@@ -4,7 +4,7 @@ LICENSE = "MIT"
LIC_FILES_CHKSUM = "file://COPYING;md5=7a60a81c146ec25599a3e1dabb8610a8 \
file://json/LICENSE;md5=9d4de43111d33570c8fe49b4cb0e01af"
-SRC_URI[sha256sum] = "85727c00279f5fa6bedbe6238d2aa6403bedd8b4864ab11207d07df3cc1b2ee5"
+SRC_URI[sha256sum] = "5b22d434a45935119af990552c862e5d6d564e8f6601206b305a61fdf661a2b7"
inherit pypi python_hatchling
diff --git a/meta/recipes-devtools/python/python3-lxml_5.2.1.bb b/meta/recipes-devtools/python/python3-lxml_5.2.2.bb
index 44a10505f3..e5a22e7090 100644
--- a/meta/recipes-devtools/python/python3-lxml_5.2.1.bb
+++ b/meta/recipes-devtools/python/python3-lxml_5.2.2.bb
@@ -18,7 +18,7 @@ LIC_FILES_CHKSUM = "file://LICENSES.txt;md5=e4c045ebad958ead4b48008f70838403 \
DEPENDS += "libxml2 libxslt"
-SRC_URI[sha256sum] = "3f7765e69bbce0906a7c74d5fe46d2c7a7596147318dbc08e4a2431f3060e306"
+SRC_URI[sha256sum] = "bb2dc4898180bea79863d5487e5f9c7c34297414bad54bcd0f0852aee9cfdb87"
SRC_URI += "${PYPI_SRC_URI}"
inherit pkgconfig pypi setuptools3
diff --git a/meta/recipes-devtools/python/python3-mako_1.3.3.bb b/meta/recipes-devtools/python/python3-mako_1.3.5.bb
index 7545cbef99..d27fb121a6 100644
--- a/meta/recipes-devtools/python/python3-mako_1.3.3.bb
+++ b/meta/recipes-devtools/python/python3-mako_1.3.5.bb
@@ -8,7 +8,7 @@ PYPI_PACKAGE = "Mako"
inherit pypi python_setuptools_build_meta
-SRC_URI[sha256sum] = "e16c01d9ab9c11f7290eef1cfefc093fb5a45ee4a3da09e2fec2e4d1bae54e73"
+SRC_URI[sha256sum] = "48dbc20568c1d276a2698b36d968fa76161bf127194907ea6fc594fa81f943bc"
RDEPENDS:${PN} = "python3-html \
python3-markupsafe \
diff --git a/meta/recipes-devtools/python/python3-maturin-crates.inc b/meta/recipes-devtools/python/python3-maturin-crates.inc
index 3cb614d52a..ba207458ef 100644
--- a/meta/recipes-devtools/python/python3-maturin-crates.inc
+++ b/meta/recipes-devtools/python/python3-maturin-crates.inc
@@ -3,24 +3,22 @@
# from Cargo.lock
SRC_URI += " \
crate://crates.io/adler/1.0.2 \
- crate://crates.io/ahash/0.8.6 \
+ crate://crates.io/ahash/0.8.7 \
crate://crates.io/aho-corasick/1.1.2 \
crate://crates.io/allocator-api2/0.2.16 \
- crate://crates.io/anstream/0.3.2 \
- crate://crates.io/anstream/0.6.4 \
- crate://crates.io/anstyle/1.0.2 \
- crate://crates.io/anstyle-parse/0.2.1 \
- crate://crates.io/anstyle-query/1.0.0 \
- crate://crates.io/anstyle-wincon/1.0.2 \
- crate://crates.io/anstyle-wincon/3.0.1 \
- crate://crates.io/anyhow/1.0.75 \
+ crate://crates.io/anstream/0.6.11 \
+ crate://crates.io/anstyle/1.0.4 \
+ crate://crates.io/anstyle-parse/0.2.3 \
+ crate://crates.io/anstyle-query/1.0.2 \
+ crate://crates.io/anstyle-wincon/3.0.2 \
+ crate://crates.io/anyhow/1.0.80 \
crate://crates.io/autocfg/1.1.0 \
crate://crates.io/base64/0.13.1 \
- crate://crates.io/base64/0.21.5 \
+ crate://crates.io/base64/0.21.7 \
crate://crates.io/bitflags/1.3.2 \
- crate://crates.io/bitflags/2.4.1 \
+ crate://crates.io/bitflags/2.4.2 \
crate://crates.io/block-buffer/0.10.4 \
- crate://crates.io/bstr/1.8.0 \
+ crate://crates.io/bstr/1.9.0 \
crate://crates.io/byteorder/1.5.0 \
crate://crates.io/bytes/1.5.0 \
crate://crates.io/bytesize/1.3.0 \
@@ -28,42 +26,42 @@ SRC_URI += " \
crate://crates.io/bzip2-sys/0.1.11+1.0.8 \
crate://crates.io/cab/0.4.1 \
crate://crates.io/camino/1.1.6 \
- crate://crates.io/cargo-config2/0.1.16 \
+ crate://crates.io/cargo-config2/0.1.19 \
crate://crates.io/cargo-options/0.7.2 \
- crate://crates.io/cargo-platform/0.1.5 \
- crate://crates.io/cargo-xwin/0.16.2 \
- crate://crates.io/cargo-zigbuild/0.18.0 \
+ crate://crates.io/cargo-platform/0.1.6 \
+ crate://crates.io/cargo-xwin/0.16.4 \
+ crate://crates.io/cargo-zigbuild/0.18.3 \
crate://crates.io/cargo_metadata/0.18.1 \
crate://crates.io/cbindgen/0.26.0 \
- crate://crates.io/cc/1.0.83 \
+ crate://crates.io/cc/1.0.88 \
crate://crates.io/cfb/0.9.0 \
crate://crates.io/cfg-if/1.0.0 \
crate://crates.io/charset/0.1.3 \
crate://crates.io/chumsky/0.9.3 \
- crate://crates.io/clap/4.3.24 \
- crate://crates.io/clap_builder/4.3.24 \
- crate://crates.io/clap_complete/4.3.2 \
+ crate://crates.io/clap/4.4.18 \
+ crate://crates.io/clap_builder/4.4.18 \
+ crate://crates.io/clap_complete/4.4.9 \
crate://crates.io/clap_complete_command/0.5.1 \
- crate://crates.io/clap_complete_fig/4.3.1 \
crate://crates.io/clap_complete_nushell/0.1.11 \
- crate://crates.io/clap_derive/4.3.12 \
- crate://crates.io/clap_lex/0.5.0 \
+ crate://crates.io/clap_derive/4.4.7 \
+ crate://crates.io/clap_lex/0.6.0 \
crate://crates.io/cli-table/0.4.7 \
crate://crates.io/colorchoice/1.0.0 \
- crate://crates.io/configparser/3.0.3 \
- crate://crates.io/console/0.15.7 \
+ crate://crates.io/configparser/3.0.4 \
+ crate://crates.io/console/0.15.8 \
crate://crates.io/content_inspector/0.2.4 \
- crate://crates.io/core-foundation/0.9.3 \
- crate://crates.io/core-foundation-sys/0.8.4 \
- crate://crates.io/cpufeatures/0.2.11 \
+ crate://crates.io/core-foundation/0.9.4 \
+ crate://crates.io/core-foundation-sys/0.8.6 \
+ crate://crates.io/cpufeatures/0.2.12 \
crate://crates.io/crc32fast/1.3.2 \
- crate://crates.io/crossbeam-channel/0.5.8 \
- crate://crates.io/crossbeam-deque/0.8.3 \
- crate://crates.io/crossbeam-epoch/0.9.15 \
- crate://crates.io/crossbeam-utils/0.8.16 \
+ crate://crates.io/crossbeam-channel/0.5.11 \
+ crate://crates.io/crossbeam-deque/0.8.5 \
+ crate://crates.io/crossbeam-epoch/0.9.18 \
+ crate://crates.io/crossbeam-utils/0.8.19 \
crate://crates.io/crypto-common/0.1.6 \
crate://crates.io/data-encoding/2.5.0 \
- crate://crates.io/deranged/0.3.9 \
+ crate://crates.io/deranged/0.3.11 \
+ crate://crates.io/derivative/2.2.0 \
crate://crates.io/dialoguer/0.11.0 \
crate://crates.io/diff/0.1.13 \
crate://crates.io/digest/0.10.7 \
@@ -78,8 +76,8 @@ SRC_URI += " \
crate://crates.io/errno/0.3.8 \
crate://crates.io/expect-test/1.4.1 \
crate://crates.io/fastrand/2.0.1 \
- crate://crates.io/fat-macho/0.4.7 \
- crate://crates.io/filetime/0.2.22 \
+ crate://crates.io/fat-macho/0.4.8 \
+ crate://crates.io/filetime/0.2.23 \
crate://crates.io/flate2/1.0.28 \
crate://crates.io/fnv/1.0.7 \
crate://crates.io/foreign-types/0.3.2 \
@@ -87,47 +85,42 @@ SRC_URI += " \
crate://crates.io/form_urlencoded/1.2.1 \
crate://crates.io/fs-err/2.11.0 \
crate://crates.io/generic-array/0.14.7 \
- crate://crates.io/getrandom/0.2.11 \
+ crate://crates.io/getrandom/0.2.12 \
crate://crates.io/glob/0.3.1 \
crate://crates.io/globset/0.4.14 \
- crate://crates.io/goblin/0.7.1 \
+ crate://crates.io/goblin/0.8.0 \
crate://crates.io/hashbrown/0.12.3 \
crate://crates.io/hashbrown/0.14.3 \
crate://crates.io/heck/0.4.1 \
- crate://crates.io/hermit-abi/0.3.3 \
- crate://crates.io/home/0.5.5 \
+ crate://crates.io/home/0.5.9 \
crate://crates.io/humantime/2.1.0 \
crate://crates.io/humantime-serde/1.1.1 \
crate://crates.io/idna/0.5.0 \
- crate://crates.io/ignore/0.4.20 \
+ crate://crates.io/ignore/0.4.22 \
crate://crates.io/indexmap/1.9.3 \
- crate://crates.io/indexmap/2.1.0 \
+ crate://crates.io/indexmap/2.2.3 \
crate://crates.io/indicatif/0.17.7 \
crate://crates.io/indoc/2.0.4 \
crate://crates.io/instant/0.1.12 \
- crate://crates.io/io-lifetimes/1.0.11 \
- crate://crates.io/is-terminal/0.4.9 \
crate://crates.io/itertools/0.11.0 \
- crate://crates.io/itertools/0.12.0 \
- crate://crates.io/itoa/1.0.9 \
- crate://crates.io/keyring/2.0.5 \
+ crate://crates.io/itertools/0.12.1 \
+ crate://crates.io/itoa/1.0.10 \
+ crate://crates.io/keyring/2.3.2 \
crate://crates.io/lazy_static/1.4.0 \
- crate://crates.io/lddtree/0.3.3 \
- crate://crates.io/libc/0.2.150 \
+ crate://crates.io/lddtree/0.3.4 \
+ crate://crates.io/libc/0.2.153 \
crate://crates.io/libredox/0.0.1 \
- crate://crates.io/linux-keyutils/0.2.3 \
- crate://crates.io/linux-raw-sys/0.3.8 \
- crate://crates.io/linux-raw-sys/0.4.11 \
+ crate://crates.io/linux-keyutils/0.2.4 \
+ crate://crates.io/linux-raw-sys/0.4.13 \
crate://crates.io/lock_api/0.4.11 \
crate://crates.io/log/0.4.20 \
crate://crates.io/lzxd/0.1.4 \
- crate://crates.io/mailparse/0.14.0 \
+ crate://crates.io/mailparse/0.14.1 \
crate://crates.io/matchers/0.1.0 \
- crate://crates.io/memchr/2.6.4 \
- crate://crates.io/memoffset/0.9.0 \
+ crate://crates.io/memchr/2.7.1 \
crate://crates.io/mime/0.3.17 \
crate://crates.io/mime_guess/2.0.4 \
- crate://crates.io/minijinja/1.0.10 \
+ crate://crates.io/minijinja/1.0.12 \
crate://crates.io/minimal-lexical/0.2.1 \
crate://crates.io/miniz_oxide/0.7.1 \
crate://crates.io/msi/0.7.0 \
@@ -137,128 +130,130 @@ SRC_URI += " \
crate://crates.io/normalize-line-endings/0.3.0 \
crate://crates.io/normpath/1.1.1 \
crate://crates.io/nu-ansi-term/0.46.0 \
+ crate://crates.io/num-conv/0.1.0 \
crate://crates.io/number_prefix/0.4.0 \
- crate://crates.io/once_cell/1.18.0 \
- crate://crates.io/openssl/0.10.60 \
+ crate://crates.io/once_cell/1.19.0 \
+ crate://crates.io/openssl/0.10.63 \
crate://crates.io/openssl-macros/0.1.1 \
crate://crates.io/openssl-probe/0.1.5 \
- crate://crates.io/openssl-sys/0.9.96 \
+ crate://crates.io/openssl-sys/0.9.99 \
crate://crates.io/option-ext/0.2.0 \
- crate://crates.io/os_pipe/1.1.4 \
+ crate://crates.io/os_pipe/1.1.5 \
crate://crates.io/overload/0.1.1 \
crate://crates.io/parking_lot/0.12.1 \
crate://crates.io/parking_lot_core/0.9.9 \
crate://crates.io/paste/1.0.14 \
crate://crates.io/path-slash/0.2.1 \
- crate://crates.io/pep440_rs/0.3.12 \
- crate://crates.io/pep508_rs/0.2.3 \
+ crate://crates.io/pep440_rs/0.5.0 \
+ crate://crates.io/pep508_rs/0.4.2 \
crate://crates.io/percent-encoding/2.3.1 \
crate://crates.io/pin-project-lite/0.2.13 \
- crate://crates.io/pkg-config/0.3.27 \
+ crate://crates.io/pkg-config/0.3.29 \
crate://crates.io/plain/0.2.3 \
crate://crates.io/platform-info/2.0.2 \
- crate://crates.io/portable-atomic/1.5.1 \
+ crate://crates.io/portable-atomic/1.6.0 \
crate://crates.io/powerfmt/0.2.0 \
crate://crates.io/ppv-lite86/0.2.17 \
crate://crates.io/pretty_assertions/1.4.0 \
- crate://crates.io/proc-macro2/1.0.70 \
+ crate://crates.io/proc-macro2/1.0.78 \
crate://crates.io/psm/0.1.21 \
- crate://crates.io/pyproject-toml/0.8.1 \
+ crate://crates.io/pyproject-toml/0.10.0 \
crate://crates.io/python-pkginfo/0.6.0 \
- crate://crates.io/quote/1.0.33 \
+ crate://crates.io/quote/1.0.35 \
crate://crates.io/quoted_printable/0.4.8 \
+ crate://crates.io/quoted_printable/0.5.0 \
crate://crates.io/rand/0.8.5 \
crate://crates.io/rand_chacha/0.3.1 \
crate://crates.io/rand_core/0.6.4 \
- crate://crates.io/rayon/1.8.0 \
- crate://crates.io/rayon-core/1.12.0 \
- crate://crates.io/redox_syscall/0.3.5 \
+ crate://crates.io/rayon/1.8.1 \
+ crate://crates.io/rayon-core/1.12.1 \
crate://crates.io/redox_syscall/0.4.1 \
crate://crates.io/redox_users/0.4.4 \
- crate://crates.io/regex/1.10.2 \
+ crate://crates.io/regex/1.10.3 \
crate://crates.io/regex-automata/0.1.10 \
- crate://crates.io/regex-automata/0.4.3 \
+ crate://crates.io/regex-automata/0.4.5 \
crate://crates.io/regex-syntax/0.6.29 \
crate://crates.io/regex-syntax/0.8.2 \
crate://crates.io/rfc2047-decoder/0.2.2 \
- crate://crates.io/ring/0.17.6 \
+ crate://crates.io/ring/0.17.7 \
crate://crates.io/rustc_version/0.4.0 \
- crate://crates.io/rustix/0.37.27 \
- crate://crates.io/rustix/0.38.21 \
- crate://crates.io/rustls/0.21.9 \
- crate://crates.io/rustls-pemfile/2.0.0 \
- crate://crates.io/rustls-pki-types/1.0.0 \
- crate://crates.io/rustls-webpki/0.101.7 \
+ crate://crates.io/rustix/0.38.32 \
+ crate://crates.io/rustls/0.22.2 \
+ crate://crates.io/rustls-pemfile/2.1.0 \
+ crate://crates.io/rustls-pki-types/1.3.1 \
+ crate://crates.io/rustls-webpki/0.102.1 \
crate://crates.io/rustversion/1.0.14 \
- crate://crates.io/ryu/1.0.15 \
+ crate://crates.io/ryu/1.0.16 \
crate://crates.io/same-file/1.0.6 \
- crate://crates.io/schannel/0.1.22 \
+ crate://crates.io/schannel/0.1.23 \
crate://crates.io/scopeguard/1.2.0 \
- crate://crates.io/scroll/0.11.0 \
- crate://crates.io/scroll_derive/0.11.1 \
- crate://crates.io/sct/0.7.1 \
+ crate://crates.io/scroll/0.12.0 \
+ crate://crates.io/scroll_derive/0.12.0 \
crate://crates.io/security-framework/2.9.2 \
crate://crates.io/security-framework-sys/2.9.1 \
- crate://crates.io/semver/1.0.20 \
- crate://crates.io/serde/1.0.193 \
- crate://crates.io/serde_derive/1.0.193 \
- crate://crates.io/serde_json/1.0.108 \
- crate://crates.io/serde_spanned/0.6.4 \
+ crate://crates.io/semver/1.0.22 \
+ crate://crates.io/serde/1.0.197 \
+ crate://crates.io/serde_derive/1.0.197 \
+ crate://crates.io/serde_json/1.0.114 \
+ crate://crates.io/serde_spanned/0.6.5 \
crate://crates.io/sha2/0.10.8 \
crate://crates.io/sharded-slab/0.1.7 \
crate://crates.io/shell-words/1.1.0 \
- crate://crates.io/shlex/1.2.0 \
- crate://crates.io/similar/2.3.0 \
- crate://crates.io/smallvec/1.11.2 \
+ crate://crates.io/shlex/1.3.0 \
+ crate://crates.io/similar/2.4.0 \
+ crate://crates.io/smallvec/1.13.1 \
crate://crates.io/smawk/0.3.2 \
- crate://crates.io/snapbox/0.4.14 \
- crate://crates.io/snapbox-macros/0.3.6 \
+ crate://crates.io/snapbox/0.5.7 \
+ crate://crates.io/snapbox-macros/0.3.8 \
crate://crates.io/socks/0.3.4 \
crate://crates.io/spin/0.9.8 \
crate://crates.io/stacker/0.1.15 \
crate://crates.io/static_assertions/1.1.0 \
crate://crates.io/strsim/0.10.0 \
+ crate://crates.io/subtle/2.5.0 \
crate://crates.io/syn/1.0.109 \
- crate://crates.io/syn/2.0.39 \
+ crate://crates.io/syn/2.0.48 \
crate://crates.io/tar/0.4.40 \
- crate://crates.io/target-lexicon/0.12.12 \
- crate://crates.io/tempfile/3.8.1 \
- crate://crates.io/termcolor/1.4.0 \
- crate://crates.io/terminal_size/0.2.6 \
- crate://crates.io/textwrap/0.16.0 \
- crate://crates.io/thiserror/1.0.50 \
- crate://crates.io/thiserror-impl/1.0.50 \
+ crate://crates.io/target-lexicon/0.12.14 \
+ crate://crates.io/tempfile/3.9.0 \
+ crate://crates.io/termcolor/1.4.1 \
+ crate://crates.io/terminal_size/0.3.0 \
+ crate://crates.io/textwrap/0.16.1 \
+ crate://crates.io/thiserror/1.0.57 \
+ crate://crates.io/thiserror-impl/1.0.57 \
crate://crates.io/thread_local/1.1.7 \
- crate://crates.io/time/0.3.30 \
+ crate://crates.io/time/0.3.34 \
crate://crates.io/time-core/0.1.2 \
- crate://crates.io/time-macros/0.2.15 \
+ crate://crates.io/time-macros/0.2.17 \
crate://crates.io/tinyvec/1.6.0 \
crate://crates.io/tinyvec_macros/0.1.1 \
crate://crates.io/toml/0.5.11 \
- crate://crates.io/toml/0.8.8 \
+ crate://crates.io/toml/0.8.10 \
crate://crates.io/toml_datetime/0.6.5 \
- crate://crates.io/toml_edit/0.20.7 \
- crate://crates.io/toml_edit/0.21.0 \
+ crate://crates.io/toml_edit/0.22.6 \
crate://crates.io/tracing/0.1.40 \
crate://crates.io/tracing-attributes/0.1.27 \
crate://crates.io/tracing-core/0.1.32 \
crate://crates.io/tracing-log/0.2.0 \
crate://crates.io/tracing-serde/0.1.3 \
crate://crates.io/tracing-subscriber/0.3.18 \
- crate://crates.io/trycmd/0.14.19 \
+ crate://crates.io/trycmd/0.15.0 \
crate://crates.io/twox-hash/1.6.3 \
crate://crates.io/typenum/1.17.0 \
crate://crates.io/unicase/2.7.0 \
- crate://crates.io/unicode-bidi/0.3.13 \
+ crate://crates.io/unicode-bidi/0.3.15 \
crate://crates.io/unicode-ident/1.0.12 \
crate://crates.io/unicode-linebreak/0.1.5 \
crate://crates.io/unicode-normalization/0.1.22 \
crate://crates.io/unicode-width/0.1.11 \
+ crate://crates.io/unicode-xid/0.2.4 \
+ crate://crates.io/unscanny/0.1.0 \
crate://crates.io/untrusted/0.9.0 \
- crate://crates.io/ureq/2.9.1 \
+ crate://crates.io/ureq/2.9.6 \
crate://crates.io/url/2.5.0 \
+ crate://crates.io/urlencoding/2.1.3 \
crate://crates.io/utf8parse/0.2.1 \
- crate://crates.io/uuid/1.6.1 \
+ crate://crates.io/uuid/1.7.0 \
crate://crates.io/valuable/0.1.0 \
crate://crates.io/vcpkg/0.2.15 \
crate://crates.io/version_check/0.9.4 \
@@ -266,69 +261,59 @@ SRC_URI += " \
crate://crates.io/wait-timeout/0.2.0 \
crate://crates.io/walkdir/2.4.0 \
crate://crates.io/wasi/0.11.0+wasi-snapshot-preview1 \
- crate://crates.io/webpki-roots/0.25.3 \
+ crate://crates.io/webpki-roots/0.26.0 \
crate://crates.io/which/5.0.0 \
- crate://crates.io/wild/2.2.0 \
+ crate://crates.io/which/6.0.0 \
+ crate://crates.io/wild/2.2.1 \
crate://crates.io/winapi/0.3.9 \
crate://crates.io/winapi-i686-pc-windows-gnu/0.4.0 \
crate://crates.io/winapi-util/0.1.6 \
crate://crates.io/winapi-x86_64-pc-windows-gnu/0.4.0 \
- crate://crates.io/windows-sys/0.45.0 \
crate://crates.io/windows-sys/0.48.0 \
crate://crates.io/windows-sys/0.52.0 \
- crate://crates.io/windows-targets/0.42.2 \
crate://crates.io/windows-targets/0.48.5 \
crate://crates.io/windows-targets/0.52.0 \
- crate://crates.io/windows_aarch64_gnullvm/0.42.2 \
crate://crates.io/windows_aarch64_gnullvm/0.48.5 \
crate://crates.io/windows_aarch64_gnullvm/0.52.0 \
- crate://crates.io/windows_aarch64_msvc/0.42.2 \
crate://crates.io/windows_aarch64_msvc/0.48.5 \
crate://crates.io/windows_aarch64_msvc/0.52.0 \
- crate://crates.io/windows_i686_gnu/0.42.2 \
crate://crates.io/windows_i686_gnu/0.48.5 \
crate://crates.io/windows_i686_gnu/0.52.0 \
- crate://crates.io/windows_i686_msvc/0.42.2 \
crate://crates.io/windows_i686_msvc/0.48.5 \
crate://crates.io/windows_i686_msvc/0.52.0 \
- crate://crates.io/windows_x86_64_gnu/0.42.2 \
crate://crates.io/windows_x86_64_gnu/0.48.5 \
crate://crates.io/windows_x86_64_gnu/0.52.0 \
- crate://crates.io/windows_x86_64_gnullvm/0.42.2 \
crate://crates.io/windows_x86_64_gnullvm/0.48.5 \
crate://crates.io/windows_x86_64_gnullvm/0.52.0 \
- crate://crates.io/windows_x86_64_msvc/0.42.2 \
crate://crates.io/windows_x86_64_msvc/0.48.5 \
crate://crates.io/windows_x86_64_msvc/0.52.0 \
- crate://crates.io/winnow/0.5.19 \
- crate://crates.io/xattr/1.0.1 \
+ crate://crates.io/winnow/0.6.2 \
+ crate://crates.io/xattr/1.3.1 \
crate://crates.io/xwin/0.5.0 \
crate://crates.io/yansi/0.5.1 \
- crate://crates.io/zerocopy/0.7.28 \
- crate://crates.io/zerocopy-derive/0.7.28 \
+ crate://crates.io/zerocopy/0.7.32 \
+ crate://crates.io/zerocopy-derive/0.7.32 \
crate://crates.io/zeroize/1.7.0 \
crate://crates.io/zip/0.6.6 \
"
SRC_URI[adler-1.0.2.sha256sum] = "f26201604c87b1e01bd3d98f8d5d9a8fcbb815e8cedb41ffccbeb4bf593a35fe"
-SRC_URI[ahash-0.8.6.sha256sum] = "91429305e9f0a25f6205c5b8e0d2db09e0708a7a6df0f42212bb56c32c8ac97a"
+SRC_URI[ahash-0.8.7.sha256sum] = "77c3a9648d43b9cd48db467b3f87fdd6e146bcc88ab0180006cef2179fe11d01"
SRC_URI[aho-corasick-1.1.2.sha256sum] = "b2969dcb958b36655471fc61f7e416fa76033bdd4bfed0678d8fee1e2d07a1f0"
SRC_URI[allocator-api2-0.2.16.sha256sum] = "0942ffc6dcaadf03badf6e6a2d0228460359d5e34b57ccdc720b7382dfbd5ec5"
-SRC_URI[anstream-0.3.2.sha256sum] = "0ca84f3628370c59db74ee214b3263d58f9aadd9b4fe7e711fd87dc452b7f163"
-SRC_URI[anstream-0.6.4.sha256sum] = "2ab91ebe16eb252986481c5b62f6098f3b698a45e34b5b98200cf20dd2484a44"
-SRC_URI[anstyle-1.0.2.sha256sum] = "15c4c2c83f81532e5845a733998b6971faca23490340a418e9b72a3ec9de12ea"
-SRC_URI[anstyle-parse-0.2.1.sha256sum] = "938874ff5980b03a87c5524b3ae5b59cf99b1d6bc836848df7bc5ada9643c333"
-SRC_URI[anstyle-query-1.0.0.sha256sum] = "5ca11d4be1bab0c8bc8734a9aa7bf4ee8316d462a08c6ac5052f888fef5b494b"
-SRC_URI[anstyle-wincon-1.0.2.sha256sum] = "c677ab05e09154296dd37acecd46420c17b9713e8366facafa8fc0885167cf4c"
-SRC_URI[anstyle-wincon-3.0.1.sha256sum] = "f0699d10d2f4d628a98ee7b57b289abbc98ff3bad977cb3152709d4bf2330628"
-SRC_URI[anyhow-1.0.75.sha256sum] = "a4668cab20f66d8d020e1fbc0ebe47217433c1b6c8f2040faf858554e394ace6"
+SRC_URI[anstream-0.6.11.sha256sum] = "6e2e1ebcb11de5c03c67de28a7df593d32191b44939c482e97702baaaa6ab6a5"
+SRC_URI[anstyle-1.0.4.sha256sum] = "7079075b41f533b8c61d2a4d073c4676e1f8b249ff94a393b0595db304e0dd87"
+SRC_URI[anstyle-parse-0.2.3.sha256sum] = "c75ac65da39e5fe5ab759307499ddad880d724eed2f6ce5b5e8a26f4f387928c"
+SRC_URI[anstyle-query-1.0.2.sha256sum] = "e28923312444cdd728e4738b3f9c9cac739500909bb3d3c94b43551b16517648"
+SRC_URI[anstyle-wincon-3.0.2.sha256sum] = "1cd54b81ec8d6180e24654d0b371ad22fc3dd083b6ff8ba325b72e00c87660a7"
+SRC_URI[anyhow-1.0.80.sha256sum] = "5ad32ce52e4161730f7098c077cd2ed6229b5804ccf99e5366be1ab72a98b4e1"
SRC_URI[autocfg-1.1.0.sha256sum] = "d468802bab17cbc0cc575e9b053f41e72aa36bfa6b7f55e3529ffa43161b97fa"
SRC_URI[base64-0.13.1.sha256sum] = "9e1b586273c5702936fe7b7d6896644d8be71e6314cfe09d3167c95f712589e8"
-SRC_URI[base64-0.21.5.sha256sum] = "35636a1494ede3b646cc98f74f8e62c773a38a659ebc777a2cf26b9b74171df9"
+SRC_URI[base64-0.21.7.sha256sum] = "9d297deb1925b89f2ccc13d7635fa0714f12c87adce1c75356b39ca9b7178567"
SRC_URI[bitflags-1.3.2.sha256sum] = "bef38d45163c2f1dde094a7dfd33ccf595c92905c8f8f4fdc18d06fb1037718a"
-SRC_URI[bitflags-2.4.1.sha256sum] = "327762f6e5a765692301e5bb513e0d9fef63be86bbc14528052b1cd3e6f03e07"
+SRC_URI[bitflags-2.4.2.sha256sum] = "ed570934406eb16438a4e976b1b4500774099c13b8cb96eec99f620f05090ddf"
SRC_URI[block-buffer-0.10.4.sha256sum] = "3078c7629b62d3f0439517fa394996acacc5cbc91c5a20d8c658e77abd503a71"
-SRC_URI[bstr-1.8.0.sha256sum] = "542f33a8835a0884b006a0c3df3dadd99c0c3f296ed26c2fdc8028e01ad6230c"
+SRC_URI[bstr-1.9.0.sha256sum] = "c48f0051a4b4c5e0b6d365cd04af53aeaa209e3cc15ec2cdb69e73cc87fbd0dc"
SRC_URI[byteorder-1.5.0.sha256sum] = "1fd0f2584146f6f2ef48085050886acf353beff7305ebd1ae69500e27c67f64b"
SRC_URI[bytes-1.5.0.sha256sum] = "a2bd12c1caf447e69cd4528f47f94d203fd2582878ecb9e9465484c4148a8223"
SRC_URI[bytesize-1.3.0.sha256sum] = "a3e368af43e418a04d52505cf3dbc23dda4e3407ae2fa99fd0e4f308ce546acc"
@@ -336,42 +321,42 @@ SRC_URI[bzip2-0.4.4.sha256sum] = "bdb116a6ef3f6c3698828873ad02c3014b3c85cadb8849
SRC_URI[bzip2-sys-0.1.11+1.0.8.sha256sum] = "736a955f3fa7875102d57c82b8cac37ec45224a07fd32d58f9f7a186b6cd4cdc"
SRC_URI[cab-0.4.1.sha256sum] = "ae6b4de23c7d39c0631fd3cc952d87951c86c75a13812d7247cb7a896e7b3551"
SRC_URI[camino-1.1.6.sha256sum] = "c59e92b5a388f549b863a7bea62612c09f24c8393560709a54558a9abdfb3b9c"
-SRC_URI[cargo-config2-0.1.16.sha256sum] = "7f387366785e82c7ec7ef5b845a7f61324fbf5d467d6a878469eac30c1c44b1b"
+SRC_URI[cargo-config2-0.1.19.sha256sum] = "3a7fb69d74d76f8c254afd1c0e76aca40c305707b28aebe3c5a0fd2ee62aeeeb"
SRC_URI[cargo-options-0.7.2.sha256sum] = "cad71bf996c8e5b9d28ef3472d7ee41f277edf4e38cd597f51ad0438d05d76ea"
-SRC_URI[cargo-platform-0.1.5.sha256sum] = "e34637b3140142bdf929fb439e8aa4ebad7651ebf7b1080b3930aa16ac1459ff"
-SRC_URI[cargo-xwin-0.16.2.sha256sum] = "02bb6bf59526935e47445f959a19c2168f151284dbf7e57f5577934334e9a61d"
-SRC_URI[cargo-zigbuild-0.18.0.sha256sum] = "edc9c2fe646a29983b5f7263bd789175f2aaad7ea42525affa40e2172be93286"
+SRC_URI[cargo-platform-0.1.6.sha256sum] = "ceed8ef69d8518a5dda55c07425450b58a4e1946f4951eab6d7191ee86c2443d"
+SRC_URI[cargo-xwin-0.16.4.sha256sum] = "5e6c3dd7f20fdd197397532ac882e918cfe1d56f262a97ded7460a50e031e06b"
+SRC_URI[cargo-zigbuild-0.18.3.sha256sum] = "cb76e6ab558f9138291c7e1fa954ffd58e060712eab13f97a317da712218ca24"
SRC_URI[cargo_metadata-0.18.1.sha256sum] = "2d886547e41f740c616ae73108f6eb70afe6d940c7bc697cb30f13daec073037"
SRC_URI[cbindgen-0.26.0.sha256sum] = "da6bc11b07529f16944307272d5bd9b22530bc7d05751717c9d416586cedab49"
-SRC_URI[cc-1.0.83.sha256sum] = "f1174fb0b6ec23863f8b971027804a42614e347eafb0a95bf0b12cdae21fc4d0"
+SRC_URI[cc-1.0.88.sha256sum] = "02f341c093d19155a6e41631ce5971aac4e9a868262212153124c15fa22d1cdc"
SRC_URI[cfb-0.9.0.sha256sum] = "b390793e912300f1aa713429f7fd0c391024e6c18b988962558bc4f96a349b1f"
SRC_URI[cfg-if-1.0.0.sha256sum] = "baf1de4339761588bc0619e3cbc0120ee582ebb74b53b4efbf79117bd2da40fd"
SRC_URI[charset-0.1.3.sha256sum] = "18e9079d1a12a2cc2bffb5db039c43661836ead4082120d5844f02555aca2d46"
SRC_URI[chumsky-0.9.3.sha256sum] = "8eebd66744a15ded14960ab4ccdbfb51ad3b81f51f3f04a80adac98c985396c9"
-SRC_URI[clap-4.3.24.sha256sum] = "fb690e81c7840c0d7aade59f242ea3b41b9bc27bcd5997890e7702ae4b32e487"
-SRC_URI[clap_builder-4.3.24.sha256sum] = "5ed2e96bc16d8d740f6f48d663eddf4b8a0983e79210fd55479b7bcd0a69860e"
-SRC_URI[clap_complete-4.3.2.sha256sum] = "5fc443334c81a804575546c5a8a79b4913b50e28d69232903604cada1de817ce"
+SRC_URI[clap-4.4.18.sha256sum] = "1e578d6ec4194633722ccf9544794b71b1385c3c027efe0c55db226fc880865c"
+SRC_URI[clap_builder-4.4.18.sha256sum] = "4df4df40ec50c46000231c914968278b1eb05098cf8f1b3a518a95030e71d1c7"
+SRC_URI[clap_complete-4.4.9.sha256sum] = "df631ae429f6613fcd3a7c1adbdb65f637271e561b03680adaa6573015dfb106"
SRC_URI[clap_complete_command-0.5.1.sha256sum] = "183495371ea78d4c9ff638bfc6497d46fed2396e4f9c50aebc1278a4a9919a3d"
-SRC_URI[clap_complete_fig-4.3.1.sha256sum] = "99fee1d30a51305a6c2ed3fc5709be3c8af626c9c958e04dd9ae94e27bcbce9f"
SRC_URI[clap_complete_nushell-0.1.11.sha256sum] = "5d02bc8b1a18ee47c4d2eec3fb5ac034dc68ebea6125b1509e9ccdffcddce66e"
-SRC_URI[clap_derive-4.3.12.sha256sum] = "54a9bb5758fc5dfe728d1019941681eccaf0cf8a4189b692a0ee2f2ecf90a050"
-SRC_URI[clap_lex-0.5.0.sha256sum] = "2da6da31387c7e4ef160ffab6d5e7f00c42626fe39aea70a7b0f1773f7dd6c1b"
+SRC_URI[clap_derive-4.4.7.sha256sum] = "cf9804afaaf59a91e75b022a30fb7229a7901f60c755489cc61c9b423b836442"
+SRC_URI[clap_lex-0.6.0.sha256sum] = "702fc72eb24e5a1e48ce58027a675bc24edd52096d5397d4aea7c6dd9eca0bd1"
SRC_URI[cli-table-0.4.7.sha256sum] = "adfbb116d9e2c4be7011360d0c0bee565712c11e969c9609b25b619366dc379d"
SRC_URI[colorchoice-1.0.0.sha256sum] = "acbf1af155f9b9ef647e42cdc158db4b64a1b61f743629225fde6f3e0be2a7c7"
-SRC_URI[configparser-3.0.3.sha256sum] = "e0e56e414a2a52ab2a104f85cd40933c2fbc278b83637facf646ecf451b49237"
-SRC_URI[console-0.15.7.sha256sum] = "c926e00cc70edefdc64d3a5ff31cc65bb97a3460097762bd23afb4d8145fccf8"
+SRC_URI[configparser-3.0.4.sha256sum] = "4ec6d3da8e550377a85339063af6e3735f4b1d9392108da4e083a1b3b9820288"
+SRC_URI[console-0.15.8.sha256sum] = "0e1f83fc076bd6dd27517eacdf25fef6c4dfe5f1d7448bafaaf3a26f13b5e4eb"
SRC_URI[content_inspector-0.2.4.sha256sum] = "b7bda66e858c683005a53a9a60c69a4aca7eeaa45d124526e389f7aec8e62f38"
-SRC_URI[core-foundation-0.9.3.sha256sum] = "194a7a9e6de53fa55116934067c844d9d749312f75c6f6d0980e8c252f8c2146"
-SRC_URI[core-foundation-sys-0.8.4.sha256sum] = "e496a50fda8aacccc86d7529e2c1e0892dbd0f898a6b5645b5561b89c3210efa"
-SRC_URI[cpufeatures-0.2.11.sha256sum] = "ce420fe07aecd3e67c5f910618fe65e94158f6dcc0adf44e00d69ce2bdfe0fd0"
+SRC_URI[core-foundation-0.9.4.sha256sum] = "91e195e091a93c46f7102ec7818a2aa394e1e1771c3ab4825963fa03e45afb8f"
+SRC_URI[core-foundation-sys-0.8.6.sha256sum] = "06ea2b9bc92be3c2baa9334a323ebca2d6f074ff852cd1d7b11064035cd3868f"
+SRC_URI[cpufeatures-0.2.12.sha256sum] = "53fe5e26ff1b7aef8bca9c6080520cfb8d9333c7568e1829cef191a9723e5504"
SRC_URI[crc32fast-1.3.2.sha256sum] = "b540bd8bc810d3885c6ea91e2018302f68baba2129ab3e88f32389ee9370880d"
-SRC_URI[crossbeam-channel-0.5.8.sha256sum] = "a33c2bf77f2df06183c3aa30d1e96c0695a313d4f9c453cc3762a6db39f99200"
-SRC_URI[crossbeam-deque-0.8.3.sha256sum] = "ce6fd6f855243022dcecf8702fef0c297d4338e226845fe067f6341ad9fa0cef"
-SRC_URI[crossbeam-epoch-0.9.15.sha256sum] = "ae211234986c545741a7dc064309f67ee1e5ad243d0e48335adc0484d960bcc7"
-SRC_URI[crossbeam-utils-0.8.16.sha256sum] = "5a22b2d63d4d1dc0b7f1b6b2747dd0088008a9be28b6ddf0b1e7d335e3037294"
+SRC_URI[crossbeam-channel-0.5.11.sha256sum] = "176dc175b78f56c0f321911d9c8eb2b77a78a4860b9c19db83835fea1a46649b"
+SRC_URI[crossbeam-deque-0.8.5.sha256sum] = "613f8cc01fe9cf1a3eb3d7f488fd2fa8388403e97039e2f73692932e291a770d"
+SRC_URI[crossbeam-epoch-0.9.18.sha256sum] = "5b82ac4a3c2ca9c3460964f020e1402edd5753411d7737aa39c3714ad1b5420e"
+SRC_URI[crossbeam-utils-0.8.19.sha256sum] = "248e3bacc7dc6baa3b21e405ee045c3047101a49145e7e9eca583ab4c2ca5345"
SRC_URI[crypto-common-0.1.6.sha256sum] = "1bfb12502f3fc46cca1bb51ac28df9d618d813cdc3d2f25b9fe775a34af26bb3"
SRC_URI[data-encoding-2.5.0.sha256sum] = "7e962a19be5cfc3f3bf6dd8f61eb50107f356ad6270fbb3ed41476571db78be5"
-SRC_URI[deranged-0.3.9.sha256sum] = "0f32d04922c60427da6f9fef14d042d9edddef64cb9d4ce0d64d0685fbeb1fd3"
+SRC_URI[deranged-0.3.11.sha256sum] = "b42b6fa04a440b495c8b04d0e71b707c585f83cb9cb28cf8cd0d976c315e31b4"
+SRC_URI[derivative-2.2.0.sha256sum] = "fcc3dd5e9e9c0b295d6e1e4d811fb6f157d5ffd784b8d202fc62eac8035a770b"
SRC_URI[dialoguer-0.11.0.sha256sum] = "658bce805d770f407bc62102fca7c2c64ceef2fbcb2b8bd19d2765ce093980de"
SRC_URI[diff-0.1.13.sha256sum] = "56254986775e3233ffa9c4d7d3faaf6d36a2c09d30b20687e9f88bc8bafc16c8"
SRC_URI[digest-0.10.7.sha256sum] = "9ed9a281f7bc9b7576e61468ba615a66a5c8cfdff42420a70aa82701a3b1e292"
@@ -386,8 +371,8 @@ SRC_URI[equivalent-1.0.1.sha256sum] = "5443807d6dff69373d433ab9ef5378ad8df50ca62
SRC_URI[errno-0.3.8.sha256sum] = "a258e46cdc063eb8519c00b9fc845fc47bcfca4130e2f08e88665ceda8474245"
SRC_URI[expect-test-1.4.1.sha256sum] = "30d9eafeadd538e68fb28016364c9732d78e420b9ff8853fa5e4058861e9f8d3"
SRC_URI[fastrand-2.0.1.sha256sum] = "25cbce373ec4653f1a01a31e8a5e5ec0c622dc27ff9c4e6606eefef5cbbed4a5"
-SRC_URI[fat-macho-0.4.7.sha256sum] = "63fa117c7dcabeb8c83d5c229764cfa46518545d2dba5a9a08912014711f997b"
-SRC_URI[filetime-0.2.22.sha256sum] = "d4029edd3e734da6fe05b6cd7bd2960760a616bd2ddd0d59a0124746d6272af0"
+SRC_URI[fat-macho-0.4.8.sha256sum] = "0d4c93f393add03d72bc10dd3dea43a1610ecb29e0c0a6459c70b53b82931adf"
+SRC_URI[filetime-0.2.23.sha256sum] = "1ee447700ac8aa0b2f2bd7bc4462ad686ba06baa6727ac149a2d6277f0d240fd"
SRC_URI[flate2-1.0.28.sha256sum] = "46303f565772937ffe1d394a4fac6f411c6013172fadde9dcdb1e147a086940e"
SRC_URI[fnv-1.0.7.sha256sum] = "3f9eec918d3f24069decb9af1554cad7c880e2da24a9afd88aca000531ab82c1"
SRC_URI[foreign-types-0.3.2.sha256sum] = "f6f339eb8adc052cd2ca78910fda869aefa38d22d5cb648e6485e4d3fc06f3b1"
@@ -395,47 +380,42 @@ SRC_URI[foreign-types-shared-0.1.1.sha256sum] = "00b0228411908ca8685dba7fc2cdd70
SRC_URI[form_urlencoded-1.2.1.sha256sum] = "e13624c2627564efccf4934284bdd98cbaa14e79b0b5a141218e507b3a823456"
SRC_URI[fs-err-2.11.0.sha256sum] = "88a41f105fe1d5b6b34b2055e3dc59bb79b46b48b2040b9e6c7b4b5de097aa41"
SRC_URI[generic-array-0.14.7.sha256sum] = "85649ca51fd72272d7821adaf274ad91c288277713d9c18820d8499a7ff69e9a"
-SRC_URI[getrandom-0.2.11.sha256sum] = "fe9006bed769170c11f845cf00c7c1e9092aeb3f268e007c3e760ac68008070f"
+SRC_URI[getrandom-0.2.12.sha256sum] = "190092ea657667030ac6a35e305e62fc4dd69fd98ac98631e5d3a2b1575a12b5"
SRC_URI[glob-0.3.1.sha256sum] = "d2fabcfbdc87f4758337ca535fb41a6d701b65693ce38287d856d1674551ec9b"
SRC_URI[globset-0.4.14.sha256sum] = "57da3b9b5b85bd66f31093f8c408b90a74431672542466497dcbdfdc02034be1"
-SRC_URI[goblin-0.7.1.sha256sum] = "f27c1b4369c2cd341b5de549380158b105a04c331be5db9110eef7b6d2742134"
+SRC_URI[goblin-0.8.0.sha256sum] = "bb07a4ffed2093b118a525b1d8f5204ae274faed5604537caf7135d0f18d9887"
SRC_URI[hashbrown-0.12.3.sha256sum] = "8a9ee70c43aaf417c914396645a0fa852624801b24ebb7ae78fe8272889ac888"
SRC_URI[hashbrown-0.14.3.sha256sum] = "290f1a1d9242c78d09ce40a5e87e7554ee637af1351968159f4952f028f75604"
SRC_URI[heck-0.4.1.sha256sum] = "95505c38b4572b2d910cecb0281560f54b440a19336cbbcb27bf6ce6adc6f5a8"
-SRC_URI[hermit-abi-0.3.3.sha256sum] = "d77f7ec81a6d05a3abb01ab6eb7590f6083d08449fe5a1c8b1e620283546ccb7"
-SRC_URI[home-0.5.5.sha256sum] = "5444c27eef6923071f7ebcc33e3444508466a76f7a2b93da00ed6e19f30c1ddb"
+SRC_URI[home-0.5.9.sha256sum] = "e3d1354bf6b7235cb4a0576c2619fd4ed18183f689b12b006a0ee7329eeff9a5"
SRC_URI[humantime-2.1.0.sha256sum] = "9a3a5bfb195931eeb336b2a7b4d761daec841b97f947d34394601737a7bba5e4"
SRC_URI[humantime-serde-1.1.1.sha256sum] = "57a3db5ea5923d99402c94e9feb261dc5ee9b4efa158b0315f788cf549cc200c"
SRC_URI[idna-0.5.0.sha256sum] = "634d9b1461af396cad843f47fdba5597a4f9e6ddd4bfb6ff5d85028c25cb12f6"
-SRC_URI[ignore-0.4.20.sha256sum] = "dbe7873dab538a9a44ad79ede1faf5f30d49f9a5c883ddbab48bce81b64b7492"
+SRC_URI[ignore-0.4.22.sha256sum] = "b46810df39e66e925525d6e38ce1e7f6e1d208f72dc39757880fcb66e2c58af1"
SRC_URI[indexmap-1.9.3.sha256sum] = "bd070e393353796e801d209ad339e89596eb4c8d430d18ede6a1cced8fafbd99"
-SRC_URI[indexmap-2.1.0.sha256sum] = "d530e1a18b1cb4c484e6e34556a0d948706958449fca0cab753d649f2bce3d1f"
+SRC_URI[indexmap-2.2.3.sha256sum] = "233cf39063f058ea2caae4091bf4a3ef70a653afbc026f5c4a4135d114e3c177"
SRC_URI[indicatif-0.17.7.sha256sum] = "fb28741c9db9a713d93deb3bb9515c20788cef5815265bee4980e87bde7e0f25"
SRC_URI[indoc-2.0.4.sha256sum] = "1e186cfbae8084e513daff4240b4797e342f988cecda4fb6c939150f96315fd8"
SRC_URI[instant-0.1.12.sha256sum] = "7a5bbe824c507c5da5956355e86a746d82e0e1464f65d862cc5e71da70e94b2c"
-SRC_URI[io-lifetimes-1.0.11.sha256sum] = "eae7b9aee968036d54dce06cebaefd919e4472e753296daccd6d344e3e2df0c2"
-SRC_URI[is-terminal-0.4.9.sha256sum] = "cb0889898416213fab133e1d33a0e5858a48177452750691bde3666d0fdbaf8b"
SRC_URI[itertools-0.11.0.sha256sum] = "b1c173a5686ce8bfa551b3563d0c2170bf24ca44da99c7ca4bfdab5418c3fe57"
-SRC_URI[itertools-0.12.0.sha256sum] = "25db6b064527c5d482d0423354fcd07a89a2dfe07b67892e62411946db7f07b0"
-SRC_URI[itoa-1.0.9.sha256sum] = "af150ab688ff2122fcef229be89cb50dd66af9e01a4ff320cc137eecc9bacc38"
-SRC_URI[keyring-2.0.5.sha256sum] = "9549a129bd08149e0a71b2d1ce2729780d47127991bfd0a78cc1df697ec72492"
+SRC_URI[itertools-0.12.1.sha256sum] = "ba291022dbbd398a455acf126c1e341954079855bc60dfdda641363bd6922569"
+SRC_URI[itoa-1.0.10.sha256sum] = "b1a46d1a171d865aa5f83f92695765caa047a9b4cbae2cbf37dbd613a793fd4c"
+SRC_URI[keyring-2.3.2.sha256sum] = "1be8bc4c6b6e9d85ecdad090fcf342a9216f53d747a537cc05e3452fd650ca46"
SRC_URI[lazy_static-1.4.0.sha256sum] = "e2abad23fbc42b3700f2f279844dc832adb2b2eb069b2df918f455c4e18cc646"
-SRC_URI[lddtree-0.3.3.sha256sum] = "2f5bfec46830ad3a95199ae6804dfe9f51fdad43d7a95fbb6c185efa9824c295"
-SRC_URI[libc-0.2.150.sha256sum] = "89d92a4743f9a61002fae18374ed11e7973f530cb3a3255fb354818118b2203c"
+SRC_URI[lddtree-0.3.4.sha256sum] = "f88a93876d2485ede9c97d698c164cf5c024491908483964a998faae9705dea6"
+SRC_URI[libc-0.2.153.sha256sum] = "9c198f91728a82281a64e1f4f9eeb25d82cb32a5de251c6bd1b5154d63a8e7bd"
SRC_URI[libredox-0.0.1.sha256sum] = "85c833ca1e66078851dba29046874e38f08b2c883700aa29a03ddd3b23814ee8"
-SRC_URI[linux-keyutils-0.2.3.sha256sum] = "3f27bb67f6dd1d0bb5ab582868e4f65052e58da6401188a08f0da09cf512b84b"
-SRC_URI[linux-raw-sys-0.3.8.sha256sum] = "ef53942eb7bf7ff43a617b3e2c1c4a5ecf5944a7c1bc12d7ee39bbb15e5c1519"
-SRC_URI[linux-raw-sys-0.4.11.sha256sum] = "969488b55f8ac402214f3f5fd243ebb7206cf82de60d3172994707a4bcc2b829"
+SRC_URI[linux-keyutils-0.2.4.sha256sum] = "761e49ec5fd8a5a463f9b84e877c373d888935b71c6be78f3767fe2ae6bed18e"
+SRC_URI[linux-raw-sys-0.4.13.sha256sum] = "01cda141df6706de531b6c46c3a33ecca755538219bd484262fa09410c13539c"
SRC_URI[lock_api-0.4.11.sha256sum] = "3c168f8615b12bc01f9c17e2eb0cc07dcae1940121185446edc3744920e8ef45"
SRC_URI[log-0.4.20.sha256sum] = "b5e6163cb8c49088c2c36f57875e58ccd8c87c7427f7fbd50ea6710b2f3f2e8f"
SRC_URI[lzxd-0.1.4.sha256sum] = "784462f20dddd9dfdb45de963fa4ad4a288cb10a7889ac5d2c34fb6481c6b213"
-SRC_URI[mailparse-0.14.0.sha256sum] = "6b56570f5f8c0047260d1c8b5b331f62eb9c660b9dd4071a8c46f8c7d3f280aa"
+SRC_URI[mailparse-0.14.1.sha256sum] = "2d096594926cab442e054e047eb8c1402f7d5b2272573b97ba68aa40629f9757"
SRC_URI[matchers-0.1.0.sha256sum] = "8263075bb86c5a1b1427b5ae862e8889656f126e9f77c484496e8b47cf5c5558"
-SRC_URI[memchr-2.6.4.sha256sum] = "f665ee40bc4a3c5590afb1e9677db74a508659dfd71e126420da8274909a0167"
-SRC_URI[memoffset-0.9.0.sha256sum] = "5a634b1c61a95585bd15607c6ab0c4e5b226e695ff2800ba0cdccddf208c406c"
+SRC_URI[memchr-2.7.1.sha256sum] = "523dc4f511e55ab87b694dc30d0f820d60906ef06413f93d4d7a1385599cc149"
SRC_URI[mime-0.3.17.sha256sum] = "6877bb514081ee2a7ff5ef9de3281f14a4dd4bceac4c09388074a6b5df8a139a"
SRC_URI[mime_guess-2.0.4.sha256sum] = "4192263c238a5f0d0c6bfd21f336a313a4ce1c450542449ca191bb657b4642ef"
-SRC_URI[minijinja-1.0.10.sha256sum] = "208758577ef2c86cf5dd3e85730d161413ec3284e2d73b2ef65d9a24d9971bcb"
+SRC_URI[minijinja-1.0.12.sha256sum] = "6fe0ff215195a22884d867b547c70a0c4815cbbcc70991f281dca604b20d10ce"
SRC_URI[minimal-lexical-0.2.1.sha256sum] = "68354c5c6bd36d73ff3feceb05efa59b6acb7626617f4962be322a825e61f79a"
SRC_URI[miniz_oxide-0.7.1.sha256sum] = "e7810e0be55b428ada41041c41f32c9f1a42817901b4ccf45fa3d4b6561e74c7"
SRC_URI[msi-0.7.0.sha256sum] = "226b2404f03d2cf47375b9715c8adfae4e388bb2377cff908e8a40f31e421514"
@@ -445,128 +425,130 @@ SRC_URI[nom-7.1.3.sha256sum] = "d273983c5a657a70a3e8f2a01329822f3b8c8172b7382641
SRC_URI[normalize-line-endings-0.3.0.sha256sum] = "61807f77802ff30975e01f4f071c8ba10c022052f98b3294119f3e615d13e5be"
SRC_URI[normpath-1.1.1.sha256sum] = "ec60c60a693226186f5d6edf073232bfb6464ed97eb22cf3b01c1e8198fd97f5"
SRC_URI[nu-ansi-term-0.46.0.sha256sum] = "77a8165726e8236064dbb45459242600304b42a5ea24ee2948e18e023bf7ba84"
+SRC_URI[num-conv-0.1.0.sha256sum] = "51d515d32fb182ee37cda2ccdcb92950d6a3c2893aa280e540671c2cd0f3b1d9"
SRC_URI[number_prefix-0.4.0.sha256sum] = "830b246a0e5f20af87141b25c173cd1b609bd7779a4617d6ec582abaf90870f3"
-SRC_URI[once_cell-1.18.0.sha256sum] = "dd8b5dd2ae5ed71462c540258bedcb51965123ad7e7ccf4b9a8cafaa4a63576d"
-SRC_URI[openssl-0.10.60.sha256sum] = "79a4c6c3a2b158f7f8f2a2fc5a969fa3a068df6fc9dbb4a43845436e3af7c800"
+SRC_URI[once_cell-1.19.0.sha256sum] = "3fdb12b2476b595f9358c5161aa467c2438859caa136dec86c26fdd2efe17b92"
+SRC_URI[openssl-0.10.63.sha256sum] = "15c9d69dd87a29568d4d017cfe8ec518706046a05184e5aea92d0af890b803c8"
SRC_URI[openssl-macros-0.1.1.sha256sum] = "a948666b637a0f465e8564c73e89d4dde00d72d4d473cc972f390fc3dcee7d9c"
SRC_URI[openssl-probe-0.1.5.sha256sum] = "ff011a302c396a5197692431fc1948019154afc178baf7d8e37367442a4601cf"
-SRC_URI[openssl-sys-0.9.96.sha256sum] = "3812c071ba60da8b5677cc12bcb1d42989a65553772897a7e0355545a819838f"
+SRC_URI[openssl-sys-0.9.99.sha256sum] = "22e1bf214306098e4832460f797824c05d25aacdf896f64a985fb0fd992454ae"
SRC_URI[option-ext-0.2.0.sha256sum] = "04744f49eae99ab78e0d5c0b603ab218f515ea8cfe5a456d7629ad883a3b6e7d"
-SRC_URI[os_pipe-1.1.4.sha256sum] = "0ae859aa07428ca9a929b936690f8b12dc5f11dd8c6992a18ca93919f28bc177"
+SRC_URI[os_pipe-1.1.5.sha256sum] = "57119c3b893986491ec9aa85056780d3a0f3cf4da7cc09dd3650dbd6c6738fb9"
SRC_URI[overload-0.1.1.sha256sum] = "b15813163c1d831bf4a13c3610c05c0d03b39feb07f7e09fa234dac9b15aaf39"
SRC_URI[parking_lot-0.12.1.sha256sum] = "3742b2c103b9f06bc9fff0a37ff4912935851bee6d36f3c02bcc755bcfec228f"
SRC_URI[parking_lot_core-0.9.9.sha256sum] = "4c42a9226546d68acdd9c0a280d17ce19bfe27a46bf68784e4066115788d008e"
SRC_URI[paste-1.0.14.sha256sum] = "de3145af08024dea9fa9914f381a17b8fc6034dfb00f3a84013f7ff43f29ed4c"
SRC_URI[path-slash-0.2.1.sha256sum] = "1e91099d4268b0e11973f036e885d652fb0b21fedcf69738c627f94db6a44f42"
-SRC_URI[pep440_rs-0.3.12.sha256sum] = "887f66cc62717ea72caac4f1eb4e6f392224da3ffff3f40ec13ab427802746d6"
-SRC_URI[pep508_rs-0.2.3.sha256sum] = "e4516b53d9ea6112ebb38b4af08d5707d30b994fb7f98ff133c5dcf7ed8fa854"
+SRC_URI[pep440_rs-0.5.0.sha256sum] = "15efd4d885c29126cc93e12af3087896e2518bd5ca0fb328c19c4ef9cecfa8be"
+SRC_URI[pep508_rs-0.4.2.sha256sum] = "1455babf8edd3eedcdfcb39700e455a4bb189e71b4f1fa0eacc9b244cc5a55e6"
SRC_URI[percent-encoding-2.3.1.sha256sum] = "e3148f5046208a5d56bcfc03053e3ca6334e51da8dfb19b6cdc8b306fae3283e"
SRC_URI[pin-project-lite-0.2.13.sha256sum] = "8afb450f006bf6385ca15ef45d71d2288452bc3683ce2e2cacc0d18e4be60b58"
-SRC_URI[pkg-config-0.3.27.sha256sum] = "26072860ba924cbfa98ea39c8c19b4dd6a4a25423dbdf219c1eca91aa0cf6964"
+SRC_URI[pkg-config-0.3.29.sha256sum] = "2900ede94e305130c13ddd391e0ab7cbaeb783945ae07a279c268cb05109c6cb"
SRC_URI[plain-0.2.3.sha256sum] = "b4596b6d070b27117e987119b4dac604f3c58cfb0b191112e24771b2faeac1a6"
SRC_URI[platform-info-2.0.2.sha256sum] = "d6259c4860e53bf665016f1b2f46a8859cadfa717581dc9d597ae4069de6300f"
-SRC_URI[portable-atomic-1.5.1.sha256sum] = "3bccab0e7fd7cc19f820a1c8c91720af652d0c88dc9664dd72aef2614f04af3b"
+SRC_URI[portable-atomic-1.6.0.sha256sum] = "7170ef9988bc169ba16dd36a7fa041e5c4cbeb6a35b76d4c03daded371eae7c0"
SRC_URI[powerfmt-0.2.0.sha256sum] = "439ee305def115ba05938db6eb1644ff94165c5ab5e9420d1c1bcedbba909391"
SRC_URI[ppv-lite86-0.2.17.sha256sum] = "5b40af805b3121feab8a3c29f04d8ad262fa8e0561883e7653e024ae4479e6de"
SRC_URI[pretty_assertions-1.4.0.sha256sum] = "af7cee1a6c8a5b9208b3cb1061f10c0cb689087b3d8ce85fb9d2dd7a29b6ba66"
-SRC_URI[proc-macro2-1.0.70.sha256sum] = "39278fbbf5fb4f646ce651690877f89d1c5811a3d4acb27700c1cb3cdb78fd3b"
+SRC_URI[proc-macro2-1.0.78.sha256sum] = "e2422ad645d89c99f8f3e6b88a9fdeca7fabeac836b1002371c4367c8f984aae"
SRC_URI[psm-0.1.21.sha256sum] = "5787f7cda34e3033a72192c018bc5883100330f362ef279a8cbccfce8bb4e874"
-SRC_URI[pyproject-toml-0.8.1.sha256sum] = "46d4a5e69187f23a29f8aa0ea57491d104ba541bc55f76552c2a74962aa20e04"
+SRC_URI[pyproject-toml-0.10.0.sha256sum] = "3b80f889b6d413c3f8963a2c7db03f95dd6e1d85e1074137cb2013ea2faa8898"
SRC_URI[python-pkginfo-0.6.0.sha256sum] = "037469c164f08c891bf6d69ca02f1d56210011451e229618669777df82124cfa"
-SRC_URI[quote-1.0.33.sha256sum] = "5267fca4496028628a95160fc423a33e8b2e6af8a5302579e322e4b520293cae"
+SRC_URI[quote-1.0.35.sha256sum] = "291ec9ab5efd934aaf503a6466c5d5251535d108ee747472c3977cc5acc868ef"
SRC_URI[quoted_printable-0.4.8.sha256sum] = "5a3866219251662ec3b26fc217e3e05bf9c4f84325234dfb96bf0bf840889e49"
+SRC_URI[quoted_printable-0.5.0.sha256sum] = "79ec282e887b434b68c18fe5c121d38e72a5cf35119b59e54ec5b992ea9c8eb0"
SRC_URI[rand-0.8.5.sha256sum] = "34af8d1a0e25924bc5b7c43c079c942339d8f0a8b57c39049bef581b46327404"
SRC_URI[rand_chacha-0.3.1.sha256sum] = "e6c10a63a0fa32252be49d21e7709d4d4baf8d231c2dbce1eaa8141b9b127d88"
SRC_URI[rand_core-0.6.4.sha256sum] = "ec0be4795e2f6a28069bec0b5ff3e2ac9bafc99e6a9a7dc3547996c5c816922c"
-SRC_URI[rayon-1.8.0.sha256sum] = "9c27db03db7734835b3f53954b534c91069375ce6ccaa2e065441e07d9b6cdb1"
-SRC_URI[rayon-core-1.12.0.sha256sum] = "5ce3fb6ad83f861aac485e76e1985cd109d9a3713802152be56c3b1f0e0658ed"
-SRC_URI[redox_syscall-0.3.5.sha256sum] = "567664f262709473930a4bf9e51bf2ebf3348f2e748ccc50dea20646858f8f29"
+SRC_URI[rayon-1.8.1.sha256sum] = "fa7237101a77a10773db45d62004a272517633fbcc3df19d96455ede1122e051"
+SRC_URI[rayon-core-1.12.1.sha256sum] = "1465873a3dfdaa8ae7cb14b4383657caab0b3e8a0aa9ae8e04b044854c8dfce2"
SRC_URI[redox_syscall-0.4.1.sha256sum] = "4722d768eff46b75989dd134e5c353f0d6296e5aaa3132e776cbdb56be7731aa"
SRC_URI[redox_users-0.4.4.sha256sum] = "a18479200779601e498ada4e8c1e1f50e3ee19deb0259c25825a98b5603b2cb4"
-SRC_URI[regex-1.10.2.sha256sum] = "380b951a9c5e80ddfd6136919eef32310721aa4aacd4889a8d39124b026ab343"
+SRC_URI[regex-1.10.3.sha256sum] = "b62dbe01f0b06f9d8dc7d49e05a0785f153b00b2c227856282f671e0318c9b15"
SRC_URI[regex-automata-0.1.10.sha256sum] = "6c230d73fb8d8c1b9c0b3135c5142a8acee3a0558fb8db5cf1cb65f8d7862132"
-SRC_URI[regex-automata-0.4.3.sha256sum] = "5f804c7828047e88b2d32e2d7fe5a105da8ee3264f01902f796c8e067dc2483f"
+SRC_URI[regex-automata-0.4.5.sha256sum] = "5bb987efffd3c6d0d8f5f89510bb458559eab11e4f869acb20bf845e016259cd"
SRC_URI[regex-syntax-0.6.29.sha256sum] = "f162c6dd7b008981e4d40210aca20b4bd0f9b60ca9271061b07f78537722f2e1"
SRC_URI[regex-syntax-0.8.2.sha256sum] = "c08c74e62047bb2de4ff487b251e4a92e24f48745648451635cec7d591162d9f"
SRC_URI[rfc2047-decoder-0.2.2.sha256sum] = "61fc4b4e52897c3e30b12b7e9b04461215b647fbe66f6def60dd8edbce14ec2e"
-SRC_URI[ring-0.17.6.sha256sum] = "684d5e6e18f669ccebf64a92236bb7db9a34f07be010e3627368182027180866"
+SRC_URI[ring-0.17.7.sha256sum] = "688c63d65483050968b2a8937f7995f443e27041a0f7700aa59b0822aedebb74"
SRC_URI[rustc_version-0.4.0.sha256sum] = "bfa0f585226d2e68097d4f95d113b15b83a82e819ab25717ec0590d9584ef366"
-SRC_URI[rustix-0.37.27.sha256sum] = "fea8ca367a3a01fe35e6943c400addf443c0f57670e6ec51196f71a4b8762dd2"
-SRC_URI[rustix-0.38.21.sha256sum] = "2b426b0506e5d50a7d8dafcf2e81471400deb602392c7dd110815afb4eaf02a3"
-SRC_URI[rustls-0.21.9.sha256sum] = "629648aced5775d558af50b2b4c7b02983a04b312126d45eeead26e7caa498b9"
-SRC_URI[rustls-pemfile-2.0.0.sha256sum] = "35e4980fa29e4c4b212ffb3db068a564cbf560e51d3944b7c88bd8bf5bec64f4"
-SRC_URI[rustls-pki-types-1.0.0.sha256sum] = "eb0a1f9b9efec70d32e6d6aa3e58ebd88c3754ec98dfe9145c63cf54cc829b83"
-SRC_URI[rustls-webpki-0.101.7.sha256sum] = "8b6275d1ee7a1cd780b64aca7726599a1dbc893b1e64144529e55c3c2f745765"
+SRC_URI[rustix-0.38.32.sha256sum] = "65e04861e65f21776e67888bfbea442b3642beaa0138fdb1dd7a84a52dffdb89"
+SRC_URI[rustls-0.22.2.sha256sum] = "e87c9956bd9807afa1f77e0f7594af32566e830e088a5576d27c5b6f30f49d41"
+SRC_URI[rustls-pemfile-2.1.0.sha256sum] = "3c333bb734fcdedcea57de1602543590f545f127dc8b533324318fd492c5c70b"
+SRC_URI[rustls-pki-types-1.3.1.sha256sum] = "5ede67b28608b4c60685c7d54122d4400d90f62b40caee7700e700380a390fa8"
+SRC_URI[rustls-webpki-0.102.1.sha256sum] = "ef4ca26037c909dedb327b48c3327d0ba91d3dd3c4e05dad328f210ffb68e95b"
SRC_URI[rustversion-1.0.14.sha256sum] = "7ffc183a10b4478d04cbbbfc96d0873219d962dd5accaff2ffbd4ceb7df837f4"
-SRC_URI[ryu-1.0.15.sha256sum] = "1ad4cc8da4ef723ed60bced201181d83791ad433213d8c24efffda1eec85d741"
+SRC_URI[ryu-1.0.16.sha256sum] = "f98d2aa92eebf49b69786be48e4477826b256916e84a57ff2a4f21923b48eb4c"
SRC_URI[same-file-1.0.6.sha256sum] = "93fc1dc3aaa9bfed95e02e6eadabb4baf7e3078b0bd1b4d7b6b0b68378900502"
-SRC_URI[schannel-0.1.22.sha256sum] = "0c3733bf4cf7ea0880754e19cb5a462007c4a8c1914bff372ccc95b464f1df88"
+SRC_URI[schannel-0.1.23.sha256sum] = "fbc91545643bcf3a0bbb6569265615222618bdf33ce4ffbbd13c4bbd4c093534"
SRC_URI[scopeguard-1.2.0.sha256sum] = "94143f37725109f92c262ed2cf5e59bce7498c01bcc1502d7b9afe439a4e9f49"
-SRC_URI[scroll-0.11.0.sha256sum] = "04c565b551bafbef4157586fa379538366e4385d42082f255bfd96e4fe8519da"
-SRC_URI[scroll_derive-0.11.1.sha256sum] = "1db149f81d46d2deba7cd3c50772474707729550221e69588478ebf9ada425ae"
-SRC_URI[sct-0.7.1.sha256sum] = "da046153aa2352493d6cb7da4b6e5c0c057d8a1d0a9aa8560baffdd945acd414"
+SRC_URI[scroll-0.12.0.sha256sum] = "6ab8598aa408498679922eff7fa985c25d58a90771bd6be794434c5277eab1a6"
+SRC_URI[scroll_derive-0.12.0.sha256sum] = "7f81c2fde025af7e69b1d1420531c8a8811ca898919db177141a85313b1cb932"
SRC_URI[security-framework-2.9.2.sha256sum] = "05b64fb303737d99b81884b2c63433e9ae28abebe5eb5045dcdd175dc2ecf4de"
SRC_URI[security-framework-sys-2.9.1.sha256sum] = "e932934257d3b408ed8f30db49d85ea163bfe74961f017f405b025af298f0c7a"
-SRC_URI[semver-1.0.20.sha256sum] = "836fa6a3e1e547f9a2c4040802ec865b5d85f4014efe00555d7090a3dcaa1090"
-SRC_URI[serde-1.0.193.sha256sum] = "25dd9975e68d0cb5aa1120c288333fc98731bd1dd12f561e468ea4728c042b89"
-SRC_URI[serde_derive-1.0.193.sha256sum] = "43576ca501357b9b071ac53cdc7da8ef0cbd9493d8df094cd821777ea6e894d3"
-SRC_URI[serde_json-1.0.108.sha256sum] = "3d1c7e3eac408d115102c4c24ad393e0821bb3a5df4d506a80f85f7a742a526b"
-SRC_URI[serde_spanned-0.6.4.sha256sum] = "12022b835073e5b11e90a14f86838ceb1c8fb0325b72416845c487ac0fa95e80"
+SRC_URI[semver-1.0.22.sha256sum] = "92d43fe69e652f3df9bdc2b85b2854a0825b86e4fb76bc44d945137d053639ca"
+SRC_URI[serde-1.0.197.sha256sum] = "3fb1c873e1b9b056a4dc4c0c198b24c3ffa059243875552b2bd0933b1aee4ce2"
+SRC_URI[serde_derive-1.0.197.sha256sum] = "7eb0b34b42edc17f6b7cac84a52a1c5f0e1bb2227e997ca9011ea3dd34e8610b"
+SRC_URI[serde_json-1.0.114.sha256sum] = "c5f09b1bd632ef549eaa9f60a1f8de742bdbc698e6cee2095fc84dde5f549ae0"
+SRC_URI[serde_spanned-0.6.5.sha256sum] = "eb3622f419d1296904700073ea6cc23ad690adbd66f13ea683df73298736f0c1"
SRC_URI[sha2-0.10.8.sha256sum] = "793db75ad2bcafc3ffa7c68b215fee268f537982cd901d132f89c6343f3a3dc8"
SRC_URI[sharded-slab-0.1.7.sha256sum] = "f40ca3c46823713e0d4209592e8d6e826aa57e928f09752619fc696c499637f6"
SRC_URI[shell-words-1.1.0.sha256sum] = "24188a676b6ae68c3b2cb3a01be17fbf7240ce009799bb56d5b1409051e78fde"
-SRC_URI[shlex-1.2.0.sha256sum] = "a7cee0529a6d40f580e7a5e6c495c8fbfe21b7b52795ed4bb5e62cdf92bc6380"
-SRC_URI[similar-2.3.0.sha256sum] = "2aeaf503862c419d66959f5d7ca015337d864e9c49485d771b732e2a20453597"
-SRC_URI[smallvec-1.11.2.sha256sum] = "4dccd0940a2dcdf68d092b8cbab7dc0ad8fa938bf95787e1b916b0e3d0e8e970"
+SRC_URI[shlex-1.3.0.sha256sum] = "0fda2ff0d084019ba4d7c6f371c95d8fd75ce3524c3cb8fb653a3023f6323e64"
+SRC_URI[similar-2.4.0.sha256sum] = "32fea41aca09ee824cc9724996433064c89f7777e60762749a4170a14abbfa21"
+SRC_URI[smallvec-1.13.1.sha256sum] = "e6ecd384b10a64542d77071bd64bd7b231f4ed5940fba55e98c3de13824cf3d7"
SRC_URI[smawk-0.3.2.sha256sum] = "b7c388c1b5e93756d0c740965c41e8822f866621d41acbdf6336a6a168f8840c"
-SRC_URI[snapbox-0.4.14.sha256sum] = "4b377c0b6e4715c116473d8e40d51e3fa5b0a2297ca9b2a931ba800667b259ed"
-SRC_URI[snapbox-macros-0.3.6.sha256sum] = "ed1559baff8a696add3322b9be3e940d433e7bb4e38d79017205fd37ff28b28e"
+SRC_URI[snapbox-0.5.7.sha256sum] = "4a99efa20de5053229642a477436cdb39828c7651c614622eb4888f9688523e6"
+SRC_URI[snapbox-macros-0.3.8.sha256sum] = "e1c4b838b05d15ab22754068cb73500b2f3b07bf09d310e15b27f88160f1de40"
SRC_URI[socks-0.3.4.sha256sum] = "f0c3dbbd9ae980613c6dd8e28a9407b50509d3803b57624d5dfe8315218cd58b"
SRC_URI[spin-0.9.8.sha256sum] = "6980e8d7511241f8acf4aebddbb1ff938df5eebe98691418c4468d0b72a96a67"
SRC_URI[stacker-0.1.15.sha256sum] = "c886bd4480155fd3ef527d45e9ac8dd7118a898a46530b7b94c3e21866259fce"
SRC_URI[static_assertions-1.1.0.sha256sum] = "a2eb9349b6444b326872e140eb1cf5e7c522154d69e7a0ffb0fb81c06b37543f"
SRC_URI[strsim-0.10.0.sha256sum] = "73473c0e59e6d5812c5dfe2a064a6444949f089e20eec9a2e5506596494e4623"
+SRC_URI[subtle-2.5.0.sha256sum] = "81cdd64d312baedb58e21336b31bc043b77e01cc99033ce76ef539f78e965ebc"
SRC_URI[syn-1.0.109.sha256sum] = "72b64191b275b66ffe2469e8af2c1cfe3bafa67b529ead792a6d0160888b4237"
-SRC_URI[syn-2.0.39.sha256sum] = "23e78b90f2fcf45d3e842032ce32e3f2d1545ba6636271dcbf24fa306d87be7a"
+SRC_URI[syn-2.0.48.sha256sum] = "0f3531638e407dfc0814761abb7c00a5b54992b849452a0646b7f65c9f770f3f"
SRC_URI[tar-0.4.40.sha256sum] = "b16afcea1f22891c49a00c751c7b63b2233284064f11a200fc624137c51e2ddb"
-SRC_URI[target-lexicon-0.12.12.sha256sum] = "14c39fd04924ca3a864207c66fc2cd7d22d7c016007f9ce846cbb9326331930a"
-SRC_URI[tempfile-3.8.1.sha256sum] = "7ef1adac450ad7f4b3c28589471ade84f25f731a7a0fe30d71dfa9f60fd808e5"
-SRC_URI[termcolor-1.4.0.sha256sum] = "ff1bc3d3f05aff0403e8ac0d92ced918ec05b666a43f83297ccef5bea8a3d449"
-SRC_URI[terminal_size-0.2.6.sha256sum] = "8e6bf6f19e9f8ed8d4048dc22981458ebcf406d67e94cd422e5ecd73d63b3237"
-SRC_URI[textwrap-0.16.0.sha256sum] = "222a222a5bfe1bba4a77b45ec488a741b3cb8872e5e499451fd7d0129c9c7c3d"
-SRC_URI[thiserror-1.0.50.sha256sum] = "f9a7210f5c9a7156bb50aa36aed4c95afb51df0df00713949448cf9e97d382d2"
-SRC_URI[thiserror-impl-1.0.50.sha256sum] = "266b2e40bc00e5a6c09c3584011e08b06f123c00362c92b975ba9843aaaa14b8"
+SRC_URI[target-lexicon-0.12.14.sha256sum] = "e1fc403891a21bcfb7c37834ba66a547a8f402146eba7265b5a6d88059c9ff2f"
+SRC_URI[tempfile-3.9.0.sha256sum] = "01ce4141aa927a6d1bd34a041795abd0db1cccba5d5f24b009f694bdf3a1f3fa"
+SRC_URI[termcolor-1.4.1.sha256sum] = "06794f8f6c5c898b3275aebefa6b8a1cb24cd2c6c79397ab15774837a0bc5755"
+SRC_URI[terminal_size-0.3.0.sha256sum] = "21bebf2b7c9e0a515f6e0f8c51dc0f8e4696391e6f1ff30379559f8365fb0df7"
+SRC_URI[textwrap-0.16.1.sha256sum] = "23d434d3f8967a09480fb04132ebe0a3e088c173e6d0ee7897abbdf4eab0f8b9"
+SRC_URI[thiserror-1.0.57.sha256sum] = "1e45bcbe8ed29775f228095caf2cd67af7a4ccf756ebff23a306bf3e8b47b24b"
+SRC_URI[thiserror-impl-1.0.57.sha256sum] = "a953cb265bef375dae3de6663da4d3804eee9682ea80d8e2542529b73c531c81"
SRC_URI[thread_local-1.1.7.sha256sum] = "3fdd6f064ccff2d6567adcb3873ca630700f00b5ad3f060c25b5dcfd9a4ce152"
-SRC_URI[time-0.3.30.sha256sum] = "c4a34ab300f2dee6e562c10a046fc05e358b29f9bf92277f30c3c8d82275f6f5"
+SRC_URI[time-0.3.34.sha256sum] = "c8248b6521bb14bc45b4067159b9b6ad792e2d6d754d6c41fb50e29fefe38749"
SRC_URI[time-core-0.1.2.sha256sum] = "ef927ca75afb808a4d64dd374f00a2adf8d0fcff8e7b184af886c3c87ec4a3f3"
-SRC_URI[time-macros-0.2.15.sha256sum] = "4ad70d68dba9e1f8aceda7aa6711965dfec1cac869f311a51bd08b3a2ccbce20"
+SRC_URI[time-macros-0.2.17.sha256sum] = "7ba3a3ef41e6672a2f0f001392bb5dcd3ff0a9992d618ca761a11c3121547774"
SRC_URI[tinyvec-1.6.0.sha256sum] = "87cc5ceb3875bb20c2890005a4e226a4651264a5c75edb2421b52861a0a0cb50"
SRC_URI[tinyvec_macros-0.1.1.sha256sum] = "1f3ccbac311fea05f86f61904b462b55fb3df8837a366dfc601a0161d0532f20"
SRC_URI[toml-0.5.11.sha256sum] = "f4f7f0dd8d50a853a531c426359045b1998f04219d88799810762cd4ad314234"
-SRC_URI[toml-0.8.8.sha256sum] = "a1a195ec8c9da26928f773888e0742ca3ca1040c6cd859c919c9f59c1954ab35"
+SRC_URI[toml-0.8.10.sha256sum] = "9a9aad4a3066010876e8dcf5a8a06e70a558751117a145c6ce2b82c2e2054290"
SRC_URI[toml_datetime-0.6.5.sha256sum] = "3550f4e9685620ac18a50ed434eb3aec30db8ba93b0287467bca5826ea25baf1"
-SRC_URI[toml_edit-0.20.7.sha256sum] = "70f427fce4d84c72b5b732388bf4a9f4531b53f74e2887e3ecb2481f68f66d81"
-SRC_URI[toml_edit-0.21.0.sha256sum] = "d34d383cd00a163b4a5b85053df514d45bc330f6de7737edfe0a93311d1eaa03"
+SRC_URI[toml_edit-0.22.6.sha256sum] = "2c1b5fd4128cc8d3e0cb74d4ed9a9cc7c7284becd4df68f5f940e1ad123606f6"
SRC_URI[tracing-0.1.40.sha256sum] = "c3523ab5a71916ccf420eebdf5521fcef02141234bbc0b8a49f2fdc4544364ef"
SRC_URI[tracing-attributes-0.1.27.sha256sum] = "34704c8d6ebcbc939824180af020566b01a7c01f80641264eba0999f6c2b6be7"
SRC_URI[tracing-core-0.1.32.sha256sum] = "c06d3da6113f116aaee68e4d601191614c9053067f9ab7f6edbcb161237daa54"
SRC_URI[tracing-log-0.2.0.sha256sum] = "ee855f1f400bd0e5c02d150ae5de3840039a3f54b025156404e34c23c03f47c3"
SRC_URI[tracing-serde-0.1.3.sha256sum] = "bc6b213177105856957181934e4920de57730fc69bf42c37ee5bb664d406d9e1"
SRC_URI[tracing-subscriber-0.3.18.sha256sum] = "ad0f048c97dbd9faa9b7df56362b8ebcaa52adb06b498c050d2f4e32f90a7a8b"
-SRC_URI[trycmd-0.14.19.sha256sum] = "ed009372a42fb103e6f8767b9222925485e03cca032b700d203e2c5b67bee4fb"
+SRC_URI[trycmd-0.15.0.sha256sum] = "464edb3603a81a50b4c8f47b11dfade69ef48ffdc0af2f8b194ad87cbda75317"
SRC_URI[twox-hash-1.6.3.sha256sum] = "97fee6b57c6a41524a810daee9286c02d7752c4253064d0b05472833a438f675"
SRC_URI[typenum-1.17.0.sha256sum] = "42ff0bf0c66b8238c6f3b578df37d0b7848e55df8577b3f74f92a69acceeb825"
SRC_URI[unicase-2.7.0.sha256sum] = "f7d2d4dafb69621809a81864c9c1b864479e1235c0dd4e199924b9742439ed89"
-SRC_URI[unicode-bidi-0.3.13.sha256sum] = "92888ba5573ff080736b3648696b70cafad7d250551175acbaa4e0385b3e1460"
+SRC_URI[unicode-bidi-0.3.15.sha256sum] = "08f95100a766bf4f8f28f90d77e0a5461bbdb219042e7679bebe79004fed8d75"
SRC_URI[unicode-ident-1.0.12.sha256sum] = "3354b9ac3fae1ff6755cb6db53683adb661634f67557942dea4facebec0fee4b"
SRC_URI[unicode-linebreak-0.1.5.sha256sum] = "3b09c83c3c29d37506a3e260c08c03743a6bb66a9cd432c6934ab501a190571f"
SRC_URI[unicode-normalization-0.1.22.sha256sum] = "5c5713f0fc4b5db668a2ac63cdb7bb4469d8c9fed047b1d0292cc7b0ce2ba921"
SRC_URI[unicode-width-0.1.11.sha256sum] = "e51733f11c9c4f72aa0c160008246859e340b00807569a0da0e7a1079b27ba85"
+SRC_URI[unicode-xid-0.2.4.sha256sum] = "f962df74c8c05a667b5ee8bcf162993134c104e96440b663c8daa176dc772d8c"
+SRC_URI[unscanny-0.1.0.sha256sum] = "e9df2af067a7953e9c3831320f35c1cc0600c30d44d9f7a12b01db1cd88d6b47"
SRC_URI[untrusted-0.9.0.sha256sum] = "8ecb6da28b8a351d773b68d5825ac39017e680750f980f3a1a85cd8dd28a47c1"
-SRC_URI[ureq-2.9.1.sha256sum] = "f8cdd25c339e200129fe4de81451814e5228c9b771d57378817d6117cc2b3f97"
+SRC_URI[ureq-2.9.6.sha256sum] = "11f214ce18d8b2cbe84ed3aa6486ed3f5b285cf8d8fbdbce9f3f767a724adc35"
SRC_URI[url-2.5.0.sha256sum] = "31e6302e3bb753d46e83516cae55ae196fc0c309407cf11ab35cc51a4c2a4633"
+SRC_URI[urlencoding-2.1.3.sha256sum] = "daf8dba3b7eb870caf1ddeed7bc9d2a049f3cfdfae7cb521b087cc33ae4c49da"
SRC_URI[utf8parse-0.2.1.sha256sum] = "711b9620af191e0cdc7468a8d14e709c3dcdb115b36f838e601583af800a370a"
-SRC_URI[uuid-1.6.1.sha256sum] = "5e395fcf16a7a3d8127ec99782007af141946b4795001f876d54fb0d55978560"
+SRC_URI[uuid-1.7.0.sha256sum] = "f00cc9702ca12d3c81455259621e676d0f7251cec66a21e98fe2e9a37db93b2a"
SRC_URI[valuable-0.1.0.sha256sum] = "830b7e5d4d90034032940e4ace0d9a9a057e7a45cd94e6c007832e39edb82f6d"
SRC_URI[vcpkg-0.2.15.sha256sum] = "accd4ea62f7bb7a82fe23066fb0957d48ef677f6eeb8215f372f52e48bb32426"
SRC_URI[version_check-0.9.4.sha256sum] = "49874b5167b65d7193b8aba1567f5c7d93d001cafc34600cee003eda787e483f"
@@ -574,45 +556,37 @@ SRC_URI[versions-5.0.1.sha256sum] = "c73a36bc44e3039f51fbee93e39f41225f6b17b380e
SRC_URI[wait-timeout-0.2.0.sha256sum] = "9f200f5b12eb75f8c1ed65abd4b2db8a6e1b138a20de009dacee265a2498f3f6"
SRC_URI[walkdir-2.4.0.sha256sum] = "d71d857dc86794ca4c280d616f7da00d2dbfd8cd788846559a6813e6aa4b54ee"
SRC_URI[wasi-0.11.0+wasi-snapshot-preview1.sha256sum] = "9c8d87e72b64a3b4db28d11ce29237c246188f4f51057d65a7eab63b7987e423"
-SRC_URI[webpki-roots-0.25.3.sha256sum] = "1778a42e8b3b90bff8d0f5032bf22250792889a5cdc752aa0020c84abe3aaf10"
+SRC_URI[webpki-roots-0.26.0.sha256sum] = "0de2cfda980f21be5a7ed2eadb3e6fe074d56022bea2cdeb1a62eb220fc04188"
SRC_URI[which-5.0.0.sha256sum] = "9bf3ea8596f3a0dd5980b46430f2058dfe2c36a27ccfbb1845d6fbfcd9ba6e14"
-SRC_URI[wild-2.2.0.sha256sum] = "10d01931a94d5a115a53f95292f51d316856b68a035618eb831bbba593a30b67"
+SRC_URI[which-6.0.0.sha256sum] = "7fa5e0c10bf77f44aac573e498d1a82d5fbd5e91f6fc0a99e7be4b38e85e101c"
+SRC_URI[wild-2.2.1.sha256sum] = "a3131afc8c575281e1e80f36ed6a092aa502c08b18ed7524e86fbbb12bb410e1"
SRC_URI[winapi-0.3.9.sha256sum] = "5c839a674fcd7a98952e593242ea400abe93992746761e38641405d28b00f419"
SRC_URI[winapi-i686-pc-windows-gnu-0.4.0.sha256sum] = "ac3b87c63620426dd9b991e5ce0329eff545bccbbb34f3be09ff6fb6ab51b7b6"
SRC_URI[winapi-util-0.1.6.sha256sum] = "f29e6f9198ba0d26b4c9f07dbe6f9ed633e1f3d5b8b414090084349e46a52596"
SRC_URI[winapi-x86_64-pc-windows-gnu-0.4.0.sha256sum] = "712e227841d057c1ee1cd2fb22fa7e5a5461ae8e48fa2ca79ec42cfc1931183f"
-SRC_URI[windows-sys-0.45.0.sha256sum] = "75283be5efb2831d37ea142365f009c02ec203cd29a3ebecbc093d52315b66d0"
SRC_URI[windows-sys-0.48.0.sha256sum] = "677d2418bec65e3338edb076e806bc1ec15693c5d0104683f2efe857f61056a9"
SRC_URI[windows-sys-0.52.0.sha256sum] = "282be5f36a8ce781fad8c8ae18fa3f9beff57ec1b52cb3de0789201425d9a33d"
-SRC_URI[windows-targets-0.42.2.sha256sum] = "8e5180c00cd44c9b1c88adb3693291f1cd93605ded80c250a75d472756b4d071"
SRC_URI[windows-targets-0.48.5.sha256sum] = "9a2fa6e2155d7247be68c096456083145c183cbbbc2764150dda45a87197940c"
SRC_URI[windows-targets-0.52.0.sha256sum] = "8a18201040b24831fbb9e4eb208f8892e1f50a37feb53cc7ff887feb8f50e7cd"
-SRC_URI[windows_aarch64_gnullvm-0.42.2.sha256sum] = "597a5118570b68bc08d8d59125332c54f1ba9d9adeedeef5b99b02ba2b0698f8"
SRC_URI[windows_aarch64_gnullvm-0.48.5.sha256sum] = "2b38e32f0abccf9987a4e3079dfb67dcd799fb61361e53e2882c3cbaf0d905d8"
SRC_URI[windows_aarch64_gnullvm-0.52.0.sha256sum] = "cb7764e35d4db8a7921e09562a0304bf2f93e0a51bfccee0bd0bb0b666b015ea"
-SRC_URI[windows_aarch64_msvc-0.42.2.sha256sum] = "e08e8864a60f06ef0d0ff4ba04124db8b0fb3be5776a5cd47641e942e58c4d43"
SRC_URI[windows_aarch64_msvc-0.48.5.sha256sum] = "dc35310971f3b2dbbf3f0690a219f40e2d9afcf64f9ab7cc1be722937c26b4bc"
SRC_URI[windows_aarch64_msvc-0.52.0.sha256sum] = "bbaa0368d4f1d2aaefc55b6fcfee13f41544ddf36801e793edbbfd7d7df075ef"
-SRC_URI[windows_i686_gnu-0.42.2.sha256sum] = "c61d927d8da41da96a81f029489353e68739737d3beca43145c8afec9a31a84f"
SRC_URI[windows_i686_gnu-0.48.5.sha256sum] = "a75915e7def60c94dcef72200b9a8e58e5091744960da64ec734a6c6e9b3743e"
SRC_URI[windows_i686_gnu-0.52.0.sha256sum] = "a28637cb1fa3560a16915793afb20081aba2c92ee8af57b4d5f28e4b3e7df313"
-SRC_URI[windows_i686_msvc-0.42.2.sha256sum] = "44d840b6ec649f480a41c8d80f9c65108b92d89345dd94027bfe06ac444d1060"
SRC_URI[windows_i686_msvc-0.48.5.sha256sum] = "8f55c233f70c4b27f66c523580f78f1004e8b5a8b659e05a4eb49d4166cca406"
SRC_URI[windows_i686_msvc-0.52.0.sha256sum] = "ffe5e8e31046ce6230cc7215707b816e339ff4d4d67c65dffa206fd0f7aa7b9a"
-SRC_URI[windows_x86_64_gnu-0.42.2.sha256sum] = "8de912b8b8feb55c064867cf047dda097f92d51efad5b491dfb98f6bbb70cb36"
SRC_URI[windows_x86_64_gnu-0.48.5.sha256sum] = "53d40abd2583d23e4718fddf1ebec84dbff8381c07cae67ff7768bbf19c6718e"
SRC_URI[windows_x86_64_gnu-0.52.0.sha256sum] = "3d6fa32db2bc4a2f5abeacf2b69f7992cd09dca97498da74a151a3132c26befd"
-SRC_URI[windows_x86_64_gnullvm-0.42.2.sha256sum] = "26d41b46a36d453748aedef1486d5c7a85db22e56aff34643984ea85514e94a3"
SRC_URI[windows_x86_64_gnullvm-0.48.5.sha256sum] = "0b7b52767868a23d5bab768e390dc5f5c55825b6d30b86c844ff2dc7414044cc"
SRC_URI[windows_x86_64_gnullvm-0.52.0.sha256sum] = "1a657e1e9d3f514745a572a6846d3c7aa7dbe1658c056ed9c3344c4109a6949e"
-SRC_URI[windows_x86_64_msvc-0.42.2.sha256sum] = "9aec5da331524158c6d1a4ac0ab1541149c0b9505fde06423b02f5ef0106b9f0"
SRC_URI[windows_x86_64_msvc-0.48.5.sha256sum] = "ed94fce61571a4006852b7389a063ab983c02eb1bb37b47f8272ce92d06d9538"
SRC_URI[windows_x86_64_msvc-0.52.0.sha256sum] = "dff9641d1cd4be8d1a070daf9e3773c5f67e78b4d9d42263020c057706765c04"
-SRC_URI[winnow-0.5.19.sha256sum] = "829846f3e3db426d4cee4510841b71a8e58aa2a76b1132579487ae430ccd9c7b"
-SRC_URI[xattr-1.0.1.sha256sum] = "f4686009f71ff3e5c4dbcf1a282d0a44db3f021ba69350cd42086b3e5f1c6985"
+SRC_URI[winnow-0.6.2.sha256sum] = "7a4191c47f15cc3ec71fcb4913cb83d58def65dd3787610213c649283b5ce178"
+SRC_URI[xattr-1.3.1.sha256sum] = "8da84f1a25939b27f6820d92aed108f83ff920fdf11a7b19366c27c4cda81d4f"
SRC_URI[xwin-0.5.0.sha256sum] = "c43e0202f5457b48558096cb7b36d0e473f267551a89c82ed72d73b01dfd4007"
SRC_URI[yansi-0.5.1.sha256sum] = "09041cd90cf85f7f8b2df60c646f853b7f535ce68f85244eb6731cf89fa498ec"
-SRC_URI[zerocopy-0.7.28.sha256sum] = "7d6f15f7ade05d2a4935e34a457b936c23dc70a05cc1d97133dc99e7a3fe0f0e"
-SRC_URI[zerocopy-derive-0.7.28.sha256sum] = "dbbad221e3f78500350ecbd7dfa4e63ef945c05f4c61cb7f4d3f84cd0bba649b"
+SRC_URI[zerocopy-0.7.32.sha256sum] = "74d4d3961e53fa4c9a25a8637fc2bfaf2595b3d3ae34875568a5cf64787716be"
+SRC_URI[zerocopy-derive-0.7.32.sha256sum] = "9ce1b18ccd8e73a9321186f97e46f9f04b778851177567b1975109d26a08d2a6"
SRC_URI[zeroize-1.7.0.sha256sum] = "525b4ec142c6b68a2d10f01f7bbf6755599ca3f81ea53b8431b7dd348f5fdb2d"
SRC_URI[zip-0.6.6.sha256sum] = "760394e246e4c28189f19d488c058bf16f564016aefac5d32bb1f3b51d5e9261"
diff --git a/meta/recipes-devtools/python/python3-maturin/0001-Add-32-bit-RISC-V-support.patch b/meta/recipes-devtools/python/python3-maturin/0001-Add-32-bit-RISC-V-support.patch
deleted file mode 100644
index a0ef0c9e22..0000000000
--- a/meta/recipes-devtools/python/python3-maturin/0001-Add-32-bit-RISC-V-support.patch
+++ /dev/null
@@ -1,102 +0,0 @@
-From a945706bd610c5400fc85a248d5e0c96ebd2e953 Mon Sep 17 00:00:00 2001
-From: Khem Raj <raj.khem@gmail.com>
-Date: Tue, 27 Feb 2024 10:38:49 -0800
-Subject: [PATCH] Add 32-bit RISC-V support
-
-Tested with qemuriscv32 and it builds fine with all tests passed on a
-qemu machine.
-
-Upstream-Status: Submitted [https://github.com/PyO3/maturin/pull/1969]
-Signed-off-by: Khem Raj <raj.khem@gmail.com>
----
- src/target.rs | 11 ++++++++++-
- 1 file changed, 10 insertions(+), 1 deletion(-)
-
-diff --git a/src/target.rs b/src/target.rs
-index fbb93531..33fa9273 100644
---- a/src/target.rs
-+++ b/src/target.rs
-@@ -69,6 +69,7 @@ pub enum Arch {
- X86_64,
- S390X,
- Wasm32,
-+ Riscv32,
- Riscv64,
- Mips64el,
- Mips64,
-@@ -91,6 +92,7 @@ impl fmt::Display for Arch {
- Arch::X86_64 => write!(f, "x86_64"),
- Arch::S390X => write!(f, "s390x"),
- Arch::Wasm32 => write!(f, "wasm32"),
-+ Arch::Riscv32 => write!(f, "riscv32"),
- Arch::Riscv64 => write!(f, "riscv64"),
- Arch::Mips64el => write!(f, "mips64el"),
- Arch::Mips64 => write!(f, "mips64"),
-@@ -115,7 +117,7 @@ impl Arch {
- Arch::Powerpc | Arch::Powerpc64Le | Arch::Powerpc64 => "powerpc",
- Arch::X86 => "i386",
- Arch::X86_64 => "amd64",
-- Arch::Riscv64 => "riscv",
-+ Arch::Riscv32 | Arch::Riscv64 => "riscv",
- Arch::Mips64el | Arch::Mips64 | Arch::Mipsel | Arch::Mips => "mips",
- // sparc64 is unsupported since FreeBSD 13.0
- Arch::Sparc64 => "sparc64",
-@@ -139,6 +141,7 @@ fn get_supported_architectures(os: &Os) -> Vec<Arch> {
- Arch::S390X,
- Arch::X86,
- Arch::X86_64,
-+ Arch::Riscv32,
- Arch::Riscv64,
- Arch::Mips64el,
- Arch::Mips64,
-@@ -158,6 +161,7 @@ fn get_supported_architectures(os: &Os) -> Vec<Arch> {
- Arch::Powerpc64Le,
- Arch::X86,
- Arch::X86_64,
-+ Arch::Riscv32,
- Arch::Riscv64,
- Arch::Mips64el,
- Arch::Mipsel,
-@@ -171,6 +175,7 @@ fn get_supported_architectures(os: &Os) -> Vec<Arch> {
- Arch::Powerpc,
- Arch::Powerpc64,
- Arch::Powerpc64Le,
-+ Arch::Riscv32,
- Arch::Riscv64,
- Arch::Sparc64,
- ],
-@@ -255,6 +260,7 @@ impl Target {
- Architecture::Powerpc64le => Arch::Powerpc64Le,
- Architecture::S390x => Arch::S390X,
- Architecture::Wasm32 => Arch::Wasm32,
-+ Architecture::Riscv32(_) => Arch::Riscv32,
- Architecture::Riscv64(_) => Arch::Riscv64,
- Architecture::Mips64(mips64_arch) => match mips64_arch {
- Mips64Architecture::Mips64el => Arch::Mips64el,
-@@ -343,6 +349,7 @@ impl Target {
- Arch::X86_64 => "x86_64",
- Arch::S390X => "s390x",
- Arch::Wasm32 => "wasm32",
-+ Arch::Riscv32 => "riscv32",
- Arch::Riscv64 => "riscv64",
- // It's kinda surprising that Python doesn't include the `el` suffix
- Arch::Mips64el | Arch::Mips64 => "mips64",
-@@ -388,6 +395,7 @@ impl Target {
- }
- Arch::Armv6L
- | Arch::Wasm32
-+ | Arch::Riscv32
- | Arch::Riscv64
- | Arch::Mips64el
- | Arch::Mips64
-@@ -418,6 +426,7 @@ impl Target {
- | Arch::Wasm32
- | Arch::Mipsel
- | Arch::Mips
-+ | Arch::Riscv32
- | Arch::Powerpc => 32,
- }
- }
---
-2.44.0
-
diff --git a/meta/recipes-devtools/python/python3-maturin_1.4.0.bb b/meta/recipes-devtools/python/python3-maturin_1.5.1.bb
index ed19ee647a..96b046feba 100644
--- a/meta/recipes-devtools/python/python3-maturin_1.4.0.bb
+++ b/meta/recipes-devtools/python/python3-maturin_1.5.1.bb
@@ -5,8 +5,7 @@ LICENSE = "MIT | Apache-2.0"
LIC_FILES_CHKSUM = "file://license-apache;md5=1836efb2eb779966696f473ee8540542 \
file://license-mit;md5=85fd3b67069cff784d98ebfc7d5c0797"
-SRC_URI += "file://0001-Add-32-bit-RISC-V-support.patch"
-SRC_URI[sha256sum] = "ed12e1768094a7adeafc3a74ebdb8dc2201fa64c4e7e31f14cfc70378bf93790"
+SRC_URI[sha256sum] = "3dd834ece80edb866af18cbd4635e0ecac40139c726428d5f1849ae154b26dca"
S = "${WORKDIR}/maturin-${PV}"
diff --git a/meta/recipes-devtools/python/python3-pycparser_2.22.bb b/meta/recipes-devtools/python/python3-pycparser_2.22.bb
index 9a5abc42bd..0be39ea383 100644
--- a/meta/recipes-devtools/python/python3-pycparser_2.22.bb
+++ b/meta/recipes-devtools/python/python3-pycparser_2.22.bb
@@ -11,9 +11,7 @@ BBCLASSEXTEND = "native nativesdk"
RDEPENDS:${PN}:class-target += "\
python3-netclient \
- python3-ply \
- python3-pprint \
- "
+"
RSUGGESTS:${PN}:class-target += "\
cpp \
diff --git a/meta/recipes-devtools/python/python3-pygments_2.17.2.bb b/meta/recipes-devtools/python/python3-pygments_2.18.0.bb
index 8b98064b78..fd37365681 100644
--- a/meta/recipes-devtools/python/python3-pygments_2.17.2.bb
+++ b/meta/recipes-devtools/python/python3-pygments_2.18.0.bb
@@ -5,7 +5,7 @@ LICENSE = "BSD-2-Clause"
LIC_FILES_CHKSUM = "file://LICENSE;md5=36a13c90514e2899f1eba7f41c3ee592"
inherit python_hatchling
-SRC_URI[sha256sum] = "da46cec9fd2de5be3a8a784f434e4c4ab670b4ff54d605c4c2717e9d49c4c367"
+SRC_URI[sha256sum] = "786ff802f32e91311bff3889f6e9a86e81505fe99f2735bb6d60ae0c5004f199"
UPSTREAM_CHECK_PYPI_PACKAGE = "Pygments"
inherit pypi
diff --git a/meta/recipes-devtools/python/python3-pyopenssl_24.1.0.bb b/meta/recipes-devtools/python/python3-pyopenssl_24.1.0.bb
index e714ad838e..9ef3145bf8 100644
--- a/meta/recipes-devtools/python/python3-pyopenssl_24.1.0.bb
+++ b/meta/recipes-devtools/python/python3-pyopenssl_24.1.0.bb
@@ -15,7 +15,6 @@ FILES:${PN}-tests = "${libdir}/${PYTHON_DIR}/site-packages/OpenSSL/test"
RDEPENDS:${PN}:class-target = " \
python3-cryptography \
- python3-six \
python3-threading \
"
RDEPENDS:${PN}-tests = "${PN}"
diff --git a/meta/recipes-devtools/python/python3-pyproject-hooks_1.0.0.bb b/meta/recipes-devtools/python/python3-pyproject-hooks_1.0.0.bb
index 9d08e7acc4..c3f1fb75ed 100644
--- a/meta/recipes-devtools/python/python3-pyproject-hooks_1.0.0.bb
+++ b/meta/recipes-devtools/python/python3-pyproject-hooks_1.0.0.bb
@@ -22,5 +22,3 @@ RDEPENDS:${PN} += " \
do_compile:class-native () {
python_flit_core_do_manual_build
}
-
-UPSTREAM_CHECK_PYPI_PACKAGE = "${PYPI_PACKAGE}"
diff --git a/meta/recipes-devtools/python/python3-pyproject-metadata_0.7.1.bb b/meta/recipes-devtools/python/python3-pyproject-metadata_0.8.0.bb
index 8b9549f3d0..8d00826f86 100644
--- a/meta/recipes-devtools/python/python3-pyproject-metadata_0.7.1.bb
+++ b/meta/recipes-devtools/python/python3-pyproject-metadata_0.8.0.bb
@@ -12,11 +12,11 @@ HOMEPAGE = "https://github.com/FFY00/python-pyproject-metadata"
LICENSE = "MIT"
LIC_FILES_CHKSUM = "file://LICENSE;md5=310439af287b0fb4780b2ad6907c256c"
-PYPI_PACKAGE = "pyproject-metadata"
+PYPI_PACKAGE = "pyproject_metadata"
inherit pypi python_setuptools_build_meta
-SRC_URI[sha256sum] = "0a94f18b108b9b21f3a26a3d541f056c34edcb17dc872a144a15618fed7aef67"
+SRC_URI[sha256sum] = "376d5a00764ac29440a54579f88e66b7d9cb7e629d35c35a1c7248bfebc9b455"
RDEPENDS:${PN} += " \
python3-logging \
diff --git a/meta/recipes-devtools/python/python3-pytest_8.1.1.bb b/meta/recipes-devtools/python/python3-pytest_8.2.1.bb
index b1cf23fbc4..28dbe786f8 100644
--- a/meta/recipes-devtools/python/python3-pytest_8.1.1.bb
+++ b/meta/recipes-devtools/python/python3-pytest_8.2.1.bb
@@ -5,7 +5,7 @@ DESCRIPTION = "The pytest framework makes it easy to write small tests, yet scal
LICENSE = "MIT"
LIC_FILES_CHKSUM = "file://LICENSE;md5=bd27e41b6550fe0fc45356d1d81ee37c"
-SRC_URI[sha256sum] = "ac978141a75948948817d360297b7aae0fcb9d6ff6bc9ec6d514b85d5a65c044"
+SRC_URI[sha256sum] = "5046e5b46d8e4cac199c373041f26be56fdb81eb4e67dc11d4e10811fc3408fd"
DEPENDS += "python3-setuptools-scm-native"
diff --git a/meta/recipes-devtools/python/python3-pyyaml_6.0.1.bb b/meta/recipes-devtools/python/python3-pyyaml_6.0.1.bb
index 3388312557..6e2022719c 100644
--- a/meta/recipes-devtools/python/python3-pyyaml_6.0.1.bb
+++ b/meta/recipes-devtools/python/python3-pyyaml_6.0.1.bb
@@ -34,7 +34,7 @@ RDEPENDS:${PN}-ptest += " \
do_install_ptest() {
install -d ${D}${PTEST_PATH}/tests
- cp -rf ${WORKDIR}/test_dump_load.py ${D}${PTEST_PATH}/tests/
+ cp -rf ${UNPACKDIR}/test_dump_load.py ${D}${PTEST_PATH}/tests/
}
BBCLASSEXTEND = "native nativesdk"
diff --git a/meta/recipes-devtools/python/python3-referencing_0.34.0.bb b/meta/recipes-devtools/python/python3-referencing_0.35.1.bb
index 6fbd10d9cf..3e2a380607 100644
--- a/meta/recipes-devtools/python/python3-referencing_0.34.0.bb
+++ b/meta/recipes-devtools/python/python3-referencing_0.35.1.bb
@@ -3,7 +3,7 @@ HOMEPAGE = "https://github.com/python-jsonschema/referencing"
LICENSE = "MIT"
LIC_FILES_CHKSUM = "file://COPYING;md5=93eb9740964b59e9ba30281255b044e2"
-SRC_URI[sha256sum] = "5773bd84ef41799a5a8ca72dc34590c041eb01bf9aa02632b4a973fb0181a844"
+SRC_URI[sha256sum] = "25b42124a6c8b632a425174f24087783efb348a6f1e0008e63cd4466fedf703c"
inherit pypi python_hatchling
diff --git a/meta/recipes-devtools/python/python3-requests_2.31.0.bb b/meta/recipes-devtools/python/python3-requests_2.32.1.bb
index df48cd54c3..a1144181bc 100644
--- a/meta/recipes-devtools/python/python3-requests_2.31.0.bb
+++ b/meta/recipes-devtools/python/python3-requests_2.32.1.bb
@@ -1,19 +1,17 @@
SUMMARY = "Python HTTP for Humans."
-HOMEPAGE = "http://python-requests.org"
+HOMEPAGE = "https://requests.readthedocs.io"
LICENSE = "Apache-2.0"
LIC_FILES_CHKSUM = "file://LICENSE;md5=34400b68072d710fecd0a2940a0d1658"
-SRC_URI[sha256sum] = "942c5a758f98d790eaed1a29cb6eefc7ffb0d1cf7af05c3d2791656dbd6ad1e1"
+SRC_URI[sha256sum] = "eb97e87e64c79e64e5b8ac75cee9dd1f97f49e289b083ee6be96268930725685"
-inherit pypi setuptools3
+inherit pypi python_setuptools_build_meta
RDEPENDS:${PN} += " \
+ python3-certifi \
python3-email \
python3-json \
- python3-ndg-httpsclient \
python3-netserver \
- python3-pyasn1 \
- python3-pyopenssl \
python3-pysocks \
python3-urllib3 \
python3-chardet \
diff --git a/meta/recipes-devtools/python/python3-rpds-py-crates.inc b/meta/recipes-devtools/python/python3-rpds-py-crates.inc
index b9048bde51..3551bdb5f7 100644
--- a/meta/recipes-devtools/python/python3-rpds-py-crates.inc
+++ b/meta/recipes-devtools/python/python3-rpds-py-crates.inc
@@ -2,7 +2,7 @@
# from Cargo.lock
SRC_URI += " \
- crate://crates.io/archery/1.1.0 \
+ crate://crates.io/archery/1.2.0 \
crate://crates.io/autocfg/1.1.0 \
crate://crates.io/bitflags/1.3.2 \
crate://crates.io/cfg-if/1.0.0 \
@@ -14,12 +14,13 @@ SRC_URI += " \
crate://crates.io/once_cell/1.18.0 \
crate://crates.io/parking_lot/0.12.1 \
crate://crates.io/parking_lot_core/0.9.8 \
+ crate://crates.io/portable-atomic/1.6.0 \
crate://crates.io/proc-macro2/1.0.66 \
- crate://crates.io/pyo3/0.20.2 \
- crate://crates.io/pyo3-build-config/0.20.2 \
- crate://crates.io/pyo3-ffi/0.20.2 \
- crate://crates.io/pyo3-macros/0.20.2 \
- crate://crates.io/pyo3-macros-backend/0.20.2 \
+ crate://crates.io/pyo3/0.20.3 \
+ crate://crates.io/pyo3-build-config/0.20.3 \
+ crate://crates.io/pyo3-ffi/0.20.3 \
+ crate://crates.io/pyo3-macros/0.20.3 \
+ crate://crates.io/pyo3-macros-backend/0.20.3 \
crate://crates.io/quote/1.0.31 \
crate://crates.io/redox_syscall/0.3.5 \
crate://crates.io/rpds/1.1.0 \
@@ -41,7 +42,7 @@ SRC_URI += " \
crate://crates.io/windows_x86_64_msvc/0.48.0 \
"
-SRC_URI[archery-1.1.0.sha256sum] = "487955f60962765486ce000015a3492ca45c34a2ebbf12bc0aa2b5110ca6e7d2"
+SRC_URI[archery-1.2.0.sha256sum] = "8967cd1cc9e9e1954f644e14fbd6042fe9a37da96c52a67e44a2ac18261f8561"
SRC_URI[autocfg-1.1.0.sha256sum] = "d468802bab17cbc0cc575e9b053f41e72aa36bfa6b7f55e3529ffa43161b97fa"
SRC_URI[bitflags-1.3.2.sha256sum] = "bef38d45163c2f1dde094a7dfd33ccf595c92905c8f8f4fdc18d06fb1037718a"
SRC_URI[cfg-if-1.0.0.sha256sum] = "baf1de4339761588bc0619e3cbc0120ee582ebb74b53b4efbf79117bd2da40fd"
@@ -53,12 +54,13 @@ SRC_URI[memoffset-0.9.0.sha256sum] = "5a634b1c61a95585bd15607c6ab0c4e5b226e695ff
SRC_URI[once_cell-1.18.0.sha256sum] = "dd8b5dd2ae5ed71462c540258bedcb51965123ad7e7ccf4b9a8cafaa4a63576d"
SRC_URI[parking_lot-0.12.1.sha256sum] = "3742b2c103b9f06bc9fff0a37ff4912935851bee6d36f3c02bcc755bcfec228f"
SRC_URI[parking_lot_core-0.9.8.sha256sum] = "93f00c865fe7cabf650081affecd3871070f26767e7b2070a3ffae14c654b447"
+SRC_URI[portable-atomic-1.6.0.sha256sum] = "7170ef9988bc169ba16dd36a7fa041e5c4cbeb6a35b76d4c03daded371eae7c0"
SRC_URI[proc-macro2-1.0.66.sha256sum] = "18fb31db3f9bddb2ea821cde30a9f70117e3f119938b5ee630b7403aa6e2ead9"
-SRC_URI[pyo3-0.20.2.sha256sum] = "9a89dc7a5850d0e983be1ec2a463a171d20990487c3cfcd68b5363f1ee3d6fe0"
-SRC_URI[pyo3-build-config-0.20.2.sha256sum] = "07426f0d8fe5a601f26293f300afd1a7b1ed5e78b2a705870c5f30893c5163be"
-SRC_URI[pyo3-ffi-0.20.2.sha256sum] = "dbb7dec17e17766b46bca4f1a4215a85006b4c2ecde122076c562dd058da6cf1"
-SRC_URI[pyo3-macros-0.20.2.sha256sum] = "05f738b4e40d50b5711957f142878cfa0f28e054aa0ebdfc3fd137a843f74ed3"
-SRC_URI[pyo3-macros-backend-0.20.2.sha256sum] = "0fc910d4851847827daf9d6cdd4a823fbdaab5b8818325c5e97a86da79e8881f"
+SRC_URI[pyo3-0.20.3.sha256sum] = "53bdbb96d49157e65d45cc287af5f32ffadd5f4761438b527b055fb0d4bb8233"
+SRC_URI[pyo3-build-config-0.20.3.sha256sum] = "deaa5745de3f5231ce10517a1f5dd97d53e5a2fd77aa6b5842292085831d48d7"
+SRC_URI[pyo3-ffi-0.20.3.sha256sum] = "62b42531d03e08d4ef1f6e85a2ed422eb678b8cd62b762e53891c05faf0d4afa"
+SRC_URI[pyo3-macros-0.20.3.sha256sum] = "7305c720fa01b8055ec95e484a6eca7a83c841267f0dd5280f0c8b8551d2c158"
+SRC_URI[pyo3-macros-backend-0.20.3.sha256sum] = "7c7e9b68bb9c3149c5b0cade5d07f953d6d125eb4337723c4ccdb665f1f96185"
SRC_URI[quote-1.0.31.sha256sum] = "5fe8a65d69dd0808184ebb5f836ab526bb259db23c657efa38711b1072ee47f0"
SRC_URI[redox_syscall-0.3.5.sha256sum] = "567664f262709473930a4bf9e51bf2ebf3348f2e748ccc50dea20646858f8f29"
SRC_URI[rpds-1.1.0.sha256sum] = "a0e15515d3ce3313324d842629ea4905c25a13f81953eadb88f85516f59290a4"
diff --git a/meta/recipes-devtools/python/python3-rpds-py/run-ptest b/meta/recipes-devtools/python/python3-rpds-py/run-ptest
new file mode 100644
index 0000000000..8d2017d39c
--- /dev/null
+++ b/meta/recipes-devtools/python/python3-rpds-py/run-ptest
@@ -0,0 +1,3 @@
+#!/bin/sh
+
+pytest --automake
diff --git a/meta/recipes-devtools/python/python3-rpds-py_0.18.0.bb b/meta/recipes-devtools/python/python3-rpds-py_0.18.0.bb
deleted file mode 100644
index cece2cb8cc..0000000000
--- a/meta/recipes-devtools/python/python3-rpds-py_0.18.0.bb
+++ /dev/null
@@ -1,15 +0,0 @@
-SUMMARY = "Python bindings to the Rust rpds crate for persistent data structures."
-HOMEPAGE = "https://pypi.org/project/rpds-py/"
-
-LICENSE = "MIT"
-LIC_FILES_CHKSUM = "file://LICENSE;md5=7767fa537c4596c54141f32882c4a984"
-
-SRC_URI[sha256sum] = "42821446ee7a76f5d9f71f9e33a4fb2ffd724bb3e7f93386150b61a43115788d"
-
-require ${BPN}-crates.inc
-
-inherit pypi cargo-update-recipe-crates python_maturin
-
-PYPI_PACKAGE = "rpds_py"
-
-BBCLASSEXTEND = "native nativesdk"
diff --git a/meta/recipes-devtools/python/python3-rpds-py_0.18.1.bb b/meta/recipes-devtools/python/python3-rpds-py_0.18.1.bb
new file mode 100644
index 0000000000..f46df1115c
--- /dev/null
+++ b/meta/recipes-devtools/python/python3-rpds-py_0.18.1.bb
@@ -0,0 +1,30 @@
+SUMMARY = "Python bindings to the Rust rpds crate for persistent data structures."
+HOMEPAGE = "https://pypi.org/project/rpds-py/"
+
+LICENSE = "MIT"
+LIC_FILES_CHKSUM = "file://LICENSE;md5=7767fa537c4596c54141f32882c4a984"
+
+SRC_URI += "file://run-ptest"
+
+SRC_URI[sha256sum] = "dc48b479d540770c811fbd1eb9ba2bb66951863e448efec2e2c102625328e92f"
+
+require ${BPN}-crates.inc
+
+inherit pypi cargo-update-recipe-crates python_maturin ptest
+
+PYPI_PACKAGE = "rpds_py"
+
+RDEPENDS:${PN}-ptest += " \
+ python3-iniconfig \
+ python3-packaging \
+ python3-pluggy \
+ python3-pytest \
+ python3-unittest-automake-output \
+ "
+
+do_install_ptest() {
+ install -d ${D}${PTEST_PATH}/tests
+ cp -rf ${S}/tests/* ${D}${PTEST_PATH}/tests/
+}
+
+BBCLASSEXTEND = "native nativesdk"
diff --git a/meta/recipes-devtools/python/python3-setuptools-scm_8.0.4.bb b/meta/recipes-devtools/python/python3-setuptools-scm_8.1.0.bb
index 64b5050c3b..ea65b476fc 100644
--- a/meta/recipes-devtools/python/python3-setuptools-scm_8.0.4.bb
+++ b/meta/recipes-devtools/python/python3-setuptools-scm_8.1.0.bb
@@ -6,7 +6,9 @@ argument or in a SCM managed file."
LICENSE = "MIT"
LIC_FILES_CHKSUM = "file://LICENSE;md5=838c366f69b72c5df05c96dff79b35f2"
-SRC_URI[sha256sum] = "b5f43ff6800669595193fd09891564ee9d1d7dcb196cab4b2506d53a2e1c95c7"
+SRC_URI[sha256sum] = "42dea1b65771cba93b7a515d65a65d8246e560768a66b9106a592c8e7f26c8a7"
+
+PYPI_PACKAGE = "setuptools_scm"
inherit pypi python_setuptools_build_meta
diff --git a/meta/recipes-devtools/python/python3-sphinx_7.2.6.bb b/meta/recipes-devtools/python/python3-sphinx_7.3.7.bb
index f4ed0720ff..a1cae2abc0 100644
--- a/meta/recipes-devtools/python/python3-sphinx_7.2.6.bb
+++ b/meta/recipes-devtools/python/python3-sphinx_7.3.7.bb
@@ -2,9 +2,9 @@ SUMMARY = "Python documentation generator"
HOMEPAGE = "http://sphinx-doc.org/"
SECTION = "devel/python"
LICENSE = "BSD-2-Clause & MIT"
-LIC_FILES_CHKSUM = "file://LICENSE;md5=5eb6ac1b115a1ed24a12d9f15b633993"
+LIC_FILES_CHKSUM = "file://LICENSE.rst;md5=b6c681698874edd2eb9eaff7cc9de642"
-SRC_URI[sha256sum] = "9a5160e1ea90688d5963ba09a2dcd8bdd526620edbb65c328728f1b2228d5ab5"
+SRC_URI[sha256sum] = "a4a7db75ed37531c05002d56ed6948d4c42f473a36f46e1382b0bd76ca9627bc"
inherit python_flit_core pypi
UPSTREAM_CHECK_REGEX = "/Sphinx/(?P<pver>(\d+[\.\-_]*)+)/"
diff --git a/meta/recipes-devtools/python/python3-trove-classifiers_2024.4.10.bb b/meta/recipes-devtools/python/python3-trove-classifiers_2024.5.17.bb
index 357b428983..94c48ed102 100644
--- a/meta/recipes-devtools/python/python3-trove-classifiers_2024.4.10.bb
+++ b/meta/recipes-devtools/python/python3-trove-classifiers_2024.5.17.bb
@@ -3,7 +3,9 @@ HOMEPAGE = "https://github.com/pypa/trove-classifiers"
LICENSE = "Apache-2.0"
LIC_FILES_CHKSUM = "file://LICENSE;md5=86d3f3a95c324c9479bd8986968f4327"
-SRC_URI[sha256sum] = "49f40bb6a746b72a1cba4f8d55ee8252169cda0f70802e3fd24f04b7fb25a492"
+SRC_URI[sha256sum] = "d47a6f1c48803091c3fc81f535fecfeef65b558f2b9e4e83df7a79d17bce8bbf"
+
+PYPI_PACKAGE = "trove_classifiers"
inherit pypi python_setuptools_build_meta ptest
diff --git a/meta/recipes-devtools/python/python3-zipp_3.18.1.bb b/meta/recipes-devtools/python/python3-zipp_3.18.2.bb
index e43432469d..97aa1fed25 100644
--- a/meta/recipes-devtools/python/python3-zipp_3.18.1.bb
+++ b/meta/recipes-devtools/python/python3-zipp_3.18.2.bb
@@ -3,7 +3,7 @@ HOMEPAGE = "https://github.com/jaraco/zipp"
LICENSE = "MIT"
LIC_FILES_CHKSUM = "file://LICENSE;md5=141643e11c48898150daa83802dbc65f"
-SRC_URI[sha256sum] = "2884ed22e7d8961de1c9a05142eb69a247f120291bc0206a00a7642f09b5b715"
+SRC_URI[sha256sum] = "6278d9ddbcfb1f1089a88fde84481528b07b0e10474e09dcfe53dad4069fa059"
DEPENDS += "python3-setuptools-scm-native"
diff --git a/meta/recipes-devtools/python/python3/0001-gh-107811-tarfile-treat-overflow-in-UID-GID-as-failu.patch b/meta/recipes-devtools/python/python3/0001-gh-107811-tarfile-treat-overflow-in-UID-GID-as-failu.patch
new file mode 100644
index 0000000000..88b84c6024
--- /dev/null
+++ b/meta/recipes-devtools/python/python3/0001-gh-107811-tarfile-treat-overflow-in-UID-GID-as-failu.patch
@@ -0,0 +1,40 @@
+From 999d4e74d34afa233ad8ad0c70b989d77a21957f Mon Sep 17 00:00:00 2001
+From: Petr Viktorin <encukou@gmail.com>
+Date: Wed, 23 Aug 2023 20:00:07 +0200
+Subject: [PATCH] gh-107811: tarfile: treat overflow in UID/GID as failure to
+ set it (#108369)
+
+Upstream-Status: Backport [https://github.com/python/cpython/pull/108369]
+Signed-off-by: Khem Raj <raj.khem@gmail.com>
+---
+ Lib/tarfile.py | 3 ++-
+ .../Library/2023-08-23-17-34-39.gh-issue-107811.3Fng72.rst | 3 +++
+ 2 files changed, 5 insertions(+), 1 deletion(-)
+ create mode 100644 Misc/NEWS.d/next/Library/2023-08-23-17-34-39.gh-issue-107811.3Fng72.rst
+
+diff --git a/Lib/tarfile.py b/Lib/tarfile.py
+index 3bbbcaa..473167d 100755
+--- a/Lib/tarfile.py
++++ b/Lib/tarfile.py
+@@ -2557,7 +2557,8 @@ class TarFile(object):
+ os.lchown(targetpath, u, g)
+ else:
+ os.chown(targetpath, u, g)
+- except OSError as e:
++ except (OSError, OverflowError) as e:
++ # OverflowError can be raised if an ID doesn't fit in `id_t`
+ raise ExtractError("could not change owner") from e
+
+ def chmod(self, tarinfo, targetpath):
+diff --git a/Misc/NEWS.d/next/Library/2023-08-23-17-34-39.gh-issue-107811.3Fng72.rst b/Misc/NEWS.d/next/Library/2023-08-23-17-34-39.gh-issue-107811.3Fng72.rst
+new file mode 100644
+index 0000000..ffca413
+--- /dev/null
++++ b/Misc/NEWS.d/next/Library/2023-08-23-17-34-39.gh-issue-107811.3Fng72.rst
+@@ -0,0 +1,3 @@
++:mod:`tarfile`: extraction of members with overly large UID or GID (e.g. on
++an OS with 32-bit :c:type:`!id_t`) now fails in the same way as failing to
++set the ID.
+--
+2.45.0
+
diff --git a/meta/recipes-devtools/python/python3/0001-test_shutdown-skip-problematic-test.patch b/meta/recipes-devtools/python/python3/0001-test_shutdown-skip-problematic-test.patch
new file mode 100644
index 0000000000..1d4cda18b1
--- /dev/null
+++ b/meta/recipes-devtools/python/python3/0001-test_shutdown-skip-problematic-test.patch
@@ -0,0 +1,46 @@
+From 9d4cdbde100798ba9fa1cf3f82dbaf18fd10a543 Mon Sep 17 00:00:00 2001
+From: Trevor Gamblin <tgamblin@baylibre.com>
+Date: Wed, 8 May 2024 11:58:09 -0400
+Subject: [PATCH] test_shutdown: skip problematic test
+
+This test hangs frequently when run on the Autobuilder. Disable it in
+testing until the cause can be determined.
+
+Upstream-Status: Inappropriate [OE-Specific]
+
+Signed-off-by: Trevor Gamblin <tgamblin@baylibre.com>
+---
+ Lib/test/test_concurrent_futures/test_shutdown.py | 3 +++
+ 1 file changed, 3 insertions(+)
+
+diff --git a/Lib/test/test_concurrent_futures/test_shutdown.py b/Lib/test/test_concurrent_futures/test_shutdown.py
+index 7a4065afd4..6b878a48bf 100644
+--- a/Lib/test/test_concurrent_futures/test_shutdown.py
++++ b/Lib/test/test_concurrent_futures/test_shutdown.py
+@@ -20,6 +20,7 @@ def sleep_and_print(t, msg):
+ sys.stdout.flush()
+
+
++@unittest.skip("skipping problematic test")
+ class ExecutorShutdownTest:
+ def test_run_after_shutdown(self):
+ self.executor.shutdown()
+@@ -156,6 +157,7 @@ def timeout(_signum, _frame):
+ signal.signal(signal.SIGALRM, old_handler)
+
+
++@unittest.skip("skipping problematic test")
+ class ThreadPoolShutdownTest(ThreadPoolMixin, ExecutorShutdownTest, BaseTestCase):
+ def test_threads_terminate(self):
+ def acquire_lock(lock):
+@@ -252,6 +254,7 @@ def test_cancel_futures_wait_false(self):
+ self.assertIn(out.strip(), [b"apple", b""])
+
+
++@unittest.skip("skipping problematic test")
+ class ProcessPoolShutdownTest(ExecutorShutdownTest):
+ def test_processes_terminate(self):
+ def acquire_lock(lock):
+--
+2.45.0
+
diff --git a/meta/recipes-devtools/python/python3_3.12.3.bb b/meta/recipes-devtools/python/python3_3.12.3.bb
index b49a58a101..37afa442fa 100644
--- a/meta/recipes-devtools/python/python3_3.12.3.bb
+++ b/meta/recipes-devtools/python/python3_3.12.3.bb
@@ -30,6 +30,8 @@ SRC_URI = "http://www.python.org/ftp/python/${PV}/Python-${PV}.tar.xz \
file://0001-skip-no_stdout_fileno-test-due-to-load-variability.patch \
file://0001-test_storlines-skip-due-to-load-variability.patch \
file://0001-gh-114492-Initialize-struct-termios-before-calling-t.patch \
+ file://0001-test_shutdown-skip-problematic-test.patch \
+ file://0001-gh-107811-tarfile-treat-overflow-in-UID-GID-as-failu.patch \
"
SRC_URI:append:class-native = " \
@@ -157,7 +159,7 @@ do_compile:prepend() {
}
do_install:prepend() {
- ${WORKDIR}/check_build_completeness.py ${T}/log.do_compile
+ ${UNPACKDIR}/check_build_completeness.py ${T}/log.do_compile
}
do_install:append:class-target() {
@@ -197,7 +199,7 @@ do_install:append:class-native() {
do_install:append() {
for c in ${D}/${libdir}/python${PYTHON_MAJMIN}/_sysconfigdata*.py; do
- python3 ${WORKDIR}/reformat_sysconfig.py $c
+ python3 ${UNPACKDIR}/reformat_sysconfig.py $c
done
rm -f ${D}${libdir}/python${PYTHON_MAJMIN}/__pycache__/_sysconfigdata*.cpython*
@@ -284,7 +286,7 @@ py_package_preprocess () {
# Reformat _sysconfigdata after modifying it so that it remains
# reproducible
for c in ${PKGD}/${libdir}/python${PYTHON_MAJMIN}/_sysconfigdata*.py; do
- python3 ${WORKDIR}/reformat_sysconfig.py $c
+ python3 ${UNPACKDIR}/reformat_sysconfig.py $c
done
# Recompile _sysconfigdata after modifying it
@@ -397,6 +399,7 @@ do_create_manifest() {
# e.g. BerkeleyDB is an optional build dependency so it may or may not
# be present, we must ensure it is.
+ cp ${UNPACKDIR}/create_manifest3.py ${WORKDIR}
cd ${WORKDIR}
# This needs to be executed by python-native and NOT by HOST's python
nativepython3 create_manifest3.py ${PYTHON_MAJMIN}
diff --git a/meta/recipes-devtools/qemu/nativesdk-qemu-helper_1.0.bb b/meta/recipes-devtools/qemu/nativesdk-qemu-helper_1.0.bb
index 5d40784201..90bba84b03 100644
--- a/meta/recipes-devtools/qemu/nativesdk-qemu-helper_1.0.bb
+++ b/meta/recipes-devtools/qemu/nativesdk-qemu-helper_1.0.bb
@@ -18,7 +18,8 @@ SRC_URI = "file://${COREBASE}/scripts/runqemu \
file://${COREBASE}/scripts/runqemu-export-rootfs \
"
-S = "${WORKDIR}"
+S = "${WORKDIR}/sources"
+UNPACKDIR = "${S}"
inherit nativesdk
@@ -28,6 +29,6 @@ do_compile() {
do_install() {
install -d ${D}${bindir}
- install -m 0755 ${WORKDIR}${COREBASE}/scripts/oe-* ${D}${bindir}/
- install -m 0755 ${WORKDIR}${COREBASE}/scripts/runqemu* ${D}${bindir}/
+ install -m 0755 ${S}${COREBASE}/scripts/oe-* ${D}${bindir}/
+ install -m 0755 ${S}${COREBASE}/scripts/runqemu* ${D}${bindir}/
}
diff --git a/meta/recipes-devtools/qemu/qemu-helper-native_1.0.bb b/meta/recipes-devtools/qemu/qemu-helper-native_1.0.bb
index 1dfce0e4c7..28a3b95c4e 100644
--- a/meta/recipes-devtools/qemu/qemu-helper-native_1.0.bb
+++ b/meta/recipes-devtools/qemu/qemu-helper-native_1.0.bb
@@ -2,11 +2,12 @@ SUMMARY = "Helper utilities needed by the runqemu script"
LICENSE = "GPL-2.0-only"
RDEPENDS:${PN} = "qemu-system-native"
-LIC_FILES_CHKSUM = "file://${WORKDIR}/qemu-oe-bridge-helper.c;endline=4;md5=ae00a3bab86f2caaa8462eacda77f4d7"
+LIC_FILES_CHKSUM = "file://${S}/qemu-oe-bridge-helper.c;endline=4;md5=ae00a3bab86f2caaa8462eacda77f4d7"
SRC_URI = "file://qemu-oe-bridge-helper.c"
-S = "${WORKDIR}"
+S = "${WORKDIR}/sources"
+UNPACKDIR = "${S}"
inherit native
diff --git a/meta/recipes-devtools/qemu/qemu-system-native_8.2.1.bb b/meta/recipes-devtools/qemu/qemu-system-native_8.2.1.bb
index 0634b34242..5d2fbcbc02 100644
--- a/meta/recipes-devtools/qemu/qemu-system-native_8.2.1.bb
+++ b/meta/recipes-devtools/qemu/qemu-system-native_8.2.1.bb
@@ -17,7 +17,7 @@ PACKAGECONFIG ??= "fdt alsa kvm pie slirp png \
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
+ install -Dm 0755 ${UNPACKDIR}/powerpc_rom.bin ${D}${datadir}/qemu
# The following is also installed by qemu-native
rm -f ${D}${datadir}/qemu/trace-events-all
diff --git a/meta/recipes-devtools/qemu/qemu.inc b/meta/recipes-devtools/qemu/qemu.inc
index 4501f84c2b..f76cbbb5cb 100644
--- a/meta/recipes-devtools/qemu/qemu.inc
+++ b/meta/recipes-devtools/qemu/qemu.inc
@@ -168,11 +168,11 @@ do_install () {
# If we built the guest agent, also install startup/udev rules
if [ -e "${D}${bindir}/qemu-ga" ]; then
install -d ${D}${sysconfdir}/init.d/
- install -m 0755 ${WORKDIR}/qemu-guest-agent.init ${D}${sysconfdir}/init.d/qemu-guest-agent
+ install -m 0755 ${UNPACKDIR}/qemu-guest-agent.init ${D}${sysconfdir}/init.d/qemu-guest-agent
sed -i 's:@bindir@:${bindir}:' ${D}${sysconfdir}/init.d/qemu-guest-agent
install -d ${D}${sysconfdir}/udev/rules.d/
- install -m 0644 ${WORKDIR}/qemu-guest-agent.udev ${D}${sysconfdir}/udev/rules.d/60-qemu-guest-agent.rules
+ install -m 0644 ${UNPACKDIR}/qemu-guest-agent.udev ${D}${sysconfdir}/udev/rules.d/60-qemu-guest-agent.rules
install -d ${D}${systemd_unitdir}/system/
install -m 0644 ${S}/contrib/systemd/qemu-guest-agent.service ${D}${systemd_unitdir}/system
diff --git a/meta/recipes-devtools/qemu/qemuwrapper-cross_1.0.bb b/meta/recipes-devtools/qemu/qemuwrapper-cross_1.0.bb
index 97b44ad2e5..6d0e7883ad 100644
--- a/meta/recipes-devtools/qemu/qemuwrapper-cross_1.0.bb
+++ b/meta/recipes-devtools/qemu/qemuwrapper-cross_1.0.bb
@@ -2,7 +2,8 @@ SUMMARY = "QEMU wrapper script"
HOMEPAGE = "http://qemu.org"
LICENSE = "MIT"
-S = "${WORKDIR}"
+S = "${WORKDIR}/sources"
+UNPACKDIR = "${S}"
DEPENDS += "qemu-native"
diff --git a/meta/recipes-devtools/quilt/quilt.inc b/meta/recipes-devtools/quilt/quilt.inc
index 3374f4dfbf..1d90d3d84d 100644
--- a/meta/recipes-devtools/quilt/quilt.inc
+++ b/meta/recipes-devtools/quilt/quilt.inc
@@ -67,7 +67,7 @@ DEPENDS:append:class-target = "${@bb.utils.contains('PTEST_ENABLED', '1', ' ptes
PACKAGE_WRITE_DEPS += "ptest-runner"
do_install_ptest() {
- install ${WORKDIR}/test.sh ${D}${PTEST_PATH}
+ install ${UNPACKDIR}/test.sh ${D}${PTEST_PATH}
mkdir ${D}${PTEST_PATH}/test
install ${S}/test/* ${D}${PTEST_PATH}/test
# mail needs a MTA, and the patch-wrapper is disabled
diff --git a/meta/recipes-devtools/repo/repo_2.45.bb b/meta/recipes-devtools/repo/repo_2.45.bb
index 81bf31754b..dd12373e3a 100644
--- a/meta/recipes-devtools/repo/repo_2.45.bb
+++ b/meta/recipes-devtools/repo/repo_2.45.bb
@@ -22,7 +22,7 @@ do_configure:prepend() {
}
do_install() {
- install -D ${WORKDIR}/git/repo ${D}${bindir}/repo
+ install -D ${S}/repo ${D}${bindir}/repo
}
RDEPENDS:${PN} = "python3 git"
diff --git a/meta/recipes-devtools/rsync/rsync_3.3.0.bb b/meta/recipes-devtools/rsync/rsync_3.3.0.bb
index b42026331d..a90d2887bd 100644
--- a/meta/recipes-devtools/rsync/rsync_3.3.0.bb
+++ b/meta/recipes-devtools/rsync/rsync_3.3.0.bb
@@ -61,7 +61,7 @@ do_configure:append () {
do_install:append() {
install -d ${D}${sysconfdir}
- install -m 0644 ${WORKDIR}/rsyncd.conf ${D}${sysconfdir}
+ install -m 0644 ${UNPACKDIR}/rsyncd.conf ${D}${sysconfdir}
}
BBCLASSEXTEND = "native nativesdk"
diff --git a/meta/recipes-devtools/run-postinsts/run-postinsts_1.0.bb b/meta/recipes-devtools/run-postinsts/run-postinsts_1.0.bb
index e977942de8..f571e61921 100644
--- a/meta/recipes-devtools/run-postinsts/run-postinsts_1.0.bb
+++ b/meta/recipes-devtools/run-postinsts/run-postinsts_1.0.bb
@@ -8,7 +8,8 @@ SRC_URI = "file://run-postinsts \
file://run-postinsts.init \
file://run-postinsts.service"
-S = "${WORKDIR}"
+S = "${WORKDIR}/sources"
+UNPACKDIR = "${S}"
inherit allarch systemd update-rc.d
@@ -29,13 +30,13 @@ do_compile () {
do_install() {
install -d ${D}${sbindir}
- install -m 0755 ${WORKDIR}/run-postinsts ${D}${sbindir}/
+ install -m 0755 ${S}/run-postinsts ${D}${sbindir}/
install -d ${D}${sysconfdir}/init.d/
- install -m 0755 ${WORKDIR}/run-postinsts.init ${D}${sysconfdir}/init.d/run-postinsts
+ install -m 0755 ${S}/run-postinsts.init ${D}${sysconfdir}/init.d/run-postinsts
install -d ${D}${systemd_system_unitdir}/
- install -m 0644 ${WORKDIR}/run-postinsts.service ${D}${systemd_system_unitdir}/
+ install -m 0644 ${S}/run-postinsts.service ${D}${systemd_system_unitdir}/
sed -i -e 's:#SYSCONFDIR#:${sysconfdir}:g' \
-e 's:#SBINDIR#:${sbindir}:g' \
diff --git a/meta/recipes-devtools/rust/cargo_1.75.0.bb b/meta/recipes-devtools/rust/cargo_1.75.0.bb
index 50b7e7c7b4..123032cdf7 100644
--- a/meta/recipes-devtools/rust/cargo_1.75.0.bb
+++ b/meta/recipes-devtools/rust/cargo_1.75.0.bb
@@ -22,7 +22,7 @@ inherit cargo pkgconfig
DEBUG_PREFIX_MAP += "-fdebug-prefix-map=${RUSTSRC}/vendor=${TARGET_DBGSRC_DIR}"
do_cargo_setup_snapshot () {
- ${WORKDIR}/rust-snapshot-components/${CARGO_SNAPSHOT}/install.sh --prefix="${WORKDIR}/${CARGO_SNAPSHOT}" --disable-ldconfig
+ ${UNPACKDIR}/rust-snapshot-components/${CARGO_SNAPSHOT}/install.sh --prefix="${WORKDIR}/${CARGO_SNAPSHOT}" --disable-ldconfig
# Need to use uninative's loader if enabled/present since the library paths
# are used internally by rust and result in symbol mismatches if we don't
if [ ! -z "${UNINATIVE_LOADER}" -a -e "${UNINATIVE_LOADER}" ]; then
diff --git a/meta/recipes-devtools/rust/files/cargo-path.patch b/meta/recipes-devtools/rust/files/cargo-path.patch
deleted file mode 100644
index 9a50c40220..0000000000
--- a/meta/recipes-devtools/rust/files/cargo-path.patch
+++ /dev/null
@@ -1,37 +0,0 @@
-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 <Yash.Shinde@windriver.com>
----
-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 "RUSTFLAGS_BOOTSTRAP" in env:
- env["RUSTFLAGS"] += " " + env["RUSTFLAGS_BOOTSTRAP"]
-
-- 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/meta/recipes-devtools/rust/rust-cross-canadian.inc b/meta/recipes-devtools/rust/rust-cross-canadian.inc
index 7bfef6d175..f962437d6b 100644
--- a/meta/recipes-devtools/rust/rust-cross-canadian.inc
+++ b/meta/recipes-devtools/rust/rust-cross-canadian.inc
@@ -12,7 +12,8 @@ DEPENDS += "virtual/${SDK_PREFIX}gcc virtual/nativesdk-libc virtual/nativesdk-${
SRC_URI += "file://target-rust-ccld.c"
LIC_FILES_CHKSUM = "file://target-rust-ccld.c;md5=af4e0e29f81a34cffe05aa07c89e93e9;endline=7"
-S = "${WORKDIR}"
+S = "${WORKDIR}/sources"
+UNPACKDIR = "${S}"
# Need to use our SDK's sh here, see #14878
create_sdk_wrapper () {
@@ -46,7 +47,7 @@ do_install () {
# where the context is easier to do the env maniupations needed
install -d ${SYS_BINDIR}
outfile="${SYS_BINDIR}/target-rust-ccld"
- ${CC} ${WORKDIR}/target-rust-ccld.c -o $outfile
+ ${CC} ${S}/target-rust-ccld.c -o $outfile
chmod +x "$outfile"
create_sdk_wrapper "${SYS_BINDIR}/target-rust-ccld-wrapper" "CC"
diff --git a/meta/recipes-devtools/rust/rust-source.inc b/meta/recipes-devtools/rust/rust-source.inc
index b14221b6cb..c83c8ec3a3 100644
--- a/meta/recipes-devtools/rust/rust-source.inc
+++ b/meta/recipes-devtools/rust/rust-source.inc
@@ -7,7 +7,6 @@ SRC_URI += "https://static.rust-lang.org/dist/rustc-${RUST_VERSION}-src.tar.xz;n
file://rv32-missing-syscalls.patch;patchdir=${RUSTSRC} \
file://rv32-rustix-libc-backend.patch;patchdir=${RUSTSRC} \
file://rv32-cargo-rustix-0.38.19-fix.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} \
diff --git a/meta/recipes-devtools/rust/rust_1.75.0.bb b/meta/recipes-devtools/rust/rust_1.75.0.bb
index 76e1fe2d84..c1b0a35e7b 100644
--- a/meta/recipes-devtools/rust/rust_1.75.0.bb
+++ b/meta/recipes-devtools/rust/rust_1.75.0.bb
@@ -35,8 +35,6 @@ RUST_ALTERNATE_EXE_PATH_NATIVE = "${STAGING_LIBDIR_NATIVE}/llvm-rust/bin/llvm-co
# own vendoring.
CARGO_DISABLE_BITBAKE_VENDORING = "1"
-# We can't use RUST_BUILD_SYS here because that may be "musl" if
-# TCLIBC="musl". Snapshots are always -unknown-linux-gnu
setup_cargo_environment () {
# The first step is to build bootstrap and some early stage tools,
# these are build for the same target as the snapshot, e.g.
@@ -48,14 +46,14 @@ setup_cargo_environment () {
inherit rust-target-config
do_rust_setup_snapshot () {
- for installer in "${WORKDIR}/rust-snapshot-components/"*"/install.sh"; do
+ for installer in "${UNPACKDIR}/rust-snapshot-components/"*"/install.sh"; do
"${installer}" --prefix="${WORKDIR}/rust-snapshot" --disable-ldconfig
done
# Some versions of rust (e.g. 1.18.0) tries to find cargo in stage0/bin/cargo
# and fail without it there.
- mkdir -p ${RUSTSRC}/build/${BUILD_SYS}
- ln -sf ${WORKDIR}/rust-snapshot/ ${RUSTSRC}/build/${BUILD_SYS}/stage0
+ mkdir -p ${RUSTSRC}/build/${RUST_BUILD_SYS}
+ ln -sf ${WORKDIR}/rust-snapshot/ ${RUSTSRC}/build/${RUST_BUILD_SYS}/stage0
# Need to use uninative's loader if enabled/present since the library paths
# are used internally by rust and result in symbol mismatches if we don't
diff --git a/meta/recipes-devtools/strace/strace_6.7.bb b/meta/recipes-devtools/strace/strace_6.8.bb
index f365477ccd..e1cc65e053 100644
--- a/meta/recipes-devtools/strace/strace_6.7.bb
+++ b/meta/recipes-devtools/strace/strace_6.8.bb
@@ -15,7 +15,7 @@ SRC_URI = "https://strace.io/files/${PV}/strace-${PV}.tar.xz \
file://0001-configure-Use-autoconf-macro-to-detect-largefile-sup.patch \
file://0002-tests-Replace-off64_t-with-off_t.patch \
"
-SRC_URI[sha256sum] = "2090201e1a3ff32846f4fe421c1163b15f440bb38e31355d09f82d3949922af7"
+SRC_URI[sha256sum] = "ba6950a96824cdf93a584fa04f0a733896d2a6bc5f0ad9ffe505d9b41e970149"
inherit autotools ptest
@@ -47,10 +47,6 @@ do_install_ptest() {
sed -i -e '/^src/s/strace.*[0-9]/ptest/' ${D}/${PTEST_PATH}/${TESTDIR}/Makefile
}
-RDEPENDS:${PN}-ptest += "make coreutils grep gawk sed"
-
-RDEPENDS:${PN}-ptest:append:libc-glibc = "\
- locale-base-en-us.iso-8859-1 \
-"
+RDEPENDS:${PN}-ptest += "make coreutils grep gawk sed locale-base-en-us"
BBCLASSEXTEND = "native"
diff --git a/meta/recipes-devtools/systemd-bootchart/systemd-bootchart/0001-Define-portable-basename-function.patch b/meta/recipes-devtools/systemd-bootchart/systemd-bootchart/0001-Define-portable-basename-function.patch
new file mode 100644
index 0000000000..dc4c44c6af
--- /dev/null
+++ b/meta/recipes-devtools/systemd-bootchart/systemd-bootchart/0001-Define-portable-basename-function.patch
@@ -0,0 +1,59 @@
+From 4b19c32791fb8a8663b3335f8a3675a2bbabe688 Mon Sep 17 00:00:00 2001
+From: Khem Raj <raj.khem@gmail.com>
+Date: Mon, 20 May 2024 18:40:36 -0700
+Subject: [PATCH] Define portable basename function
+
+Newer version of musl have removed prototype for basename in string.h [1]
+which now makes it fail to compile with GCC14+ compiler therefore
+define local basename utility function.
+
+[1] https://git.musl-libc.org/cgit/musl/commit/?id=725e17ed6dff4d0cd22487bb64470881e86a92e7
+
+Upstream-Status: Submitted [https://github.com/systemd/systemd-bootchart/pull/53]
+Signed-off-by: Khem Raj <raj.khem@gmail.com>
+---
+ src/conf-files.c | 14 ++++++++++++--
+ 1 file changed, 12 insertions(+), 2 deletions(-)
+
+diff --git a/src/conf-files.c b/src/conf-files.c
+index 5dd2d7d..b932bb2 100644
+--- a/src/conf-files.c
++++ b/src/conf-files.c
+@@ -35,6 +35,16 @@
+ #include "strv.h"
+ #include "util.h"
+
++/***
++ * basename is implemented differently across different C libraries. This
++ * implementation matches the one provided by the GNU libc, and does not
++ * modify its input parameter.
++***/
++static const char *sbc_basename(const char *path) {
++ const char *base = strrchr(path, '/');
++ return base ? base + 1 : path;
++}
++
+ static int files_add(Hashmap *h, const char *root, const char *path, const char *suffix) {
+ _cleanup_closedir_ DIR *dir = NULL;
+ const char *dirpath;
+@@ -63,7 +73,7 @@ static int files_add(Hashmap *h, const char *root, const char *path, const char
+ if (!p)
+ return -ENOMEM;
+
+- r = hashmap_put(h, basename(p), p);
++ r = hashmap_put(h, sbc_basename(p), p);
+ if (r == -EEXIST) {
+ log_debug("Skipping overridden file: %s.", p);
+ free(p);
+@@ -84,7 +94,7 @@ static int base_cmp(const void *a, const void *b) {
+
+ s1 = *(char * const *)a;
+ s2 = *(char * const *)b;
+- return strcmp(basename(s1), basename(s2));
++ return strcmp(sbc_basename(s1), sbc_basename(s2));
+ }
+
+ static int conf_files_list_strv_internal(char ***strv, const char *suffix, const char *root, char **dirs) {
+--
+2.45.1
+
diff --git a/meta/recipes-devtools/systemd-bootchart/systemd-bootchart_235.bb b/meta/recipes-devtools/systemd-bootchart/systemd-bootchart_235.bb
index 25544029d5..3c3c84ff4a 100644
--- a/meta/recipes-devtools/systemd-bootchart/systemd-bootchart_235.bb
+++ b/meta/recipes-devtools/systemd-bootchart/systemd-bootchart_235.bb
@@ -17,6 +17,7 @@ SRC_URI:append:libc-musl = " \
file://0001-comparison_fn_t-is-glibc-specific-use-raw-signature-.patch \
file://0002-musl-does-not-provide-printf-h.patch \
file://0003-musl-does-not-provide-canonicalize_file_name.patch \
+ file://0001-Define-portable-basename-function.patch \
"
diff --git a/meta/recipes-devtools/tcf-agent/tcf-agent_git.bb b/meta/recipes-devtools/tcf-agent/tcf-agent_git.bb
index 59b9d7de78..214dd4b2a8 100644
--- a/meta/recipes-devtools/tcf-agent/tcf-agent_git.bb
+++ b/meta/recipes-devtools/tcf-agent/tcf-agent_git.bb
@@ -54,9 +54,9 @@ CFLAGS:append:loongarch64 = " ${LCL_STOP_SERVICES}"
do_install() {
oe_runmake install INSTALLROOT=${D}
install -d ${D}${sysconfdir}/init.d/
- install -m 0755 ${WORKDIR}/tcf-agent.init ${D}${sysconfdir}/init.d/tcf-agent
+ install -m 0755 ${UNPACKDIR}/tcf-agent.init ${D}${sysconfdir}/init.d/tcf-agent
install -d ${D}${systemd_system_unitdir}
- install -m 0644 ${WORKDIR}/tcf-agent.service ${D}${systemd_system_unitdir}
+ install -m 0644 ${UNPACKDIR}/tcf-agent.service ${D}${systemd_system_unitdir}
sed -i -e 's,@SBINDIR@,${sbindir},g' ${D}${systemd_system_unitdir}/tcf-agent.service
}
diff --git a/meta/recipes-devtools/valgrind/valgrind/0001-Return-a-valid-exit_code-from-vg_regtest.patch b/meta/recipes-devtools/valgrind/valgrind/0001-Return-a-valid-exit_code-from-vg_regtest.patch
index e7af5efecc..832a1c3d6e 100644
--- a/meta/recipes-devtools/valgrind/valgrind/0001-Return-a-valid-exit_code-from-vg_regtest.patch
+++ b/meta/recipes-devtools/valgrind/valgrind/0001-Return-a-valid-exit_code-from-vg_regtest.patch
@@ -10,11 +10,9 @@ Signed-off-by: Randy MacLeod <Randy.MacLeod@windriver.com>
tests/vg_regtest.in | 1 +
1 file changed, 1 insertion(+)
-diff --git a/tests/vg_regtest.in b/tests/vg_regtest.in
-index 909af3be8..f2799c4e3 100755
--- a/tests/vg_regtest.in
+++ b/tests/vg_regtest.in
-@@ -403,6 +403,7 @@ sub mysystem($)
+@@ -401,6 +401,7 @@ sub mysystem($)
exit 1;
}
}
@@ -22,6 +20,3 @@ index 909af3be8..f2799c4e3 100755
}
# if $keepunfiltered, copies $1 to $1.unfiltered.out
# renames $0 tp $1
---
-2.17.0
-
diff --git a/meta/recipes-devtools/valgrind/valgrind/0001-configure-Drop-setting-mcpu-cortex-a8-on-arm.patch b/meta/recipes-devtools/valgrind/valgrind/0001-configure-Drop-setting-mcpu-cortex-a8-on-arm.patch
new file mode 100644
index 0000000000..63a1a58c04
--- /dev/null
+++ b/meta/recipes-devtools/valgrind/valgrind/0001-configure-Drop-setting-mcpu-cortex-a8-on-arm.patch
@@ -0,0 +1,40 @@
+From b17b6d7d3a65c14f91f090f3f4f9898d6fa3a9e4 Mon Sep 17 00:00:00 2001
+From: Khem Raj <raj.khem@gmail.com>
+Date: Fri, 10 May 2024 16:27:34 -0700
+Subject: [PATCH] configure: Drop setting mcpu=cortex-a8 on arm
+
+The -march settings from environment expresses the flags
+appropriately, moreover, this conflicts when using armhf
+without neon [1]
+
+[1] https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=928224
+
+Upstream-Status: Submitted [https://bugs.kde.org/show_bug.cgi?id=454346]
+Signed-off-by: Khem Raj <raj.khem@gmail.com>
+---
+ configure.ac | 4 ++--
+ 1 file changed, 2 insertions(+), 2 deletions(-)
+
+diff --git a/configure.ac b/configure.ac
+index 39d8b6d..d61b3a6 100755
+--- a/configure.ac
++++ b/configure.ac
+@@ -275,13 +275,13 @@ case "${host_cpu}" in
+
+ armv8*)
+ AC_MSG_RESULT([ok (${host_cpu})])
+- VGCONF_PLATFORM_ARM_ARCH="-marm -mcpu=cortex-a8"
++ VGCONF_PLATFORM_ARM_ARCH="-marm"
+ ARCH_MAX="arm"
+ ;;
+
+ armv7*)
+ AC_MSG_RESULT([ok (${host_cpu})])
+- VGCONF_PLATFORM_ARM_ARCH="-marm -mcpu=cortex-a8"
++ VGCONF_PLATFORM_ARM_ARCH="-marm"
+ ARCH_MAX="arm"
+ ;;
+
+--
+2.45.0
+
diff --git a/meta/recipes-devtools/valgrind/valgrind/0001-docs-Disable-manual-validation.patch b/meta/recipes-devtools/valgrind/valgrind/0001-docs-Disable-manual-validation.patch
index 256ddb0c34..eba569c884 100644
--- a/meta/recipes-devtools/valgrind/valgrind/0001-docs-Disable-manual-validation.patch
+++ b/meta/recipes-devtools/valgrind/valgrind/0001-docs-Disable-manual-validation.patch
@@ -18,11 +18,9 @@ Signed-off-by: Khem Raj <raj.khem@gmail.com>
docs/Makefile.am | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
-diff --git a/docs/Makefile.am b/docs/Makefile.am
-index d4250e8..c500306 100644
--- a/docs/Makefile.am
+++ b/docs/Makefile.am
-@@ -192,7 +192,7 @@ valid-manpages: $(MANPAGES_XML_FILES)
+@@ -194,7 +194,7 @@ valid-manpages: $(MANPAGES_XML_FILES)
touch $@; \
fi
@@ -31,6 +29,3 @@ index d4250e8..c500306 100644
# The text version of the FAQ.
FAQ.txt:
---
-2.34.1
-
diff --git a/meta/recipes-devtools/valgrind/valgrind/0001-makefiles-Drop-setting-mcpu-to-cortex-a8-on-arm-arch.patch b/meta/recipes-devtools/valgrind/valgrind/0001-makefiles-Drop-setting-mcpu-to-cortex-a8-on-arm-arch.patch
index 073713c139..7996fa6e8f 100644
--- a/meta/recipes-devtools/valgrind/valgrind/0001-makefiles-Drop-setting-mcpu-to-cortex-a8-on-arm-arch.patch
+++ b/meta/recipes-devtools/valgrind/valgrind/0001-makefiles-Drop-setting-mcpu-to-cortex-a8-on-arm-arch.patch
@@ -19,30 +19,9 @@ Signed-off-by: Khem Raj <raj.khem@gmail.com>
none/tests/arm/Makefile.am | 18 +++++++++---------
3 files changed, 15 insertions(+), 15 deletions(-)
-diff --git a/Makefile.all.am b/Makefile.all.am
-index 02059a3..c7c4700 100644
---- a/Makefile.all.am
-+++ b/Makefile.all.am
-@@ -197,11 +197,11 @@ AM_CCASFLAGS_PPC64LE_LINUX = @FLAG_M64@ -g
-
- AM_FLAG_M3264_ARM_LINUX = @FLAG_M32@
- AM_CFLAGS_ARM_LINUX = @FLAG_M32@ \
-- $(AM_CFLAGS_BASE) -marm -mcpu=cortex-a8
-+ $(AM_CFLAGS_BASE) -marm
- AM_CFLAGS_PSO_ARM_LINUX = @FLAG_M32@ $(AM_CFLAGS_BASE) \
-- -marm -mcpu=cortex-a8 $(AM_CFLAGS_PSO_BASE)
-+ -marm $(AM_CFLAGS_PSO_BASE)
- AM_CCASFLAGS_ARM_LINUX = @FLAG_M32@ \
-- -marm -mcpu=cortex-a8 -g
-+ -marm -g
-
- AM_FLAG_M3264_ARM64_LINUX = @FLAG_M64@
- AM_CFLAGS_ARM64_LINUX = @FLAG_M64@ $(AM_CFLAGS_BASE)
-diff --git a/helgrind/tests/Makefile.am b/helgrind/tests/Makefile.am
-index df82169..07eb66a 100644
--- a/helgrind/tests/Makefile.am
+++ b/helgrind/tests/Makefile.am
-@@ -189,9 +189,9 @@ if ! VGCONF_PLATFORMS_INCLUDE_X86_DARWIN
+@@ -223,9 +223,9 @@ if ! VGCONF_PLATFORMS_INCLUDE_X86_DARWIN
endif
if VGCONF_PLATFORMS_INCLUDE_ARM_LINUX
@@ -55,11 +34,9 @@ index df82169..07eb66a 100644
else
annotate_hbefore_CFLAGS = $(AM_CFLAGS)
tc07_hbl1_CFLAGS = $(AM_CFLAGS)
-diff --git a/none/tests/arm/Makefile.am b/none/tests/arm/Makefile.am
-index 024eb6d..ccecb90 100644
--- a/none/tests/arm/Makefile.am
+++ b/none/tests/arm/Makefile.am
-@@ -52,10 +52,10 @@ allexec_CFLAGS = $(AM_CFLAGS) @FLAG_W_NO_NONNULL@
+@@ -56,10 +56,10 @@ allexec_CFLAGS = $(AM_CFLAGS) @FLAG_W_N
# need special helping w.r.t -mfpu and -mfloat-abi, though.
# Also force -O0 since -O takes hundreds of MB of memory
# for v6intThumb.c.
@@ -71,11 +48,11 @@ index 024eb6d..ccecb90 100644
-v6media_CFLAGS = $(AM_CFLAGS) -g -O0 -mcpu=cortex-a8 -mthumb
+v6media_CFLAGS = $(AM_CFLAGS) -g -O0 -mthumb
- v8crypto_a_CFLAGS = $(AM_CFLAGS) -g -O0 -mfpu=crypto-neon-fp-armv8 -marm
- v8crypto_t_CFLAGS = $(AM_CFLAGS) -g -O0 -mfpu=crypto-neon-fp-armv8 -mthumb
-@@ -65,23 +65,23 @@ v8memory_a_CFLAGS = $(AM_CFLAGS) -g -O0 \
- v8memory_t_CFLAGS = $(AM_CFLAGS) -g -O0 \
- -march=armv8-a -mfpu=crypto-neon-fp-armv8 -mthumb
+ v8crypto_a_CFLAGS = $(AM_CFLAGS) -g -O0 -mfpu=crypto-neon-fp-armv8 -marm -march=armv8-a
+ v8crypto_t_CFLAGS = $(AM_CFLAGS) -g -O0 -mfpu=crypto-neon-fp-armv8 -mthumb -march=armv8-a
+@@ -74,23 +74,23 @@ v8memory_t_CFLAGS = $(AM_CFLAGS) -g -O0
+
+ vcvt_fixed_float_VFP_CFLAGS = $(AM_CFLAGS) -g -O0 -mcpu=cortex-a8 -mfpu=neon
-vfp_CFLAGS = $(AM_CFLAGS) -g -O0 -mcpu=cortex-a8 \
+vfp_CFLAGS = $(AM_CFLAGS) -g -O0 \
@@ -103,6 +80,3 @@ index 024eb6d..ccecb90 100644
+vcvt_fixed_float_VFP_CFLAGS = $(AM_CFLAGS) -g -mfpu=vfpv3
vfpv4_fma_CFLAGS = $(AM_CFLAGS) -g -O0 -march=armv7ve -mcpu=cortex-a15 -mfpu=vfpv4 -marm
---
-2.12.2
-
diff --git a/meta/recipes-devtools/valgrind/valgrind/0001-memcheck-tests-Fix-timerfd-syscall-test.patch b/meta/recipes-devtools/valgrind/valgrind/0001-memcheck-tests-Fix-timerfd-syscall-test.patch
index 15fbbe954f..29a9e95a90 100644
--- a/meta/recipes-devtools/valgrind/valgrind/0001-memcheck-tests-Fix-timerfd-syscall-test.patch
+++ b/meta/recipes-devtools/valgrind/valgrind/0001-memcheck-tests-Fix-timerfd-syscall-test.patch
@@ -17,7 +17,7 @@ Signed-off-by: Khem Raj <raj.khem@gmail.com>
--- a/config.h.in
+++ b/config.h.in
-@@ -301,6 +301,9 @@
+@@ -424,6 +424,9 @@
/* Define to 1 if you have the <sys/sysnvl.h> header file. */
#undef HAVE_SYS_SYSNVL_H
@@ -29,7 +29,7 @@ Signed-off-by: Khem Raj <raj.khem@gmail.com>
--- a/configure.ac
+++ b/configure.ac
-@@ -4098,6 +4098,7 @@ AC_CHECK_HEADERS([ \
+@@ -4881,6 +4881,7 @@ AC_CHECK_HEADERS([ \
sys/syscall.h \
sys/sysnvl.h \
sys/time.h \
@@ -39,7 +39,7 @@ Signed-off-by: Khem Raj <raj.khem@gmail.com>
--- a/memcheck/tests/linux/timerfd-syscall.c
+++ b/memcheck/tests/linux/timerfd-syscall.c
-@@ -45,6 +45,9 @@
+@@ -42,6 +42,9 @@
#if defined(HAVE_SYS_TIME_H)
#include <sys/time.h>
#endif
@@ -49,7 +49,7 @@ Signed-off-by: Khem Raj <raj.khem@gmail.com>
#if defined(HAVE_SYS_TYPES_H)
#include <sys/types.h>
#endif
-@@ -54,7 +57,8 @@
+@@ -51,7 +54,8 @@
* timerfd_* system call numbers introduced in 2.6.23. These constants are
* not yet in the glibc 2.7 headers, that is why they are defined here.
*/
@@ -59,7 +59,7 @@ Signed-off-by: Khem Raj <raj.khem@gmail.com>
#if defined(__x86_64__)
#define __NR_timerfd_create 283
#elif defined(__i386__)
-@@ -67,8 +71,10 @@
+@@ -64,8 +68,10 @@
#error Cannot detect your architecture!
#endif
#endif
@@ -71,7 +71,7 @@ Signed-off-by: Khem Raj <raj.khem@gmail.com>
#if defined(__x86_64__)
#define __NR_timerfd_settime 286
#define __NR_timerfd_gettime 287
-@@ -85,7 +91,7 @@
+@@ -82,7 +88,7 @@
#error Cannot detect your architecture!
#endif
#endif
@@ -80,7 +80,7 @@ Signed-off-by: Khem Raj <raj.khem@gmail.com>
/* Definitions from include/linux/timerfd.h */
-@@ -127,6 +133,7 @@ void set_timespec(struct timespec *tmr,
+@@ -124,6 +130,7 @@ void set_timespec(struct timespec *tmr,
tmr->tv_nsec = (long) (1000ULL * (ustime % 1000000ULL));
}
@@ -88,7 +88,7 @@ Signed-off-by: Khem Raj <raj.khem@gmail.com>
int timerfd_create(int clockid, int flags)
{
return syscall(__NR_timerfd_create, clockid, flags);
-@@ -142,6 +149,7 @@ int timerfd_gettime(int ufc, struct itim
+@@ -139,6 +146,7 @@ int timerfd_gettime(int ufc, struct itim
{
return syscall(__NR_timerfd_gettime, ufc, otmr);
}
diff --git a/meta/recipes-devtools/valgrind/valgrind/0001-tests-arm-Use-O-instead-of-O0.patch b/meta/recipes-devtools/valgrind/valgrind/0001-tests-arm-Use-O-instead-of-O0.patch
new file mode 100644
index 0000000000..2d28bcb6c4
--- /dev/null
+++ b/meta/recipes-devtools/valgrind/valgrind/0001-tests-arm-Use-O-instead-of-O0.patch
@@ -0,0 +1,34 @@
+From 8e907753625faba3284925983ef8e83f8491aa76 Mon Sep 17 00:00:00 2001
+From: Khem Raj <raj.khem@gmail.com>
+Date: Fri, 10 May 2024 17:44:47 -0700
+Subject: [PATCH] tests/arm: Use -O instead of -O0
+
+GCC-14 fails to compile the testcase with -O2 [1]
+therefore workaround it by using -O1, which works
+and for OE/cross-compiling it is fine, -O0 is used
+to make these tests compile natively on an arm target
+and gcc would take less memory compiling with -O0
+-O would take a bit more memory but in cross compiling
+we have enough of it on build host.
+
+[1] https://gcc.gnu.org/bugzilla/show_bug.cgi?id=115042
+Upstream-Status: Inappropriate [WORKAROUND]
+Signed-off-by: Khem Raj <raj.khem@gmail.com>
+---
+ none/tests/arm/Makefile.am | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+--- a/none/tests/arm/Makefile.am
++++ b/none/tests/arm/Makefile.am
+@@ -57,9 +57,9 @@ allexec_CFLAGS = $(AM_CFLAGS) @FLAG_W_N
+ # Also force -O0 since -O takes hundreds of MB of memory
+ # for v6intThumb.c.
+ v6intARM_CFLAGS = $(AM_CFLAGS) -g -O0 -marm
+-v6intThumb_CFLAGS = $(AM_CFLAGS) -g -O0 -mthumb
++v6intThumb_CFLAGS = $(AM_CFLAGS) -g -O -mthumb
+
+-v6media_CFLAGS = $(AM_CFLAGS) -g -O0 -mthumb
++v6media_CFLAGS = $(AM_CFLAGS) -g -O -mthumb
+
+ v8crypto_a_CFLAGS = $(AM_CFLAGS) -g -O0 -mfpu=crypto-neon-fp-armv8 -marm -march=armv8-a
+ v8crypto_t_CFLAGS = $(AM_CFLAGS) -g -O0 -mfpu=crypto-neon-fp-armv8 -mthumb -march=armv8-a
diff --git a/meta/recipes-devtools/valgrind/valgrind/0001-valgrind-monitor.py-regular-expressions-should-use-r.patch b/meta/recipes-devtools/valgrind/valgrind/0001-valgrind-monitor.py-regular-expressions-should-use-r.patch
deleted file mode 100644
index 80a8e3a10b..0000000000
--- a/meta/recipes-devtools/valgrind/valgrind/0001-valgrind-monitor.py-regular-expressions-should-use-r.patch
+++ /dev/null
@@ -1,64 +0,0 @@
-From 027b649fdb831868e71be01cafdacc49a5f419ab Mon Sep 17 00:00:00 2001
-From: Mark Wielaard <mark@klomp.org>
-Date: Fri, 17 Nov 2023 14:01:21 +0100
-Subject: [PATCH 1/4] valgrind-monitor.py regular expressions should use raw
- strings
-
-With python 3.12 gdb will produce the following SyntaxWarning when
-loading valgrind-monitor-def.py:
-
- /usr/share/gdb/auto-load/valgrind-monitor-def.py:214:
- SyntaxWarning: invalid escape sequence '\['
- if re.fullmatch("^0x[0123456789ABCDEFabcdef]+\[[^\[\]]+\]$", arg_str):
-
-In a future python version this will become an SyntaxError.
-
-Use a raw strings for the regular expression.
-
-https://bugs.kde.org/show_bug.cgi?id=476708
-(cherry picked from commit 0fbfbe05028ad18efda786a256a2738d2c231ed4)
-
-Upstream-Status: Backport [https://sourceware.org/git/?p=valgrind.git;a=commit;h=027b649fdb831868e71be01cafdacc49a5f419ab]
-Signed-off-by: Khem Raj <raj.khem@gmail.com>
----
- NEWS | 13 +++++++++++++
- coregrind/m_gdbserver/valgrind-monitor-def.py | 2 +-
- 2 files changed, 14 insertions(+), 1 deletion(-)
-
-diff --git a/NEWS b/NEWS
-index f11da4be8..ee5b4ff11 100644
---- a/NEWS
-+++ b/NEWS
-@@ -1,3 +1,16 @@
-+Branch 3.22
-+~~~~~~~~~~~
-+
-+* ==================== FIXED BUGS ====================
-+
-+The following bugs have been fixed or resolved on this branch.
-+
-+476708 valgrind-monitor.py regular expressions should use raw strings
-+
-+To see details of a given bug, visit
-+ https://bugs.kde.org/show_bug.cgi?id=XXXXXX
-+where XXXXXX is the bug number as listed above.
-+
- Release 3.22.0 (31 Oct 2023)
- ~~~~~~~~~~~~~~~~~~~~~~~~~~~~
-
-diff --git a/coregrind/m_gdbserver/valgrind-monitor-def.py b/coregrind/m_gdbserver/valgrind-monitor-def.py
-index b4e7b992d..d74b1590c 100644
---- a/coregrind/m_gdbserver/valgrind-monitor-def.py
-+++ b/coregrind/m_gdbserver/valgrind-monitor-def.py
-@@ -211,7 +211,7 @@ class Valgrind_ADDR_LEN_opt(Valgrind_Command):
- For compatibility reason with the Valgrind gdbserver monitor command,
- we detect and accept usages such as 0x1234ABCD[10]."""
- def invoke(self, arg_str : str, from_tty : bool) -> None:
-- if re.fullmatch("^0x[0123456789ABCDEFabcdef]+\[[^\[\]]+\]$", arg_str):
-+ if re.fullmatch(r"^0x[0123456789ABCDEFabcdef]+\[[^\[\]]+\]$", arg_str):
- arg_str = arg_str.replace("[", " ")
- arg_str = arg_str.replace("]", " ")
- eval_execute_2(self, arg_str,
---
-2.44.0
-
diff --git a/meta/recipes-devtools/valgrind/valgrind/0002-Bug-476548-valgrind-3.22.0-fails-on-assertion-when-l.patch b/meta/recipes-devtools/valgrind/valgrind/0002-Bug-476548-valgrind-3.22.0-fails-on-assertion-when-l.patch
deleted file mode 100644
index 5759fa039a..0000000000
--- a/meta/recipes-devtools/valgrind/valgrind/0002-Bug-476548-valgrind-3.22.0-fails-on-assertion-when-l.patch
+++ /dev/null
@@ -1,147 +0,0 @@
-From 1d00e5ce0fb069911c4b525ec38289fb5d9021b0 Mon Sep 17 00:00:00 2001
-From: Paul Floyd <pjfloyd@wanadoo.fr>
-Date: Sat, 18 Nov 2023 08:49:34 +0100
-Subject: [PATCH 2/4] Bug 476548 - valgrind 3.22.0 fails on assertion when
- loading debuginfo file produced by mold
-
-(cherry picked from commit 9ea4ae66707a4dcc6f4328e11911652e4418c585)
-
-Upstream-Status: Backport [https://sourceware.org/git/?p=valgrind.git;a=commit;h=1d00e5ce0fb069911c4b525ec38289fb5d9021b0]
-Signed-off-by: Khem Raj <raj.khem@gmail.com>
----
- NEWS | 2 ++
- coregrind/m_debuginfo/image.c | 14 +++++++++
- coregrind/m_debuginfo/priv_image.h | 4 +++
- coregrind/m_debuginfo/readelf.c | 49 ++++++++++++++++++++++++++++--
- 4 files changed, 66 insertions(+), 3 deletions(-)
-
-diff --git a/NEWS b/NEWS
-index ee5b4ff11..6cd13429a 100644
---- a/NEWS
-+++ b/NEWS
-@@ -5,6 +5,8 @@ Branch 3.22
-
- The following bugs have been fixed or resolved on this branch.
-
-+476548 valgrind 3.22.0 fails on assertion when loading debuginfo
-+ file produced by mold
- 476708 valgrind-monitor.py regular expressions should use raw strings
-
- To see details of a given bug, visit
-diff --git a/coregrind/m_debuginfo/image.c b/coregrind/m_debuginfo/image.c
-index 02e509071..445f95555 100644
---- a/coregrind/m_debuginfo/image.c
-+++ b/coregrind/m_debuginfo/image.c
-@@ -1221,6 +1221,20 @@ Int ML_(img_strcmp_c)(DiImage* img, DiOffT off1, const HChar* str2)
- }
- }
-
-+Int ML_(img_strcmp_n)(DiImage* img, DiOffT off1, const HChar* str2, Word n)
-+{
-+ ensure_valid(img, off1, 1, "ML_(img_strcmp_c)");
-+ while (n) {
-+ UChar c1 = get(img, off1);
-+ UChar c2 = *(const UChar*)str2;
-+ if (c1 < c2) return -1;
-+ if (c1 > c2) return 1;
-+ if (c1 == 0) return 0;
-+ off1++; str2++; --n;
-+ }
-+ return 0;
-+}
-+
- UChar ML_(img_get_UChar)(DiImage* img, DiOffT offset)
- {
- ensure_valid(img, offset, 1, "ML_(img_get_UChar)");
-diff --git a/coregrind/m_debuginfo/priv_image.h b/coregrind/m_debuginfo/priv_image.h
-index a49846f14..c91e49f01 100644
---- a/coregrind/m_debuginfo/priv_image.h
-+++ b/coregrind/m_debuginfo/priv_image.h
-@@ -115,6 +115,10 @@ Int ML_(img_strcmp)(DiImage* img, DiOffT off1, DiOffT off2);
- cast to HChar before comparison. */
- Int ML_(img_strcmp_c)(DiImage* img, DiOffT off1, const HChar* str2);
-
-+/* Do strncmp of a C string in the image vs a normal one. Chars are
-+ cast to HChar before comparison. */
-+Int ML_(img_strcmp_n)(DiImage* img, DiOffT off1, const HChar* str2, Word n);
-+
- /* Do strlen of a C string in the image. */
- SizeT ML_(img_strlen)(DiImage* img, DiOffT off);
-
-diff --git a/coregrind/m_debuginfo/readelf.c b/coregrind/m_debuginfo/readelf.c
-index fb64ed976..46f8c8343 100644
---- a/coregrind/m_debuginfo/readelf.c
-+++ b/coregrind/m_debuginfo/readelf.c
-@@ -2501,8 +2501,7 @@ Bool ML_(read_elf_object) ( struct _DebugInfo* di )
- di->rodata_avma += inrw1->bias;
- di->rodata_bias = inrw1->bias;
- di->rodata_debug_bias = inrw1->bias;
-- }
-- else {
-+ } else {
- BAD(".rodata"); /* should not happen? */
- }
- di->rodata_present = True;
-@@ -2977,6 +2976,46 @@ Bool ML_(read_elf_object) ( struct _DebugInfo* di )
- return retval;
- }
-
-+static void find_rodata(Word i, Word shnum, DiImage* dimg, struct _DebugInfo* di, DiOffT shdr_dioff,
-+ UWord shdr_dent_szB, DiOffT shdr_strtab_dioff, PtrdiffT rw_dbias)
-+{
-+ ElfXX_Shdr a_shdr;
-+ ElfXX_Shdr a_extra_shdr;
-+ ML_(img_get)(&a_shdr, dimg,
-+ INDEX_BIS(shdr_dioff, i, shdr_dent_szB),
-+ sizeof(a_shdr));
-+ if (di->rodata_present &&
-+ 0 == ML_(img_strcmp_c)(dimg, shdr_strtab_dioff
-+ + a_shdr.sh_name, ".rodata")) {
-+ Word sh_size = a_shdr.sh_size;
-+ Word j;
-+ Word next_addr = a_shdr.sh_addr + a_shdr.sh_size;
-+ for (j = i + 1; j < shnum; ++j) {
-+ ML_(img_get)(&a_extra_shdr, dimg,
-+ INDEX_BIS(shdr_dioff, j, shdr_dent_szB),
-+ sizeof(a_shdr));
-+ if (0 == ML_(img_strcmp_n)(dimg, shdr_strtab_dioff
-+ + a_extra_shdr.sh_name, ".rodata", 7)) {
-+ if (a_extra_shdr.sh_addr ==
-+ VG_ROUNDUP(next_addr, a_extra_shdr.sh_addralign)) {
-+ sh_size = VG_ROUNDUP(sh_size, a_extra_shdr.sh_addralign) + a_extra_shdr.sh_size;
-+ }
-+ next_addr = a_extra_shdr.sh_addr + a_extra_shdr.sh_size;
-+ } else {
-+ break;
-+ }
-+ }
-+ vg_assert(di->rodata_size == sh_size);
-+ vg_assert(di->rodata_avma + a_shdr.sh_addr + rw_dbias);
-+ di->rodata_debug_svma = a_shdr.sh_addr;
-+ di->rodata_debug_bias = di->rodata_bias +
-+ di->rodata_svma - di->rodata_debug_svma;
-+ TRACE_SYMTAB("acquiring .rodata debug svma = %#lx .. %#lx\n",
-+ di->rodata_debug_svma,
-+ di->rodata_debug_svma + di->rodata_size - 1);
-+ TRACE_SYMTAB("acquiring .rodata debug bias = %#lx\n", (UWord)di->rodata_debug_bias);
-+ }
-+}
- Bool ML_(read_elf_debug) ( struct _DebugInfo* di )
- {
- Word i, j;
-@@ -3391,7 +3430,11 @@ Bool ML_(read_elf_debug) ( struct _DebugInfo* di )
- FIND(text, rx)
- FIND(data, rw)
- FIND(sdata, rw)
-- FIND(rodata, rw)
-+ // https://bugs.kde.org/show_bug.cgi?id=476548
-+ // special handling for rodata as adjacent
-+ // rodata sections may have been merged in ML_(read_elf_object)
-+ //FIND(rodata, rw)
-+ find_rodata(i, ehdr_dimg.e_shnum, dimg, di, shdr_dioff, shdr_dent_szB, shdr_strtab_dioff, rw_dbias);
- FIND(bss, rw)
- FIND(sbss, rw)
-
---
-2.44.0
-
diff --git a/meta/recipes-devtools/valgrind/valgrind/0003-Add-fchmodat2-syscall-on-linux.patch b/meta/recipes-devtools/valgrind/valgrind/0003-Add-fchmodat2-syscall-on-linux.patch
deleted file mode 100644
index 2a09ca52b7..0000000000
--- a/meta/recipes-devtools/valgrind/valgrind/0003-Add-fchmodat2-syscall-on-linux.patch
+++ /dev/null
@@ -1,221 +0,0 @@
-From a43e62dddcf51ec6578a90c5988a41e856b44b05 Mon Sep 17 00:00:00 2001
-From: Mark Wielaard <mark@klomp.org>
-Date: Sat, 18 Nov 2023 21:17:02 +0100
-Subject: [PATCH 3/4] Add fchmodat2 syscall on linux
-
-fchmodat2 is a new syscall on linux 6.6. It is a variant of fchmodat
-that takes an extra flags argument.
-
-https://bugs.kde.org/show_bug.cgi?id=477198
-
-(cherry picked from commit 372d09fd9a8d76847c81092ebff71c80fd6c145d)
-
-Upstream-Status: Backport [https://sourceware.org/git/?p=valgrind.git;a=commit;h=a43e62dddcf51ec6578a90c5988a41e856b44b05]
-Signed-off-by: Khem Raj <raj.khem@gmail.com>
----
- NEWS | 1 +
- coregrind/m_syswrap/priv_syswrap-linux.h | 3 +++
- coregrind/m_syswrap/syswrap-amd64-linux.c | 2 ++
- coregrind/m_syswrap/syswrap-arm-linux.c | 2 ++
- coregrind/m_syswrap/syswrap-arm64-linux.c | 2 ++
- coregrind/m_syswrap/syswrap-linux.c | 11 +++++++++++
- coregrind/m_syswrap/syswrap-mips32-linux.c | 2 ++
- coregrind/m_syswrap/syswrap-mips64-linux.c | 1 +
- coregrind/m_syswrap/syswrap-nanomips-linux.c | 1 +
- coregrind/m_syswrap/syswrap-ppc32-linux.c | 2 ++
- coregrind/m_syswrap/syswrap-ppc64-linux.c | 2 ++
- coregrind/m_syswrap/syswrap-s390x-linux.c | 2 ++
- coregrind/m_syswrap/syswrap-x86-linux.c | 2 ++
- include/vki/vki-scnums-shared-linux.h | 2 ++
- 14 files changed, 35 insertions(+)
-
-diff --git a/NEWS b/NEWS
-index 6cd13429a..da0f8c1aa 100644
---- a/NEWS
-+++ b/NEWS
-@@ -8,6 +8,7 @@ The following bugs have been fixed or resolved on this branch.
- 476548 valgrind 3.22.0 fails on assertion when loading debuginfo
- file produced by mold
- 476708 valgrind-monitor.py regular expressions should use raw strings
-+477198 Add fchmodat2 syscall on linux
-
- To see details of a given bug, visit
- https://bugs.kde.org/show_bug.cgi?id=XXXXXX
-diff --git a/coregrind/m_syswrap/priv_syswrap-linux.h b/coregrind/m_syswrap/priv_syswrap-linux.h
-index 7c9decf5a..798c456c9 100644
---- a/coregrind/m_syswrap/priv_syswrap-linux.h
-+++ b/coregrind/m_syswrap/priv_syswrap-linux.h
-@@ -331,6 +331,9 @@ DECL_TEMPLATE(linux, sys_openat2);
- // Linux-specific (new in Linux 5.14)
- DECL_TEMPLATE(linux, sys_memfd_secret);
-
-+// Since Linux 6.6
-+DECL_TEMPLATE(linux, sys_fchmodat2);
-+
- /* ---------------------------------------------------------------------
- Wrappers for sockets and ipc-ery. These are split into standalone
- procedures because x86-linux hides them inside multiplexors
-diff --git a/coregrind/m_syswrap/syswrap-amd64-linux.c b/coregrind/m_syswrap/syswrap-amd64-linux.c
-index 008600798..fe17d118b 100644
---- a/coregrind/m_syswrap/syswrap-amd64-linux.c
-+++ b/coregrind/m_syswrap/syswrap-amd64-linux.c
-@@ -886,6 +886,8 @@ static SyscallTableEntry syscall_table[] = {
- LINXY(__NR_epoll_pwait2, sys_epoll_pwait2), // 441
-
- LINXY(__NR_memfd_secret, sys_memfd_secret), // 447
-+
-+ LINX_(__NR_fchmodat2, sys_fchmodat2), // 452
- };
-
- SyscallTableEntry* ML_(get_linux_syscall_entry) ( UInt sysno )
-diff --git a/coregrind/m_syswrap/syswrap-arm-linux.c b/coregrind/m_syswrap/syswrap-arm-linux.c
-index 9a7a1e0d2..811931d3b 100644
---- a/coregrind/m_syswrap/syswrap-arm-linux.c
-+++ b/coregrind/m_syswrap/syswrap-arm-linux.c
-@@ -1059,6 +1059,8 @@ static SyscallTableEntry syscall_main_table[] = {
- LINX_(__NR_faccessat2, sys_faccessat2), // 439
-
- LINXY(__NR_epoll_pwait2, sys_epoll_pwait2), // 441
-+
-+ LINX_(__NR_fchmodat2, sys_fchmodat2), // 452
- };
-
-
-diff --git a/coregrind/m_syswrap/syswrap-arm64-linux.c b/coregrind/m_syswrap/syswrap-arm64-linux.c
-index 6af7bab83..3307bc2ca 100644
---- a/coregrind/m_syswrap/syswrap-arm64-linux.c
-+++ b/coregrind/m_syswrap/syswrap-arm64-linux.c
-@@ -840,6 +840,8 @@ static SyscallTableEntry syscall_main_table[] = {
- LINXY(__NR_epoll_pwait2, sys_epoll_pwait2), // 441
-
- LINXY(__NR_memfd_secret, sys_memfd_secret), // 447
-+
-+ LINX_(__NR_fchmodat2, sys_fchmodat2), // 452
- };
-
-
-diff --git a/coregrind/m_syswrap/syswrap-linux.c b/coregrind/m_syswrap/syswrap-linux.c
-index d571fc327..efa47f2e6 100644
---- a/coregrind/m_syswrap/syswrap-linux.c
-+++ b/coregrind/m_syswrap/syswrap-linux.c
-@@ -6059,6 +6059,17 @@ PRE(sys_fchmodat)
- PRE_MEM_RASCIIZ( "fchmodat(path)", ARG2 );
- }
-
-+PRE(sys_fchmodat2)
-+{
-+ PRINT("sys_fchmodat2 ( %ld, %#" FMT_REGWORD "x(%s), %" FMT_REGWORD "u, %"
-+ FMT_REGWORD "u )",
-+ SARG1, ARG2, (HChar*)(Addr)ARG2, ARG3, ARG4);
-+ PRE_REG_READ4(long, "fchmodat2",
-+ int, dfd, const char *, path, vki_mode_t, mode,
-+ unsigned int, flags);
-+ PRE_MEM_RASCIIZ( "fchmodat2(pathname)", ARG2 );
-+}
-+
- PRE(sys_faccessat)
- {
- PRINT("sys_faccessat ( %ld, %#" FMT_REGWORD "x(%s), %ld )",
-diff --git a/coregrind/m_syswrap/syswrap-mips32-linux.c b/coregrind/m_syswrap/syswrap-mips32-linux.c
-index 6268a00dd..74a1f6eac 100644
---- a/coregrind/m_syswrap/syswrap-mips32-linux.c
-+++ b/coregrind/m_syswrap/syswrap-mips32-linux.c
-@@ -1143,6 +1143,8 @@ static SyscallTableEntry syscall_main_table[] = {
- LINX_ (__NR_faccessat2, sys_faccessat2), // 439
-
- LINXY(__NR_epoll_pwait2, sys_epoll_pwait2), // 441
-+
-+ LINX_(__NR_fchmodat2, sys_fchmodat2), // 452
- };
-
- SyscallTableEntry* ML_(get_linux_syscall_entry) (UInt sysno)
-diff --git a/coregrind/m_syswrap/syswrap-mips64-linux.c b/coregrind/m_syswrap/syswrap-mips64-linux.c
-index 6cdf25893..4e8508b7a 100644
---- a/coregrind/m_syswrap/syswrap-mips64-linux.c
-+++ b/coregrind/m_syswrap/syswrap-mips64-linux.c
-@@ -820,6 +820,7 @@ static SyscallTableEntry syscall_main_table[] = {
- LINXY (__NR_close_range, sys_close_range),
- LINX_ (__NR_faccessat2, sys_faccessat2),
- LINXY(__NR_epoll_pwait2, sys_epoll_pwait2),
-+ LINX_ (__NR_fchmodat2, sys_fchmodat2),
- };
-
- SyscallTableEntry * ML_(get_linux_syscall_entry) ( UInt sysno )
-diff --git a/coregrind/m_syswrap/syswrap-nanomips-linux.c b/coregrind/m_syswrap/syswrap-nanomips-linux.c
-index d724cde74..7859900c1 100644
---- a/coregrind/m_syswrap/syswrap-nanomips-linux.c
-+++ b/coregrind/m_syswrap/syswrap-nanomips-linux.c
-@@ -829,6 +829,7 @@ static SyscallTableEntry syscall_main_table[] = {
- LINXY (__NR_close_range, sys_close_range),
- LINX_ (__NR_faccessat2, sys_faccessat2),
- LINXY (__NR_epoll_pwait2, sys_epoll_pwait2),
-+ LINX_ (__NR_fchmodat2, sys_fchmodat2),
- };
-
- SyscallTableEntry* ML_(get_linux_syscall_entry) (UInt sysno)
-diff --git a/coregrind/m_syswrap/syswrap-ppc32-linux.c b/coregrind/m_syswrap/syswrap-ppc32-linux.c
-index c0cfef235..1e19116ee 100644
---- a/coregrind/m_syswrap/syswrap-ppc32-linux.c
-+++ b/coregrind/m_syswrap/syswrap-ppc32-linux.c
-@@ -1063,6 +1063,8 @@ static SyscallTableEntry syscall_table[] = {
- LINX_(__NR_faccessat2, sys_faccessat2), // 439
-
- LINXY (__NR_epoll_pwait2, sys_epoll_pwait2), // 441
-+
-+ LINX_ (__NR_fchmodat2, sys_fchmodat2), // 452
- };
-
- SyscallTableEntry* ML_(get_linux_syscall_entry) ( UInt sysno )
-diff --git a/coregrind/m_syswrap/syswrap-ppc64-linux.c b/coregrind/m_syswrap/syswrap-ppc64-linux.c
-index f5976f30c..1097212a4 100644
---- a/coregrind/m_syswrap/syswrap-ppc64-linux.c
-+++ b/coregrind/m_syswrap/syswrap-ppc64-linux.c
-@@ -1032,6 +1032,8 @@ static SyscallTableEntry syscall_table[] = {
- LINX_(__NR_faccessat2, sys_faccessat2), // 439
-
- LINXY (__NR_epoll_pwait2, sys_epoll_pwait2), // 441
-+
-+ LINX_ (__NR_fchmodat2, sys_fchmodat2), // 452
- };
-
- SyscallTableEntry* ML_(get_linux_syscall_entry) ( UInt sysno )
-diff --git a/coregrind/m_syswrap/syswrap-s390x-linux.c b/coregrind/m_syswrap/syswrap-s390x-linux.c
-index afba154e7..3588672c7 100644
---- a/coregrind/m_syswrap/syswrap-s390x-linux.c
-+++ b/coregrind/m_syswrap/syswrap-s390x-linux.c
-@@ -873,6 +873,8 @@ static SyscallTableEntry syscall_table[] = {
- LINX_(__NR_faccessat2, sys_faccessat2), // 439
-
- LINXY(__NR_epoll_pwait2, sys_epoll_pwait2), // 441
-+
-+ LINX_ (__NR_fchmodat2, sys_fchmodat2), // 452
- };
-
- SyscallTableEntry* ML_(get_linux_syscall_entry) ( UInt sysno )
-diff --git a/coregrind/m_syswrap/syswrap-x86-linux.c b/coregrind/m_syswrap/syswrap-x86-linux.c
-index da4fd8fa2..58badc6b0 100644
---- a/coregrind/m_syswrap/syswrap-x86-linux.c
-+++ b/coregrind/m_syswrap/syswrap-x86-linux.c
-@@ -1658,6 +1658,8 @@ static SyscallTableEntry syscall_table[] = {
- LINXY(__NR_epoll_pwait2, sys_epoll_pwait2), // 441
-
- LINXY(__NR_memfd_secret, sys_memfd_secret), // 447
-+
-+ LINX_(__NR_fchmodat2, sys_fchmodat2), // 452
- };
-
- SyscallTableEntry* ML_(get_linux_syscall_entry) ( UInt sysno )
-diff --git a/include/vki/vki-scnums-shared-linux.h b/include/vki/vki-scnums-shared-linux.h
-index 542382b53..a4cd87149 100644
---- a/include/vki/vki-scnums-shared-linux.h
-+++ b/include/vki/vki-scnums-shared-linux.h
-@@ -50,4 +50,6 @@
-
- #define __NR_memfd_secret 447
-
-+#define __NR_fchmodat2 452
-+
- #endif
---
-2.44.0
-
diff --git a/meta/recipes-devtools/valgrind/valgrind/0004-Bug-478624-Valgrind-incompatibility-with-binutils-2..patch b/meta/recipes-devtools/valgrind/valgrind/0004-Bug-478624-Valgrind-incompatibility-with-binutils-2..patch
deleted file mode 100644
index 4e9185508a..0000000000
--- a/meta/recipes-devtools/valgrind/valgrind/0004-Bug-478624-Valgrind-incompatibility-with-binutils-2..patch
+++ /dev/null
@@ -1,137 +0,0 @@
-From 41ff9aa49f6c54c66d0e6b37f265fd9cb0176057 Mon Sep 17 00:00:00 2001
-From: Paul Floyd <pjfloyd@wanadoo.fr>
-Date: Sun, 17 Dec 2023 14:18:51 +0100
-Subject: [PATCH 4/4] Bug 478624 - Valgrind incompatibility with binutils-2.42
- on x86 with new nop patterns (unhandled instruction bytes: 0x2E 0x8D 0xB4
- 0x26)
-
-It was a bit of a struggle to get the testcase to build
-with both clang and gcc (oddly enough gcc was more difficult) so
-I just resorted to using .byte arrays.
-
-(cherry picked from commit d35005cef8ad8207542738812705ceabf137d7e0)
-
-Upstream-Status: Backport [https://sourceware.org/git/?p=valgrind.git;a=commit;h=41ff9aa49f6c54c66d0e6b37f265fd9cb0176057]
-Signed-off-by: Khem Raj <raj.khem@gmail.com>
----
- .gitignore | 1 +
- NEWS | 2 ++
- VEX/priv/guest_x86_toIR.c | 22 +++++++++++++-
- none/tests/x86/Makefile.am | 2 ++
- none/tests/x86/gnu_binutils_nop.c | 34 ++++++++++++++++++++++
- none/tests/x86/gnu_binutils_nop.stderr.exp | 0
- none/tests/x86/gnu_binutils_nop.vgtest | 2 ++
- 7 files changed, 62 insertions(+), 1 deletion(-)
- create mode 100644 none/tests/x86/gnu_binutils_nop.c
- create mode 100644 none/tests/x86/gnu_binutils_nop.stderr.exp
- create mode 100644 none/tests/x86/gnu_binutils_nop.vgtest
-
---- a/NEWS
-+++ b/NEWS
-@@ -9,6 +9,8 @@ The following bugs have been fixed or re
- file produced by mold
- 476708 valgrind-monitor.py regular expressions should use raw strings
- 477198 Add fchmodat2 syscall on linux
-+478624 Valgrind incompatibility with binutils-2.42 on x86 with new nop patterns
-+ (unhandled instruction bytes: 0x2E 0x8D 0xB4 0x26)
-
- To see details of a given bug, visit
- https://bugs.kde.org/show_bug.cgi?id=XXXXXX
---- a/VEX/priv/guest_x86_toIR.c
-+++ b/VEX/priv/guest_x86_toIR.c
-@@ -8198,7 +8198,7 @@ DisResult disInstr_X86_WRK (
- delta += 5;
- goto decode_success;
- }
-- /* Don't barf on recent binutils padding,
-+ /* Don't barf on recent (2010) binutils padding,
- all variants of which are: nopw %cs:0x0(%eax,%eax,1)
- 66 2e 0f 1f 84 00 00 00 00 00
- 66 66 2e 0f 1f 84 00 00 00 00 00
-@@ -8222,6 +8222,26 @@ DisResult disInstr_X86_WRK (
- goto decode_success;
- }
- }
-+
-+ /* bug478624 GNU binutils uses a leal of esi into itself with
-+ a zero offset and CS prefix as an 8 byte no-op (Dec 2023).
-+ Since the CS prefix is hardly ever used we don't do much
-+ to decode it, just a few cases for conditional branches.
-+ So add handling here with other pseudo-no-ops.
-+ */
-+ if (code[0] == 0x2E && code[1] == 0x8D) {
-+ if (code[2] == 0x74 && code[3] == 0x26 && code[4] == 0x00) {
-+ DIP("leal %%cs:0(%%esi,%%eiz,1),%%esi\n");
-+ delta += 5;
-+ goto decode_success;
-+ }
-+ if (code[2] == 0xB4 && code[3] == 0x26 && code[4] == 0x00
-+ && code[5] == 0x00 && code[6] == 0x00 && code[7] == 0x00) {
-+ DIP("leal %%cs:0(%%esi,%%eiz,1),%%esi\n");
-+ delta += 8;
-+ goto decode_success;
-+ }
-+ }
-
- // Intel CET requires the following opcodes to be treated as NOPs
- // with any prefix and ModRM, SIB and disp combination:
---- a/none/tests/x86/Makefile.am
-+++ b/none/tests/x86/Makefile.am
-@@ -52,6 +52,7 @@ EXTRA_DIST = \
- fxtract.stdout.exp fxtract.stderr.exp fxtract.vgtest \
- fxtract.stdout.exp-older-glibc \
- getseg.stdout.exp getseg.stderr.exp getseg.vgtest \
-+ gnu_binutils_nop.stderr.exp gnu_binutils_nop.vgtest \
- incdec_alt.stdout.exp incdec_alt.stderr.exp incdec_alt.vgtest \
- int.stderr.exp int.stdout.exp int.disabled \
- $(addsuffix .stderr.exp,$(INSN_TESTS)) \
-@@ -100,6 +101,7 @@ check_PROGRAMS = \
- fpu_lazy_eflags \
- fxtract \
- getseg \
-+ gnu_binutils_nop \
- incdec_alt \
- $(INSN_TESTS) \
- int \
---- /dev/null
-+++ b/none/tests/x86/gnu_binutils_nop.c
-@@ -0,0 +1,34 @@
-+int main(void)
-+{
-+ // GNU binutils uses various opcodes as alternatives for nop
-+ // the idea is that it is faster to execute one large opcode
-+ // with no side-effects than multiple repetitions of the
-+ // single byte 'nop'. This gives more choice when code
-+ // needs to be padded.
-+
-+ // the following is based on
-+ // https://sourceware.org/cgit/binutils-gdb/tree/gas/config/tc-i386.c#n1256
-+
-+ // one byte
-+ __asm__ __volatile__("nop");
-+ // two bytes
-+ __asm__ __volatile__("xchg %ax,%ax");
-+ // three bytes
-+ //__asm__ __volatile__("leal 0(%esi),%esi");
-+ __asm__ __volatile__(".byte 0x8d,0x76,0x00");
-+ // four bytes
-+ //__asm__ __volatile__("leal 0(%esi,%eiz),%esi");
-+ __asm__ __volatile__(".byte 0x8d,0x74,0x26,0x00");
-+ // five bytes
-+ //__asm__ __volatile__("leal %cs:0(%esi,%eiz),%esi");
-+ __asm__ __volatile__(".byte 0x2e,0x8d,0x74,0x26,0x00");
-+ // six bytes
-+ //__asm__ __volatile__("leal 0L(%esi),%esi");
-+ __asm__ __volatile__(".byte 0x8d,0xb6,0x00,0x00,0x00,0x00");
-+ // seven bytes
-+ //__asm__ __volatile__("leal 0L(%esi,%eiz),%esi");
-+ __asm__ __volatile__(".byte 0x8d,0xb4,0x26,0x00,0x00,0x00,0x00");
-+ // eight bytes
-+ //__asm__ __volatile__("leal %cs:0L(%esi,%eiz),%esi");
-+ __asm__ __volatile__(".byte 0x2e,0x8d,0xb4,0x26,0x00,0x00,0x00,0x00");
-+}
---- /dev/null
-+++ b/none/tests/x86/gnu_binutils_nop.vgtest
-@@ -0,0 +1,2 @@
-+prog: gnu_binutils_nop
-+vgopts: -q
diff --git a/meta/recipes-devtools/valgrind/valgrind/Added-support-for-PPC-instructions-mfatbu-mfatbl.patch b/meta/recipes-devtools/valgrind/valgrind/Added-support-for-PPC-instructions-mfatbu-mfatbl.patch
index 51cd3532d3..65de427d36 100644
--- a/meta/recipes-devtools/valgrind/valgrind/Added-support-for-PPC-instructions-mfatbu-mfatbl.patch
+++ b/meta/recipes-devtools/valgrind/valgrind/Added-support-for-PPC-instructions-mfatbu-mfatbl.patch
@@ -17,11 +17,9 @@ Signed-off-by: Aneesh Bansal <aneesh.bansal@freescale.com>
VEX/priv/guest_ppc_toIR.c | 22 ++++++++++++++++++++++
3 files changed, 42 insertions(+), 0 deletions(-)
-diff --git a/VEX/priv/guest_ppc_defs.h b/VEX/priv/guest_ppc_defs.h
-index dd3c62e..11a34aa 100644
--- a/VEX/priv/guest_ppc_defs.h
+++ b/VEX/priv/guest_ppc_defs.h
-@@ -146,6 +146,8 @@ extern UInt ppc32g_dirtyhelper_MFSPR_268_269 ( UInt );
+@@ -233,6 +233,8 @@ extern UInt ppc32g_dirtyhelper_MFSPR_268
extern UInt ppc32g_dirtyhelper_MFSPR_287 ( void );
@@ -30,11 +28,9 @@ index dd3c62e..11a34aa 100644
extern void ppc32g_dirtyhelper_LVS ( VexGuestPPC32State* gst,
UInt vD_idx, UInt sh,
UInt shift_right );
-diff --git a/VEX/priv/guest_ppc_helpers.c b/VEX/priv/guest_ppc_helpers.c
-index 11aa428..b49ea3f 100644
--- a/VEX/priv/guest_ppc_helpers.c
+++ b/VEX/priv/guest_ppc_helpers.c
-@@ -119,6 +119,24 @@ UInt ppc32g_dirtyhelper_MFSPR_287 ( void )
+@@ -118,6 +118,24 @@ UInt ppc32g_dirtyhelper_MFSPR_287 ( void
# endif
}
@@ -59,11 +55,9 @@ index 11aa428..b49ea3f 100644
/* CALLED FROM GENERATED CODE */
/* DIRTY HELPER (reads guest state, writes guest mem) */
-diff --git a/VEX/priv/guest_ppc_toIR.c b/VEX/priv/guest_ppc_toIR.c
-index f8d220d..37c8974 100644
--- a/VEX/priv/guest_ppc_toIR.c
+++ b/VEX/priv/guest_ppc_toIR.c
-@@ -5657,6 +5657,28 @@ static Bool dis_proc_ctl ( VexAbiInfo* vbi, UInt theInstr )
+@@ -11875,6 +11875,28 @@ static Bool dis_proc_ctl ( const VexAbiI
break;
}
@@ -92,5 +86,3 @@ index f8d220d..37c8974 100644
default:
vex_printf("dis_proc_ctl(ppc)(mfspr,SPR)(0x%x)\n", SPR);
return False;
---
-1.7.0.4
diff --git a/meta/recipes-devtools/valgrind/valgrind/s390x_vec_op_t.patch b/meta/recipes-devtools/valgrind/valgrind/s390x_vec_op_t.patch
index bde1241dc7..3ab339d215 100644
--- a/meta/recipes-devtools/valgrind/valgrind/s390x_vec_op_t.patch
+++ b/meta/recipes-devtools/valgrind/valgrind/s390x_vec_op_t.patch
@@ -17,19 +17,14 @@ Signed-off-by: Yi Fan Yu <yifan.yu@windriver.com>
VEX/priv/guest_s390_defs.h | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
-diff --git a/VEX/priv/guest_s390_defs.h b/VEX/priv/guest_s390_defs.h
-index 9054290..dab8002 100644
--- a/VEX/priv/guest_s390_defs.h
+++ b/VEX/priv/guest_s390_defs.h
@@ -284,7 +284,7 @@ typedef enum {
- S390_VEC_OP_VBPERM,
- S390_VEC_OP_VMSL,
+ S390_VEC_OP_VCLFNL,
+ S390_VEC_OP_VCRNF,
S390_VEC_OP_LAST // supposed to be the last element in enum
-} s390x_vec_op_t;
+};
/* Arguments of s390x_dirtyhelper_vec_op(...) which are packed into one
ULong variable.
---
-2.29.2
-
diff --git a/meta/recipes-devtools/valgrind/valgrind/use-appropriate-march-mcpu-mfpu-for-ARM-test-apps.patch b/meta/recipes-devtools/valgrind/valgrind/use-appropriate-march-mcpu-mfpu-for-ARM-test-apps.patch
index f15d04b173..afca874d02 100644
--- a/meta/recipes-devtools/valgrind/valgrind/use-appropriate-march-mcpu-mfpu-for-ARM-test-apps.patch
+++ b/meta/recipes-devtools/valgrind/valgrind/use-appropriate-march-mcpu-mfpu-for-ARM-test-apps.patch
@@ -22,11 +22,9 @@ Signed-off-by: Andre McCurdy <armccurdy@gmail.com>
none/tests/arm/Makefile.am | 6 ++++--
1 file changed, 4 insertions(+), 2 deletions(-)
-diff --git a/none/tests/arm/Makefile.am b/none/tests/arm/Makefile.am
-index 4507a20..825290f 100644
--- a/none/tests/arm/Makefile.am
+++ b/none/tests/arm/Makefile.am
-@@ -62,8 +62,10 @@ neon64_CFLAGS = $(AM_CFLAGS) -g -O0 -mcpu=cortex-a8 \
+@@ -87,8 +87,10 @@ neon64_CFLAGS = $(AM_CFLAGS) -g -O0
-mfpu=neon \
-mthumb
@@ -39,6 +37,3 @@ index 4507a20..825290f 100644
+vcvt_fixed_float_VFP_CFLAGS = $(AM_CFLAGS) -g -mcpu=cortex-a8 -mfpu=vfpv3
+
+vfpv4_fma_CFLAGS = $(AM_CFLAGS) -g -O0 -march=armv7ve -mcpu=cortex-a15 -mfpu=vfpv4 -marm
---
-1.9.1
-
diff --git a/meta/recipes-devtools/valgrind/valgrind/valgrind-make-ld-XXX.so-strlen-intercept-optional.patch b/meta/recipes-devtools/valgrind/valgrind/valgrind-make-ld-XXX.so-strlen-intercept-optional.patch
index d04297dca8..0895473fc0 100644
--- a/meta/recipes-devtools/valgrind/valgrind/valgrind-make-ld-XXX.so-strlen-intercept-optional.patch
+++ b/meta/recipes-devtools/valgrind/valgrind/valgrind-make-ld-XXX.so-strlen-intercept-optional.patch
@@ -16,11 +16,9 @@ Signed-off-by: Jackie Huang <jackie.huang@windriver.com>
coregrind/m_redir.c | 13 ++++++++++++-
1 file changed, 12 insertions(+), 1 deletion(-)
-diff --git a/coregrind/m_redir.c b/coregrind/m_redir.c
-index ff35009..d7d6816 100644
--- a/coregrind/m_redir.c
+++ b/coregrind/m_redir.c
-@@ -1275,7 +1275,18 @@ static void add_hardwired_spec (const HChar* sopatt, const HChar* fnpatt,
+@@ -1307,7 +1307,18 @@ static void add_hardwired_spec (const H
spec->to_addr = to_addr;
spec->isWrap = False;
spec->isGlobal = False;
@@ -40,6 +38,3 @@ index ff35009..d7d6816 100644
/* VARIABLE PARTS */
spec->mark = False; /* not significant */
spec->done = False; /* not significant */
---
-1.9.1
-
diff --git a/meta/recipes-devtools/valgrind/valgrind_3.22.0.bb b/meta/recipes-devtools/valgrind/valgrind_3.23.0.bb
index 563d99f0e2..ad9e26cb6b 100644
--- a/meta/recipes-devtools/valgrind/valgrind_3.22.0.bb
+++ b/meta/recipes-devtools/valgrind/valgrind_3.23.0.bb
@@ -22,6 +22,7 @@ SRC_URI = "https://sourceware.org/pub/valgrind/valgrind-${PV}.tar.bz2 \
file://0005-Modify-vg_test-wrapper-to-support-PTEST-formats.patch \
file://use-appropriate-march-mcpu-mfpu-for-ARM-test-apps.patch \
file://avoid-neon-for-targets-which-don-t-support-it.patch \
+ file://0001-configure-Drop-setting-mcpu-cortex-a8-on-arm.patch \
file://valgrind-make-ld-XXX.so-strlen-intercept-optional.patch \
file://0001-makefiles-Drop-setting-mcpu-to-cortex-a8-on-arm-arch.patch \
file://0001-sigqueue-Rename-_sifields-to-__si_fields-on-musl.patch \
@@ -33,12 +34,9 @@ SRC_URI = "https://sourceware.org/pub/valgrind/valgrind-${PV}.tar.bz2 \
file://0001-none-tests-fdleak_cmsg.stderr.exp-adjust-tmp-paths.patch \
file://0001-memcheck-tests-Fix-timerfd-syscall-test.patch \
file://0001-docs-Disable-manual-validation.patch \
- file://0001-valgrind-monitor.py-regular-expressions-should-use-r.patch \
- file://0002-Bug-476548-valgrind-3.22.0-fails-on-assertion-when-l.patch \
- file://0003-Add-fchmodat2-syscall-on-linux.patch \
- file://0004-Bug-478624-Valgrind-incompatibility-with-binutils-2..patch \
+ file://0001-tests-arm-Use-O-instead-of-O0.patch \
"
-SRC_URI[sha256sum] = "c811db5add2c5f729944caf47c4e7a65dcaabb9461e472b578765dd7bf6d2d4c"
+SRC_URI[sha256sum] = "c5c34a3380457b9b75606df890102e7df2c702b9420c2ebef9540f8b5d56264d"
UPSTREAM_CHECK_REGEX = "valgrind-(?P<pver>\d+(\.\d+)+)\.tar"
COMPATIBLE_HOST = '(i.86|x86_64|arm|aarch64|mips|powerpc|powerpc64).*-linux'
@@ -196,9 +194,9 @@ do_install_ptest() {
# The scripts reference config.h so add it to the top ptest dir.
cp ${B}/config.h ${D}${PTEST_PATH}
- install -D ${WORKDIR}/remove-for-aarch64 ${D}${PTEST_PATH}
- install -D ${WORKDIR}/remove-for-all ${D}${PTEST_PATH}
- install -D ${WORKDIR}/taskset_nondeterministic_tests ${D}${PTEST_PATH}
+ install -D ${UNPACKDIR}/remove-for-aarch64 ${D}${PTEST_PATH}
+ install -D ${UNPACKDIR}/remove-for-all ${D}${PTEST_PATH}
+ install -D ${UNPACKDIR}/taskset_nondeterministic_tests ${D}${PTEST_PATH}
# Add an executable need by none/tests/bigcode
mkdir ${D}${PTEST_PATH}/perf
diff --git a/meta/recipes-extended/at/at_3.2.5.bb b/meta/recipes-extended/at/at_3.2.5.bb
index c0c876a644..112d1c4adc 100644
--- a/meta/recipes-extended/at/at_3.2.5.bb
+++ b/meta/recipes-extended/at/at_3.2.5.bb
@@ -55,22 +55,22 @@ SYSTEMD_SERVICE:${PN} = "atd.service"
do_patch[postfuncs] += "copy_posix_files"
copy_posix_files() {
- cp -f ${WORKDIR}/posixtm.[ch] ${S}
+ cp -f ${UNPACKDIR}/posixtm.[ch] ${S}
}
do_install () {
oe_runmake -e "IROOT=${D}" install
install -d ${D}${sysconfdir}/init.d
- install -m 0755 ${WORKDIR}/atd.init ${D}${sysconfdir}/init.d/atd
+ install -m 0755 ${UNPACKDIR}/atd.init ${D}${sysconfdir}/init.d/atd
# install systemd unit files
install -d ${D}${systemd_system_unitdir}
- install -m 0644 ${WORKDIR}/atd.service ${D}${systemd_system_unitdir}
+ install -m 0644 ${UNPACKDIR}/atd.service ${D}${systemd_system_unitdir}
sed -i -e 's,@SBINDIR@,${sbindir},g' ${D}${systemd_system_unitdir}/atd.service
if [ "${@bb.utils.filter('DISTRO_FEATURES', 'pam', d)}" ]; then
- install -D -m 0644 ${WORKDIR}/${BP}/pam.conf ${D}${sysconfdir}/pam.d/atd
+ install -D -m 0644 ${S}/pam.conf ${D}${sysconfdir}/pam.d/atd
fi
rm -f ${D}${datadir}/at/batch-job
}
diff --git a/meta/recipes-extended/bash/bash.inc b/meta/recipes-extended/bash/bash.inc
index e541161c75..66058feff3 100644
--- a/meta/recipes-extended/bash/bash.inc
+++ b/meta/recipes-extended/bash/bash.inc
@@ -108,7 +108,7 @@ do_install_ptest () {
cp ${B}/config.h ${D}${PTEST_PATH}
cp ${B}/version.h ${D}${PTEST_PATH}
cp ${S}/y.tab.[ch] ${D}${PTEST_PATH}
- install -D ${WORKDIR}/run-bash-ptests ${D}${PTEST_PATH}/run-bash-ptests
+ install -D ${UNPACKDIR}/run-bash-ptests ${D}${PTEST_PATH}/run-bash-ptests
sed -i -e 's/^Makefile/_Makefile/' -e "s,--sysroot=${STAGING_DIR_TARGET},,g" \
-e 's|${DEBUG_PREFIX_MAP}||g' \
-e 's|${BUILD_LDFLAGS}||g' \
diff --git a/meta/recipes-extended/bc/bc_1.07.1.bb b/meta/recipes-extended/bc/bc_1.07.1.bb
index 819da6cda6..74387c50ab 100644
--- a/meta/recipes-extended/bc/bc_1.07.1.bb
+++ b/meta/recipes-extended/bc/bc_1.07.1.bb
@@ -27,7 +27,7 @@ PACKAGECONFIG[readline] = "--with-readline,--without-readline,readline"
PACKAGECONFIG[libedit] = "--with-libedit,--without-libedit,libedit"
do_compile:prepend() {
- cp -f ${WORKDIR}/libmath.h ${B}/bc/libmath.h
+ cp -f ${UNPACKDIR}/libmath.h ${B}/bc/libmath.h
}
do_install_ptest() {
diff --git a/meta/recipes-extended/bzip2/bzip2_1.0.8.bb b/meta/recipes-extended/bzip2/bzip2_1.0.8.bb
index 4e3a06f240..7d7ab3856b 100644
--- a/meta/recipes-extended/bzip2/bzip2_1.0.8.bb
+++ b/meta/recipes-extended/bzip2/bzip2_1.0.8.bb
@@ -14,11 +14,11 @@ LICENSE:libbz2 = "bzip2-1.0.6"
LICENSE:${PN}-ptest = "bzip2-1.0.6 & GPL-3.0-or-later & Apache-2.0 & MS-PL & BSD-3-Clause & Zlib"
LIC_FILES_CHKSUM = "file://LICENSE;beginline=4;endline=37;md5=600af43c50f1fcb82e32f19b32df4664 \
- file://${WORKDIR}/git/commons-compress/LICENSE.txt;md5=86d3f3a95c324c9479bd8986968f4327 \
- file://${WORKDIR}/git/dotnetzip/License.txt;md5=9cb56871eed4e748c3bc7e8ff352a54f \
- file://${WORKDIR}/git/dotnetzip/License.zlib.txt;md5=cc421ccd22eeb2e5db6b79e6de0a029f \
- file://${WORKDIR}/git/go/LICENSE;md5=5d4950ecb7b26d2c5e4e7b4e0dd74707 \
- file://${WORKDIR}/git/lbzip2/COPYING;md5=d32239bcb673463ab874e80d47fae504 \
+ file://${UNPACKDIR}/git/commons-compress/LICENSE.txt;md5=86d3f3a95c324c9479bd8986968f4327 \
+ file://${UNPACKDIR}/git/dotnetzip/License.txt;md5=9cb56871eed4e748c3bc7e8ff352a54f \
+ file://${UNPACKDIR}/git/dotnetzip/License.zlib.txt;md5=cc421ccd22eeb2e5db6b79e6de0a029f \
+ file://${UNPACKDIR}/git/go/LICENSE;md5=5d4950ecb7b26d2c5e4e7b4e0dd74707 \
+ file://${UNPACKDIR}/git/lbzip2/COPYING;md5=d32239bcb673463ab874e80d47fae504 \
"
SRC_URI = "https://sourceware.org/pub/${BPN}/${BPN}-${PV}.tar.gz \
@@ -52,13 +52,13 @@ do_configure:prepend () {
do_install_ptest () {
install -d ${D}${PTEST_PATH}/bzip2-tests
- cp -r ${WORKDIR}/git/commons-compress ${D}${PTEST_PATH}/bzip2-tests/commons-compress
- cp -r ${WORKDIR}/git/dotnetzip ${D}${PTEST_PATH}/bzip2-tests/dotnetzip
- cp -r ${WORKDIR}/git/go ${D}${PTEST_PATH}/bzip2-tests/go
- cp -r ${WORKDIR}/git/lbzip2 ${D}${PTEST_PATH}/bzip2-tests/lbzip2
- cp -r ${WORKDIR}/git/pyflate ${D}${PTEST_PATH}/bzip2-tests/pyflate
- cp ${WORKDIR}/git/README ${D}${PTEST_PATH}/bzip2-tests/
- cp ${WORKDIR}/git/run-tests.sh ${D}${PTEST_PATH}/bzip2-tests/
+ cp -r ${UNPACKDIR}/git/commons-compress ${D}${PTEST_PATH}/bzip2-tests/commons-compress
+ cp -r ${UNPACKDIR}/git/dotnetzip ${D}${PTEST_PATH}/bzip2-tests/dotnetzip
+ cp -r ${UNPACKDIR}/git/go ${D}${PTEST_PATH}/bzip2-tests/go
+ cp -r ${UNPACKDIR}/git/lbzip2 ${D}${PTEST_PATH}/bzip2-tests/lbzip2
+ cp -r ${UNPACKDIR}/git/pyflate ${D}${PTEST_PATH}/bzip2-tests/pyflate
+ cp ${UNPACKDIR}/git/README ${D}${PTEST_PATH}/bzip2-tests/
+ cp ${UNPACKDIR}/git/run-tests.sh ${D}${PTEST_PATH}/bzip2-tests/
sed -i -e "s|^Makefile:|_Makefile:|" ${D}${PTEST_PATH}/Makefile
}
diff --git a/meta/recipes-extended/cpio/cpio_2.15.bb b/meta/recipes-extended/cpio/cpio_2.15.bb
index 52070f59a2..bfaf5c31c3 100644
--- a/meta/recipes-extended/cpio/cpio_2.15.bb
+++ b/meta/recipes-extended/cpio/cpio_2.15.bb
@@ -16,6 +16,7 @@ SRC_URI[sha256sum] = "efa50ef983137eefc0a02fdb51509d624b5e3295c980aa127ceee41834
inherit autotools gettext texinfo ptest
CVE_STATUS[CVE-2010-4226] = "not-applicable-platform: Issue applies to use of cpio in SUSE/OBS"
+CVE_STATUS[CVE-2023-7216] = "disputed: intended behaviour, see https://lists.gnu.org/archive/html/bug-cpio/2024-03/msg00000.html"
EXTRA_OECONF += "DEFAULT_RMT_DIR=${sbindir}"
@@ -50,7 +51,7 @@ do_install_ptest() {
install --mode=755 ${B}/tests/atlocal ${D}${PTEST_PATH}/tests/
install --mode=755 ${B}/tests/genfile ${D}${PTEST_PATH}/tests/
install --mode=755 ${S}/tests/testsuite ${D}${PTEST_PATH}/tests/
- install --mode=755 ${WORKDIR}/test.sh ${D}${PTEST_PATH}/test.sh
+ install --mode=755 ${UNPACKDIR}/test.sh ${D}${PTEST_PATH}/test.sh
sed -i "s#@PTEST_PATH@#${PTEST_PATH}#g" ${D}${PTEST_PATH}/test.sh
}
diff --git a/meta/recipes-extended/cracklib/cracklib/0001-packlib.c-support-dictionary-byte-order-dependent.patch b/meta/recipes-extended/cracklib/cracklib/0001-packlib.c-support-dictionary-byte-order-dependent.patch
index 20572b55c4..35229ae890 100644
--- a/meta/recipes-extended/cracklib/cracklib/0001-packlib.c-support-dictionary-byte-order-dependent.patch
+++ b/meta/recipes-extended/cracklib/cracklib/0001-packlib.c-support-dictionary-byte-order-dependent.patch
@@ -303,7 +303,7 @@ index 9396e1d..d0bb181 100644
+ PWDICT tmp_pwp;
+
+ memcpy(&tmp_pwp, pwp, sizeof(PWDICT));
-+ HwmsHostToBigEndian(tmp_pwp.hwms, sizeof(tmp_pwp.hwms), en_is32);
++ HwmsHostToBigEndian((char *)tmp_pwp.hwms, sizeof(tmp_pwp.hwms), en_is32);
+ fwrite(tmp_pwp.hwms, 1, sizeof(tmp_pwp.hwms), pwp->wfp);
}
}
diff --git a/meta/recipes-extended/cronie/cronie_1.7.2.bb b/meta/recipes-extended/cronie/cronie_1.7.2.bb
index abdaff644d..e4711fa31c 100644
--- a/meta/recipes-extended/cronie/cronie_1.7.2.bb
+++ b/meta/recipes-extended/cronie/cronie_1.7.2.bb
@@ -49,18 +49,18 @@ do_install:append () {
install -d ${D}${sysconfdir}/sysconfig/
install -d ${D}${sysconfdir}/init.d/
install -m 0644 ${S}/crond.sysconfig ${D}${sysconfdir}/sysconfig/crond
- install -m 0755 ${WORKDIR}/crond.init ${D}${sysconfdir}/init.d/crond
+ install -m 0755 ${UNPACKDIR}/crond.init ${D}${sysconfdir}/init.d/crond
# install systemd unit files
install -d ${D}${systemd_system_unitdir}
- install -m 0644 ${WORKDIR}/crond.service ${D}${systemd_system_unitdir}
+ install -m 0644 ${UNPACKDIR}/crond.service ${D}${systemd_system_unitdir}
sed -i -e 's,@BASE_BINDIR@,${base_bindir},g' \
-e 's,@SBINDIR@,${sbindir},g' \
${D}${systemd_system_unitdir}/crond.service
# below are necessary for a complete cron environment
install -d ${D}${localstatedir}/spool/cron
- install -m 0755 ${WORKDIR}/crontab ${D}${sysconfdir}/
+ install -m 0755 ${UNPACKDIR}/crontab ${D}${sysconfdir}/
mkdir -p ${D}${sysconfdir}/cron.d
mkdir -p ${D}${sysconfdir}/cron.hourly
mkdir -p ${D}${sysconfdir}/cron.daily
diff --git a/meta/recipes-extended/cups/cups.inc b/meta/recipes-extended/cups/cups.inc
index b70ba3ae58..9688efafae 100644
--- a/meta/recipes-extended/cups/cups.inc
+++ b/meta/recipes-extended/cups/cups.inc
@@ -84,11 +84,11 @@ do_install () {
rm -rf ${D}${sysconfdir}/init.d/
rm -rf ${D}${sysconfdir}/rc*
install -d ${D}${sysconfdir}/tmpfiles.d
- install -m 0644 ${WORKDIR}/cups-volatiles.conf \
+ install -m 0644 ${UNPACKDIR}/cups-volatiles.conf \
${D}${sysconfdir}/tmpfiles.d/cups.conf
else
install -d ${D}${sysconfdir}/default/volatiles
- install -m 0644 ${WORKDIR}/volatiles.99_cups \
+ install -m 0644 ${UNPACKDIR}/volatiles.99_cups \
${D}${sysconfdir}/default/volatiles/99_cups
fi
}
diff --git a/meta/recipes-extended/cups/cups_2.4.7.bb b/meta/recipes-extended/cups/cups_2.4.8.bb
index f4b0282e4c..c0cddf7e99 100644
--- a/meta/recipes-extended/cups/cups_2.4.7.bb
+++ b/meta/recipes-extended/cups/cups_2.4.8.bb
@@ -2,4 +2,4 @@ require cups.inc
LIC_FILES_CHKSUM = "file://LICENSE;md5=3b83ef96387f14655fc854ddc3c6bd57"
-SRC_URI[sha256sum] = "dd54228dd903526428ce7e37961afaed230ad310788141da75cebaa08362cf6c"
+SRC_URI[sha256sum] = "75c326b4ba73975efcc9a25078c4b04cdb4ee333caaad0d0823dbd522c6479a0"
diff --git a/meta/recipes-extended/ed/ed_1.20.1.bb b/meta/recipes-extended/ed/ed_1.20.2.bb
index 9ae53002c3..2b78b080ba 100644
--- a/meta/recipes-extended/ed/ed_1.20.1.bb
+++ b/meta/recipes-extended/ed/ed_1.20.2.bb
@@ -19,7 +19,7 @@ bindir = "${base_bindir}"
SRC_URI = "${GNU_MIRROR}/ed/${BP}.tar.lz"
UPSTREAM_CHECK_URI = "${GNU_MIRROR}/ed/"
-SRC_URI[sha256sum] = "b1a463b297a141f9876c4b1fcd01477f645cded92168090e9a35db2af4babbca"
+SRC_URI[sha256sum] = "65fec7318f48c2ca17f334ac0f4703defe62037bb13cc23920de077b5fa24523"
EXTRA_OEMAKE = "-e MAKEFLAGS="
diff --git a/meta/recipes-extended/gawk/gawk/0001-m4-readline-add-missing-includes.patch b/meta/recipes-extended/gawk/gawk/0001-m4-readline-add-missing-includes.patch
new file mode 100644
index 0000000000..5be2fd97ee
--- /dev/null
+++ b/meta/recipes-extended/gawk/gawk/0001-m4-readline-add-missing-includes.patch
@@ -0,0 +1,38 @@
+From 4f4e84f139e2a8682f1374a592f2636c43ad857b Mon Sep 17 00:00:00 2001
+From: Ross Burton <ross.burton@arm.com>
+Date: Tue, 21 May 2024 15:10:11 +0000
+Subject: [PATCH] m4/readline: add missing includes
+
+The cross-specific code fragment only includes stdio.h, where the native
+fragment also includes fcntl.h and unistd.h. This is important because
+GCC 14.1 has made the implicit definitions an error:
+
+conftest.c: In function 'main':
+conftest.c:144:9: error: implicit declaration of function 'close'; did you mean 'pclose'? [-Wimplicit-function-declaration]
+conftest.c:146:14: error: implicit declaration of function 'open'; did you mean 'popen'? [-Wimplicit-function-declaration]
+
+Add the missing includes so that the check doesn't always fail due to
+these errors.
+
+Upstream-Status: Submitted [https://lists.gnu.org/archive/html/bug-gawk/2024-05/msg00000.html]
+Signed-off-by: Ross Burton <ross.burton@arm.com>
+---
+ m4/readline.m4 | 2 ++
+ 1 file changed, 2 insertions(+)
+
+diff --git a/m4/readline.m4 b/m4/readline.m4
+index 38f96326..efd52d4e 100644
+--- a/m4/readline.m4
++++ b/m4/readline.m4
+@@ -66,6 +66,8 @@ dnl action if false:
+ dnl action if cross compiling:
+ [AC_LINK_IFELSE(
+ [AC_LANG_PROGRAM([[#include <stdio.h>
++#include <fcntl.h>
++#include <unistd.h>
+ #include <readline/readline.h>
+ #include <readline/history.h>]], dnl includes
+ dnl function body
+--
+2.34.1
+
diff --git a/meta/recipes-extended/gawk/gawk_5.3.0.bb b/meta/recipes-extended/gawk/gawk_5.3.0.bb
index d7a0fc616d..e94cf19db4 100644
--- a/meta/recipes-extended/gawk/gawk_5.3.0.bb
+++ b/meta/recipes-extended/gawk/gawk_5.3.0.bb
@@ -16,6 +16,7 @@ PACKAGECONFIG[readline] = "--with-readline,--without-readline,readline"
PACKAGECONFIG[mpfr] = "--with-mpfr,--without-mpfr, mpfr"
SRC_URI = "${GNU_MIRROR}/gawk/gawk-${PV}.tar.gz \
+ file://0001-m4-readline-add-missing-includes.patch \
file://run-ptest \
"
diff --git a/meta/recipes-extended/go-examples/go-helloworld_0.1.bb b/meta/recipes-extended/go-examples/go-helloworld_0.1.bb
index 74f3520eae..575ee81b50 100644
--- a/meta/recipes-extended/go-examples/go-helloworld_0.1.bb
+++ b/meta/recipes-extended/go-examples/go-helloworld_0.1.bb
@@ -5,7 +5,7 @@ HOMEPAGE = "https://golang.org/"
LICENSE = "MIT"
LIC_FILES_CHKSUM = "file://${COMMON_LICENSE_DIR}/MIT;md5=0835ade698e0bcf8506ecda2f7b4f302"
-SRC_URI = "git://go.googlesource.com/example;branch=master;protocol=https"
+SRC_URI = "git://go.googlesource.com/example;branch=master;protocol=https;destsuffix=${GO_SRCURI_DESTSUFFIX}"
SRCREV = "32022caedd6a177a7717aa8680cbe179e1045935"
UPSTREAM_CHECK_COMMITS = "1"
diff --git a/meta/recipes-extended/iptables/iptables/0001-configure-Add-option-to-enable-disable-libnfnetlink.patch b/meta/recipes-extended/iptables/iptables/0001-configure-Add-option-to-enable-disable-libnfnetlink.patch
index 8824bf2af7..0fe2261511 100644
--- a/meta/recipes-extended/iptables/iptables/0001-configure-Add-option-to-enable-disable-libnfnetlink.patch
+++ b/meta/recipes-extended/iptables/iptables/0001-configure-Add-option-to-enable-disable-libnfnetlink.patch
@@ -1,22 +1,24 @@
-From 0096c854d5015918ed154dccb3ad472fd06c1010 Mon Sep 17 00:00:00 2001
+From 653db8b938166db7833135f615b90c38a3f27a30 Mon Sep 17 00:00:00 2001
From: "Maxin B. John" <maxin.john@intel.com>
-Date: Tue, 21 Feb 2017 11:16:31 +0200
+Date: Thu, 25 Apr 2024 10:51:02 +0200
Subject: [PATCH] configure: Add option to enable/disable libnfnetlink
-This changes the configure behaviour from autodetecting
-for libnfnetlink to having an option to disable it explicitly
-
-Upstream-Status: Pending
+Default behavior (autodetecting) does not change, but specifying
+either option would explicitly disable or enable libnfnetlink support,
+and if the library is not found in the latter case, ./configure will error
+out.
+Upstream-Status: Backport [https://git.netfilter.org/iptables/commit/?id=653db8b938166db7833135f615b90c38a3f27a30]
Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Maxin B. John <maxin.john@intel.com>
-
+Signed-off-by: Alexander Kanavin <alex@linutronix.de>
+Signed-off-by: Phil Sutter <phil@nwl.cc>
---
- configure.ac | 10 +++++++---
- 1 file changed, 7 insertions(+), 3 deletions(-)
+ configure.ac | 13 +++++++++++--
+ 1 file changed, 11 insertions(+), 2 deletions(-)
diff --git a/configure.ac b/configure.ac
-index d99fa3b..d607772 100644
+index d99fa3b9..2293702b 100644
--- a/configure.ac
+++ b/configure.ac
@@ -63,6 +63,9 @@ AC_ARG_WITH([pkgconfigdir], AS_HELP_STRING([--with-pkgconfigdir=PATH],
@@ -25,21 +27,27 @@ index d99fa3b..d607772 100644
[enable_nftables="$enableval"], [enable_nftables="yes"])
+AC_ARG_ENABLE([libnfnetlink],
+ AS_HELP_STRING([--disable-libnfnetlink], [Do not use netfilter netlink library]),
-+ [enable_libnfnetlink="$enableval"], [enable_libnfnetlink="yes"])
++ [enable_libnfnetlink="$enableval"], [enable_libnfnetlink="auto"])
AC_ARG_ENABLE([connlabel],
AS_HELP_STRING([--disable-connlabel],
[Do not build libnetfilter_conntrack]),
-@@ -113,9 +116,10 @@ AM_CONDITIONAL([ENABLE_SYNCONF], [test "$enable_nfsynproxy" = "yes"])
+@@ -113,8 +116,14 @@ AM_CONDITIONAL([ENABLE_SYNCONF], [test "$enable_nfsynproxy" = "yes"])
AM_CONDITIONAL([ENABLE_NFTABLES], [test "$enable_nftables" = "yes"])
AM_CONDITIONAL([ENABLE_CONNLABEL], [test "$enable_connlabel" = "yes"])
-PKG_CHECK_MODULES([libnfnetlink], [libnfnetlink >= 1.0],
- [nfnetlink=1], [nfnetlink=0])
--AM_CONDITIONAL([HAVE_LIBNFNETLINK], [test "$nfnetlink" = 1])
-+AS_IF([test "x$enable_libnfnetlink" = "xyes"], [
-+ PKG_CHECK_MODULES([libnfnetlink], [libnfnetlink >= 1.0])
-+ ])
-+AM_CONDITIONAL([HAVE_LIBNFNETLINK], [test "x$enable_libnfnetlink" = "xyes"])
++# If specified explicitly on the command line, error out when library was not found
++# Otherwise, disable and continue
++AS_IF([test "x$enable_libnfnetlink" = "xyes"],
++ [PKG_CHECK_MODULES([libnfnetlink], [libnfnetlink >= 1.0],
++ [nfnetlink=1])],
++ [test "x$enable_libnfnetlink" = "xauto"],
++ [PKG_CHECK_MODULES([libnfnetlink], [libnfnetlink >= 1.0],
++ [nfnetlink=1], [nfnetlink=0])])
+ AM_CONDITIONAL([HAVE_LIBNFNETLINK], [test "$nfnetlink" = 1])
if test "x$enable_bpfc" = "xyes" || test "x$enable_nfsynproxy" = "xyes"; then
- PKG_CHECK_MODULES([libpcap], [libpcap], [], [
+--
+2.39.2
+
diff --git a/meta/recipes-extended/iptables/iptables/0002-iptables-xshared.h-add-missing-sys.types.h-include.patch b/meta/recipes-extended/iptables/iptables/0002-iptables-xshared.h-add-missing-sys.types.h-include.patch
deleted file mode 100644
index a190c7e8ae..0000000000
--- a/meta/recipes-extended/iptables/iptables/0002-iptables-xshared.h-add-missing-sys.types.h-include.patch
+++ /dev/null
@@ -1,31 +0,0 @@
-From 465e3ef77f1763d225adc76220e43ee9bd73b178 Mon Sep 17 00:00:00 2001
-From: Alexander Kanavin <alex@linutronix.de>
-Date: Tue, 17 May 2022 10:56:59 +0200
-Subject: [PATCH] iptables/xshared.h: add missing sys.types.h include
-
-This resolves the build error under musl:
-
-| ../../../../../../../workspace/sources/iptables/iptables/xshared.h:83:56: error: unknown type name 'u_int16_t'; did you mean 'uint16_t'?
-| 83 | set_option(unsigned int *options, unsigned int option, u_int16_t *invflg,
-| | ^~~~~~~~~
-| | uint16_t
-
-Upstream-Status: Submitted [via email to phil@nwl.cc]
-Signed-off-by: Alexander Kanavin <alex@linutronix.de>
-
----
- iptables/xshared.h | 1 +
- 1 file changed, 1 insertion(+)
-
-diff --git a/iptables/xshared.h b/iptables/xshared.h
-index a200e0d..f543dbf 100644
---- a/iptables/xshared.h
-+++ b/iptables/xshared.h
-@@ -6,6 +6,7 @@
- #include <stdint.h>
- #include <netinet/in.h>
- #include <net/if.h>
-+#include <sys/types.h>
- #include <linux/netfilter_arp/arp_tables.h>
- #include <linux/netfilter_ipv4/ip_tables.h>
- #include <linux/netfilter_ipv6/ip6_tables.h>
diff --git a/meta/recipes-extended/iptables/iptables/0004-configure.ac-only-check-conntrack-when-libnfnetlink-.patch b/meta/recipes-extended/iptables/iptables/0004-configure.ac-only-check-conntrack-when-libnfnetlink-.patch
deleted file mode 100644
index 5a022ebc8c..0000000000
--- a/meta/recipes-extended/iptables/iptables/0004-configure.ac-only-check-conntrack-when-libnfnetlink-.patch
+++ /dev/null
@@ -1,49 +0,0 @@
-From 6832501bbb90a3dab977a4625d0391804c0e795c Mon Sep 17 00:00:00 2001
-From: "Maxin B. John" <maxin.john@intel.com>
-Date: Tue, 21 Feb 2017 11:49:07 +0200
-Subject: [PATCH] configure.ac:
- only-check-conntrack-when-libnfnetlink-enabled.patch
-
-Package libnetfilter-conntrack depends on package libnfnetlink. iptables
-checks package libnetfilter-conntrack whatever its package config
-libnfnetlink is enabled or not. When libnfnetlink is disabled but
-package libnetfilter-conntrack exists, it fails randomly with:
-
-In file included from
-.../iptables/1.4.21-r0/iptables-1.4.21/extensions/libxt_connlabel.c:8:0:
-
-.../tmp/sysroots/qemumips/usr/include/libnetfilter_conntrack/libnetfilter_conntrack.h:14:42:
-fatal error: libnfnetlink/linux_nfnetlink.h: No such file or directory
-
-compilation terminated.
-GNUmakefile:96: recipe for target 'libxt_connlabel.oo' failed
-Only check libnetfilter-conntrack when libnfnetlink is enabled to fix it.
-
-Upstream-Status: Pending
-
-Signed-off-by: Kai Kang <kai.kang@windriver.com>
-Signed-off-by: Maxin B. John <maxin.john@intel.com>
-
----
- configure.ac | 6 ++++--
- 1 file changed, 4 insertions(+), 2 deletions(-)
-
-diff --git a/configure.ac b/configure.ac
-index d607772..25a8e75 100644
---- a/configure.ac
-+++ b/configure.ac
-@@ -159,10 +159,12 @@ if test "$nftables" != 1; then
- fi
-
- if test "x$enable_connlabel" = "xyes"; then
-- PKG_CHECK_MODULES([libnetfilter_conntrack],
-+ nfconntrack=0
-+ AS_IF([test "x$enable_libnfnetlink" = "xyes"], [
-+ PKG_CHECK_MODULES([libnetfilter_conntrack],
- [libnetfilter_conntrack >= 1.0.6],
- [nfconntrack=1], [nfconntrack=0])
--
-+ ])
- if test "$nfconntrack" -ne 1; then
- blacklist_modules="$blacklist_modules connlabel";
- echo "WARNING: libnetfilter_conntrack not found, connlabel match will not be built";
diff --git a/meta/recipes-extended/iptables/iptables_1.8.10.bb b/meta/recipes-extended/iptables/iptables_1.8.10.bb
index cd2f3bce0b..a9c88582cd 100644
--- a/meta/recipes-extended/iptables/iptables_1.8.10.bb
+++ b/meta/recipes-extended/iptables/iptables_1.8.10.bb
@@ -14,8 +14,6 @@ SRC_URI = "http://netfilter.org/projects/iptables/files/iptables-${PV}.tar.xz \
file://ip6tables.service \
file://ip6tables.rules \
file://0001-configure-Add-option-to-enable-disable-libnfnetlink.patch \
- file://0002-iptables-xshared.h-add-missing-sys.types.h-include.patch \
- file://0004-configure.ac-only-check-conntrack-when-libnfnetlink-.patch \
"
SRC_URI[sha256sum] = "5cc255c189356e317d070755ce9371eb63a1b783c34498fb8c30264f3cc59c9c"
@@ -34,7 +32,7 @@ PACKAGECONFIG ?= "${@bb.utils.filter('DISTRO_FEATURES', 'ipv6', d)}"
PACKAGECONFIG[ipv6] = "--enable-ipv6,--disable-ipv6,"
# libnfnetlink recipe is in meta-networking layer
-PACKAGECONFIG[libnfnetlink] = "--enable-libnfnetlink,--disable-libnfnetlink,libnfnetlink libnetfilter-conntrack"
+PACKAGECONFIG[libnfnetlink] = "--enable-libnfnetlink --enable-connlabel,--disable-libnfnetlink --disable-connlabel,libnfnetlink libnetfilter-conntrack"
# libnftnl recipe is in meta-networking layer(previously known as libnftables)
PACKAGECONFIG[libnftnl] = "--enable-nftables,--disable-nftables,libnftnl"
@@ -52,10 +50,10 @@ IPTABLES_RULES_DIR ?= "${sysconfdir}/${BPN}"
do_install:append() {
install -d ${D}${IPTABLES_RULES_DIR}
- install -m 0644 ${WORKDIR}/iptables.rules ${D}${IPTABLES_RULES_DIR}
+ install -m 0644 ${UNPACKDIR}/iptables.rules ${D}${IPTABLES_RULES_DIR}
install -d ${D}${systemd_system_unitdir}
- install -m 0644 ${WORKDIR}/iptables.service ${D}${systemd_system_unitdir}
+ install -m 0644 ${UNPACKDIR}/iptables.service ${D}${systemd_system_unitdir}
sed -i \
-e 's,@SBINDIR@,${sbindir},g' \
@@ -63,8 +61,8 @@ do_install:append() {
${D}${systemd_system_unitdir}/iptables.service
if ${@bb.utils.contains('PACKAGECONFIG', 'ipv6', 'true', 'false', d)} ; then
- install -m 0644 ${WORKDIR}/ip6tables.rules ${D}${IPTABLES_RULES_DIR}
- install -m 0644 ${WORKDIR}/ip6tables.service ${D}${systemd_system_unitdir}
+ install -m 0644 ${UNPACKDIR}/ip6tables.rules ${D}${IPTABLES_RULES_DIR}
+ install -m 0644 ${UNPACKDIR}/ip6tables.service ${D}${systemd_system_unitdir}
sed -i \
-e 's,@SBINDIR@,${sbindir},g' \
diff --git a/meta/recipes-extended/libarchive/libarchive_3.7.3.bb b/meta/recipes-extended/libarchive/libarchive_3.7.4.bb
index bea91b6e97..da85764116 100644
--- a/meta/recipes-extended/libarchive/libarchive_3.7.3.bb
+++ b/meta/recipes-extended/libarchive/libarchive_3.7.4.bb
@@ -33,7 +33,7 @@ SRC_URI = "http://libarchive.org/downloads/libarchive-${PV}.tar.gz"
SRC_URI += "file://configurehack.patch"
UPSTREAM_CHECK_URI = "http://libarchive.org/"
-SRC_URI[sha256sum] = "f27a97bc22ceb996e72502df47dc19f99f9a0f09181ae909f09f3c9eb17b67e2"
+SRC_URI[sha256sum] = "7875d49596286055b52439ed42f044bd8ad426aa4cc5aabd96bfe7abb971d5e8"
CVE_STATUS[CVE-2023-30571] = "upstream-wontfix: upstream has documented that reported function is not thread-safe"
diff --git a/meta/recipes-extended/libsolv/libsolv/0001-utils-Conside-musl-when-wrapping-qsort_r.patch b/meta/recipes-extended/libsolv/libsolv/0001-utils-Conside-musl-when-wrapping-qsort_r.patch
index 6f0dea2e9c..da93a12ed5 100644
--- a/meta/recipes-extended/libsolv/libsolv/0001-utils-Conside-musl-when-wrapping-qsort_r.patch
+++ b/meta/recipes-extended/libsolv/libsolv/0001-utils-Conside-musl-when-wrapping-qsort_r.patch
@@ -1,4 +1,4 @@
-From 06321f1a2aa89b8e028946e793344657eaad0165 Mon Sep 17 00:00:00 2001
+From e1db3c41fa84391b7ab299f7351f58b413ed2994 Mon Sep 17 00:00:00 2001
From: Khem Raj <raj.khem@gmail.com>
Date: Thu, 28 Oct 2021 22:28:45 -0700
Subject: [PATCH] utils: Conside musl when wrapping qsort_r
@@ -29,6 +29,3 @@ index 72426e09..8f29bc5a 100644
void
solv_sort(void *base, size_t nmemb, size_t size, int (*compar)(const void *, const void *, void *), void *compard)
---
-2.33.1
-
diff --git a/meta/recipes-extended/libsolv/libsolv_0.7.28.bb b/meta/recipes-extended/libsolv/libsolv_0.7.29.bb
index 201059323a..ff0bd2d174 100644
--- a/meta/recipes-extended/libsolv/libsolv_0.7.28.bb
+++ b/meta/recipes-extended/libsolv/libsolv_0.7.29.bb
@@ -12,7 +12,7 @@ SRC_URI = "git://github.com/openSUSE/libsolv.git;branch=master;protocol=https \
file://0001-utils-Conside-musl-when-wrapping-qsort_r.patch \
"
-SRCREV = "c8dbb3a77c86600ce09d4f80a504cf4e78a3c359"
+SRCREV = "9c2b1a84b5a7ce0dc6e74226bdeb9527d6706791"
UPSTREAM_CHECK_GITTAGREGEX = "(?P<pver>\d+(\.\d+)+)"
diff --git a/meta/recipes-extended/lighttpd/lighttpd_1.4.76.bb b/meta/recipes-extended/lighttpd/lighttpd_1.4.76.bb
index f0fdda4190..153f451ea7 100644
--- a/meta/recipes-extended/lighttpd/lighttpd_1.4.76.bb
+++ b/meta/recipes-extended/lighttpd/lighttpd_1.4.76.bb
@@ -47,9 +47,9 @@ SYSTEMD_SERVICE:${PN} = "lighttpd.service"
do_install:append() {
install -d ${D}${sysconfdir}/init.d ${D}${sysconfdir}/lighttpd ${D}${sysconfdir}/lighttpd.d ${D}/www/pages/dav
- install -m 0755 ${WORKDIR}/lighttpd ${D}${sysconfdir}/init.d
- install -m 0644 ${WORKDIR}/lighttpd.conf ${D}${sysconfdir}/lighttpd
- install -m 0644 ${WORKDIR}/index.html.lighttpd ${D}/www/pages/index.html
+ install -m 0755 ${UNPACKDIR}/lighttpd ${D}${sysconfdir}/init.d
+ install -m 0644 ${UNPACKDIR}/lighttpd.conf ${D}${sysconfdir}/lighttpd
+ install -m 0644 ${UNPACKDIR}/index.html.lighttpd ${D}/www/pages/index.html
install -d ${D}${systemd_system_unitdir}
install -m 0644 ${S}/doc/systemd/lighttpd.service ${D}${systemd_system_unitdir}
diff --git a/meta/recipes-extended/ltp/ltp/0001-sched_stress-Use-time_t-instead-of-long-for-type.patch b/meta/recipes-extended/ltp/ltp/0001-sched_stress-Use-time_t-instead-of-long-for-type.patch
new file mode 100644
index 0000000000..ae8dc8706e
--- /dev/null
+++ b/meta/recipes-extended/ltp/ltp/0001-sched_stress-Use-time_t-instead-of-long-for-type.patch
@@ -0,0 +1,54 @@
+From 74074f9a71c876d6e95c2d72702888dd2fabc761 Mon Sep 17 00:00:00 2001
+From: Khem Raj <raj.khem@gmail.com>
+Date: Mon, 6 May 2024 11:43:20 -0700
+Subject: [PATCH] sched_stress: Use time_t instead of long for type
+
+This ensures it works across different architectures
+Fixes
+
+| sched_driver.c:744:43: error: passing argument 1 of 'ctime' from incompatible pointer type [-Wincompatible-pointer-types]
+| 744 | printf("\nend time = %s\n", ctime(&end_time));
+| | ^~~~~~~~~
+
+With gcc-14
+
+Upstream-Status: Backport [https://github.com/linux-test-project/ltp/commit/0a682f1af42d8d261202821be580fe26d17ee9b7]
+Signed-off-by: Khem Raj <raj.khem@gmail.com>
+---
+ testcases/kernel/sched/sched_stress/sched_driver.c | 6 +++---
+ 1 file changed, 3 insertions(+), 3 deletions(-)
+
+diff --git a/testcases/kernel/sched/sched_stress/sched_driver.c b/testcases/kernel/sched/sched_stress/sched_driver.c
+index 61573d788..5b8c187fe 100644
+--- a/testcases/kernel/sched/sched_stress/sched_driver.c
++++ b/testcases/kernel/sched/sched_stress/sched_driver.c
+@@ -136,7 +136,7 @@ int debug = 0;
+ /*
+ * Function prototypes
+ */
+-void startup(long);
++void startup(time_t);
+ int start_testcase(char *, char *, char *, char *, char *, char *);
+ int process_slots_in_use();
+ int available_user_process_slots();
+@@ -251,7 +251,7 @@ int main(int argc, char **argv)
+ * information to the screen and . It also initializes the *
+ * process id list and other global variables. *
+ *-----------------------------------------------------------------------*/
+-void startup(long start_time)
++void startup(time_t start_time)
+ {
+ char tempbuffer[50]; /* temporary buffer to hold names */
+
+@@ -734,7 +734,7 @@ void kill_short_term_testcases()
+ void finishup(start_time)
+ long start_time; /* starting time to calculate elapsed time */
+ {
+- long end_time; /* time when program finished */
++ time_t end_time; /* time when program finished */
+
+ /*
+ * Get the end time and calculate elapsed time; write all this out
+--
+2.45.0
+
diff --git a/meta/recipes-extended/ltp/ltp_20240129.bb b/meta/recipes-extended/ltp/ltp_20240129.bb
index 3e896957d1..f8e6d3987e 100644
--- a/meta/recipes-extended/ltp/ltp_20240129.bb
+++ b/meta/recipes-extended/ltp/ltp_20240129.bb
@@ -29,6 +29,7 @@ SRCREV = "68737d20556d37364c95776044b1119c0912a36a"
SRC_URI = "git://github.com/linux-test-project/ltp.git;branch=master;protocol=https \
file://0001-Remove-OOM-tests-from-runtest-mm.patch \
file://0001-scenario_groups-default-remove-connectors.patch \
+ file://0001-sched_stress-Use-time_t-instead-of-long-for-type.patch \
"
S = "${WORKDIR}/git"
@@ -98,6 +99,7 @@ RDEPENDS:${PN} = "\
gdb \
gzip \
iproute2 \
+ ${@bb.utils.contains('DISTRO_FEATURES', 'ipv6', 'iputils-ping6', '', d)} \
ldd \
libaio \
logrotate \
diff --git a/meta/recipes-extended/man-db/man-db_2.12.1.bb b/meta/recipes-extended/man-db/man-db_2.12.1.bb
index 27b47a7f47..5c6797c8f1 100644
--- a/meta/recipes-extended/man-db/man-db_2.12.1.bb
+++ b/meta/recipes-extended/man-db/man-db_2.12.1.bb
@@ -37,7 +37,7 @@ do_install() {
if ${@bb.utils.contains('DISTRO_FEATURES', 'sysvinit', 'true', 'false', d)}; then
install -d ${D}/etc/default/volatiles
- install -m 0644 ${WORKDIR}/99_mandb ${D}/etc/default/volatiles
+ install -m 0644 ${UNPACKDIR}/99_mandb ${D}/etc/default/volatiles
fi
}
diff --git a/meta/recipes-extended/mdadm/mdadm_4.3.bb b/meta/recipes-extended/mdadm/mdadm_4.3.bb
index 228fc6f84e..63c61b68c9 100644
--- a/meta/recipes-extended/mdadm/mdadm_4.3.bb
+++ b/meta/recipes-extended/mdadm/mdadm_4.3.bb
@@ -61,7 +61,7 @@ do_install:append() {
install -d ${D}/${sysconfdir}/
install -m 644 ${S}/mdadm.conf-example ${D}${sysconfdir}/mdadm.conf
install -d ${D}/${sysconfdir}/init.d
- install -m 755 ${WORKDIR}/mdadm.init ${D}${sysconfdir}/init.d/mdmonitor
+ install -m 755 ${UNPACKDIR}/mdadm.init ${D}${sysconfdir}/init.d/mdmonitor
}
do_install:append() {
diff --git a/meta/recipes-extended/msmtp/msmtp_1.8.25.bb b/meta/recipes-extended/msmtp/msmtp_1.8.26.bb
index b575fad5e1..13820fe930 100644
--- a/meta/recipes-extended/msmtp/msmtp_1.8.25.bb
+++ b/meta/recipes-extended/msmtp/msmtp_1.8.26.bb
@@ -11,7 +11,7 @@ LIC_FILES_CHKSUM = "file://COPYING;md5=d32239bcb673463ab874e80d47fae504"
UPSTREAM_CHECK_URI = "https://marlam.de/msmtp/download/"
SRC_URI = "https://marlam.de/${BPN}/releases/${BP}.tar.xz"
-SRC_URI[sha256sum] = "2dfe1dbbb397d26fe0b0b6b2e9cd2efdf9d72dd42d18e70d7f363ada2652d738"
+SRC_URI[sha256sum] = "6cfc488344cef189267e60aea481f00d4c7e2a59b53c6c659c520a4d121f66d8"
inherit gettext autotools update-alternatives pkgconfig
diff --git a/meta/recipes-extended/net-tools/net-tools_2.10.bb b/meta/recipes-extended/net-tools/net-tools_2.10.bb
index 33304297ec..7facc0cc8d 100644
--- a/meta/recipes-extended/net-tools/net-tools_2.10.bb
+++ b/meta/recipes-extended/net-tools/net-tools_2.10.bb
@@ -31,8 +31,8 @@ PACKAGECONFIG[plipconfig] = ""
do_configure() {
# net-tools has its own config mechanism requiring "make config"
# we pre-generate desired options and copy to source directory instead
- cp ${WORKDIR}/net-tools-config.h ${S}/config.h
- cp ${WORKDIR}/net-tools-config.make ${S}/config.make
+ cp ${UNPACKDIR}/net-tools-config.h ${S}/config.h
+ cp ${UNPACKDIR}/net-tools-config.make ${S}/config.make
if [ "${USE_NLS}" = "no" ]; then
sed -i -e 's/^I18N=1/# I18N=1/' ${S}/config.make
diff --git a/meta/recipes-extended/pam/libpam_1.6.1.bb b/meta/recipes-extended/pam/libpam_1.6.1.bb
index 849f485f75..9f2106ea73 100644
--- a/meta/recipes-extended/pam/libpam_1.6.1.bb
+++ b/meta/recipes-extended/pam/libpam_1.6.1.bb
@@ -138,16 +138,16 @@ do_install() {
rm -rf ${D}${sysconfdir}/init.d/
rm -rf ${D}${sysconfdir}/rc*
install -d ${D}${nonarch_libdir}/tmpfiles.d
- install -m 0644 ${WORKDIR}/pam-volatiles.conf \
+ install -m 0644 ${UNPACKDIR}/pam-volatiles.conf \
${D}${nonarch_libdir}/tmpfiles.d/pam.conf
else
install -d ${D}${sysconfdir}/default/volatiles
- install -m 0644 ${WORKDIR}/99_pam \
+ install -m 0644 ${UNPACKDIR}/99_pam \
${D}${sysconfdir}/default/volatiles/
fi
install -d ${D}${sysconfdir}/pam.d/
- install -m 0644 ${WORKDIR}/pam.d/* ${D}${sysconfdir}/pam.d/
+ install -m 0644 ${UNPACKDIR}/pam.d/* ${D}${sysconfdir}/pam.d/
# The lsb requires unix_chkpwd has setuid permission
chmod 4755 ${D}${sbindir}/unix_chkpwd
diff --git a/meta/recipes-extended/procps/procps_4.0.4.bb b/meta/recipes-extended/procps/procps_4.0.4.bb
index 800384f22f..789e0c2747 100644
--- a/meta/recipes-extended/procps/procps_4.0.4.bb
+++ b/meta/recipes-extended/procps/procps_4.0.4.bb
@@ -41,7 +41,7 @@ do_install:append () {
fi
install -d ${D}${sysconfdir}
- install -m 0644 ${WORKDIR}/sysctl.conf ${D}${sysconfdir}/sysctl.conf
+ install -m 0644 ${UNPACKDIR}/sysctl.conf ${D}${sysconfdir}/sysctl.conf
if ${@bb.utils.contains('DISTRO_FEATURES','systemd','true','false',d)}; then
install -d ${D}${sysconfdir}/sysctl.d
ln -sf ../sysctl.conf ${D}${sysconfdir}/sysctl.d/99-sysctl.conf
diff --git a/meta/recipes-extended/rpcbind/rpcbind_1.2.6.bb b/meta/recipes-extended/rpcbind/rpcbind_1.2.6.bb
index dbd4d32e0a..e751eb631c 100644
--- a/meta/recipes-extended/rpcbind/rpcbind_1.2.6.bb
+++ b/meta/recipes-extended/rpcbind/rpcbind_1.2.6.bb
@@ -46,9 +46,9 @@ do_install:append () {
install -d ${D}${sysconfdir}/init.d
sed -e 's,/etc/,${sysconfdir}/,g' \
-e 's,/sbin/,${sbindir}/,g' \
- ${WORKDIR}/init.d > ${D}${sysconfdir}/init.d/rpcbind
+ ${UNPACKDIR}/init.d > ${D}${sysconfdir}/init.d/rpcbind
chmod 0755 ${D}${sysconfdir}/init.d/rpcbind
- install -m 0644 ${WORKDIR}/rpcbind.conf ${D}${sysconfdir}/rpcbind.conf
+ install -m 0644 ${UNPACKDIR}/rpcbind.conf ${D}${sysconfdir}/rpcbind.conf
}
ALTERNATIVE:${PN} = "rpcinfo"
diff --git a/meta/recipes-extended/screen/screen_4.9.1.bb b/meta/recipes-extended/screen/screen_4.9.1.bb
index 7b040e6b57..57d1481049 100644
--- a/meta/recipes-extended/screen/screen_4.9.1.bb
+++ b/meta/recipes-extended/screen/screen_4.9.1.bb
@@ -36,7 +36,7 @@ EXTRA_OECONF = "--with-pty-mode=0620 --with-pty-group=5 --with-sys-screenrc=${sy
do_install:append () {
install -D -m 644 ${S}/etc/etcscreenrc ${D}/${sysconfdir}/screenrc
if [ "${@bb.utils.filter('DISTRO_FEATURES', 'pam', d)}" ]; then
- install -D -m 644 ${WORKDIR}/screen.pam ${D}/${sysconfdir}/pam.d/screen
+ install -D -m 644 ${UNPACKDIR}/screen.pam ${D}/${sysconfdir}/pam.d/screen
fi
}
diff --git a/meta/recipes-extended/shadow/files/0001-lib-copydir-copy_entry-use-temporary-stat-buffer.patch b/meta/recipes-extended/shadow/files/0001-lib-copydir-copy_entry-use-temporary-stat-buffer.patch
deleted file mode 100644
index 2e5503bfd4..0000000000
--- a/meta/recipes-extended/shadow/files/0001-lib-copydir-copy_entry-use-temporary-stat-buffer.patch
+++ /dev/null
@@ -1,37 +0,0 @@
-From af4b8cb780587aa736692a3baa76b60474f19c5d Mon Sep 17 00:00:00 2001
-From: Enrico Scholz <enrico.scholz@sigma-chemnitz.de>
-Date: Mon, 18 Mar 2024 12:14:21 +0100
-Subject: [PATCH] lib/copydir:copy_entry(): use temporary stat buffer
-
-There are no guarantees that fstatat() does not clobber the stat
-buffer on errors.
-
-Use a temporary buffer so that the following code sees correct
-attributes of the source entry.
-
-Upstream-Status: Submitted [https://github.com/shadow-maint/shadow/pull/974]
-
-Signed-off-by: Enrico Scholz <enrico.scholz@sigma-chemnitz.de>
----
- lib/copydir.c | 3 ++-
- 1 file changed, 2 insertions(+), 1 deletion(-)
-
---- a/lib/copydir.c
-+++ b/lib/copydir.c
-@@ -400,6 +400,7 @@ static int copy_entry (const struct path
- {
- int err = 0;
- struct stat sb;
-+ struct stat tmp_sb;
- struct link_name *lp;
- struct timespec mt[2];
-
-@@ -423,7 +424,7 @@ static int copy_entry (const struct path
- * If the destination already exists do nothing.
- * This is after the copy_dir above to still iterate into subdirectories.
- */
-- if (fstatat(dst->dirfd, dst->name, &sb, AT_SYMLINK_NOFOLLOW) != -1) {
-+ if (fstatat(dst->dirfd, dst->name, &tmp_sb, AT_SYMLINK_NOFOLLOW) != -1) {
- return err;
- }
-
diff --git a/meta/recipes-extended/shadow/shadow-securetty_4.6.bb b/meta/recipes-extended/shadow/shadow-securetty_4.6.bb
index fe51ea1874..913c159c81 100644
--- a/meta/recipes-extended/shadow/shadow-securetty_4.6.bb
+++ b/meta/recipes-extended/shadow/shadow-securetty_4.6.bb
@@ -8,7 +8,8 @@ INHIBIT_DEFAULT_DEPS = "1"
SRC_URI = "file://securetty"
-S = "${WORKDIR}"
+S = "${WORKDIR}/sources"
+UNPACKDIR = "${S}"
# Since SERIAL_CONSOLES is likely to be set from the machine configuration
PACKAGE_ARCH = "${MACHINE_ARCH}"
@@ -17,7 +18,7 @@ do_install () {
# Ensure we add a suitable securetty file to the package that has
# most common embedded TTYs defined.
install -d ${D}${sysconfdir}
- install -m 0400 ${WORKDIR}/securetty ${D}${sysconfdir}/securetty
+ install -m 0400 ${S}/securetty ${D}${sysconfdir}/securetty
if [ ! -z "${SERIAL_CONSOLES}" ]; then
# Our SERIAL_CONSOLES contains a baud rate and sometimes extra
# options as well. The following pearl :) takes that and converts
diff --git a/meta/recipes-extended/shadow/shadow-sysroot_4.6.bb b/meta/recipes-extended/shadow/shadow-sysroot_4.6.bb
index 00ab58b38c..13cfab6aab 100644
--- a/meta/recipes-extended/shadow/shadow-sysroot_4.6.bb
+++ b/meta/recipes-extended/shadow/shadow-sysroot_4.6.bb
@@ -13,7 +13,8 @@ DEPENDS = "base-passwd"
# can add custom users/groups for recipes that use inherit useradd.
SRC_URI = "file://login.defs_shadow-sysroot"
-S = "${WORKDIR}"
+S = "${WORKDIR}/sources"
+UNPACKDIR = "${S}"
do_install() {
install -d ${D}${sysconfdir}
diff --git a/meta/recipes-extended/shadow/shadow.inc b/meta/recipes-extended/shadow/shadow.inc
index c15715fc77..3991006b43 100644
--- a/meta/recipes-extended/shadow/shadow.inc
+++ b/meta/recipes-extended/shadow/shadow.inc
@@ -12,7 +12,6 @@ DEPENDS = "virtual/crypt"
GITHUB_BASE_URI = "https://github.com/shadow-maint/shadow/releases"
SRC_URI = "${GITHUB_BASE_URI}/download/${PV}/${BP}.tar.gz \
- file://0001-lib-copydir-copy_entry-use-temporary-stat-buffer.patch \
${@bb.utils.contains('PACKAGECONFIG', 'pam', '${PAM_SRC_URI}', '', d)} \
file://useradd \
"
@@ -25,7 +24,7 @@ SRC_URI:append:class-target = " \
SRC_URI:append:class-native = " \
file://commonio.c-fix-unexpected-open-failure-in-chroot-env.patch \
"
-SRC_URI[sha256sum] = "377fe0d7c1a0aa5e3514c08fdf5ddc70c9dcbb391678c2134445ed97326bcc26"
+SRC_URI[sha256sum] = "b34686b89b279887ffbf1f33128902ccc0fa1a998a3add44213bb12d7385b218"
# Additional Policy files for PAM
PAM_SRC_URI = "file://pam.d/chfn \
@@ -111,7 +110,7 @@ do_install() {
sed -i 's/^#ENCRYPT_METHOD.*$/ENCRYPT_METHOD SHA512/' ${D}${sysconfdir}/login.defs
install -d ${D}${sysconfdir}/default
- install -m 0644 ${WORKDIR}/useradd ${D}${sysconfdir}/default
+ install -m 0644 ${UNPACKDIR}/useradd ${D}${sysconfdir}/default
}
do_install:append() {
@@ -121,11 +120,11 @@ do_install:append() {
install -m 0775 -d ${D}${localstatedir}/spool/mail
chown root:mail ${D}${localstatedir}/spool/mail
- if [ -e ${WORKDIR}/pam.d ]; then
+ if [ -e ${UNPACKDIR}/pam.d ]; then
install -d ${D}${sysconfdir}/pam.d/
- install -m 0644 ${WORKDIR}/pam.d/* ${D}${sysconfdir}/pam.d/
+ install -m 0644 ${UNPACKDIR}/pam.d/* ${D}${sysconfdir}/pam.d/
# Remove defaults that are not used when supporting PAM.
- sed -i -f ${WORKDIR}/login_defs_pam.sed ${D}${sysconfdir}/login.defs
+ sed -i -f ${UNPACKDIR}/login_defs_pam.sed ${D}${sysconfdir}/login.defs
fi
install -d ${D}${sbindir} ${D}${base_sbindir} ${D}${base_bindir}
diff --git a/meta/recipes-extended/shadow/shadow_4.15.0.bb b/meta/recipes-extended/shadow/shadow_4.15.1.bb
index e57676c1da..e57676c1da 100644
--- a/meta/recipes-extended/shadow/shadow_4.15.0.bb
+++ b/meta/recipes-extended/shadow/shadow_4.15.1.bb
diff --git a/meta/recipes-extended/stress-ng/stress-ng_0.17.07.bb b/meta/recipes-extended/stress-ng/stress-ng_0.17.08.bb
index fb88e06a7f..fffe6a1823 100644
--- a/meta/recipes-extended/stress-ng/stress-ng_0.17.07.bb
+++ b/meta/recipes-extended/stress-ng/stress-ng_0.17.08.bb
@@ -7,7 +7,7 @@ LIC_FILES_CHKSUM = "file://COPYING;md5=b234ee4d69f5fce4486a80fdaf4a4263"
SRC_URI = "git://github.com/ColinIanKing/stress-ng.git;protocol=https;branch=master \
"
-SRCREV = "519151f460738cd62b69b84f8096cd218131e0a2"
+SRCREV = "b7c7a5877501679a3b0a67d877e6274a801d1e4e"
S = "${WORKDIR}/git"
DEPENDS = "coreutils-native libbsd"
diff --git a/meta/recipes-extended/sudo/sudo_1.9.15p5.bb b/meta/recipes-extended/sudo/sudo_1.9.15p5.bb
index 8e542015ad..2fd2ae6d05 100644
--- a/meta/recipes-extended/sudo/sudo_1.9.15p5.bb
+++ b/meta/recipes-extended/sudo/sudo_1.9.15p5.bb
@@ -30,7 +30,7 @@ EXTRA_OECONF += " \
do_install:append () {
if [ "${@bb.utils.filter('DISTRO_FEATURES', 'pam', d)}" ]; then
- install -D -m 644 ${WORKDIR}/sudo.pam ${D}/${sysconfdir}/pam.d/sudo
+ install -D -m 644 ${UNPACKDIR}/sudo.pam ${D}/${sysconfdir}/pam.d/sudo
if ${@bb.utils.contains('PACKAGECONFIG', 'pam-wheel', 'true', 'false', d)} ; then
echo 'auth required pam_wheel.so use_uid' >>${D}${sysconfdir}/pam.d/sudo
sed -i 's/# \(%wheel ALL=(ALL) ALL\)/\1/' ${D}${sysconfdir}/sudoers
diff --git a/meta/recipes-extended/sysklogd/sysklogd_2.5.2.bb b/meta/recipes-extended/sysklogd/sysklogd_2.5.2.bb
index c9c9055142..e488603086 100644
--- a/meta/recipes-extended/sysklogd/sysklogd_2.5.2.bb
+++ b/meta/recipes-extended/sysklogd/sysklogd_2.5.2.bb
@@ -24,7 +24,7 @@ do_install:append () {
install -d ${D}${sysconfdir}
install -m 644 ${S}/syslog.conf ${D}${sysconfdir}/syslog.conf
install -d ${D}${sysconfdir}/init.d
- install -m 755 ${WORKDIR}/sysklogd ${D}${sysconfdir}/init.d/syslog
+ install -m 755 ${UNPACKDIR}/sysklogd ${D}${sysconfdir}/init.d/syslog
}
SYSTEMD_PACKAGES = "${PN}"
diff --git a/meta/recipes-extended/sysstat/sysstat_12.7.5.bb b/meta/recipes-extended/sysstat/sysstat_12.7.5.bb
index 150f4932d8..d598d5366f 100644
--- a/meta/recipes-extended/sysstat/sysstat_12.7.5.bb
+++ b/meta/recipes-extended/sysstat/sysstat_12.7.5.bb
@@ -45,7 +45,7 @@ do_install() {
rm -rf ${D}/var
if ${@bb.utils.contains('DISTRO_FEATURES', 'sysvinit', 'true', 'false', d)}; then
install -d ${D}/etc/default/volatiles
- install -m 0644 ${WORKDIR}/99_sysstat ${D}/etc/default/volatiles
+ install -m 0644 ${UNPACKDIR}/99_sysstat ${D}/etc/default/volatiles
fi
if ${@bb.utils.contains('DISTRO_FEATURES', 'systemd', 'true', 'false', d)}; then
install -d ${D}${nonarch_libdir}/tmpfiles.d
@@ -56,7 +56,7 @@ do_install() {
# systemd unit file. Otherwise the package will install one.
if ${@bb.utils.contains('PACKAGECONFIG', 'cron systemd', 'false', 'true', d)}; then
install -d ${D}${systemd_system_unitdir}
- install -m 0644 ${WORKDIR}/sysstat.service ${D}${systemd_system_unitdir}
+ install -m 0644 ${UNPACKDIR}/sysstat.service ${D}${systemd_system_unitdir}
sed -i -e 's#@LIBEXECDIR@#${libexecdir}#g' ${D}${systemd_system_unitdir}/sysstat.service
fi
fi
diff --git a/meta/recipes-extended/tcp-wrappers/tcp-wrappers_7.6.bb b/meta/recipes-extended/tcp-wrappers/tcp-wrappers_7.6.bb
index bcd1d6f792..8cf927153f 100644
--- a/meta/recipes-extended/tcp-wrappers/tcp-wrappers_7.6.bb
+++ b/meta/recipes-extended/tcp-wrappers/tcp-wrappers_7.6.bb
@@ -120,8 +120,8 @@ do_install () {
install -m 0644 $m.8 ${D}${mandir}/man8/ || exit 1
done
- install -m 0644 ${WORKDIR}/try-from.8 ${D}${mandir}/man8/
- install -m 0644 ${WORKDIR}/safe_finger.8 ${D}${mandir}/man8/
+ install -m 0644 ${UNPACKDIR}/try-from.8 ${D}${mandir}/man8/
+ install -m 0644 ${UNPACKDIR}/safe_finger.8 ${D}${mandir}/man8/
install -d ${D}${includedir}
install -m 0644 tcpd.h ${D}${includedir}/
diff --git a/meta/recipes-extended/texinfo-dummy-native/texinfo-dummy-native.bb b/meta/recipes-extended/texinfo-dummy-native/texinfo-dummy-native.bb
index a942ac2991..51d9c92766 100644
--- a/meta/recipes-extended/texinfo-dummy-native/texinfo-dummy-native.bb
+++ b/meta/recipes-extended/texinfo-dummy-native/texinfo-dummy-native.bb
@@ -8,7 +8,8 @@ PV = "1.0"
SRC_URI = "file://template.py file://COPYING"
-S = "${WORKDIR}"
+S = "${WORKDIR}/sources"
+UNPACKDIR = "${S}"
inherit native
diff --git a/meta/recipes-extended/watchdog/watchdog-config.bb b/meta/recipes-extended/watchdog/watchdog-config.bb
index f138952128..17151ced5e 100644
--- a/meta/recipes-extended/watchdog/watchdog-config.bb
+++ b/meta/recipes-extended/watchdog/watchdog-config.bb
@@ -13,12 +13,15 @@ SRC_URI = " \
file://watchdog.conf \
"
+S = "${WORKDIR}/sources"
+UNPACKDIR = "${S}"
+
# The default value is 60 seconds when null.
WATCHDOG_TIMEOUT ??= ""
do_install() {
- install -Dm 0644 ${WORKDIR}/watchdog.default ${D}${sysconfdir}/default/watchdog
- install -Dm 0644 ${WORKDIR}/watchdog.conf ${D}${sysconfdir}/watchdog.conf
+ install -Dm 0644 ${UNPACKDIR}/watchdog.default ${D}${sysconfdir}/default/watchdog
+ install -Dm 0644 ${UNPACKDIR}/watchdog.conf ${D}${sysconfdir}/watchdog.conf
if [ -n "${WATCHDOG_TIMEOUT}" ]; then
echo "watchdog-timeout = ${WATCHDOG_TIMEOUT}" >> ${D}/etc/watchdog.conf
diff --git a/meta/recipes-extended/watchdog/watchdog_5.16.bb b/meta/recipes-extended/watchdog/watchdog_5.16.bb
index 5325ccafda..c88ea08ade 100644
--- a/meta/recipes-extended/watchdog/watchdog_5.16.bb
+++ b/meta/recipes-extended/watchdog/watchdog_5.16.bb
@@ -50,8 +50,8 @@ do_install:append() {
install -m 0644 ${S}/debian/watchdog.service ${D}${systemd_system_unitdir}
install -m 0644 ${S}/debian/wd_keepalive.service ${D}${systemd_system_unitdir}
- install -Dm 0755 ${WORKDIR}/watchdog.init ${D}/${sysconfdir}/init.d/watchdog
- install -Dm 0755 ${WORKDIR}/wd_keepalive.init ${D}${sysconfdir}/init.d/wd_keepalive
+ install -Dm 0755 ${UNPACKDIR}/watchdog.init ${D}/${sysconfdir}/init.d/watchdog
+ install -Dm 0755 ${UNPACKDIR}/wd_keepalive.init ${D}${sysconfdir}/init.d/wd_keepalive
# watchdog.conf is provided by the watchdog-config recipe
rm ${D}${sysconfdir}/watchdog.conf
diff --git a/meta/recipes-extended/xinetd/xinetd_2.3.15.4.bb b/meta/recipes-extended/xinetd/xinetd_2.3.15.4.bb
index 72eb1ae067..897747379b 100644
--- a/meta/recipes-extended/xinetd/xinetd_2.3.15.4.bb
+++ b/meta/recipes-extended/xinetd/xinetd_2.3.15.4.bb
@@ -37,12 +37,12 @@ CONFFILES:${PN} = "${sysconfdir}/xinetd.conf"
do_install:append() {
install -d "${D}${sysconfdir}/init.d"
install -d "${D}${sysconfdir}/default"
- install -m 755 "${WORKDIR}/xinetd.init" "${D}${sysconfdir}/init.d/xinetd"
- install -m 644 "${WORKDIR}/xinetd.default" "${D}${sysconfdir}/default/xinetd"
+ install -m 755 "${UNPACKDIR}/xinetd.init" "${D}${sysconfdir}/init.d/xinetd"
+ install -m 644 "${UNPACKDIR}/xinetd.default" "${D}${sysconfdir}/default/xinetd"
# Install systemd unit files
install -d ${D}${systemd_system_unitdir}
- install -m 0644 ${WORKDIR}/xinetd.service ${D}${systemd_system_unitdir}
+ install -m 0644 ${UNPACKDIR}/xinetd.service ${D}${systemd_system_unitdir}
sed -i -e 's,@BASE_BINDIR@,${base_bindir},g' \
-e 's,@SBINDIR@,${sbindir},g' \
${D}${systemd_system_unitdir}/xinetd.service
diff --git a/meta/recipes-extended/zip/zip-3.0/0001-configure-Include-dirent.h-for-closedir-opendir-APIs.patch b/meta/recipes-extended/zip/zip-3.0/0001-configure-Include-dirent.h-for-closedir-opendir-APIs.patch
new file mode 100644
index 0000000000..0d3af37ded
--- /dev/null
+++ b/meta/recipes-extended/zip/zip-3.0/0001-configure-Include-dirent.h-for-closedir-opendir-APIs.patch
@@ -0,0 +1,45 @@
+From 9db2f8cdbbc0dfb359d3b4e5dfe48c18652ce531 Mon Sep 17 00:00:00 2001
+From: Khem Raj <raj.khem@gmail.com>
+Date: Wed, 8 May 2024 19:02:46 -0700
+Subject: [PATCH] configure: Include dirent.h for closedir/opendir APIs
+MIME-Version: 1.0
+Content-Type: text/plain; charset=UTF-8
+Content-Transfer-Encoding: 8bit
+
+GCC-14 is strict about function prototypes and since the
+testcase tries to compile/link opendir/closedir functions
+without including signatures, it fails to build the test
+due to missing signatures which come from dirent.h
+
+Therefore include the needed system header and make it more
+robust.
+
+Fixes
+a.c:2:21: error: implicit declaration of function ‘closedir’ [-Wimplicit-function-declaration]
+ 2 | int main() { return closedir(opendir(".")); }
+ | ^~~~~~~~
+a.c:2:30: error: implicit declaration of function ‘opendir’ [-Wimplicit-function-declaration]
+ 2 | int main() { return closedir(opendir(".")); }
+ | ^~~~~~~
+
+Upstream-Status: Inactive-Upstream
+Signed-off-by: Khem Raj <raj.khem@gmail.com>
+---
+ unix/configure | 1 +
+ 1 file changed, 1 insertion(+)
+
+diff --git a/unix/configure b/unix/configure
+index f917086..1dd98c6 100644
+--- a/unix/configure
++++ b/unix/configure
+@@ -591,6 +591,7 @@ $CC $CFLAGS -c conftest.c >/dev/null 2>/dev/null
+
+ echo Check for directory libraries
+ cat > conftest.c << _EOF_
++#include <dirent.h>
+ int main() { return closedir(opendir(".")); }
+ _EOF_
+
+--
+2.45.0
+
diff --git a/meta/recipes-extended/zip/zip-3.0/0002-unix.c-Do-not-redefine-DIR-as-FILE.patch b/meta/recipes-extended/zip/zip-3.0/0002-unix.c-Do-not-redefine-DIR-as-FILE.patch
deleted file mode 100644
index a86e03e620..0000000000
--- a/meta/recipes-extended/zip/zip-3.0/0002-unix.c-Do-not-redefine-DIR-as-FILE.patch
+++ /dev/null
@@ -1,35 +0,0 @@
-From 76f5bf3546d826dcbc03acbefcf0b10b972bf136 Mon Sep 17 00:00:00 2001
-From: Khem Raj <raj.khem@gmail.com>
-Date: Wed, 10 Aug 2022 17:19:38 -0700
-Subject: [PATCH 2/2] unix.c: Do not redefine DIR as FILE
-
-DIR is already provided on Linux via
-/usr/include/dirent.h system header
-
-Upstream-Status: Inactive-Upstream
-Signed-off-by: Khem Raj <raj.khem@gmail.com>
----
- unix/unix.c | 2 --
- 1 file changed, 2 deletions(-)
-
-diff --git a/unix/unix.c b/unix/unix.c
-index ba87614..6e6f4d2 100644
---- a/unix/unix.c
-+++ b/unix/unix.c
-@@ -61,13 +61,11 @@ local time_t label_utim = 0;
- /* Local functions */
- local char *readd OF((DIR *));
-
--
- #ifdef NO_DIR /* for AT&T 3B1 */
- #include <sys/dir.h>
- #ifndef dirent
- # define dirent direct
- #endif
--typedef FILE DIR;
- /*
- ** Apparently originally by Rich Salz.
- ** Cleaned up and modified by James W. Birdsall.
---
-2.37.1
-
diff --git a/meta/recipes-extended/zip/zip_3.0.bb b/meta/recipes-extended/zip/zip_3.0.bb
index 70df5ab872..ec54206335 100644
--- a/meta/recipes-extended/zip/zip_3.0.bb
+++ b/meta/recipes-extended/zip/zip_3.0.bb
@@ -17,8 +17,8 @@ SRC_URI = "${SOURCEFORGE_MIRROR}/infozip/Zip%203.x%20%28latest%29/3.0/zip30.tar.
file://0002-configure-support-PIC-code-build.patch \
file://0001-configure-Use-CFLAGS-and-LDFLAGS-when-doing-link-tes.patch \
file://0001-configure-Specify-correct-function-signatures-and-de.patch \
- file://0002-unix.c-Do-not-redefine-DIR-as-FILE.patch \
file://0001-unix-configure-use-_Static_assert-to-do-correct-dete.patch \
+ file://0001-configure-Include-dirent.h-for-closedir-opendir-APIs.patch \
"
UPSTREAM_VERSION_UNKNOWN = "1"
diff --git a/meta/recipes-gnome/gdk-pixbuf/gdk-pixbuf/0001-meson.build-allow-a-subset-of-tests-in-cross-compile.patch b/meta/recipes-gnome/gdk-pixbuf/gdk-pixbuf/0001-meson.build-allow-a-subset-of-tests-in-cross-compile.patch
index 3d685db774..24edda8102 100644
--- a/meta/recipes-gnome/gdk-pixbuf/gdk-pixbuf/0001-meson.build-allow-a-subset-of-tests-in-cross-compile.patch
+++ b/meta/recipes-gnome/gdk-pixbuf/gdk-pixbuf/0001-meson.build-allow-a-subset-of-tests-in-cross-compile.patch
@@ -1,4 +1,4 @@
-From 4bfb696fd125f044e3df9f6983c4ad518d9552c7 Mon Sep 17 00:00:00 2001
+From 325a4cde99a00b84116ab7111d27e6973f3c5026 Mon Sep 17 00:00:00 2001
From: Alexander Kanavin <alex@linutronix.de>
Date: Thu, 26 Jan 2023 20:29:46 +0100
Subject: [PATCH] meson.build: allow (a subset of) tests in cross compile
@@ -19,7 +19,7 @@ Signed-off-by: Alexander Kanavin <alex@linutronix.de>
2 files changed, 9 insertions(+), 7 deletions(-)
diff --git a/meson.build b/meson.build
-index 78f3683..e0feaee 100644
+index 3eb3fcc..dc7e790 100644
--- a/meson.build
+++ b/meson.build
@@ -390,10 +390,10 @@ subdir('gdk-pixbuf')
@@ -37,7 +37,7 @@ index 78f3683..e0feaee 100644
endif
diff --git a/tests/meson.build b/tests/meson.build
-index 78d0ad9..0c9e64e 100644
+index 3781066..911b5fb 100644
--- a/tests/meson.build
+++ b/tests/meson.build
@@ -4,7 +4,7 @@
@@ -49,7 +49,7 @@ index 78d0ad9..0c9e64e 100644
# Resources; we cannot use gnome.compile_resources() here, because we need to
# override the environment in order to use the utilities we just built instead
# of the system ones
-@@ -172,9 +172,11 @@ endif
+@@ -164,9 +164,11 @@ endif
test_deps = gdk_pixbuf_deps + [ gdkpixbuf_dep, ]
test_args = [ '-k' ]
test_env = environment()
diff --git a/meta/recipes-gnome/gdk-pixbuf/gdk-pixbuf/fatal-loader.patch b/meta/recipes-gnome/gdk-pixbuf/gdk-pixbuf/fatal-loader.patch
index 80c93e2166..3b4bf62861 100644
--- a/meta/recipes-gnome/gdk-pixbuf/gdk-pixbuf/fatal-loader.patch
+++ b/meta/recipes-gnome/gdk-pixbuf/gdk-pixbuf/fatal-loader.patch
@@ -1,4 +1,4 @@
-From 9b4f5738f8ac30f393b6163dcc84757976683d9b Mon Sep 17 00:00:00 2001
+From f78ab4edaee5f62663a9a4bcfa56e5c524da4474 Mon Sep 17 00:00:00 2001
From: Ross Burton <ross.burton@intel.com>
Date: Tue, 1 Apr 2014 17:23:36 +0100
Subject: [PATCH] gdk-pixbuf: add an option so that loader errors are fatal
diff --git a/meta/recipes-gnome/gdk-pixbuf/gdk-pixbuf_2.42.11.bb b/meta/recipes-gnome/gdk-pixbuf/gdk-pixbuf_2.42.12.bb
index ef0f23f8f7..9f825a68ef 100644
--- a/meta/recipes-gnome/gdk-pixbuf/gdk-pixbuf_2.42.11.bb
+++ b/meta/recipes-gnome/gdk-pixbuf/gdk-pixbuf_2.42.12.bb
@@ -22,7 +22,7 @@ SRC_URI = "${GNOME_MIRROR}/${BPN}/${MAJ_VER}/${BPN}-${PV}.tar.xz \
file://0001-meson.build-allow-a-subset-of-tests-in-cross-compile.patch \
"
-SRC_URI[sha256sum] = "49dcb402388708647e8c321d56b6fb30f21e51e515d0c5a942268d23052a2f00"
+SRC_URI[sha256sum] = "b9505b3445b9a7e48ced34760c3bcb73e966df3ac94c95a148cb669ab748e3c7"
inherit meson pkgconfig gettext pixbufcache ptest-gnome upstream-version-is-even gobject-introspection gi-docgen lib_package
diff --git a/meta/recipes-gnome/gobject-introspection/gobject-introspection/0001-Relocate-the-repository-directory-for-native-builds.patch b/meta/recipes-gnome/gobject-introspection/gobject-introspection/0001-Relocate-the-repository-directory-for-native-builds.patch
index c9e1afffd0..510bc426d1 100644
--- a/meta/recipes-gnome/gobject-introspection/gobject-introspection/0001-Relocate-the-repository-directory-for-native-builds.patch
+++ b/meta/recipes-gnome/gobject-introspection/gobject-introspection/0001-Relocate-the-repository-directory-for-native-builds.patch
@@ -1,4 +1,4 @@
-From aeb5532f8be42d42f4e8725ca42e239b36983a4d Mon Sep 17 00:00:00 2001
+From 4e1aa0ddbc43403ff24f644b4c4912b737290c41 Mon Sep 17 00:00:00 2001
From: Sascha Silbe <x-yo17@se-silbe.de>
Date: Fri, 8 Jun 2018 13:55:10 +0200
Subject: [PATCH] Relocate the repository directory for native builds
@@ -14,14 +14,13 @@ cache or sstate mirror).
Upstream-Status: Inappropriate
Signed-off-by: Sascha Silbe <x-yo17@se-silbe.de>
-
---
girepository/girepository.c | 15 +++++++++++++--
girepository/meson.build | 2 +-
2 files changed, 14 insertions(+), 3 deletions(-)
diff --git a/girepository/girepository.c b/girepository/girepository.c
-index a0754f4..2d456f9 100644
+index 12eaf36..876382c 100644
--- a/girepository/girepository.c
+++ b/girepository/girepository.c
@@ -21,6 +21,8 @@
@@ -42,7 +41,7 @@ index a0754f4..2d456f9 100644
/**
* SECTION:girepository
* @short_description: GObject Introspection repository manager
-@@ -215,9 +219,16 @@ init_globals (void)
+@@ -222,9 +226,16 @@ init_globals (void)
g_free (custom_dirs);
}
@@ -62,10 +61,10 @@ index a0754f4..2d456f9 100644
typelib_search_path = g_slist_prepend (typelib_search_path, typelib_dir);
diff --git a/girepository/meson.build b/girepository/meson.build
-index 786749a..15cf2a9 100644
+index 5ced59e..a580d9b 100644
--- a/girepository/meson.build
+++ b/girepository/meson.build
-@@ -45,7 +45,7 @@ girepo_internals_lib = static_library('girepository-internals',
+@@ -47,7 +47,7 @@ girepo_internals_lib = static_library('girepository-internals',
],
c_args: gi_hidden_visibility_cflags + custom_c_args,
include_directories : configinc,
diff --git a/meta/recipes-gnome/gobject-introspection/gobject-introspection_1.78.1.bb b/meta/recipes-gnome/gobject-introspection/gobject-introspection_1.80.1.bb
index 05a08a50e0..582ac248fd 100644
--- a/meta/recipes-gnome/gobject-introspection/gobject-introspection_1.78.1.bb
+++ b/meta/recipes-gnome/gobject-introspection/gobject-introspection_1.80.1.bb
@@ -16,7 +16,7 @@ LIC_FILES_CHKSUM = "file://COPYING;md5=c434e8128a68bedd59b80b2ac1eb1c4a \
SRC_URI = "${GNOME_MIRROR}/${BPN}/${@oe.utils.trim_version("${PV}", 2)}/${BPN}-${PV}.tar.xz \
"
-SRC_URI[sha256sum] = "bd7babd99af7258e76819e45ba4a6bc399608fe762d83fde3cac033c50841bb4"
+SRC_URI[sha256sum] = "a1df7c424e15bda1ab639c00e9051b9adf5cea1a9e512f8a603b53cd199bc6d8"
SRC_URI:append:class-native = " file://0001-Relocate-the-repository-directory-for-native-builds.patch"
@@ -26,7 +26,9 @@ GTKDOC_MESON_OPTION = "gtk_doc"
MULTILIB_SCRIPTS = "${PN}:${bindir}/g-ir-annotation-tool ${PN}:${bindir}/g-ir-scanner"
-DEPENDS += " libffi zlib glib-2.0 python3 flex-native bison-native"
+DEPENDS += " libffi zlib python3 flex-native bison-native"
+DEPENDS:append:class-native = " glib-2.0"
+DEPENDS:append:class-target = " glib-2.0-initial"
# target build needs qemu to run temporary introspection binaries created
# on the fly by g-ir-scanner and a native version of itself to run
@@ -189,6 +191,6 @@ FILES:${PN}-dbg += "${libdir}/gobject-introspection/giscanner/.debug/"
FILES:${PN}-staticdev += "${libdir}/gobject-introspection/giscanner/*.a"
# setuptools can be removed when upstream removes all uses of distutils
-RDEPENDS:${PN} = "python3-pickle python3-xml python3-setuptools"
+RDEPENDS:${PN} = "python3-pickle python3-xml python3-setuptools glib-2.0"
BBCLASSEXTEND = "native"
diff --git a/meta/recipes-gnome/gtk+/gtk+3_3.24.41.bb b/meta/recipes-gnome/gtk+/gtk+3_3.24.42.bb
index 17e90c59f0..61cecce4d1 100644
--- a/meta/recipes-gnome/gtk+/gtk+3_3.24.41.bb
+++ b/meta/recipes-gnome/gtk+/gtk+3_3.24.42.bb
@@ -5,7 +5,7 @@ MAJ_VER = "${@oe.utils.trim_version("${PV}", 2)}"
SRC_URI = "http://ftp.gnome.org/pub/gnome/sources/gtk+/${MAJ_VER}/gtk+-${PV}.tar.xz \
file://opengl.patch \
"
-SRC_URI[sha256sum] = "47da61487af3087a94bc49296fd025ca0bc02f96ef06c556e7c8988bd651b6fa"
+SRC_URI[sha256sum] = "50f89f615092d4dd01bbd759719f8bd380e5f149f6fd78a94725e2de112377e2"
S = "${WORKDIR}/gtk+-${PV}"
@@ -14,4 +14,4 @@ LIC_FILES_CHKSUM = "file://COPYING;md5=5f30f0716dfdd0d91eb439ebec522ec2 \
file://gdk/gdk.h;endline=25;md5=c920ce39dc88c6f06d3e7c50e08086f2 \
file://tests/testgtk.c;endline=25;md5=cb732daee1d82af7a2bf953cf3cf26f1"
-CVE_PRODUCT = "gnome:gtk"
+CVE_PRODUCT = "gnome:gtk gtk:gtk\+"
diff --git a/meta/recipes-gnome/gtk+/gtk4_4.14.2.bb b/meta/recipes-gnome/gtk+/gtk4_4.14.4.bb
index 282e81f048..cda0552f7c 100644
--- a/meta/recipes-gnome/gtk+/gtk4_4.14.2.bb
+++ b/meta/recipes-gnome/gtk+/gtk4_4.14.4.bb
@@ -37,7 +37,7 @@ MAJ_VER = "${@oe.utils.trim_version("${PV}", 2)}"
UPSTREAM_CHECK_REGEX = "gtk-(?P<pver>\d+\.(\d*[02468])+(\.\d+)+)\.tar.xz"
SRC_URI = "http://ftp.gnome.org/pub/gnome/sources/gtk/${MAJ_VER}/gtk-${PV}.tar.xz"
-SRC_URI[sha256sum] = "22604cef2898a79e5f2143bb7aee2b7d1fa2eb946989a9d1338ecf9c8ae0e072"
+SRC_URI[sha256sum] = "443518b97e8348f9f6430ac435b1010f9a6c5207f4dc6a7cd5d24e3820cee633"
S = "${WORKDIR}/gtk-${PV}"
@@ -76,6 +76,10 @@ PACKAGECONFIG[gstreamer] = "-Dmedia-gstreamer=enabled,-Dmedia-gstreamer=disabled
PACKAGECONFIG[tracker] = "-Dtracker=enabled,-Dtracker=disabled,tracker,tracker-miners"
PACKAGECONFIG[vulkan] = "-Dvulkan=enabled,-Dvulkan=disabled, vulkan-loader vulkan-headers shaderc-native"
+# Disable int-conversion warning as error until [1] is fixed
+# [1] https://gitlab.gnome.org/GNOME/gtk/-/issues/6033
+CFLAGS:append = " -Wno-error=int-conversion"
+
LIBV = "4.0.0"
FILES:${PN}:append = " \
diff --git a/meta/recipes-gnome/libportal/files/0001-meson.build-fix-build-race-when-building-GTK-vapi-fi.patch b/meta/recipes-gnome/libportal/files/0001-meson.build-fix-build-race-when-building-GTK-vapi-fi.patch
new file mode 100644
index 0000000000..fb015d3632
--- /dev/null
+++ b/meta/recipes-gnome/libportal/files/0001-meson.build-fix-build-race-when-building-GTK-vapi-fi.patch
@@ -0,0 +1,49 @@
+From 26f96a178f8a0afded00bdd7238728c0b6e42a6b Mon Sep 17 00:00:00 2001
+From: Richard Purdie <richard.purdie@linuxfoundation.org>
+Date: Thu, 9 May 2024 18:44:41 +0000
+Subject: [PATCH] meson.build: fix build race when building GTK vapi files
+
+There's a build race when building the GTK vapi files:
+
+FAILED: libportal/libportal-gtk4.vapi
+error: Package `libportal' not found in specified Vala API directories or GObject-Introspection GIR directories
+
+This can be verified by adding "sleep 10;" to the command for the
+libportal/libportal.vapi target in the generated build.ninja file.
+
+The GTK vapi files need to have access to the generic libportal.vapi file,
+but there is no explicit dependency. Switch the dependency name 'libportal'
+to the dependency object libportal_vapi so that Meson generates the
+dependency correctly.
+
+Upstream-Status: Backport
+Signed-off-by: Ross Burton <ross.burton@arm.com>
+---
+ libportal/meson.build | 4 ++--
+ 1 file changed, 2 insertions(+), 2 deletions(-)
+
+diff --git a/libportal/meson.build b/libportal/meson.build
+index fff7603..4e67f40 100644
+--- a/libportal/meson.build
++++ b/libportal/meson.build
+@@ -168,7 +168,7 @@ if gtk3_dep.found()
+ if vapi
+ libportal_gtk3_vapi = gnome.generate_vapi('libportal-gtk3',
+ sources: libportal_gtk3_gir[0],
+- packages: ['gio-2.0', 'gtk+-3.0', 'libportal'],
++ packages: ['gio-2.0', 'gtk+-3.0', libportal_vapi],
+ gir_dirs: [meson.current_build_dir()],
+ vapi_dirs: [meson.current_build_dir()],
+ install: true,
+@@ -227,7 +227,7 @@ if gtk4_dep.found()
+ if vapi
+ libportal_gtk4_vapi = gnome.generate_vapi('libportal-gtk4',
+ sources: libportal_gtk4_gir[0],
+- packages: ['gio-2.0', 'gtk4', 'libportal'],
++ packages: ['gio-2.0', 'gtk4', libportal_vapi],
+ gir_dirs: [meson.current_build_dir()],
+ vapi_dirs: [meson.current_build_dir()],
+ install: true,
+--
+2.34.1
+
diff --git a/meta/recipes-gnome/libportal/libportal_0.7.1.bb b/meta/recipes-gnome/libportal/libportal_0.7.1.bb
index 22e45559c9..6ddfef76d3 100644
--- a/meta/recipes-gnome/libportal/libportal_0.7.1.bb
+++ b/meta/recipes-gnome/libportal/libportal_0.7.1.bb
@@ -6,7 +6,8 @@ BUGTRACKER = "https://github.com/flatpak/libportal/issues"
LICENSE = "LGPL-3.0-only"
LIC_FILES_CHKSUM = "file://COPYING;md5=3000208d539ec061b899bce1d9ce9404"
-SRC_URI = "git://github.com/flatpak/${BPN}.git;protocol=https;branch=main"
+SRC_URI = "git://github.com/flatpak/${BPN}.git;protocol=https;branch=main \
+ file://0001-meson.build-fix-build-race-when-building-GTK-vapi-fi.patch"
SRCREV = "e9ed3a50cdde321eaf42361212480a66eb94a57a"
S = "${WORKDIR}/git"
diff --git a/meta/recipes-gnome/libxmlb/libxmlb_0.3.18.bb b/meta/recipes-gnome/libxmlb/libxmlb_0.3.19.bb
index 10ceab0721..de8d860d00 100644
--- a/meta/recipes-gnome/libxmlb/libxmlb_0.3.18.bb
+++ b/meta/recipes-gnome/libxmlb/libxmlb_0.3.19.bb
@@ -8,7 +8,7 @@ SRC_URI = " \
file://0001-xb-selftest.c-hardcode-G_TEST_SRCDIR.patch \
file://run-ptest \
"
-SRCREV = "59cf2e0bf3c4d0905a32e32828d6100784993621"
+SRCREV = "4393955fb7c8bbcb6a2c65ff54f16c39dc165e59"
S = "${WORKDIR}/git"
DEPENDS = "glib-2.0 xz zstd"
diff --git a/meta/recipes-graphics/builder/builder_0.1.bb b/meta/recipes-graphics/builder/builder_0.1.bb
index 52c9351f93..7719b783c2 100644
--- a/meta/recipes-graphics/builder/builder_0.1.bb
+++ b/meta/recipes-graphics/builder/builder_0.1.bb
@@ -7,7 +7,8 @@ LIC_FILES_CHKSUM = "file://builder_session.sh;endline=5;md5=84796c3c41785d86100f
SRC_URI = "file://builder_session.sh \
"
-S = "${WORKDIR}"
+S = "${WORKDIR}/sources"
+UNPACKDIR = "${S}"
RDEPENDS:${PN} = "mini-x-session"
diff --git a/meta/recipes-graphics/glslang/glslang_1.3.280.0.bb b/meta/recipes-graphics/glslang/glslang_1.3.283.0.bb
index 637082c719..b58bd1e956 100644
--- a/meta/recipes-graphics/glslang/glslang_1.3.280.0.bb
+++ b/meta/recipes-graphics/glslang/glslang_1.3.283.0.bb
@@ -8,14 +8,14 @@ HOMEPAGE = "https://www.khronos.org/opengles/sdk/tools/Reference-Compiler"
LICENSE = "BSD-3-Clause & BSD-2-Clause & MIT & Apache-2.0 & GPL-3-with-bison-exception"
LIC_FILES_CHKSUM = "file://LICENSE.txt;md5=2a2b5acd7bc4844964cfda45fe807dc3"
-SRCREV = "ee2f5d09eaf8f4e8d0d598bd2172fce290d4ca60"
+SRCREV = "e8dd0b6903b34f1879520b444634c75ea2deedf5"
SRC_URI = "git://github.com/KhronosGroup/glslang.git;protocol=https;branch=main \
file://0001-generate-glslang-pkg-config.patch \
"
PE = "1"
# These recipes need to be updated in lockstep with each other:
# glslang, vulkan-headers, vulkan-loader, vulkan-tools, spirv-headers, spirv-tools
-# vulkan-validation-layers, vulkan-utility-libraries.
+# vulkan-validation-layers, vulkan-utility-libraries, vulkan-volk.
# The tags versions should always be sdk-x.y.z, as this is what
# upstream considers a release.
UPSTREAM_CHECK_GITTAGREGEX = "sdk-(?P<pver>\d+(\.\d+)+)"
diff --git a/meta/recipes-graphics/harfbuzz/harfbuzz_8.3.1.bb b/meta/recipes-graphics/harfbuzz/harfbuzz_8.5.0.bb
index fd4dcc2338..97efc56c64 100644
--- a/meta/recipes-graphics/harfbuzz/harfbuzz_8.3.1.bb
+++ b/meta/recipes-graphics/harfbuzz/harfbuzz_8.5.0.bb
@@ -9,7 +9,7 @@ LIC_FILES_CHKSUM = "file://COPYING;md5=b98429b8e8e3c2a67cfef01e99e4893d \
"
SRC_URI = "${GITHUB_BASE_URI}/download/${PV}/${BPN}-${PV}.tar.xz"
-SRC_URI[sha256sum] = "f73e1eacd7e2ffae687bc3f056bb0c705b7a05aee86337686e09da8fc1c2030c"
+SRC_URI[sha256sum] = "77e4f7f98f3d86bf8788b53e6832fb96279956e1c3961988ea3d4b7ca41ddc27"
DEPENDS += "glib-2.0-native"
diff --git a/meta/recipes-graphics/libsdl2/libsdl2_2.30.2.bb b/meta/recipes-graphics/libsdl2/libsdl2_2.30.3.bb
index f9dacb288c..68cc2790e5 100644
--- a/meta/recipes-graphics/libsdl2/libsdl2_2.30.2.bb
+++ b/meta/recipes-graphics/libsdl2/libsdl2_2.30.3.bb
@@ -25,7 +25,7 @@ SRC_URI = "http://www.libsdl.org/release/SDL2-${PV}.tar.gz"
S = "${WORKDIR}/SDL2-${PV}"
-SRC_URI[sha256sum] = "891d66ac8cae51361d3229e3336ebec1c407a8a2a063b61df14f5fdf3ab5ac31"
+SRC_URI[sha256sum] = "820440072f8f5b50188c1dae104f2ad25984de268785be40c41a099a510f0aec"
inherit cmake lib_package binconfig-disabled pkgconfig upstream-version-is-even
diff --git a/meta/recipes-graphics/matchbox-session/matchbox-session_0.1.bb b/meta/recipes-graphics/matchbox-session/matchbox-session_0.1.bb
index d1f0a67d84..8a4cfef631 100644
--- a/meta/recipes-graphics/matchbox-session/matchbox-session_0.1.bb
+++ b/meta/recipes-graphics/matchbox-session/matchbox-session_0.1.bb
@@ -10,7 +10,9 @@ SECTION = "x11"
RCONFLICTS:${PN} = "matchbox-common"
SRC_URI = "file://matchbox-session"
-S = "${WORKDIR}"
+
+S = "${WORKDIR}/sources"
+UNPACKDIR = "${S}"
inherit update-alternatives
diff --git a/meta/recipes-graphics/matchbox-wm/matchbox-wm_1.2.3.bb b/meta/recipes-graphics/matchbox-wm/matchbox-wm_1.2.3.bb
index 880d4ed666..c8b6f07ed0 100644
--- a/meta/recipes-graphics/matchbox-wm/matchbox-wm_1.2.3.bb
+++ b/meta/recipes-graphics/matchbox-wm/matchbox-wm_1.2.3.bb
@@ -34,5 +34,5 @@ EXTRA_OECONF = " --enable-startup-notification \
--with-expat-includes=${STAGING_INCDIR}"
do_install:prepend() {
- install ${WORKDIR}/kbdconfig ${S}/data/kbdconfig
+ install ${UNPACKDIR}/kbdconfig ${S}/data/kbdconfig
}
diff --git a/meta/recipes-graphics/mesa/files/0001-meson.build-check-for-all-linux-host_os-combinations.patch b/meta/recipes-graphics/mesa/files/0001-meson.build-check-for-all-linux-host_os-combinations.patch
deleted file mode 100644
index 7be7d81eeb..0000000000
--- a/meta/recipes-graphics/mesa/files/0001-meson.build-check-for-all-linux-host_os-combinations.patch
+++ /dev/null
@@ -1,42 +0,0 @@
-From e8ec6b1cc5e401ba719095722d8b317d755ae613 Mon Sep 17 00:00:00 2001
-From: Alistair Francis <alistair@alistair23.me>
-Date: Thu, 14 Nov 2019 13:04:49 -0800
-Subject: [PATCH] meson.build: check for all linux host_os combinations
-
-Make sure that we are also looking for our host_os combinations like
-linux-musl etc. when assuming support for DRM/KMS.
-
-Also delete a duplicate line.
-
-Upstream-Status: Pending
-
-Signed-off-by: Anuj Mittal <anuj.mittal@intel.com>
-Signed-off-by: Fabio Berton <fabio.berton@ossystems.com.br>
-Signed-off-by: Otavio Salvador <otavio@ossystems.com.br>
-Signed-off-by: Alistair Francis <alistair@alistair23.me>
----
- meson.build | 4 ++--
- 1 file changed, 2 insertions(+), 2 deletions(-)
-
-diff --git a/meson.build b/meson.build
-index 133fd9a..817861e 100644
---- a/meson.build
-+++ b/meson.build
-@@ -128,7 +128,7 @@ with_any_opengl = with_opengl or with_gles1 or with_gles2
- # Only build shared_glapi if at least one OpenGL API is enabled
- with_shared_glapi = with_shared_glapi and with_any_opengl
-
--system_has_kms_drm = ['openbsd', 'netbsd', 'freebsd', 'gnu/kfreebsd', 'dragonfly', 'linux', 'sunos', 'android', 'managarm'].contains(host_machine.system())
-+system_has_kms_drm = ['openbsd', 'netbsd', 'freebsd', 'gnu/kfreebsd', 'dragonfly', 'linux', 'sunos', 'android', 'managarm'].contains(host_machine.system()) or host_machine.system().startswith('linux')
-
- gallium_drivers = get_option('gallium-drivers')
- if gallium_drivers.contains('auto')
-@@ -997,7 +997,7 @@ if cc.has_function('fmemopen')
- endif
-
- # TODO: this is very incomplete
--if ['linux', 'cygwin', 'gnu', 'freebsd', 'gnu/kfreebsd', 'haiku', 'android', 'managarm'].contains(host_machine.system())
-+if ['linux', 'cygwin', 'gnu', 'freebsd', 'gnu/kfreebsd', 'haiku', 'android', 'managarm'].contains(host_machine.system()) or host_machine.system().startswith('linux')
- pre_args += '-D_GNU_SOURCE'
- elif host_machine.system() == 'sunos'
- pre_args += '-D__EXTENSIONS__'
diff --git a/meta/recipes-graphics/mesa/mesa-gl_24.0.3.bb b/meta/recipes-graphics/mesa/mesa-gl_24.0.7.bb
index ca160f1bfc..ca160f1bfc 100644
--- a/meta/recipes-graphics/mesa/mesa-gl_24.0.3.bb
+++ b/meta/recipes-graphics/mesa/mesa-gl_24.0.7.bb
diff --git a/meta/recipes-graphics/mesa/mesa.inc b/meta/recipes-graphics/mesa/mesa.inc
index 1c9fa66c72..2581ccb120 100644
--- a/meta/recipes-graphics/mesa/mesa.inc
+++ b/meta/recipes-graphics/mesa/mesa.inc
@@ -15,14 +15,13 @@ LIC_FILES_CHKSUM = "file://docs/license.rst;md5=63779ec98d78d823a9dc533a0735ef10
PE = "2"
SRC_URI = "https://mesa.freedesktop.org/archive/mesa-${PV}.tar.xz \
- file://0001-meson.build-check-for-all-linux-host_os-combinations.patch \
file://0001-meson-misdetects-64bit-atomics-on-mips-clang.patch \
file://0001-drisw-fix-build-without-dri3.patch \
file://0002-glxext-don-t-try-zink-if-not-enabled-in-mesa.patch \
file://0001-Revert-meson-do-not-pull-in-clc-for-clover.patch \
"
-SRC_URI[sha256sum] = "77aec9a2a37b7d3596ea1640b3cc53d0b5d9b3b52abed89de07e3717e91bfdbe"
+SRC_URI[sha256sum] = "7454425f1ed4a6f1b5b107e1672b30c88b22ea0efea000ae2c7d96db93f6c26a"
UPSTREAM_CHECK_GITTAGREGEX = "mesa-(?P<pver>\d+(\.\d+)+)"
diff --git a/meta/recipes-graphics/mesa/mesa_24.0.3.bb b/meta/recipes-graphics/mesa/mesa_24.0.7.bb
index 96e8aa38d6..96e8aa38d6 100644
--- a/meta/recipes-graphics/mesa/mesa_24.0.3.bb
+++ b/meta/recipes-graphics/mesa/mesa_24.0.7.bb
diff --git a/meta/recipes-graphics/mini-x-session/mini-x-session_0.1.bb b/meta/recipes-graphics/mini-x-session/mini-x-session_0.1.bb
index ba81d0b17a..48d50c8f66 100644
--- a/meta/recipes-graphics/mini-x-session/mini-x-session_0.1.bb
+++ b/meta/recipes-graphics/mini-x-session/mini-x-session_0.1.bb
@@ -11,7 +11,9 @@ SECTION = "x11"
RCONFLICTS:${PN} = "matchbox-common"
SRC_URI = "file://mini-x-session"
-S = "${WORKDIR}"
+
+S = "${WORKDIR}/sources"
+UNPACKDIR = "${S}"
RDEPENDS:${PN} = "sudo"
diff --git a/meta/recipes-graphics/pong-clock/pong-clock_1.0.bb b/meta/recipes-graphics/pong-clock/pong-clock_1.0.bb
index d0794f8ee6..ee5173dc83 100644
--- a/meta/recipes-graphics/pong-clock/pong-clock_1.0.bb
+++ b/meta/recipes-graphics/pong-clock/pong-clock_1.0.bb
@@ -10,7 +10,8 @@ SRC_URI = "file://pong-clock-no-flicker.c"
LIC_FILES_CHKSUM = "file://pong-clock-no-flicker.c;beginline=1;endline=23;md5=dd248d50f73f746d1ee78586b0b2ebd3"
-S = "${WORKDIR}"
+S = "${WORKDIR}/sources"
+UNPACKDIR = "${S}"
do_compile () {
${CC} ${CFLAGS} ${LDFLAGS} -o pong-clock pong-clock-no-flicker.c `pkg-config --cflags --libs x11 xau xdmcp`
diff --git a/meta/recipes-graphics/shaderc/shaderc_2024.0.bb b/meta/recipes-graphics/shaderc/shaderc_2024.1.bb
index 9975c608ac..1f0b12ef57 100644
--- a/meta/recipes-graphics/shaderc/shaderc_2024.0.bb
+++ b/meta/recipes-graphics/shaderc/shaderc_2024.1.bb
@@ -6,7 +6,7 @@ HOMEPAGE = "https://github.com/google/shaderc"
LICENSE = "Apache-2.0"
LIC_FILES_CHKSUM = "file://LICENSE;md5=86d3f3a95c324c9479bd8986968f4327"
-SRCREV = "9f56ca620c07d6c4d119c65c1c1f3f1c584c9985"
+SRCREV = "5d7736da11e626b49c5463aadb2afb228ad20276"
SRC_URI = "git://github.com/google/shaderc.git;protocol=https;branch=main \
file://0001-cmake-disable-building-external-dependencies.patch \
file://0002-libshaderc_util-fix-glslang-header-file-location.patch \
diff --git a/meta/recipes-graphics/spir/spirv-headers_1.3.280.0.bb b/meta/recipes-graphics/spir/spirv-headers_1.3.283.0.bb
index 26bfd9c4fa..5ec7e42b7c 100644
--- a/meta/recipes-graphics/spir/spirv-headers_1.3.280.0.bb
+++ b/meta/recipes-graphics/spir/spirv-headers_1.3.283.0.bb
@@ -4,12 +4,12 @@ HOMEPAGE = "https://www.khronos.org/registry/spir-v"
LICENSE = "MIT"
LIC_FILES_CHKSUM = "file://LICENSE;md5=d14ee3b13f42e9c9674acc5925c3d741"
-SRCREV = "8b246ff75c6615ba4532fe4fde20f1be090c3764"
+SRCREV = "4f7b471f1a66b6d06462cd4ba57628cc0cd087d7"
SRC_URI = "git://github.com/KhronosGroup/SPIRV-Headers;protocol=https;branch=main"
PE = "1"
# These recipes need to be updated in lockstep with each other:
# glslang, vulkan-headers, vulkan-loader, vulkan-tools, spirv-headers, spirv-tools
-# vulkan-validation-layers, vulkan-utility-libraries.
+# vulkan-validation-layers, vulkan-utility-libraries, vulkan-volk.
# The tags versions should always be sdk-x.y.z, as this is what
# upstream considers a release.
UPSTREAM_CHECK_GITTAGREGEX = "sdk-(?P<pver>\d+(\.\d+)+)"
diff --git a/meta/recipes-graphics/spir/spirv-tools_1.3.280.0.bb b/meta/recipes-graphics/spir/spirv-tools_1.3.283.0.bb
index d2b6acf946..292a17f00d 100644
--- a/meta/recipes-graphics/spir/spirv-tools_1.3.280.0.bb
+++ b/meta/recipes-graphics/spir/spirv-tools_1.3.283.0.bb
@@ -7,12 +7,12 @@ SECTION = "graphics"
LICENSE = "Apache-2.0"
LIC_FILES_CHKSUM = "file://LICENSE;md5=3b83ef96387f14655fc854ddc3c6bd57"
-SRCREV = "04896c462d9f3f504c99a4698605b6524af813c1"
+SRCREV = "dd4b663e13c07fea4fbb3f70c1c91c86731099f7"
SRC_URI = "git://github.com/KhronosGroup/SPIRV-Tools.git;branch=main;protocol=https"
PE = "1"
# These recipes need to be updated in lockstep with each other:
# glslang, vulkan-headers, vulkan-loader, vulkan-tools, spirv-headers, spirv-tools
-# vulkan-validation-layers, vulkan-utility-libraries.
+# vulkan-validation-layers, vulkan-utility-libraries, vulkan-volk.
# The tags versions should always be sdk-x.y.z, as this is what
# upstream considers a release.
UPSTREAM_CHECK_GITTAGREGEX = "sdk-(?P<pver>\d+(\.\d+)+)"
diff --git a/meta/recipes-graphics/ttf-fonts/liberation-fonts_2.1.5.bb b/meta/recipes-graphics/ttf-fonts/liberation-fonts_2.1.5.bb
index b7fdc0d399..584a19a42a 100644
--- a/meta/recipes-graphics/ttf-fonts/liberation-fonts_2.1.5.bb
+++ b/meta/recipes-graphics/ttf-fonts/liberation-fonts_2.1.5.bb
@@ -26,7 +26,7 @@ do_install () {
done
install -d ${D}${sysconfdir}/fonts/conf.d/
- install -m 0644 ${WORKDIR}/30-liberation-aliases.conf ${D}${sysconfdir}/fonts/conf.d/
+ install -m 0644 ${UNPACKDIR}/30-liberation-aliases.conf ${D}${sysconfdir}/fonts/conf.d/
install -d ${D}${prefix}/share/doc/${BPN}/
install -m 0644 LICENSE ${D}${datadir}/doc/${BPN}/
diff --git a/meta/recipes-graphics/vulkan/vulkan-headers_1.3.280.0.bb b/meta/recipes-graphics/vulkan/vulkan-headers_1.3.283.0.bb
index 371cc7304d..6423ef9df6 100644
--- a/meta/recipes-graphics/vulkan/vulkan-headers_1.3.280.0.bb
+++ b/meta/recipes-graphics/vulkan/vulkan-headers_1.3.283.0.bb
@@ -11,7 +11,7 @@ LICENSE = "Apache-2.0 & MIT"
LIC_FILES_CHKSUM = "file://LICENSE.md;md5=1bc355d8c4196f774c8b87ed1a8dd625"
SRC_URI = "git://github.com/KhronosGroup/Vulkan-Headers.git;branch=main;protocol=https"
-SRCREV = "577baa05033cf1d9236b3d078ca4b3269ed87a2b"
+SRCREV = "eaa319dade959cb61ed2229c8ea42e307cc8f8b3"
S = "${WORKDIR}/git"
@@ -22,7 +22,7 @@ RDEPENDS:${PN} += "python3-core"
# These recipes need to be updated in lockstep with each other:
# glslang, vulkan-headers, vulkan-loader, vulkan-tools, spirv-headers, spirv-tools,
-# vulkan-validation-layers, vulkan-utility-libraries.
+# vulkan-validation-layers, vulkan-utility-libraries, vulkan-volk.
# The tags versions should always be sdk-x.y.z, as this is what
# upstream considers a release.
UPSTREAM_CHECK_GITTAGREGEX = "sdk-(?P<pver>\d+(\.\d+)+)"
diff --git a/meta/recipes-graphics/vulkan/vulkan-loader_1.3.280.0.bb b/meta/recipes-graphics/vulkan/vulkan-loader_1.3.283.0.bb
index b738771801..6c3197e13f 100644
--- a/meta/recipes-graphics/vulkan/vulkan-loader_1.3.280.0.bb
+++ b/meta/recipes-graphics/vulkan/vulkan-loader_1.3.283.0.bb
@@ -9,8 +9,8 @@ SECTION = "libs"
LICENSE = "Apache-2.0"
LIC_FILES_CHKSUM = "file://LICENSE.txt;md5=7dbefed23242760aa3475ee42801c5ac"
-SRC_URI = "git://github.com/KhronosGroup/Vulkan-Loader.git;branch=vulkan-sdk-1.3.280;protocol=https"
-SRCREV = "61a9c50248e09f3a0e0be7ce6f8bb1663855f979"
+SRC_URI = "git://github.com/KhronosGroup/Vulkan-Loader.git;branch=vulkan-sdk-1.3.283;protocol=https"
+SRCREV = "720be5198aad4696381d2e3eeadc131c9f56bdc6"
S = "${WORKDIR}/git"
@@ -37,7 +37,7 @@ RRECOMMENDS:${PN} = "mesa-vulkan-drivers"
# These recipes need to be updated in lockstep with each other:
# glslang, vulkan-headers, vulkan-loader, vulkan-tools, spirv-headers, spirv-tools,
-# vulkan-validation-layers, vulkan-utility-libraries.
+# vulkan-validation-layers, vulkan-utility-libraries, vulkan-volk.
# The tags versions should always be sdk-x.y.z, as this is what
# upstream considers a release.
UPSTREAM_CHECK_GITTAGREGEX = "sdk-(?P<pver>\d+(\.\d+)+)"
diff --git a/meta/recipes-graphics/vulkan/vulkan-tools_1.3.280.0.bb b/meta/recipes-graphics/vulkan/vulkan-tools_1.3.283.0.bb
index a7e4a67aaa..a76f60735f 100644
--- a/meta/recipes-graphics/vulkan/vulkan-tools_1.3.280.0.bb
+++ b/meta/recipes-graphics/vulkan/vulkan-tools_1.3.283.0.bb
@@ -6,8 +6,8 @@ SECTION = "libs"
LICENSE = "Apache-2.0"
LIC_FILES_CHKSUM = "file://LICENSE.txt;md5=3b83ef96387f14655fc854ddc3c6bd57"
-SRC_URI = "git://github.com/KhronosGroup/Vulkan-Tools.git;branch=vulkan-sdk-1.3.280;protocol=https"
-SRCREV = "136976082d0b14dad8b9687982b2a80cc6e6a633"
+SRC_URI = "git://github.com/KhronosGroup/Vulkan-Tools.git;branch=vulkan-sdk-1.3.283;protocol=https"
+SRCREV = "38321da9031f5909f1ca2dbafac8840ef6b2c144"
S = "${WORKDIR}/git"
@@ -31,7 +31,7 @@ PACKAGECONFIG[wayland] = "-DBUILD_WSI_WAYLAND_SUPPORT=ON, -DBUILD_WSI_WAYLAND_SU
# These recipes need to be updated in lockstep with each other:
# glslang, vulkan-headers, vulkan-loader, vulkan-tools, spirv-headers, spirv-tools
-# vulkan-validation-layers, vulkan-utility-libraries.
+# vulkan-validation-layers, vulkan-utility-libraries, vulkan-volk.
# The tags versions should always be sdk-x.y.z, as this is what
# upstream considers a release.
UPSTREAM_CHECK_GITTAGREGEX = "sdk-(?P<pver>\d+(\.\d+)+)"
diff --git a/meta/recipes-graphics/vulkan/vulkan-utility-libraries_1.3.280.0.bb b/meta/recipes-graphics/vulkan/vulkan-utility-libraries_1.3.283.0.bb
index 3ab31af96a..3274bea8fd 100644
--- a/meta/recipes-graphics/vulkan/vulkan-utility-libraries_1.3.280.0.bb
+++ b/meta/recipes-graphics/vulkan/vulkan-utility-libraries_1.3.283.0.bb
@@ -10,7 +10,7 @@ LICENSE = "Apache-2.0"
LIC_FILES_CHKSUM = "file://LICENSE.md;md5=4ca2d6799091aaa98a8520f1b793939b"
SRC_URI = "git://github.com/KhronosGroup/Vulkan-Utility-Libraries.git;branch=main;protocol=https"
-SRCREV = "a4140c5fd47dcf3a030726a60b293db61cfb54a3"
+SRCREV = "ad7f699a7b2b5deb66eb3de19f24aa33597ed65b"
S = "${WORKDIR}/git"
@@ -27,7 +27,7 @@ inherit cmake features_check pkgconfig
# These recipes need to be updated in lockstep with each other:
# glslang, vulkan-headers, vulkan-loader, vulkan-tools,
# vulkan-validation-layers, spirv-headers, spirv-tools,
-# vulkan-utility-libraries.
+# vulkan-utility-libraries, vulkan-volk.
# The tags versions should always be sdk-x.y.z, as this is what
# upstream considers a release.
UPSTREAM_CHECK_GITTAGREGEX = "sdk-(?P<pver>\d+(\.\d+)+)"
diff --git a/meta/recipes-graphics/vulkan/vulkan-validation-layers_1.3.280.0.bb b/meta/recipes-graphics/vulkan/vulkan-validation-layers_1.3.283.0.bb
index c488309c91..2f1efba856 100644
--- a/meta/recipes-graphics/vulkan/vulkan-validation-layers_1.3.280.0.bb
+++ b/meta/recipes-graphics/vulkan/vulkan-validation-layers_1.3.283.0.bb
@@ -8,8 +8,8 @@ SECTION = "libs"
LICENSE = "Apache-2.0 & MIT"
LIC_FILES_CHKSUM = "file://LICENSE.txt;md5=cd3c0bc366cd9b6a906e22f0bcb5910f"
-SRC_URI = "git://github.com/KhronosGroup/Vulkan-ValidationLayers.git;branch=vulkan-sdk-1.3.280;protocol=https"
-SRCREV = "8506077b9a25a00684e8be24b779733ae1405a54"
+SRC_URI = "git://github.com/KhronosGroup/Vulkan-ValidationLayers.git;branch=vulkan-sdk-1.3.283;protocol=https"
+SRCREV = "d5bed3e26b3d487e8d21f0cc39039351eac921a7"
S = "${WORKDIR}/git"
@@ -43,7 +43,7 @@ FILES_SOLIBSDEV = ""
# These recipes need to be updated in lockstep with each other:
# glslang, vulkan-headers, vulkan-loader, vulkan-tools,
# vulkan-validation-layers, spirv-headers, spirv-tools,
-# vulkan-utility-libraries.
+# vulkan-utility-libraries, vulkan-volk.
# The tags versions should always be sdk-x.y.z, as this is what
# upstream considers a release.
UPSTREAM_CHECK_GITTAGREGEX = "sdk-(?P<pver>\d+(\.\d+)+)"
diff --git a/meta/recipes-graphics/vulkan/vulkan-volk_1.3.280.0.bb b/meta/recipes-graphics/vulkan/vulkan-volk_1.3.283.0.bb
index 2ef12fedf8..5485aa0b0d 100644
--- a/meta/recipes-graphics/vulkan/vulkan-volk_1.3.280.0.bb
+++ b/meta/recipes-graphics/vulkan/vulkan-volk_1.3.283.0.bb
@@ -10,7 +10,7 @@ LICENSE = "MIT"
LIC_FILES_CHKSUM = "file://LICENSE.md;md5=12e6af3a0e2a5e5dbf7796aa82b64626"
SRC_URI = "git://github.com/zeux/volk.git;branch=master;protocol=https"
-SRCREV = "01986ac85fa2e5c70df09aeae9c907e27c5d50b2"
+SRCREV = "3a8068a57417940cf2bf9d837a7bb60d015ca2f1"
S = "${WORKDIR}/git"
@@ -27,7 +27,7 @@ inherit cmake features_check pkgconfig
# These recipes need to be updated in lockstep with each other:
# glslang, vulkan-headers, vulkan-loader, vulkan-tools,
# vulkan-validation-layers, spirv-headers, spirv-tools,
-# vulkan-utility-libraries.
+# vulkan-utility-libraries, vulkan-volk.
# The tags versions should always be sdk-x.y.z, as this is what
# upstream considers a release.
UPSTREAM_CHECK_GITTAGREGEX = "sdk-(?P<pver>\d+(\.\d+)+)"
diff --git a/meta/recipes-graphics/wayland/libinput_1.25.0.bb b/meta/recipes-graphics/wayland/libinput_1.25.0.bb
index 517b247fed..894858e361 100644
--- a/meta/recipes-graphics/wayland/libinput_1.25.0.bb
+++ b/meta/recipes-graphics/wayland/libinput_1.25.0.bb
@@ -32,7 +32,7 @@ do_configure:append() {
PACKAGECONFIG ??= "${@bb.utils.contains('PTEST_ENABLED', '1', 'tests', '', d)}"
PACKAGECONFIG[libwacom] = "-Dlibwacom=true,-Dlibwacom=false,libwacom"
-PACKAGECONFIG[gui] = "-Ddebug-gui=true,-Ddebug-gui=false,cairo gtk+3"
+PACKAGECONFIG[gui] = "-Ddebug-gui=true,-Ddebug-gui=false,cairo gtk+3 wayland-native"
PACKAGECONFIG[tests] = "-Dtests=true -Dinstall-tests=true,-Dtests=false -Dinstall-tests=false,libcheck"
UDEVDIR = "`pkg-config --variable=udevdir udev`"
diff --git a/meta/recipes-graphics/wayland/wayland-protocols_1.35.bb b/meta/recipes-graphics/wayland/wayland-protocols_1.36.bb
index 7e70de346c..9b008ca534 100644
--- a/meta/recipes-graphics/wayland/wayland-protocols_1.35.bb
+++ b/meta/recipes-graphics/wayland/wayland-protocols_1.36.bb
@@ -10,9 +10,10 @@ LIC_FILES_CHKSUM = "file://COPYING;md5=c7b12b6702da38ca028ace54aae3d484 \
file://stable/presentation-time/presentation-time.xml;endline=26;md5=4646cd7d9edc9fa55db941f2d3a7dc53"
SRC_URI = "https://gitlab.freedesktop.org/wayland/wayland-protocols/-/releases/${PV}/downloads/wayland-protocols-${PV}.tar.xz"
-SRC_URI[sha256sum] = "37a2716a28133dc819341c568a29d21e8cb72130e5c126a1fcfc9f42c23d95ab"
+SRC_URI[sha256sum] = "71fd4de05e79f9a1ca559fac30c1f8365fa10346422f9fe795f74d77b9ef7e92"
UPSTREAM_CHECK_URI = "https://gitlab.freedesktop.org/wayland/wayland-protocols/-/tags"
+UPSTREAM_CHECK_REGEX = "releases/(?P<pver>.+)"
inherit meson pkgconfig allarch
diff --git a/meta/recipes-graphics/wayland/wayland-utils_1.2.0.bb b/meta/recipes-graphics/wayland/wayland-utils_1.2.0.bb
index 878c7a267e..59d414a0a6 100644
--- a/meta/recipes-graphics/wayland/wayland-utils_1.2.0.bb
+++ b/meta/recipes-graphics/wayland/wayland-utils_1.2.0.bb
@@ -13,6 +13,7 @@ SRC_URI = "https://gitlab.freedesktop.org/wayland/wayland-utils/-/releases/${PV}
SRC_URI[sha256sum] = "d9278c22554586881802540751bcc42569262bf80cd9ac9b0fd12ff4bd09a9e4"
UPSTREAM_CHECK_URI = "https://gitlab.freedesktop.org/wayland/wayland-utils/-/tags"
+UPSTREAM_CHECK_REGEX = "releases/(?P<pver>.+)"
inherit meson pkgconfig
diff --git a/meta/recipes-graphics/wayland/wayland_1.22.0.bb b/meta/recipes-graphics/wayland/wayland_1.22.0.bb
index 6aa76063ea..e7babc9ec6 100644
--- a/meta/recipes-graphics/wayland/wayland_1.22.0.bb
+++ b/meta/recipes-graphics/wayland/wayland_1.22.0.bb
@@ -20,7 +20,7 @@ SRC_URI = "https://gitlab.freedesktop.org/wayland/wayland/-/releases/${PV}/downl
SRC_URI[sha256sum] = "1540af1ea698a471c2d8e9d288332c7e0fd360c8f1d12936ebb7e7cbc2425842"
UPSTREAM_CHECK_URI = "https://gitlab.freedesktop.org/wayland/wayland/-/tags"
-UPSTREAM_CHECK_REGEX = "wayland-(?P<pver>\d+\.\d+\.(?!9\d+)\d+)"
+UPSTREAM_CHECK_REGEX = "releases/(?P<pver>\d+\.\d+\.(?!9\d+)\d+)"
inherit meson pkgconfig ptest
diff --git a/meta/recipes-graphics/wayland/weston-init.bb b/meta/recipes-graphics/wayland/weston-init.bb
index 024e400665..83f0cea49c 100644
--- a/meta/recipes-graphics/wayland/weston-init.bb
+++ b/meta/recipes-graphics/wayland/weston-init.bb
@@ -13,7 +13,8 @@ SRC_URI = "file://init \
file://weston-autologin \
file://weston-start"
-S = "${WORKDIR}"
+S = "${WORKDIR}/sources"
+UNPACKDIR = "${S}"
PACKAGECONFIG ??= "${@bb.utils.contains('DISTRO_FEATURES', 'x11', 'xwayland', '', d)}"
PACKAGECONFIG:append:qemuriscv64 = " use-pixman"
@@ -29,18 +30,18 @@ DEFAULTBACKEND:qemuall ?= "drm"
do_install() {
# Install weston-start script
if [ "${VIRTUAL-RUNTIME_init_manager}" != "systemd" ]; then
- install -Dm755 ${WORKDIR}/weston-start ${D}${bindir}/weston-start
+ install -Dm755 ${S}/weston-start ${D}${bindir}/weston-start
sed -i 's,@DATADIR@,${datadir},g' ${D}${bindir}/weston-start
sed -i 's,@LOCALSTATEDIR@,${localstatedir},g' ${D}${bindir}/weston-start
- install -Dm755 ${WORKDIR}/init ${D}/${sysconfdir}/init.d/weston
+ install -Dm755 ${S}/init ${D}/${sysconfdir}/init.d/weston
sed -i 's#ROOTHOME#${ROOT_HOME}#' ${D}/${sysconfdir}/init.d/weston
fi
# Install Weston systemd service
if ${@bb.utils.contains('DISTRO_FEATURES','systemd','true','false',d)}; then
- install -D -p -m0644 ${WORKDIR}/weston.service ${D}${systemd_system_unitdir}/weston.service
- install -D -p -m0644 ${WORKDIR}/weston.socket ${D}${systemd_system_unitdir}/weston.socket
- install -D -p -m0644 ${WORKDIR}/weston-socket.sh ${D}${sysconfdir}/profile.d/weston-socket.sh
+ install -D -p -m0644 ${S}/weston.service ${D}${systemd_system_unitdir}/weston.service
+ install -D -p -m0644 ${S}/weston.socket ${D}${systemd_system_unitdir}/weston.socket
+ install -D -p -m0644 ${S}/weston-socket.sh ${D}${sysconfdir}/profile.d/weston-socket.sh
sed -i -e s:/etc:${sysconfdir}:g \
-e s:/usr/bin:${bindir}:g \
-e s:/var:${localstatedir}:g \
@@ -48,11 +49,11 @@ do_install() {
fi
if [ "${@bb.utils.filter('DISTRO_FEATURES', 'pam', d)}" ]; then
- install -D -p -m0644 ${WORKDIR}/weston-autologin ${D}${sysconfdir}/pam.d/weston-autologin
+ install -D -p -m0644 ${S}/weston-autologin ${D}${sysconfdir}/pam.d/weston-autologin
fi
- install -D -p -m0644 ${WORKDIR}/weston.ini ${D}${sysconfdir}/xdg/weston/weston.ini
- install -Dm644 ${WORKDIR}/weston.env ${D}${sysconfdir}/default/weston
+ install -D -p -m0644 ${S}/weston.ini ${D}${sysconfdir}/xdg/weston/weston.ini
+ install -Dm644 ${S}/weston.env ${D}${sysconfdir}/default/weston
if [ -n "${DEFAULTBACKEND}" ]; then
sed -i -e "/^\[core\]/a backend=${DEFAULTBACKEND}-backend.so" ${D}${sysconfdir}/xdg/weston/weston.ini
diff --git a/meta/recipes-graphics/wayland/weston_13.0.0.bb b/meta/recipes-graphics/wayland/weston_13.0.0.bb
index b728bd0ef3..cb0024c5ca 100644
--- a/meta/recipes-graphics/wayland/weston_13.0.0.bb
+++ b/meta/recipes-graphics/wayland/weston_13.0.0.bb
@@ -17,7 +17,7 @@ SRC_URI = "https://gitlab.freedesktop.org/wayland/weston/-/releases/${PV}/downlo
SRC_URI[sha256sum] = "52ff1d4aa2394a2e416c85a338b627ce97fa71d43eb762fd4aaf145d36fc795a"
UPSTREAM_CHECK_URI = "https://gitlab.freedesktop.org/wayland/weston/-/tags"
-UPSTREAM_CHECK_REGEX = "weston-(?P<pver>\d+\.\d+\.(?!9\d+)\d+)"
+UPSTREAM_CHECK_REGEX = "releases/(?P<pver>\d+\.\d+\.(?!9\d+)\d+)"
inherit meson pkgconfig useradd
@@ -105,18 +105,18 @@ do_install:append() {
# If X11, ship a desktop file to launch it
if [ "${@bb.utils.filter('DISTRO_FEATURES', 'x11', d)}" ]; then
install -d ${D}${datadir}/applications
- install ${WORKDIR}/weston.desktop ${D}${datadir}/applications
+ install ${UNPACKDIR}/weston.desktop ${D}${datadir}/applications
install -d ${D}${datadir}/icons/hicolor/48x48/apps
- install ${WORKDIR}/weston.png ${D}${datadir}/icons/hicolor/48x48/apps
+ install ${UNPACKDIR}/weston.png ${D}${datadir}/icons/hicolor/48x48/apps
fi
if [ "${@bb.utils.contains('PACKAGECONFIG', 'xwayland', 'yes', 'no', d)}" = "yes" ]; then
- install -Dm 644 ${WORKDIR}/xwayland.weston-start ${D}${datadir}/weston-start/xwayland
+ install -Dm 644 ${UNPACKDIR}/xwayland.weston-start ${D}${datadir}/weston-start/xwayland
fi
if [ "${@bb.utils.contains('PACKAGECONFIG', 'systemd', 'yes', 'no', d)}" = "yes" ]; then
- install -Dm 644 ${WORKDIR}/systemd-notify.weston-start ${D}${datadir}/weston-start/systemd-notify
+ install -Dm 644 ${UNPACKDIR}/systemd-notify.weston-start ${D}${datadir}/weston-start/systemd-notify
fi
if [ "${@bb.utils.contains('PACKAGECONFIG', 'launch', 'yes', 'no', d)}" = "yes" ]; then
diff --git a/meta/recipes-graphics/x11-common/xserver-nodm-init_3.0.bb b/meta/recipes-graphics/x11-common/xserver-nodm-init_3.0.bb
index 671c0a290e..cd4acf8155 100644
--- a/meta/recipes-graphics/x11-common/xserver-nodm-init_3.0.bb
+++ b/meta/recipes-graphics/x11-common/xserver-nodm-init_3.0.bb
@@ -12,7 +12,8 @@ SRC_URI = "file://xserver-nodm \
file://capability.conf \
"
-S = "${WORKDIR}"
+S = "${WORKDIR}/sources"
+UNPACKDIR = "${S}"
# Since we refer to ROOTLESS_X which is normally enabled per-machine
PACKAGE_ARCH = "${MACHINE_ARCH}"
@@ -52,7 +53,7 @@ do_install() {
if ${@bb.utils.contains('DISTRO_FEATURES','systemd','true','false',d)}; then
install -d ${D}${systemd_system_unitdir}
- install -m 0644 ${WORKDIR}/xserver-nodm.service.in ${D}${systemd_system_unitdir}/xserver-nodm.service
+ install -m 0644 ${S}/xserver-nodm.service.in ${D}${systemd_system_unitdir}/xserver-nodm.service
sed -i "s:@USER@:${XUSER}:" ${D}${systemd_system_unitdir}/xserver-nodm.service
fi
diff --git a/meta/recipes-graphics/xinput-calibrator/pointercal-xinput_0.0.bb b/meta/recipes-graphics/xinput-calibrator/pointercal-xinput_0.0.bb
index 5c9742fb20..f4516e6975 100644
--- a/meta/recipes-graphics/xinput-calibrator/pointercal-xinput_0.0.bb
+++ b/meta/recipes-graphics/xinput-calibrator/pointercal-xinput_0.0.bb
@@ -7,7 +7,9 @@ LIC_FILES_CHKSUM = "file://${COREBASE}/meta/COPYING.MIT;md5=3da9cfbcb788c80a0384
SRC_URI = "file://pointercal.xinput"
-S = "${WORKDIR}"
+
+S = "${WORKDIR}/sources"
+UNPACKDIR = "${S}"
do_install() {
# Only install file if it has a contents
diff --git a/meta/recipes-graphics/xinput-calibrator/xinput-calibrator_git.bb b/meta/recipes-graphics/xinput-calibrator/xinput-calibrator_git.bb
index 7b49668f92..0516928a76 100644
--- a/meta/recipes-graphics/xinput-calibrator/xinput-calibrator_git.bb
+++ b/meta/recipes-graphics/xinput-calibrator/xinput-calibrator_git.bb
@@ -27,7 +27,7 @@ do_install:append() {
install -m 0755 ${S}/scripts/xinput_calibrator_pointercal.sh ${D}${bindir}/xinput_calibrator_once.sh
install -d ${D}${sysconfdir}/X11/Xsession.d/
- install -m 0755 ${WORKDIR}/30xinput_calibrate.sh ${D}${sysconfdir}/X11/Xsession.d/
+ install -m 0755 ${UNPACKDIR}/30xinput_calibrate.sh ${D}${sysconfdir}/X11/Xsession.d/
install -d ${D}${sysconfdir}/xdg/autostart
sed -e 's,^Exec=.*,Exec=${bindir}/xinput_calibrator_once.sh,' ${S}/scripts/xinput_calibrator.desktop > ${D}${sysconfdir}/xdg/autostart/xinput_calibrator.desktop
diff --git a/meta/recipes-graphics/xorg-xserver/xserver-xf86-config_0.1.bb b/meta/recipes-graphics/xorg-xserver/xserver-xf86-config_0.1.bb
index 03f14cef2b..0972a5dd78 100644
--- a/meta/recipes-graphics/xorg-xserver/xserver-xf86-config_0.1.bb
+++ b/meta/recipes-graphics/xorg-xserver/xserver-xf86-config_0.1.bb
@@ -6,7 +6,8 @@ LIC_FILES_CHKSUM = "file://${COREBASE}/meta/COPYING.MIT;md5=3da9cfbcb788c80a0384
SRC_URI = "file://xorg.conf"
-S = "${WORKDIR}"
+S = "${WORKDIR}/sources"
+UNPACKDIR = "${S}"
CONFFILES:${PN} = "${sysconfdir}/X11/xorg.conf"
@@ -14,8 +15,8 @@ PACKAGE_ARCH = "${MACHINE_ARCH}"
ALLOW_EMPTY:${PN} = "1"
do_install () {
- if test -s ${WORKDIR}/xorg.conf; then
+ if test -s ${S}/xorg.conf; then
install -d ${D}/${sysconfdir}/X11
- install -m 0644 ${WORKDIR}/xorg.conf ${D}/${sysconfdir}/X11/
+ install -m 0644 ${S}/xorg.conf ${D}/${sysconfdir}/X11/
fi
}
diff --git a/meta/recipes-graphics/xorg-xserver/xserver-xorg_21.1.11.bb b/meta/recipes-graphics/xorg-xserver/xserver-xorg_21.1.12.bb
index 6506d775ca..570e08d5ae 100644
--- a/meta/recipes-graphics/xorg-xserver/xserver-xorg_21.1.11.bb
+++ b/meta/recipes-graphics/xorg-xserver/xserver-xorg_21.1.12.bb
@@ -3,7 +3,7 @@ require xserver-xorg.inc
SRC_URI += "file://0001-xf86pciBus.c-use-Intel-ddx-only-for-pre-gen4-hardwar.patch \
file://0001-Avoid-duplicate-definitions-of-IOPortBase.patch \
"
-SRC_URI[sha256sum] = "1d3dadbd57fb86b16a018e9f5f957aeeadf744f56c0553f55737628d06d326ef"
+SRC_URI[sha256sum] = "1e016e2be1b5ccdd65eac3ea08e54bd13ce8f4f6c3fb32ad6fdac4e71729a90f"
# These extensions are now integrated into the server, so declare the migration
# path for in-place upgrades.
diff --git a/meta/recipes-graphics/xwayland/xwayland_23.2.6.bb b/meta/recipes-graphics/xwayland/xwayland_24.1.0.bb
index f51429bc8c..251b3af857 100644
--- a/meta/recipes-graphics/xwayland/xwayland_23.2.6.bb
+++ b/meta/recipes-graphics/xwayland/xwayland_24.1.0.bb
@@ -10,7 +10,7 @@ LICENSE = "MIT"
LIC_FILES_CHKSUM = "file://COPYING;md5=5df87950af51ac2c5822094553ea1880"
SRC_URI = "https://www.x.org/archive/individual/xserver/xwayland-${PV}.tar.xz"
-SRC_URI[sha256sum] = "1c9a366b4e7ccadba0f9bd313c59eae12d23bd72543b22a26eaf8b20835cfc6d"
+SRC_URI[sha256sum] = "bef21c4f18807a4ed571c4e2df60ab63b5466bbd502ecceb2485b892ab76dcc2"
UPSTREAM_CHECK_REGEX = "xwayland-(?P<pver>\d+(\.(?!90\d)\d+)+)\.tar"
diff --git a/meta/recipes-kernel/dtc/python3-dtschema-wrapper_2021.10.bb b/meta/recipes-kernel/dtc/python3-dtschema-wrapper_2021.10.bb
index 974fcba876..a766b00bef 100644
--- a/meta/recipes-kernel/dtc/python3-dtschema-wrapper_2021.10.bb
+++ b/meta/recipes-kernel/dtc/python3-dtschema-wrapper_2021.10.bb
@@ -7,11 +7,14 @@ SRC_URI = "file://dt-doc-validate \
file://dt-mk-schema \
file://dt-validate"
+S = "${WORKDIR}/sources"
+UNPACKDIR = "${S}"
+
do_install() {
install -d ${D}${bindir}/
- install -m 755 ${WORKDIR}/dt-doc-validate ${D}${bindir}/
- install -m 755 ${WORKDIR}/dt-mk-schema ${D}${bindir}/
- install -m 755 ${WORKDIR}/dt-validate ${D}${bindir}/
+ install -m 755 ${UNPACKDIR}/dt-doc-validate ${D}${bindir}/
+ install -m 755 ${UNPACKDIR}/dt-mk-schema ${D}${bindir}/
+ install -m 755 ${UNPACKDIR}/dt-validate ${D}${bindir}/
}
BBCLASSEXTEND = "native nativesdk"
diff --git a/meta/recipes-kernel/kexec/kexec-tools/0001-x86-linux-setup.c-Use-POSIX-basename-API.patch b/meta/recipes-kernel/kexec/kexec-tools/0001-x86-linux-setup.c-Use-POSIX-basename-API.patch
new file mode 100644
index 0000000000..e223f45998
--- /dev/null
+++ b/meta/recipes-kernel/kexec/kexec-tools/0001-x86-linux-setup.c-Use-POSIX-basename-API.patch
@@ -0,0 +1,54 @@
+From 32c8ffa7ace6f1b7e63f9ddffab00b00c36a7b57 Mon Sep 17 00:00:00 2001
+From: Khem Raj <raj.khem@gmail.com>
+Date: Wed, 15 May 2024 21:18:08 -0700
+Subject: [PATCH] x86-linux-setup.c: Use POSIX basename API
+
+Musl C library only supports POSIX basename function. while glibc has
+both GNU extention as well as POSIX basename implemented. Switch to
+using posix version, so it can work across musl and glibc
+
+basename prototype has been removed from string.h from latest musl [1]
+compilers e.g. clang-18/GCC-14 flags the absense of prototype as error.
+therefore include libgen.h for providing it.
+
+[1] https://git.musl-libc.org/cgit/musl/commit/?id=725e17ed6dff4d0cd22487bb64470881e86a92e7
+
+Upstream-Status: Submitted [https://lists.infradead.org/pipermail/kexec/2024-May/030034.html]
+Signed-off-by: Khem Raj <raj.khem@gmail.com>
+---
+ kexec/arch/i386/x86-linux-setup.c | 9 ++++++---
+ 1 file changed, 6 insertions(+), 3 deletions(-)
+
+diff --git a/kexec/arch/i386/x86-linux-setup.c b/kexec/arch/i386/x86-linux-setup.c
+index 9a281dc..73251b9 100644
+--- a/kexec/arch/i386/x86-linux-setup.c
++++ b/kexec/arch/i386/x86-linux-setup.c
+@@ -14,6 +14,7 @@
+ *
+ */
+ #define _GNU_SOURCE
++#include <libgen.h>
+ #include <stdint.h>
+ #include <stdio.h>
+ #include <string.h>
+@@ -329,12 +330,14 @@ static int add_edd_entry(struct x86_linux_param_header *real_mode,
+ memset(edd_info, 0, sizeof(struct edd_info));
+
+ /* extract the device number */
+- if (sscanf(basename(sysfs_name), "int13_dev%hhx", &devnum) != 1) {
++ char* sysfs_name_copy = strdup(sysfs_name);
++ if (sscanf(basename(sysfs_name_copy), "int13_dev%hhx", &devnum) != 1) {
+ fprintf(stderr, "Invalid format of int13_dev dir "
+- "entry: %s\n", basename(sysfs_name));
++ "entry: %s\n", basename(sysfs_name_copy));
++ free(sysfs_name_copy);
+ return -1;
+ }
+-
++ free(sysfs_name_copy);
+ /* if there's a MBR signature, then add it */
+ if (file_scanf(sysfs_name, "mbr_signature", "0x%x", &mbr_sig) == 1) {
+ real_mode->edd_mbr_sig_buffer[*current_mbr] = mbr_sig;
+--
+2.45.1
+
diff --git a/meta/recipes-kernel/kexec/kexec-tools/0003-kexec-ARM-Fix-add_buffer_phys_virt-align-issue.patch b/meta/recipes-kernel/kexec/kexec-tools/0003-kexec-ARM-Fix-add_buffer_phys_virt-align-issue.patch
index e874a8b4f1..489b109285 100644
--- a/meta/recipes-kernel/kexec/kexec-tools/0003-kexec-ARM-Fix-add_buffer_phys_virt-align-issue.patch
+++ b/meta/recipes-kernel/kexec/kexec-tools/0003-kexec-ARM-Fix-add_buffer_phys_virt-align-issue.patch
@@ -8,7 +8,7 @@ is used by MMU, the "SECTION_SIZE" is defined with
(1 << 21), but 'add_buffer_phys_virt()' hardcode this
to (1 << 20).
-Upstream-Status: Pending
+Upstream-Status: Submitted [via email to horms@kernel.org,http://lists.infradead.org/pipermail/kexec/2024-April/029903.html]
Suggested-By:fredrik.markstrom@gmail.com
Signed-off-by: Haiqing Bai <Haiqing.Bai@windriver.com>
diff --git a/meta/recipes-kernel/kexec/kexec-tools_2.0.28.bb b/meta/recipes-kernel/kexec/kexec-tools_2.0.28.bb
index dec821ea88..b60c51df4a 100644
--- a/meta/recipes-kernel/kexec/kexec-tools_2.0.28.bb
+++ b/meta/recipes-kernel/kexec/kexec-tools_2.0.28.bb
@@ -18,6 +18,7 @@ SRC_URI = "${KERNELORG_MIRROR}/linux/utils/kernel/kexec/kexec-tools-${PV}.tar.gz
file://0005-Disable-PIE-during-link.patch \
file://0001-arm64-kexec-disabled-check-if-kaslr-seed-dtb-propert.patch \
file://Fix-building-on-x86_64-with-binutils-2.41.patch \
+ file://0001-x86-linux-setup.c-Use-POSIX-basename-API.patch \
"
SRC_URI[sha256sum] = "f33d2660b3e38d25a127e87097978e0f7a9a73ab5151a29eb80974d169ff6a29"
@@ -44,15 +45,15 @@ do_compile:prepend() {
do_install:append () {
install -d ${D}${sysconfdir}/sysconfig
- install -m 0644 ${WORKDIR}/kdump.conf ${D}${sysconfdir}/sysconfig
+ install -m 0644 ${UNPACKDIR}/kdump.conf ${D}${sysconfdir}/sysconfig
if ${@bb.utils.contains('DISTRO_FEATURES', 'sysvinit', 'true', 'false', d)}; then
- install -D -m 0755 ${WORKDIR}/kdump ${D}${sysconfdir}/init.d/kdump
+ install -D -m 0755 ${UNPACKDIR}/kdump ${D}${sysconfdir}/init.d/kdump
fi
if ${@bb.utils.contains('DISTRO_FEATURES', 'systemd', 'true', 'false', d)}; then
- install -D -m 0755 ${WORKDIR}/kdump ${D}${libexecdir}/kdump-helper
- install -D -m 0644 ${WORKDIR}/kdump.service ${D}${systemd_system_unitdir}/kdump.service
+ install -D -m 0755 ${UNPACKDIR}/kdump ${D}${libexecdir}/kdump-helper
+ install -D -m 0644 ${UNPACKDIR}/kdump.service ${D}${systemd_system_unitdir}/kdump.service
sed -i -e 's,@LIBEXECDIR@,${libexecdir},g' ${D}${systemd_system_unitdir}/kdump.service
fi
}
diff --git a/meta/recipes-kernel/kmod/depmodwrapper-cross_1.0.bb b/meta/recipes-kernel/kmod/depmodwrapper-cross_1.0.bb
index 6c0739d64f..29f34d7f36 100644
--- a/meta/recipes-kernel/kmod/depmodwrapper-cross_1.0.bb
+++ b/meta/recipes-kernel/kmod/depmodwrapper-cross_1.0.bb
@@ -1,7 +1,8 @@
SUMMARY = "Wrapper script for the Linux kernel module dependency indexer"
LICENSE = "MIT"
-S = "${WORKDIR}"
+S = "${WORKDIR}/sources"
+UNPACKDIR = "${S}"
INHIBIT_DEFAULT_DEPS = "1"
# The kernel and the staging dir for it is machine specific
diff --git a/meta/recipes-kernel/kmod/kmod_31.bb b/meta/recipes-kernel/kmod/kmod_31.bb
index 6ae83a7c66..718a5565b4 100644
--- a/meta/recipes-kernel/kmod/kmod_31.bb
+++ b/meta/recipes-kernel/kmod/kmod_31.bb
@@ -63,7 +63,7 @@ do_install:append () {
install -dm755 ${D}${sysconfdir}/modprobe.d
# install depmod.d file for search/ dir
- install -Dm644 "${WORKDIR}/depmod-search.conf" "${D}${nonarch_base_libdir}/depmod.d/search.conf"
+ install -Dm644 "${UNPACKDIR}/depmod-search.conf" "${D}${nonarch_base_libdir}/depmod.d/search.conf"
# Add .debug to the exclude path for depmod
echo "exclude .debug" > ${D}${nonarch_base_libdir}/depmod.d/exclude.conf
diff --git a/meta/recipes-kernel/linux-firmware/linux-firmware_20240312.bb b/meta/recipes-kernel/linux-firmware/linux-firmware_20240312.bb
index ff79bb9b33..13538afede 100644
--- a/meta/recipes-kernel/linux-firmware/linux-firmware_20240312.bb
+++ b/meta/recipes-kernel/linux-firmware/linux-firmware_20240312.bb
@@ -322,7 +322,7 @@ PACKAGES =+ "${PN}-amphion-vpu-license ${PN}-amphion-vpu \
${PN}-cnm-license ${PN}-cnm \
${PN}-atheros-license ${PN}-ar5523 ${PN}-ar9170 ${PN}-ath6k ${PN}-ath9k ${PN}-ath3k \
${PN}-carl9170 \
- ${PN}-ar3k-license ${PN}-ar3k ${PN}-ath10k-license ${PN}-ath10k ${PN}-ath11k ${PN}-qca \
+ ${PN}-ar3k-license ${PN}-ar3k ${PN}-ath10k-license ${PN}-ath10k ${PN}-ath11k ${PN}-ath12k ${PN}-qca \
\
${PN}-imx-sdma-license ${PN}-imx-sdma-imx6q ${PN}-imx-sdma-imx7d \
\
@@ -343,6 +343,7 @@ PACKAGES =+ "${PN}-amphion-vpu-license ${PN}-amphion-vpu \
${PN}-ibt-license ${PN}-ibt \
${PN}-ibt-11-5 ${PN}-ibt-12-16 ${PN}-ibt-hw-37-7 ${PN}-ibt-hw-37-8 \
${PN}-ibt-17 \
+ ${PN}-ibt-18 \
${PN}-ibt-20 \
${PN}-ibt-misc \
${PN}-i915-license ${PN}-i915 \
@@ -487,6 +488,10 @@ FILES:${PN}-ath11k = " \
${nonarch_base_libdir}/firmware/ath11k \
"
+FILES:${PN}-ath12k = " \
+ ${nonarch_base_libdir}/firmware/ath12k \
+"
+
FILES:${PN}-qca = " \
${nonarch_base_libdir}/firmware/qca \
"
@@ -494,6 +499,7 @@ FILES:${PN}-qca = " \
RDEPENDS:${PN}-ar3k += "${PN}-ar3k-license ${PN}-atheros-license"
RDEPENDS:${PN}-ath10k += "${PN}-ath10k-license"
RDEPENDS:${PN}-ath11k += "${PN}-ath10k-license"
+RDEPENDS:${PN}-ath12k += "${PN}-ath10k-license"
RDEPENDS:${PN}-qca += "${PN}-ath10k-license"
# For ralink
@@ -1272,6 +1278,7 @@ LICENSE:${PN}-ibt-hw-37-8 = "Firmware-ibt_firmware"
LICENSE:${PN}-ibt-11-5 = "Firmware-ibt_firmware"
LICENSE:${PN}-ibt-12-16 = "Firmware-ibt_firmware"
LICENSE:${PN}-ibt-17 = "Firmware-ibt_firmware"
+LICENSE:${PN}-ibt-18 = "Firmware-ibt_firmware"
LICENSE:${PN}-ibt-20 = "Firmware-ibt_firmware"
LICENSE:${PN}-ibt-misc = "Firmware-ibt_firmware"
@@ -1281,6 +1288,7 @@ FILES:${PN}-ibt-hw-37-8 = "${nonarch_base_libdir}/firmware/intel/ibt-hw-37.8*.bs
FILES:${PN}-ibt-11-5 = "${nonarch_base_libdir}/firmware/intel/ibt-11-5.sfi ${nonarch_base_libdir}/firmware/intel/ibt-11-5.ddc"
FILES:${PN}-ibt-12-16 = "${nonarch_base_libdir}/firmware/intel/ibt-12-16.sfi ${nonarch_base_libdir}/firmware/intel/ibt-12-16.ddc"
FILES:${PN}-ibt-17 = "${nonarch_base_libdir}/firmware/intel/ibt-17-*.sfi ${nonarch_base_libdir}/firmware/intel/ibt-17-*.ddc"
+FILES:${PN}-ibt-18 = "${nonarch_base_libdir}/firmware/intel/ibt-18-*.sfi ${nonarch_base_libdir}/firmware/intel/ibt-18-*.ddc"
FILES:${PN}-ibt-20 = "${nonarch_base_libdir}/firmware/intel/ibt-20-*.sfi ${nonarch_base_libdir}/firmware/intel/ibt-20-*.ddc"
FILES:${PN}-ibt-misc = "${nonarch_base_libdir}/firmware/intel/ibt-*"
@@ -1289,6 +1297,7 @@ RDEPENDS:${PN}-ibt-hw-37.8 = "${PN}-ibt-license"
RDEPENDS:${PN}-ibt-11-5 = "${PN}-ibt-license"
RDEPENDS:${PN}-ibt-12-16 = "${PN}-ibt-license"
RDEPENDS:${PN}-ibt-17 = "${PN}-ibt-license"
+RDEPENDS:${PN}-ibt-18 = "${PN}-ibt-license"
RDEPENDS:${PN}-ibt-20 = "${PN}-ibt-license"
RDEPENDS:${PN}-ibt-misc = "${PN}-ibt-license"
diff --git a/meta/recipes-kernel/linux/cve-exclusion_6.6.inc b/meta/recipes-kernel/linux/cve-exclusion_6.6.inc
index bb9ba49c48..9f1f03ac53 100644
--- a/meta/recipes-kernel/linux/cve-exclusion_6.6.inc
+++ b/meta/recipes-kernel/linux/cve-exclusion_6.6.inc
@@ -1,9 +1,9 @@
# Auto-generated CVE metadata, DO NOT EDIT BY HAND.
-# Generated at 2024-03-28 16:40:04.102652+00:00 for version 6.6.23
+# Generated at 2024-05-02 12:41:43.351358+00:00 for version 6.6.29
python check_kernel_cve_status_version() {
- this_version = "6.6.23"
+ this_version = "6.6.29"
kernel_version = d.getVar("LINUX_VERSION")
if kernel_version != this_version:
bb.warn("Kernel CVE status needs updating: generated for %s but kernel is %s" % (this_version, kernel_version))
@@ -2980,6 +2980,10 @@ CVE_STATUS[CVE-2019-25044] = "fixed-version: Fixed from version 5.2rc4"
CVE_STATUS[CVE-2019-25045] = "fixed-version: Fixed from version 5.1"
+CVE_STATUS[CVE-2019-25160] = "fixed-version: Fixed from version 5.0"
+
+CVE_STATUS[CVE-2019-25162] = "fixed-version: Fixed from version 6.0rc1"
+
CVE_STATUS[CVE-2019-3016] = "fixed-version: Fixed from version 5.6rc1"
CVE_STATUS[CVE-2019-3459] = "fixed-version: Fixed from version 5.1rc1"
@@ -3452,6 +3456,32 @@ CVE_STATUS[CVE-2020-36694] = "fixed-version: Fixed from version 5.10"
CVE_STATUS[CVE-2020-36766] = "fixed-version: Fixed from version 5.9rc1"
+CVE_STATUS[CVE-2020-36775] = "fixed-version: Fixed from version 5.7rc1"
+
+CVE_STATUS[CVE-2020-36776] = "fixed-version: Fixed from version 5.13rc1"
+
+CVE_STATUS[CVE-2020-36777] = "fixed-version: Fixed from version 5.13rc1"
+
+CVE_STATUS[CVE-2020-36778] = "fixed-version: Fixed from version 5.13rc1"
+
+CVE_STATUS[CVE-2020-36779] = "fixed-version: Fixed from version 5.13rc1"
+
+CVE_STATUS[CVE-2020-36780] = "fixed-version: Fixed from version 5.13rc1"
+
+CVE_STATUS[CVE-2020-36781] = "fixed-version: Fixed from version 5.13rc1"
+
+CVE_STATUS[CVE-2020-36782] = "fixed-version: Fixed from version 5.13rc1"
+
+CVE_STATUS[CVE-2020-36783] = "fixed-version: Fixed from version 5.13rc1"
+
+CVE_STATUS[CVE-2020-36784] = "fixed-version: Fixed from version 5.13rc1"
+
+CVE_STATUS[CVE-2020-36785] = "fixed-version: Fixed from version 5.13rc1"
+
+CVE_STATUS[CVE-2020-36786] = "fixed-version: Fixed from version 5.13rc1"
+
+CVE_STATUS[CVE-2020-36787] = "fixed-version: Fixed from version 5.13rc1"
+
CVE_STATUS[CVE-2020-3702] = "fixed-version: Fixed from version 5.12rc1"
CVE_STATUS[CVE-2020-4788] = "fixed-version: Fixed from version 5.10rc5"
@@ -3940,6 +3970,540 @@ CVE_STATUS[CVE-2021-45868] = "fixed-version: Fixed from version 5.16rc1"
CVE_STATUS[CVE-2021-46283] = "fixed-version: Fixed from version 5.13rc7"
+CVE_STATUS[CVE-2021-46904] = "fixed-version: Fixed from version 5.12rc7"
+
+CVE_STATUS[CVE-2021-46905] = "fixed-version: Fixed from version 5.13rc1"
+
+CVE_STATUS[CVE-2021-46906] = "fixed-version: Fixed from version 5.13rc5"
+
+CVE_STATUS[CVE-2021-46908] = "fixed-version: Fixed from version 5.12rc8"
+
+CVE_STATUS[CVE-2021-46909] = "fixed-version: Fixed from version 5.12rc8"
+
+CVE_STATUS[CVE-2021-46910] = "fixed-version: Fixed from version 5.12rc8"
+
+CVE_STATUS[CVE-2021-46911] = "fixed-version: Fixed from version 5.12rc8"
+
+CVE_STATUS[CVE-2021-46912] = "fixed-version: Fixed from version 5.12rc8"
+
+CVE_STATUS[CVE-2021-46913] = "fixed-version: Fixed from version 5.12rc8"
+
+CVE_STATUS[CVE-2021-46914] = "fixed-version: Fixed from version 5.12rc8"
+
+CVE_STATUS[CVE-2021-46915] = "fixed-version: Fixed from version 5.12rc8"
+
+CVE_STATUS[CVE-2021-46916] = "fixed-version: Fixed from version 5.12rc8"
+
+CVE_STATUS[CVE-2021-46917] = "fixed-version: Fixed from version 5.12rc8"
+
+CVE_STATUS[CVE-2021-46918] = "fixed-version: Fixed from version 5.12rc8"
+
+CVE_STATUS[CVE-2021-46919] = "fixed-version: Fixed from version 5.12rc8"
+
+CVE_STATUS[CVE-2021-46920] = "fixed-version: Fixed from version 5.12rc8"
+
+CVE_STATUS[CVE-2021-46921] = "fixed-version: Fixed from version 5.12"
+
+CVE_STATUS[CVE-2021-46922] = "fixed-version: Fixed from version 5.12"
+
+CVE_STATUS[CVE-2021-46923] = "fixed-version: Fixed from version 5.16rc8"
+
+CVE_STATUS[CVE-2021-46924] = "fixed-version: Fixed from version 5.16rc8"
+
+CVE_STATUS[CVE-2021-46925] = "fixed-version: Fixed from version 5.16rc8"
+
+CVE_STATUS[CVE-2021-46926] = "fixed-version: Fixed from version 5.16rc7"
+
+CVE_STATUS[CVE-2021-46927] = "fixed-version: Fixed from version 5.16rc8"
+
+CVE_STATUS[CVE-2021-46928] = "fixed-version: Fixed from version 5.16rc7"
+
+CVE_STATUS[CVE-2021-46929] = "fixed-version: Fixed from version 5.16rc8"
+
+CVE_STATUS[CVE-2021-46930] = "fixed-version: Fixed from version 5.16rc8"
+
+CVE_STATUS[CVE-2021-46931] = "fixed-version: Fixed from version 5.16rc8"
+
+CVE_STATUS[CVE-2021-46932] = "fixed-version: Fixed from version 5.16rc8"
+
+CVE_STATUS[CVE-2021-46933] = "fixed-version: Fixed from version 5.16rc8"
+
+CVE_STATUS[CVE-2021-46934] = "fixed-version: Fixed from version 5.16rc8"
+
+CVE_STATUS[CVE-2021-46935] = "fixed-version: Fixed from version 5.16rc8"
+
+CVE_STATUS[CVE-2021-46936] = "fixed-version: Fixed from version 5.16rc8"
+
+CVE_STATUS[CVE-2021-46937] = "fixed-version: Fixed from version 5.16rc8"
+
+CVE_STATUS[CVE-2021-46938] = "fixed-version: Fixed from version 5.13rc1"
+
+CVE_STATUS[CVE-2021-46939] = "fixed-version: Fixed from version 5.13rc1"
+
+CVE_STATUS[CVE-2021-46940] = "fixed-version: Fixed from version 5.13rc1"
+
+CVE_STATUS[CVE-2021-46941] = "fixed-version: Fixed from version 5.13rc1"
+
+CVE_STATUS[CVE-2021-46942] = "fixed-version: Fixed from version 5.13rc1"
+
+CVE_STATUS[CVE-2021-46943] = "fixed-version: Fixed from version 5.13rc1"
+
+CVE_STATUS[CVE-2021-46944] = "fixed-version: Fixed from version 5.13rc1"
+
+CVE_STATUS[CVE-2021-46945] = "fixed-version: Fixed from version 5.13rc1"
+
+CVE_STATUS[CVE-2021-46947] = "fixed-version: Fixed from version 5.13rc1"
+
+CVE_STATUS[CVE-2021-46948] = "fixed-version: Fixed from version 5.13rc1"
+
+CVE_STATUS[CVE-2021-46949] = "fixed-version: Fixed from version 5.13rc1"
+
+CVE_STATUS[CVE-2021-46950] = "fixed-version: Fixed from version 5.13rc1"
+
+CVE_STATUS[CVE-2021-46951] = "fixed-version: Fixed from version 5.13rc1"
+
+CVE_STATUS[CVE-2021-46952] = "fixed-version: Fixed from version 5.13rc1"
+
+CVE_STATUS[CVE-2021-46953] = "fixed-version: Fixed from version 5.13rc1"
+
+CVE_STATUS[CVE-2021-46954] = "fixed-version: Fixed from version 5.13rc1"
+
+CVE_STATUS[CVE-2021-46955] = "fixed-version: Fixed from version 5.13rc1"
+
+CVE_STATUS[CVE-2021-46956] = "fixed-version: Fixed from version 5.13rc1"
+
+CVE_STATUS[CVE-2021-46957] = "fixed-version: Fixed from version 5.13rc1"
+
+CVE_STATUS[CVE-2021-46958] = "fixed-version: Fixed from version 5.13rc1"
+
+CVE_STATUS[CVE-2021-46959] = "fixed-version: Fixed from version 5.13rc1"
+
+CVE_STATUS[CVE-2021-46960] = "fixed-version: Fixed from version 5.13rc1"
+
+CVE_STATUS[CVE-2021-46961] = "fixed-version: Fixed from version 5.13rc1"
+
+CVE_STATUS[CVE-2021-46962] = "fixed-version: Fixed from version 5.13rc1"
+
+CVE_STATUS[CVE-2021-46963] = "fixed-version: Fixed from version 5.13rc1"
+
+CVE_STATUS[CVE-2021-46964] = "fixed-version: Fixed from version 5.13rc1"
+
+CVE_STATUS[CVE-2021-46965] = "fixed-version: Fixed from version 5.13rc1"
+
+CVE_STATUS[CVE-2021-46966] = "fixed-version: Fixed from version 5.13rc1"
+
+CVE_STATUS[CVE-2021-46967] = "fixed-version: Fixed from version 5.13rc1"
+
+CVE_STATUS[CVE-2021-46968] = "fixed-version: Fixed from version 5.13rc1"
+
+CVE_STATUS[CVE-2021-46969] = "fixed-version: Fixed from version 5.13rc1"
+
+CVE_STATUS[CVE-2021-46970] = "fixed-version: Fixed from version 5.13rc1"
+
+CVE_STATUS[CVE-2021-46971] = "fixed-version: Fixed from version 5.13rc1"
+
+CVE_STATUS[CVE-2021-46972] = "fixed-version: Fixed from version 5.13rc1"
+
+CVE_STATUS[CVE-2021-46973] = "fixed-version: Fixed from version 5.13rc1"
+
+CVE_STATUS[CVE-2021-46974] = "fixed-version: Fixed from version 5.13rc1"
+
+CVE_STATUS[CVE-2021-46976] = "fixed-version: Fixed from version 5.13rc2"
+
+CVE_STATUS[CVE-2021-46977] = "fixed-version: Fixed from version 5.13rc2"
+
+CVE_STATUS[CVE-2021-46978] = "fixed-version: Fixed from version 5.13rc2"
+
+CVE_STATUS[CVE-2021-46979] = "fixed-version: Fixed from version 5.13rc2"
+
+CVE_STATUS[CVE-2021-46980] = "fixed-version: Fixed from version 5.13rc2"
+
+CVE_STATUS[CVE-2021-46981] = "fixed-version: Fixed from version 5.13rc2"
+
+CVE_STATUS[CVE-2021-46982] = "fixed-version: Fixed from version 5.13rc2"
+
+CVE_STATUS[CVE-2021-46983] = "fixed-version: Fixed from version 5.13rc2"
+
+CVE_STATUS[CVE-2021-46984] = "fixed-version: Fixed from version 5.13rc2"
+
+CVE_STATUS[CVE-2021-46985] = "fixed-version: Fixed from version 5.13rc2"
+
+CVE_STATUS[CVE-2021-46986] = "fixed-version: Fixed from version 5.13rc2"
+
+CVE_STATUS[CVE-2021-46987] = "fixed-version: Fixed from version 5.13rc2"
+
+CVE_STATUS[CVE-2021-46988] = "fixed-version: Fixed from version 5.13rc2"
+
+CVE_STATUS[CVE-2021-46989] = "fixed-version: Fixed from version 5.13rc2"
+
+CVE_STATUS[CVE-2021-46990] = "fixed-version: Fixed from version 5.13rc2"
+
+CVE_STATUS[CVE-2021-46991] = "fixed-version: Fixed from version 5.13rc1"
+
+CVE_STATUS[CVE-2021-46992] = "fixed-version: Fixed from version 5.13rc1"
+
+CVE_STATUS[CVE-2021-46993] = "fixed-version: Fixed from version 5.13rc1"
+
+CVE_STATUS[CVE-2021-46994] = "fixed-version: Fixed from version 5.13rc1"
+
+CVE_STATUS[CVE-2021-46995] = "fixed-version: Fixed from version 5.13rc1"
+
+CVE_STATUS[CVE-2021-46996] = "fixed-version: Fixed from version 5.13rc1"
+
+CVE_STATUS[CVE-2021-46997] = "fixed-version: Fixed from version 5.13rc1"
+
+CVE_STATUS[CVE-2021-46998] = "fixed-version: Fixed from version 5.13rc1"
+
+CVE_STATUS[CVE-2021-46999] = "fixed-version: Fixed from version 5.13rc1"
+
+CVE_STATUS[CVE-2021-47000] = "fixed-version: Fixed from version 5.13rc1"
+
+CVE_STATUS[CVE-2021-47001] = "fixed-version: Fixed from version 5.13rc1"
+
+CVE_STATUS[CVE-2021-47002] = "fixed-version: Fixed from version 5.13rc1"
+
+CVE_STATUS[CVE-2021-47003] = "fixed-version: Fixed from version 5.13rc1"
+
+CVE_STATUS[CVE-2021-47004] = "fixed-version: Fixed from version 5.13rc1"
+
+CVE_STATUS[CVE-2021-47005] = "fixed-version: Fixed from version 5.13rc1"
+
+CVE_STATUS[CVE-2021-47006] = "fixed-version: Fixed from version 5.13rc1"
+
+CVE_STATUS[CVE-2021-47007] = "fixed-version: Fixed from version 5.13rc1"
+
+CVE_STATUS[CVE-2021-47008] = "fixed-version: Fixed from version 5.13rc1"
+
+CVE_STATUS[CVE-2021-47009] = "fixed-version: Fixed from version 5.13rc2"
+
+CVE_STATUS[CVE-2021-47010] = "fixed-version: Fixed from version 5.13rc1"
+
+CVE_STATUS[CVE-2021-47011] = "fixed-version: Fixed from version 5.13rc1"
+
+CVE_STATUS[CVE-2021-47012] = "fixed-version: Fixed from version 5.13rc1"
+
+CVE_STATUS[CVE-2021-47013] = "fixed-version: Fixed from version 5.13rc1"
+
+CVE_STATUS[CVE-2021-47014] = "fixed-version: Fixed from version 5.13rc1"
+
+CVE_STATUS[CVE-2021-47015] = "fixed-version: Fixed from version 5.13rc1"
+
+CVE_STATUS[CVE-2021-47016] = "fixed-version: Fixed from version 5.13rc1"
+
+CVE_STATUS[CVE-2021-47017] = "fixed-version: Fixed from version 5.13rc1"
+
+CVE_STATUS[CVE-2021-47018] = "fixed-version: Fixed from version 5.13rc1"
+
+CVE_STATUS[CVE-2021-47019] = "fixed-version: Fixed from version 5.13rc1"
+
+CVE_STATUS[CVE-2021-47020] = "fixed-version: Fixed from version 5.13rc1"
+
+CVE_STATUS[CVE-2021-47021] = "fixed-version: Fixed from version 5.13rc1"
+
+CVE_STATUS[CVE-2021-47022] = "fixed-version: Fixed from version 5.13rc1"
+
+CVE_STATUS[CVE-2021-47023] = "fixed-version: Fixed from version 5.13rc1"
+
+CVE_STATUS[CVE-2021-47024] = "fixed-version: Fixed from version 5.13rc1"
+
+CVE_STATUS[CVE-2021-47025] = "fixed-version: Fixed from version 5.13rc1"
+
+CVE_STATUS[CVE-2021-47026] = "fixed-version: Fixed from version 5.13rc1"
+
+CVE_STATUS[CVE-2021-47027] = "fixed-version: Fixed from version 5.13rc1"
+
+CVE_STATUS[CVE-2021-47028] = "fixed-version: Fixed from version 5.13rc1"
+
+CVE_STATUS[CVE-2021-47029] = "fixed-version: Fixed from version 5.13rc1"
+
+CVE_STATUS[CVE-2021-47030] = "fixed-version: Fixed from version 5.13rc1"
+
+CVE_STATUS[CVE-2021-47031] = "fixed-version: Fixed from version 5.13rc1"
+
+CVE_STATUS[CVE-2021-47032] = "fixed-version: Fixed from version 5.13rc1"
+
+CVE_STATUS[CVE-2021-47033] = "fixed-version: Fixed from version 5.13rc1"
+
+CVE_STATUS[CVE-2021-47034] = "fixed-version: Fixed from version 5.13rc1"
+
+CVE_STATUS[CVE-2021-47035] = "fixed-version: Fixed from version 5.13rc1"
+
+CVE_STATUS[CVE-2021-47036] = "fixed-version: Fixed from version 5.13rc1"
+
+CVE_STATUS[CVE-2021-47037] = "fixed-version: Fixed from version 5.13rc1"
+
+CVE_STATUS[CVE-2021-47038] = "fixed-version: Fixed from version 5.13rc1"
+
+CVE_STATUS[CVE-2021-47039] = "fixed-version: Fixed from version 5.13rc1"
+
+CVE_STATUS[CVE-2021-47040] = "fixed-version: Fixed from version 5.13rc1"
+
+CVE_STATUS[CVE-2021-47041] = "fixed-version: Fixed from version 5.13rc1"
+
+CVE_STATUS[CVE-2021-47042] = "fixed-version: Fixed from version 5.13rc1"
+
+CVE_STATUS[CVE-2021-47043] = "fixed-version: Fixed from version 5.13rc1"
+
+CVE_STATUS[CVE-2021-47044] = "fixed-version: Fixed from version 5.13rc1"
+
+CVE_STATUS[CVE-2021-47045] = "fixed-version: Fixed from version 5.13rc1"
+
+CVE_STATUS[CVE-2021-47046] = "fixed-version: Fixed from version 5.13rc1"
+
+CVE_STATUS[CVE-2021-47047] = "fixed-version: Fixed from version 5.13rc1"
+
+CVE_STATUS[CVE-2021-47048] = "fixed-version: Fixed from version 5.13rc1"
+
+CVE_STATUS[CVE-2021-47049] = "fixed-version: Fixed from version 5.13rc1"
+
+CVE_STATUS[CVE-2021-47050] = "fixed-version: Fixed from version 5.13rc1"
+
+CVE_STATUS[CVE-2021-47051] = "fixed-version: Fixed from version 5.13rc1"
+
+CVE_STATUS[CVE-2021-47052] = "fixed-version: Fixed from version 5.13rc1"
+
+CVE_STATUS[CVE-2021-47053] = "fixed-version: Fixed from version 5.13rc1"
+
+CVE_STATUS[CVE-2021-47054] = "fixed-version: Fixed from version 5.13rc1"
+
+CVE_STATUS[CVE-2021-47055] = "fixed-version: Fixed from version 5.13rc1"
+
+CVE_STATUS[CVE-2021-47056] = "fixed-version: Fixed from version 5.13rc1"
+
+CVE_STATUS[CVE-2021-47057] = "fixed-version: Fixed from version 5.13rc1"
+
+CVE_STATUS[CVE-2021-47058] = "fixed-version: Fixed from version 5.13rc1"
+
+CVE_STATUS[CVE-2021-47059] = "fixed-version: Fixed from version 5.13rc1"
+
+CVE_STATUS[CVE-2021-47060] = "fixed-version: Fixed from version 5.13rc1"
+
+CVE_STATUS[CVE-2021-47061] = "fixed-version: Fixed from version 5.13rc1"
+
+CVE_STATUS[CVE-2021-47062] = "fixed-version: Fixed from version 5.13rc1"
+
+CVE_STATUS[CVE-2021-47063] = "fixed-version: Fixed from version 5.13rc1"
+
+CVE_STATUS[CVE-2021-47064] = "fixed-version: Fixed from version 5.13rc1"
+
+CVE_STATUS[CVE-2021-47065] = "fixed-version: Fixed from version 5.13rc1"
+
+CVE_STATUS[CVE-2021-47066] = "fixed-version: Fixed from version 5.13rc1"
+
+CVE_STATUS[CVE-2021-47067] = "fixed-version: Fixed from version 5.13rc1"
+
+CVE_STATUS[CVE-2021-47068] = "fixed-version: Fixed from version 5.13rc1"
+
+CVE_STATUS[CVE-2021-47069] = "fixed-version: Fixed from version 5.13rc3"
+
+CVE_STATUS[CVE-2021-47070] = "fixed-version: Fixed from version 5.13rc3"
+
+CVE_STATUS[CVE-2021-47071] = "fixed-version: Fixed from version 5.13rc3"
+
+CVE_STATUS[CVE-2021-47072] = "fixed-version: Fixed from version 5.13rc3"
+
+CVE_STATUS[CVE-2021-47073] = "fixed-version: Fixed from version 5.13rc3"
+
+CVE_STATUS[CVE-2021-47074] = "fixed-version: Fixed from version 5.13rc3"
+
+CVE_STATUS[CVE-2021-47075] = "fixed-version: Fixed from version 5.13rc3"
+
+CVE_STATUS[CVE-2021-47076] = "fixed-version: Fixed from version 5.13rc3"
+
+CVE_STATUS[CVE-2021-47077] = "fixed-version: Fixed from version 5.13rc3"
+
+CVE_STATUS[CVE-2021-47078] = "fixed-version: Fixed from version 5.13rc3"
+
+CVE_STATUS[CVE-2021-47079] = "fixed-version: Fixed from version 5.13rc3"
+
+CVE_STATUS[CVE-2021-47080] = "fixed-version: Fixed from version 5.13rc3"
+
+CVE_STATUS[CVE-2021-47081] = "fixed-version: Fixed from version 5.13rc3"
+
+CVE_STATUS[CVE-2021-47082] = "fixed-version: Fixed from version 5.16rc7"
+
+CVE_STATUS[CVE-2021-47083] = "fixed-version: Fixed from version 5.16rc7"
+
+CVE_STATUS[CVE-2021-47086] = "fixed-version: Fixed from version 5.16rc7"
+
+CVE_STATUS[CVE-2021-47087] = "fixed-version: Fixed from version 5.16rc7"
+
+CVE_STATUS[CVE-2021-47088] = "fixed-version: Fixed from version 5.16rc7"
+
+CVE_STATUS[CVE-2021-47089] = "fixed-version: Fixed from version 5.16rc7"
+
+CVE_STATUS[CVE-2021-47090] = "fixed-version: Fixed from version 5.16rc7"
+
+CVE_STATUS[CVE-2021-47091] = "fixed-version: Fixed from version 5.16rc7"
+
+CVE_STATUS[CVE-2021-47092] = "fixed-version: Fixed from version 5.16rc7"
+
+CVE_STATUS[CVE-2021-47093] = "fixed-version: Fixed from version 5.16rc7"
+
+CVE_STATUS[CVE-2021-47094] = "fixed-version: Fixed from version 5.16rc7"
+
+CVE_STATUS[CVE-2021-47095] = "fixed-version: Fixed from version 5.16rc7"
+
+CVE_STATUS[CVE-2021-47096] = "fixed-version: Fixed from version 5.16rc7"
+
+CVE_STATUS[CVE-2021-47097] = "fixed-version: Fixed from version 5.16rc7"
+
+CVE_STATUS[CVE-2021-47098] = "fixed-version: Fixed from version 5.16rc7"
+
+CVE_STATUS[CVE-2021-47099] = "fixed-version: Fixed from version 5.16rc7"
+
+CVE_STATUS[CVE-2021-47100] = "fixed-version: Fixed from version 5.16rc7"
+
+CVE_STATUS[CVE-2021-47101] = "fixed-version: Fixed from version 5.16rc7"
+
+CVE_STATUS[CVE-2021-47102] = "fixed-version: Fixed from version 5.16rc7"
+
+CVE_STATUS[CVE-2021-47103] = "fixed-version: Fixed from version 5.16rc7"
+
+CVE_STATUS[CVE-2021-47104] = "fixed-version: Fixed from version 5.16rc7"
+
+CVE_STATUS[CVE-2021-47105] = "fixed-version: Fixed from version 5.16rc7"
+
+CVE_STATUS[CVE-2021-47106] = "fixed-version: Fixed from version 5.16rc7"
+
+CVE_STATUS[CVE-2021-47107] = "fixed-version: Fixed from version 5.16rc7"
+
+CVE_STATUS[CVE-2021-47108] = "fixed-version: Fixed from version 5.16rc7"
+
+CVE_STATUS[CVE-2021-47109] = "fixed-version: Fixed from version 5.13rc7"
+
+CVE_STATUS[CVE-2021-47110] = "fixed-version: Fixed from version 5.13rc2"
+
+CVE_STATUS[CVE-2021-47111] = "fixed-version: Fixed from version 5.13rc6"
+
+CVE_STATUS[CVE-2021-47112] = "fixed-version: Fixed from version 5.13rc2"
+
+CVE_STATUS[CVE-2021-47113] = "fixed-version: Fixed from version 5.13rc5"
+
+CVE_STATUS[CVE-2021-47114] = "fixed-version: Fixed from version 5.13rc5"
+
+CVE_STATUS[CVE-2021-47116] = "fixed-version: Fixed from version 5.13rc5"
+
+CVE_STATUS[CVE-2021-47117] = "fixed-version: Fixed from version 5.13rc5"
+
+CVE_STATUS[CVE-2021-47118] = "fixed-version: Fixed from version 5.13rc5"
+
+CVE_STATUS[CVE-2021-47119] = "fixed-version: Fixed from version 5.13rc5"
+
+CVE_STATUS[CVE-2021-47120] = "fixed-version: Fixed from version 5.13rc5"
+
+CVE_STATUS[CVE-2021-47121] = "fixed-version: Fixed from version 5.13rc5"
+
+CVE_STATUS[CVE-2021-47122] = "fixed-version: Fixed from version 5.13rc5"
+
+CVE_STATUS[CVE-2021-47123] = "fixed-version: Fixed from version 5.13rc2"
+
+CVE_STATUS[CVE-2021-47124] = "fixed-version: Fixed from version 5.13rc2"
+
+CVE_STATUS[CVE-2021-47125] = "fixed-version: Fixed from version 5.13rc5"
+
+CVE_STATUS[CVE-2021-47126] = "fixed-version: Fixed from version 5.13rc5"
+
+CVE_STATUS[CVE-2021-47127] = "fixed-version: Fixed from version 5.13rc5"
+
+CVE_STATUS[CVE-2021-47128] = "fixed-version: Fixed from version 5.13rc5"
+
+CVE_STATUS[CVE-2021-47129] = "fixed-version: Fixed from version 5.13rc5"
+
+CVE_STATUS[CVE-2021-47130] = "fixed-version: Fixed from version 5.13rc5"
+
+CVE_STATUS[CVE-2021-47131] = "fixed-version: Fixed from version 5.13rc5"
+
+CVE_STATUS[CVE-2021-47132] = "fixed-version: Fixed from version 5.13rc5"
+
+CVE_STATUS[CVE-2021-47133] = "fixed-version: Fixed from version 5.13rc5"
+
+CVE_STATUS[CVE-2021-47134] = "fixed-version: Fixed from version 5.13rc5"
+
+CVE_STATUS[CVE-2021-47135] = "fixed-version: Fixed from version 5.13rc5"
+
+CVE_STATUS[CVE-2021-47136] = "fixed-version: Fixed from version 5.13rc4"
+
+CVE_STATUS[CVE-2021-47137] = "fixed-version: Fixed from version 5.13rc4"
+
+CVE_STATUS[CVE-2021-47138] = "fixed-version: Fixed from version 5.13rc4"
+
+CVE_STATUS[CVE-2021-47139] = "fixed-version: Fixed from version 5.13rc4"
+
+CVE_STATUS[CVE-2021-47140] = "fixed-version: Fixed from version 5.13rc4"
+
+CVE_STATUS[CVE-2021-47141] = "fixed-version: Fixed from version 5.13rc4"
+
+CVE_STATUS[CVE-2021-47142] = "fixed-version: Fixed from version 5.13rc3"
+
+CVE_STATUS[CVE-2021-47143] = "fixed-version: Fixed from version 5.13rc4"
+
+CVE_STATUS[CVE-2021-47144] = "fixed-version: Fixed from version 5.13rc3"
+
+CVE_STATUS[CVE-2021-47145] = "fixed-version: Fixed from version 5.13rc3"
+
+CVE_STATUS[CVE-2021-47146] = "fixed-version: Fixed from version 5.13rc4"
+
+CVE_STATUS[CVE-2021-47147] = "fixed-version: Fixed from version 5.13rc4"
+
+CVE_STATUS[CVE-2021-47148] = "fixed-version: Fixed from version 5.13rc4"
+
+CVE_STATUS[CVE-2021-47149] = "fixed-version: Fixed from version 5.13rc3"
+
+CVE_STATUS[CVE-2021-47150] = "fixed-version: Fixed from version 5.13rc4"
+
+CVE_STATUS[CVE-2021-47151] = "fixed-version: Fixed from version 5.13rc4"
+
+CVE_STATUS[CVE-2021-47152] = "fixed-version: Fixed from version 5.13rc4"
+
+CVE_STATUS[CVE-2021-47153] = "fixed-version: Fixed from version 5.13rc4"
+
+CVE_STATUS[CVE-2021-47158] = "fixed-version: Fixed from version 5.13rc4"
+
+CVE_STATUS[CVE-2021-47159] = "fixed-version: Fixed from version 5.13rc4"
+
+CVE_STATUS[CVE-2021-47160] = "fixed-version: Fixed from version 5.13rc4"
+
+CVE_STATUS[CVE-2021-47161] = "fixed-version: Fixed from version 5.13rc4"
+
+CVE_STATUS[CVE-2021-47162] = "fixed-version: Fixed from version 5.13rc4"
+
+CVE_STATUS[CVE-2021-47163] = "fixed-version: Fixed from version 5.13rc4"
+
+CVE_STATUS[CVE-2021-47164] = "fixed-version: Fixed from version 5.13rc4"
+
+CVE_STATUS[CVE-2021-47165] = "fixed-version: Fixed from version 5.13rc4"
+
+CVE_STATUS[CVE-2021-47166] = "fixed-version: Fixed from version 5.13rc4"
+
+CVE_STATUS[CVE-2021-47167] = "fixed-version: Fixed from version 5.13rc4"
+
+CVE_STATUS[CVE-2021-47168] = "fixed-version: Fixed from version 5.13rc4"
+
+CVE_STATUS[CVE-2021-47169] = "fixed-version: Fixed from version 5.13rc4"
+
+CVE_STATUS[CVE-2021-47170] = "fixed-version: Fixed from version 5.13rc4"
+
+CVE_STATUS[CVE-2021-47171] = "fixed-version: Fixed from version 5.13rc4"
+
+CVE_STATUS[CVE-2021-47172] = "fixed-version: Fixed from version 5.13rc4"
+
+CVE_STATUS[CVE-2021-47173] = "fixed-version: Fixed from version 5.13rc4"
+
+CVE_STATUS[CVE-2021-47174] = "fixed-version: Fixed from version 5.13rc4"
+
+CVE_STATUS[CVE-2021-47175] = "fixed-version: Fixed from version 5.13rc4"
+
+CVE_STATUS[CVE-2021-47176] = "fixed-version: Fixed from version 5.13rc4"
+
+CVE_STATUS[CVE-2021-47177] = "fixed-version: Fixed from version 5.13rc4"
+
+CVE_STATUS[CVE-2021-47178] = "fixed-version: Fixed from version 5.13rc4"
+
+CVE_STATUS[CVE-2021-47179] = "fixed-version: Fixed from version 5.13rc4"
+
+CVE_STATUS[CVE-2021-47180] = "fixed-version: Fixed from version 5.13rc4"
+
CVE_STATUS[CVE-2022-0001] = "fixed-version: Fixed from version 5.17rc8"
CVE_STATUS[CVE-2022-0002] = "fixed-version: Fixed from version 5.17rc8"
@@ -4590,6 +5154,16 @@ CVE_STATUS[CVE-2022-48502] = "fixed-version: Fixed from version 6.2rc1"
CVE_STATUS[CVE-2022-48619] = "fixed-version: Fixed from version 5.18rc1"
+CVE_STATUS[CVE-2022-48626] = "fixed-version: Fixed from version 5.17rc4"
+
+CVE_STATUS[CVE-2022-48627] = "fixed-version: Fixed from version 5.19rc7"
+
+CVE_STATUS[CVE-2022-48628] = "fixed-version: Fixed from version 6.6rc1"
+
+CVE_STATUS[CVE-2022-48629] = "fixed-version: Fixed from version 5.17"
+
+CVE_STATUS[CVE-2022-48630] = "fixed-version: Fixed from version 5.18"
+
CVE_STATUS[CVE-2023-0030] = "fixed-version: Fixed from version 5.0rc1"
CVE_STATUS[CVE-2023-0045] = "fixed-version: Fixed from version 6.2rc3"
@@ -4834,6 +5408,8 @@ CVE_STATUS[CVE-2023-28466] = "fixed-version: Fixed from version 6.3rc2"
CVE_STATUS[CVE-2023-2860] = "fixed-version: Fixed from version 6.0rc5"
+CVE_STATUS[CVE-2023-28746] = "cpe-stable-backport: Backported in 6.6.22"
+
CVE_STATUS[CVE-2023-28772] = "fixed-version: Fixed from version 5.14rc1"
CVE_STATUS[CVE-2023-28866] = "fixed-version: Fixed from version 6.3rc4"
@@ -5112,7 +5688,7 @@ CVE_STATUS[CVE-2023-46838] = "cpe-stable-backport: Backported in 6.6.14"
CVE_STATUS[CVE-2023-46862] = "fixed-version: Fixed from version 6.6"
-# CVE-2023-47233 has no known resolution
+CVE_STATUS[CVE-2023-47233] = "cpe-stable-backport: Backported in 6.6.24"
CVE_STATUS[CVE-2023-4732] = "fixed-version: Fixed from version 5.14rc1"
@@ -5208,6 +5784,294 @@ CVE_STATUS[CVE-2023-52463] = "cpe-stable-backport: Backported in 6.6.14"
CVE_STATUS[CVE-2023-52464] = "cpe-stable-backport: Backported in 6.6.14"
+CVE_STATUS[CVE-2023-52465] = "cpe-stable-backport: Backported in 6.6.14"
+
+CVE_STATUS[CVE-2023-52467] = "cpe-stable-backport: Backported in 6.6.14"
+
+CVE_STATUS[CVE-2023-52468] = "cpe-stable-backport: Backported in 6.6.14"
+
+CVE_STATUS[CVE-2023-52469] = "cpe-stable-backport: Backported in 6.6.14"
+
+CVE_STATUS[CVE-2023-52470] = "cpe-stable-backport: Backported in 6.6.14"
+
+CVE_STATUS[CVE-2023-52471] = "fixed-version: only affects 6.7rc1 onwards"
+
+CVE_STATUS[CVE-2023-52472] = "cpe-stable-backport: Backported in 6.6.14"
+
+CVE_STATUS[CVE-2023-52473] = "cpe-stable-backport: Backported in 6.6.14"
+
+CVE_STATUS[CVE-2023-52474] = "fixed-version: Fixed from version 6.4rc1"
+
+CVE_STATUS[CVE-2023-52475] = "fixed-version: Fixed from version 6.6rc6"
+
+CVE_STATUS[CVE-2023-52476] = "fixed-version: Fixed from version 6.6rc6"
+
+CVE_STATUS[CVE-2023-52477] = "fixed-version: Fixed from version 6.6rc6"
+
+CVE_STATUS[CVE-2023-52478] = "fixed-version: Fixed from version 6.6rc6"
+
+CVE_STATUS[CVE-2023-52479] = "fixed-version: Fixed from version 6.6rc5"
+
+CVE_STATUS[CVE-2023-52480] = "fixed-version: Fixed from version 6.6rc5"
+
+CVE_STATUS[CVE-2023-52481] = "fixed-version: Fixed from version 6.6rc5"
+
+CVE_STATUS[CVE-2023-52482] = "fixed-version: Fixed from version 6.6rc4"
+
+CVE_STATUS[CVE-2023-52483] = "fixed-version: Fixed from version 6.6rc6"
+
+CVE_STATUS[CVE-2023-52484] = "fixed-version: Fixed from version 6.6rc5"
+
+# CVE-2023-52485 needs backporting (fixed from 6.8rc1)
+
+CVE_STATUS[CVE-2023-52486] = "cpe-stable-backport: Backported in 6.6.15"
+
+CVE_STATUS[CVE-2023-52487] = "cpe-stable-backport: Backported in 6.6.15"
+
+CVE_STATUS[CVE-2023-52488] = "cpe-stable-backport: Backported in 6.6.15"
+
+CVE_STATUS[CVE-2023-52489] = "cpe-stable-backport: Backported in 6.6.15"
+
+CVE_STATUS[CVE-2023-52490] = "cpe-stable-backport: Backported in 6.6.15"
+
+CVE_STATUS[CVE-2023-52491] = "cpe-stable-backport: Backported in 6.6.15"
+
+CVE_STATUS[CVE-2023-52492] = "cpe-stable-backport: Backported in 6.6.15"
+
+CVE_STATUS[CVE-2023-52493] = "cpe-stable-backport: Backported in 6.6.15"
+
+CVE_STATUS[CVE-2023-52494] = "cpe-stable-backport: Backported in 6.6.15"
+
+CVE_STATUS[CVE-2023-52495] = "cpe-stable-backport: Backported in 6.6.15"
+
+CVE_STATUS[CVE-2023-52497] = "cpe-stable-backport: Backported in 6.6.15"
+
+CVE_STATUS[CVE-2023-52498] = "cpe-stable-backport: Backported in 6.6.15"
+
+CVE_STATUS[CVE-2023-52499] = "fixed-version: Fixed from version 6.6rc6"
+
+CVE_STATUS[CVE-2023-52500] = "fixed-version: Fixed from version 6.6rc2"
+
+CVE_STATUS[CVE-2023-52501] = "fixed-version: Fixed from version 6.6rc2"
+
+CVE_STATUS[CVE-2023-52502] = "fixed-version: Fixed from version 6.6rc6"
+
+CVE_STATUS[CVE-2023-52503] = "fixed-version: Fixed from version 6.6rc6"
+
+CVE_STATUS[CVE-2023-52504] = "fixed-version: Fixed from version 6.6rc6"
+
+CVE_STATUS[CVE-2023-52505] = "fixed-version: Fixed from version 6.6rc6"
+
+CVE_STATUS[CVE-2023-52506] = "fixed-version: Fixed from version 6.6rc3"
+
+CVE_STATUS[CVE-2023-52507] = "fixed-version: Fixed from version 6.6rc6"
+
+CVE_STATUS[CVE-2023-52508] = "fixed-version: Fixed from version 6.6rc2"
+
+CVE_STATUS[CVE-2023-52509] = "fixed-version: Fixed from version 6.6rc6"
+
+CVE_STATUS[CVE-2023-52510] = "fixed-version: Fixed from version 6.6rc6"
+
+CVE_STATUS[CVE-2023-52511] = "fixed-version: Fixed from version 6.6rc1"
+
+CVE_STATUS[CVE-2023-52512] = "fixed-version: Fixed from version 6.6rc6"
+
+CVE_STATUS[CVE-2023-52513] = "fixed-version: Fixed from version 6.6rc5"
+
+CVE_STATUS[CVE-2023-52515] = "fixed-version: Fixed from version 6.6rc5"
+
+CVE_STATUS[CVE-2023-52516] = "fixed-version: Fixed from version 6.6rc1"
+
+CVE_STATUS[CVE-2023-52517] = "fixed-version: Fixed from version 6.6rc1"
+
+CVE_STATUS[CVE-2023-52518] = "fixed-version: Fixed from version 6.6rc5"
+
+CVE_STATUS[CVE-2023-52519] = "fixed-version: Fixed from version 6.6rc5"
+
+CVE_STATUS[CVE-2023-52520] = "fixed-version: Fixed from version 6.6rc5"
+
+CVE_STATUS[CVE-2023-52522] = "fixed-version: Fixed from version 6.6rc5"
+
+CVE_STATUS[CVE-2023-52523] = "fixed-version: Fixed from version 6.6rc5"
+
+CVE_STATUS[CVE-2023-52524] = "fixed-version: Fixed from version 6.6rc5"
+
+CVE_STATUS[CVE-2023-52525] = "fixed-version: Fixed from version 6.6rc5"
+
+CVE_STATUS[CVE-2023-52526] = "fixed-version: Fixed from version 6.6rc5"
+
+CVE_STATUS[CVE-2023-52527] = "fixed-version: Fixed from version 6.6rc5"
+
+CVE_STATUS[CVE-2023-52528] = "fixed-version: Fixed from version 6.6rc5"
+
+CVE_STATUS[CVE-2023-52529] = "fixed-version: Fixed from version 6.6rc5"
+
+CVE_STATUS[CVE-2023-52530] = "fixed-version: Fixed from version 6.6rc5"
+
+CVE_STATUS[CVE-2023-52531] = "fixed-version: Fixed from version 6.6rc5"
+
+CVE_STATUS[CVE-2023-52532] = "fixed-version: Fixed from version 6.6rc5"
+
+CVE_STATUS[CVE-2023-52559] = "fixed-version: Fixed from version 6.6rc5"
+
+CVE_STATUS[CVE-2023-52560] = "fixed-version: Fixed from version 6.6rc4"
+
+CVE_STATUS[CVE-2023-52561] = "fixed-version: Fixed from version 6.6rc1"
+
+CVE_STATUS[CVE-2023-52562] = "fixed-version: Fixed from version 6.6rc4"
+
+CVE_STATUS[CVE-2023-52563] = "fixed-version: Fixed from version 6.6rc3"
+
+CVE_STATUS[CVE-2023-52564] = "fixed-version: Fixed from version 6.6rc4"
+
+CVE_STATUS[CVE-2023-52565] = "fixed-version: Fixed from version 6.6rc3"
+
+CVE_STATUS[CVE-2023-52566] = "fixed-version: Fixed from version 6.6rc4"
+
+CVE_STATUS[CVE-2023-52567] = "fixed-version: Fixed from version 6.6rc4"
+
+CVE_STATUS[CVE-2023-52568] = "fixed-version: Fixed from version 6.6rc4"
+
+CVE_STATUS[CVE-2023-52569] = "fixed-version: Fixed from version 6.6rc2"
+
+CVE_STATUS[CVE-2023-52570] = "fixed-version: Fixed from version 6.6rc4"
+
+CVE_STATUS[CVE-2023-52571] = "fixed-version: Fixed from version 6.6rc4"
+
+CVE_STATUS[CVE-2023-52572] = "fixed-version: Fixed from version 6.6rc3"
+
+CVE_STATUS[CVE-2023-52573] = "fixed-version: Fixed from version 6.6rc3"
+
+CVE_STATUS[CVE-2023-52574] = "fixed-version: Fixed from version 6.6rc3"
+
+CVE_STATUS[CVE-2023-52575] = "fixed-version: Fixed from version 6.6rc3"
+
+CVE_STATUS[CVE-2023-52576] = "fixed-version: Fixed from version 6.6rc3"
+
+CVE_STATUS[CVE-2023-52577] = "fixed-version: Fixed from version 6.6rc3"
+
+CVE_STATUS[CVE-2023-52578] = "fixed-version: Fixed from version 6.6rc3"
+
+CVE_STATUS[CVE-2023-52580] = "fixed-version: Fixed from version 6.6rc3"
+
+CVE_STATUS[CVE-2023-52581] = "fixed-version: Fixed from version 6.6rc3"
+
+CVE_STATUS[CVE-2023-52582] = "fixed-version: Fixed from version 6.6rc3"
+
+CVE_STATUS[CVE-2023-52583] = "cpe-stable-backport: Backported in 6.6.16"
+
+CVE_STATUS[CVE-2023-52584] = "cpe-stable-backport: Backported in 6.6.16"
+
+# CVE-2023-52585 needs backporting (fixed from 6.8rc1)
+
+# CVE-2023-52586 needs backporting (fixed from 6.8rc1)
+
+CVE_STATUS[CVE-2023-52587] = "cpe-stable-backport: Backported in 6.6.16"
+
+CVE_STATUS[CVE-2023-52588] = "cpe-stable-backport: Backported in 6.6.16"
+
+CVE_STATUS[CVE-2023-52589] = "cpe-stable-backport: Backported in 6.6.16"
+
+# CVE-2023-52590 needs backporting (fixed from 6.8rc1)
+
+CVE_STATUS[CVE-2023-52591] = "cpe-stable-backport: Backported in 6.6.16"
+
+CVE_STATUS[CVE-2023-52593] = "cpe-stable-backport: Backported in 6.6.16"
+
+CVE_STATUS[CVE-2023-52594] = "cpe-stable-backport: Backported in 6.6.16"
+
+CVE_STATUS[CVE-2023-52595] = "cpe-stable-backport: Backported in 6.6.16"
+
+CVE_STATUS[CVE-2023-52596] = "cpe-stable-backport: Backported in 6.6.16"
+
+CVE_STATUS[CVE-2023-52597] = "cpe-stable-backport: Backported in 6.6.16"
+
+CVE_STATUS[CVE-2023-52598] = "cpe-stable-backport: Backported in 6.6.16"
+
+CVE_STATUS[CVE-2023-52599] = "cpe-stable-backport: Backported in 6.6.16"
+
+CVE_STATUS[CVE-2023-52600] = "cpe-stable-backport: Backported in 6.6.16"
+
+CVE_STATUS[CVE-2023-52601] = "cpe-stable-backport: Backported in 6.6.16"
+
+CVE_STATUS[CVE-2023-52602] = "cpe-stable-backport: Backported in 6.6.16"
+
+CVE_STATUS[CVE-2023-52603] = "cpe-stable-backport: Backported in 6.6.16"
+
+CVE_STATUS[CVE-2023-52604] = "cpe-stable-backport: Backported in 6.6.16"
+
+CVE_STATUS[CVE-2023-52606] = "cpe-stable-backport: Backported in 6.6.16"
+
+CVE_STATUS[CVE-2023-52607] = "cpe-stable-backport: Backported in 6.6.16"
+
+CVE_STATUS[CVE-2023-52608] = "cpe-stable-backport: Backported in 6.6.15"
+
+CVE_STATUS[CVE-2023-52609] = "cpe-stable-backport: Backported in 6.6.14"
+
+CVE_STATUS[CVE-2023-52610] = "cpe-stable-backport: Backported in 6.6.14"
+
+CVE_STATUS[CVE-2023-52611] = "cpe-stable-backport: Backported in 6.6.14"
+
+CVE_STATUS[CVE-2023-52612] = "cpe-stable-backport: Backported in 6.6.14"
+
+CVE_STATUS[CVE-2023-52613] = "cpe-stable-backport: Backported in 6.6.14"
+
+CVE_STATUS[CVE-2023-52614] = "cpe-stable-backport: Backported in 6.6.15"
+
+CVE_STATUS[CVE-2023-52615] = "cpe-stable-backport: Backported in 6.6.15"
+
+CVE_STATUS[CVE-2023-52616] = "cpe-stable-backport: Backported in 6.6.15"
+
+CVE_STATUS[CVE-2023-52617] = "cpe-stable-backport: Backported in 6.6.16"
+
+CVE_STATUS[CVE-2023-52618] = "cpe-stable-backport: Backported in 6.6.16"
+
+CVE_STATUS[CVE-2023-52619] = "cpe-stable-backport: Backported in 6.6.16"
+
+CVE_STATUS[CVE-2023-52620] = "fixed-version: Fixed from version 6.4"
+
+CVE_STATUS[CVE-2023-52621] = "cpe-stable-backport: Backported in 6.6.16"
+
+CVE_STATUS[CVE-2023-52622] = "cpe-stable-backport: Backported in 6.6.16"
+
+CVE_STATUS[CVE-2023-52623] = "cpe-stable-backport: Backported in 6.6.16"
+
+# CVE-2023-52624 needs backporting (fixed from 6.8rc1)
+
+# CVE-2023-52625 needs backporting (fixed from 6.8rc1)
+
+CVE_STATUS[CVE-2023-52626] = "fixed-version: only affects 6.7rc2 onwards"
+
+CVE_STATUS[CVE-2023-52627] = "cpe-stable-backport: Backported in 6.6.15"
+
+CVE_STATUS[CVE-2023-52628] = "fixed-version: Fixed from version 6.6rc1"
+
+CVE_STATUS[CVE-2023-52629] = "fixed-version: Fixed from version 6.6rc1"
+
+CVE_STATUS[CVE-2023-52630] = "cpe-stable-backport: Backported in 6.6.17"
+
+CVE_STATUS[CVE-2023-52631] = "cpe-stable-backport: Backported in 6.6.17"
+
+CVE_STATUS[CVE-2023-52632] = "cpe-stable-backport: Backported in 6.6.16"
+
+CVE_STATUS[CVE-2023-52633] = "cpe-stable-backport: Backported in 6.6.16"
+
+# CVE-2023-52634 needs backporting (fixed from 6.8rc1)
+
+CVE_STATUS[CVE-2023-52635] = "cpe-stable-backport: Backported in 6.6.16"
+
+CVE_STATUS[CVE-2023-52636] = "cpe-stable-backport: Backported in 6.6.17"
+
+CVE_STATUS[CVE-2023-52637] = "cpe-stable-backport: Backported in 6.6.18"
+
+CVE_STATUS[CVE-2023-52638] = "cpe-stable-backport: Backported in 6.6.18"
+
+CVE_STATUS[CVE-2023-52639] = "cpe-stable-backport: Backported in 6.6.22"
+
+CVE_STATUS[CVE-2023-52640] = "cpe-stable-backport: Backported in 6.6.19"
+
+CVE_STATUS[CVE-2023-52641] = "cpe-stable-backport: Backported in 6.6.19"
+
CVE_STATUS[CVE-2023-5345] = "fixed-version: Fixed from version 6.6rc4"
CVE_STATUS[CVE-2023-5633] = "fixed-version: Fixed from version 6.6rc6"
@@ -5232,15 +6096,15 @@ CVE_STATUS[CVE-2023-6200] = "cpe-stable-backport: Backported in 6.6.9"
# CVE-2023-6240 has no known resolution
-# CVE-2023-6270 has no known resolution
+CVE_STATUS[CVE-2023-6270] = "cpe-stable-backport: Backported in 6.6.23"
-# CVE-2023-6356 has no known resolution
+CVE_STATUS[CVE-2023-6356] = "cpe-stable-backport: Backported in 6.6.14"
CVE_STATUS[CVE-2023-6531] = "cpe-stable-backport: Backported in 6.6.7"
# CVE-2023-6535 has no known resolution
-# CVE-2023-6536 has no known resolution
+CVE_STATUS[CVE-2023-6536] = "cpe-stable-backport: Backported in 6.6.14"
CVE_STATUS[CVE-2023-6546] = "fixed-version: Fixed from version 6.5rc7"
@@ -5262,7 +6126,7 @@ CVE_STATUS[CVE-2023-6931] = "cpe-stable-backport: Backported in 6.6.7"
CVE_STATUS[CVE-2023-6932] = "cpe-stable-backport: Backported in 6.6.5"
-# CVE-2023-7042 has no known resolution
+CVE_STATUS[CVE-2023-7042] = "cpe-stable-backport: Backported in 6.6.23"
CVE_STATUS[CVE-2023-7192] = "fixed-version: Fixed from version 6.3rc1"
@@ -5292,7 +6156,7 @@ CVE_STATUS[CVE-2024-0646] = "cpe-stable-backport: Backported in 6.6.7"
CVE_STATUS[CVE-2024-0775] = "fixed-version: Fixed from version 6.4rc2"
-# CVE-2024-0841 has no known resolution
+CVE_STATUS[CVE-2024-0841] = "cpe-stable-backport: Backported in 6.6.18"
CVE_STATUS[CVE-2024-1085] = "cpe-stable-backport: Backported in 6.6.14"
@@ -5304,15 +6168,17 @@ CVE_STATUS[CVE-2024-1312] = "fixed-version: Fixed from version 6.5rc4"
# CVE-2024-21803 has no known resolution
-# CVE-2024-22099 has no known resolution
+# CVE-2024-2193 has no known resolution
+
+CVE_STATUS[CVE-2024-22099] = "cpe-stable-backport: Backported in 6.6.23"
# CVE-2024-22386 has no known resolution
CVE_STATUS[CVE-2024-22705] = "cpe-stable-backport: Backported in 6.6.10"
-# CVE-2024-23196 has no known resolution
+CVE_STATUS[CVE-2024-23196] = "fixed-version: Fixed from version 6.5rc1"
-# CVE-2024-23307 has no known resolution
+CVE_STATUS[CVE-2024-23307] = "cpe-stable-backport: Backported in 6.6.24"
# CVE-2024-23848 has no known resolution
@@ -5332,7 +6198,7 @@ CVE_STATUS[CVE-2024-24855] = "fixed-version: Fixed from version 6.5rc2"
CVE_STATUS[CVE-2024-24860] = "cpe-stable-backport: Backported in 6.6.14"
-# CVE-2024-24861 has no known resolution
+CVE_STATUS[CVE-2024-24861] = "cpe-stable-backport: Backported in 6.6.24"
# CVE-2024-24864 has no known resolution
@@ -5382,3 +6248,413 @@ CVE_STATUS[CVE-2024-26598] = "cpe-stable-backport: Backported in 6.6.14"
CVE_STATUS[CVE-2024-26599] = "cpe-stable-backport: Backported in 6.6.14"
+CVE_STATUS[CVE-2024-26600] = "cpe-stable-backport: Backported in 6.6.17"
+
+CVE_STATUS[CVE-2024-26601] = "cpe-stable-backport: Backported in 6.6.17"
+
+CVE_STATUS[CVE-2024-26602] = "cpe-stable-backport: Backported in 6.6.18"
+
+CVE_STATUS[CVE-2024-26603] = "cpe-stable-backport: Backported in 6.6.18"
+
+CVE_STATUS[CVE-2024-26604] = "cpe-stable-backport: Backported in 6.6.18"
+
+CVE_STATUS[CVE-2024-26605] = "fixed-version: only affects 6.7 onwards"
+
+CVE_STATUS[CVE-2024-26606] = "cpe-stable-backport: Backported in 6.6.18"
+
+CVE_STATUS[CVE-2024-26607] = "cpe-stable-backport: Backported in 6.6.15"
+
+CVE_STATUS[CVE-2024-26608] = "cpe-stable-backport: Backported in 6.6.15"
+
+CVE_STATUS[CVE-2024-26610] = "cpe-stable-backport: Backported in 6.6.15"
+
+CVE_STATUS[CVE-2024-26611] = "cpe-stable-backport: Backported in 6.6.15"
+
+CVE_STATUS[CVE-2024-26612] = "cpe-stable-backport: Backported in 6.6.15"
+
+CVE_STATUS[CVE-2024-26614] = "cpe-stable-backport: Backported in 6.6.15"
+
+CVE_STATUS[CVE-2024-26615] = "cpe-stable-backport: Backported in 6.6.15"
+
+CVE_STATUS[CVE-2024-26616] = "cpe-stable-backport: Backported in 6.6.15"
+
+CVE_STATUS[CVE-2024-26617] = "fixed-version: only affects 6.7rc1 onwards"
+
+CVE_STATUS[CVE-2024-26618] = "cpe-stable-backport: Backported in 6.6.15"
+
+CVE_STATUS[CVE-2024-26619] = "fixed-version: only affects 6.7rc5 onwards"
+
+CVE_STATUS[CVE-2024-26620] = "cpe-stable-backport: Backported in 6.6.15"
+
+CVE_STATUS[CVE-2024-26621] = "fixed-version: only affects 6.7 onwards"
+
+CVE_STATUS[CVE-2024-26622] = "cpe-stable-backport: Backported in 6.6.21"
+
+CVE_STATUS[CVE-2024-26623] = "cpe-stable-backport: Backported in 6.6.16"
+
+CVE_STATUS[CVE-2024-26625] = "cpe-stable-backport: Backported in 6.6.16"
+
+CVE_STATUS[CVE-2024-26626] = "fixed-version: only affects 6.8rc1 onwards"
+
+CVE_STATUS[CVE-2024-26627] = "cpe-stable-backport: Backported in 6.6.16"
+
+CVE_STATUS[CVE-2024-26629] = "cpe-stable-backport: Backported in 6.6.15"
+
+CVE_STATUS[CVE-2024-26630] = "cpe-stable-backport: Backported in 6.6.21"
+
+CVE_STATUS[CVE-2024-26631] = "cpe-stable-backport: Backported in 6.6.14"
+
+CVE_STATUS[CVE-2024-26632] = "cpe-stable-backport: Backported in 6.6.14"
+
+CVE_STATUS[CVE-2024-26633] = "cpe-stable-backport: Backported in 6.6.14"
+
+CVE_STATUS[CVE-2024-26634] = "cpe-stable-backport: Backported in 6.6.15"
+
+CVE_STATUS[CVE-2024-26635] = "cpe-stable-backport: Backported in 6.6.15"
+
+CVE_STATUS[CVE-2024-26636] = "cpe-stable-backport: Backported in 6.6.15"
+
+CVE_STATUS[CVE-2024-26637] = "fixed-version: only affects 6.7 onwards"
+
+CVE_STATUS[CVE-2024-26638] = "cpe-stable-backport: Backported in 6.6.15"
+
+CVE_STATUS[CVE-2024-26639] = "fixed-version: only affects 6.8rc1 onwards"
+
+CVE_STATUS[CVE-2024-26640] = "cpe-stable-backport: Backported in 6.6.16"
+
+CVE_STATUS[CVE-2024-26641] = "cpe-stable-backport: Backported in 6.6.16"
+
+CVE_STATUS[CVE-2024-26642] = "cpe-stable-backport: Backported in 6.6.24"
+
+CVE_STATUS[CVE-2024-26643] = "cpe-stable-backport: Backported in 6.6.24"
+
+CVE_STATUS[CVE-2024-26644] = "cpe-stable-backport: Backported in 6.6.15"
+
+CVE_STATUS[CVE-2024-26645] = "cpe-stable-backport: Backported in 6.6.15"
+
+CVE_STATUS[CVE-2024-26646] = "cpe-stable-backport: Backported in 6.6.15"
+
+CVE_STATUS[CVE-2024-26647] = "cpe-stable-backport: Backported in 6.6.15"
+
+CVE_STATUS[CVE-2024-26648] = "cpe-stable-backport: Backported in 6.6.15"
+
+CVE_STATUS[CVE-2024-26649] = "cpe-stable-backport: Backported in 6.6.15"
+
+CVE_STATUS[CVE-2024-26650] = "cpe-stable-backport: Backported in 6.6.15"
+
+CVE_STATUS[CVE-2024-26651] = "cpe-stable-backport: Backported in 6.6.23"
+
+CVE_STATUS[CVE-2024-26652] = "cpe-stable-backport: Backported in 6.6.22"
+
+CVE_STATUS[CVE-2024-26653] = "fixed-version: only affects 6.7rc1 onwards"
+
+CVE_STATUS[CVE-2024-26654] = "cpe-stable-backport: Backported in 6.6.24"
+
+# CVE-2024-26655 needs backporting (fixed from 6.9rc2)
+
+CVE_STATUS[CVE-2024-26656] = "cpe-stable-backport: Backported in 6.6.24"
+
+CVE_STATUS[CVE-2024-26657] = "fixed-version: only affects 6.7rc1 onwards"
+
+# CVE-2024-26658 needs backporting (fixed from 6.8rc1)
+
+CVE_STATUS[CVE-2024-26659] = "cpe-stable-backport: Backported in 6.6.17"
+
+CVE_STATUS[CVE-2024-26660] = "cpe-stable-backport: Backported in 6.6.17"
+
+CVE_STATUS[CVE-2024-26661] = "cpe-stable-backport: Backported in 6.6.17"
+
+CVE_STATUS[CVE-2024-26662] = "cpe-stable-backport: Backported in 6.6.17"
+
+CVE_STATUS[CVE-2024-26663] = "cpe-stable-backport: Backported in 6.6.17"
+
+CVE_STATUS[CVE-2024-26664] = "cpe-stable-backport: Backported in 6.6.17"
+
+CVE_STATUS[CVE-2024-26665] = "cpe-stable-backport: Backported in 6.6.17"
+
+CVE_STATUS[CVE-2024-26666] = "cpe-stable-backport: Backported in 6.6.17"
+
+CVE_STATUS[CVE-2024-26667] = "cpe-stable-backport: Backported in 6.6.17"
+
+CVE_STATUS[CVE-2024-26668] = "cpe-stable-backport: Backported in 6.6.15"
+
+CVE_STATUS[CVE-2024-26669] = "cpe-stable-backport: Backported in 6.6.15"
+
+CVE_STATUS[CVE-2024-26670] = "cpe-stable-backport: Backported in 6.6.15"
+
+CVE_STATUS[CVE-2024-26671] = "cpe-stable-backport: Backported in 6.6.16"
+
+# CVE-2024-26672 needs backporting (fixed from 6.8rc1)
+
+CVE_STATUS[CVE-2024-26673] = "cpe-stable-backport: Backported in 6.6.16"
+
+CVE_STATUS[CVE-2024-26674] = "cpe-stable-backport: Backported in 6.6.17"
+
+CVE_STATUS[CVE-2024-26675] = "cpe-stable-backport: Backported in 6.6.17"
+
+CVE_STATUS[CVE-2024-26676] = "cpe-stable-backport: Backported in 6.6.17"
+
+CVE_STATUS[CVE-2024-26677] = "cpe-stable-backport: Backported in 6.6.17"
+
+CVE_STATUS[CVE-2024-26678] = "fixed-version: only affects 6.7rc1 onwards"
+
+CVE_STATUS[CVE-2024-26679] = "cpe-stable-backport: Backported in 6.6.17"
+
+CVE_STATUS[CVE-2024-26680] = "cpe-stable-backport: Backported in 6.6.17"
+
+CVE_STATUS[CVE-2024-26681] = "cpe-stable-backport: Backported in 6.6.17"
+
+CVE_STATUS[CVE-2024-26682] = "fixed-version: only affects 6.7rc1 onwards"
+
+CVE_STATUS[CVE-2024-26683] = "fixed-version: only affects 6.7rc1 onwards"
+
+CVE_STATUS[CVE-2024-26684] = "cpe-stable-backport: Backported in 6.6.17"
+
+CVE_STATUS[CVE-2024-26685] = "cpe-stable-backport: Backported in 6.6.18"
+
+# CVE-2024-26686 needs backporting (fixed from 6.8rc4)
+
+CVE_STATUS[CVE-2024-26687] = "cpe-stable-backport: Backported in 6.6.19"
+
+CVE_STATUS[CVE-2024-26688] = "cpe-stable-backport: Backported in 6.6.18"
+
+CVE_STATUS[CVE-2024-26689] = "cpe-stable-backport: Backported in 6.6.18"
+
+CVE_STATUS[CVE-2024-26690] = "cpe-stable-backport: Backported in 6.6.18"
+
+CVE_STATUS[CVE-2024-26691] = "cpe-stable-backport: Backported in 6.6.18"
+
+CVE_STATUS[CVE-2024-26692] = "cpe-stable-backport: Backported in 6.6.18"
+
+CVE_STATUS[CVE-2024-26693] = "cpe-stable-backport: Backported in 6.6.18"
+
+CVE_STATUS[CVE-2024-26694] = "cpe-stable-backport: Backported in 6.6.18"
+
+CVE_STATUS[CVE-2024-26695] = "cpe-stable-backport: Backported in 6.6.18"
+
+CVE_STATUS[CVE-2024-26696] = "cpe-stable-backport: Backported in 6.6.18"
+
+CVE_STATUS[CVE-2024-26697] = "cpe-stable-backport: Backported in 6.6.18"
+
+CVE_STATUS[CVE-2024-26698] = "cpe-stable-backport: Backported in 6.6.18"
+
+# CVE-2024-26699 needs backporting (fixed from 6.8rc5)
+
+CVE_STATUS[CVE-2024-26700] = "cpe-stable-backport: Backported in 6.6.18"
+
+CVE_STATUS[CVE-2024-26702] = "cpe-stable-backport: Backported in 6.6.18"
+
+CVE_STATUS[CVE-2024-26703] = "cpe-stable-backport: Backported in 6.6.18"
+
+CVE_STATUS[CVE-2024-26704] = "cpe-stable-backport: Backported in 6.6.18"
+
+CVE_STATUS[CVE-2024-26705] = "cpe-stable-backport: Backported in 6.6.18"
+
+CVE_STATUS[CVE-2024-26706] = "cpe-stable-backport: Backported in 6.6.18"
+
+CVE_STATUS[CVE-2024-26707] = "cpe-stable-backport: Backported in 6.6.18"
+
+CVE_STATUS[CVE-2024-26708] = "cpe-stable-backport: Backported in 6.6.18"
+
+CVE_STATUS[CVE-2024-26709] = "fixed-version: only affects 6.7rc1 onwards"
+
+CVE_STATUS[CVE-2024-26710] = "fixed-version: only affects 6.8rc1 onwards"
+
+CVE_STATUS[CVE-2024-26711] = "cpe-stable-backport: Backported in 6.6.18"
+
+CVE_STATUS[CVE-2024-26712] = "cpe-stable-backport: Backported in 6.6.18"
+
+CVE_STATUS[CVE-2024-26713] = "cpe-stable-backport: Backported in 6.6.18"
+
+CVE_STATUS[CVE-2024-26714] = "cpe-stable-backport: Backported in 6.6.18"
+
+CVE_STATUS[CVE-2024-26715] = "cpe-stable-backport: Backported in 6.6.18"
+
+CVE_STATUS[CVE-2024-26716] = "cpe-stable-backport: Backported in 6.6.18"
+
+CVE_STATUS[CVE-2024-26717] = "cpe-stable-backport: Backported in 6.6.18"
+
+CVE_STATUS[CVE-2024-26718] = "cpe-stable-backport: Backported in 6.6.18"
+
+CVE_STATUS[CVE-2024-26719] = "cpe-stable-backport: Backported in 6.6.18"
+
+CVE_STATUS[CVE-2024-26720] = "cpe-stable-backport: Backported in 6.6.18"
+
+CVE_STATUS[CVE-2024-26721] = "fixed-version: only affects 6.7rc1 onwards"
+
+CVE_STATUS[CVE-2024-26722] = "fixed-version: only affects 6.7rc5 onwards"
+
+CVE_STATUS[CVE-2024-26723] = "cpe-stable-backport: Backported in 6.6.18"
+
+CVE_STATUS[CVE-2024-26724] = "fixed-version: only affects 6.7rc1 onwards"
+
+CVE_STATUS[CVE-2024-26725] = "fixed-version: only affects 6.7rc1 onwards"
+
+CVE_STATUS[CVE-2024-26726] = "cpe-stable-backport: Backported in 6.6.18"
+
+CVE_STATUS[CVE-2024-26727] = "cpe-stable-backport: Backported in 6.6.18"
+
+CVE_STATUS[CVE-2024-26728] = "fixed-version: only affects 6.7rc1 onwards"
+
+CVE_STATUS[CVE-2024-26729] = "fixed-version: only affects 6.7rc1 onwards"
+
+CVE_STATUS[CVE-2024-26730] = "cpe-stable-backport: Backported in 6.6.19"
+
+CVE_STATUS[CVE-2024-26731] = "cpe-stable-backport: Backported in 6.6.19"
+
+CVE_STATUS[CVE-2024-26732] = "fixed-version: only affects 6.7rc1 onwards"
+
+CVE_STATUS[CVE-2024-26733] = "cpe-stable-backport: Backported in 6.6.19"
+
+CVE_STATUS[CVE-2024-26734] = "cpe-stable-backport: Backported in 6.6.19"
+
+CVE_STATUS[CVE-2024-26735] = "cpe-stable-backport: Backported in 6.6.19"
+
+CVE_STATUS[CVE-2024-26736] = "cpe-stable-backport: Backported in 6.6.19"
+
+CVE_STATUS[CVE-2024-26737] = "cpe-stable-backport: Backported in 6.6.19"
+
+CVE_STATUS[CVE-2024-26738] = "cpe-stable-backport: Backported in 6.6.19"
+
+CVE_STATUS[CVE-2024-26739] = "cpe-stable-backport: Backported in 6.6.19"
+
+CVE_STATUS[CVE-2024-26740] = "cpe-stable-backport: Backported in 6.6.19"
+
+CVE_STATUS[CVE-2024-26741] = "cpe-stable-backport: Backported in 6.6.19"
+
+CVE_STATUS[CVE-2024-26742] = "cpe-stable-backport: Backported in 6.6.19"
+
+CVE_STATUS[CVE-2024-26743] = "cpe-stable-backport: Backported in 6.6.19"
+
+CVE_STATUS[CVE-2024-26744] = "cpe-stable-backport: Backported in 6.6.19"
+
+CVE_STATUS[CVE-2024-26745] = "cpe-stable-backport: Backported in 6.6.21"
+
+CVE_STATUS[CVE-2024-26746] = "cpe-stable-backport: Backported in 6.6.21"
+
+CVE_STATUS[CVE-2024-26747] = "cpe-stable-backport: Backported in 6.6.19"
+
+CVE_STATUS[CVE-2024-26748] = "cpe-stable-backport: Backported in 6.6.19"
+
+CVE_STATUS[CVE-2024-26749] = "cpe-stable-backport: Backported in 6.6.19"
+
+CVE_STATUS[CVE-2024-26750] = "fixed-version: only affects 6.8rc5 onwards"
+
+CVE_STATUS[CVE-2024-26751] = "cpe-stable-backport: Backported in 6.6.19"
+
+CVE_STATUS[CVE-2024-26752] = "cpe-stable-backport: Backported in 6.6.19"
+
+CVE_STATUS[CVE-2024-26753] = "cpe-stable-backport: Backported in 6.6.19"
+
+CVE_STATUS[CVE-2024-26754] = "cpe-stable-backport: Backported in 6.6.19"
+
+CVE_STATUS[CVE-2024-26755] = "fixed-version: only affects 6.7rc1 onwards"
+
+# CVE-2024-26756 needs backporting (fixed from 6.8rc6)
+
+# CVE-2024-26757 needs backporting (fixed from 6.8rc6)
+
+# CVE-2024-26758 needs backporting (fixed from 6.8rc6)
+
+CVE_STATUS[CVE-2024-26759] = "cpe-stable-backport: Backported in 6.6.19"
+
+CVE_STATUS[CVE-2024-26760] = "cpe-stable-backport: Backported in 6.6.19"
+
+CVE_STATUS[CVE-2024-26761] = "cpe-stable-backport: Backported in 6.6.19"
+
+CVE_STATUS[CVE-2024-26762] = "fixed-version: only affects 6.7rc1 onwards"
+
+CVE_STATUS[CVE-2024-26763] = "cpe-stable-backport: Backported in 6.6.19"
+
+CVE_STATUS[CVE-2024-26764] = "cpe-stable-backport: Backported in 6.6.19"
+
+CVE_STATUS[CVE-2024-26765] = "cpe-stable-backport: Backported in 6.6.19"
+
+CVE_STATUS[CVE-2024-26766] = "cpe-stable-backport: Backported in 6.6.19"
+
+CVE_STATUS[CVE-2024-26767] = "cpe-stable-backport: Backported in 6.6.19"
+
+CVE_STATUS[CVE-2024-26768] = "cpe-stable-backport: Backported in 6.6.19"
+
+CVE_STATUS[CVE-2024-26769] = "cpe-stable-backport: Backported in 6.6.19"
+
+CVE_STATUS[CVE-2024-26770] = "cpe-stable-backport: Backported in 6.6.19"
+
+CVE_STATUS[CVE-2024-26771] = "cpe-stable-backport: Backported in 6.6.19"
+
+CVE_STATUS[CVE-2024-26772] = "cpe-stable-backport: Backported in 6.6.19"
+
+CVE_STATUS[CVE-2024-26773] = "cpe-stable-backport: Backported in 6.6.19"
+
+CVE_STATUS[CVE-2024-26774] = "cpe-stable-backport: Backported in 6.6.19"
+
+CVE_STATUS[CVE-2024-26775] = "cpe-stable-backport: Backported in 6.6.19"
+
+CVE_STATUS[CVE-2024-26776] = "cpe-stable-backport: Backported in 6.6.19"
+
+CVE_STATUS[CVE-2024-26777] = "cpe-stable-backport: Backported in 6.6.19"
+
+CVE_STATUS[CVE-2024-26778] = "cpe-stable-backport: Backported in 6.6.19"
+
+CVE_STATUS[CVE-2024-26779] = "cpe-stable-backport: Backported in 6.6.19"
+
+CVE_STATUS[CVE-2024-26780] = "fixed-version: only affects 6.8rc4 onwards"
+
+CVE_STATUS[CVE-2024-26781] = "fixed-version: only affects 6.8rc6 onwards"
+
+CVE_STATUS[CVE-2024-26782] = "cpe-stable-backport: Backported in 6.6.21"
+
+CVE_STATUS[CVE-2024-26783] = "cpe-stable-backport: Backported in 6.6.22"
+
+# CVE-2024-26784 needs backporting (fixed from 6.8rc7)
+
+# CVE-2024-26785 needs backporting (fixed from 6.8rc7)
+
+CVE_STATUS[CVE-2024-26786] = "cpe-stable-backport: Backported in 6.6.21"
+
+CVE_STATUS[CVE-2024-26787] = "cpe-stable-backport: Backported in 6.6.21"
+
+CVE_STATUS[CVE-2024-26788] = "cpe-stable-backport: Backported in 6.6.21"
+
+CVE_STATUS[CVE-2024-26789] = "cpe-stable-backport: Backported in 6.6.21"
+
+CVE_STATUS[CVE-2024-26790] = "cpe-stable-backport: Backported in 6.6.21"
+
+CVE_STATUS[CVE-2024-26791] = "cpe-stable-backport: Backported in 6.6.21"
+
+CVE_STATUS[CVE-2024-26792] = "fixed-version: only affects 6.8rc4 onwards"
+
+CVE_STATUS[CVE-2024-26793] = "cpe-stable-backport: Backported in 6.6.21"
+
+CVE_STATUS[CVE-2024-26794] = "fixed-version: only affects 6.8rc6 onwards"
+
+CVE_STATUS[CVE-2024-26795] = "cpe-stable-backport: Backported in 6.6.21"
+
+CVE_STATUS[CVE-2024-26796] = "cpe-stable-backport: Backported in 6.6.21"
+
+# CVE-2024-26797 needs backporting (fixed from 6.8rc7)
+
+CVE_STATUS[CVE-2024-26798] = "cpe-stable-backport: Backported in 6.6.21"
+
+CVE_STATUS[CVE-2024-26799] = "cpe-stable-backport: Backported in 6.6.21"
+
+CVE_STATUS[CVE-2024-26800] = "fixed-version: only affects 6.8rc5 onwards"
+
+CVE_STATUS[CVE-2024-26801] = "cpe-stable-backport: Backported in 6.6.21"
+
+CVE_STATUS[CVE-2024-26802] = "cpe-stable-backport: Backported in 6.6.21"
+
+CVE_STATUS[CVE-2024-26803] = "cpe-stable-backport: Backported in 6.6.21"
+
+CVE_STATUS[CVE-2024-26804] = "cpe-stable-backport: Backported in 6.6.21"
+
+CVE_STATUS[CVE-2024-26805] = "cpe-stable-backport: Backported in 6.6.21"
+
+# CVE-2024-26806 needs backporting (fixed from 6.8rc7)
+
+CVE_STATUS[CVE-2024-26807] = "cpe-stable-backport: Backported in 6.6.21"
+
+CVE_STATUS[CVE-2024-26808] = "cpe-stable-backport: Backported in 6.6.15"
+
+CVE_STATUS[CVE-2024-26809] = "cpe-stable-backport: Backported in 6.6.23"
+
diff --git a/meta/recipes-kernel/linux/linux-dummy.bb b/meta/recipes-kernel/linux/linux-dummy.bb
index 2396f46202..3e9a563cad 100644
--- a/meta/recipes-kernel/linux/linux-dummy.bb
+++ b/meta/recipes-kernel/linux/linux-dummy.bb
@@ -30,7 +30,9 @@ COMPATIBLE_HOST = ".*-linux"
SRC_URI = "file://COPYING.GPL"
-S = "${WORKDIR}"
+
+S = "${WORKDIR}/sources"
+UNPACKDIR = "${S}"
do_configure() {
:
diff --git a/meta/recipes-kernel/linux/linux-yocto-rt_6.6.bb b/meta/recipes-kernel/linux/linux-yocto-rt_6.6.bb
index a44a08451a..53f413407d 100644
--- a/meta/recipes-kernel/linux/linux-yocto-rt_6.6.bb
+++ b/meta/recipes-kernel/linux/linux-yocto-rt_6.6.bb
@@ -14,13 +14,13 @@ python () {
raise bb.parse.SkipRecipe("Set PREFERRED_PROVIDER_virtual/kernel to linux-yocto-rt to enable it")
}
-SRCREV_machine ?= "19813826de57a6425518c7b3daf8dd6a04d2321f"
-SRCREV_meta ?= "f7f00b22efcfcae6489e9ec7db7002685fbc078b"
+SRCREV_machine ?= "9bdb085cb6fcfd49586b980ba27cb81e5c76689e"
+SRCREV_meta ?= "a78c74a3510067017dda1926f88bd914f0a053b3"
SRC_URI = "git://git.yoctoproject.org/linux-yocto.git;branch=${KBRANCH};name=machine;protocol=https \
git://git.yoctoproject.org/yocto-kernel-cache;type=kmeta;name=meta;branch=yocto-6.6;destsuffix=${KMETA};protocol=https"
-LINUX_VERSION ?= "6.6.23"
+LINUX_VERSION ?= "6.6.29"
LIC_FILES_CHKSUM = "file://COPYING;md5=6bc538ed5bd9a7fc9398086aedcd7e46"
diff --git a/meta/recipes-kernel/linux/linux-yocto-tiny_6.6.bb b/meta/recipes-kernel/linux/linux-yocto-tiny_6.6.bb
index db9e252572..44c9a7b1e0 100644
--- a/meta/recipes-kernel/linux/linux-yocto-tiny_6.6.bb
+++ b/meta/recipes-kernel/linux/linux-yocto-tiny_6.6.bb
@@ -8,7 +8,7 @@ require recipes-kernel/linux/linux-yocto.inc
# CVE exclusions
include recipes-kernel/linux/cve-exclusion_6.6.inc
-LINUX_VERSION ?= "6.6.23"
+LINUX_VERSION ?= "6.6.29"
LIC_FILES_CHKSUM = "file://COPYING;md5=6bc538ed5bd9a7fc9398086aedcd7e46"
DEPENDS += "${@bb.utils.contains('ARCH', 'x86', 'elfutils-native', '', d)}"
@@ -17,8 +17,8 @@ DEPENDS += "openssl-native util-linux-native"
KMETA = "kernel-meta"
KCONF_BSP_AUDIT_LEVEL = "2"
-SRCREV_machine ?= "2d01bc1d4eeade12518371139dd24a21438f523c"
-SRCREV_meta ?= "f7f00b22efcfcae6489e9ec7db7002685fbc078b"
+SRCREV_machine ?= "7c76aad68f6d1247e72f024f1e0291067a404f8d"
+SRCREV_meta ?= "a78c74a3510067017dda1926f88bd914f0a053b3"
PV = "${LINUX_VERSION}+git"
diff --git a/meta/recipes-kernel/linux/linux-yocto_6.6.bb b/meta/recipes-kernel/linux/linux-yocto_6.6.bb
index 43696db59b..fbeb5c2500 100644
--- a/meta/recipes-kernel/linux/linux-yocto_6.6.bb
+++ b/meta/recipes-kernel/linux/linux-yocto_6.6.bb
@@ -18,25 +18,25 @@ KBRANCH:qemux86-64 ?= "v6.6/standard/base"
KBRANCH:qemuloongarch64 ?= "v6.6/standard/base"
KBRANCH:qemumips64 ?= "v6.6/standard/mti-malta64"
-SRCREV_machine:qemuarm ?= "ceb94a85299b59d8840ed7ed392b1d3e4c727678"
-SRCREV_machine:qemuarm64 ?= "2d01bc1d4eeade12518371139dd24a21438f523c"
-SRCREV_machine:qemuloongarch64 ?= "2d01bc1d4eeade12518371139dd24a21438f523c"
-SRCREV_machine:qemumips ?= "c79ffc89f8909f60de52005ef258db9752634eda"
-SRCREV_machine:qemuppc ?= "2d01bc1d4eeade12518371139dd24a21438f523c"
-SRCREV_machine:qemuriscv64 ?= "2d01bc1d4eeade12518371139dd24a21438f523c"
-SRCREV_machine:qemuriscv32 ?= "2d01bc1d4eeade12518371139dd24a21438f523c"
-SRCREV_machine:qemux86 ?= "2d01bc1d4eeade12518371139dd24a21438f523c"
-SRCREV_machine:qemux86-64 ?= "2d01bc1d4eeade12518371139dd24a21438f523c"
-SRCREV_machine:qemumips64 ?= "b0a73fa83073c8d7d7bc917bcbeac88d296ebe38"
-SRCREV_machine ?= "2d01bc1d4eeade12518371139dd24a21438f523c"
-SRCREV_meta ?= "f7f00b22efcfcae6489e9ec7db7002685fbc078b"
+SRCREV_machine:qemuarm ?= "0b90bbe1359b3fd590780119f19dbd0a01e58560"
+SRCREV_machine:qemuarm64 ?= "7c76aad68f6d1247e72f024f1e0291067a404f8d"
+SRCREV_machine:qemuloongarch64 ?= "7c76aad68f6d1247e72f024f1e0291067a404f8d"
+SRCREV_machine:qemumips ?= "ab44de80a320e30a49150ea74554a937affaf78d"
+SRCREV_machine:qemuppc ?= "7c76aad68f6d1247e72f024f1e0291067a404f8d"
+SRCREV_machine:qemuriscv64 ?= "7c76aad68f6d1247e72f024f1e0291067a404f8d"
+SRCREV_machine:qemuriscv32 ?= "7c76aad68f6d1247e72f024f1e0291067a404f8d"
+SRCREV_machine:qemux86 ?= "7c76aad68f6d1247e72f024f1e0291067a404f8d"
+SRCREV_machine:qemux86-64 ?= "7c76aad68f6d1247e72f024f1e0291067a404f8d"
+SRCREV_machine:qemumips64 ?= "75da5d44c2e54a85a1221ea7d0c04be9aefb7fa1"
+SRCREV_machine ?= "7c76aad68f6d1247e72f024f1e0291067a404f8d"
+SRCREV_meta ?= "a78c74a3510067017dda1926f88bd914f0a053b3"
# set your preferred provider of linux-yocto to 'linux-yocto-upstream', and you'll
# get the <version>/base branch, which is pure upstream -stable, and the same
# meta SRCREV as the linux-yocto-standard builds. Select your version using the
# normal PREFERRED_VERSION settings.
BBCLASSEXTEND = "devupstream:target"
-SRCREV_machine:class-devupstream ?= "5c7587f69194bc9fc714953ab4c7203e6e68885b"
+SRCREV_machine:class-devupstream ?= "a3463f08104612fc979c41fa54733e925205d3d7"
PN:class-devupstream = "linux-yocto-upstream"
KBRANCH:class-devupstream = "v6.6/base"
@@ -44,7 +44,7 @@ SRC_URI = "git://git.yoctoproject.org/linux-yocto.git;name=machine;branch=${KBRA
git://git.yoctoproject.org/yocto-kernel-cache;type=kmeta;name=meta;branch=yocto-6.6;destsuffix=${KMETA};protocol=https"
LIC_FILES_CHKSUM = "file://COPYING;md5=6bc538ed5bd9a7fc9398086aedcd7e46"
-LINUX_VERSION ?= "6.6.23"
+LINUX_VERSION ?= "6.6.29"
PV = "${LINUX_VERSION}+git"
@@ -64,6 +64,8 @@ KERNEL_FEATURES:append:qemux86-64=" cfg/sound.scc cfg/paravirt_kvm.scc"
KERNEL_FEATURES:append = " ${@bb.utils.contains("TUNE_FEATURES", "mx32", " cfg/x32.scc", "", d)}"
KERNEL_FEATURES:append = " ${@bb.utils.contains("DISTRO_FEATURES", "ptest", " features/scsi/scsi-debug.scc features/nf_tables/nft_test.scc", "", d)}"
KERNEL_FEATURES:append = " ${@bb.utils.contains("DISTRO_FEATURES", "ptest", " features/gpio/mockup.scc features/gpio/sim.scc", "", d)}"
+# libteam ptests from meta-oe needs it
+KERNEL_FEATURES:append = " ${@bb.utils.contains("DISTRO_FEATURES", "ptest", " features/net/team/team.scc", "", d)}"
KERNEL_FEATURES:append:powerpc =" arch/powerpc/powerpc-debug.scc"
KERNEL_FEATURES:append:powerpc64 =" arch/powerpc/powerpc-debug.scc"
KERNEL_FEATURES:append:powerpc64le =" arch/powerpc/powerpc-debug.scc"
diff --git a/meta/recipes-kernel/lttng/lttng-tools_2.13.13.bb b/meta/recipes-kernel/lttng/lttng-tools_2.13.13.bb
index 174dec036e..e73dd4801a 100644
--- a/meta/recipes-kernel/lttng/lttng-tools_2.13.13.bb
+++ b/meta/recipes-kernel/lttng/lttng-tools_2.13.13.bb
@@ -69,7 +69,7 @@ PRIVATE_LIBS:${PN}-ptest = "libfoo.so"
do_install:append () {
# install systemd unit file
install -d ${D}${systemd_system_unitdir}
- install -m 0644 ${WORKDIR}/lttng-sessiond.service ${D}${systemd_system_unitdir}
+ install -m 0644 ${UNPACKDIR}/lttng-sessiond.service ${D}${systemd_system_unitdir}
}
do_install_ptest () {
diff --git a/meta/recipes-kernel/make-mod-scripts/make-mod-scripts_1.0.bb b/meta/recipes-kernel/make-mod-scripts/make-mod-scripts_1.0.bb
index a91680d497..581e90e9b4 100644
--- a/meta/recipes-kernel/make-mod-scripts/make-mod-scripts_1.0.bb
+++ b/meta/recipes-kernel/make-mod-scripts/make-mod-scripts_1.0.bb
@@ -8,7 +8,8 @@ inherit pkgconfig
PACKAGE_ARCH = "${MACHINE_ARCH}"
-S = "${WORKDIR}"
+S = "${WORKDIR}/sources"
+UNPACKDIR = "${S}"
do_configure[depends] += "virtual/kernel:do_shared_workdir openssl-native:do_populate_sysroot"
do_compile[depends] += "virtual/kernel:do_compile_kernelmodules"
diff --git a/meta/recipes-kernel/modutils-initscripts/modutils-initscripts.bb b/meta/recipes-kernel/modutils-initscripts/modutils-initscripts.bb
index b630a402ff..49268445a8 100644
--- a/meta/recipes-kernel/modutils-initscripts/modutils-initscripts.bb
+++ b/meta/recipes-kernel/modutils-initscripts/modutils-initscripts.bb
@@ -4,8 +4,8 @@ LICENSE = "MIT"
LIC_FILES_CHKSUM = "file://modutils.sh;beginline=3;endline=3;md5=b2dccaa94b3629a08bfb4f983cad6f89"
SRC_URI = "file://modutils.sh"
-
-S = "${WORKDIR}"
+S = "${WORKDIR}/sources"
+UNPACKDIR = "${S}"
INITSCRIPT_NAME = "modutils.sh"
INITSCRIPT_PARAMS = "start 06 S ."
@@ -17,7 +17,7 @@ do_compile () {
do_install () {
install -d ${D}${sysconfdir}/init.d/
- install -m 0755 ${WORKDIR}/modutils.sh ${D}${sysconfdir}/init.d/
+ install -m 0755 ${S}/modutils.sh ${D}${sysconfdir}/init.d/
}
PACKAGE_WRITE_DEPS:append = " ${@bb.utils.contains('DISTRO_FEATURES','systemd','systemd-systemctl-native','',d)}"
diff --git a/meta/recipes-kernel/systemtap/systemtap/0001-Makefile.am-remove-runtime-linux-uprobes-and-runtime.patch b/meta/recipes-kernel/systemtap/systemtap/0001-Makefile.am-remove-runtime-linux-uprobes-and-runtime.patch
deleted file mode 100644
index 2d46a3962d..0000000000
--- a/meta/recipes-kernel/systemtap/systemtap/0001-Makefile.am-remove-runtime-linux-uprobes-and-runtime.patch
+++ /dev/null
@@ -1,40 +0,0 @@
-From 5a01e28bd806326b2143e3e6bb28d4780c5d879d Mon Sep 17 00:00:00 2001
-From: Victor Kamensky <victor.kamensky7@gmail.com>
-Date: Sun, 3 Dec 2023 18:40:05 -0800
-Subject: [PATCH] Makefile.am: remove runtime/linux/uprobes and
- runtime/linux/uprobes2 install
-
-"PR30434 continuation: Removed old uprobes, uprobes2 implementation,
-uprobes-inc.h & any mentions of CONFIG_UTRACE." commit removed uprobes,
-and uprobes2 sources and directories, but Makefile.am still tries to
-install them. In fact after failing to 'cd' into runtime/linux/uprobes
-directory it copies top level *.[ch] files into
-${prefix}/share/systemtap/runtime/linux/uprobes directory.
-
-The issue was caught by OpenEmbedded project do_package_qa checks.
-
-Signed-off-by: Victor Kamensky <victor.kamensky7@gmail.com>
-
-Upstream-Status: Submitted [https://sourceware.org/pipermail/systemtap/2023q4/027880.html]
----
- Makefile.am | 4 ----
- 1 file changed, 4 deletions(-)
-
-diff --git a/Makefile.am b/Makefile.am
-index 5737c6b20..2ba896088 100644
---- a/Makefile.am
-+++ b/Makefile.am
-@@ -277,10 +277,6 @@ endif
- do $(INSTALL_DATA) -D $$f $(DESTDIR)$(pkgdatadir)/runtime/softfloat/$$f; done)
- (cd $(srcdir)/runtime/linux; for f in *.[ch]; \
- do $(INSTALL_DATA) -D $$f $(DESTDIR)$(pkgdatadir)/runtime/linux/$$f; done)
-- (cd $(srcdir)/runtime/linux/uprobes; for f in Makefile *.[ch]; \
-- do $(INSTALL_DATA) -D $$f $(DESTDIR)$(pkgdatadir)/runtime/linux/uprobes/$$f; done)
-- (cd $(srcdir)/runtime/linux/uprobes2; for f in *.[ch]; \
-- do $(INSTALL_DATA) -D $$f $(DESTDIR)$(pkgdatadir)/runtime/linux/uprobes2/$$f; done)
- (cd $(srcdir)/tapset; find . \( -name '*.stp' -o -name '*.stpm' -o -name README \) -print \
- | while read f; do $(INSTALL_DATA) -D $$f $(DESTDIR)$(pkgdatadir)/tapset/$$f; done)
- (cd $(srcdir)/testsuite/systemtap.examples; find . -type f -print \
---
-2.31.1
-
diff --git a/meta/recipes-kernel/systemtap/systemtap/0001-bpf-translate.cxx-fix-build-against-upcoming-gcc-14-.patch b/meta/recipes-kernel/systemtap/systemtap/0001-bpf-translate.cxx-fix-build-against-upcoming-gcc-14-.patch
deleted file mode 100644
index e3d94d9312..0000000000
--- a/meta/recipes-kernel/systemtap/systemtap/0001-bpf-translate.cxx-fix-build-against-upcoming-gcc-14-.patch
+++ /dev/null
@@ -1,40 +0,0 @@
-From d42139cf9cd26d0c0363fcfe007716baeb8de517 Mon Sep 17 00:00:00 2001
-From: Sergei Trofimovich <slyich@gmail.com>
-Date: Fri, 22 Dec 2023 19:42:38 +0000
-Subject: [PATCH] bpf-translate.cxx: fix build against upcoming `gcc-14`
- (`-Werror=calloc-transposed-args`)
-
-`gcc-14` added a new `-Wcalloc-transposed-args` warning recently. It
-detected minor infelicity in `calloc()` API usage in `systemtap`:
-
- bpf-translate.cxx: In function 'bpf::BPF_Section* bpf::output_probe(BPF_Output&, program&, const std::string&, unsigned int)':
- bpf-translate.cxx:5044:39: error: 'void* calloc(size_t, size_t)' sizes specified with 'sizeof' in the earlier argument and not in the later argument [-Werror=calloc-transposed-args]
- 5044 | bpf_insn *buf = (bpf_insn*) calloc (sizeof(bpf_insn), ninsns);
- | ^~~~~~~~~~~~~~~~
- bpf-translate.cxx:5044:39: note: earlier argument should specify number of elements, later size of each element
-
-Upstream-Status: Backport [https://sourceware.org/git/?p=systemtap.git;a=commit;h=d42139cf9cd26d0c0363fcfe007716baeb8de517]
-Signed-off-by: Khem Raj <raj.khem@gmail.com>
----
- bpf-translate.cxx | 4 ++--
- 1 file changed, 2 insertions(+), 2 deletions(-)
-
-diff --git a/bpf-translate.cxx b/bpf-translate.cxx
-index 1a9302463..aa8ef65ce 100644
---- a/bpf-translate.cxx
-+++ b/bpf-translate.cxx
-@@ -5041,9 +5041,9 @@ output_probe(BPF_Output &eo, program &prog,
- }
- }
-
-- bpf_insn *buf = (bpf_insn*) calloc (sizeof(bpf_insn), ninsns);
-+ bpf_insn *buf = (bpf_insn*) calloc (ninsns, sizeof(bpf_insn));
- assert (buf);
-- Elf64_Rel *rel = (Elf64_Rel*) calloc (sizeof(Elf64_Rel), nreloc);
-+ Elf64_Rel *rel = (Elf64_Rel*) calloc (nreloc, sizeof(Elf64_Rel));
- assert (rel);
-
- unsigned i = 0, r = 0;
---
-2.43.0
-
diff --git a/meta/recipes-kernel/systemtap/systemtap/0001-configure.ac-fix-broken-libdebuginfod-library-auto-d.patch b/meta/recipes-kernel/systemtap/systemtap/0001-configure.ac-fix-broken-libdebuginfod-library-auto-d.patch
deleted file mode 100644
index 98641826f6..0000000000
--- a/meta/recipes-kernel/systemtap/systemtap/0001-configure.ac-fix-broken-libdebuginfod-library-auto-d.patch
+++ /dev/null
@@ -1,51 +0,0 @@
-From 3913ad3e28a19811e1b52338112344a487057e4f Mon Sep 17 00:00:00 2001
-From: Victor Kamensky <victor.kamensky7@gmail.com>
-Date: Mon, 18 Dec 2023 03:13:38 +0000
-Subject: [PATCH 1/2] configure.ac: fix broken libdebuginfod library auto
- detection
-
-After 2e67b053e3796ee7cf29a39f9698729b52078406 "configury: rework debuginfod searches"
-commit, libdebuginfod.so library auto detection is broken. It was reported by Martin Jansa
-on openembedded-core mailing list [1].
-
-Currently configure.ac does "AC_DEFINE([HAVE_LIBDEBUGINFOD], [1] ..." as long as
-no --without-debuginfod option is passed, regardless PKG_CHECK_MODULES check result.
-It seems to be bad copy/paste. Address the issue by moving the AC_DEFINE back to
-PKG_CHECK_MODULES action-if-found block.
-
-To reproduce the issue on FC system, one can do the following
-"sudo dnf remove elfutils-debuginfod-client-devel" and then try to build SystemTap
-util.cxx will fail to compile because of missing elfutils/debuginfod.h because
-config.h will have "#define HAVE_LIBDEBUGINFOD 1", while config.log and configure
-output indicates that check for libdebuginfod library failed.
-
-[1] https://lists.openembedded.org/g/openembedded-core/message/192109?p=%2C%2C%2C20%2C0%2C0%2C0%3A%3Acreated%2C0%2Csystemtap%2C20%2C2%2C0%2C102987514
-
-Upstream-Status: Submitted [https://sourceware.org/pipermail/systemtap/2023q4/027914.html]
-Signed-off-by: Victor Kamensky <victor.kamensky7@gmail.com>
----
- configure.ac | 5 ++---
- 1 file changed, 2 insertions(+), 3 deletions(-)
-
-diff --git a/configure.ac b/configure.ac
-index d9559c5c3..18cd7f84a 100644
---- a/configure.ac
-+++ b/configure.ac
-@@ -219,12 +219,11 @@ dnl take the user at his or her word
- elif test "x$with_debuginfod" != xno; then
- dnl check in the system pkgconfig
- PKG_CHECK_MODULES([debuginfod], [libdebuginfod >= 0.179],
-- [have_debuginfod=1],
-+ [have_debuginfod=1
-+ AC_DEFINE([HAVE_LIBDEBUGINFOD], [1], [Define to 1 if debuginfod is enabled.])],
- [if test "x$with_debuginfod" = xyes; then
- AC_MSG_ERROR(["--with-debuginfod was given, but libdebuginfod is missing or unusable."])
- fi])
-- AC_DEFINE([HAVE_LIBDEBUGINFOD], [1], [Define to 1 if debuginfod is enabled.])
-- AC_MSG_RESULT([yes])
- else
- AC_MSG_RESULT([no])
- fi
---
-2.31.1
-
diff --git a/meta/recipes-kernel/systemtap/systemtap/0001-prerelease-datestamp-fixes.patch b/meta/recipes-kernel/systemtap/systemtap/0001-prerelease-datestamp-fixes.patch
deleted file mode 100644
index afdc10a3fe..0000000000
--- a/meta/recipes-kernel/systemtap/systemtap/0001-prerelease-datestamp-fixes.patch
+++ /dev/null
@@ -1,23 +0,0 @@
-From cfc2c1d53924face11e3fab78ded61c359778eb9 Mon Sep 17 00:00:00 2001
-From: "Frank Ch. Eigler" <fche@redhat.com>
-Date: Sat, 4 Nov 2023 12:19:59 -0400
-Subject: [PATCH] prerelease datestamp fixes
-
-Upstream-Status: Backport
----
- NEWS | 2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
-diff --git a/NEWS b/NEWS
-index c7f31e8b7..f0f9056c4 100644
---- a/NEWS
-+++ b/NEWS
-@@ -1,4 +1,4 @@
--* What's new in version 5.0, 2023-11-03
-+* What's new in version 5.0, 2023-11-04
-
- - Performance improvements in uprobe registration and module startup.
-
---
-2.31.1
-
diff --git a/meta/recipes-kernel/systemtap/systemtap/0001-staprun-fix-build-against-upcoming-gcc-14-Werror-cal.patch b/meta/recipes-kernel/systemtap/systemtap/0001-staprun-fix-build-against-upcoming-gcc-14-Werror-cal.patch
deleted file mode 100644
index 22578fb3f6..0000000000
--- a/meta/recipes-kernel/systemtap/systemtap/0001-staprun-fix-build-against-upcoming-gcc-14-Werror-cal.patch
+++ /dev/null
@@ -1,36 +0,0 @@
-From 52596f023652114642faba5726c99488529029ce Mon Sep 17 00:00:00 2001
-From: Sergei Trofimovich <slyich@gmail.com>
-Date: Thu, 21 Dec 2023 10:00:06 +0000
-Subject: [PATCH] staprun: fix build against upcoming `gcc-14`
- (`-Werror=calloc-transposed-args`)
-
-`gcc-14` added a new `-Wcalloc-transposed-args` warning recently. It
-detected minor infelicity in `calloc()` API usage in `systemtap`:
-
- staprun.c: In function 'main':
- staprun.c:550:50: error: 'calloc' sizes specified with 'sizeof' in the earlier argument and not in the later argument [-Werror=calloc-transposed-args]
- 550 | char ** new_argv = calloc(sizeof(char *),argc+2);
- | ^~~~
-
-Upstream-Status: Backport [https://sourceware.org/git/?p=systemtap.git;a=commit;h=52596f023652114642faba5726c99488529029ce]
-Signed-off-by: Khem Raj <raj.khem@gmail.com>
----
- staprun/staprun.c | 2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
-diff --git a/staprun/staprun.c b/staprun/staprun.c
-index 8437f3af6..d1b0b221b 100644
---- a/staprun/staprun.c
-+++ b/staprun/staprun.c
-@@ -547,7 +547,7 @@ int main(int argc, char **argv)
- us to extend argv[], with all the C fun that entails. */
- #ifdef HAVE_OPENAT
- if (relay_basedir_fd >= 0) {
-- char ** new_argv = calloc(sizeof(char *),argc+2);
-+ char ** new_argv = calloc(argc+2, sizeof(char *));
- const int new_Foption_size = 10; /* -FNNNNN */
- char * new_Foption = malloc(new_Foption_size);
- int i;
---
-2.43.0
-
diff --git a/meta/recipes-kernel/systemtap/systemtap_git.inc b/meta/recipes-kernel/systemtap/systemtap_git.inc
index c574bcb2ba..cc9fc81430 100644
--- a/meta/recipes-kernel/systemtap/systemtap_git.inc
+++ b/meta/recipes-kernel/systemtap/systemtap_git.inc
@@ -1,17 +1,12 @@
LICENSE = "GPL-2.0-only"
LIC_FILES_CHKSUM = "file://COPYING;md5=b234ee4d69f5fce4486a80fdaf4a4263"
-SRCREV = "e72dc118e563c645d93a1a2d771e8d90e8fec1ae"
-PV = "5.0"
+SRCREV = "3a0c9c15163520dd0d9ab07177da62ce9cc2332f"
+PV = "5.1"
SRC_URI = "git://sourceware.org/git/systemtap.git;branch=master;protocol=https \
file://0001-Do-not-let-configure-write-a-python-location-into-th.patch \
file://0001-Install-python-modules-to-correct-library-dir.patch \
file://0001-staprun-stapbpf-don-t-support-installing-a-non-root.patch \
- file://0001-Makefile.am-remove-runtime-linux-uprobes-and-runtime.patch \
- file://0001-prerelease-datestamp-fixes.patch \
- file://0001-configure.ac-fix-broken-libdebuginfod-library-auto-d.patch \
- file://0001-bpf-translate.cxx-fix-build-against-upcoming-gcc-14-.patch \
- file://0001-staprun-fix-build-against-upcoming-gcc-14-Werror-cal.patch \
"
COMPATIBLE_HOST = '(x86_64|i.86|powerpc|arm|aarch64|microblazeel|mips|riscv64).*-linux'
diff --git a/meta/recipes-kernel/wireless-regdb/wireless-regdb_2024.01.23.bb b/meta/recipes-kernel/wireless-regdb/wireless-regdb_2024.05.08.bb
index 8fde236ab4..95e33d9fb1 100644
--- a/meta/recipes-kernel/wireless-regdb/wireless-regdb_2024.01.23.bb
+++ b/meta/recipes-kernel/wireless-regdb/wireless-regdb_2024.05.08.bb
@@ -5,7 +5,7 @@ LICENSE = "ISC"
LIC_FILES_CHKSUM = "file://LICENSE;md5=07c4f6dea3845b02a18dc00c8c87699c"
SRC_URI = "https://www.kernel.org/pub/software/network/${BPN}/${BP}.tar.xz"
-SRC_URI[sha256sum] = "c8a61c9acf76fa7eb4239e89f640dee3e87098d9f69b4d3518c9c60fc6d20c55"
+SRC_URI[sha256sum] = "9aee1d86ebebb363b714bec941b2820f31e3b7f1a485ddc9fcbd9985c7d3e7c4"
inherit bin_package allarch
diff --git a/meta/recipes-multimedia/ffmpeg/ffmpeg/av1_ordering_info.patch b/meta/recipes-multimedia/ffmpeg/ffmpeg/av1_ordering_info.patch
new file mode 100644
index 0000000000..bfc894563c
--- /dev/null
+++ b/meta/recipes-multimedia/ffmpeg/ffmpeg/av1_ordering_info.patch
@@ -0,0 +1,91 @@
+From cafb4c554845332eeb33284cf6498049997dc67e Mon Sep 17 00:00:00 2001
+From: Mark Thompson <sw@jkqxz.net>
+Date: Wed, 20 Mar 2024 20:35:28 +0000
+Subject: [PATCH] lavc/cbs_av1: Save more frame ordering information
+
+This is wanted by the Vulkan decoder.
+
+Signed-off-by: Dmitry Baryshkov <dmitry.baryshkov@linaro.org>
+Upstream-Status: Backport [https://git.ffmpeg.org/gitweb/ffmpeg.git/commitdiff/ecdc94b97f809d5f2b88640842fd0541951ad295]
+---
+ libavcodec/cbs_av1.h | 5 +++++
+ libavcodec/cbs_av1_syntax_template.c | 25 +++++++++++++++++++++----
+ 2 files changed, 26 insertions(+), 4 deletions(-)
+
+diff --git a/libavcodec/cbs_av1.h b/libavcodec/cbs_av1.h
+index a5402f069d..a027013bc7 100644
+--- a/libavcodec/cbs_av1.h
++++ b/libavcodec/cbs_av1.h
+@@ -427,6 +427,8 @@ typedef struct AV1ReferenceFrameState {
+ int bit_depth; // RefBitDepth
+ int order_hint; // RefOrderHint
+
++ int saved_order_hints[AV1_TOTAL_REFS_PER_FRAME]; // SavedOrderHints[ref]
++
+ int8_t loop_filter_ref_deltas[AV1_TOTAL_REFS_PER_FRAME];
+ int8_t loop_filter_mode_deltas[2];
+ uint8_t feature_enabled[AV1_MAX_SEGMENTS][AV1_SEG_LVL_MAX];
+@@ -464,6 +466,9 @@ typedef struct CodedBitstreamAV1Context {
+ int tile_rows;
+ int tile_num;
+
++ int order_hints[AV1_TOTAL_REFS_PER_FRAME]; // OrderHints
++ int ref_frame_sign_bias[AV1_TOTAL_REFS_PER_FRAME]; // RefFrameSignBias
++
+ AV1ReferenceFrameState ref[AV1_NUM_REF_FRAMES];
+
+ // AVOptions
+diff --git a/libavcodec/cbs_av1_syntax_template.c b/libavcodec/cbs_av1_syntax_template.c
+index 3be1f2d30f..2979c5d98f 100644
+--- a/libavcodec/cbs_av1_syntax_template.c
++++ b/libavcodec/cbs_av1_syntax_template.c
+@@ -1414,6 +1414,8 @@ static int FUNC(uncompressed_header)(CodedBitstreamContext *ctx, RWContext *rw,
+ priv->ref[i].valid = 0;
+ priv->ref[i].order_hint = 0;
+ }
++ for (i = 0; i < AV1_REFS_PER_FRAME; i++)
++ priv->order_hints[i + AV1_REF_FRAME_LAST] = 0;
+ }
+
+ flag(disable_cdf_update);
+@@ -1568,11 +1570,20 @@ static int FUNC(uncompressed_header)(CodedBitstreamContext *ctx, RWContext *rw,
+ else
+ flag(use_ref_frame_mvs);
+
+- infer(allow_intrabc, 0);
+- }
++ for (i = 0; i < AV1_REFS_PER_FRAME; i++) {
++ int ref_frame = AV1_REF_FRAME_LAST + i;
++ int hint = priv->ref[current->ref_frame_idx[i]].order_hint;
++ priv->order_hints[ref_frame] = hint;
++ if (!seq->enable_order_hint) {
++ priv->ref_frame_sign_bias[ref_frame] = 0;
++ } else {
++ priv->ref_frame_sign_bias[ref_frame] =
++ cbs_av1_get_relative_dist(seq, hint,
++ current->order_hint) > 0;
++ }
++ }
+
+- if (!frame_is_intra) {
+- // Derive reference frame sign biases.
++ infer(allow_intrabc, 0);
+ }
+
+ if (seq->reduced_still_picture_header || current->disable_cdf_update)
+@@ -1674,6 +1685,12 @@ update_refs:
+ .bit_depth = priv->bit_depth,
+ .order_hint = priv->order_hint,
+ };
++
++ for (int j = 0; j < AV1_REFS_PER_FRAME; j++) {
++ priv->ref[i].saved_order_hints[j + AV1_REF_FRAME_LAST] =
++ priv->order_hints[j + AV1_REF_FRAME_LAST];
++ }
++
+ memcpy(priv->ref[i].loop_filter_ref_deltas, current->loop_filter_ref_deltas,
+ sizeof(current->loop_filter_ref_deltas));
+ memcpy(priv->ref[i].loop_filter_mode_deltas, current->loop_filter_mode_deltas,
+--
+2.25.1
+
diff --git a/meta/recipes-multimedia/ffmpeg/ffmpeg/vulkan_av1_stable_API.patch b/meta/recipes-multimedia/ffmpeg/ffmpeg/vulkan_av1_stable_API.patch
new file mode 100644
index 0000000000..74db148b3b
--- /dev/null
+++ b/meta/recipes-multimedia/ffmpeg/ffmpeg/vulkan_av1_stable_API.patch
@@ -0,0 +1,1382 @@
+From ecdc94b97f809d5f2b88640842fd0541951ad295 Mon Sep 17 00:00:00 2001
+From: Lynne <dev@lynne.ee>
+Date: Fri, 19 Jan 2024 10:49:02 +1000
+Subject: [PATCH] vulkan_av1: port to the new stable API
+
+Co-Authored-by: Dave Airlie <airlied@redhat.com>
+Signed-off-by: Dmitry Baryshkov <dmitry.baryshkov@linaro.org>
+Upstream-Status: Backport [https://git.ffmpeg.org/gitweb/ffmpeg.git/commitdiff/ecdc94b97f809d5f2b88640842fd0541951ad295]
+---
+ configure | 4 +-
+ libavcodec/Makefile | 5 +-
+ libavcodec/vulkan_av1.c | 514 ++++++++++--------
+ libavcodec/vulkan_decode.c | 31 +-
+ libavcodec/vulkan_decode.h | 2 +-
+ libavcodec/vulkan_video.h | 2 -
+ .../vulkan_video_codec_av1std_decode_mesa.h | 36 --
+ libavcodec/vulkan_video_codec_av1std_mesa.h | 403 --------------
+ libavutil/hwcontext_vulkan.c | 2 +-
+ libavutil/vulkan_functions.h | 2 +-
+ libavutil/vulkan_loader.h | 2 +-
+ 11 files changed, 306 insertions(+), 697 deletions(-)
+ delete mode 100644 libavcodec/vulkan_video_codec_av1std_decode_mesa.h
+ delete mode 100644 libavcodec/vulkan_video_codec_av1std_mesa.h
+
+diff --git a/configure b/configure
+index e853deb51d..9fa639fca6 100755
+--- a/configure
++++ b/configure
+@@ -7300,8 +7300,8 @@ enabled vdpau &&
+ "in maintaining it."
+
+ if enabled vulkan; then
+- check_pkg_config_header_only vulkan "vulkan >= 1.3.255" "vulkan/vulkan.h" "defined VK_VERSION_1_3" ||
+- check_cpp_condition vulkan "vulkan/vulkan.h" "defined(VK_VERSION_1_4) || (defined(VK_VERSION_1_3) && VK_HEADER_VERSION >= 255)"
++ check_pkg_config_header_only vulkan "vulkan >= 1.3.277" "vulkan/vulkan.h" "defined VK_VERSION_1_3" ||
++ check_cpp_condition vulkan "vulkan/vulkan.h" "defined(VK_VERSION_1_4) || (defined(VK_VERSION_1_3) && VK_HEADER_VERSION >= 277)"
+ fi
+
+ if disabled vulkan; then
+diff --git a/libavcodec/Makefile b/libavcodec/Makefile
+index 7ef2e03ca6..9ce6d445c1 100644
+--- a/libavcodec/Makefile
++++ b/libavcodec/Makefile
+@@ -1258,8 +1258,7 @@ SKIPHEADERS += %_tablegen.h \
+ aacenc_quantization.h \
+ aacenc_quantization_misc.h \
+ bitstream_template.h \
+- vulkan_video_codec_av1std.h \
+- $(ARCH)/vpx_arith.h \
++ $(ARCH)/vpx_arith.h \
+
+ SKIPHEADERS-$(CONFIG_AMF) += amfenc.h
+ SKIPHEADERS-$(CONFIG_D3D11VA) += d3d11va.h dxva2_internal.h
+@@ -1280,7 +1279,7 @@ SKIPHEADERS-$(CONFIG_QSVENC) += qsvenc.h
+ SKIPHEADERS-$(CONFIG_VAAPI) += vaapi_decode.h vaapi_hevc.h vaapi_encode.h
+ SKIPHEADERS-$(CONFIG_VDPAU) += vdpau.h vdpau_internal.h
+ SKIPHEADERS-$(CONFIG_VIDEOTOOLBOX) += videotoolbox.h vt_internal.h
+-SKIPHEADERS-$(CONFIG_VULKAN) += vulkan.h vulkan_video.h vulkan_decode.h vulkan_video_codec_av1std_decode.h
++SKIPHEADERS-$(CONFIG_VULKAN) += vulkan.h vulkan_video.h vulkan_decode.h
+ SKIPHEADERS-$(CONFIG_V4L2_M2M) += v4l2_buffers.h v4l2_context.h v4l2_m2m.h
+ SKIPHEADERS-$(CONFIG_ZLIB) += zlib_wrapper.h
+
+diff --git a/libavcodec/vulkan_av1.c b/libavcodec/vulkan_av1.c
+index 5afd5353cc..c9e398eaec 100644
+--- a/libavcodec/vulkan_av1.c
++++ b/libavcodec/vulkan_av1.c
+@@ -36,33 +36,47 @@ const FFVulkanDecodeDescriptor ff_vk_dec_av1_desc = {
+ typedef struct AV1VulkanDecodePicture {
+ FFVulkanDecodePicture vp;
+
+- /* Workaround for a spec issue.
+- *Can be removed once no longer needed, and threading can be enabled. */
++ /* TODO: investigate if this can be removed to make decoding completely
++ * independent. */
+ FFVulkanDecodeContext *dec;
+
+- StdVideoAV1MESATile tiles[MAX_TILES];
+- StdVideoAV1MESATileList tile_list;
+- const uint32_t *tile_offsets;
++ uint32_t tile_sizes[MAX_TILES];
+
+ /* Current picture */
+- VkVideoDecodeAV1DpbSlotInfoMESA vkav1_ref;
+- StdVideoAV1MESAFrameHeader av1_frame_header;
+- VkVideoDecodeAV1PictureInfoMESA av1_pic_info;
++ StdVideoDecodeAV1ReferenceInfo std_ref;
++ VkVideoDecodeAV1DpbSlotInfoKHR vkav1_ref;
++ uint16_t width_in_sbs_minus1[64];
++ uint16_t height_in_sbs_minus1[64];
++ uint16_t mi_col_starts[64];
++ uint16_t mi_row_starts[64];
++ StdVideoAV1TileInfo tile_info;
++ StdVideoAV1Quantization quantization;
++ StdVideoAV1Segmentation segmentation;
++ StdVideoAV1LoopFilter loop_filter;
++ StdVideoAV1CDEF cdef;
++ StdVideoAV1LoopRestoration loop_restoration;
++ StdVideoAV1GlobalMotion global_motion;
++ StdVideoAV1FilmGrain film_grain;
++ StdVideoDecodeAV1PictureInfo std_pic_info;
++ VkVideoDecodeAV1PictureInfoKHR av1_pic_info;
+
+ /* Picture refs */
+ const AV1Frame *ref_src [AV1_NUM_REF_FRAMES];
+- VkVideoDecodeAV1DpbSlotInfoMESA vkav1_refs[AV1_NUM_REF_FRAMES];
++ StdVideoDecodeAV1ReferenceInfo std_refs [AV1_NUM_REF_FRAMES];
++ VkVideoDecodeAV1DpbSlotInfoKHR vkav1_refs[AV1_NUM_REF_FRAMES];
+
+ uint8_t frame_id_set;
+ uint8_t frame_id;
++ uint8_t ref_frame_sign_bias_mask;
+ } AV1VulkanDecodePicture;
+
+ static int vk_av1_fill_pict(AVCodecContext *avctx, const AV1Frame **ref_src,
+ VkVideoReferenceSlotInfoKHR *ref_slot, /* Main structure */
+ VkVideoPictureResourceInfoKHR *ref, /* Goes in ^ */
+- VkVideoDecodeAV1DpbSlotInfoMESA *vkav1_ref, /* Goes in ^ */
++ StdVideoDecodeAV1ReferenceInfo *vkav1_std_ref,
++ VkVideoDecodeAV1DpbSlotInfoKHR *vkav1_ref, /* Goes in ^ */
+ const AV1Frame *pic, int is_current, int has_grain,
+- int dpb_slot_index)
++ int *saved_order_hints)
+ {
+ FFVulkanDecodeContext *dec = avctx->internal->hwaccel_priv_data;
+ AV1VulkanDecodePicture *hp = pic->hwaccel_picture_private;
+@@ -73,31 +87,42 @@ static int vk_av1_fill_pict(AVCodecContext *avctx, const AV1Frame **ref_src,
+ if (err < 0)
+ return err;
+
+- *vkav1_ref = (VkVideoDecodeAV1DpbSlotInfoMESA) {
+- .sType = VK_STRUCTURE_TYPE_VIDEO_DECODE_AV1_DPB_SLOT_INFO_MESA,
+- .frameIdx = hp->frame_id,
++ *vkav1_std_ref = (StdVideoDecodeAV1ReferenceInfo) {
++ .flags = (StdVideoDecodeAV1ReferenceInfoFlags) {
++ .disable_frame_end_update_cdf = pic->raw_frame_header->disable_frame_end_update_cdf,
++ .segmentation_enabled = pic->raw_frame_header->segmentation_enabled,
++ },
++ .frame_type = pic->raw_frame_header->frame_type,
++ .OrderHint = pic->raw_frame_header->order_hint,
++ .RefFrameSignBias = hp->ref_frame_sign_bias_mask,
+ };
+
+- for (unsigned i = 0; i < 7; i++) {
+- const int idx = pic->raw_frame_header->ref_frame_idx[i];
+- vkav1_ref->ref_order_hint[i] = pic->raw_frame_header->ref_order_hint[idx];
+- }
++ if (saved_order_hints)
++ for (int i = 0; i < AV1_TOTAL_REFS_PER_FRAME; i++)
++ vkav1_std_ref->SavedOrderHints[i] = saved_order_hints[i];
++
++ *vkav1_ref = (VkVideoDecodeAV1DpbSlotInfoKHR) {
++ .sType = VK_STRUCTURE_TYPE_VIDEO_DECODE_AV1_DPB_SLOT_INFO_KHR,
++ .pStdReferenceInfo = vkav1_std_ref,
++ };
+
+- vkav1_ref->disable_frame_end_update_cdf = pic->raw_frame_header->disable_frame_end_update_cdf;
++ vkav1_std_ref->flags.disable_frame_end_update_cdf = pic->raw_frame_header->disable_frame_end_update_cdf;
++ vkav1_std_ref->flags.segmentation_enabled = pic->raw_frame_header->segmentation_enabled;
++ vkav1_std_ref->frame_type = pic->raw_frame_header->frame_type;
+
+ *ref = (VkVideoPictureResourceInfoKHR) {
+ .sType = VK_STRUCTURE_TYPE_VIDEO_PICTURE_RESOURCE_INFO_KHR,
+ .codedOffset = (VkOffset2D){ 0, 0 },
+ .codedExtent = (VkExtent2D){ pic->f->width, pic->f->height },
+ .baseArrayLayer = ((has_grain || dec->dedicated_dpb) && dec->layered_dpb) ?
+- dpb_slot_index : 0,
++ hp->frame_id : 0,
+ .imageViewBinding = vkpic->img_view_ref,
+ };
+
+ *ref_slot = (VkVideoReferenceSlotInfoKHR) {
+ .sType = VK_STRUCTURE_TYPE_VIDEO_REFERENCE_SLOT_INFO_KHR,
+ .pNext = vkav1_ref,
+- .slotIndex = dpb_slot_index,
++ .slotIndex = hp->frame_id,
+ .pPictureResource = ref,
+ };
+
+@@ -115,15 +140,40 @@ static int vk_av1_create_params(AVCodecContext *avctx, AVBufferRef **buf)
+
+ const AV1RawSequenceHeader *seq = s->raw_seq;
+
+- StdVideoAV1MESASequenceHeader av1_sequence_header;
+- VkVideoDecodeAV1SessionParametersAddInfoMESA av1_params_info;
+- VkVideoDecodeAV1SessionParametersCreateInfoMESA av1_params;
++ StdVideoAV1SequenceHeader av1_sequence_header;
++ StdVideoAV1TimingInfo av1_timing_info;
++ StdVideoAV1ColorConfig av1_color_config;
++ VkVideoDecodeAV1SessionParametersCreateInfoKHR av1_params;
+ VkVideoSessionParametersCreateInfoKHR session_params_create;
+
+ int err;
+
+- av1_sequence_header = (StdVideoAV1MESASequenceHeader) {
+- .flags = (StdVideoAV1MESASequenceHeaderFlags) {
++ av1_timing_info = (StdVideoAV1TimingInfo) {
++ .flags = (StdVideoAV1TimingInfoFlags) {
++ .equal_picture_interval = seq->timing_info.equal_picture_interval,
++ },
++ .num_units_in_display_tick = seq->timing_info.num_units_in_display_tick,
++ .time_scale = seq->timing_info.time_scale,
++ .num_ticks_per_picture_minus_1 = seq->timing_info.num_ticks_per_picture_minus_1,
++ };
++
++ av1_color_config = (StdVideoAV1ColorConfig) {
++ .flags = (StdVideoAV1ColorConfigFlags) {
++ .mono_chrome = seq->color_config.mono_chrome,
++ .color_range = seq->color_config.color_range,
++ .separate_uv_delta_q = seq->color_config.separate_uv_delta_q,
++ },
++ .BitDepth = seq->color_config.twelve_bit ? 12 :
++ seq->color_config.high_bitdepth ? 10 : 8,
++ .subsampling_x = seq->color_config.subsampling_x,
++ .subsampling_y = seq->color_config.subsampling_y,
++ .color_primaries = seq->color_config.color_primaries,
++ .transfer_characteristics = seq->color_config.transfer_characteristics,
++ .matrix_coefficients = seq->color_config.matrix_coefficients,
++ };
++
++ av1_sequence_header = (StdVideoAV1SequenceHeader) {
++ .flags = (StdVideoAV1SequenceHeaderFlags) {
+ .still_picture = seq->still_picture,
+ .reduced_still_picture_header = seq->reduced_still_picture_header,
+ .use_128x128_superblock = seq->use_128x128_superblock,
+@@ -152,34 +202,15 @@ static int vk_av1_create_params(AVCodecContext *avctx, AVBufferRef **buf)
+ .delta_frame_id_length_minus_2 = seq->delta_frame_id_length_minus_2,
+ .additional_frame_id_length_minus_1 = seq->additional_frame_id_length_minus_1,
+ .order_hint_bits_minus_1 = seq->order_hint_bits_minus_1,
+- .timing_info = (StdVideoAV1MESATimingInfo) {
+- .flags = (StdVideoAV1MESATimingInfoFlags) {
+- .equal_picture_interval = seq->timing_info.equal_picture_interval,
+- },
+- .num_units_in_display_tick = seq->timing_info.num_units_in_display_tick,
+- .time_scale = seq->timing_info.time_scale,
+- .num_ticks_per_picture_minus_1 = seq->timing_info.num_ticks_per_picture_minus_1,
+- },
+- .color_config = (StdVideoAV1MESAColorConfig) {
+- .flags = (StdVideoAV1MESAColorConfigFlags) {
+- .mono_chrome = seq->color_config.mono_chrome,
+- .color_range = seq->color_config.color_range,
+- .separate_uv_delta_q = seq->color_config.separate_uv_delta_q,
+- },
+- .bit_depth = seq->color_config.twelve_bit ? 12 :
+- seq->color_config.high_bitdepth ? 10 : 8,
+- .subsampling_x = seq->color_config.subsampling_x,
+- .subsampling_y = seq->color_config.subsampling_y,
+- },
++ .seq_force_integer_mv = seq->seq_force_integer_mv,
++ .seq_force_screen_content_tools = seq->seq_force_screen_content_tools,
++ .pTimingInfo = &av1_timing_info,
++ .pColorConfig = &av1_color_config,
+ };
+
+- av1_params_info = (VkVideoDecodeAV1SessionParametersAddInfoMESA) {
+- .sType = VK_STRUCTURE_TYPE_VIDEO_DECODE_AV1_SESSION_PARAMETERS_ADD_INFO_MESA,
+- .sequence_header = &av1_sequence_header,
+- };
+- av1_params = (VkVideoDecodeAV1SessionParametersCreateInfoMESA) {
+- .sType = VK_STRUCTURE_TYPE_VIDEO_DECODE_AV1_SESSION_PARAMETERS_CREATE_INFO_MESA,
+- .pParametersAddInfo = &av1_params_info,
++ av1_params = (VkVideoDecodeAV1SessionParametersCreateInfoKHR) {
++ .sType = VK_STRUCTURE_TYPE_VIDEO_DECODE_AV1_SESSION_PARAMETERS_CREATE_INFO_KHR,
++ .pStdSequenceHeader = &av1_sequence_header,
+ };
+ session_params_create = (VkVideoSessionParametersCreateInfoKHR) {
+ .sType = VK_STRUCTURE_TYPE_VIDEO_SESSION_PARAMETERS_CREATE_INFO_KHR,
+@@ -211,8 +242,14 @@ static int vk_av1_start_frame(AVCodecContext *avctx,
+
+ const AV1RawFrameHeader *frame_header = s->raw_frame_header;
+ const AV1RawFilmGrainParams *film_grain = &s->cur_frame.film_grain;
++ CodedBitstreamAV1Context *cbs_ctx = (CodedBitstreamAV1Context *)(s->cbc->priv_data);
++
+ const int apply_grain = !(avctx->export_side_data & AV_CODEC_EXPORT_DATA_FILM_GRAIN) &&
+ film_grain->apply_grain;
++ StdVideoAV1FrameRestorationType remap_lr_type[4] = { STD_VIDEO_AV1_FRAME_RESTORATION_TYPE_NONE,
++ STD_VIDEO_AV1_FRAME_RESTORATION_TYPE_SWITCHABLE,
++ STD_VIDEO_AV1_FRAME_RESTORATION_TYPE_WIENER,
++ STD_VIDEO_AV1_FRAME_RESTORATION_TYPE_SGRPROJ };
+
+ if (!dec->session_params) {
+ err = vk_av1_create_params(avctx, &dec->session_params);
+@@ -233,15 +270,31 @@ static int vk_av1_start_frame(AVCodecContext *avctx,
+ dec->frame_id_alloc_mask |= (1 << slot_idx);
+ }
+
+- /* Fill in references */
+- for (int i = 0; i < AV1_NUM_REF_FRAMES; i++) {
+- const AV1Frame *ref_frame = &s->ref[i];
+- if (s->ref[i].f->pict_type == AV_PICTURE_TYPE_NONE)
++ ap->ref_frame_sign_bias_mask = 0x0;
++ for (int i = 0; i < STD_VIDEO_AV1_TOTAL_REFS_PER_FRAME; i++)
++ ap->ref_frame_sign_bias_mask |= cbs_ctx->ref_frame_sign_bias[i] << i;
++
++ for (int i = 0; i < STD_VIDEO_AV1_REFS_PER_FRAME; i++) {
++ const int idx = pic->raw_frame_header->ref_frame_idx[i];
++ const AV1Frame *ref_frame = &s->ref[idx];
++ AV1VulkanDecodePicture *hp = ref_frame->hwaccel_picture_private;
++ int found = 0;
++
++ if (ref_frame->f->pict_type == AV_PICTURE_TYPE_NONE)
++ continue;
++
++ for (int j = 0; j < ref_count; j++) {
++ if (vp->ref_slots[j].slotIndex == hp->frame_id) {
++ found = 1;
++ break;
++ }
++ }
++ if (found)
+ continue;
+
+- err = vk_av1_fill_pict(avctx, &ap->ref_src[i], &vp->ref_slots[i],
+- &vp->refs[i], &ap->vkav1_refs[i],
+- ref_frame, 0, 0, i);
++ err = vk_av1_fill_pict(avctx, &ap->ref_src[ref_count], &vp->ref_slots[ref_count],
++ &vp->refs[ref_count], &ap->std_refs[ref_count], &ap->vkav1_refs[ref_count],
++ ref_frame, 0, 0, cbs_ctx->ref[idx].saved_order_hints);
+ if (err < 0)
+ return err;
+
+@@ -249,20 +302,32 @@ static int vk_av1_start_frame(AVCodecContext *avctx,
+ }
+
+ err = vk_av1_fill_pict(avctx, NULL, &vp->ref_slot, &vp->ref,
++ &ap->std_ref,
+ &ap->vkav1_ref,
+- pic, 1, apply_grain, 8);
++ pic, 1, apply_grain, NULL);
+ if (err < 0)
+ return err;
+
+- ap->tile_list.nb_tiles = 0;
+- ap->tile_list.tile_list = ap->tiles;
+-
+- ap->av1_pic_info = (VkVideoDecodeAV1PictureInfoMESA) {
+- .sType = VK_STRUCTURE_TYPE_VIDEO_DECODE_AV1_PICTURE_INFO_MESA,
+- .frame_header = &ap->av1_frame_header,
+- .tile_list = &ap->tile_list,
++ ap->av1_pic_info = (VkVideoDecodeAV1PictureInfoKHR) {
++ .sType = VK_STRUCTURE_TYPE_VIDEO_DECODE_AV1_PICTURE_INFO_KHR,
++ .pStdPictureInfo = &ap->std_pic_info,
++ .frameHeaderOffset = 0,
++ .tileCount = 0,
++ .pTileOffsets = NULL,
++ .pTileSizes = ap->tile_sizes,
+ };
+
++ for (int i = 0; i < STD_VIDEO_AV1_REFS_PER_FRAME; i++) {
++ const int idx = pic->raw_frame_header->ref_frame_idx[i];
++ const AV1Frame *ref_frame = &s->ref[idx];
++ AV1VulkanDecodePicture *hp = ref_frame->hwaccel_picture_private;
++
++ if (ref_frame->f->pict_type == AV_PICTURE_TYPE_NONE)
++ ap->av1_pic_info.referenceNameSlotIndices[i] = -1;
++ else
++ ap->av1_pic_info.referenceNameSlotIndices[i] = hp->frame_id;
++ }
++
+ vp->decode_info = (VkVideoDecodeInfoKHR) {
+ .sType = VK_STRUCTURE_TYPE_VIDEO_DECODE_INFO_KHR,
+ .pNext = &ap->av1_pic_info,
+@@ -279,9 +344,87 @@ static int vk_av1_start_frame(AVCodecContext *avctx,
+ },
+ };
+
++ ap->tile_info = (StdVideoAV1TileInfo) {
++ .flags = (StdVideoAV1TileInfoFlags) {
++ .uniform_tile_spacing_flag = frame_header->uniform_tile_spacing_flag,
++ },
++ .TileCols = frame_header->tile_cols,
++ .TileRows = frame_header->tile_rows,
++ .context_update_tile_id = frame_header->context_update_tile_id,
++ .tile_size_bytes_minus_1 = frame_header->tile_size_bytes_minus1,
++ .pWidthInSbsMinus1 = ap->width_in_sbs_minus1,
++ .pHeightInSbsMinus1 = ap->height_in_sbs_minus1,
++ .pMiColStarts = ap->mi_col_starts,
++ .pMiRowStarts = ap->mi_row_starts,
++ };
++
++ ap->quantization = (StdVideoAV1Quantization) {
++ .flags.using_qmatrix = frame_header->using_qmatrix,
++ .flags.diff_uv_delta = frame_header->diff_uv_delta,
++ .base_q_idx = frame_header->base_q_idx,
++ .DeltaQYDc = frame_header->delta_q_y_dc,
++ .DeltaQUDc = frame_header->delta_q_u_dc,
++ .DeltaQUAc = frame_header->delta_q_u_ac,
++ .DeltaQVDc = frame_header->delta_q_v_dc,
++ .DeltaQVAc = frame_header->delta_q_v_ac,
++ .qm_y = frame_header->qm_y,
++ .qm_u = frame_header->qm_u,
++ .qm_v = frame_header->qm_v,
++ };
++
++ ap->loop_filter = (StdVideoAV1LoopFilter) {
++ .flags = (StdVideoAV1LoopFilterFlags) {
++ .loop_filter_delta_enabled = frame_header->loop_filter_delta_enabled,
++ .loop_filter_delta_update = frame_header->loop_filter_delta_update,
++ },
++ .loop_filter_sharpness = frame_header->loop_filter_sharpness,
++ };
++
++ for (int i = 0; i < STD_VIDEO_AV1_MAX_LOOP_FILTER_STRENGTHS; i++)
++ ap->loop_filter.loop_filter_level[i] = frame_header->loop_filter_level[i];
++ for (int i = 0; i < STD_VIDEO_AV1_LOOP_FILTER_ADJUSTMENTS; i++)
++ ap->loop_filter.loop_filter_mode_deltas[i] = frame_header->loop_filter_mode_deltas[i];
++
++ ap->cdef = (StdVideoAV1CDEF) {
++ .cdef_damping_minus_3 = frame_header->cdef_damping_minus_3,
++ .cdef_bits = frame_header->cdef_bits,
++ };
++
++ ap->loop_restoration = (StdVideoAV1LoopRestoration) {
++ .FrameRestorationType[0] = remap_lr_type[frame_header->lr_type[0]],
++ .FrameRestorationType[1] = remap_lr_type[frame_header->lr_type[1]],
++ .FrameRestorationType[2] = remap_lr_type[frame_header->lr_type[2]],
++ .LoopRestorationSize[0] = 1 + frame_header->lr_unit_shift,
++ .LoopRestorationSize[1] = 1 + frame_header->lr_unit_shift - frame_header->lr_uv_shift,
++ .LoopRestorationSize[2] = 1 + frame_header->lr_unit_shift - frame_header->lr_uv_shift,
++ };
++
++ ap->film_grain = (StdVideoAV1FilmGrain) {
++ .flags = (StdVideoAV1FilmGrainFlags) {
++ .chroma_scaling_from_luma = film_grain->chroma_scaling_from_luma,
++ .overlap_flag = film_grain->overlap_flag,
++ .clip_to_restricted_range = film_grain->clip_to_restricted_range,
++ },
++ .grain_scaling_minus_8 = film_grain->grain_scaling_minus_8,
++ .ar_coeff_lag = film_grain->ar_coeff_lag,
++ .ar_coeff_shift_minus_6 = film_grain->ar_coeff_shift_minus_6,
++ .grain_scale_shift = film_grain->grain_scale_shift,
++ .grain_seed = film_grain->grain_seed,
++ .film_grain_params_ref_idx = film_grain->film_grain_params_ref_idx,
++ .num_y_points = film_grain->num_y_points,
++ .num_cb_points = film_grain->num_cb_points,
++ .num_cr_points = film_grain->num_cr_points,
++ .cb_mult = film_grain->cb_mult,
++ .cb_luma_mult = film_grain->cb_luma_mult,
++ .cb_offset = film_grain->cb_offset,
++ .cr_mult = film_grain->cr_mult,
++ .cr_luma_mult = film_grain->cr_luma_mult,
++ .cr_offset = film_grain->cr_offset,
++ };
++
+ /* Setup frame header */
+- ap->av1_frame_header = (StdVideoAV1MESAFrameHeader) {
+- .flags = (StdVideoAV1MESAFrameHeaderFlags) {
++ ap->std_pic_info = (StdVideoDecodeAV1PictureInfo) {
++ .flags = (StdVideoDecodeAV1PictureInfoFlags) {
+ .error_resilient_mode = frame_header->error_resilient_mode,
+ .disable_cdf_update = frame_header->disable_cdf_update,
+ .use_superres = frame_header->use_superres,
+@@ -302,174 +445,92 @@ static int vk_av1_start_frame(AVCodecContext *avctx,
+ .reference_select = frame_header->reference_select,
+ .skip_mode_present = frame_header->skip_mode_present,
+ .delta_q_present = frame_header->delta_q_present,
++ .delta_lf_present = frame_header->delta_lf_present,
++ .delta_lf_multi = frame_header->delta_lf_multi,
++ .segmentation_enabled = frame_header->segmentation_enabled,
++ .segmentation_update_map = frame_header->segmentation_update_map,
++ .segmentation_temporal_update = frame_header->segmentation_temporal_update,
++ .segmentation_update_data = frame_header->segmentation_update_data,
++ .UsesLr = frame_header->lr_type[0] || frame_header->lr_type[1] || frame_header->lr_type[2],
++ .apply_grain = apply_grain,
+ },
+- .frame_to_show_map_idx = frame_header->frame_to_show_map_idx,
+- .frame_presentation_time = frame_header->frame_presentation_time,
+- .display_frame_id = frame_header->display_frame_id,
+ .frame_type = frame_header->frame_type,
+ .current_frame_id = frame_header->current_frame_id,
+- .order_hint = frame_header->order_hint,
++ .OrderHint = frame_header->order_hint,
+ .primary_ref_frame = frame_header->primary_ref_frame,
+- .frame_width_minus_1 = frame_header->frame_width_minus_1,
+- .frame_height_minus_1 = frame_header->frame_height_minus_1,
+- .coded_denom = frame_header->coded_denom,
+- .render_width_minus_1 = frame_header->render_width_minus_1,
+- .render_height_minus_1 = frame_header->render_height_minus_1,
+ .refresh_frame_flags = frame_header->refresh_frame_flags,
+ .interpolation_filter = frame_header->interpolation_filter,
+- .tx_mode = frame_header->tx_mode,
+- .tiling = (StdVideoAV1MESATileInfo) {
+- .flags = (StdVideoAV1MESATileInfoFlags) {
+- .uniform_tile_spacing_flag = frame_header->uniform_tile_spacing_flag,
+- },
+- .tile_cols = frame_header->tile_cols,
+- .tile_rows = frame_header->tile_rows,
+- .context_update_tile_id = frame_header->context_update_tile_id,
+- .tile_size_bytes_minus1 = frame_header->tile_size_bytes_minus1,
+- },
+- .quantization = (StdVideoAV1MESAQuantization) {
+- .flags.using_qmatrix = frame_header->using_qmatrix,
+- .base_q_idx = frame_header->base_q_idx,
+- .delta_q_y_dc = frame_header->delta_q_y_dc,
+- .diff_uv_delta = frame_header->diff_uv_delta,
+- .delta_q_u_dc = frame_header->delta_q_u_dc,
+- .delta_q_u_ac = frame_header->delta_q_u_ac,
+- .delta_q_v_dc = frame_header->delta_q_v_dc,
+- .delta_q_v_ac = frame_header->delta_q_v_ac,
+- .qm_y = frame_header->qm_y,
+- .qm_u = frame_header->qm_u,
+- .qm_v = frame_header->qm_v,
+- },
+- .delta_q = (StdVideoAV1MESADeltaQ) {
+- .flags = (StdVideoAV1MESADeltaQFlags) {
+- .delta_lf_present = frame_header->delta_lf_present,
+- .delta_lf_multi = frame_header->delta_lf_multi,
+- },
+- .delta_q_res = frame_header->delta_q_res,
+- .delta_lf_res = frame_header->delta_lf_res,
+- },
+- .loop_filter = (StdVideoAV1MESALoopFilter) {
+- .flags = (StdVideoAV1MESALoopFilterFlags) {
+- .delta_enabled = frame_header->loop_filter_delta_enabled,
+- .delta_update = frame_header->loop_filter_delta_update,
+- },
+- .level = {
+- frame_header->loop_filter_level[0], frame_header->loop_filter_level[1],
+- frame_header->loop_filter_level[2], frame_header->loop_filter_level[3],
+- },
+- .sharpness = frame_header->loop_filter_sharpness,
+- .mode_deltas = {
+- frame_header->loop_filter_mode_deltas[0], frame_header->loop_filter_mode_deltas[1],
+- },
+- },
+- .cdef = (StdVideoAV1MESACDEF) {
+- .damping_minus_3 = frame_header->cdef_damping_minus_3,
+- .bits = frame_header->cdef_bits,
+- },
+- .lr = (StdVideoAV1MESALoopRestoration) {
+- .lr_unit_shift = frame_header->lr_unit_shift,
+- .lr_uv_shift = frame_header->lr_uv_shift,
+- .lr_type = { frame_header->lr_type[0], frame_header->lr_type[1], frame_header->lr_type[2] },
+- },
+- .segmentation = (StdVideoAV1MESASegmentation) {
+- .flags = (StdVideoAV1MESASegmentationFlags) {
+- .enabled = frame_header->segmentation_enabled,
+- .update_map = frame_header->segmentation_update_map,
+- .temporal_update = frame_header->segmentation_temporal_update,
+- .update_data = frame_header->segmentation_update_data,
+- },
+- },
+- .film_grain = (StdVideoAV1MESAFilmGrainParameters) {
+- .flags = (StdVideoAV1MESAFilmGrainFlags) {
+- .apply_grain = apply_grain,
+- .chroma_scaling_from_luma = film_grain->chroma_scaling_from_luma,
+- .overlap_flag = film_grain->overlap_flag,
+- .clip_to_restricted_range = film_grain->clip_to_restricted_range,
+- },
+- .grain_scaling_minus_8 = film_grain->grain_scaling_minus_8,
+- .ar_coeff_lag = film_grain->ar_coeff_lag,
+- .ar_coeff_shift_minus_6 = film_grain->ar_coeff_shift_minus_6,
+- .grain_scale_shift = film_grain->grain_scale_shift,
+- .grain_seed = film_grain->grain_seed,
+- .num_y_points = film_grain->num_y_points,
+- .num_cb_points = film_grain->num_cb_points,
+- .num_cr_points = film_grain->num_cr_points,
+- .cb_mult = film_grain->cb_mult,
+- .cb_luma_mult = film_grain->cb_luma_mult,
+- .cb_offset = film_grain->cb_offset,
+- .cr_mult = film_grain->cr_mult,
+- .cr_luma_mult = film_grain->cr_luma_mult,
+- .cr_offset = film_grain->cr_offset,
+- },
++ .TxMode = frame_header->tx_mode,
++ .delta_q_res = frame_header->delta_q_res,
++ .delta_lf_res = frame_header->delta_lf_res,
++ .SkipModeFrame[0] = s->cur_frame.skip_mode_frame_idx[0],
++ .SkipModeFrame[1] = s->cur_frame.skip_mode_frame_idx[1],
++ .coded_denom = frame_header->coded_denom,
++ .pTileInfo = &ap->tile_info,
++ .pQuantization = &ap->quantization,
++ .pSegmentation = &ap->segmentation,
++ .pLoopFilter = &ap->loop_filter,
++ .pCDEF = &ap->cdef,
++ .pLoopRestoration = &ap->loop_restoration,
++ .pGlobalMotion = &ap->global_motion,
++ .pFilmGrain = apply_grain ? &ap->film_grain : NULL,
+ };
+
+ for (int i = 0; i < 64; i++) {
+- ap->av1_frame_header.tiling.width_in_sbs_minus_1[i] = frame_header->width_in_sbs_minus_1[i];
+- ap->av1_frame_header.tiling.height_in_sbs_minus_1[i] = frame_header->height_in_sbs_minus_1[i];
+- ap->av1_frame_header.tiling.tile_start_col_sb[i] = frame_header->tile_start_col_sb[i];
+- ap->av1_frame_header.tiling.tile_start_row_sb[i] = frame_header->tile_start_row_sb[i];
++ ap->width_in_sbs_minus1[i] = frame_header->width_in_sbs_minus_1[i];
++ ap->height_in_sbs_minus1[i] = frame_header->height_in_sbs_minus_1[i];
++ ap->mi_col_starts[i] = frame_header->tile_start_col_sb[i];
++ ap->mi_row_starts[i] = frame_header->tile_start_row_sb[i];
+ }
+
+- for (int i = 0; i < 8; i++) {
+- ap->av1_frame_header.segmentation.feature_enabled_bits[i] = 0;
+- for (int j = 0; j < 8; j++) {
+- ap->av1_frame_header.segmentation.feature_enabled_bits[i] |= (frame_header->feature_enabled[i][j] << j);
+- ap->av1_frame_header.segmentation.feature_data[i][j] = frame_header->feature_value[i][j];
++ for (int i = 0; i < STD_VIDEO_AV1_MAX_SEGMENTS; i++) {
++ ap->segmentation.FeatureEnabled[i] = 0x0;
++ for (int j = 0; j < STD_VIDEO_AV1_SEG_LVL_MAX; j++) {
++ ap->segmentation.FeatureEnabled[i] |= (frame_header->feature_enabled[i][j] << j);
++ ap->segmentation.FeatureData[i][j] = frame_header->feature_value[i][j];
+ }
+-
+- ap->av1_frame_header.loop_filter.ref_deltas[i] = frame_header->loop_filter_ref_deltas[i];
+-
+- ap->av1_frame_header.cdef.y_pri_strength[i] = frame_header->cdef_y_pri_strength[i];
+- ap->av1_frame_header.cdef.y_sec_strength[i] = frame_header->cdef_y_sec_strength[i];
+- ap->av1_frame_header.cdef.uv_pri_strength[i] = frame_header->cdef_uv_pri_strength[i];
+- ap->av1_frame_header.cdef.uv_sec_strength[i] = frame_header->cdef_uv_sec_strength[i];
+-
+- ap->av1_frame_header.ref_order_hint[i] = frame_header->ref_order_hint[i];
+- ap->av1_frame_header.global_motion[i] = (StdVideoAV1MESAGlobalMotion) {
+- .flags = (StdVideoAV1MESAGlobalMotionFlags) {
+- .gm_invalid = s->cur_frame.gm_invalid[i],
+- },
+- .gm_type = s->cur_frame.gm_type[i],
+- .gm_params = {
+- s->cur_frame.gm_params[i][0], s->cur_frame.gm_params[i][1],
+- s->cur_frame.gm_params[i][2], s->cur_frame.gm_params[i][3],
+- s->cur_frame.gm_params[i][4], s->cur_frame.gm_params[i][5],
+- },
+- };
+ }
+
+- for (int i = 0; i < 7; i++) {
+- ap->av1_frame_header.ref_frame_idx[i] = frame_header->ref_frame_idx[i];
+- ap->av1_frame_header.delta_frame_id_minus1[i] = frame_header->delta_frame_id_minus1[i];
++ for (int i = 0; i < STD_VIDEO_AV1_TOTAL_REFS_PER_FRAME; i++)
++ ap->loop_filter.loop_filter_ref_deltas[i] = frame_header->loop_filter_ref_deltas[i];
++
++ for (int i = 0; i < STD_VIDEO_AV1_MAX_CDEF_FILTER_STRENGTHS; i++) {
++ ap->cdef.cdef_y_pri_strength[i] = frame_header->cdef_y_pri_strength[i];
++ ap->cdef.cdef_y_sec_strength[i] = frame_header->cdef_y_sec_strength[i];
++ ap->cdef.cdef_uv_pri_strength[i] = frame_header->cdef_uv_pri_strength[i];
++ ap->cdef.cdef_uv_sec_strength[i] = frame_header->cdef_uv_sec_strength[i];
+ }
+
+- ap->av1_pic_info.skip_mode_frame_idx[0] = s->cur_frame.skip_mode_frame_idx[0];
+- ap->av1_pic_info.skip_mode_frame_idx[1] = s->cur_frame.skip_mode_frame_idx[1];
++ for (int i = 0; i < STD_VIDEO_AV1_NUM_REF_FRAMES; i++) {
++ ap->std_pic_info.OrderHints[i] = frame_header->ref_order_hint[i];
++ ap->global_motion.GmType[i] = s->cur_frame.gm_type[i];
++ for (int j = 0; j < STD_VIDEO_AV1_GLOBAL_MOTION_PARAMS; j++) {
++ ap->global_motion.gm_params[i][j] = s->cur_frame.gm_params[i][j];
++ }
++ }
+
+ if (apply_grain) {
+- for (int i = 0; i < 14; i++) {
+- ap->av1_frame_header.film_grain.point_y_value[i] = film_grain->point_y_value[i];
+- ap->av1_frame_header.film_grain.point_y_scaling[i] = film_grain->point_y_scaling[i];
++ for (int i = 0; i < STD_VIDEO_AV1_MAX_NUM_Y_POINTS; i++) {
++ ap->film_grain.point_y_value[i] = film_grain->point_y_value[i];
++ ap->film_grain.point_y_scaling[i] = film_grain->point_y_scaling[i];
+ }
+
+- for (int i = 0; i < 10; i++) {
+- ap->av1_frame_header.film_grain.point_cb_value[i] = film_grain->point_cb_value[i];
+- ap->av1_frame_header.film_grain.point_cb_scaling[i] = film_grain->point_cb_scaling[i];
+- ap->av1_frame_header.film_grain.point_cr_value[i] = film_grain->point_cr_value[i];
+- ap->av1_frame_header.film_grain.point_cr_scaling[i] = film_grain->point_cr_scaling[i];
++ for (int i = 0; i < STD_VIDEO_AV1_MAX_NUM_CB_POINTS; i++) {
++ ap->film_grain.point_cb_value[i] = film_grain->point_cb_value[i];
++ ap->film_grain.point_cb_scaling[i] = film_grain->point_cb_scaling[i];
++ ap->film_grain.point_cr_value[i] = film_grain->point_cr_value[i];
++ ap->film_grain.point_cr_scaling[i] = film_grain->point_cr_scaling[i];
+ }
+
+- for (int i = 0; i < 24; i++) {
+- ap->av1_frame_header.film_grain.ar_coeffs_y_plus_128[i] = film_grain->ar_coeffs_y_plus_128[i];
+- ap->av1_frame_header.film_grain.ar_coeffs_cb_plus_128[i] = film_grain->ar_coeffs_cb_plus_128[i];
+- ap->av1_frame_header.film_grain.ar_coeffs_cr_plus_128[i] = film_grain->ar_coeffs_cr_plus_128[i];
+- }
++ for (int i = 0; i < STD_VIDEO_AV1_MAX_NUM_POS_LUMA; i++)
++ ap->film_grain.ar_coeffs_y_plus_128[i] = film_grain->ar_coeffs_y_plus_128[i];
+
+- ap->av1_frame_header.film_grain.ar_coeffs_cb_plus_128[24] = film_grain->ar_coeffs_cb_plus_128[24];
+- ap->av1_frame_header.film_grain.ar_coeffs_cr_plus_128[24] = film_grain->ar_coeffs_cr_plus_128[24];
++ for (int i = 0; i < STD_VIDEO_AV1_MAX_NUM_POS_CHROMA; i++) {
++ ap->film_grain.ar_coeffs_cb_plus_128[i] = film_grain->ar_coeffs_cb_plus_128[i];
++ ap->film_grain.ar_coeffs_cr_plus_128[i] = film_grain->ar_coeffs_cr_plus_128[i];
++ }
+ }
+
+- /* Workaround for a spec issue. */
+ ap->dec = dec;
+
+ return 0;
+@@ -484,25 +545,20 @@ static int vk_av1_decode_slice(AVCodecContext *avctx,
+ AV1VulkanDecodePicture *ap = s->cur_frame.hwaccel_picture_private;
+ FFVulkanDecodePicture *vp = &ap->vp;
+
++ /* Too many tiles, exceeding all defined levels in the AV1 spec */
++ if (ap->av1_pic_info.tileCount > MAX_TILES)
++ return AVERROR(ENOSYS);
++
+ for (int i = s->tg_start; i <= s->tg_end; i++) {
+- ap->tiles[ap->tile_list.nb_tiles] = (StdVideoAV1MESATile) {
+- .size = s->tile_group_info[i].tile_size,
+- .offset = s->tile_group_info[i].tile_offset,
+- .row = s->tile_group_info[i].tile_row,
+- .column = s->tile_group_info[i].tile_column,
+- .tg_start = s->tg_start,
+- .tg_end = s->tg_end,
+- };
++ ap->tile_sizes[ap->av1_pic_info.tileCount] = s->tile_group_info[i].tile_size;
+
+ err = ff_vk_decode_add_slice(avctx, vp,
+ data + s->tile_group_info[i].tile_offset,
+ s->tile_group_info[i].tile_size, 0,
+- &ap->tile_list.nb_tiles,
+- &ap->tile_offsets);
++ &ap->av1_pic_info.tileCount,
++ &ap->av1_pic_info.pTileOffsets);
+ if (err < 0)
+ return err;
+-
+- ap->tiles[ap->tile_list.nb_tiles - 1].offset = ap->tile_offsets[ap->tile_list.nb_tiles - 1];
+ }
+
+ return 0;
+@@ -518,7 +574,7 @@ static int vk_av1_end_frame(AVCodecContext *avctx)
+ FFVulkanDecodePicture *rvp[AV1_NUM_REF_FRAMES] = { 0 };
+ AVFrame *rav[AV1_NUM_REF_FRAMES] = { 0 };
+
+- if (!ap->tile_list.nb_tiles)
++ if (!ap->av1_pic_info.tileCount)
+ return 0;
+
+ if (!dec->session_params) {
+@@ -536,7 +592,7 @@ static int vk_av1_end_frame(AVCodecContext *avctx)
+ }
+
+ av_log(avctx, AV_LOG_VERBOSE, "Decoding frame, %"SIZE_SPECIFIER" bytes, %i tiles\n",
+- vp->slices_size, ap->tile_list.nb_tiles);
++ vp->slices_size, ap->av1_pic_info.tileCount);
+
+ return ff_vk_decode_frame(avctx, pic->f, vp, rav, rvp);
+ }
+@@ -580,8 +636,6 @@ const FFHWAccel ff_av1_vulkan_hwaccel = {
+ * flexibility, this index cannot be present anywhere.
+ * The current implementation tracks the index for the driver and submits it
+ * as necessary information. Due to needing to modify the decoding context,
+- * which is not thread-safe, on frame free, threading is disabled.
+- * In the future, once this is fixed in the spec, the workarounds may be removed
+- * and threading enabled. */
++ * which is not thread-safe, on frame free, threading is disabled. */
+ .caps_internal = HWACCEL_CAP_ASYNC_SAFE,
+ };
+diff --git a/libavcodec/vulkan_decode.c b/libavcodec/vulkan_decode.c
+index 91929d165f..4561f26b62 100644
+--- a/libavcodec/vulkan_decode.c
++++ b/libavcodec/vulkan_decode.c
+@@ -61,7 +61,7 @@ static const VkVideoProfileInfoKHR *get_video_profile(FFVulkanDecodeShared *ctx,
+ VkStructureType profile_struct_type =
+ codec_id == AV_CODEC_ID_H264 ? VK_STRUCTURE_TYPE_VIDEO_DECODE_H264_PROFILE_INFO_KHR :
+ codec_id == AV_CODEC_ID_HEVC ? VK_STRUCTURE_TYPE_VIDEO_DECODE_H265_PROFILE_INFO_KHR :
+- codec_id == AV_CODEC_ID_AV1 ? VK_STRUCTURE_TYPE_VIDEO_DECODE_AV1_PROFILE_INFO_MESA :
++ codec_id == AV_CODEC_ID_AV1 ? VK_STRUCTURE_TYPE_VIDEO_DECODE_AV1_PROFILE_INFO_KHR :
+ 0;
+
+ profile_list = ff_vk_find_struct(ctx->s.hwfc->create_pnext,
+@@ -674,7 +674,7 @@ static VkResult vulkan_setup_profile(AVCodecContext *avctx,
+ const struct FFVkCodecMap *vk_codec,
+ VkVideoDecodeH264CapabilitiesKHR *h264_caps,
+ VkVideoDecodeH265CapabilitiesKHR *h265_caps,
+- VkVideoDecodeAV1CapabilitiesMESA *av1_caps,
++ VkVideoDecodeAV1CapabilitiesKHR *av1_caps,
+ VkVideoCapabilitiesKHR *caps,
+ VkVideoDecodeCapabilitiesKHR *dec_caps,
+ int cur_profile)
+@@ -685,7 +685,7 @@ static VkResult vulkan_setup_profile(AVCodecContext *avctx,
+
+ VkVideoDecodeH264ProfileInfoKHR *h264_profile = &prof->h264_profile;
+ VkVideoDecodeH265ProfileInfoKHR *h265_profile = &prof->h265_profile;
+- VkVideoDecodeAV1ProfileInfoMESA *av1_profile = &prof->av1_profile;
++ VkVideoDecodeAV1ProfileInfoKHR *av1_profile = &prof->av1_profile;
+
+ const AVPixFmtDescriptor *desc = av_pix_fmt_desc_get(avctx->sw_pix_fmt);
+ if (!desc)
+@@ -713,8 +713,9 @@ static VkResult vulkan_setup_profile(AVCodecContext *avctx,
+ } else if (avctx->codec_id == AV_CODEC_ID_AV1) {
+ dec_caps->pNext = av1_caps;
+ usage->pNext = av1_profile;
+- av1_profile->sType = VK_STRUCTURE_TYPE_VIDEO_DECODE_AV1_PROFILE_INFO_MESA;
+- av1_profile->stdProfileIdc = cur_profile;
++ av1_profile->sType = VK_STRUCTURE_TYPE_VIDEO_DECODE_AV1_PROFILE_INFO_KHR;
++ av1_profile->stdProfile = cur_profile;
++ av1_profile->filmGrainSupport = !(avctx->export_side_data & AV_CODEC_EXPORT_DATA_FILM_GRAIN);
+ }
+
+ usage->sType = VK_STRUCTURE_TYPE_VIDEO_DECODE_USAGE_INFO_KHR;
+@@ -769,8 +770,8 @@ static int vulkan_decode_get_profile(AVCodecContext *avctx, AVBufferRef *frames_
+ VkVideoDecodeH265CapabilitiesKHR h265_caps = {
+ .sType = VK_STRUCTURE_TYPE_VIDEO_DECODE_H265_CAPABILITIES_KHR,
+ };
+- VkVideoDecodeAV1CapabilitiesMESA av1_caps = {
+- .sType = VK_STRUCTURE_TYPE_VIDEO_DECODE_AV1_CAPABILITIES_MESA,
++ VkVideoDecodeAV1CapabilitiesKHR av1_caps = {
++ .sType = VK_STRUCTURE_TYPE_VIDEO_DECODE_AV1_CAPABILITIES_KHR,
+ };
+
+ VkPhysicalDeviceVideoFormatInfoKHR fmt_info = {
+@@ -789,7 +790,7 @@ static int vulkan_decode_get_profile(AVCodecContext *avctx, AVBufferRef *frames_
+ cur_profile = avctx->profile;
+ base_profile = avctx->codec_id == AV_CODEC_ID_H264 ? AV_PROFILE_H264_CONSTRAINED_BASELINE :
+ avctx->codec_id == AV_CODEC_ID_H265 ? AV_PROFILE_HEVC_MAIN :
+- avctx->codec_id == AV_CODEC_ID_AV1 ? STD_VIDEO_AV1_MESA_PROFILE_MAIN :
++ avctx->codec_id == AV_CODEC_ID_AV1 ? STD_VIDEO_AV1_PROFILE_MAIN :
+ 0;
+
+ ret = vulkan_setup_profile(avctx, prof, hwctx, vk, vk_codec,
+@@ -837,7 +838,7 @@ static int vulkan_decode_get_profile(AVCodecContext *avctx, AVBufferRef *frames_
+
+ max_level = avctx->codec_id == AV_CODEC_ID_H264 ? ff_vk_h264_level_to_av(h264_caps.maxLevelIdc) :
+ avctx->codec_id == AV_CODEC_ID_H265 ? ff_vk_h265_level_to_av(h265_caps.maxLevelIdc) :
+- avctx->codec_id == AV_CODEC_ID_AV1 ? av1_caps.maxLevelIdc :
++ avctx->codec_id == AV_CODEC_ID_AV1 ? av1_caps.maxLevel :
+ 0;
+
+ av_log(avctx, AV_LOG_VERBOSE, "Decoder capabilities for %s profile \"%s\":\n",
+@@ -908,17 +909,11 @@ static int vulkan_decode_get_profile(AVCodecContext *avctx, AVBufferRef *frames_
+ "VK_VIDEO_DECODE_CAPABILITY_DPB_AND_OUTPUT_COINCIDE_BIT_KHR set "
+ "but VK_VIDEO_CAPABILITY_SEPARATE_REFERENCE_IMAGES_BIT_KHR is unset!\n");
+ return AVERROR_EXTERNAL;
+- } else if (!(dec_caps->flags & VK_VIDEO_DECODE_CAPABILITY_DPB_AND_OUTPUT_DISTINCT_BIT_KHR) &&
+- avctx->codec_id == AV_CODEC_ID_AV1) {
+- av_log(avctx, AV_LOG_ERROR, "Cannot initialize Vulkan decoding session, buggy driver: "
+- "codec is AV1, but VK_VIDEO_DECODE_CAPABILITY_DPB_AND_OUTPUT_DISTINCT_BIT_KHR isn't set!\n");
+- return AVERROR_EXTERNAL;
+ }
+
+ /* TODO: make dedicated_dpb tunable */
+ dec->dedicated_dpb = !(dec_caps->flags & VK_VIDEO_DECODE_CAPABILITY_DPB_AND_OUTPUT_COINCIDE_BIT_KHR);
+ dec->layered_dpb = !(caps->flags & VK_VIDEO_CAPABILITY_SEPARATE_REFERENCE_IMAGES_BIT_KHR);
+- dec->external_fg = av1_caps.flags & VK_VIDEO_DECODE_AV1_CAPABILITY_EXTERNAL_FILM_GRAIN_MESA;
+
+ if (dec->dedicated_dpb) {
+ fmt_info.imageUsage = VK_IMAGE_USAGE_VIDEO_DECODE_DPB_BIT_KHR;
+@@ -1126,8 +1121,10 @@ int ff_vk_decode_init(AVCodecContext *avctx)
+ VkVideoDecodeH265SessionParametersCreateInfoKHR h265_params = {
+ .sType = VK_STRUCTURE_TYPE_VIDEO_DECODE_H265_SESSION_PARAMETERS_CREATE_INFO_KHR,
+ };
+- VkVideoDecodeAV1SessionParametersCreateInfoMESA av1_params = {
+- .sType = VK_STRUCTURE_TYPE_VIDEO_DECODE_AV1_SESSION_PARAMETERS_CREATE_INFO_MESA,
++ StdVideoAV1SequenceHeader av1_empty_seq = { 0 };
++ VkVideoDecodeAV1SessionParametersCreateInfoKHR av1_params = {
++ .sType = VK_STRUCTURE_TYPE_VIDEO_DECODE_AV1_SESSION_PARAMETERS_CREATE_INFO_KHR,
++ .pStdSequenceHeader = &av1_empty_seq,
+ };
+ VkVideoSessionParametersCreateInfoKHR session_params_create = {
+ .sType = VK_STRUCTURE_TYPE_VIDEO_SESSION_PARAMETERS_CREATE_INFO_KHR,
+diff --git a/libavcodec/vulkan_decode.h b/libavcodec/vulkan_decode.h
+index a43e328d73..7ba8b239cb 100644
+--- a/libavcodec/vulkan_decode.h
++++ b/libavcodec/vulkan_decode.h
+@@ -37,7 +37,7 @@ typedef struct FFVulkanDecodeDescriptor {
+ typedef struct FFVulkanDecodeProfileData {
+ VkVideoDecodeH264ProfileInfoKHR h264_profile;
+ VkVideoDecodeH265ProfileInfoKHR h265_profile;
+- VkVideoDecodeAV1ProfileInfoMESA av1_profile;
++ VkVideoDecodeAV1ProfileInfoKHR av1_profile;
+ VkVideoDecodeUsageInfoKHR usage;
+ VkVideoProfileInfoKHR profile;
+ VkVideoProfileListInfoKHR profile_list;
+diff --git a/libavcodec/vulkan_video.h b/libavcodec/vulkan_video.h
+index bb69e920bb..01a1de7d9d 100644
+--- a/libavcodec/vulkan_video.h
++++ b/libavcodec/vulkan_video.h
+@@ -22,8 +22,6 @@
+ #include "vulkan.h"
+
+ #include <vk_video/vulkan_video_codecs_common.h>
+-#include "vulkan_video_codec_av1std.h"
+-#include "vulkan_video_codec_av1std_decode.h"
+
+ #define CODEC_VER_MAJ(ver) (ver >> 22)
+ #define CODEC_VER_MIN(ver) ((ver >> 12) & ((1 << 10) - 1))
+diff --git a/libavcodec/vulkan_video_codec_av1std_decode.h b/libavcodec/vulkan_video_codec_av1std_decode.h
+deleted file mode 100644
+index e2f37b4e6e..0000000000
+--- a/libavcodec/vulkan_video_codec_av1std_decode.h
++++ /dev/null
+@@ -1,36 +0,0 @@
+-/* Copyright 2023 Lynne
+- * Copyright 2023 Dave Airlie
+- *
+- * Licensed under the Apache License, Version 2.0 (the "License");
+- * you may not use this file except in compliance with the License.
+- * You may obtain a copy of the License at
+- *
+- * http://www.apache.org/licenses/LICENSE-2.0
+- *
+- * Unless required by applicable law or agreed to in writing, software
+- * distributed under the License is distributed on an "AS IS" BASIS,
+- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+- * See the License for the specific language governing permissions and
+- * limitations under the License.
+- */
+-
+-#ifndef VULKAN_VIDEO_CODEC_AV1STD_DECODE_H_
+-#define VULKAN_VIDEO_CODEC_AV1STD_DECODE_H_ 1
+-
+-/*
+-** This header is NOT YET generated from the Khronos Vulkan XML API Registry.
+-**
+-*/
+-
+-#ifdef __cplusplus
+-extern "C" {
+-#endif
+-#define vulkan_video_codec_av1std_decode 1
+-
+-
+-
+-#ifdef __cplusplus
+-}
+-#endif
+-
+-#endif
+diff --git a/libavcodec/vulkan_video_codec_av1std.h b/libavcodec/vulkan_video_codec_av1std.h
+deleted file mode 100644
+index c91589eee2..0000000000
+--- a/libavcodec/vulkan_video_codec_av1std.h
++++ /dev/null
+@@ -1,403 +0,0 @@
+-/* Copyright 2023 Lynne
+- * Copyright 2023 Dave Airlie
+- *
+- * Licensed under the Apache License, Version 2.0 (the "License");
+- * you may not use this file except in compliance with the License.
+- * You may obtain a copy of the License at
+- *
+- * http://www.apache.org/licenses/LICENSE-2.0
+- *
+- * Unless required by applicable law or agreed to in writing, software
+- * distributed under the License is distributed on an "AS IS" BASIS,
+- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+- * See the License for the specific language governing permissions and
+- * limitations under the License.
+- */
+-
+-#ifndef VULKAN_VIDEO_CODEC_AV1STD_H_
+-#define VULKAN_VIDEO_CODEC_AV1STD_H_ 1
+-
+-/*
+-** This header is NOT YET generated from the Khronos Vulkan XML API Registry.
+-**
+-*/
+-
+-#ifdef __cplusplus
+-extern "C" {
+-#endif
+-#define vulkan_video_codec_av1std 1
+-
+-#define VK_MAKE_VIDEO_STD_VERSION(major, minor, patch) \
+- ((((uint32_t)(major)) << 22) | (((uint32_t)(minor)) << 12) | ((uint32_t)(patch)))
+-#define VK_STD_VULKAN_VIDEO_CODEC_AV1_DECODE_API_VERSION_0_1_0 VK_MAKE_VIDEO_STD_VERSION(0, 1, 0)
+-#define VK_STD_VULKAN_VIDEO_CODEC_AV1_DECODE_SPEC_VERSION VK_STD_VULKAN_VIDEO_CODEC_AV1_DECODE_API_VERSION_0_1_0
+-#define VK_STD_VULKAN_VIDEO_CODEC_AV1_DECODE_EXTENSION_NAME "VK_STD_vulkan_video_codec_av1_decode"
+-
+-typedef enum StdVideoAV1MESAProfile {
+- STD_VIDEO_AV1_MESA_PROFILE_MAIN = 0,
+- STD_VIDEO_AV1_MESA_PROFILE_HIGH = 1,
+- STD_VIDEO_AV1_MESA_PROFILE_PROFESSIONAL = 2,
+-} StdVideoAV1MESAProfile;
+-
+-typedef enum StdVideoAV1MESALevel {
+- STD_VIDEO_AV1_MESA_LEVEL_2_0 = 0,
+- STD_VIDEO_AV1_MESA_LEVEL_2_1 = 1,
+- STD_VIDEO_AV1_MESA_LEVEL_2_2 = 2,
+- STD_VIDEO_AV1_MESA_LEVEL_2_3 = 3,
+- STD_VIDEO_AV1_MESA_LEVEL_3_0 = 4,
+- STD_VIDEO_AV1_MESA_LEVEL_3_1 = 5,
+- STD_VIDEO_AV1_MESA_LEVEL_3_2 = 6,
+- STD_VIDEO_AV1_MESA_LEVEL_3_3 = 7,
+- STD_VIDEO_AV1_MESA_LEVEL_4_0 = 8,
+- STD_VIDEO_AV1_MESA_LEVEL_4_1 = 9,
+- STD_VIDEO_AV1_MESA_LEVEL_4_2 = 10,
+- STD_VIDEO_AV1_MESA_LEVEL_4_3 = 11,
+- STD_VIDEO_AV1_MESA_LEVEL_5_0 = 12,
+- STD_VIDEO_AV1_MESA_LEVEL_5_1 = 13,
+- STD_VIDEO_AV1_MESA_LEVEL_5_2 = 14,
+- STD_VIDEO_AV1_MESA_LEVEL_5_3 = 15,
+- STD_VIDEO_AV1_MESA_LEVEL_6_0 = 16,
+- STD_VIDEO_AV1_MESA_LEVEL_6_1 = 17,
+- STD_VIDEO_AV1_MESA_LEVEL_6_2 = 18,
+- STD_VIDEO_AV1_MESA_LEVEL_6_3 = 19,
+- STD_VIDEO_AV1_MESA_LEVEL_7_0 = 20,
+- STD_VIDEO_AV1_MESA_LEVEL_7_1 = 21,
+- STD_VIDEO_AV1_MESA_LEVEL_7_2 = 22,
+- STD_VIDEO_AV1_MESA_LEVEL_7_3 = 23,
+- STD_VIDEO_AV1_MESA_LEVEL_MAX = 31,
+-} StdVideoAV1MESALevel;
+-
+-typedef struct StdVideoAV1MESAFilmGrainFlags {
+- uint8_t apply_grain;
+- uint8_t chroma_scaling_from_luma;
+- uint8_t overlap_flag;
+- uint8_t clip_to_restricted_range;
+-} StdVideoAV1MESAFilmGrainFlags;
+-
+-typedef struct StdVideoAV1MESAFilmGrainParameters {
+- StdVideoAV1MESAFilmGrainFlags flags;
+- uint32_t grain_scaling_minus_8;
+- uint32_t ar_coeff_lag;
+- uint32_t ar_coeff_shift_minus_6;
+- uint32_t grain_scale_shift;
+-
+- uint16_t grain_seed;
+- uint8_t num_y_points;
+- uint8_t point_y_value[14];
+- uint8_t point_y_scaling[14];
+-
+- uint8_t num_cb_points;
+- uint8_t point_cb_value[10];
+- uint8_t point_cb_scaling[10];
+-
+- uint8_t num_cr_points;
+- uint8_t point_cr_value[10];
+- uint8_t point_cr_scaling[10];
+-
+- int8_t ar_coeffs_y_plus_128[24];
+- int8_t ar_coeffs_cb_plus_128[25];
+- int8_t ar_coeffs_cr_plus_128[25];
+- uint8_t cb_mult;
+- uint8_t cb_luma_mult;
+- uint16_t cb_offset;
+- uint8_t cr_mult;
+- uint8_t cr_luma_mult;
+- uint16_t cr_offset;
+-} StdVideoAV1MESAFilmGrainParameters;
+-
+-typedef struct StdVideoAV1MESAGlobalMotionFlags {
+- uint8_t gm_invalid;
+-} StdVideoAV1MESAGlobalMotionFlags;
+-
+-typedef struct StdVideoAV1MESAGlobalMotion {
+- StdVideoAV1MESAGlobalMotionFlags flags;
+- uint8_t gm_type;
+- uint32_t gm_params[6];
+-} StdVideoAV1MESAGlobalMotion;
+-
+-typedef struct StdVideoAV1MESALoopRestoration {
+- uint8_t lr_type[3];
+- uint8_t lr_unit_shift;
+- uint8_t lr_uv_shift;
+-} StdVideoAV1MESALoopRestoration;
+-
+-typedef struct StdVideoAV1MESATileInfoFlags {
+- uint8_t uniform_tile_spacing_flag;
+-} StdVideoAV1MESATileInfoFlags;
+-
+-typedef struct StdVideoAV1MESATileInfo {
+- StdVideoAV1MESATileInfoFlags flags;
+- uint8_t tile_cols;
+- uint8_t tile_rows;
+- uint8_t tile_start_col_sb[64];
+- uint8_t tile_start_row_sb[64];
+- uint8_t width_in_sbs_minus_1[64];
+- uint8_t height_in_sbs_minus_1[64];
+- uint16_t context_update_tile_id;
+- uint8_t tile_size_bytes_minus1;
+-} StdVideoAV1MESATileInfo;
+-
+-typedef struct StdVideoAV1MESAQuantizationFlags {
+- uint8_t using_qmatrix;
+-} StdVideoAV1MESAQuantizationFlags;
+-
+-typedef struct StdVideoAV1MESAQuantization {
+- StdVideoAV1MESAQuantizationFlags flags;
+- uint8_t base_q_idx;
+- int8_t delta_q_y_dc;
+- uint8_t diff_uv_delta;
+- int8_t delta_q_u_dc;
+- int8_t delta_q_u_ac;
+- int8_t delta_q_v_dc;
+- int8_t delta_q_v_ac;
+- uint8_t qm_y;
+- uint8_t qm_u;
+- uint8_t qm_v;
+-} StdVideoAV1MESAQuantization;
+-
+-typedef struct StdVideoAV1MESACDEF {
+- uint8_t damping_minus_3;
+- uint8_t bits;
+- uint8_t y_pri_strength[8];
+- uint8_t y_sec_strength[8];
+- uint8_t uv_pri_strength[8];
+- uint8_t uv_sec_strength[8];
+-} StdVideoAV1MESACDEF;
+-
+-typedef struct StdVideoAV1MESADeltaQFlags {
+- uint8_t delta_lf_present;
+- uint8_t delta_lf_multi;
+-} StdVideoAV1MESADeltaQFlags;
+-
+-typedef struct StdVideoAV1MESADeltaQ {
+- StdVideoAV1MESADeltaQFlags flags;
+- uint8_t delta_q_res;
+- uint8_t delta_lf_res;
+-} StdVideoAV1MESADeltaQ;
+-
+-typedef struct StdVideoAV1MESASegmentationFlags {
+- uint8_t enabled;
+- uint8_t update_map;
+- uint8_t temporal_update;
+- uint8_t update_data;
+-} StdVideoAV1MESASegmentationFlags;
+-
+-typedef struct StdVideoAV1MESASegmentation {
+- StdVideoAV1MESASegmentationFlags flags;
+- uint8_t feature_enabled_bits[8];
+- int16_t feature_data[8][8];
+-} StdVideoAV1MESASegmentation;
+-
+-typedef struct StdVideoAV1MESALoopFilterFlags {
+- uint8_t delta_enabled;
+- uint8_t delta_update;
+-} StdVideoAV1MESALoopFilterFlags;
+-
+-typedef struct StdVideoAV1MESALoopFilter {
+- StdVideoAV1MESALoopFilterFlags flags;
+- uint8_t level[4];
+- uint8_t sharpness;
+- int8_t ref_deltas[8];
+- int8_t mode_deltas[2];
+-} StdVideoAV1MESALoopFilter;
+-
+-typedef struct StdVideoAV1MESAFrameHeaderFlags {
+- uint8_t error_resilient_mode;
+- uint8_t disable_cdf_update;
+- uint8_t use_superres;
+- uint8_t render_and_frame_size_different;
+- uint8_t allow_screen_content_tools;
+- uint8_t is_filter_switchable;
+- uint8_t force_integer_mv;
+- uint8_t frame_size_override_flag;
+- uint8_t buffer_removal_time_present_flag;
+- uint8_t allow_intrabc;
+- uint8_t frame_refs_short_signaling;
+- uint8_t allow_high_precision_mv;
+- uint8_t is_motion_mode_switchable;
+- uint8_t use_ref_frame_mvs;
+- uint8_t disable_frame_end_update_cdf;
+- uint8_t allow_warped_motion;
+- uint8_t reduced_tx_set;
+- uint8_t reference_select;
+- uint8_t skip_mode_present;
+- uint8_t delta_q_present;
+- uint8_t UsesLr;
+-} StdVideoAV1MESAFrameHeaderFlags;
+-
+-typedef struct StdVideoAV1MESAFrameHeader {
+- StdVideoAV1MESAFrameHeaderFlags flags;
+-
+- uint32_t frame_presentation_time;
+- uint32_t display_frame_id;
+- uint32_t current_frame_id;
+- uint8_t frame_to_show_map_idx;
+- uint8_t frame_type;
+- uint8_t order_hint;
+- uint8_t primary_ref_frame;
+- uint16_t frame_width_minus_1;
+- uint16_t frame_height_minus_1;
+- uint16_t render_width_minus_1;
+- uint16_t render_height_minus_1;
+- uint8_t coded_denom;
+-
+- uint8_t refresh_frame_flags;
+- uint8_t ref_order_hint[8];
+- int8_t ref_frame_idx[7];
+- uint32_t delta_frame_id_minus1[7];
+-
+- uint8_t interpolation_filter;
+- uint8_t tx_mode;
+-
+- StdVideoAV1MESATileInfo tiling;
+- StdVideoAV1MESAQuantization quantization;
+- StdVideoAV1MESASegmentation segmentation;
+- StdVideoAV1MESADeltaQ delta_q;
+- StdVideoAV1MESALoopFilter loop_filter;
+- StdVideoAV1MESACDEF cdef;
+- StdVideoAV1MESALoopRestoration lr;
+- StdVideoAV1MESAGlobalMotion global_motion[8]; // One per ref frame
+- StdVideoAV1MESAFilmGrainParameters film_grain;
+-} StdVideoAV1MESAFrameHeader;
+-
+-typedef struct StdVideoAV1MESAScreenCoding {
+- uint8_t seq_force_screen_content_tools;
+-} StdVideoAV1MESAScreenCoding;
+-
+-typedef struct StdVideoAV1MESATimingInfoFlags {
+- uint8_t equal_picture_interval;
+-} StdVideoAV1MESATimingInfoFlags;
+-
+-typedef struct StdVideoAV1MESATimingInfo {
+- StdVideoAV1MESATimingInfoFlags flags;
+- uint32_t num_units_in_display_tick;
+- uint32_t time_scale;
+- uint32_t num_ticks_per_picture_minus_1;
+-} StdVideoAV1MESATimingInfo;
+-
+-typedef struct StdVideoAV1MESAColorConfigFlags {
+- uint8_t mono_chrome;
+- uint8_t color_range;
+- uint8_t separate_uv_delta_q;
+-} StdVideoAV1MESAColorConfigFlags;
+-
+-typedef struct StdVideoAV1MESAColorConfig {
+- StdVideoAV1MESAColorConfigFlags flags;
+- uint8_t bit_depth;
+- uint8_t subsampling_x;
+- uint8_t subsampling_y;
+-} StdVideoAV1MESAColorConfig;
+-
+-typedef struct StdVideoAV1MESASequenceHeaderFlags {
+- uint8_t still_picture;
+- uint8_t reduced_still_picture_header;
+- uint8_t use_128x128_superblock;
+- uint8_t enable_filter_intra;
+- uint8_t enable_intra_edge_filter;
+- uint8_t enable_interintra_compound;
+- uint8_t enable_masked_compound;
+- uint8_t enable_warped_motion;
+- uint8_t enable_dual_filter;
+- uint8_t enable_order_hint;
+- uint8_t enable_jnt_comp;
+- uint8_t enable_ref_frame_mvs;
+- uint8_t frame_id_numbers_present_flag;
+- uint8_t enable_superres;
+- uint8_t enable_cdef;
+- uint8_t enable_restoration;
+- uint8_t film_grain_params_present;
+- uint8_t timing_info_present_flag;
+- uint8_t initial_display_delay_present_flag;
+-} StdVideoAV1MESASequenceHeaderFlags;
+-
+-typedef struct StdVideoAV1MESASequenceHeader {
+- StdVideoAV1MESASequenceHeaderFlags flags;
+-
+- StdVideoAV1MESAProfile seq_profile;
+- uint8_t frame_width_bits_minus_1;
+- uint8_t frame_height_bits_minus_1;
+- uint16_t max_frame_width_minus_1;
+- uint16_t max_frame_height_minus_1;
+- uint8_t delta_frame_id_length_minus_2;
+- uint8_t additional_frame_id_length_minus_1;
+- uint8_t order_hint_bits_minus_1;
+- uint8_t seq_choose_integer_mv;
+- uint8_t seq_force_integer_mv;
+-
+- StdVideoAV1MESATimingInfo timing_info;
+- StdVideoAV1MESAColorConfig color_config;
+-} StdVideoAV1MESASequenceHeader;
+-
+-typedef struct StdVideoAV1MESATile {
+- uint16_t tg_start;
+- uint16_t tg_end;
+- uint16_t row;
+- uint16_t column;
+- uint32_t size;
+- uint32_t offset;
+-} StdVideoAV1MESATile;
+-
+-typedef struct StdVideoAV1MESATileList {
+- StdVideoAV1MESATile *tile_list;
+- uint32_t nb_tiles;
+-} StdVideoAV1MESATileList;
+-
+-typedef struct VkVideoDecodeAV1PictureInfoMESA {
+- VkStructureType sType;
+- const void *pNext;
+- StdVideoAV1MESAFrameHeader *frame_header;
+- StdVideoAV1MESATileList *tile_list;
+- uint8_t skip_mode_frame_idx[2];
+-} VkVideoDecodeAV1PictureInfoMESA;
+-
+-typedef struct VkVideoDecodeAV1DpbSlotInfoMESA {
+- VkStructureType sType;
+- const void *pNext;
+- uint8_t frameIdx;
+- uint8_t ref_order_hint[7];
+- uint8_t disable_frame_end_update_cdf;
+-} VkVideoDecodeAV1DpbSlotInfoMESA;
+-
+-typedef struct VkVideoDecodeAV1SessionParametersAddInfoMESA {
+- VkStructureType sType;
+- const void *pNext;
+- StdVideoAV1MESASequenceHeader *sequence_header;
+-} VkVideoDecodeAV1SessionParametersAddInfoMESA;
+-
+-typedef struct VkVideoDecodeAV1SessionParametersCreateInfoMESA {
+- VkStructureType sType;
+- const void *pNext;
+- const VkVideoDecodeAV1SessionParametersAddInfoMESA *pParametersAddInfo;
+-} VkVideoDecodeAV1SessionParametersCreateInfoMESA;
+-
+-typedef struct VkVideoDecodeAV1ProfileInfoMESA {
+- VkStructureType sType;
+- const void *pNext;
+- StdVideoAV1MESAProfile stdProfileIdc;
+-} VkVideoDecodeAV1ProfileInfoMESA;
+-
+-typedef enum VkVideoDecodeAV1CapabilityFlagBitsMESA {
+- VK_VIDEO_DECODE_AV1_CAPABILITY_EXTERNAL_FILM_GRAIN_MESA = 0x00000001,
+- VK_VIDEO_DECODE_AV1_CAPABILITY_FLAG_BITS_MAX_ENUM_MESA = 0x7FFFFFFF
+-} VkVideoDecodeAV1CapabilityFlagBitsMESA;
+-typedef VkFlags VkVideoDecodeAV1CapabilityFlagsMESA;
+-
+-typedef struct VkVideoDecodeAV1CapabilitiesMESA {
+- VkStructureType sType;
+- const void *pNext;
+- VkVideoDecodeAV1CapabilityFlagsMESA flags;
+- StdVideoAV1MESALevel maxLevelIdc;
+-} VkVideoDecodeAV1CapabilitiesMESA;
+-
+-#define VK_STRUCTURE_TYPE_VIDEO_DECODE_AV1_PICTURE_INFO_MESA 1000509000
+-#define VK_STRUCTURE_TYPE_VIDEO_DECODE_AV1_SESSION_PARAMETERS_CREATE_INFO_MESA 1000509001
+-#define VK_STRUCTURE_TYPE_VIDEO_DECODE_AV1_SESSION_PARAMETERS_ADD_INFO_MESA 1000509002
+-#define VK_STRUCTURE_TYPE_VIDEO_DECODE_AV1_DPB_SLOT_INFO_MESA 1000509003
+-#define VK_STRUCTURE_TYPE_VIDEO_DECODE_AV1_CAPABILITIES_MESA 1000509004
+-#define VK_STRUCTURE_TYPE_VIDEO_DECODE_AV1_PROFILE_INFO_MESA 1000509005
+-
+-#ifdef __cplusplus
+-}
+-#endif
+-
+-#endif
+diff --git a/libavutil/hwcontext_vulkan.c b/libavutil/hwcontext_vulkan.c
+index 91b9f96ccf..6e3b96b73a 100644
+--- a/libavutil/hwcontext_vulkan.c
++++ b/libavutil/hwcontext_vulkan.c
+@@ -446,7 +446,7 @@ static const VulkanOptExtension optional_device_exts[] = {
+ { VK_KHR_VIDEO_DECODE_QUEUE_EXTENSION_NAME, FF_VK_EXT_VIDEO_DECODE_QUEUE },
+ { VK_KHR_VIDEO_DECODE_H264_EXTENSION_NAME, FF_VK_EXT_VIDEO_DECODE_H264 },
+ { VK_KHR_VIDEO_DECODE_H265_EXTENSION_NAME, FF_VK_EXT_VIDEO_DECODE_H265 },
+- { "VK_MESA_video_decode_av1", FF_VK_EXT_VIDEO_DECODE_AV1 },
++ { VK_KHR_VIDEO_DECODE_AV1_EXTENSION_NAME, FF_VK_EXT_VIDEO_DECODE_AV1 },
+ };
+
+ static VkBool32 VKAPI_CALL vk_dbg_callback(VkDebugUtilsMessageSeverityFlagBitsEXT severity,
+diff --git a/libavutil/vulkan_functions.h b/libavutil/vulkan_functions.h
+index 65021b04b1..6b379acf93 100644
+--- a/libavutil/vulkan_functions.h
++++ b/libavutil/vulkan_functions.h
+@@ -43,7 +43,7 @@ typedef enum FFVulkanExtensions {
+ FF_VK_EXT_VIDEO_DECODE_QUEUE = 1ULL << 11, /* VK_KHR_video_decode_queue */
+ FF_VK_EXT_VIDEO_DECODE_H264 = 1ULL << 12, /* VK_EXT_video_decode_h264 */
+ FF_VK_EXT_VIDEO_DECODE_H265 = 1ULL << 13, /* VK_EXT_video_decode_h265 */
+- FF_VK_EXT_VIDEO_DECODE_AV1 = 1ULL << 14, /* VK_MESA_video_decode_av1 */
++ FF_VK_EXT_VIDEO_DECODE_AV1 = 1ULL << 14, /* VK_KHR_video_decode_av1 */
+ FF_VK_EXT_ATOMIC_FLOAT = 1ULL << 15, /* VK_EXT_shader_atomic_float */
+ FF_VK_EXT_COOP_MATRIX = 1ULL << 16, /* VK_KHR_cooperative_matrix */
+
+diff --git a/libavutil/vulkan_loader.h b/libavutil/vulkan_loader.h
+index f9e739e1e3..73cf03935d 100644
+--- a/libavutil/vulkan_loader.h
++++ b/libavutil/vulkan_loader.h
+@@ -58,7 +58,7 @@ static inline uint64_t ff_vk_extensions_to_mask(const char * const *extensions,
+ { VK_KHR_VIDEO_DECODE_QUEUE_EXTENSION_NAME, FF_VK_EXT_VIDEO_DECODE_QUEUE },
+ { VK_KHR_VIDEO_DECODE_H264_EXTENSION_NAME, FF_VK_EXT_VIDEO_DECODE_H264 },
+ { VK_KHR_VIDEO_DECODE_H265_EXTENSION_NAME, FF_VK_EXT_VIDEO_DECODE_H265 },
+- { "VK_MESA_video_decode_av1", FF_VK_EXT_VIDEO_DECODE_AV1 },
++ { VK_KHR_VIDEO_DECODE_AV1_EXTENSION_NAME, FF_VK_EXT_VIDEO_DECODE_AV1 },
+ };
+
+ FFVulkanExtensions mask = 0x0;
+diff --git a/libavcodec/vulkan_video.c b/libavcodec/vulkan_video.c
+--- ffmpeg-6.1.1.orig/libavcodec/vulkan_video.c
++++ ffmpeg-6.1.1/libavcodec/vulkan_video.c
+@@ -37,7 +37,7 @@ const FFVkCodecMap ff_vk_codec_map[AV_CO
+ 0,
+ 0,
+ FF_VK_EXT_VIDEO_DECODE_AV1,
+- 0x01000000 /* TODO fix this */
++ VK_VIDEO_CODEC_OPERATION_DECODE_AV1_BIT_KHR
+ },
+ };
+
+--
+2.25.1
+
diff --git a/meta/recipes-multimedia/ffmpeg/ffmpeg_6.1.1.bb b/meta/recipes-multimedia/ffmpeg/ffmpeg_6.1.1.bb
index aa59755034..c0bce2db7a 100644
--- a/meta/recipes-multimedia/ffmpeg/ffmpeg_6.1.1.bb
+++ b/meta/recipes-multimedia/ffmpeg/ffmpeg_6.1.1.bb
@@ -22,7 +22,11 @@ LIC_FILES_CHKSUM = "file://COPYING.GPLv2;md5=b234ee4d69f5fce4486a80fdaf4a4263 \
file://COPYING.LGPLv2.1;md5=bd7a443320af8c812e4c18d1b79df004 \
file://COPYING.LGPLv3;md5=e6a600fd5e1d9cbde2d983680233ad02"
-SRC_URI = "https://www.ffmpeg.org/releases/${BP}.tar.xz"
+SRC_URI = " \
+ https://www.ffmpeg.org/releases/${BP}.tar.xz \
+ file://av1_ordering_info.patch \
+ file://vulkan_av1_stable_API.patch \
+"
SRC_URI[sha256sum] = "8684f4b00f94b85461884c3719382f1261f0d9eb3d59640a1f4ac0873616f968"
diff --git a/meta/recipes-multimedia/gstreamer/gst-examples_1.18.6.bb b/meta/recipes-multimedia/gstreamer/gst-examples_1.18.6.bb
index 02282ac5d9..70b72fd7fb 100644
--- a/meta/recipes-multimedia/gstreamer/gst-examples_1.18.6.bb
+++ b/meta/recipes-multimedia/gstreamer/gst-examples_1.18.6.bb
@@ -23,7 +23,7 @@ UPSTREAM_CHECK_GITTAGREGEX = "(?P<pver>\d+\.(\d*[02468])+(\.\d+)+)"
ANY_OF_DISTRO_FEATURES = "${GTK3DISTROFEATURES}"
do_install:append() {
- install -m 0644 -D ${WORKDIR}/gst-player.desktop ${D}${datadir}/applications/gst-player.desktop
+ install -m 0644 -D ${UNPACKDIR}/gst-player.desktop ${D}${datadir}/applications/gst-player.desktop
}
RDEPENDS:${PN} = "gstreamer1.0-plugins-base-playback"
diff --git a/meta/recipes-multimedia/gstreamer/gstreamer1.0-plugins-bad_1.22.11.bb b/meta/recipes-multimedia/gstreamer/gstreamer1.0-plugins-bad_1.22.11.bb
index 523ee7a5ae..49a3a79b2d 100644
--- a/meta/recipes-multimedia/gstreamer/gstreamer1.0-plugins-bad_1.22.11.bb
+++ b/meta/recipes-multimedia/gstreamer/gstreamer1.0-plugins-bad_1.22.11.bb
@@ -60,7 +60,7 @@ PACKAGECONFIG[libde265] = "-Dlibde265=enabled,-Dlibde265=disabled,libde26
PACKAGECONFIG[libssh2] = "-Dcurl-ssh2=enabled,-Dcurl-ssh2=disabled,libssh2"
PACKAGECONFIG[lcms2] = "-Dcolormanagement=enabled,-Dcolormanagement=disabled,lcms"
PACKAGECONFIG[modplug] = "-Dmodplug=enabled,-Dmodplug=disabled,libmodplug"
-PACKAGECONFIG[msdk] = "-Dmsdk=enabled -Dmfx_api=oneVPL,-Dmsdk=disabled,onevpl-intel-gpu"
+PACKAGECONFIG[msdk] = "-Dmsdk=enabled -Dmfx_api=oneVPL,-Dmsdk=disabled,vpl-gpu-rt"
PACKAGECONFIG[neon] = "-Dneon=enabled,-Dneon=disabled,neon"
PACKAGECONFIG[openal] = "-Dopenal=enabled,-Dopenal=disabled,openal-soft"
PACKAGECONFIG[opencv] = "-Dopencv=enabled,-Dopencv=disabled,opencv"
diff --git a/meta/recipes-multimedia/gstreamer/gstreamer1.0/run-ptest b/meta/recipes-multimedia/gstreamer/gstreamer1.0/run-ptest
index 7d0312005f..ab2df80dcc 100755
--- a/meta/recipes-multimedia/gstreamer/gstreamer1.0/run-ptest
+++ b/meta/recipes-multimedia/gstreamer/gstreamer1.0/run-ptest
@@ -1,11 +1,13 @@
#! /bin/sh
-# Multiply all timeouts by ten so they're more likely to work
-# on a loaded system.
+# Multiply all timeouts by five so they're more likely to work
+# on a loaded system. The default timeout is 20s so this makes it
+# one minute.
export CK_TIMEOUT_MULTIPLIER=5
# Skip some tests that we know are problematic
export GST_CHECKS_IGNORE=""
+
# gstnetclientclock.c:test_functioning is very sensitive to load
GST_CHECKS_IGNORE="$GST_CHECKS_IGNORE,test_functioning"
@@ -13,4 +15,7 @@ GST_CHECKS_IGNORE="$GST_CHECKS_IGNORE,test_functioning"
# https://gitlab.freedesktop.org/gstreamer/gstreamer/-/issues/410
GST_CHECKS_IGNORE="$GST_CHECKS_IGNORE,test_infinite_seek_50_src_live"
+# Known unreliable tests as per subprojects/gst-devtools/validate/launcher/testsuites/check.py:
+GST_CHECKS_IGNORE="$GST_CHECKS_IGNORE:parser_pull_short_read"
+
gnome-desktop-testing-runner gstreamer
diff --git a/meta/recipes-multimedia/libvorbis/libvorbis/0001-configure-Check-for-clang.patch b/meta/recipes-multimedia/libvorbis/libvorbis/0001-configure-Check-for-clang.patch
index b06029b98b..d4fac605b6 100644
--- a/meta/recipes-multimedia/libvorbis/libvorbis/0001-configure-Check-for-clang.patch
+++ b/meta/recipes-multimedia/libvorbis/libvorbis/0001-configure-Check-for-clang.patch
@@ -5,9 +5,9 @@ Subject: [PATCH] configure: Check for clang
Disable gcc specific options if using clang
+Upstream-Status: Inactive-Upstream [https://gitlab.xiph.org/xiph/vorbis,https://github.com/xiph/vorbis]
Signed-off-by: Khem Raj <raj.khem@gmail.com>
---
-Upstream-Status: Pending
configure.ac | 19 +++++++++++++++++--
1 file changed, 17 insertions(+), 2 deletions(-)
diff --git a/meta/recipes-multimedia/pulseaudio/pulseaudio.inc b/meta/recipes-multimedia/pulseaudio/pulseaudio.inc
index ae16056d24..9fb5c81757 100644
--- a/meta/recipes-multimedia/pulseaudio/pulseaudio.inc
+++ b/meta/recipes-multimedia/pulseaudio/pulseaudio.inc
@@ -142,7 +142,7 @@ do_compile:append () {
do_install:append() {
install -d ${D}${sysconfdir}/default/volatiles
- install -m 0644 ${WORKDIR}/volatiles.04_pulse ${D}${sysconfdir}/default/volatiles/04_pulse
+ install -m 0644 ${UNPACKDIR}/volatiles.04_pulse ${D}${sysconfdir}/default/volatiles/04_pulse
}
USERADD_PACKAGES = "pulseaudio-server"
diff --git a/meta/recipes-multimedia/x264/x264/Fix-X32-build-by-disabling-asm.patch b/meta/recipes-multimedia/x264/x264/Fix-X32-build-by-disabling-asm.patch
deleted file mode 100644
index cb771fb0bf..0000000000
--- a/meta/recipes-multimedia/x264/x264/Fix-X32-build-by-disabling-asm.patch
+++ /dev/null
@@ -1,51 +0,0 @@
-From 7bc25f4d1aaa5186d2eff3e2326c7245fcd7e7f3 Mon Sep 17 00:00:00 2001
-From: Christopher Larson <chris_larson@mentor.com>
-Date: Tue, 13 Dec 2016 14:22:32 -0700
-Subject: [PATCH] Fix X32 build by disabling asm
-
-This applies gentoo's x32 patch, adjusted slightly, which disables asm support
-for x32 as well as correcting -m.
-
-Debian has a different patch which does the same, and there's a superior yet
-out of date patch series on the x264 list which keeps asm support enabled, but
-doesn't successfully build at this time, and my assembly is very rusty.
-
-Upstream-Status: Pending
-Signed-off-by: Christopher Larson <chris_larson@mentor.com>
-
----
- configure | 14 ++++++++++++--
- 1 file changed, 12 insertions(+), 2 deletions(-)
-
-diff --git a/configure b/configure
-index 51b128d..6ea9469 100755
---- a/configure
-+++ b/configure
-@@ -754,7 +754,13 @@ case $host_cpu in
- AS_EXT=".asm"
- ASFLAGS="$ASFLAGS -DARCH_X86_64=1 -I\$(SRCPATH)/common/x86/"
- stack_alignment=16
-- [ $compiler = GNU ] && CFLAGS="-m64 $CFLAGS" && LDFLAGS="-m64 $LDFLAGS"
-+ if [ $compiler = GNU ]; then
-+ if cpp_check "" "" "__ILP32__" ; then
-+ CFLAGS="-mx32 $CFLAGS" && LDFLAGS="-mx32 $LDFLAGS"
-+ else
-+ CFLAGS="-m64 $CFLAGS" && LDFLAGS="-m64 $LDFLAGS"
-+ fi
-+ fi
- if [ "$SYS" = MACOSX ]; then
- ASFLAGS="$ASFLAGS -f macho64 -DPREFIX"
- if cc_check '' "-arch x86_64"; then
-@@ -773,7 +779,11 @@ case $host_cpu in
- RCFLAGS="--target=pe-x86-64 $RCFLAGS"
- fi
- else
-- ASFLAGS="$ASFLAGS -f elf64"
-+ if cpp_check "" "" "__ILP32__" ; then
-+ asm=no
-+ else
-+ ASFLAGS="$ASFLAGS -f elf64"
-+ fi
- fi
- ;;
- powerpc*)
diff --git a/meta/recipes-multimedia/x264/x264/don-t-default-to-cortex-a9-with-neon.patch b/meta/recipes-multimedia/x264/x264/don-t-default-to-cortex-a9-with-neon.patch
deleted file mode 100644
index 065e3b35b7..0000000000
--- a/meta/recipes-multimedia/x264/x264/don-t-default-to-cortex-a9-with-neon.patch
+++ /dev/null
@@ -1,33 +0,0 @@
-From a72bf499a0674fc75eedf15008b424e28f67e4bd Mon Sep 17 00:00:00 2001
-From: Andrei Gherzan <andrei@gherzan.ro>
-Date: Fri, 2 Feb 2018 15:10:08 +0200
-Subject: [PATCH] dont default to cortex-a9 with neon
-
--march flag is not in CFLAGS so this will always default to
- -mcpu=cortex-a8 -mfpu=neon.
-
-Upstream-Status: Pending
-
-Signed-off-by: Andrei Gherzan <andrei@gherzan.ro>
-Signed-off-by: Maxin B. John <maxin.john@intel.com>
----
- configure | 3 ---
- 1 file changed, 3 deletions(-)
-
-diff --git a/configure b/configure
-index 0e3ef23..955b993 100755
---- a/configure
-+++ b/configure
-@@ -911,9 +911,6 @@ if [ $asm = auto -a \( $ARCH = X86 -o $ARCH = X86_64 \) ] ; then
- fi
-
- if [ $asm = auto -a $ARCH = ARM ] ; then
-- # set flags so neon is built by default
-- [ $compiler == CL ] || echo $CFLAGS | grep -Eq '(-mcpu|-march|-mfpu)' || CFLAGS="$CFLAGS -mcpu=cortex-a8 -mfpu=neon"
--
- cc_check '' '' '__asm__("add r0, r1, r2");' && define HAVE_ARM_INLINE_ASM
- if [ $compiler = CL ] && cpp_check '' '' 'defined(_M_ARM) && _M_ARM >= 7' ; then
- define HAVE_ARMV6
---
-2.4.0
-
diff --git a/meta/recipes-multimedia/x264/x264_git.bb b/meta/recipes-multimedia/x264/x264_git.bb
index e7d9e75e8d..fae88d24d1 100644
--- a/meta/recipes-multimedia/x264/x264_git.bb
+++ b/meta/recipes-multimedia/x264/x264_git.bb
@@ -8,13 +8,11 @@ LIC_FILES_CHKSUM = "file://COPYING;md5=94d55d512a9ba36caa9b7df079bae19f"
DEPENDS = "nasm-native"
-SRC_URI = "git://github.com/mirror/x264;branch=stable;protocol=https \
- file://don-t-default-to-cortex-a9-with-neon.patch \
- file://Fix-X32-build-by-disabling-asm.patch \
+SRC_URI = "git://code.videolan.org/videolan/x264.git;branch=stable;protocol=https \
"
UPSTREAM_CHECK_COMMITS = "1"
-SRCREV = "baee400fa9ced6f5481a728138fed6e867b0ff7f"
+SRCREV = "31e19f92f00c7003fa115047ce50978bc98c3a0d"
PV = "r3039+git"
@@ -41,6 +39,7 @@ EXTRA_OECONF = '--prefix=${prefix} \
--disable-opencl \
--enable-pic \
${X264_DISABLE_ASM} \
+ --extra-cflags="${TUNE_CCARGS}" \
'
do_configure() {
@@ -54,3 +53,5 @@ do_install() {
}
AS[unexport] = "1"
+
+COMPATIBLE_HOST:x86-x32 = "null"
diff --git a/meta/recipes-rt/rt-tests/rt-tests_git.bb b/meta/recipes-rt/rt-tests/rt-tests_git.bb
index ef082131e2..1f48e143d4 100644
--- a/meta/recipes-rt/rt-tests/rt-tests_git.bb
+++ b/meta/recipes-rt/rt-tests/rt-tests_git.bb
@@ -27,7 +27,7 @@ do_install() {
}
do_install_ptest() {
- cp ${WORKDIR}/rt_bmark.py ${D}${PTEST_PATH}
+ cp ${UNPACKDIR}/rt_bmark.py ${D}${PTEST_PATH}
}
RDEPENDS:${PN}-ptest += " stress-ng python3 python3-multiprocessing python3-datetime python3-misc"
diff --git a/meta/recipes-sato/matchbox-desktop/matchbox-desktop_2.3.bb b/meta/recipes-sato/matchbox-desktop/matchbox-desktop_2.3.bb
index 3777f05b5a..ab178f97e6 100644
--- a/meta/recipes-sato/matchbox-desktop/matchbox-desktop_2.3.bb
+++ b/meta/recipes-sato/matchbox-desktop/matchbox-desktop_2.3.bb
@@ -27,7 +27,7 @@ REQUIRED_DISTRO_FEATURES = "x11"
do_install:append() {
install -d ${D}${datadir}/matchbox/vfolders/
- install -m 0644 ${WORKDIR}/vfolders/* ${D}${datadir}/matchbox/vfolders/
+ install -m 0644 ${UNPACKDIR}/vfolders/* ${D}${datadir}/matchbox/vfolders/
}
FILES:${PN} += "${datadir}/matchbox/vfolders/"
diff --git a/meta/recipes-sato/matchbox-keyboard/matchbox-keyboard_0.1.1.bb b/meta/recipes-sato/matchbox-keyboard/matchbox-keyboard_0.1.1.bb
index 6b70948f16..a1f7862efa 100644
--- a/meta/recipes-sato/matchbox-keyboard/matchbox-keyboard_0.1.1.bb
+++ b/meta/recipes-sato/matchbox-keyboard/matchbox-keyboard_0.1.1.bb
@@ -47,7 +47,7 @@ FILES:${PN}-applet = "${libdir}/matchbox-panel/*.so"
do_install:append () {
install -d ${D}/${sysconfdir}/X11/Xsession.d/
- install -m 755 ${WORKDIR}/80matchboxkeyboard.sh ${D}/${sysconfdir}/X11/Xsession.d/
+ install -m 755 ${UNPACKDIR}/80matchboxkeyboard.sh ${D}/${sysconfdir}/X11/Xsession.d/
rm -f ${D}${libdir}/gtk-2.0/*/immodules/*.la
rm -f ${D}${libdir}/gtk-3.0/*/immodules/*.la
diff --git a/meta/recipes-sato/matchbox-sato/matchbox-session-sato_0.1.bb b/meta/recipes-sato/matchbox-sato/matchbox-session-sato_0.1.bb
index 90734b6bd0..bb7ddbc7f4 100644
--- a/meta/recipes-sato/matchbox-sato/matchbox-session-sato_0.1.bb
+++ b/meta/recipes-sato/matchbox-sato/matchbox-session-sato_0.1.bb
@@ -19,7 +19,9 @@ REQUIRED_DISTRO_FEATURES = "x11"
SRC_URI = "file://session \
file://index.theme"
-S = "${WORKDIR}"
+
+S = "${WORKDIR}/sources"
+UNPACKDIR = "${S}"
FILES:${PN} += "${datadir}/themes/Sato/index.theme"
diff --git a/meta/recipes-sato/pcmanfm/pcmanfm_1.3.2.bb b/meta/recipes-sato/pcmanfm/pcmanfm_1.3.2.bb
index 0c5ed5e55e..2e463cd7b3 100644
--- a/meta/recipes-sato/pcmanfm/pcmanfm_1.3.2.bb
+++ b/meta/recipes-sato/pcmanfm/pcmanfm_1.3.2.bb
@@ -27,12 +27,14 @@ inherit autotools pkgconfig features_check mime-xdg
REQUIRED_DISTRO_FEATURES = "x11"
EXTRA_OECONF = "--with-gtk=3"
+# GCC 14 finds extra incompatible pointer type warnings which are treated as errors
+CFLAGS += "-Wno-error=incompatible-pointer-types"
do_install:append () {
install -d ${D}/${datadir}
install -d ${D}/${datadir}/pixmaps/
- install -m 0644 ${WORKDIR}/*.png ${D}/${datadir}/pixmaps
+ install -m 0644 ${UNPACKDIR}/*.png ${D}/${datadir}/pixmaps
}
FILES:${PN} += "${libdir}/pcmanfm"
diff --git a/meta/recipes-sato/pulseaudio-sato/pulseaudio-client-conf-sato_1.bb b/meta/recipes-sato/pulseaudio-sato/pulseaudio-client-conf-sato_1.bb
index ec187ed9bd..20368703c4 100644
--- a/meta/recipes-sato/pulseaudio-sato/pulseaudio-client-conf-sato_1.bb
+++ b/meta/recipes-sato/pulseaudio-sato/pulseaudio-client-conf-sato_1.bb
@@ -4,7 +4,9 @@ LICENSE = "MIT"
LIC_FILES_CHKSUM = "file://${COREBASE}/meta/COPYING.MIT;md5=3da9cfbcb788c80a0384361b4de20420"
SRC_URI = "file://50-sato.conf"
-S = "${WORKDIR}"
+
+S = "${WORKDIR}/sources"
+UNPACKDIR = "${S}"
inherit allarch
diff --git a/meta/recipes-sato/rxvt-unicode/rxvt-unicode.inc b/meta/recipes-sato/rxvt-unicode/rxvt-unicode.inc
index 016614b19c..95cc140e9e 100644
--- a/meta/recipes-sato/rxvt-unicode/rxvt-unicode.inc
+++ b/meta/recipes-sato/rxvt-unicode/rxvt-unicode.inc
@@ -51,8 +51,8 @@ do_install:append () {
install -d ${D}/${datadir}/applications
install -d ${D}/${datadir}/pixmaps/
- install -m 0644 ${WORKDIR}/rxvt.png ${D}/${datadir}/pixmaps
- install -m 0644 ${WORKDIR}/rxvt.desktop ${D}/${datadir}/applications
+ install -m 0644 ${UNPACKDIR}/rxvt.png ${D}/${datadir}/pixmaps
+ install -m 0644 ${UNPACKDIR}/rxvt.desktop ${D}/${datadir}/applications
${STAGING_BINDIR_NATIVE}/tic -x ${S}/doc/etc/rxvt-unicode.terminfo -o ${D}${datadir}/terminfo || \
${STAGING_BINDIR_NATIVE}/tic ${S}/doc/etc/rxvt-unicode.terminfo -o ${D}${datadir}/terminfo
diff --git a/meta/recipes-sato/settings-daemon/settings-daemon_0.0.2.bb b/meta/recipes-sato/settings-daemon/settings-daemon_0.0.2.bb
index 4bdbefcb75..fb00de9bc9 100644
--- a/meta/recipes-sato/settings-daemon/settings-daemon_0.0.2.bb
+++ b/meta/recipes-sato/settings-daemon/settings-daemon_0.0.2.bb
@@ -26,5 +26,5 @@ REQUIRED_DISTRO_FEATURES = "x11"
do_install:append () {
install -d ${D}/${sysconfdir}/X11/Xsession.d
- install -m 755 ${WORKDIR}/70settings-daemon.sh ${D}/${sysconfdir}/X11/Xsession.d/
+ install -m 755 ${UNPACKDIR}/70settings-daemon.sh ${D}/${sysconfdir}/X11/Xsession.d/
}
diff --git a/meta/recipes-sato/shutdown-desktop/shutdown-desktop.bb b/meta/recipes-sato/shutdown-desktop/shutdown-desktop.bb
index 766f574b25..8c6c0edf10 100644
--- a/meta/recipes-sato/shutdown-desktop/shutdown-desktop.bb
+++ b/meta/recipes-sato/shutdown-desktop/shutdown-desktop.bb
@@ -5,7 +5,8 @@ LIC_FILES_CHKSUM = "file://${COREBASE}/meta/COPYING.MIT;md5=3da9cfbcb788c80a0384
SRC_URI = "file://shutdown.desktop"
-S = "${WORKDIR}"
+S = "${WORKDIR}/sources"
+UNPACKDIR = "${S}"
do_install() {
install -d ${D}${datadir}/applications
diff --git a/meta/recipes-support/appstream/appstream_1.0.2.bb b/meta/recipes-support/appstream/appstream_1.0.3.bb
index 7eb12a04c5..625e85a0ae 100644
--- a/meta/recipes-support/appstream/appstream_1.0.2.bb
+++ b/meta/recipes-support/appstream/appstream_1.0.3.bb
@@ -28,7 +28,7 @@ SRC_URI = " \
https://www.freedesktop.org/software/appstream/releases/AppStream-${PV}.tar.xz \
file://0001-remove-hardcoded-path.patch \
"
-SRC_URI[sha256sum] = "1a5148ca97dcbf5eb6e9c380278bb0d20938569292ea8652df1b3cac8bd2736b"
+SRC_URI[sha256sum] = "5ab6f6cf644e7875a9508593962e56bb430f4e59ae0bf03be6be7029deb6baa4"
S = "${WORKDIR}/AppStream-${PV}"
diff --git a/meta/recipes-support/bash-completion/bash-completion_2.13.0.bb b/meta/recipes-support/bash-completion/bash-completion_2.14.0.bb
index f75d61e219..06c81beaa0 100644
--- a/meta/recipes-support/bash-completion/bash-completion_2.13.0.bb
+++ b/meta/recipes-support/bash-completion/bash-completion_2.14.0.bb
@@ -14,7 +14,7 @@ SECTION = "console/utils"
SRC_URI = "${GITHUB_BASE_URI}/download/${PV}/${BPN}-${PV}.tar.xz"
-SRC_URI[sha256sum] = "c5f99a39e40f0d154c03ff15438e87ece1f5ac666336a4459899e2ff4bedf3d1"
+SRC_URI[sha256sum] = "5c7494f968280832d6adb5aa19f745a56f1a79df311e59338c5efa6f7285e168"
GITHUB_BASE_URI = "https://github.com/scop/bash-completion/releases"
PARALLEL_MAKE = ""
diff --git a/meta/recipes-support/consolekit/consolekit_0.4.6.bb b/meta/recipes-support/consolekit/consolekit_0.4.6.bb
index 346bd60e4d..0f2153d493 100644
--- a/meta/recipes-support/consolekit/consolekit_0.4.6.bb
+++ b/meta/recipes-support/consolekit/consolekit_0.4.6.bb
@@ -31,6 +31,9 @@ PACKAGECONFIG[pam] = "--enable-pam-module --with-pam-module-dir=${base_libdir}/s
PACKAGECONFIG[polkit] = "--with-polkit,--without-polkit,polkit"
PACKAGECONFIG[systemd] = "--with-systemdsystemunitdir=${systemd_system_unitdir}/,--with-systemdsystemunitdir="
+# Fails to build with GCC14 with incompatible pointer error warning being treated as error
+CFLAGS += "-Wno-error=incompatible-pointer-types"
+
FILES:${PN} += "${exec_prefix}/lib/ConsoleKit \
${libdir}/ConsoleKit ${systemd_unitdir} ${base_libdir} \
${datadir}/dbus-1 ${datadir}/PolicyKit ${datadir}/polkit*"
diff --git a/meta/recipes-support/curl/curl/run-ptest b/meta/recipes-support/curl/curl/run-ptest
index 3d25f3d90b..579b3f4587 100644
--- a/meta/recipes-support/curl/curl/run-ptest
+++ b/meta/recipes-support/curl/curl/run-ptest
@@ -7,5 +7,7 @@ cd tests
# Use automake-style output
# Run four tests in parallel
# Print log output on failure
+
# Don't run the flaky or timing dependent tests
-./runtests.pl -a -n -am -j4 -p !flaky !timing-dependent
+# Until https://github.com/curl/curl/issues/13350 is resolved, don't run FTP tests
+./runtests.pl -a -n -am -j4 -p !flaky !timing-dependent !FTP
diff --git a/meta/recipes-support/curl/curl_8.7.1.bb b/meta/recipes-support/curl/curl_8.7.1.bb
index c74416d7e9..23b7c50a86 100644
--- a/meta/recipes-support/curl/curl_8.7.1.bb
+++ b/meta/recipes-support/curl/curl_8.7.1.bb
@@ -103,7 +103,7 @@ do_compile_ptest() {
}
do_install_ptest() {
- cat ${WORKDIR}/disable-tests >> ${S}/tests/data/DISABLED
+ cat ${UNPACKDIR}/disable-tests >> ${S}/tests/data/DISABLED
rm -f ${B}/tests/configurehelp.pm
cp -rf ${B}/tests ${D}${PTEST_PATH}
rm -f ${D}${PTEST_PATH}/tests/libtest/.libs/libhostname.la
@@ -120,6 +120,7 @@ do_install_ptest() {
RDEPENDS:${PN}-ptest += " \
bash \
+ locale-base-en-us \
perl-module-b \
perl-module-base \
perl-module-cwd \
@@ -135,7 +136,6 @@ RDEPENDS:${PN}-ptest += " \
perl-module-storable \
perl-module-time-hires \
"
-RDEPENDS:${PN}-ptest:append:libc-glibc = " locale-base-en-us"
PACKAGES =+ "lib${BPN}"
diff --git a/meta/recipes-support/diffoscope/diffoscope_265.bb b/meta/recipes-support/diffoscope/diffoscope_267.bb
index 6af5abc974..69bad508cd 100644
--- a/meta/recipes-support/diffoscope/diffoscope_265.bb
+++ b/meta/recipes-support/diffoscope/diffoscope_267.bb
@@ -12,7 +12,7 @@ PYPI_PACKAGE = "diffoscope"
inherit pypi setuptools3
-SRC_URI[sha256sum] = "7bdcbd7fc5bc4c821bf6ab5ffbbeb265103b04e6908ea4bb12144d7e5ca002ff"
+SRC_URI[sha256sum] = "c0a807aa66e18eae88c1adca28988675c9749d3ad1a8db3d2eb7e2afb8763568"
RDEPENDS:${PN} += "\
binutils \
diff --git a/meta/recipes-support/enchant/enchant2_2.6.9.bb b/meta/recipes-support/enchant/enchant2_2.7.3.bb
index aaf3525ad8..d5073b6f31 100644
--- a/meta/recipes-support/enchant/enchant2_2.6.9.bb
+++ b/meta/recipes-support/enchant/enchant2_2.7.3.bb
@@ -12,7 +12,7 @@ DEPENDS = "glib-2.0 groff-native"
inherit autotools pkgconfig github-releases
SRC_URI = "${GITHUB_BASE_URI}/download/v${PV}/enchant-${PV}.tar.gz"
-SRC_URI[sha256sum] = "d9a5a10dc9b38a43b3a0fa22c76ed6ebb7e09eb535aff62954afcdbd40efff6b"
+SRC_URI[sha256sum] = "fe6ad4cbe8c71b9384ffdef962be52d4d2bd5ebfb6351435bb390543d4f78b1e"
GITHUB_BASE_URI = "https://github.com/AbiWord/enchant/releases"
diff --git a/meta/recipes-support/fribidi/fribidi_1.0.13.bb b/meta/recipes-support/fribidi/fribidi_1.0.14.bb
index 5d0476a375..51752096de 100644
--- a/meta/recipes-support/fribidi/fribidi_1.0.13.bb
+++ b/meta/recipes-support/fribidi/fribidi_1.0.14.bb
@@ -11,7 +11,7 @@ LIC_FILES_CHKSUM = "file://COPYING;md5=a916467b91076e631dd8edb7424769c7"
SRC_URI = "${GITHUB_BASE_URI}/download/v${PV}/${BP}.tar.xz \
"
-SRC_URI[sha256sum] = "7fa16c80c81bd622f7b198d31356da139cc318a63fc7761217af4130903f54a2"
+SRC_URI[sha256sum] = "76ae204a7027652ac3981b9fa5817c083ba23114340284c58e756b259cd2259a"
inherit meson lib_package pkgconfig github-releases
diff --git a/meta/recipes-support/libcap-ng/files/0001-Fix-python-path-when-invoking-py-compile-54.patch b/meta/recipes-support/libcap-ng/files/0001-Fix-python-path-when-invoking-py-compile-54.patch
new file mode 100644
index 0000000000..a0452ad53d
--- /dev/null
+++ b/meta/recipes-support/libcap-ng/files/0001-Fix-python-path-when-invoking-py-compile-54.patch
@@ -0,0 +1,34 @@
+From 1fe7c1cfeea00ba4eb903fbb39b74361594d4835 Mon Sep 17 00:00:00 2001
+From: Jan Palus <jpalus@fastmail.com>
+Date: Wed, 10 Apr 2024 21:30:51 +0200
+Subject: [PATCH] Fix python path when invoking py-compile (#54)
+
+48eebb2 replaced custom PYTHON3 variable with PYTHON by using standard
+AM_PATH_PYTHON macro. Makefile however still referred to old one.
+There's no need to set PYTHON explicitly anymore so drop it.
+
+Fixes #53
+
+Upstream-Status: Backport
+[https://github.com/stevegrubb/libcap-ng/commit/1fe7c1cfeea00ba4eb903fbb39b74361594d4835]
+
+Signed-off-by: Yi Zhao <yi.zhao@windriver.com>
+---
+ bindings/python3/Makefile.am | 1 -
+ 1 file changed, 1 deletion(-)
+
+diff --git a/bindings/python3/Makefile.am b/bindings/python3/Makefile.am
+index 70a1dd8..6072fc2 100644
+--- a/bindings/python3/Makefile.am
++++ b/bindings/python3/Makefile.am
+@@ -27,7 +27,6 @@ AM_CPPFLAGS = -I. -I$(top_builddir) $(PYTHON3_INCLUDES)
+ LIBS = ${top_builddir}/src/libcap-ng.la
+ SWIG_FLAGS = -python
+ SWIG_INCLUDES = ${AM_CPPFLAGS}
+-PYTHON = $(PYTHON3)
+ pyexec_PYTHON = capng.py
+ pyexec_LTLIBRARIES = _capng.la
+ pyexec_SOLIBRARIES = _capng.so
+--
+2.25.1
+
diff --git a/meta/recipes-support/libcap-ng/files/fix-issues-with-swig-4-2.patch b/meta/recipes-support/libcap-ng/files/fix-issues-with-swig-4-2.patch
deleted file mode 100644
index fb424fe725..0000000000
--- a/meta/recipes-support/libcap-ng/files/fix-issues-with-swig-4-2.patch
+++ /dev/null
@@ -1,32 +0,0 @@
-From 355eada2d20886287cffc16e304087dd6f66ae37 Mon Sep 17 00:00:00 2001
-From: Steve Grubb <ausearch.1@gmail.com>
-Date: Thu, 4 Jan 2024 15:06:29 -0500
-Subject: [PATCH] Remove python global exception handler since its deprecated
-
-Upstream-Status: Backport [https://github.com/stevegrubb/libcap-ng/commit/30453b6553948cd05c438f9f509013e3bb84f25b]
-Signed-off-by: Anuj Mittal <anuj.mittal@intel.com>
----
- bindings/src/capng_swig.i | 7 -------
- 1 file changed, 7 deletions(-)
-
-diff --git a/bindings/src/capng_swig.i b/bindings/src/capng_swig.i
-index fcdaf18..fa85e13 100644
---- a/bindings/src/capng_swig.i
-+++ b/bindings/src/capng_swig.i
-@@ -30,13 +30,6 @@
-
- %varargs(16, signed capability = 0) capng_updatev;
-
--%except(python) {
-- $action
-- if (result < 0) {
-- PyErr_SetFromErrno(PyExc_OSError);
-- return NULL;
-- }
--}
- #endif
-
- %define __signed__
---
-2.43.2
-
diff --git a/meta/recipes-support/libcap-ng/libcap-ng-python_0.8.4.bb b/meta/recipes-support/libcap-ng/libcap-ng-python_0.8.5.bb
index 4790134ae9..4790134ae9 100644
--- a/meta/recipes-support/libcap-ng/libcap-ng-python_0.8.4.bb
+++ b/meta/recipes-support/libcap-ng/libcap-ng-python_0.8.5.bb
diff --git a/meta/recipes-support/libcap-ng/libcap-ng.inc b/meta/recipes-support/libcap-ng/libcap-ng.inc
index 845b7c2f0a..12b4002d11 100644
--- a/meta/recipes-support/libcap-ng/libcap-ng.inc
+++ b/meta/recipes-support/libcap-ng/libcap-ng.inc
@@ -8,10 +8,10 @@ LIC_FILES_CHKSUM = "file://COPYING;md5=94d55d512a9ba36caa9b7df079bae19f \
file://COPYING.LIB;md5=e3eda01d9815f8d24aae2dbd89b68b06"
SRC_URI = "https://people.redhat.com/sgrubb/libcap-ng/libcap-ng-${PV}.tar.gz \
- file://fix-issues-with-swig-4-2.patch \
+ file://0001-Fix-python-path-when-invoking-py-compile-54.patch \
"
-SRC_URI[sha256sum] = "68581d3b38e7553cb6f6ddf7813b1fc99e52856f21421f7b477ce5abd2605a8a"
+SRC_URI[sha256sum] = "3ba5294d1cbdfa98afaacfbc00b6af9ed2b83e8a21817185dfd844cc8c7ac6ff"
EXTRA_OECONF:append:class-target = " --with-capability_header=${STAGING_INCDIR}/linux/capability.h"
EXTRA_OECONF:append:class-nativesdk = " --with-capability_header=${STAGING_INCDIR}/linux/capability.h"
diff --git a/meta/recipes-support/libcap-ng/libcap-ng_0.8.4.bb b/meta/recipes-support/libcap-ng/libcap-ng_0.8.5.bb
index 3dbe3e2ffd..3dbe3e2ffd 100644
--- a/meta/recipes-support/libcap-ng/libcap-ng_0.8.4.bb
+++ b/meta/recipes-support/libcap-ng/libcap-ng_0.8.5.bb
diff --git a/meta/recipes-support/libfm/libfm_1.3.2.bb b/meta/recipes-support/libfm/libfm_1.3.2.bb
index 057c737029..1d7609165b 100644
--- a/meta/recipes-support/libfm/libfm_1.3.2.bb
+++ b/meta/recipes-support/libfm/libfm_1.3.2.bb
@@ -53,3 +53,7 @@ do_install:append () {
rm -f ${D}${libdir}/libfm-extra.a
rm -f ${D}${libdir}/libfm-extra.la
}
+
+# http://errors.yoctoproject.org/Errors/Details/766924/
+# libfm-1.3.2/src/actions/action.c:2050:25: error: assignment to 'gchar **' {aka 'char **'} from incompatible pointer type 'const gchar * const*' {aka 'const char * const*'} [-Wincompatible-pointer-types]
+CFLAGS += "-Wno-error=incompatible-pointer-types"
diff --git a/meta/recipes-support/libgpg-error/libgpg-error_1.48.bb b/meta/recipes-support/libgpg-error/libgpg-error_1.49.bb
index 9f2b49209d..b7d41ab489 100644
--- a/meta/recipes-support/libgpg-error/libgpg-error_1.48.bb
+++ b/meta/recipes-support/libgpg-error/libgpg-error_1.49.bb
@@ -20,7 +20,7 @@ SRC_URI = "${GNUPG_MIRROR}/libgpg-error/libgpg-error-${PV}.tar.bz2 \
file://run-ptest \
"
-SRC_URI[sha256sum] = "89ce1ae893e122924b858de84dc4f67aae29ffa610ebf668d5aa539045663d6f"
+SRC_URI[sha256sum] = "8b79d54639dbf4abc08b5406fb2f37e669a2dec091dd024fb87dd367131c63a9"
BINCONFIG = "${bindir}/gpg-error-config"
diff --git a/meta/recipes-support/libical/libical_3.0.18.bb b/meta/recipes-support/libical/libical_3.0.18.bb
index 040d23b69d..052ca57cfb 100644
--- a/meta/recipes-support/libical/libical_3.0.18.bb
+++ b/meta/recipes-support/libical/libical_3.0.18.bb
@@ -37,7 +37,8 @@ EXTRA_OECMAKE += "-DICAL_BUILD_DOCS=false"
EXTRA_OECMAKE:append:class-target = " -DGObjectIntrospection_COMPILER=${STAGING_BINDIR}/g-ir-compiler-wrapper"
EXTRA_OECMAKE:append:class-target = " -DGObjectIntrospection_SCANNER=${STAGING_BINDIR}/g-ir-scanner-wrapper"
EXTRA_OECMAKE += "-DVAPIGEN=${STAGING_BINDIR_NATIVE}/vapigen"
-EXTRA_OECMAKE += "${@bb.utils.contains('GI_DATA_ENABLED', 'True', '-DGOBJECT_INTROSPECTION=ON -DICAL_GLIB_VAPI=ON', '-DGOBJECT_INTROSPECTION=OFF', d)}"
+EXTRA_OECMAKE += "${@bb.utils.contains('GI_DATA_ENABLED', 'True', '-DGOBJECT_INTROSPECTION=ON -DICAL_GLIB_VAPI=ON', '-DGOBJECT_INTROSPECTION=OFF -DICAL_GLIB_VAPI=OFF', d)}"
+EXTRA_OECMAKE:append:class-native = " -DGOBJECT_INTROSPECTION=OFF -DICAL_GLIB_VAPI=OFF"
# Tell the cross-libical where the tool it needs to build is
EXTRA_OECMAKE:append:class-target = " -DIMPORT_ICAL_GLIB_SRC_GENERATOR=${STAGING_LIBDIR_NATIVE}/cmake/LibIcal/IcalGlibSrcGenerator.cmake"
diff --git a/meta/recipes-support/libpcre/libpcre_8.45.bb b/meta/recipes-support/libpcre/libpcre_8.45.bb
index 46fedbae48..17fb6846a5 100644
--- a/meta/recipes-support/libpcre/libpcre_8.45.bb
+++ b/meta/recipes-support/libpcre/libpcre_8.45.bb
@@ -56,7 +56,7 @@ BBCLASSEXTEND = "native nativesdk"
do_install_ptest() {
t=${D}${PTEST_PATH}
- cp ${WORKDIR}/Makefile $t
+ cp ${UNPACKDIR}/Makefile $t
cp -r ${S}/testdata $t
for i in pcre_stringpiece_unittest pcregrep pcretest; \
do cp ${B}/.libs/$i $t; \
diff --git a/meta/recipes-support/libproxy/libproxy_0.5.4.bb b/meta/recipes-support/libproxy/libproxy_0.5.6.bb
index b4f4c6d254..6a705b305f 100644
--- a/meta/recipes-support/libproxy/libproxy_0.5.4.bb
+++ b/meta/recipes-support/libproxy/libproxy_0.5.6.bb
@@ -14,7 +14,7 @@ LIC_FILES_CHKSUM = "file://COPYING;md5=4fbd65380cdd255951079008b364516c \
DEPENDS = "glib-2.0"
SRC_URI = "git://github.com/libproxy/libproxy;protocol=https;branch=main"
-SRCREV = "dff9a603d823dcc740ec966cd27960daa6b891b1"
+SRCREV = "e7d18806575e21f94cf2f6024659386b129ca189"
S = "${WORKDIR}/git"
inherit meson pkgconfig gobject-introspection vala gi-docgen
diff --git a/meta/recipes-support/libunwind/libunwind_1.6.2.bb b/meta/recipes-support/libunwind/libunwind_1.6.2.bb
index 3208785124..c7b1604b61 100644
--- a/meta/recipes-support/libunwind/libunwind_1.6.2.bb
+++ b/meta/recipes-support/libunwind/libunwind_1.6.2.bb
@@ -40,3 +40,11 @@ do_install:append () {
}
BBCLASSEXTEND = "native"
+
+# http://errors.yoctoproject.org/Errors/Build/183144/
+# libunwind-1.6.2/include/tdep-aarch64/libunwind_i.h:123:47: error: passing argument 1 of '_ULaarch64_uc_addr' from incompatible pointer type [-Wincompatible-pointer-types]
+# libunwind-1.6.2/src/aarch64/Ginit.c:348:28: error: initialization of 'unw_tdep_context_t *' from incompatible pointer type 'ucontext_t *' [-Wincompatible-pointer-types]
+# libunwind-1.6.2/src/aarch64/Ginit.c:377:28: error: initialization of 'unw_tdep_context_t *' from incompatible pointer type 'ucontext_t *' [-Wincompatible-pointer-types]
+# libunwind-1.6.2/src/aarch64/Ginit_local.c:51:9: error: assignment to 'ucontext_t *' from incompatible pointer type 'unw_context_t *' {aka 'unw_tdep_context_t *'} [-Wincompatible-pointer-types]
+# libunwind-1.6.2/src/aarch64/Gresume.c:37:28: error: initialization of 'unw_tdep_context_t *' from incompatible pointer type 'ucontext_t *' [-Wincompatible-pointer-types]
+CFLAGS += "-Wno-error=incompatible-pointer-types"
diff --git a/meta/recipes-support/libusb/libusb1_1.0.27.bb b/meta/recipes-support/libusb/libusb1_1.0.27.bb
index f2431d75c8..5bf854f95d 100644
--- a/meta/recipes-support/libusb/libusb1_1.0.27.bb
+++ b/meta/recipes-support/libusb/libusb1_1.0.27.bb
@@ -8,6 +8,8 @@ SECTION = "libs"
LICENSE = "LGPL-2.1-or-later"
LIC_FILES_CHKSUM = "file://COPYING;md5=fbc093901857fcd118f065f900982c24"
+CVE_PRODUCT = "libusb"
+
BBCLASSEXTEND = "native nativesdk"
SRC_URI = "${GITHUB_BASE_URI}/download/v${PV}/libusb-${PV}.tar.bz2 \
diff --git a/meta/recipes-support/lzop/lzop_1.04.bb b/meta/recipes-support/lzop/lzop_1.04.bb
index d9b3524b67..2b83aa06d9 100644
--- a/meta/recipes-support/lzop/lzop_1.04.bb
+++ b/meta/recipes-support/lzop/lzop_1.04.bb
@@ -21,7 +21,7 @@ SRC_URI[sha256sum] = "7e72b62a8a60aff5200a047eea0773a8fb205caf7acbe1774d95147f30
inherit autotools
do_configure:prepend () {
- install -Dm 0644 ${WORKDIR}/acinclude.m4 ${S}/acinclude.m4
+ install -Dm 0644 ${UNPACKDIR}/acinclude.m4 ${S}/acinclude.m4
}
BBCLASSEXTEND = "native nativesdk"
diff --git a/meta/recipes-support/nghttp2/nghttp2_1.61.0.bb b/meta/recipes-support/nghttp2/nghttp2_1.62.0.bb
index ad85576dcb..5a820d8cd5 100644
--- a/meta/recipes-support/nghttp2/nghttp2_1.61.0.bb
+++ b/meta/recipes-support/nghttp2/nghttp2_1.62.0.bb
@@ -5,7 +5,7 @@ LICENSE = "MIT"
LIC_FILES_CHKSUM = "file://COPYING;md5=764abdf30b2eadd37ce47dcbce0ea1ec"
SRC_URI = "${GITHUB_BASE_URI}/download/v${PV}/nghttp2-${PV}.tar.xz"
-SRC_URI[sha256sum] = "c0e660175b9dc429f11d25b9507a834fb752eea9135ab420bb7cb7e9dbcc9654"
+SRC_URI[sha256sum] = "26798308fa0a12dabdb7ba8c77f74383019d3a0f1f36d25958b836af22474958"
inherit cmake manpages python3native github-releases
PACKAGECONFIG[manpages] = ""
diff --git a/meta/recipes-support/numactl/numactl_git.bb b/meta/recipes-support/numactl/numactl_git.bb
index bd16df91ec..6c853f1966 100644
--- a/meta/recipes-support/numactl/numactl_git.bb
+++ b/meta/recipes-support/numactl/numactl_git.bb
@@ -52,7 +52,7 @@ do_install_ptest() {
install -m 0755 ${B}/test/$i ${D}${PTEST_PATH}/test
done
- install -m 0755 ${WORKDIR}/Makefile ${D}${PTEST_PATH}/
+ install -m 0755 ${UNPACKDIR}/Makefile ${D}${PTEST_PATH}/
install -m 0755 ${B}/.libs/numactl ${D}${PTEST_PATH}/
}
diff --git a/meta/recipes-support/p11-kit/p11-kit_0.25.3.bb b/meta/recipes-support/p11-kit/p11-kit_0.25.3.bb
index b7ebd44abc..2ede38deba 100644
--- a/meta/recipes-support/p11-kit/p11-kit_0.25.3.bb
+++ b/meta/recipes-support/p11-kit/p11-kit_0.25.3.bb
@@ -32,3 +32,13 @@ FILES:${PN} += " \
INSANE_SKIP:${PN} = "dev-so"
BBCLASSEXTEND = "native nativesdk"
+
+# # This one is reproducible only on 32bit MACHINEs
+# http://errors.yoctoproject.org/Errors/Details/766969/
+# git/p11-kit/import-object.c:223:62: error: passing argument 3 of 'p11_asn1_read' from incompatible pointer type [-Wincompatible-pointer-types]
+# git/p11-kit/import-object.c:229:70: error: passing argument 3 of 'p11_asn1_read' from incompatible pointer type [-Wincompatible-pointer-types]
+# git/p11-kit/import-object.c:264:78: error: passing argument 3 of 'p11_asn1_read' from incompatible pointer type [-Wincompatible-pointer-types]
+# git/p11-kit/import-object.c:223:62: error: passing argument 3 of 'p11_asn1_read' from incompatible pointer type [-Wincompatible-pointer-types]
+# git/p11-kit/import-object.c:229:70: error: passing argument 3 of 'p11_asn1_read' from incompatible pointer type [-Wincompatible-pointer-types]
+# git/p11-kit/import-object.c:264:78: error: passing argument 3 of 'p11_asn1_read' from incompatible pointer type [-Wincompatible-pointer-types]
+CFLAGS += "-Wno-error=incompatible-pointer-types"
diff --git a/meta/recipes-support/ptest-runner/ptest-runner_2.4.3.bb b/meta/recipes-support/ptest-runner/ptest-runner_2.4.4.bb
index e6668da01f..2263e07280 100644
--- a/meta/recipes-support/ptest-runner/ptest-runner_2.4.3.bb
+++ b/meta/recipes-support/ptest-runner/ptest-runner_2.4.4.bb
@@ -7,7 +7,7 @@ HOMEPAGE = "http://git.yoctoproject.org/cgit/cgit.cgi/ptest-runner2/about/"
LICENSE = "GPL-2.0-or-later"
LIC_FILES_CHKSUM = "file://LICENSE;md5=751419260aa954499f7abaabaa882bbe"
-SRCREV = "92c1b97bfdb4a94acc1cabcaf97eef52dc29144c"
+SRCREV = "95f528cff0bc52903b98c292d4a322fcffa74471"
PV .= "+git"
SRC_URI = "git://git.yoctoproject.org/ptest-runner2;branch=master;protocol=https \
diff --git a/meta/recipes-support/rng-tools/rng-tools_6.16.bb b/meta/recipes-support/rng-tools/rng-tools_6.16.bb
index f0aa3ff93f..ed755ae705 100644
--- a/meta/recipes-support/rng-tools/rng-tools_6.16.bb
+++ b/meta/recipes-support/rng-tools/rng-tools_6.16.bb
@@ -50,9 +50,9 @@ do_configure:prepend() {
}
do_install:append() {
- install -Dm 0644 ${WORKDIR}/default ${D}${sysconfdir}/default/rng-tools
- install -Dm 0755 ${WORKDIR}/init ${D}${sysconfdir}/init.d/rng-tools
- install -Dm 0644 ${WORKDIR}/rng-tools.service \
+ install -Dm 0644 ${UNPACKDIR}/default ${D}${sysconfdir}/default/rng-tools
+ install -Dm 0755 ${UNPACKDIR}/init ${D}${sysconfdir}/init.d/rng-tools
+ install -Dm 0644 ${UNPACKDIR}/rng-tools.service \
${D}${systemd_system_unitdir}/rng-tools.service
sed -i \
-e 's,@SYSCONFDIR@,${sysconfdir},g' \
@@ -67,3 +67,7 @@ do_install:append() {
${D}${systemd_system_unitdir}/rng-tools.service
fi
}
+
+# libargp detection fails
+# http://errors.yoctoproject.org/Errors/Details/766951/
+CFLAGS += "-Wno-error=incompatible-pointer-types"
diff --git a/meta/recipes-support/sqlite/sqlite3_3.45.1.bb b/meta/recipes-support/sqlite/sqlite3_3.45.3.bb
index 50612feb25..03d70bbd38 100644
--- a/meta/recipes-support/sqlite/sqlite3_3.45.1.bb
+++ b/meta/recipes-support/sqlite/sqlite3_3.45.3.bb
@@ -4,5 +4,5 @@ LICENSE = "PD"
LIC_FILES_CHKSUM = "file://sqlite3.h;endline=11;md5=786d3dc581eff03f4fd9e4a77ed00c66"
SRC_URI = "http://www.sqlite.org/2024/sqlite-autoconf-${SQLITE_PV}.tar.gz"
-SRC_URI[sha256sum] = "cd9c27841b7a5932c9897651e20b86c701dd740556989b01ca596fcfa3d49a0a"
+SRC_URI[sha256sum] = "b2809ca53124c19c60f42bf627736eae011afdcc205bb48270a5ee9a38191531"
diff --git a/meta/recipes-support/user-creation/xuser-account_0.1.bb b/meta/recipes-support/user-creation/xuser-account_0.1.bb
index 639b01f6eb..80a429c6d3 100644
--- a/meta/recipes-support/user-creation/xuser-account_0.1.bb
+++ b/meta/recipes-support/user-creation/xuser-account_0.1.bb
@@ -6,6 +6,9 @@ SRC_URI = "file://system-xuser.conf"
inherit allarch useradd
+S = "${WORKDIR}/sources"
+UNPACKDIR = "${S}"
+
do_configure() {
:
}
@@ -15,7 +18,7 @@ do_compile() {
}
do_install() {
- install -D -m 0644 ${WORKDIR}/system-xuser.conf ${D}${sysconfdir}/dbus-1/system.d/system-xuser.conf
+ install -D -m 0644 ${UNPACKDIR}/system-xuser.conf ${D}${sysconfdir}/dbus-1/system.d/system-xuser.conf
}
FILES:${PN} = "${sysconfdir}/dbus-1/system.d/system-xuser.conf"