summaryrefslogtreecommitdiffstats
path: root/meta
diff options
context:
space:
mode:
Diffstat (limited to 'meta')
-rw-r--r--meta/classes-global/base.bbclass4
-rw-r--r--meta/classes-global/sanity.bbclass21
-rw-r--r--meta/classes-global/sstate.bbclass12
-rw-r--r--meta/classes-global/uninative.bbclass2
-rw-r--r--meta/classes-recipe/features_check.bbclass2
-rw-r--r--meta/classes-recipe/go-mod-update-modules.bbclass152
-rw-r--r--meta/classes-recipe/go-mod.bbclass2
-rw-r--r--meta/classes-recipe/kernel.bbclass6
-rw-r--r--meta/classes-recipe/kernelsrc.bbclass4
-rw-r--r--meta/classes-recipe/populate_sdk_base.bbclass1
-rw-r--r--meta/classes-recipe/populate_sdk_ext.bbclass8
-rw-r--r--meta/classes-recipe/testsdk.bbclass1
-rw-r--r--meta/classes/create-spdx-2.2.bbclass8
-rw-r--r--meta/classes/externalsrc.bbclass44
-rw-r--r--meta/classes/toolchain/clang-native.bbclass18
-rw-r--r--meta/conf/bitbake.conf2
-rw-r--r--meta/conf/cve-check-map.conf4
-rw-r--r--meta/conf/distro/include/maintainers.inc4
-rw-r--r--meta/conf/distro/include/ptest-packagelists.inc1
-rw-r--r--meta/conf/sanity.conf2
-rw-r--r--meta/files/toolchain-shar-extract.sh8
-rw-r--r--meta/lib/oe/license.py15
-rw-r--r--meta/lib/oe/spdx30_tasks.py35
-rw-r--r--meta/lib/oe/utils.py43
-rw-r--r--meta/lib/oeqa/buildtools-docs/cases/README (renamed from meta/lib/oeqa/sdk/buildtools-docs-cases/README)0
-rw-r--r--meta/lib/oeqa/buildtools-docs/cases/build.py (renamed from meta/lib/oeqa/sdk/buildtools-docs-cases/build.py)0
-rw-r--r--meta/lib/oeqa/buildtools/cases/README (renamed from meta/lib/oeqa/sdk/buildtools-cases/README)0
-rw-r--r--meta/lib/oeqa/buildtools/cases/build.py (renamed from meta/lib/oeqa/sdk/buildtools-cases/build.py)0
-rw-r--r--meta/lib/oeqa/buildtools/cases/gcc.py (renamed from meta/lib/oeqa/sdk/buildtools-cases/gcc.py)0
-rw-r--r--meta/lib/oeqa/buildtools/cases/https.py (renamed from meta/lib/oeqa/sdk/buildtools-cases/https.py)0
-rw-r--r--meta/lib/oeqa/buildtools/cases/sanity.py (renamed from meta/lib/oeqa/sdk/buildtools-cases/sanity.py)0
-rw-r--r--meta/lib/oeqa/core/context.py7
-rw-r--r--meta/lib/oeqa/core/target/__init__.py1
-rw-r--r--meta/lib/oeqa/runtime/case.py2
-rw-r--r--meta/lib/oeqa/sdk/testsdk.py24
-rw-r--r--meta/lib/oeqa/selftest/cases/devtool.py2
-rw-r--r--meta/lib/oeqa/selftest/cases/recipetool.py33
-rw-r--r--meta/recipes-bsp/opensbi/opensbi/0001-Makefile-Add-flag-for-reprodubility-compiler-flags.patch49
-rw-r--r--meta/recipes-bsp/opensbi/opensbi_1.7.bb (renamed from meta/recipes-bsp/opensbi/opensbi_1.6.bb)6
-rw-r--r--meta/recipes-bsp/pciutils/pciutils_3.14.0.bb (renamed from meta/recipes-bsp/pciutils/pciutils_3.13.0.bb)2
-rw-r--r--meta/recipes-bsp/u-boot/files/u-boot-riscv-isa_a.cfg1
-rw-r--r--meta/recipes-bsp/u-boot/files/u-boot-riscv-isa_c.cfg1
-rw-r--r--meta/recipes-bsp/u-boot/files/u-boot-riscv-isa_clear.cfg6
-rw-r--r--meta/recipes-bsp/u-boot/files/u-boot-riscv-isa_d.cfg1
-rw-r--r--meta/recipes-bsp/u-boot/files/u-boot-riscv-isa_f.cfg1
-rw-r--r--meta/recipes-bsp/u-boot/files/u-boot-riscv-isa_zbb.cfg1
-rw-r--r--meta/recipes-bsp/u-boot/files/u-boot-riscv-isa_zicbom.cfg1
-rw-r--r--meta/recipes-bsp/u-boot/libubootenv/0001-Update-cmake_minimum_required-to-3.5.patch50
-rw-r--r--meta/recipes-bsp/u-boot/libubootenv_0.3.6.bb4
-rw-r--r--meta/recipes-bsp/u-boot/u-boot-common.inc12
-rw-r--r--meta/recipes-connectivity/bind/bind_9.20.10.bb (renamed from meta/recipes-connectivity/bind/bind_9.20.9.bb)2
-rw-r--r--meta/recipes-connectivity/mobile-broadband-provider-info/mobile-broadband-provider-info_20250613.bb (renamed from meta/recipes-connectivity/mobile-broadband-provider-info/mobile-broadband-provider-info_20240407.bb)4
-rw-r--r--meta/recipes-connectivity/openssh/openssh_10.0p1.bb7
-rw-r--r--meta/recipes-core/meta/buildtools-docs-tarball.bb5
-rw-r--r--meta/recipes-core/meta/buildtools-tarball.bb21
-rw-r--r--meta/recipes-core/musl/libucontext_1.3.2.bb6
-rw-r--r--meta/recipes-core/musl/musl-locales/0001-cmake-Support-builds-with-CMake-4.patch46
-rw-r--r--meta/recipes-core/musl/musl-locales_git.bb4
-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/ttyrun/ttyrun_2.38.0.bb (renamed from meta/recipes-core/ttyrun/ttyrun_2.37.0.bb)4
-rw-r--r--meta/recipes-devtools/apt/apt/0001-Raise-cmake_minimum_required-to-3.13-to-avoid-warnin.patch47
-rw-r--r--meta/recipes-devtools/apt/apt_2.6.1.bb1
-rw-r--r--meta/recipes-devtools/btrfs-tools/btrfs-tools_6.15.bb (renamed from meta/recipes-devtools/btrfs-tools/btrfs-tools_6.14.bb)2
-rw-r--r--meta/recipes-devtools/clang/common-clang.inc2
-rw-r--r--meta/recipes-devtools/clang/common.inc2
-rw-r--r--meta/recipes-devtools/clang/compiler-rt-sanitizers_git.bb1
-rw-r--r--meta/recipes-devtools/clang/compiler-rt_git.bb9
-rw-r--r--meta/recipes-devtools/clang/libcxx_git.bb2
-rw-r--r--meta/recipes-devtools/createrepo-c/createrepo-c/0001-Fix-libname-of-Libs.private.patch22
-rw-r--r--meta/recipes-devtools/createrepo-c/createrepo-c/0002-Use-IMPORTED_TARGET-for-3rd-party-dependencies.patch226
-rw-r--r--meta/recipes-devtools/createrepo-c/createrepo-c/0003-Don-t-try-to-use-imported-targets-of-turned-off-depe.patch53
-rw-r--r--meta/recipes-devtools/createrepo-c/createrepo-c/0004-cmake-Allow-builds-without-Doxygen-being-present-wit.patch50
-rw-r--r--meta/recipes-devtools/createrepo-c/createrepo-c_1.2.1.bb4
-rw-r--r--meta/recipes-devtools/dosfstools/dosfstools/0001-fsck.fat-Adhere-to-the-fsck-exit-codes.patch214
-rw-r--r--meta/recipes-devtools/dosfstools/dosfstools/0002-manpages-Document-fsck.fat-new-exit-codes.patch46
-rw-r--r--meta/recipes-devtools/dosfstools/dosfstools_4.2.bb7
-rw-r--r--meta/recipes-devtools/git/git/fixsort.patch16
-rw-r--r--meta/recipes-devtools/git/git_2.50.0.bb (renamed from meta/recipes-devtools/git/git_2.49.0.bb)2
-rw-r--r--meta/recipes-devtools/json-c/json-c_0.18.bb3
-rw-r--r--meta/recipes-devtools/libcomps/libcomps/0001-libcomps-Support-builds-with-CMake-4.patch132
-rw-r--r--meta/recipes-devtools/libcomps/libcomps_0.1.21.bb1
-rw-r--r--meta/recipes-devtools/libmodulemd/libmodulemd_2.15.2.bb (renamed from meta/recipes-devtools/libmodulemd/libmodulemd_2.15.1.bb)4
-rw-r--r--meta/recipes-devtools/mtools/mtools_4.0.49.bb (renamed from meta/recipes-devtools/mtools/mtools_4.0.48.bb)2
-rw-r--r--meta/recipes-devtools/ninja/ninja_1.13.0.bb (renamed from meta/recipes-devtools/ninja/ninja_1.12.1.bb)10
-rw-r--r--meta/recipes-devtools/pkgconf/pkgconf_2.5.1.bb (renamed from meta/recipes-devtools/pkgconf/pkgconf_2.4.3.bb)2
-rw-r--r--meta/recipes-devtools/pseudo/pseudo_git.bb4
-rw-r--r--meta/recipes-devtools/python/python3-hypothesis_6.135.16.bb (renamed from meta/recipes-devtools/python/python3-hypothesis_6.135.9.bb)2
-rw-r--r--meta/recipes-devtools/python/python3-license-expression_30.4.3.bb (renamed from meta/recipes-devtools/python/python3-license-expression_30.4.1.bb)2
-rw-r--r--meta/recipes-devtools/python/python3-lxml_6.0.0.bb (renamed from meta/recipes-devtools/python/python3-lxml_5.4.0.bb)2
-rw-r--r--meta/recipes-devtools/python/python3-markdown_3.8.2.bb (renamed from meta/recipes-devtools/python/python3-markdown_3.8.bb)2
-rw-r--r--meta/recipes-devtools/python/python3-numpy_2.3.1.bb (renamed from meta/recipes-devtools/python/python3-numpy_2.3.0.bb)2
-rw-r--r--meta/recipes-devtools/python/python3-pdm_2.25.3.bb (renamed from meta/recipes-devtools/python/python3-pdm_2.25.1.bb)2
-rw-r--r--meta/recipes-devtools/python/python3-pygments_2.19.2.bb (renamed from meta/recipes-devtools/python/python3-pygments_2.19.1.bb)2
-rw-r--r--meta/recipes-devtools/python/python3-sphinx-argparse_0.5.2.bb13
-rw-r--r--meta/recipes-devtools/python/python3-sphinx-copybutton_0.5.2.bb10
-rw-r--r--meta/recipes-devtools/python/python3-urllib3_2.5.0.bb (renamed from meta/recipes-devtools/python/python3-urllib3_2.4.0.bb)2
-rw-r--r--meta/recipes-devtools/python/python3-wheel_0.46.1.bb (renamed from meta/recipes-devtools/python/python3-wheel_0.45.1.bb)9
-rw-r--r--meta/recipes-devtools/repo/repo_2.56.bb (renamed from meta/recipes-devtools/repo/repo_2.55.2.bb)2
-rw-r--r--meta/recipes-devtools/rpm-sequoia/rpm-sequoia_1.7.0.bb4
-rw-r--r--meta/recipes-devtools/tcf-agent/tcf-agent_1.8.0.bb6
-rw-r--r--meta/recipes-devtools/tcltk/tcl_9.0.1.bb3
-rw-r--r--meta/recipes-extended/ethtool/ethtool/avoid_parallel_tests.patch6
-rw-r--r--meta/recipes-extended/ethtool/ethtool_6.15.bb (renamed from meta/recipes-extended/ethtool/ethtool_6.14.bb)2
-rw-r--r--meta/recipes-extended/libarchive/libarchive_3.8.1.bb1
-rw-r--r--meta/recipes-extended/mingetty/mingetty_1.08.bb2
-rw-r--r--meta/recipes-extended/pam/libpam/0001-meson.build-correct-check-for-existence-of-two-prepr.patch40
-rw-r--r--meta/recipes-extended/pam/libpam_1.7.1.bb (renamed from meta/recipes-extended/pam/libpam_1.7.0.bb)3
-rw-r--r--meta/recipes-extended/procps/procps_4.0.5.bb2
-rw-r--r--meta/recipes-extended/psmisc/psmisc_23.7.bb2
-rw-r--r--meta/recipes-extended/shadow/shadow_4.18.0.bb (renamed from meta/recipes-extended/shadow/shadow_4.17.4.bb)2
-rw-r--r--meta/recipes-extended/sudo/files/0001-sudo.conf.in-fix-conflict-with-multilib.patch6
-rw-r--r--meta/recipes-extended/sudo/sudo.inc2
-rw-r--r--meta/recipes-extended/sudo/sudo_1.9.17.bb (renamed from meta/recipes-extended/sudo/sudo_1.9.16p2.bb)2
-rw-r--r--meta/recipes-gnome/libadwaita/libadwaita_1.7.5.bb (renamed from meta/recipes-gnome/libadwaita/libadwaita_1.7.4.bb)2
-rw-r--r--meta/recipes-graphics/mesa/mesa.inc4
-rw-r--r--meta/recipes-graphics/pango/pango_1.56.4.bb (renamed from meta/recipes-graphics/pango/pango_1.56.3.bb)2
-rw-r--r--meta/recipes-graphics/shaderc/files/0001-cmake-disable-building-external-dependencies.patch10
-rw-r--r--meta/recipes-graphics/shaderc/shaderc_2025.3.bb (renamed from meta/recipes-graphics/shaderc/shaderc_2025.2.bb)2
-rw-r--r--meta/recipes-kernel/linux-firmware/linux-firmware_20250627.bb (renamed from meta/recipes-kernel/linux-firmware/linux-firmware_20250509.bb)140
-rw-r--r--meta/recipes-kernel/linux/kernel-devsrc.bb6
-rw-r--r--meta/recipes-kernel/perf/perf.bb4
-rw-r--r--meta/recipes-multimedia/gstreamer/gst-devtools_1.26.3.bb (renamed from meta/recipes-multimedia/gstreamer/gst-devtools_1.26.2.bb)2
-rw-r--r--meta/recipes-multimedia/gstreamer/gst-examples_1.26.3.bb (renamed from meta/recipes-multimedia/gstreamer/gst-examples_1.26.2.bb)4
-rw-r--r--meta/recipes-multimedia/gstreamer/gstreamer1.0-libav_1.26.3.bb (renamed from meta/recipes-multimedia/gstreamer/gstreamer1.0-libav_1.26.2.bb)2
-rw-r--r--meta/recipes-multimedia/gstreamer/gstreamer1.0-plugins-bad_1.26.3.bb (renamed from meta/recipes-multimedia/gstreamer/gstreamer1.0-plugins-bad_1.26.2.bb)2
-rw-r--r--meta/recipes-multimedia/gstreamer/gstreamer1.0-plugins-base_1.26.3.bb (renamed from meta/recipes-multimedia/gstreamer/gstreamer1.0-plugins-base_1.26.2.bb)2
-rw-r--r--meta/recipes-multimedia/gstreamer/gstreamer1.0-plugins-good_1.26.3.bb (renamed from meta/recipes-multimedia/gstreamer/gstreamer1.0-plugins-good_1.26.2.bb)2
-rw-r--r--meta/recipes-multimedia/gstreamer/gstreamer1.0-plugins-ugly_1.26.3.bb (renamed from meta/recipes-multimedia/gstreamer/gstreamer1.0-plugins-ugly_1.26.2.bb)2
-rw-r--r--meta/recipes-multimedia/gstreamer/gstreamer1.0-python_1.26.3.bb (renamed from meta/recipes-multimedia/gstreamer/gstreamer1.0-python_1.26.2.bb)2
-rw-r--r--meta/recipes-multimedia/gstreamer/gstreamer1.0-rtsp-server_1.26.3.bb (renamed from meta/recipes-multimedia/gstreamer/gstreamer1.0-rtsp-server_1.26.2.bb)2
-rw-r--r--meta/recipes-multimedia/gstreamer/gstreamer1.0-vaapi_1.26.3.bb (renamed from meta/recipes-multimedia/gstreamer/gstreamer1.0-vaapi_1.26.2.bb)2
-rw-r--r--meta/recipes-multimedia/gstreamer/gstreamer1.0_1.26.3.bb (renamed from meta/recipes-multimedia/gstreamer/gstreamer1.0_1.26.2.bb)2
-rw-r--r--meta/recipes-multimedia/libogg/libogg_1.3.6.bb (renamed from meta/recipes-multimedia/libogg/libogg_1.3.5.bb)2
-rw-r--r--meta/recipes-sato/webkit/libwpe/0001-cmake-Bump-required-CMake-version-to-3.5-to-allow-bu.patch38
-rw-r--r--meta/recipes-sato/webkit/libwpe_1.16.2.bb6
-rw-r--r--meta/recipes-support/enchant/enchant2_2.8.10.bb (renamed from meta/recipes-support/enchant/enchant2_2.8.6.bb)2
-rw-r--r--meta/recipes-support/gnupg/drop-unknown-suffix.inc29
-rw-r--r--meta/recipes-support/gnupg/gnupg/0004-autogen.sh-fix-find-version-for-beta-checking.patch31
-rw-r--r--meta/recipes-support/gnupg/gnupg_2.5.5.bb3
-rw-r--r--meta/recipes-support/libassuan/libassuan_3.0.2.bb2
-rw-r--r--meta/recipes-support/libgcrypt/libgcrypt_1.11.1.bb2
-rw-r--r--meta/recipes-support/libgpg-error/libgpg-error_1.55.bb2
-rw-r--r--meta/recipes-support/libksba/libksba_1.6.7.bb2
-rw-r--r--meta/recipes-support/libproxy/libproxy_0.5.10.bb (renamed from meta/recipes-support/libproxy/libproxy_0.5.9.bb)4
-rw-r--r--meta/recipes-support/nghttp2/nghttp2_1.66.0.bb (renamed from meta/recipes-support/nghttp2/nghttp2_1.65.0.bb)2
-rw-r--r--meta/recipes-support/pinentry/pinentry_1.3.1.bb2
146 files changed, 1620 insertions, 411 deletions
diff --git a/meta/classes-global/base.bbclass b/meta/classes-global/base.bbclass
index b86f50e283..6be1f5c2df 100644
--- a/meta/classes-global/base.bbclass
+++ b/meta/classes-global/base.bbclass
@@ -30,8 +30,9 @@ PREFERRED_TOOLCHAIN:class-crosssdk = "${PREFERRED_TOOLCHAIN_SDK}"
30PREFERRED_TOOLCHAIN:class-nativesdk = "${PREFERRED_TOOLCHAIN_SDK}" 30PREFERRED_TOOLCHAIN:class-nativesdk = "${PREFERRED_TOOLCHAIN_SDK}"
31 31
32TOOLCHAIN ??= "${PREFERRED_TOOLCHAIN}" 32TOOLCHAIN ??= "${PREFERRED_TOOLCHAIN}"
33TOOLCHAIN_NATIVE ??= "${PREFERRED_TOOLCHAIN_NATIVE}"
33 34
34inherit toolchain/gcc-native 35inherit_defer toolchain/${TOOLCHAIN_NATIVE}-native
35inherit_defer toolchain/${TOOLCHAIN} 36inherit_defer toolchain/${TOOLCHAIN}
36 37
37def lsb_distro_identifier(d): 38def lsb_distro_identifier(d):
@@ -154,6 +155,7 @@ do_fetch[file-checksums] = "${@bb.fetch.get_checksum_file_list(d)}"
154do_fetch[file-checksums] += " ${@get_lic_checksum_file_list(d)}" 155do_fetch[file-checksums] += " ${@get_lic_checksum_file_list(d)}"
155do_fetch[prefuncs] += "fetcher_hashes_dummyfunc" 156do_fetch[prefuncs] += "fetcher_hashes_dummyfunc"
156do_fetch[network] = "1" 157do_fetch[network] = "1"
158do_fetch[umask] = "${OE_SHARED_UMASK}"
157python base_do_fetch() { 159python base_do_fetch() {
158 160
159 src_uri = (d.getVar('SRC_URI') or "").split() 161 src_uri = (d.getVar('SRC_URI') or "").split()
diff --git a/meta/classes-global/sanity.bbclass b/meta/classes-global/sanity.bbclass
index d1452967fc..1044ed9cc6 100644
--- a/meta/classes-global/sanity.bbclass
+++ b/meta/classes-global/sanity.bbclass
@@ -514,12 +514,9 @@ def check_userns():
514# built buildtools-extended-tarball) 514# built buildtools-extended-tarball)
515# 515#
516def check_gcc_version(sanity_data): 516def check_gcc_version(sanity_data):
517 import subprocess 517 version = oe.utils.get_host_gcc_version(sanity_data)
518 518 if bb.utils.vercmp_string_op(version, "8.0", "<"):
519 build_cc, version = oe.utils.get_host_compiler_version(sanity_data) 519 return "Your version of gcc is older than 8.0 and will break builds. Please install a newer version of gcc (you could use the project's buildtools-extended-tarball or use scripts/install-buildtools).\n"
520 if build_cc.strip() == "gcc":
521 if bb.utils.vercmp_string_op(version, "8.0", "<"):
522 return "Your version of gcc is older than 8.0 and will break builds. Please install a newer version of gcc (you could use the project's buildtools-extended-tarball or use scripts/install-buildtools).\n"
523 return None 520 return None
524 521
525# Tar version 1.24 and onwards handle overwriting symlinks correctly 522# Tar version 1.24 and onwards handle overwriting symlinks correctly
@@ -609,7 +606,7 @@ def drop_v14_cross_builds(d):
609 606
610def check_cpp_toolchain_flag(d, flag, error_message=None): 607def check_cpp_toolchain_flag(d, flag, error_message=None):
611 """ 608 """
612 Checks if the C++ toolchain support the given flag 609 Checks if the g++ compiler supports the given flag
613 """ 610 """
614 import shlex 611 import shlex
615 import subprocess 612 import subprocess
@@ -622,7 +619,7 @@ def check_cpp_toolchain_flag(d, flag, error_message=None):
622 } 619 }
623 """ 620 """
624 621
625 cmd = shlex.split(d.getVar("BUILD_CXX")) + ["-x", "c++","-", "-o", "/dev/null", flag] 622 cmd = ["g++", "-x", "c++","-", "-o", "/dev/null", flag]
626 try: 623 try:
627 subprocess.run(cmd, input=cpp_code, capture_output=True, text=True, check=True) 624 subprocess.run(cmd, input=cpp_code, capture_output=True, text=True, check=True)
628 return None 625 return None
@@ -700,11 +697,11 @@ def check_sanity_version_change(status, d):
700 if not check_app_exists("${MAKE}", d): 697 if not check_app_exists("${MAKE}", d):
701 missing = missing + "GNU make," 698 missing = missing + "GNU make,"
702 699
703 if not check_app_exists('${BUILD_CC}', d): 700 if not check_app_exists('gcc', d):
704 missing = missing + "C Compiler (%s)," % d.getVar("BUILD_CC") 701 missing = missing + "C Compiler (gcc),"
705 702
706 if not check_app_exists('${BUILD_CXX}', d): 703 if not check_app_exists('g++', d):
707 missing = missing + "C++ Compiler (%s)," % d.getVar("BUILD_CXX") 704 missing = missing + "C++ Compiler (g++),"
708 705
709 required_utilities = d.getVar('SANITY_REQUIRED_UTILITIES') 706 required_utilities = d.getVar('SANITY_REQUIRED_UTILITIES')
710 707
diff --git a/meta/classes-global/sstate.bbclass b/meta/classes-global/sstate.bbclass
index 2968cc4c2e..53bc2e3940 100644
--- a/meta/classes-global/sstate.bbclass
+++ b/meta/classes-global/sstate.bbclass
@@ -745,7 +745,7 @@ def pstaging_fetch(sstatefetch, d):
745 if bb.utils.to_boolean(d.getVar("SSTATE_VERIFY_SIG"), False): 745 if bb.utils.to_boolean(d.getVar("SSTATE_VERIFY_SIG"), False):
746 uris += ['file://{0}.sig;downloadfilename={0}.sig'.format(sstatefetch)] 746 uris += ['file://{0}.sig;downloadfilename={0}.sig'.format(sstatefetch)]
747 747
748 with bb.utils.umask(0o002): 748 with bb.utils.umask(bb.utils.to_filemode(d.getVar("OE_SHARED_UMASK"))):
749 bb.utils.mkdirhier(dldir) 749 bb.utils.mkdirhier(dldir)
750 750
751 for srcuri in uris: 751 for srcuri in uris:
@@ -776,9 +776,10 @@ sstate_task_prefunc[dirs] = "${WORKDIR}"
776python sstate_task_postfunc () { 776python sstate_task_postfunc () {
777 shared_state = sstate_state_fromvars(d) 777 shared_state = sstate_state_fromvars(d)
778 778
779 omask = os.umask(0o002) 779 shared_umask = bb.utils.to_filemode(d.getVar("OE_SHARED_UMASK"))
780 if omask != 0o002: 780 omask = os.umask(shared_umask)
781 bb.note("Using umask 0o002 (not %0o) for sstate packaging" % omask) 781 if omask != shared_umask:
782 bb.note("Using umask %0o (not %0o) for sstate packaging" % (shared_umask, omask))
782 sstate_package(shared_state, d) 783 sstate_package(shared_state, d)
783 os.umask(omask) 784 os.umask(omask)
784 785
@@ -843,7 +844,8 @@ python sstate_create_and_sign_package () {
843 844
844 # Create the required sstate directory if it is not present. 845 # Create the required sstate directory if it is not present.
845 if not sstate_pkg.parent.is_dir(): 846 if not sstate_pkg.parent.is_dir():
846 with bb.utils.umask(0o002): 847 shared_umask = bb.utils.to_filemode(d.getVar("OE_SHARED_UMASK"))
848 with bb.utils.umask(shared_umask):
847 bb.utils.mkdirhier(str(sstate_pkg.parent)) 849 bb.utils.mkdirhier(str(sstate_pkg.parent))
848 850
849 if sign_pkg: 851 if sign_pkg:
diff --git a/meta/classes-global/uninative.bbclass b/meta/classes-global/uninative.bbclass
index 75e0c19704..c246a1ecd6 100644
--- a/meta/classes-global/uninative.bbclass
+++ b/meta/classes-global/uninative.bbclass
@@ -142,7 +142,7 @@ def enable_uninative(d):
142 loader = d.getVar("UNINATIVE_LOADER") 142 loader = d.getVar("UNINATIVE_LOADER")
143 if os.path.exists(loader): 143 if os.path.exists(loader):
144 bb.debug(2, "Enabling uninative") 144 bb.debug(2, "Enabling uninative")
145 d.setVar("NATIVELSBSTRING", "universal%s" % oe.utils.host_gcc_version(d)) 145 d.setVar("NATIVELSBSTRING", "universal")
146 d.appendVar("SSTATEPOSTUNPACKFUNCS", " uninative_changeinterp") 146 d.appendVar("SSTATEPOSTUNPACKFUNCS", " uninative_changeinterp")
147 d.appendVarFlag("SSTATEPOSTUNPACKFUNCS", "vardepvalueexclude", "| uninative_changeinterp") 147 d.appendVarFlag("SSTATEPOSTUNPACKFUNCS", "vardepvalueexclude", "| uninative_changeinterp")
148 d.appendVar("BUILD_LDFLAGS", " -Wl,--allow-shlib-undefined -Wl,--dynamic-linker=${UNINATIVE_LOADER} -pthread") 148 d.appendVar("BUILD_LDFLAGS", " -Wl,--allow-shlib-undefined -Wl,--dynamic-linker=${UNINATIVE_LOADER} -pthread")
diff --git a/meta/classes-recipe/features_check.bbclass b/meta/classes-recipe/features_check.bbclass
index 4e122ecaef..1e0eaa4eed 100644
--- a/meta/classes-recipe/features_check.bbclass
+++ b/meta/classes-recipe/features_check.bbclass
@@ -21,7 +21,7 @@ python () {
21 21
22 unused = True 22 unused = True
23 23
24 for kind in ['DISTRO', 'MACHINE', 'COMBINED', 'IMAGE']: 24 for kind in ['DISTRO', 'MACHINE', 'COMBINED', 'IMAGE', 'TUNE']:
25 if d.getVar('ANY_OF_' + kind + '_FEATURES') is None and not d.hasOverrides('ANY_OF_' + kind + '_FEATURES') and \ 25 if d.getVar('ANY_OF_' + kind + '_FEATURES') is None and not d.hasOverrides('ANY_OF_' + kind + '_FEATURES') and \
26 d.getVar('REQUIRED_' + kind + '_FEATURES') is None and not d.hasOverrides('REQUIRED_' + kind + '_FEATURES') and \ 26 d.getVar('REQUIRED_' + kind + '_FEATURES') is None and not d.hasOverrides('REQUIRED_' + kind + '_FEATURES') and \
27 d.getVar('CONFLICT_' + kind + '_FEATURES') is None and not d.hasOverrides('CONFLICT_' + kind + '_FEATURES'): 27 d.getVar('CONFLICT_' + kind + '_FEATURES') is None and not d.hasOverrides('CONFLICT_' + kind + '_FEATURES'):
diff --git a/meta/classes-recipe/go-mod-update-modules.bbclass b/meta/classes-recipe/go-mod-update-modules.bbclass
new file mode 100644
index 0000000000..5fccd0bb0d
--- /dev/null
+++ b/meta/classes-recipe/go-mod-update-modules.bbclass
@@ -0,0 +1,152 @@
1addtask do_update_modules after do_configure
2do_update_modules[nostamp] = "1"
3do_update_modules[network] = "1"
4
5# This class maintains two files, BPN-go-mods.inc and BPN-licenses.inc.
6#
7# -go-mods.inc will append SRC_URI with all of the Go modules that are
8# dependencies of this recipe.
9#
10# -licenses.inc will append LICENSE and LIC_FILES_CHKSUM with the found licenses
11# in the modules.
12#
13# These files are machine-generated and should not be modified.
14
15python do_update_modules() {
16 import subprocess, tempfile, json, re, urllib.parse
17 from oe.license import tidy_licenses
18 from oe.license_finder import find_licenses
19
20 def unescape_path(path):
21 """Unescape capital letters using exclamation points."""
22 return re.sub(r'!([a-z])', lambda m: m.group(1).upper(), path)
23
24 def fold_uri(uri):
25 """Fold URI for sorting shorter module paths before longer."""
26 return uri.replace(';', ' ').replace('/', '!')
27
28 def parse_existing_licenses():
29 hashes = {}
30 for url in d.getVar("LIC_FILES_CHKSUM").split():
31 (method, host, path, user, pswd, parm) = bb.fetch.decodeurl(url)
32 if "spdx" in parm and parm["spdx"] != "Unknown":
33 hashes[parm["md5"]] = urllib.parse.unquote_plus(parm["spdx"])
34 return hashes
35
36 bpn = d.getVar("BPN")
37 thisdir = d.getVar("THISDIR")
38 s_dir = d.getVar("S")
39
40 with tempfile.TemporaryDirectory(prefix='go-mod-') as mod_cache_dir:
41 notice = """
42# This file has been generated by go-mod-update-modules.bbclass
43#
44# Do not modify it by hand, as the contents will be replaced when
45# running the update-modules task.
46
47"""
48
49 env = dict(os.environ, GOMODCACHE=mod_cache_dir)
50
51 source = d.expand("${UNPACKDIR}/${GO_SRCURI_DESTSUFFIX}")
52 output = subprocess.check_output(("go", "mod", "edit", "-json"), cwd=source, env=env, text=True)
53 go_mod = json.loads(output)
54
55 output = subprocess.check_output(("go", "list", "-json=Dir,Module", "-deps", f"{go_mod['Module']['Path']}/..."), cwd=source, env=env, text=True)
56
57 #
58 # Licenses
59 #
60
61 # load hashes from the existing licenses.inc
62 extra_hashes = parse_existing_licenses()
63
64 # The output of this isn't actually valid JSON, but a series of dicts.
65 # Wrap in [] and join the dicts with ,
66 # Very frustrating that the json parser in python can't repeatedly
67 # parse from a stream.
68 pkgs = json.loads('[' + output.replace('}\n{', '},\n{') + ']')
69 # Collect licenses for the dependencies.
70 licenses = set()
71 lic_files_chksum = []
72 lic_files = {}
73
74 for pkg in pkgs:
75 mod = pkg.get('Module', None)
76 if not mod or mod.get('Main', False):
77 continue
78
79 mod_dir = mod['Dir']
80
81 if not mod_dir.startswith(mod_cache_dir):
82 continue
83
84 path = os.path.relpath(mod_dir, mod_cache_dir)
85
86 for license_name, license_file, license_md5 in find_licenses(mod['Dir'], d, first_only=True, extra_hashes=extra_hashes):
87 lic_files[os.path.join(path, license_file)] = (license_name, license_md5)
88
89 for lic_file in lic_files:
90 license_name, license_md5 = lic_files[lic_file]
91 if license_name == "Unknown":
92 bb.warn(f"Unknown license: {lic_file} {license_md5}")
93
94 licenses.add(lic_files[lic_file][0])
95 lic_files_chksum.append(
96 f'file://pkg/mod/{lic_file};md5={license_md5};spdx={urllib.parse.quote_plus(license_name)}')
97
98 licenses_filename = os.path.join(thisdir, f"{bpn}-licenses.inc")
99 with open(licenses_filename, "w") as f:
100 f.write(notice)
101 f.write(f'LICENSE += "& {" & ".join(tidy_licenses(licenses))}"\n\n')
102 f.write('LIC_FILES_CHKSUM += "\\\n')
103 for lic in sorted(lic_files_chksum, key=fold_uri):
104 f.write(' ' + lic + ' \\\n')
105 f.write('"\n')
106
107 #
108 # Sources
109 #
110
111 # Collect the module cache files downloaded by the go list command as
112 # the go list command knows best what the go list command needs and it
113 # needs more files in the module cache than the go install command as
114 # it doesn't do the dependency pruning mentioned in the Go module
115 # reference, https://go.dev/ref/mod, for go 1.17 or higher.
116 src_uris = []
117 downloaddir = os.path.join(mod_cache_dir, 'cache', 'download')
118 for dirpath, _, filenames in os.walk(downloaddir):
119 # We want to process files under @v directories
120 path, base = os.path.split(os.path.relpath(dirpath, downloaddir))
121 if base != '@v':
122 continue
123
124 path = unescape_path(path)
125 zipver = None
126 for name in filenames:
127 ver, ext = os.path.splitext(name)
128 if ext == '.zip':
129 chksum = bb.utils.sha256_file(os.path.join(dirpath, name))
130 src_uris.append(f'gomod://{path};version={ver};sha256sum={chksum}')
131 zipver = ver
132 break
133 for name in filenames:
134 ver, ext = os.path.splitext(name)
135 if ext == '.mod' and ver != zipver:
136 chksum = bb.utils.sha256_file(os.path.join(dirpath, name))
137 src_uris.append(f'gomod://{path};version={ver};mod=1;sha256sum={chksum}')
138
139
140 go_mods_filename = os.path.join(thisdir, f"{bpn}-go-mods.inc")
141 with open(go_mods_filename, "w") as f:
142 f.write(notice)
143 f.write('SRC_URI += "\\\n')
144 for uri in sorted(src_uris, key=fold_uri):
145 f.write(' ' + uri + ' \\\n')
146 f.write('"\n')
147
148 subprocess.check_output(("go", "clean", "-modcache"), cwd=source, env=env, text=True)
149}
150
151# This doesn't work as we need to wipe the inc files first so we don't try looking for LICENSE files that don't yet exist
152# RECIPE_UPGRADE_EXTRA_TASKS += "do_update_modules"
diff --git a/meta/classes-recipe/go-mod.bbclass b/meta/classes-recipe/go-mod.bbclass
index 93ae72235f..a15dda8f0e 100644
--- a/meta/classes-recipe/go-mod.bbclass
+++ b/meta/classes-recipe/go-mod.bbclass
@@ -23,7 +23,7 @@ GOBUILDFLAGS:append = " -modcacherw"
23inherit go 23inherit go
24 24
25export GOMODCACHE = "${S}/pkg/mod" 25export GOMODCACHE = "${S}/pkg/mod"
26GO_MOD_CACHE_DIR = "${@os.path.relpath(d.getVar('GOMODCACHE'), d.getVar('WORKDIR'))}" 26GO_MOD_CACHE_DIR = "${@os.path.relpath(d.getVar('GOMODCACHE'), d.getVar('UNPACKDIR'))}"
27do_unpack[cleandirs] += "${GOMODCACHE}" 27do_unpack[cleandirs] += "${GOMODCACHE}"
28 28
29GO_WORKDIR ?= "${GO_IMPORT}" 29GO_WORKDIR ?= "${GO_IMPORT}"
diff --git a/meta/classes-recipe/kernel.bbclass b/meta/classes-recipe/kernel.bbclass
index 2d9943c8a0..eb03424dfc 100644
--- a/meta/classes-recipe/kernel.bbclass
+++ b/meta/classes-recipe/kernel.bbclass
@@ -4,10 +4,14 @@
4# SPDX-License-Identifier: MIT 4# SPDX-License-Identifier: MIT
5# 5#
6 6
7inherit linux-kernel-base kernel-module-split 7inherit linux-kernel-base kernel-module-split features_check
8 8
9COMPATIBLE_HOST = ".*-linux" 9COMPATIBLE_HOST = ".*-linux"
10 10
11# Linux has a minimum ISA requires on riscv, see arch/riscv/Makefile
12REQUIRED_TUNE_FEATURES:riscv32 = "rv 32 i m a zicsr zifencei"
13REQUIRED_TUNE_FEATURES:riscv64 = "rv 64 i m a zicsr zifencei"
14
11KERNEL_PACKAGE_NAME ??= "kernel" 15KERNEL_PACKAGE_NAME ??= "kernel"
12KERNEL_DEPLOYSUBDIR ??= "${@ "" if (d.getVar("KERNEL_PACKAGE_NAME") == "kernel") else d.getVar("KERNEL_PACKAGE_NAME") }" 16KERNEL_DEPLOYSUBDIR ??= "${@ "" if (d.getVar("KERNEL_PACKAGE_NAME") == "kernel") else d.getVar("KERNEL_PACKAGE_NAME") }"
13 17
diff --git a/meta/classes-recipe/kernelsrc.bbclass b/meta/classes-recipe/kernelsrc.bbclass
index ecb02dc9ed..9336184298 100644
--- a/meta/classes-recipe/kernelsrc.bbclass
+++ b/meta/classes-recipe/kernelsrc.bbclass
@@ -15,3 +15,7 @@ LOCAL_VERSION = "${@get_kernellocalversion_file("${STAGING_KERNEL_BUILDDIR}")}"
15 15
16inherit linux-kernel-base 16inherit linux-kernel-base
17 17
18# The final packages get the kernel version instead of the default 1.0
19python do_package:prepend() {
20 d.setVar('PKGV', d.getVar("KERNEL_VERSION").split("-")[0])
21}
diff --git a/meta/classes-recipe/populate_sdk_base.bbclass b/meta/classes-recipe/populate_sdk_base.bbclass
index 8ef4b2be77..e6685cde97 100644
--- a/meta/classes-recipe/populate_sdk_base.bbclass
+++ b/meta/classes-recipe/populate_sdk_base.bbclass
@@ -373,7 +373,6 @@ EOF
373 -e 's#@SDK_VERSION@#${SDK_VERSION}#g' \ 373 -e 's#@SDK_VERSION@#${SDK_VERSION}#g' \
374 -e '/@SDK_PRE_INSTALL_COMMAND@/d' \ 374 -e '/@SDK_PRE_INSTALL_COMMAND@/d' \
375 -e '/@SDK_POST_INSTALL_COMMAND@/d' \ 375 -e '/@SDK_POST_INSTALL_COMMAND@/d' \
376 -e 's#@SDK_GCC_VER@#${@oe.utils.host_gcc_version(d, taskcontextonly=True)}#g' \
377 -e 's#@SDK_ARCHIVE_TYPE@#${SDK_ARCHIVE_TYPE}#g' \ 376 -e 's#@SDK_ARCHIVE_TYPE@#${SDK_ARCHIVE_TYPE}#g' \
378 ${SDKDEPLOYDIR}/${TOOLCHAIN_OUTPUTNAME}.sh 377 ${SDKDEPLOYDIR}/${TOOLCHAIN_OUTPUTNAME}.sh
379 378
diff --git a/meta/classes-recipe/populate_sdk_ext.bbclass b/meta/classes-recipe/populate_sdk_ext.bbclass
index 2d7d661d25..20dfdf02d4 100644
--- a/meta/classes-recipe/populate_sdk_ext.bbclass
+++ b/meta/classes-recipe/populate_sdk_ext.bbclass
@@ -150,7 +150,6 @@ def create_filtered_tasklist(d, sdkbasepath, tasklistfile, conf_initpath):
150 with open(sdkbasepath + '/conf/local.conf', 'a') as f: 150 with open(sdkbasepath + '/conf/local.conf', 'a') as f:
151 # Force the use of sstate from the build system 151 # Force the use of sstate from the build system
152 f.write('\nSSTATE_DIR:forcevariable = "%s"\n' % d.getVar('SSTATE_DIR')) 152 f.write('\nSSTATE_DIR:forcevariable = "%s"\n' % d.getVar('SSTATE_DIR'))
153 f.write('SSTATE_MIRRORS:forcevariable = "file://universal/(.*) file://universal-4.9/\\1 file://universal-4.9/(.*) file://universal-4.8/\\1"\n')
154 # Ensure TMPDIR is the default so that clean_esdk_builddir() can delete it 153 # Ensure TMPDIR is the default so that clean_esdk_builddir() can delete it
155 f.write('TMPDIR:forcevariable = "${TOPDIR}/tmp"\n') 154 f.write('TMPDIR:forcevariable = "${TOPDIR}/tmp"\n')
156 # Drop uninative if the build isn't using it (or else NATIVELSBSTRING will 155 # Drop uninative if the build isn't using it (or else NATIVELSBSTRING will
@@ -380,9 +379,6 @@ def write_local_conf(d, baseoutpath, derivative, core_meta_subdir, uninative_che
380 f.write('# Provide a flag to indicate we are in the EXT_SDK Context\n') 379 f.write('# Provide a flag to indicate we are in the EXT_SDK Context\n')
381 f.write('WITHIN_EXT_SDK = "1"\n\n') 380 f.write('WITHIN_EXT_SDK = "1"\n\n')
382 381
383 # Map gcc-dependent uninative sstate cache for installer usage
384 f.write('SSTATE_MIRRORS += " file://universal/(.*) file://universal-4.9/\\1 file://universal-4.9/(.*) file://universal-4.8/\\1"\n\n')
385
386 if d.getVar("PRSERV_HOST"): 382 if d.getVar("PRSERV_HOST"):
387 # Override this, we now include PR data, so it should only point ot the local database 383 # Override this, we now include PR data, so it should only point ot the local database
388 f.write('PRSERV_HOST = "localhost:0"\n\n') 384 f.write('PRSERV_HOST = "localhost:0"\n\n')
@@ -491,8 +487,8 @@ def prepare_locked_cache(d, baseoutpath, derivative, conf_initpath):
491 sstate_out = baseoutpath + '/sstate-cache' 487 sstate_out = baseoutpath + '/sstate-cache'
492 bb.utils.remove(sstate_out, True) 488 bb.utils.remove(sstate_out, True)
493 489
494 # uninative.bbclass sets NATIVELSBSTRING to 'universal%s' % oe.utils.host_gcc_version(d) 490 # uninative.bbclass sets NATIVELSBSTRING to 'universal'
495 fixedlsbstring = "universal%s" % oe.utils.host_gcc_version(d) if bb.data.inherits_class('uninative', d) else "" 491 fixedlsbstring = "universal" if bb.data.inherits_class('uninative', d) else ""
496 492
497 sdk_include_toolchain = (d.getVar('SDK_INCLUDE_TOOLCHAIN') == '1') 493 sdk_include_toolchain = (d.getVar('SDK_INCLUDE_TOOLCHAIN') == '1')
498 sdk_ext_type = d.getVar('SDK_EXT_TYPE') 494 sdk_ext_type = d.getVar('SDK_EXT_TYPE')
diff --git a/meta/classes-recipe/testsdk.bbclass b/meta/classes-recipe/testsdk.bbclass
index 59d2834c99..b1c4fa67e6 100644
--- a/meta/classes-recipe/testsdk.bbclass
+++ b/meta/classes-recipe/testsdk.bbclass
@@ -19,6 +19,7 @@ TESTSDK_SUITES ?= ""
19 19
20TESTSDK_CLASS_NAME ?= "oeqa.sdk.testsdk.TestSDK" 20TESTSDK_CLASS_NAME ?= "oeqa.sdk.testsdk.TestSDK"
21TESTSDKEXT_CLASS_NAME ?= "oeqa.sdkext.testsdk.TestSDKExt" 21TESTSDKEXT_CLASS_NAME ?= "oeqa.sdkext.testsdk.TestSDKExt"
22TESTSDK_CASE_DIRS ?= "sdk"
22 23
23def import_and_run(name, d): 24def import_and_run(name, d):
24 import importlib 25 import importlib
diff --git a/meta/classes/create-spdx-2.2.bbclass b/meta/classes/create-spdx-2.2.bbclass
index 6fc60a1d97..94e0108815 100644
--- a/meta/classes/create-spdx-2.2.bbclass
+++ b/meta/classes/create-spdx-2.2.bbclass
@@ -23,6 +23,8 @@ def get_namespace(d, name):
23 namespace_uuid = uuid.uuid5(uuid.NAMESPACE_DNS, d.getVar("SPDX_UUID_NAMESPACE")) 23 namespace_uuid = uuid.uuid5(uuid.NAMESPACE_DNS, d.getVar("SPDX_UUID_NAMESPACE"))
24 return "%s/%s-%s" % (d.getVar("SPDX_NAMESPACE_PREFIX"), name, str(uuid.uuid5(namespace_uuid, name))) 24 return "%s/%s-%s" % (d.getVar("SPDX_NAMESPACE_PREFIX"), name, str(uuid.uuid5(namespace_uuid, name)))
25 25
26SPDX_PACKAGE_VERSION ??= "${PV}"
27SPDX_PACKAGE_VERSION[doc] = "The version of a package, versionInfo in recipe, package and image"
26 28
27def create_annotation(d, comment): 29def create_annotation(d, comment):
28 from datetime import datetime, timezone 30 from datetime import datetime, timezone
@@ -447,7 +449,7 @@ python do_create_spdx() {
447 449
448 recipe = oe.spdx.SPDXPackage() 450 recipe = oe.spdx.SPDXPackage()
449 recipe.name = d.getVar("PN") 451 recipe.name = d.getVar("PN")
450 recipe.versionInfo = d.getVar("PV") 452 recipe.versionInfo = d.getVar("SPDX_PACKAGE_VERSION")
451 recipe.SPDXID = oe.sbom.get_recipe_spdxid(d) 453 recipe.SPDXID = oe.sbom.get_recipe_spdxid(d)
452 recipe.supplier = d.getVar("SPDX_SUPPLIER") 454 recipe.supplier = d.getVar("SPDX_SUPPLIER")
453 if bb.data.inherits_class("native", d) or bb.data.inherits_class("cross", d): 455 if bb.data.inherits_class("native", d) or bb.data.inherits_class("cross", d):
@@ -556,7 +558,7 @@ python do_create_spdx() {
556 558
557 spdx_package.SPDXID = oe.sbom.get_package_spdxid(pkg_name) 559 spdx_package.SPDXID = oe.sbom.get_package_spdxid(pkg_name)
558 spdx_package.name = pkg_name 560 spdx_package.name = pkg_name
559 spdx_package.versionInfo = d.getVar("PV") 561 spdx_package.versionInfo = d.getVar("SPDX_PACKAGE_VERSION")
560 spdx_package.licenseDeclared = convert_license_to_spdx(package_license, license_data, package_doc, d, found_licenses) 562 spdx_package.licenseDeclared = convert_license_to_spdx(package_license, license_data, package_doc, d, found_licenses)
561 spdx_package.supplier = d.getVar("SPDX_SUPPLIER") 563 spdx_package.supplier = d.getVar("SPDX_SUPPLIER")
562 564
@@ -832,7 +834,7 @@ def combine_spdx(d, rootfs_name, rootfs_deploydir, rootfs_spdxid, packages, spdx
832 834
833 image = oe.spdx.SPDXPackage() 835 image = oe.spdx.SPDXPackage()
834 image.name = d.getVar("PN") 836 image.name = d.getVar("PN")
835 image.versionInfo = d.getVar("PV") 837 image.versionInfo = d.getVar("SPDX_PACKAGE_VERSION")
836 image.SPDXID = rootfs_spdxid 838 image.SPDXID = rootfs_spdxid
837 image.supplier = d.getVar("SPDX_SUPPLIER") 839 image.supplier = d.getVar("SPDX_SUPPLIER")
838 840
diff --git a/meta/classes/externalsrc.bbclass b/meta/classes/externalsrc.bbclass
index 70e27a8d35..527c99ab69 100644
--- a/meta/classes/externalsrc.bbclass
+++ b/meta/classes/externalsrc.bbclass
@@ -28,6 +28,20 @@
28SRCTREECOVEREDTASKS ?= "do_patch do_unpack do_fetch" 28SRCTREECOVEREDTASKS ?= "do_patch do_unpack do_fetch"
29EXTERNALSRC_SYMLINKS ?= "oe-workdir:${WORKDIR} oe-logs:${T}" 29EXTERNALSRC_SYMLINKS ?= "oe-workdir:${WORKDIR} oe-logs:${T}"
30 30
31def find_git_dir(d, s_dir):
32 import subprocess
33 git_dir = None
34 try:
35 git_dir = os.path.join(s_dir,
36 subprocess.check_output(['git', '-C', s_dir, 'rev-parse', '--git-dir'], stderr=subprocess.DEVNULL).decode("utf-8").rstrip())
37 top_git_dir = os.path.join(d.getVar("TOPDIR"),
38 subprocess.check_output(['git', '-C', d.getVar("TOPDIR"), 'rev-parse', '--git-dir'], stderr=subprocess.DEVNULL).decode("utf-8").rstrip())
39 if git_dir == top_git_dir:
40 git_dir = None
41 except subprocess.CalledProcessError:
42 pass
43 return git_dir
44
31python () { 45python () {
32 externalsrc = d.getVar('EXTERNALSRC') 46 externalsrc = d.getVar('EXTERNALSRC')
33 externalsrcbuild = d.getVar('EXTERNALSRC_BUILD') 47 externalsrcbuild = d.getVar('EXTERNALSRC_BUILD')
@@ -169,14 +183,16 @@ python externalsrc_configure_prefunc() {
169 newlinks.append(symsplit[0]) 183 newlinks.append(symsplit[0])
170 # Hide the symlinks from git 184 # Hide the symlinks from git
171 try: 185 try:
172 git_exclude_file = os.path.join(s_dir, '.git/info/exclude') 186 git_dir = find_git_dir(d, s_dir)
173 if os.path.exists(git_exclude_file): 187 if git_dir:
174 with open(git_exclude_file, 'r+') as efile: 188 git_exclude_file = os.path.join(git_dir, 'info/exclude')
175 elines = efile.readlines() 189 if os.path.exists(git_exclude_file):
176 for link in newlinks: 190 with open(git_exclude_file, 'r+') as efile:
177 if link in elines or '/'+link in elines: 191 elines = efile.readlines()
178 continue 192 for link in newlinks:
179 efile.write('/' + link + '\n') 193 if link in elines or '/'+link in elines:
194 continue
195 efile.write('/' + link + '\n')
180 except IOError as ioe: 196 except IOError as ioe:
181 bb.note('Failed to hide EXTERNALSRC_SYMLINKS from git') 197 bb.note('Failed to hide EXTERNALSRC_SYMLINKS from git')
182} 198}
@@ -207,17 +223,7 @@ def srctree_hash_files(d, srcdir=None):
207 import hashlib 223 import hashlib
208 224
209 s_dir = srcdir or d.getVar('EXTERNALSRC') 225 s_dir = srcdir or d.getVar('EXTERNALSRC')
210 git_dir = None 226 git_dir = find_git_dir(d, s_dir)
211
212 try:
213 git_dir = os.path.join(s_dir,
214 subprocess.check_output(['git', '-C', s_dir, 'rev-parse', '--git-dir'], stderr=subprocess.DEVNULL).decode("utf-8").rstrip())
215 top_git_dir = os.path.join(d.getVar("TOPDIR"),
216 subprocess.check_output(['git', '-C', d.getVar("TOPDIR"), 'rev-parse', '--git-dir'], stderr=subprocess.DEVNULL).decode("utf-8").rstrip())
217 if git_dir == top_git_dir:
218 git_dir = None
219 except subprocess.CalledProcessError:
220 pass
221 227
222 ret = " " 228 ret = " "
223 if git_dir is not None: 229 if git_dir is not None:
diff --git a/meta/classes/toolchain/clang-native.bbclass b/meta/classes/toolchain/clang-native.bbclass
new file mode 100644
index 0000000000..4de491a1cb
--- /dev/null
+++ b/meta/classes/toolchain/clang-native.bbclass
@@ -0,0 +1,18 @@
1BUILD_CC = "${CCACHE}${BUILD_PREFIX}clang ${BUILD_CC_ARCH}"
2BUILD_CXX = "${CCACHE}${BUILD_PREFIX}clang++ ${BUILD_CC_ARCH}"
3BUILD_FC = "${BUILD_PREFIX}gfortran ${BUILD_CC_ARCH}"
4BUILD_CPP = "${BUILD_PREFIX}clang ${BUILD_CC_ARCH} -E"
5BUILD_LD = "${BUILD_PREFIX}ld ${BUILD_LD_ARCH}"
6BUILD_CCLD = "${BUILD_PREFIX}clang ${BUILD_CC_ARCH}"
7BUILD_AR = "${BUILD_PREFIX}llvm-ar"
8BUILD_AS = "${BUILD_PREFIX}as ${BUILD_AS_ARCH}"
9BUILD_RANLIB = "${BUILD_PREFIX}llvm-ranlib -D"
10BUILD_STRIP = "${BUILD_PREFIX}llvm-strip"
11BUILD_OBJCOPY = "${BUILD_PREFIX}llvm-objcopy"
12BUILD_OBJDUMP = "${BUILD_PREFIX}llvm-objdump"
13BUILD_NM = "${BUILD_PREFIX}llvm-nm"
14BUILD_READELF = "${BUILD_PREFIX}llvm-readelf"
15
16DEPENDS += "clang-native libcxx-native compiler-rt-native"
17
18LDFLAGS += " --rtlib=libgcc --unwindlib=libgcc"
diff --git a/meta/conf/bitbake.conf b/meta/conf/bitbake.conf
index a3300fc172..b1f8ac5b11 100644
--- a/meta/conf/bitbake.conf
+++ b/meta/conf/bitbake.conf
@@ -944,6 +944,8 @@ TRANSLATED_TARGET_ARCH ??= "${@d.getVar('TARGET_ARCH').replace("_", "-")}"
944 944
945# Set a default umask to use for tasks for determinism 945# Set a default umask to use for tasks for determinism
946BB_DEFAULT_UMASK ??= "022" 946BB_DEFAULT_UMASK ??= "022"
947# The umask to use for shared files (e.g. DL_DIR and SSTATE_DIR)
948OE_SHARED_UMASK ??= "002"
947 949
948# Complete output from bitbake 950# Complete output from bitbake
949BB_CONSOLELOG ?= "${LOG_DIR}/cooker/${MACHINE}/${DATETIME}.log" 951BB_CONSOLELOG ?= "${LOG_DIR}/cooker/${MACHINE}/${DATETIME}.log"
diff --git a/meta/conf/cve-check-map.conf b/meta/conf/cve-check-map.conf
index ac956379d1..fc49fe0a50 100644
--- a/meta/conf/cve-check-map.conf
+++ b/meta/conf/cve-check-map.conf
@@ -28,8 +28,12 @@ CVE_CHECK_STATUSMAP[cpe-incorrect] = "Ignored"
28CVE_CHECK_STATUSMAP[disputed] = "Ignored" 28CVE_CHECK_STATUSMAP[disputed] = "Ignored"
29# use when vulnerability depends on build or runtime configuration which is not used 29# use when vulnerability depends on build or runtime configuration which is not used
30CVE_CHECK_STATUSMAP[not-applicable-config] = "Ignored" 30CVE_CHECK_STATUSMAP[not-applicable-config] = "Ignored"
31CVE_CHECK_VEX_JUSTIFICATION[not-applicable-config] = "vulnerableCodeNotPresent"
32
31# use when vulnerability affects other platform (e.g. Windows or Debian) 33# use when vulnerability affects other platform (e.g. Windows or Debian)
32CVE_CHECK_STATUSMAP[not-applicable-platform] = "Ignored" 34CVE_CHECK_STATUSMAP[not-applicable-platform] = "Ignored"
35CVE_CHECK_VEX_JUSTIFICATION[not-applicable-platform] = "vulnerableCodeNotPresent"
36
33# use when upstream acknowledged the vulnerability but does not plan to fix it 37# use when upstream acknowledged the vulnerability but does not plan to fix it
34CVE_CHECK_STATUSMAP[upstream-wontfix] = "Ignored" 38CVE_CHECK_STATUSMAP[upstream-wontfix] = "Ignored"
35 39
diff --git a/meta/conf/distro/include/maintainers.inc b/meta/conf/distro/include/maintainers.inc
index d94fb693e3..60f04da608 100644
--- a/meta/conf/distro/include/maintainers.inc
+++ b/meta/conf/distro/include/maintainers.inc
@@ -479,7 +479,7 @@ RECIPE_MAINTAINER:pn-linux-yocto = "Bruce Ashfield <bruce.ashfield@gmail.com>"
479RECIPE_MAINTAINER:pn-linux-yocto-dev = "Bruce Ashfield <bruce.ashfield@gmail.com>" 479RECIPE_MAINTAINER:pn-linux-yocto-dev = "Bruce Ashfield <bruce.ashfield@gmail.com>"
480RECIPE_MAINTAINER:pn-linux-yocto-rt = "Bruce Ashfield <bruce.ashfield@gmail.com>" 480RECIPE_MAINTAINER:pn-linux-yocto-rt = "Bruce Ashfield <bruce.ashfield@gmail.com>"
481RECIPE_MAINTAINER:pn-linux-yocto-tiny = "Bruce Ashfield <bruce.ashfield@gmail.com>" 481RECIPE_MAINTAINER:pn-linux-yocto-tiny = "Bruce Ashfield <bruce.ashfield@gmail.com>"
482RECIPE_MAINTAINER:pn-llvm-project-source-20.1.6 = "Khem Raj <raj.khem@gmail.com>" 482RECIPE_MAINTAINER:pn-llvm-project-source-20.1.7 = "Khem Raj <raj.khem@gmail.com>"
483RECIPE_MAINTAINER:pn-logrotate = "Yi Zhao <yi.zhao@windriver.com>" 483RECIPE_MAINTAINER:pn-logrotate = "Yi Zhao <yi.zhao@windriver.com>"
484RECIPE_MAINTAINER:pn-log4cplus = "Unassigned <unassigned@yoctoproject.org>" 484RECIPE_MAINTAINER:pn-log4cplus = "Unassigned <unassigned@yoctoproject.org>"
485RECIPE_MAINTAINER:pn-lrzsz = "Anuj Mittal <anuj.mittal@intel.com>" 485RECIPE_MAINTAINER:pn-lrzsz = "Anuj Mittal <anuj.mittal@intel.com>"
@@ -718,6 +718,8 @@ RECIPE_MAINTAINER:pn-python3-snowballstemmer = "Tim Orling <tim.orling@konsulko.
718RECIPE_MAINTAINER:pn-python3-sortedcontainers = "Tim Orling <tim.orling@konsulko.com>" 718RECIPE_MAINTAINER:pn-python3-sortedcontainers = "Tim Orling <tim.orling@konsulko.com>"
719RECIPE_MAINTAINER:pn-python3-spdx-tools = "Marta Rybczynska <marta.rybczynska@ygreky.com>" 719RECIPE_MAINTAINER:pn-python3-spdx-tools = "Marta Rybczynska <marta.rybczynska@ygreky.com>"
720RECIPE_MAINTAINER:pn-python3-sphinx = "Trevor Gamblin <tgamblin@baylibre.com>" 720RECIPE_MAINTAINER:pn-python3-sphinx = "Trevor Gamblin <tgamblin@baylibre.com>"
721RECIPE_MAINTAINER:pn-python3-sphinx-argparse = "Antonin Godard <antonin.godard@bootlin.com>"
722RECIPE_MAINTAINER:pn-python3-sphinx-copybutton = "Antonin Godard <antonin.godard@bootlin.com>"
721RECIPE_MAINTAINER:pn-python3-sphinx-rtd-theme = "Tim Orling <tim.orling@konsulko.com>" 723RECIPE_MAINTAINER:pn-python3-sphinx-rtd-theme = "Tim Orling <tim.orling@konsulko.com>"
722RECIPE_MAINTAINER:pn-python3-sphinxcontrib-applehelp = "Tim Orling <tim.orling@konsulko.com>" 724RECIPE_MAINTAINER:pn-python3-sphinxcontrib-applehelp = "Tim Orling <tim.orling@konsulko.com>"
723RECIPE_MAINTAINER:pn-python3-sphinxcontrib-devhelp = "Tim Orling <tim.orling@konsulko.com>" 725RECIPE_MAINTAINER:pn-python3-sphinxcontrib-devhelp = "Tim Orling <tim.orling@konsulko.com>"
diff --git a/meta/conf/distro/include/ptest-packagelists.inc b/meta/conf/distro/include/ptest-packagelists.inc
index e06731ece7..4253c7b062 100644
--- a/meta/conf/distro/include/ptest-packagelists.inc
+++ b/meta/conf/distro/include/ptest-packagelists.inc
@@ -78,6 +78,7 @@ PTESTS_FAST = "\
78 python3-uritools \ 78 python3-uritools \
79 python3-wcwidth \ 79 python3-wcwidth \
80 python3-webcolors \ 80 python3-webcolors \
81 python3-wheel \
81 qemu \ 82 qemu \
82 quilt \ 83 quilt \
83 rpm-sequoia \ 84 rpm-sequoia \
diff --git a/meta/conf/sanity.conf b/meta/conf/sanity.conf
index 3692007e96..474816797a 100644
--- a/meta/conf/sanity.conf
+++ b/meta/conf/sanity.conf
@@ -3,7 +3,7 @@
3# See sanity.bbclass 3# See sanity.bbclass
4# 4#
5# Expert users can confirm their sanity with "touch conf/sanity.conf" 5# Expert users can confirm their sanity with "touch conf/sanity.conf"
6BB_MIN_VERSION = "2.15.0" 6BB_MIN_VERSION = "2.15.1"
7 7
8SANITY_ABIFILE = "${TMPDIR}/abi_version" 8SANITY_ABIFILE = "${TMPDIR}/abi_version"
9 9
diff --git a/meta/files/toolchain-shar-extract.sh b/meta/files/toolchain-shar-extract.sh
index 06934e5a9a..e2c617958a 100644
--- a/meta/files/toolchain-shar-extract.sh
+++ b/meta/files/toolchain-shar-extract.sh
@@ -31,9 +31,6 @@ tweakpath /sbin
31INST_ARCH=$(uname -m | sed -e "s/i[3-6]86/ix86/" -e "s/x86[-_]64/x86_64/") 31INST_ARCH=$(uname -m | sed -e "s/i[3-6]86/ix86/" -e "s/x86[-_]64/x86_64/")
32SDK_ARCH=$(echo @SDK_ARCH@ | sed -e "s/i[3-6]86/ix86/" -e "s/x86[-_]64/x86_64/") 32SDK_ARCH=$(echo @SDK_ARCH@ | sed -e "s/i[3-6]86/ix86/" -e "s/x86[-_]64/x86_64/")
33 33
34INST_GCC_VER=$(gcc --version 2>/dev/null | sed -ne 's/.* \([0-9]\+\.[0-9]\+\)\.[0-9]\+.*/\1/p')
35SDK_GCC_VER='@SDK_GCC_VER@'
36
37verlte () { 34verlte () {
38 [ "$1" = "`printf "$1\n$2" | sort -V | head -n1`" ] 35 [ "$1" = "`printf "$1\n$2" | sort -V | head -n1`" ]
39} 36}
@@ -145,11 +142,6 @@ fi
145# SDK_EXTENSIBLE is exposed from the SDK_PRE_INSTALL_COMMAND above 142# SDK_EXTENSIBLE is exposed from the SDK_PRE_INSTALL_COMMAND above
146if [ "$SDK_EXTENSIBLE" = "1" ]; then 143if [ "$SDK_EXTENSIBLE" = "1" ]; then
147 DEFAULT_INSTALL_DIR="@SDKEXTPATH@" 144 DEFAULT_INSTALL_DIR="@SDKEXTPATH@"
148 if [ "$INST_GCC_VER" = '4.8' -a "$SDK_GCC_VER" = '4.9' ] || [ "$INST_GCC_VER" = '4.8' -a "$SDK_GCC_VER" = '' ] || \
149 [ "$INST_GCC_VER" = '4.9' -a "$SDK_GCC_VER" = '' ]; then
150 echo "Error: Incompatible SDK installer! Your host gcc version is $INST_GCC_VER and this SDK was built by gcc higher version."
151 exit 1
152 fi
153fi 145fi
154 146
155if [ "$target_sdk_dir" = "" ]; then 147if [ "$target_sdk_dir" = "" ]; then
diff --git a/meta/lib/oe/license.py b/meta/lib/oe/license.py
index 6f882c3812..6e55fa1e7f 100644
--- a/meta/lib/oe/license.py
+++ b/meta/lib/oe/license.py
@@ -462,3 +462,18 @@ def skip_incompatible_package_licenses(d, pkgs):
462 skipped_pkgs[pkg] = incompatible_lic 462 skipped_pkgs[pkg] = incompatible_lic
463 463
464 return skipped_pkgs 464 return skipped_pkgs
465
466def tidy_licenses(value):
467 """
468 Flat, split and sort licenses.
469 """
470 from oe.license import flattened_licenses
471
472 def _choose(a, b):
473 str_a, str_b = sorted((" & ".join(a), " & ".join(b)), key=str.casefold)
474 return ["(%s | %s)" % (str_a, str_b)]
475
476 if not isinstance(value, str):
477 value = " & ".join(value)
478
479 return sorted(list(set(flattened_licenses(value, _choose))), key=str.casefold)
diff --git a/meta/lib/oe/spdx30_tasks.py b/meta/lib/oe/spdx30_tasks.py
index beeafc2bb7..c352dab152 100644
--- a/meta/lib/oe/spdx30_tasks.py
+++ b/meta/lib/oe/spdx30_tasks.py
@@ -552,7 +552,7 @@ def create_spdx(d):
552 ) 552 )
553 build_objset.new_relationship( 553 build_objset.new_relationship(
554 source_files, 554 source_files,
555 oe.spdx30.RelationshipType.hasConcludedLicense, 555 oe.spdx30.RelationshipType.hasDeclaredLicense,
556 [oe.sbom30.get_element_link_id(recipe_spdx_license)], 556 [oe.sbom30.get_element_link_id(recipe_spdx_license)],
557 ) 557 )
558 558
@@ -724,24 +724,23 @@ def create_spdx(d):
724 impact_statement=description, 724 impact_statement=description,
725 ) 725 )
726 726
727 if detail in ( 727 vex_just_type = d.getVarFlag(
728 "ignored", 728 "CVE_CHECK_VEX_JUSTIFICATION", detail
729 "cpe-incorrect", 729 )
730 "disputed", 730 if vex_just_type:
731 "upstream-wontfix", 731 if (
732 ): 732 vex_just_type
733 # VEX doesn't have justifications for this 733 not in oe.spdx30.security_VexJustificationType.NAMED_INDIVIDUALS
734 pass 734 ):
735 elif detail in ( 735 bb.fatal(
736 "not-applicable-config", 736 f"Unknown vex justification '{vex_just_type}', detail '{detail}', for ignored {cve}"
737 "not-applicable-platform",
738 ):
739 for v in spdx_vex:
740 v.security_justificationType = (
741 oe.spdx30.security_VexJustificationType.vulnerableCodeNotPresent
742 ) 737 )
743 else: 738
744 bb.fatal(f"Unknown detail '{detail}' for ignored {cve}") 739 for v in spdx_vex:
740 v.security_justificationType = oe.spdx30.security_VexJustificationType.NAMED_INDIVIDUALS[
741 vex_just_type
742 ]
743
745 elif status == "Unknown": 744 elif status == "Unknown":
746 bb.note(f"Skipping {cve} with status 'Unknown'") 745 bb.note(f"Skipping {cve} with status 'Unknown'")
747 else: 746 else:
diff --git a/meta/lib/oe/utils.py b/meta/lib/oe/utils.py
index a11db5f3cd..779c5e593f 100644
--- a/meta/lib/oe/utils.py
+++ b/meta/lib/oe/utils.py
@@ -415,60 +415,29 @@ def format_pkg_list(pkg_dict, ret_format=None, pkgdata_dir=None):
415 return output_str 415 return output_str
416 416
417 417
418# Helper function to get the host compiler version 418# Helper function to get the host gcc version
419# Do not assume the compiler is gcc 419def get_host_gcc_version(d, taskcontextonly=False):
420def get_host_compiler_version(d, taskcontextonly=False):
421 import re, subprocess 420 import re, subprocess
422 421
423 if taskcontextonly and d.getVar('BB_WORKERCONTEXT') != '1': 422 if taskcontextonly and d.getVar('BB_WORKERCONTEXT') != '1':
424 return 423 return
425 424
426 compiler = d.getVar("BUILD_CC")
427 # Get rid of ccache since it is not present when parsing.
428 if compiler.startswith('ccache '):
429 compiler = compiler[7:]
430 try: 425 try:
431 env = os.environ.copy() 426 env = os.environ.copy()
432 # datastore PATH does not contain session PATH as set by environment-setup-... 427 # datastore PATH does not contain session PATH as set by environment-setup-...
433 # this breaks the install-buildtools use-case 428 # this breaks the install-buildtools use-case
434 # env["PATH"] = d.getVar("PATH") 429 # env["PATH"] = d.getVar("PATH")
435 output = subprocess.check_output("%s --version" % compiler, \ 430 output = subprocess.check_output("gcc --version", \
436 shell=True, env=env, stderr=subprocess.STDOUT).decode("utf-8") 431 shell=True, env=env, stderr=subprocess.STDOUT).decode("utf-8")
437 except subprocess.CalledProcessError as e: 432 except subprocess.CalledProcessError as e:
438 bb.fatal("Error running %s --version: %s" % (compiler, e.output.decode("utf-8"))) 433 bb.fatal("Error running gcc --version: %s" % (e.output.decode("utf-8")))
439 434
440 match = re.match(r".* (\d+\.\d+)\.\d+.*", output.split('\n')[0]) 435 match = re.match(r".* (\d+\.\d+)\.\d+.*", output.split('\n')[0])
441 if not match: 436 if not match:
442 bb.fatal("Can't get compiler version from %s --version output" % compiler) 437 bb.fatal("Can't get compiler version from gcc --version output")
443 438
444 version = match.group(1) 439 version = match.group(1)
445 return compiler, version 440 return version
446
447
448def host_gcc_version(d, taskcontextonly=False):
449 import re, subprocess
450
451 if taskcontextonly and d.getVar('BB_WORKERCONTEXT') != '1':
452 return
453
454 compiler = d.getVar("BUILD_CC")
455 # Get rid of ccache since it is not present when parsing.
456 if compiler.startswith('ccache '):
457 compiler = compiler[7:]
458 try:
459 env = os.environ.copy()
460 env["PATH"] = d.getVar("PATH")
461 output = subprocess.check_output("%s --version" % compiler, \
462 shell=True, env=env, stderr=subprocess.STDOUT).decode("utf-8")
463 except subprocess.CalledProcessError as e:
464 bb.fatal("Error running %s --version: %s" % (compiler, e.output.decode("utf-8")))
465
466 match = re.match(r".* (\d+\.\d+)\.\d+.*", output.split('\n')[0])
467 if not match:
468 bb.fatal("Can't get compiler version from %s --version output" % compiler)
469
470 version = match.group(1)
471 return "-%s" % version if version in ("4.8", "4.9") else ""
472 441
473@bb.parse.vardepsexclude("DEFAULTTUNE_MULTILIB_ORIGINAL", "OVERRIDES") 442@bb.parse.vardepsexclude("DEFAULTTUNE_MULTILIB_ORIGINAL", "OVERRIDES")
474def get_multilib_datastore(variant, d): 443def get_multilib_datastore(variant, d):
diff --git a/meta/lib/oeqa/sdk/buildtools-docs-cases/README b/meta/lib/oeqa/buildtools-docs/cases/README
index f8edbc7dad..f8edbc7dad 100644
--- a/meta/lib/oeqa/sdk/buildtools-docs-cases/README
+++ b/meta/lib/oeqa/buildtools-docs/cases/README
diff --git a/meta/lib/oeqa/sdk/buildtools-docs-cases/build.py b/meta/lib/oeqa/buildtools-docs/cases/build.py
index 6e3ee94292..6e3ee94292 100644
--- a/meta/lib/oeqa/sdk/buildtools-docs-cases/build.py
+++ b/meta/lib/oeqa/buildtools-docs/cases/build.py
diff --git a/meta/lib/oeqa/sdk/buildtools-cases/README b/meta/lib/oeqa/buildtools/cases/README
index d4f20faa9f..d4f20faa9f 100644
--- a/meta/lib/oeqa/sdk/buildtools-cases/README
+++ b/meta/lib/oeqa/buildtools/cases/README
diff --git a/meta/lib/oeqa/sdk/buildtools-cases/build.py b/meta/lib/oeqa/buildtools/cases/build.py
index c85c32496b..c85c32496b 100644
--- a/meta/lib/oeqa/sdk/buildtools-cases/build.py
+++ b/meta/lib/oeqa/buildtools/cases/build.py
diff --git a/meta/lib/oeqa/sdk/buildtools-cases/gcc.py b/meta/lib/oeqa/buildtools/cases/gcc.py
index a62c4d0bc4..a62c4d0bc4 100644
--- a/meta/lib/oeqa/sdk/buildtools-cases/gcc.py
+++ b/meta/lib/oeqa/buildtools/cases/gcc.py
diff --git a/meta/lib/oeqa/sdk/buildtools-cases/https.py b/meta/lib/oeqa/buildtools/cases/https.py
index 4525e3d758..4525e3d758 100644
--- a/meta/lib/oeqa/sdk/buildtools-cases/https.py
+++ b/meta/lib/oeqa/buildtools/cases/https.py
diff --git a/meta/lib/oeqa/sdk/buildtools-cases/sanity.py b/meta/lib/oeqa/buildtools/cases/sanity.py
index a55d456656..a55d456656 100644
--- a/meta/lib/oeqa/sdk/buildtools-cases/sanity.py
+++ b/meta/lib/oeqa/buildtools/cases/sanity.py
diff --git a/meta/lib/oeqa/core/context.py b/meta/lib/oeqa/core/context.py
index 9313271f58..46de9135c1 100644
--- a/meta/lib/oeqa/core/context.py
+++ b/meta/lib/oeqa/core/context.py
@@ -179,9 +179,16 @@ class OETestContextExecutor(object):
179 else: 179 else:
180 self.tc_kwargs['init']['td'] = {} 180 self.tc_kwargs['init']['td'] = {}
181 181
182 # Run image specific TEST_SUITE like testimage.bbclass by default
183 test_suites = self.tc_kwargs['init']['td'].get("TEST_SUITES")
184 if test_suites:
185 test_suites = test_suites.split()
186
182 if args.run_tests: 187 if args.run_tests:
183 self.tc_kwargs['load']['modules'] = args.run_tests 188 self.tc_kwargs['load']['modules'] = args.run_tests
184 self.tc_kwargs['load']['modules_required'] = args.run_tests 189 self.tc_kwargs['load']['modules_required'] = args.run_tests
190 elif test_suites:
191 self.tc_kwargs['load']['modules'] = test_suites
185 else: 192 else:
186 self.tc_kwargs['load']['modules'] = [] 193 self.tc_kwargs['load']['modules'] = []
187 194
diff --git a/meta/lib/oeqa/core/target/__init__.py b/meta/lib/oeqa/core/target/__init__.py
index 1382aa9b52..177f648fe3 100644
--- a/meta/lib/oeqa/core/target/__init__.py
+++ b/meta/lib/oeqa/core/target/__init__.py
@@ -10,6 +10,7 @@ class OETarget(object):
10 10
11 def __init__(self, logger, *args, **kwargs): 11 def __init__(self, logger, *args, **kwargs):
12 self.logger = logger 12 self.logger = logger
13 self.runner = None
13 14
14 @abstractmethod 15 @abstractmethod
15 def start(self): 16 def start(self):
diff --git a/meta/lib/oeqa/runtime/case.py b/meta/lib/oeqa/runtime/case.py
index 9515ca2f3d..2a47771a3d 100644
--- a/meta/lib/oeqa/runtime/case.py
+++ b/meta/lib/oeqa/runtime/case.py
@@ -23,6 +23,8 @@ class OERuntimeTestCase(OETestCase):
23 uninstall_package(self) 23 uninstall_package(self)
24 24
25def run_network_serialdebug(runner): 25def run_network_serialdebug(runner):
26 if not runner:
27 return
26 status, output = runner.run_serial("ip addr") 28 status, output = runner.run_serial("ip addr")
27 print("ip addr on target: %s %s" % (output, status)) 29 print("ip addr on target: %s %s" % (output, status))
28 status, output = runner.run_serial("ping -c 1 %s" % self.target.server_ip) 30 status, output = runner.run_serial("ping -c 1 %s" % self.target.server_ip)
diff --git a/meta/lib/oeqa/sdk/testsdk.py b/meta/lib/oeqa/sdk/testsdk.py
index 52b702b6a2..cffcf9f49a 100644
--- a/meta/lib/oeqa/sdk/testsdk.py
+++ b/meta/lib/oeqa/sdk/testsdk.py
@@ -31,6 +31,28 @@ class TestSDK(TestSDKBase):
31 context_class = OESDKTestContext 31 context_class = OESDKTestContext
32 test_type = 'sdk' 32 test_type = 'sdk'
33 33
34 def sdk_dir_names(self, d):
35 """Return list from TESTSDK_CASE_DIRS."""
36 testdirs = d.getVar("TESTSDK_CASE_DIRS")
37 if testdirs:
38 return testdirs.split()
39
40 bb.fatal("TESTSDK_CASE_DIRS unset, can't find SDK test directories.")
41
42 def get_sdk_paths(self, d):
43 """
44 Return a list of paths where SDK test cases reside.
45
46 SDK tests are expected in <LAYER_DIR>/lib/oeqa/<dirname>/cases
47 """
48 paths = []
49 for layer in d.getVar("BBLAYERS").split():
50 for dirname in self.sdk_dir_names(d):
51 case_path = os.path.join(layer, "lib", "oeqa", dirname, "cases")
52 if os.path.isdir(case_path):
53 paths.append(case_path)
54 return paths
55
34 def get_tcname(self, d): 56 def get_tcname(self, d):
35 """ 57 """
36 Get the name of the SDK file 58 Get the name of the SDK file
@@ -115,7 +137,7 @@ class TestSDK(TestSDKBase):
115 137
116 try: 138 try:
117 modules = (d.getVar("TESTSDK_SUITES") or "").split() 139 modules = (d.getVar("TESTSDK_SUITES") or "").split()
118 tc.loadTests(self.context_executor_class.default_cases, modules) 140 tc.loadTests(self.get_sdk_paths(d), modules)
119 except Exception as e: 141 except Exception as e:
120 import traceback 142 import traceback
121 bb.fatal("Loading tests failed:\n%s" % traceback.format_exc()) 143 bb.fatal("Loading tests failed:\n%s" % traceback.format_exc())
diff --git a/meta/lib/oeqa/selftest/cases/devtool.py b/meta/lib/oeqa/selftest/cases/devtool.py
index 74a7727cc0..05f228f03e 100644
--- a/meta/lib/oeqa/selftest/cases/devtool.py
+++ b/meta/lib/oeqa/selftest/cases/devtool.py
@@ -154,7 +154,7 @@ class DevtoolTestCase(OESelftestTestCase):
154 value = invalue 154 value = invalue
155 invar = None 155 invar = None
156 elif '=' in line: 156 elif '=' in line:
157 splitline = line.split('=', 1) 157 splitline = re.split(r"[?+:]*=[+]?", line, 1)
158 var = splitline[0].rstrip() 158 var = splitline[0].rstrip()
159 value = splitline[1].strip().strip('"') 159 value = splitline[1].strip().strip('"')
160 if value.endswith('\\'): 160 if value.endswith('\\'):
diff --git a/meta/lib/oeqa/selftest/cases/recipetool.py b/meta/lib/oeqa/selftest/cases/recipetool.py
index 2a91f6c7ae..0bd724c8ee 100644
--- a/meta/lib/oeqa/selftest/cases/recipetool.py
+++ b/meta/lib/oeqa/selftest/cases/recipetool.py
@@ -757,13 +757,12 @@ class RecipetoolCreateTests(RecipetoolBase):
757 757
758 def test_recipetool_create_go(self): 758 def test_recipetool_create_go(self):
759 # Basic test to check go recipe generation 759 # Basic test to check go recipe generation
760 self.maxDiff = None
761
760 temprecipe = os.path.join(self.tempdir, 'recipe') 762 temprecipe = os.path.join(self.tempdir, 'recipe')
761 os.makedirs(temprecipe) 763 os.makedirs(temprecipe)
762 764
763 recipefile = os.path.join(temprecipe, 'recipetool-go-test_git.bb') 765 recipefile = os.path.join(temprecipe, 'recipetool-go-test_git.bb')
764 deps_require_file = os.path.join(temprecipe, 'recipetool-go-test', 'recipetool-go-test-modules.inc')
765 lics_require_file = os.path.join(temprecipe, 'recipetool-go-test', 'recipetool-go-test-licenses.inc')
766 modules_txt_file = os.path.join(temprecipe, 'recipetool-go-test', 'modules.txt')
767 766
768 srcuri = 'https://git.yoctoproject.org/recipetool-go-test.git' 767 srcuri = 'https://git.yoctoproject.org/recipetool-go-test.git'
769 srcrev = "c3e213c01b6c1406b430df03ef0d1ae77de5d2f7" 768 srcrev = "c3e213c01b6c1406b430df03ef0d1ae77de5d2f7"
@@ -771,13 +770,11 @@ class RecipetoolCreateTests(RecipetoolBase):
771 770
772 result = runCmd('recipetool create -o %s %s -S %s -B %s' % (temprecipe, srcuri, srcrev, srcbranch)) 771 result = runCmd('recipetool create -o %s %s -S %s -B %s' % (temprecipe, srcuri, srcrev, srcbranch))
773 772
774 self.maxDiff = None 773 inherits = ['go-mod', 'go-mod-update-modules']
775 inherits = ['go-vendor']
776 774
777 checkvars = {} 775 checkvars = {}
778 checkvars['GO_IMPORT'] = "git.yoctoproject.org/recipetool-go-test" 776 checkvars['GO_IMPORT'] = "git.yoctoproject.org/recipetool-go-test"
779 checkvars['SRC_URI'] = {'git://${GO_IMPORT};destsuffix=git/src/${GO_IMPORT};nobranch=1;name=${BPN};protocol=https', 777 checkvars['SRC_URI'] = {'git://${GO_IMPORT};protocol=https;nobranch=1;destsuffix=${GO_SRCURI_DESTSUFFIX}'}
780 'file://modules.txt'}
781 checkvars['LIC_FILES_CHKSUM'] = { 778 checkvars['LIC_FILES_CHKSUM'] = {
782 'file://src/${GO_IMPORT}/LICENSE;md5=4e3933dd47afbf115e484d11385fb3bd', 779 'file://src/${GO_IMPORT}/LICENSE;md5=4e3933dd47afbf115e484d11385fb3bd',
783 'file://src/${GO_IMPORT}/is/LICENSE;md5=62beaee5a116dd1e80161667b1df39ab' 780 'file://src/${GO_IMPORT}/is/LICENSE;md5=62beaee5a116dd1e80161667b1df39ab'
@@ -786,26 +783,16 @@ class RecipetoolCreateTests(RecipetoolBase):
786 self._test_recipe_contents(recipefile, checkvars, inherits) 783 self._test_recipe_contents(recipefile, checkvars, inherits)
787 self.assertNotIn('Traceback', result.output) 784 self.assertNotIn('Traceback', result.output)
788 785
786 lics_require_file = os.path.join(temprecipe, 'recipetool-go-test-licenses.inc')
787 self.assertFileExists(lics_require_file)
789 checkvars = {} 788 checkvars = {}
790 checkvars['VENDORED_LIC_FILES_CHKSUM'] = set( 789 checkvars['LIC_FILES_CHKSUM'] = {'file://pkg/mod/github.com/godbus/dbus/v5@v5.1.0/LICENSE;md5=09042bd5c6c96a2b9e45ddf1bc517eed;spdx=BSD-2-Clause'}
791 ['file://src/${GO_IMPORT}/vendor/github.com/godbus/dbus/v5/LICENSE;md5=09042bd5c6c96a2b9e45ddf1bc517eed',
792 'file://src/${GO_IMPORT}/vendor/github.com/matryer/is/LICENSE;md5=62beaee5a116dd1e80161667b1df39ab'])
793 self.assertTrue(os.path.isfile(lics_require_file))
794 self._test_recipe_contents(lics_require_file, checkvars, []) 790 self._test_recipe_contents(lics_require_file, checkvars, [])
795 791
796 # make sure that dependencies don't mention local directory ./matryer/is 792 deps_require_file = os.path.join(temprecipe, 'recipetool-go-test-go-mods.inc')
797 dependencies = \ 793 self.assertFileExists(deps_require_file)
798 [ ('github.com/godbus/dbus','v5.1.0', 'github.com/godbus/dbus/v5', '/v5', ''),
799 ]
800
801 src_uri = set()
802 for d in dependencies:
803 src_uri.add(self._go_urifiy(*d))
804
805 checkvars = {} 794 checkvars = {}
806 checkvars['GO_DEPENDENCIES_SRC_URI'] = src_uri 795 checkvars['SRC_URI'] = {'gomod://github.com/godbus/dbus/v5;version=v5.1.0;sha256sum=03dfa8e71089a6f477310d15c4d3a036d82d028532881b50fee254358e782ad9'}
807
808 self.assertTrue(os.path.isfile(deps_require_file))
809 self._test_recipe_contents(deps_require_file, checkvars, []) 796 self._test_recipe_contents(deps_require_file, checkvars, [])
810 797
811class RecipetoolTests(RecipetoolBase): 798class RecipetoolTests(RecipetoolBase):
diff --git a/meta/recipes-bsp/opensbi/opensbi/0001-Makefile-Add-flag-for-reprodubility-compiler-flags.patch b/meta/recipes-bsp/opensbi/opensbi/0001-Makefile-Add-flag-for-reprodubility-compiler-flags.patch
deleted file mode 100644
index e650476f50..0000000000
--- a/meta/recipes-bsp/opensbi/opensbi/0001-Makefile-Add-flag-for-reprodubility-compiler-flags.patch
+++ /dev/null
@@ -1,49 +0,0 @@
1From f4c440219f42d74bd3d6688132ea876f3f51e601 Mon Sep 17 00:00:00 2001
2From: Khem Raj <raj.khem@gmail.com>
3Date: Wed, 14 May 2025 19:50:24 -0700
4Subject: [PATCH] Makefile: Add flag for reprodubility compiler flags
5
6Provides mechanism to remove absolute paths from binaries using
7-ffile-prefix-map
8
9It will help distros (e.g. yocto based ones ) which want to ship
10the .elf files but need to scrub absolute paths in objects
11
12Upstream-Status: Submitted [https://lists.infradead.org/pipermail/opensbi/2025-May/008458.html]
13Signed-off-by: Khem Raj <raj.khem@gmail.com>
14---
15 Makefile | 7 +++++++
16 1 file changed, 7 insertions(+)
17
18diff --git a/Makefile b/Makefile
19index e90836c7..22d4ecff 100644
20--- a/Makefile
21+++ b/Makefile
22@@ -174,6 +174,11 @@ else
23 USE_LD_FLAG = -fuse-ld=bfd
24 endif
25
26+REPRODUCIBLE ?= n
27+ifeq ($(REPRODUCIBLE),y)
28+REPRODUCIBLE_FLAGS += -ffile-prefix-map=$(src_dir)=
29+endif
30+
31 # Check whether the linker supports creating PIEs
32 OPENSBI_LD_PIE := $(shell $(CC) $(CLANG_TARGET) $(RELAX_FLAG) $(USE_LD_FLAG) -fPIE -nostdlib -Wl,-pie -x c /dev/null -o /dev/null >/dev/null 2>&1 && echo y || echo n)
33
34@@ -362,6 +367,7 @@ GENFLAGS += $(firmware-genflags-y)
35
36 CFLAGS = -g -Wall -Werror -ffreestanding -nostdlib -fno-stack-protector -fno-strict-aliasing -ffunction-sections -fdata-sections
37 CFLAGS += -fno-omit-frame-pointer -fno-optimize-sibling-calls
38+CFLAGS += $(REPRODUCIBLE_FLAGS)
39 # Optionally supported flags
40 ifeq ($(CC_SUPPORT_VECTOR),y)
41 CFLAGS += -DOPENSBI_CC_SUPPORT_VECTOR
42@@ -387,6 +393,7 @@ CPPFLAGS += $(firmware-cppflags-y)
43 ASFLAGS = -g -Wall -nostdlib
44 ASFLAGS += -fno-omit-frame-pointer -fno-optimize-sibling-calls
45 ASFLAGS += -fPIE
46+ASFLAGS += $(REPRODUCIBLE_FLAGS)
47 # Optionally supported flags
48 ifeq ($(CC_SUPPORT_SAVE_RESTORE),y)
49 ASFLAGS += -mno-save-restore
diff --git a/meta/recipes-bsp/opensbi/opensbi_1.6.bb b/meta/recipes-bsp/opensbi/opensbi_1.7.bb
index 308ac43ac8..a460062e93 100644
--- a/meta/recipes-bsp/opensbi/opensbi_1.6.bb
+++ b/meta/recipes-bsp/opensbi/opensbi_1.7.bb
@@ -8,10 +8,8 @@ require opensbi-payloads.inc
8 8
9inherit deploy 9inherit deploy
10 10
11SRCREV = "bd613dd92113f683052acfb23d9dc8ba60029e0a" 11SRCREV = "a32a91069119e7a5aa31e6bc51d5e00860be3d80"
12SRC_URI = "git://github.com/riscv/opensbi.git;branch=master;protocol=https \ 12SRC_URI = "git://github.com/riscv/opensbi.git;branch=master;protocol=https"
13 file://0001-Makefile-Add-flag-for-reprodubility-compiler-flags.patch \
14"
15 13
16TARGET_DBGSRC_DIR = "/share/opensbi/*/generic/firmware/" 14TARGET_DBGSRC_DIR = "/share/opensbi/*/generic/firmware/"
17 15
diff --git a/meta/recipes-bsp/pciutils/pciutils_3.13.0.bb b/meta/recipes-bsp/pciutils/pciutils_3.14.0.bb
index 6478722838..a267ea34b7 100644
--- a/meta/recipes-bsp/pciutils/pciutils_3.13.0.bb
+++ b/meta/recipes-bsp/pciutils/pciutils_3.14.0.bb
@@ -12,7 +12,7 @@ LIC_FILES_CHKSUM = "file://COPYING;md5=751419260aa954499f7abaabaa882bbe"
12DEPENDS = "make-native" 12DEPENDS = "make-native"
13 13
14SRC_URI = "${KERNELORG_MIRROR}/software/utils/pciutils/pciutils-${PV}.tar.xz" 14SRC_URI = "${KERNELORG_MIRROR}/software/utils/pciutils/pciutils-${PV}.tar.xz"
15SRC_URI[sha256sum] = "77f11f78298502634d1af50308f15a5788629f6cf45cba376f5009aea4cb4926" 15SRC_URI[sha256sum] = "e7713409882813991d2269d125e40dad1f54a019a52b78b3962941c1d4a6f86f"
16 16
17inherit multilib_header pkgconfig update-alternatives 17inherit multilib_header pkgconfig update-alternatives
18 18
diff --git a/meta/recipes-bsp/u-boot/files/u-boot-riscv-isa_a.cfg b/meta/recipes-bsp/u-boot/files/u-boot-riscv-isa_a.cfg
new file mode 100644
index 0000000000..fc45b64480
--- /dev/null
+++ b/meta/recipes-bsp/u-boot/files/u-boot-riscv-isa_a.cfg
@@ -0,0 +1 @@
CONFIG_RISCV_ISA_A=y
diff --git a/meta/recipes-bsp/u-boot/files/u-boot-riscv-isa_c.cfg b/meta/recipes-bsp/u-boot/files/u-boot-riscv-isa_c.cfg
new file mode 100644
index 0000000000..1cb459f636
--- /dev/null
+++ b/meta/recipes-bsp/u-boot/files/u-boot-riscv-isa_c.cfg
@@ -0,0 +1 @@
CONFIG_RISCV_ISA_C=y
diff --git a/meta/recipes-bsp/u-boot/files/u-boot-riscv-isa_clear.cfg b/meta/recipes-bsp/u-boot/files/u-boot-riscv-isa_clear.cfg
new file mode 100644
index 0000000000..ce90da23ce
--- /dev/null
+++ b/meta/recipes-bsp/u-boot/files/u-boot-riscv-isa_clear.cfg
@@ -0,0 +1,6 @@
1# CONFIG_RISCV_ISA_C is not set
2# CONFIG_RISCV_ISA_F is not set
3# CONFIG_RISCV_ISA_D is not set
4# CONFIG_RISCV_ISA_ZBB is not set
5# CONFIG_RISCV_ISA_A is not set
6# CONFIG_RISCV_ISA_ZICBOM is not set
diff --git a/meta/recipes-bsp/u-boot/files/u-boot-riscv-isa_d.cfg b/meta/recipes-bsp/u-boot/files/u-boot-riscv-isa_d.cfg
new file mode 100644
index 0000000000..fd25fa4e89
--- /dev/null
+++ b/meta/recipes-bsp/u-boot/files/u-boot-riscv-isa_d.cfg
@@ -0,0 +1 @@
CONFIG_RISCV_ISA_D=y
diff --git a/meta/recipes-bsp/u-boot/files/u-boot-riscv-isa_f.cfg b/meta/recipes-bsp/u-boot/files/u-boot-riscv-isa_f.cfg
new file mode 100644
index 0000000000..dfa9876f82
--- /dev/null
+++ b/meta/recipes-bsp/u-boot/files/u-boot-riscv-isa_f.cfg
@@ -0,0 +1 @@
CONFIG_RISCV_ISA_F=y
diff --git a/meta/recipes-bsp/u-boot/files/u-boot-riscv-isa_zbb.cfg b/meta/recipes-bsp/u-boot/files/u-boot-riscv-isa_zbb.cfg
new file mode 100644
index 0000000000..2b71b016f8
--- /dev/null
+++ b/meta/recipes-bsp/u-boot/files/u-boot-riscv-isa_zbb.cfg
@@ -0,0 +1 @@
CONFIG_RISCV_ISA_ZBB=y
diff --git a/meta/recipes-bsp/u-boot/files/u-boot-riscv-isa_zicbom.cfg b/meta/recipes-bsp/u-boot/files/u-boot-riscv-isa_zicbom.cfg
new file mode 100644
index 0000000000..96daf04b20
--- /dev/null
+++ b/meta/recipes-bsp/u-boot/files/u-boot-riscv-isa_zicbom.cfg
@@ -0,0 +1 @@
CONFIG_RISCV_ISA_ZICBOM=y
diff --git a/meta/recipes-bsp/u-boot/libubootenv/0001-Update-cmake_minimum_required-to-3.5.patch b/meta/recipes-bsp/u-boot/libubootenv/0001-Update-cmake_minimum_required-to-3.5.patch
new file mode 100644
index 0000000000..ee174ca59e
--- /dev/null
+++ b/meta/recipes-bsp/u-boot/libubootenv/0001-Update-cmake_minimum_required-to-3.5.patch
@@ -0,0 +1,50 @@
1From cd12d9dd2bea8e4580f458df77229477fc55ba70 Mon Sep 17 00:00:00 2001
2From: James Hilliard <james.hilliard1@gmail.com>
3Date: Wed, 14 May 2025 14:17:40 -0600
4Subject: [PATCH] Update cmake_minimum_required to 3.5
5
6This supports compilation with cmake-4.0.0.
7
8Fixes:
9CMake Error at CMakeLists.txt:5 (cmake_minimum_required):
10 Compatibility with CMake < 3.5 has been removed from CMake.
11
12 Update the VERSION argument <min> value. Or, use the <min>...<max> syntax
13 to tell CMake that the project requires at least <min> but has been updated
14 to work with policies introduced by <max> or earlier.
15
16 Or, add -DCMAKE_POLICY_VERSION_MINIMUM=3.5 to try configuring anyway.
17
18Signed-off-by: James Hilliard <james.hilliard1@gmail.com>
19Upstream-Status: Backport [cd12d9dd2bea8e4580f458df77229477fc55ba70]
20---
21 CMakeLists.txt | 2 +-
22 src/CMakeLists.txt | 2 +-
23 2 files changed, 2 insertions(+), 2 deletions(-)
24
25diff --git a/CMakeLists.txt b/CMakeLists.txt
26index 796d7bc..0a11730 100644
27--- a/CMakeLists.txt
28+++ b/CMakeLists.txt
29@@ -2,7 +2,7 @@
30 #
31 # SPDX-License-Identifier: LGPL-2.1-or-later
32
33-cmake_minimum_required (VERSION 2.6)
34+cmake_minimum_required (VERSION 3.5)
35 project (libubootenv C)
36
37 # The version number.
38diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt
39index c56d0c7..3370232 100644
40--- a/src/CMakeLists.txt
41+++ b/src/CMakeLists.txt
42@@ -1,7 +1,7 @@
43 # SPDX-FileCopyrightText: 2019-2021 Stefano Babic <stefano.babic@swupdate.org>
44 #
45 # SPDX-License-Identifier: LGPL-2.1-or-later
46-cmake_minimum_required (VERSION 2.6)
47+cmake_minimum_required (VERSION 3.5)
48 # Sources and private headers
49 SET(libubootenv_SOURCES
50 uboot_env.c
diff --git a/meta/recipes-bsp/u-boot/libubootenv_0.3.6.bb b/meta/recipes-bsp/u-boot/libubootenv_0.3.6.bb
index 35678e2361..b63b8ff87d 100644
--- a/meta/recipes-bsp/u-boot/libubootenv_0.3.6.bb
+++ b/meta/recipes-bsp/u-boot/libubootenv_0.3.6.bb
@@ -10,7 +10,9 @@ LICENSE = "LGPL-2.1-or-later"
10LIC_FILES_CHKSUM = "file://LICENSES/LGPL-2.1-or-later.txt;md5=4fbd65380cdd255951079008b364516c" 10LIC_FILES_CHKSUM = "file://LICENSES/LGPL-2.1-or-later.txt;md5=4fbd65380cdd255951079008b364516c"
11SECTION = "libs" 11SECTION = "libs"
12 12
13SRC_URI = "git://github.com/sbabic/libubootenv;protocol=https;branch=master" 13SRC_URI = "git://github.com/sbabic/libubootenv;protocol=https;branch=master \
14 file://0001-Update-cmake_minimum_required-to-3.5.patch \
15 "
14SRCREV = "5507339628b5caf244e1ff9d58cb3fa534b16beb" 16SRCREV = "5507339628b5caf244e1ff9d58cb3fa534b16beb"
15 17
16inherit cmake lib_package 18inherit cmake lib_package
diff --git a/meta/recipes-bsp/u-boot/u-boot-common.inc b/meta/recipes-bsp/u-boot/u-boot-common.inc
index 617f5a60bb..8600d4bab6 100644
--- a/meta/recipes-bsp/u-boot/u-boot-common.inc
+++ b/meta/recipes-bsp/u-boot/u-boot-common.inc
@@ -16,6 +16,18 @@ SRCREV = "34820924edbc4ec7803eb89d9852f4b870fa760a"
16 16
17SRC_URI = "git://source.denx.de/u-boot/u-boot.git;protocol=https;branch=master;tag=v${PV}" 17SRC_URI = "git://source.denx.de/u-boot/u-boot.git;protocol=https;branch=master;tag=v${PV}"
18 18
19SRC_URI_RISCV = "\
20 file://u-boot-riscv-isa_clear.cfg \
21 ${@bb.utils.contains ("TUNE_FEATURES", "a", "file://u-boot-riscv-isa_a.cfg", "", d)} \
22 ${@bb.utils.contains ("TUNE_FEATURES", "f", "file://u-boot-riscv-isa_f.cfg", "", d)} \
23 ${@bb.utils.contains ("TUNE_FEATURES", "d", "file://u-boot-riscv-isa_d.cfg", "", d)} \
24 ${@bb.utils.contains_any("TUNE_FEATURES", "b zbb", "file://u-boot-riscv-isa_zbb.cfg", "", d)} \
25 ${@bb.utils.contains ("TUNE_FEATURES", "zicbom", "file://u-boot-riscv-isa_zicbom.cfg", "", d)} \
26 "
27
28SRC_URI:append:riscv32 = "${SRC_URI_RISCV}"
29SRC_URI:append:riscv64 = "${SRC_URI_RISCV}"
30
19B = "${WORKDIR}/build" 31B = "${WORKDIR}/build"
20 32
21inherit pkgconfig 33inherit pkgconfig
diff --git a/meta/recipes-connectivity/bind/bind_9.20.9.bb b/meta/recipes-connectivity/bind/bind_9.20.10.bb
index 93ff957fc5..32f0bdf7b5 100644
--- a/meta/recipes-connectivity/bind/bind_9.20.9.bb
+++ b/meta/recipes-connectivity/bind/bind_9.20.10.bb
@@ -20,7 +20,7 @@ SRC_URI = "https://ftp.isc.org/isc/bind9/${PV}/${BPN}-${PV}.tar.xz \
20 file://0001-avoid-start-failure-with-bind-user.patch \ 20 file://0001-avoid-start-failure-with-bind-user.patch \
21 " 21 "
22 22
23SRC_URI[sha256sum] = "3d26900ed9c9a859073ffea9b97e292c1248dad18279b17b05fcb23c3091f86d" 23SRC_URI[sha256sum] = "0fb3ba2c337bb488ca68f5df296c435cd255058fb63d0822e91db0235c905716"
24 24
25UPSTREAM_CHECK_URI = "https://ftp.isc.org/isc/bind9/" 25UPSTREAM_CHECK_URI = "https://ftp.isc.org/isc/bind9/"
26# follow the ESV versions divisible by 2 26# follow the ESV versions divisible by 2
diff --git a/meta/recipes-connectivity/mobile-broadband-provider-info/mobile-broadband-provider-info_20240407.bb b/meta/recipes-connectivity/mobile-broadband-provider-info/mobile-broadband-provider-info_20250613.bb
index 2e8702a045..72663c7e0a 100644
--- a/meta/recipes-connectivity/mobile-broadband-provider-info/mobile-broadband-provider-info_20240407.bb
+++ b/meta/recipes-connectivity/mobile-broadband-provider-info/mobile-broadband-provider-info_20250613.bb
@@ -7,8 +7,8 @@ LIC_FILES_CHKSUM = "file://COPYING;md5=87964579b2a8ece4bc6744d2dc9a8b04"
7 7
8PE = "1" 8PE = "1"
9 9
10SRC_URI = "git://gitlab.gnome.org/GNOME/mobile-broadband-provider-info.git;protocol=https;branch=main" 10SRC_URI = "git://gitlab.gnome.org/GNOME/mobile-broadband-provider-info.git;protocol=https;branch=main;tag=${PV}"
11SRCREV = "55ba955d53305df96123534488fd160ea882b4dd" 11SRCREV = "2a1b409491a531aedcf3eb3ba907929d96bd181a"
12 12
13inherit meson 13inherit meson
14 14
diff --git a/meta/recipes-connectivity/openssh/openssh_10.0p1.bb b/meta/recipes-connectivity/openssh/openssh_10.0p1.bb
index a044aec063..2f446b5540 100644
--- a/meta/recipes-connectivity/openssh/openssh_10.0p1.bb
+++ b/meta/recipes-connectivity/openssh/openssh_10.0p1.bb
@@ -102,7 +102,7 @@ CACHED_CONFIGUREVARS += "ac_cv_header_maillock_h=no"
102 102
103do_configure:prepend () { 103do_configure:prepend () {
104 export LD="${CC}" 104 export LD="${CC}"
105 install -m 0644 ${UNPACKDIR}/sshd_config ${B}/ 105 install -m 0600 ${UNPACKDIR}/sshd_config ${B}/
106 install -m 0644 ${UNPACKDIR}/ssh_config ${B}/ 106 install -m 0644 ${UNPACKDIR}/ssh_config ${B}/
107} 107}
108 108
@@ -153,9 +153,12 @@ do_install:append () {
153 install -m 644 ${UNPACKDIR}/volatiles.99_sshd ${D}/${sysconfdir}/default/volatiles/99_sshd 153 install -m 644 ${UNPACKDIR}/volatiles.99_sshd ${D}/${sysconfdir}/default/volatiles/99_sshd
154 install -m 0755 ${S}/contrib/ssh-copy-id ${D}${bindir} 154 install -m 0755 ${S}/contrib/ssh-copy-id ${D}${bindir}
155 155
156 # Limit sshd_config access to the owner (default is 0644)
157 chmod 0600 ${D}${sysconfdir}/ssh/sshd_config
158
156 # Create config files for read-only rootfs 159 # Create config files for read-only rootfs
157 install -d ${D}${sysconfdir}/ssh 160 install -d ${D}${sysconfdir}/ssh
158 install -m 644 ${D}${sysconfdir}/ssh/sshd_config ${D}${sysconfdir}/ssh/sshd_config_readonly 161 install -m 0600 ${D}${sysconfdir}/ssh/sshd_config ${D}${sysconfdir}/ssh/sshd_config_readonly
159 162
160 install -d ${D}${systemd_system_unitdir} 163 install -d ${D}${systemd_system_unitdir}
161 if ${@bb.utils.contains('PACKAGECONFIG','systemd-sshd-socket-mode','true','false',d)}; then 164 if ${@bb.utils.contains('PACKAGECONFIG','systemd-sshd-socket-mode','true','false',d)}; then
diff --git a/meta/recipes-core/meta/buildtools-docs-tarball.bb b/meta/recipes-core/meta/buildtools-docs-tarball.bb
index b9ef68eb6d..98d47f7b71 100644
--- a/meta/recipes-core/meta/buildtools-docs-tarball.bb
+++ b/meta/recipes-core/meta/buildtools-docs-tarball.bb
@@ -7,6 +7,8 @@ LICENSE = "MIT"
7# Add nativesdk equivalent of build-essentials 7# Add nativesdk equivalent of build-essentials
8TOOLCHAIN_HOST_TASK += "\ 8TOOLCHAIN_HOST_TASK += "\
9 nativesdk-python3-sphinx \ 9 nativesdk-python3-sphinx \
10 nativesdk-python3-sphinx-argparse \
11 nativesdk-python3-sphinx-copybutton \
10 nativesdk-python3-sphinx-rtd-theme \ 12 nativesdk-python3-sphinx-rtd-theme \
11 nativesdk-python3-pyyaml \ 13 nativesdk-python3-pyyaml \
12 nativesdk-rsvg \ 14 nativesdk-rsvg \
@@ -16,4 +18,5 @@ TOOLCHAIN_OUTPUTNAME = "${SDK_ARCH}-buildtools-docs-nativesdk-standalone-${DISTR
16 18
17SDK_TITLE = "Docs Build tools tarball" 19SDK_TITLE = "Docs Build tools tarball"
18 20
19TESTSDK_CASES = "buildtools-docs-cases" 21# Directory that contains testcases
22TESTSDK_CASE_DIRS = "buildtools-docs" \ No newline at end of file
diff --git a/meta/recipes-core/meta/buildtools-tarball.bb b/meta/recipes-core/meta/buildtools-tarball.bb
index 6fa6d93a3d..02117ab84d 100644
--- a/meta/recipes-core/meta/buildtools-tarball.bb
+++ b/meta/recipes-core/meta/buildtools-tarball.bb
@@ -124,22 +124,7 @@ TOOLCHAIN_NEED_CONFIGSITE_CACHE = ""
124# The recipe doesn't need any default deps 124# The recipe doesn't need any default deps
125INHIBIT_DEFAULT_DEPS = "1" 125INHIBIT_DEFAULT_DEPS = "1"
126 126
127# Directory in testsdk that contains testcases 127inherit testsdk
128TESTSDK_CASES = "buildtools-cases"
129 128
130# We have our own code, avoid deferred inherit 129# Directory that contains testcases
131SDK_CLASSES:remove = "testsdk" 130TESTSDK_CASE_DIRS = "buildtools" \ No newline at end of file
132
133python do_testsdk() {
134 import oeqa.sdk.testsdk
135 testsdk = oeqa.sdk.testsdk.TestSDK()
136
137 cases_path = os.path.join(os.path.abspath(os.path.dirname(oeqa.sdk.testsdk.__file__)), d.getVar("TESTSDK_CASES"))
138 testsdk.context_executor_class.default_cases = [cases_path,]
139
140 testsdk.run(d)
141}
142addtask testsdk
143do_testsdk[nostamp] = "1"
144do_testsdk[network] = "1"
145do_testsdk[depends] += "xz-native:do_populate_sysroot"
diff --git a/meta/recipes-core/musl/libucontext_1.3.2.bb b/meta/recipes-core/musl/libucontext_1.3.2.bb
index 2362cba5c8..c5b802207b 100644
--- a/meta/recipes-core/musl/libucontext_1.3.2.bb
+++ b/meta/recipes-core/musl/libucontext_1.3.2.bb
@@ -48,3 +48,9 @@ def map_kernel_arch(a, d):
48 48
49EXTRA_OEMESON = "-Dcpu=${@map_kernel_arch(d.getVar('TARGET_ARCH'), d)}" 49EXTRA_OEMESON = "-Dcpu=${@map_kernel_arch(d.getVar('TARGET_ARCH'), d)}"
50inherit meson 50inherit meson
51
52ARM_TARGET_CPPFLAGS = ""
53ARM_TARGET_CPPFLAGS:append:arm = "${@bb.utils.contains('TARGET_FPU', 'hard', ' -DFORCE_HARD_FLOAT', '', d)}"
54ARM_TARGET_CPPFLAGS:append:arm = "${@bb.utils.contains('TARGET_FPU', 'soft', ' -DFORCE_SOFT_FLOAT', '', d)}"
55
56TARGET_CPPFLAGS .= "${ARM_TARGET_CPPFLAGS}"
diff --git a/meta/recipes-core/musl/musl-locales/0001-cmake-Support-builds-with-CMake-4.patch b/meta/recipes-core/musl/musl-locales/0001-cmake-Support-builds-with-CMake-4.patch
new file mode 100644
index 0000000000..d4d36eb522
--- /dev/null
+++ b/meta/recipes-core/musl/musl-locales/0001-cmake-Support-builds-with-CMake-4.patch
@@ -0,0 +1,46 @@
1From 89a314b03d0b2e600bb503a1e3d75faa655d65e0 Mon Sep 17 00:00:00 2001
2From: Moritz Haase <Moritz.Haase@bmw.de>
3Date: Wed, 2 Jul 2025 08:37:21 +0200
4Subject: [PATCH] cmake: Support builds with CMake 4+
5
6CMake 4 has removed support for compatibility with CMake < 3.5 and thus builds
7fail with:
8
9 CMake Error at CMakeLists.txt:2 (cmake_minimum_required):
10 Compatibility with CMake < 3.5 has been removed from CMake.
11
12 Update the VERSION argument <min> value. Or, use the <min>...<max> syntax
13 to tell CMake that the project requires at least <min> but has been
14 updated to work with policies introduced by <max> or earlier.
15
16 Or, add -DCMAKE_POLICY_VERSION_MINIMUM=3.5 to try configuring anyway.
17
18To ensure builds with older CMake versions are still possible, use the suggested
19'<min>...<max>' syntax instead of simply bumping '<min>'. To avoid a deprecation
20warning by CMake 3.31+, 3.10 was chosen as '<max>' instead of 3.5.
21
22While at it, move the 'cmake_minimum_required()' call before 'project()' to fix:
23
24 CMake Warning (dev) at CMakeLists.txt:2 (project):
25
26 cmake_minimum_required() should be called prior to this top-level
27 project() call. Please see the cmake-commands(7) manual for usage
28 documentation of both commands.
29
30Signed-off-by: Moritz Haase <Moritz.Haase@bmw.de>
31Upstream-Status: Submitted [https://git.adelielinux.org/adelie/musl-locales/-/merge_requests/10]
32---
33 CMakeLists.txt | 2 +-
34 1 file changed, 1 insertion(+), 1 deletion(-)
35
36diff --git a/CMakeLists.txt b/CMakeLists.txt
37index c8ac5c4..5744761 100644
38--- a/CMakeLists.txt
39+++ b/CMakeLists.txt
40@@ -1,5 +1,5 @@
41+cmake_minimum_required(VERSION 2.8...3.10)
42 project(locales C)
43-cmake_minimum_required(VERSION 2.8)
44
45 option(LOCALE_PROFILE "Install profile file setting the MUSL_LOCPATH environment variable" ON)
46
diff --git a/meta/recipes-core/musl/musl-locales_git.bb b/meta/recipes-core/musl/musl-locales_git.bb
index c8510596cf..3573a32062 100644
--- a/meta/recipes-core/musl/musl-locales_git.bb
+++ b/meta/recipes-core/musl/musl-locales_git.bb
@@ -7,7 +7,9 @@ LICENSE = "MIT & LGPL-3.0-or-later"
7LIC_FILES_CHKSUM = "file://LICENSE;md5=cf5713fba707073020b1db2acaa73e78 \ 7LIC_FILES_CHKSUM = "file://LICENSE;md5=cf5713fba707073020b1db2acaa73e78 \
8 file://LICENSE.MIT;md5=a4f1c6864a83ddf4b754cdab7d593523" 8 file://LICENSE.MIT;md5=a4f1c6864a83ddf4b754cdab7d593523"
9 9
10SRC_URI = "git://git.adelielinux.org/adelie/musl-locales;protocol=https;branch=main" 10SRC_URI = "git://git.adelielinux.org/adelie/musl-locales;protocol=https;branch=main \
11 file://0001-cmake-Support-builds-with-CMake-4.patch \
12 "
11 13
12PV = "1.0+git" 14PV = "1.0+git"
13SRCREV = "5663f5bfd30bf9e1e0ba3fc5fe2da6725969f30e" 15SRCREV = "5663f5bfd30bf9e1e0ba3fc5fe2da6725969f30e"
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 f0aa3a0bd8..1443c5082b 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
@@ -15,8 +15,6 @@ Signed-off-by: Khem Raj <raj.khem@gmail.com>
15 src/shared/base-filesystem.c | 1 + 15 src/shared/base-filesystem.c | 1 +
16 2 files changed, 7 insertions(+) 16 2 files changed, 7 insertions(+)
17 17
18diff --git a/src/basic/missing_syscall.h b/src/basic/missing_syscall.h
19index e2cd8b4e35..f2fe489de7 100644
20--- a/src/basic/missing_syscall.h 18--- a/src/basic/missing_syscall.h
21+++ b/src/basic/missing_syscall.h 19+++ b/src/basic/missing_syscall.h
22@@ -20,6 +20,12 @@ 20@@ -20,6 +20,12 @@
@@ -32,8 +30,6 @@ index e2cd8b4e35..f2fe489de7 100644
32 #include "macro.h" 30 #include "macro.h"
33 #include "missing_keyctl.h" 31 #include "missing_keyctl.h"
34 #include "missing_sched.h" 32 #include "missing_sched.h"
35diff --git a/src/shared/base-filesystem.c b/src/shared/base-filesystem.c
36index 389c77eee0..e3627c4603 100644
37--- a/src/shared/base-filesystem.c 33--- a/src/shared/base-filesystem.c
38+++ b/src/shared/base-filesystem.c 34+++ b/src/shared/base-filesystem.c
39@@ -20,6 +20,7 @@ 35@@ -20,6 +20,7 @@
@@ -42,8 +38,5 @@ index 389c77eee0..e3627c4603 100644
42 #include "user-util.h" 38 #include "user-util.h"
43+#include "missing_syscall.h" 39+#include "missing_syscall.h"
44 40
45 typedef struct BaseFilesystem { 41 typedef enum BaseFilesystemFlags {
46 const char *dir; /* directory or symlink to create */ 42 BASE_FILESYSTEM_IGNORE_ON_FAILURE = 1 << 0,
47--
482.34.1
49
diff --git a/meta/recipes-core/ttyrun/ttyrun_2.37.0.bb b/meta/recipes-core/ttyrun/ttyrun_2.38.0.bb
index 507ad1b09e..90380e51ea 100644
--- a/meta/recipes-core/ttyrun/ttyrun_2.37.0.bb
+++ b/meta/recipes-core/ttyrun/ttyrun_2.38.0.bb
@@ -6,8 +6,8 @@ HOMEPAGE = "https://github.com/ibm-s390-linux/s390-tools"
6LICENSE = "MIT" 6LICENSE = "MIT"
7LIC_FILES_CHKSUM = "file://LICENSE;md5=f5118f167b055bfd7c3450803f1847af" 7LIC_FILES_CHKSUM = "file://LICENSE;md5=f5118f167b055bfd7c3450803f1847af"
8 8
9SRC_URI = "git://github.com/ibm-s390-linux/s390-tools;protocol=https;branch=master" 9SRC_URI = "git://github.com/ibm-s390-linux/s390-tools;protocol=https;branch=master;tag=v${PV}"
10SRCREV = "793c037ded98cd001075cdb55a9c58e122380256" 10SRCREV = "660bab6e68fded26b2117e1dcec0844549a22fed"
11 11
12CVE_PRODUCT = "s390-tools" 12CVE_PRODUCT = "s390-tools"
13 13
diff --git a/meta/recipes-devtools/apt/apt/0001-Raise-cmake_minimum_required-to-3.13-to-avoid-warnin.patch b/meta/recipes-devtools/apt/apt/0001-Raise-cmake_minimum_required-to-3.13-to-avoid-warnin.patch
new file mode 100644
index 0000000000..c3a5ded494
--- /dev/null
+++ b/meta/recipes-devtools/apt/apt/0001-Raise-cmake_minimum_required-to-3.13-to-avoid-warnin.patch
@@ -0,0 +1,47 @@
1From dc7a8b3050a2a43f49515a03ae19713dfced75dc Mon Sep 17 00:00:00 2001
2From: David Kalnischkies <david@kalnischkies.de>
3Date: Sat, 18 Nov 2023 13:10:05 +0000
4Subject: [PATCH] Raise cmake_minimum_required to 3.13 to avoid warnings
5
6CMake Deprecation Warning at CMakeLists.txt:6 (cmake_minimum_required):
7 Compatibility with CMake < 3.5 will be removed from a future version of
8 CMake.
9
10 Update the VERSION argument <min> value or use a ...<max> suffix to tell
11 CMake that the project does not need compatibility with older versions.
12
13Picking 3.13 here is a semi-random choice to avoid raising the requirement
14too much needlessly while also hopefully avoiding needing to raise it
15soon again based on the referenced mail.
16
17While we are at it, lets also fix the other spewed warning:
18
19CMake Warning (dev) at CMakeLists.txt:5 (project):
20 cmake_minimum_required() should be called prior to this top-level project()
21 call. Please see the cmake-commands(7) manual for usage documentation of
22 both commands.
23
24References: https://lists.debian.org/msgid-search/20230617162957.6pklb6632zf4nijc@mail.gaussglocke.de
25
26Upstream-Status: Backport [https://salsa.debian.org/apt-team/apt/-/commit/dc7a8b3050a2a43f49515a03ae19713dfced75dc]
27Signed-off-by: Moritz Haase <Moritz.Haase@bmw.de>
28---
29 CMakeLists.txt | 2 +-
30 1 file changed, 1 insertion(+), 1 deletion(-)
31
32diff --git a/CMakeLists.txt b/CMakeLists.txt
33index 62182cddf..dae12e7c3 100644
34--- a/CMakeLists.txt
35+++ b/CMakeLists.txt
36@@ -2,8 +2,8 @@
37 # Licensed under the same terms as APT; i.e. GPL 2 or later.
38
39 # set minimum version
40+cmake_minimum_required(VERSION 3.13)
41 project(apt)
42-cmake_minimum_required(VERSION 3.4.0)
43 # Generic header locations
44 include_directories(${PROJECT_BINARY_DIR}/include)
45
46--
47GitLab
diff --git a/meta/recipes-devtools/apt/apt_2.6.1.bb b/meta/recipes-devtools/apt/apt_2.6.1.bb
index d605d950dd..50ac2ea812 100644
--- a/meta/recipes-devtools/apt/apt_2.6.1.bb
+++ b/meta/recipes-devtools/apt/apt_2.6.1.bb
@@ -14,6 +14,7 @@ SRC_URI = "${DEBIAN_MIRROR}/main/a/apt/${BPN}_${PV}.tar.xz \
14 file://0001-aptwebserver.cc-Include-array.patch \ 14 file://0001-aptwebserver.cc-Include-array.patch \
15 file://0001-Remove-using-std-binary_function.patch \ 15 file://0001-Remove-using-std-binary_function.patch \
16 file://0001-strutl-Add-missing-include-cstdint-gcc-15.patch \ 16 file://0001-strutl-Add-missing-include-cstdint-gcc-15.patch \
17 file://0001-Raise-cmake_minimum_required-to-3.13-to-avoid-warnin.patch \
17 " 18 "
18 19
19SRC_URI:append:class-native = " \ 20SRC_URI:append:class-native = " \
diff --git a/meta/recipes-devtools/btrfs-tools/btrfs-tools_6.14.bb b/meta/recipes-devtools/btrfs-tools/btrfs-tools_6.15.bb
index 982d4830b5..88a6d11354 100644
--- a/meta/recipes-devtools/btrfs-tools/btrfs-tools_6.14.bb
+++ b/meta/recipes-devtools/btrfs-tools/btrfs-tools_6.15.bb
@@ -18,7 +18,7 @@ DEPENDS = "util-linux zlib"
18SRC_URI = "git://github.com/kdave/btrfs-progs.git;branch=master;protocol=https;tag=v${PV} \ 18SRC_URI = "git://github.com/kdave/btrfs-progs.git;branch=master;protocol=https;tag=v${PV} \
19 file://0001-Add-a-possibility-to-specify-where-python-modules-ar.patch \ 19 file://0001-Add-a-possibility-to-specify-where-python-modules-ar.patch \
20 " 20 "
21SRCREV = "5ad147c9ec00e657393c85b195c9bcc0f4c35a54" 21SRCREV = "3da67f1c78bcbd7556f04d89e31aa4621face50b"
22 22
23PACKAGECONFIG ??= " \ 23PACKAGECONFIG ??= " \
24 programs \ 24 programs \
diff --git a/meta/recipes-devtools/clang/common-clang.inc b/meta/recipes-devtools/clang/common-clang.inc
index 15e6610b9b..cbea6b4d75 100644
--- a/meta/recipes-devtools/clang/common-clang.inc
+++ b/meta/recipes-devtools/clang/common-clang.inc
@@ -5,7 +5,7 @@ LLVM_HTTP ?= "https://github.com/llvm"
5 5
6MAJOR_VER = "20" 6MAJOR_VER = "20"
7MINOR_VER = "1" 7MINOR_VER = "1"
8PATCH_VER = "6" 8PATCH_VER = "7"
9# could be 'rcX' or 'git' or empty ( for release ) 9# could be 'rcX' or 'git' or empty ( for release )
10VER_SUFFIX = "" 10VER_SUFFIX = ""
11 11
diff --git a/meta/recipes-devtools/clang/common.inc b/meta/recipes-devtools/clang/common.inc
index 0684e648cc..37d37ec197 100644
--- a/meta/recipes-devtools/clang/common.inc
+++ b/meta/recipes-devtools/clang/common.inc
@@ -17,7 +17,7 @@ BASEURI ?= "${LLVM_HTTP}/llvm-project/releases/download/llvmorg-${PV}/llvm-proje
17UPSTREAM_CHECK_URI = "${LLVM_HTTP}/llvm-project/releases/" 17UPSTREAM_CHECK_URI = "${LLVM_HTTP}/llvm-project/releases/"
18UPSTREAM_CHECK_REGEX = "releases/tag/llvmorg-?(?P<pver>\d+(\.\d+)+)" 18UPSTREAM_CHECK_REGEX = "releases/tag/llvmorg-?(?P<pver>\d+(\.\d+)+)"
19SOURCEDIR ?= "llvm-project-${PV}.src" 19SOURCEDIR ?= "llvm-project-${PV}.src"
20SRC_URI[sha256sum] = "5c70549d524284c184fe9fbff862c3d2d7a61b787570611b5a30e5cc345f145e" 20SRC_URI[sha256sum] = "cd8fd55d97ad3e360b1d5aaf98388d1f70dfffb7df36beee478be3b839ff9008"
21 21
22SRC_URI = "\ 22SRC_URI = "\
23 ${BASEURI} \ 23 ${BASEURI} \
diff --git a/meta/recipes-devtools/clang/compiler-rt-sanitizers_git.bb b/meta/recipes-devtools/clang/compiler-rt-sanitizers_git.bb
index 47438014b2..087a766302 100644
--- a/meta/recipes-devtools/clang/compiler-rt-sanitizers_git.bb
+++ b/meta/recipes-devtools/clang/compiler-rt-sanitizers_git.bb
@@ -37,6 +37,7 @@ CFLAGS += "${COMPILER_RT}"
37CXXFLAGS += "${COMPILER_RT} ${LIBCPLUSPLUS}" 37CXXFLAGS += "${COMPILER_RT} ${LIBCPLUSPLUS}"
38 38
39TOOLCHAIN = "clang" 39TOOLCHAIN = "clang"
40TOOLCHAIN_NATIVE = "clang"
40 41
41DEPENDS += "ninja-native virtual/crypt compiler-rt" 42DEPENDS += "ninja-native virtual/crypt compiler-rt"
42DEPENDS:append:class-native = " clang-native libxcrypt-native libcxx-native" 43DEPENDS:append:class-native = " clang-native libxcrypt-native libcxx-native"
diff --git a/meta/recipes-devtools/clang/compiler-rt_git.bb b/meta/recipes-devtools/clang/compiler-rt_git.bb
index ff6cc29bf3..342a7b0e95 100644
--- a/meta/recipes-devtools/clang/compiler-rt_git.bb
+++ b/meta/recipes-devtools/clang/compiler-rt_git.bb
@@ -29,14 +29,15 @@ DEPENDS += "ninja-native libgcc"
29DEPENDS:append:class-target = " virtual/cross-c++ clang-cross-${TARGET_ARCH} virtual/${MLPREFIX}libc gcc-runtime" 29DEPENDS:append:class-target = " virtual/cross-c++ clang-cross-${TARGET_ARCH} virtual/${MLPREFIX}libc gcc-runtime"
30DEPENDS:append:class-nativesdk = " virtual/cross-c++ clang-native clang-crosssdk-${SDK_SYS} nativesdk-gcc-runtime" 30DEPENDS:append:class-nativesdk = " virtual/cross-c++ clang-native clang-crosssdk-${SDK_SYS} nativesdk-gcc-runtime"
31DEPENDS:append:class-native = " clang-native" 31DEPENDS:append:class-native = " clang-native"
32DEPENDS:remove:class-native = "libcxx-native compiler-rt-native"
32 33
33# Trick clang.bbclass into not creating circular dependencies 34# Trick clang.bbclass into not creating circular dependencies
34UNWINDLIB:class-nativesdk = "--unwindlib=libgcc" 35UNWINDLIB:class-nativesdk = "--unwindlib=libgcc"
35COMPILER_RT:class-nativesdk = "-rtlib=libgcc" 36COMPILER_RT:class-nativesdk = "-rtlib=libgcc"
36LIBCPLUSPLUS:class-nativesdk = "-stdlib=libstdc++" 37LIBCPLUSPLUS:class-nativesdk = "-stdlib=libstdc++"
37UNWINDLIB:class-native = "--unwindlib=libgcc" 38UNWINDLIB:class-native = ""
38COMPILER_RT:class-native = "-rtlib=libgcc" 39COMPILER_RT:class-native = ""
39LIBCPLUSPLUS:class-native = "-stdlib=libstdc++" 40LIBCPLUSPLUS:class-native = ""
40UNWINDLIB:class-target = "--unwindlib=libgcc" 41UNWINDLIB:class-target = "--unwindlib=libgcc"
41COMPILER_RT:class-target = "-rtlib=libgcc" 42COMPILER_RT:class-target = "-rtlib=libgcc"
42LIBCPLUSPLUS:class-target = "-stdlib=libstdc++" 43LIBCPLUSPLUS:class-target = "-stdlib=libstdc++"
@@ -52,8 +53,6 @@ HF:class-target = "${@ bb.utils.contains('TUNE_CCARGS_MFLOAT', 'hard', 'hf', '',
52 53
53CC = "${CCACHE}${HOST_PREFIX}clang ${HOST_CC_ARCH}${TOOLCHAIN_OPTIONS}" 54CC = "${CCACHE}${HOST_PREFIX}clang ${HOST_CC_ARCH}${TOOLCHAIN_OPTIONS}"
54CXX = "${CCACHE}${HOST_PREFIX}clang++ ${HOST_CC_ARCH}${TOOLCHAIN_OPTIONS}" 55CXX = "${CCACHE}${HOST_PREFIX}clang++ ${HOST_CC_ARCH}${TOOLCHAIN_OPTIONS}"
55BUILD_CC = "${CCACHE}clang ${BUILD_CC_ARCH}"
56BUILD_CXX = "${CCACHE}clang++ ${BUILD_CC_ARCH}"
57LDFLAGS += "${COMPILER_RT} ${UNWINDLIB}" 56LDFLAGS += "${COMPILER_RT} ${UNWINDLIB}"
58CXXFLAGS += "${LIBCPLUSPLUS}" 57CXXFLAGS += "${LIBCPLUSPLUS}"
59 58
diff --git a/meta/recipes-devtools/clang/libcxx_git.bb b/meta/recipes-devtools/clang/libcxx_git.bb
index f5bf17f30a..d355fc3a0f 100644
--- a/meta/recipes-devtools/clang/libcxx_git.bb
+++ b/meta/recipes-devtools/clang/libcxx_git.bb
@@ -25,6 +25,7 @@ DEPENDS += "ninja-native"
25DEPENDS:append:class-target = " virtual/cross-c++ clang-cross-${TARGET_ARCH} virtual/${MLPREFIX}libc virtual/${MLPREFIX}compilerlibs" 25DEPENDS:append:class-target = " virtual/cross-c++ clang-cross-${TARGET_ARCH} virtual/${MLPREFIX}libc virtual/${MLPREFIX}compilerlibs"
26DEPENDS:append:class-nativesdk = " virtual/cross-c++ clang-crosssdk-${SDK_SYS} nativesdk-compiler-rt" 26DEPENDS:append:class-nativesdk = " virtual/cross-c++ clang-crosssdk-${SDK_SYS} nativesdk-compiler-rt"
27DEPENDS:append:class-native = " clang-native compiler-rt-native" 27DEPENDS:append:class-native = " clang-native compiler-rt-native"
28DEPENDS:remove:class-native = "libcxx-native"
28 29
29COMPILER_RT ?= "${@bb.utils.contains("PACKAGECONFIG", "compiler-rt", "-rtlib=compiler-rt", "-rtlib=libgcc", d)}" 30COMPILER_RT ?= "${@bb.utils.contains("PACKAGECONFIG", "compiler-rt", "-rtlib=compiler-rt", "-rtlib=libgcc", d)}"
30UNWINDLIB ?= "${@bb.utils.contains("PACKAGECONFIG", "unwind", "-unwindlib=none", "-unwindlib=libgcc", d)}" 31UNWINDLIB ?= "${@bb.utils.contains("PACKAGECONFIG", "unwind", "-unwindlib=none", "-unwindlib=libgcc", d)}"
@@ -55,6 +56,7 @@ LDFLAGS += "${COMPILER_RT} ${UNWINDLIB} ${LIBCPLUSPLUS}"
55CXXFLAGS += "${LIBCPLUSPLUS}" 56CXXFLAGS += "${LIBCPLUSPLUS}"
56 57
57TOOLCHAIN = "clang" 58TOOLCHAIN = "clang"
59TOOLCHAIN_NATIVE = "clang"
58 60
59OECMAKE_SOURCEPATH = "${S}/llvm" 61OECMAKE_SOURCEPATH = "${S}/llvm"
60EXTRA_OECMAKE += "\ 62EXTRA_OECMAKE += "\
diff --git a/meta/recipes-devtools/createrepo-c/createrepo-c/0001-Fix-libname-of-Libs.private.patch b/meta/recipes-devtools/createrepo-c/createrepo-c/0001-Fix-libname-of-Libs.private.patch
new file mode 100644
index 0000000000..ceccbda9d6
--- /dev/null
+++ b/meta/recipes-devtools/createrepo-c/createrepo-c/0001-Fix-libname-of-Libs.private.patch
@@ -0,0 +1,22 @@
1From 122963c764b06a4b487b32d4d1da330bd83da4d8 Mon Sep 17 00:00:00 2001
2From: fundawang <fundawang@yeah.net>
3Date: Mon, 17 Mar 2025 19:05:08 +0800
4Subject: [PATCH] Fix libname of Libs.private
5
6Upstream-Status: Backport [1c712194e604f6dd4f8a881e09d8236d4f770b67]
7Signed-off-by: Moritz Haase <Moritz.Haase@bmw.de>
8---
9 src/createrepo_c.pc.cmake | 2 +-
10 1 file changed, 1 insertion(+), 1 deletion(-)
11
12diff --git a/src/createrepo_c.pc.cmake b/src/createrepo_c.pc.cmake
13index 466487e2f490db28576611924e3d9ac94a99cb51..b7eb66318781b01f2b1348ab2c9dbd24d9a5c32f 100644
14--- a/src/createrepo_c.pc.cmake
15+++ b/src/createrepo_c.pc.cmake
16@@ -8,5 +8,5 @@ Version: @VERSION@
17 Requires: glib-2.0 rpm libcurl sqlite3
18 Requires.private: zlib libxml-2.0
19 Libs: -L${libdir} -lcreaterepo_c
20-Libs.private: -lbz2 -lzma
21+Libs.private: -lbz2 -llzma
22 Cflags: -I${includedir}
diff --git a/meta/recipes-devtools/createrepo-c/createrepo-c/0002-Use-IMPORTED_TARGET-for-3rd-party-dependencies.patch b/meta/recipes-devtools/createrepo-c/createrepo-c/0002-Use-IMPORTED_TARGET-for-3rd-party-dependencies.patch
new file mode 100644
index 0000000000..da50d27a76
--- /dev/null
+++ b/meta/recipes-devtools/createrepo-c/createrepo-c/0002-Use-IMPORTED_TARGET-for-3rd-party-dependencies.patch
@@ -0,0 +1,226 @@
1From 545532ec468d0dc768fee8a5e83153440509b273 Mon Sep 17 00:00:00 2001
2From: Pietro Cerutti <gahr@gahr.ch>
3Date: Tue, 1 Oct 2024 12:10:40 +0000
4Subject: [PATCH] Use IMPORTED_TARGET for 3rd-party dependencies
5
6The current CMakeLists.txt fails to include the required link directories for 3rd-party packages.
7As an example, on FreeBSD where packages are installed under /usr/local, the link lines include -lgio-2.0 but not -L/usr/local/lib.
8
9The suggested solution is to use the IMPORTED_TARGET mode of pkg_check_modules. This requires CMake 3.6, so I have bumped the minimum required version.
10
11Upstream-Status: Backport [89fa02828cdaf1c710c38bde5fcbcf59538a9cce]
12Signed-off-by: Moritz Haase <Moritz.Haase@bmw.de>
13---
14 CMakeLists.txt | 22 +++++++++++-----------
15 src/CMakeLists.txt | 36 ++++++++++++++++++------------------
16 tests/CMakeLists.txt | 30 +++++++++++++++---------------
17 3 files changed, 44 insertions(+), 44 deletions(-)
18
19diff --git a/CMakeLists.txt b/CMakeLists.txt
20index 9a18393f526a4eb74a53d5bddc84f75afcf0499c..c4bf525200ba24eb69ad08feb68b30f065bdac22 100644
21--- a/CMakeLists.txt
22+++ b/CMakeLists.txt
23@@ -1,4 +1,4 @@
24-CMAKE_MINIMUM_REQUIRED (VERSION 2.8.12)
25+CMAKE_MINIMUM_REQUIRED (VERSION 3.7)
26 PROJECT (createrepo_c C)
27
28 include(GNUInstallDirs)
29@@ -39,13 +39,13 @@ find_package(LibXml2 REQUIRED)
30 find_package(OpenSSL REQUIRED)
31 find_package(ZLIB REQUIRED)
32
33-pkg_check_modules(GLIB2 REQUIRED glib-2.0)
34-pkg_check_modules(GIO REQUIRED gio-2.0)
35-pkg_check_modules(GTHREAD2 REQUIRED gthread-2.0)
36-pkg_check_modules(LZMA REQUIRED liblzma)
37-pkg_check_modules(SQLITE3 REQUIRED sqlite3>=3.6.18)
38-pkg_check_modules(RPM REQUIRED rpm)
39-pkg_check_modules(ZSTD REQUIRED libzstd)
40+pkg_check_modules(GLIB2 REQUIRED IMPORTED_TARGET glib-2.0)
41+pkg_check_modules(GIO REQUIRED IMPORTED_TARGET gio-2.0)
42+pkg_check_modules(GTHREAD2 REQUIRED IMPORTED_TARGET gthread-2.0)
43+pkg_check_modules(LZMA REQUIRED IMPORTED_TARGET liblzma)
44+pkg_check_modules(SQLITE3 REQUIRED IMPORTED_TARGET sqlite3>=3.6.18)
45+pkg_check_modules(RPM REQUIRED IMPORTED_TARGET rpm)
46+pkg_check_modules(ZSTD REQUIRED IMPORTED_TARGET libzstd)
47
48 # Add include dirs
49
50@@ -73,7 +73,7 @@ ENDIF (WITH_LEGACY_HASHES)
51 # drpm
52 OPTION (ENABLE_DRPM "Enable delta RPM support?" OFF)
53 IF (ENABLE_DRPM)
54- pkg_check_modules(DRPM REQUIRED drpm>=0.4.0)
55+ pkg_check_modules(DRPM REQUIRED IMPORTED_TARGET drpm>=0.4.0)
56 include_directories (${DRPM_INCLUDE_DIRS})
57 ADD_DEFINITIONS("-DCR_DELTA_RPM_SUPPORT")
58 ENDIF (ENABLE_DRPM)
59@@ -83,7 +83,7 @@ OPTION (ENABLE_PYTHON "Enable python support?" ON)
60
61 OPTION (WITH_ZCHUNK "Build with zchunk support" ON)
62 IF (WITH_ZCHUNK)
63- pkg_check_modules(ZCK REQUIRED zck)
64+ pkg_check_modules(ZCK REQUIRED IMPORTED_TARGET zck)
65 include_directories(${ZCK_INCLUDE_DIRS})
66 SET (CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -DWITH_ZCHUNK")
67 SET (CMAKE_C_FLAGS_DEBUG "${CMAKE_C_FLAGS_DEBUG} -DWITH_ZCHUNK")
68@@ -91,7 +91,7 @@ ENDIF (WITH_ZCHUNK)
69
70 OPTION (WITH_LIBMODULEMD "Build with libmodulemd support" ON)
71 IF (WITH_LIBMODULEMD)
72- pkg_check_modules(LIBMODULEMD REQUIRED modulemd-2.0)
73+ pkg_check_modules(LIBMODULEMD REQUIRED IMPORTED_TARGET modulemd-2.0)
74 include_directories(${LIBMODULEMD_INCLUDE_DIRS})
75 SET (CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -DWITH_LIBMODULEMD")
76 SET (CMAKE_C_FLAGS_DEBUG "${CMAKE_C_FLAGS_DEBUG} -DWITH_LIBMODULEMD")
77diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt
78index 61b048044392b4204984af8969c3b1d74a9b8094..5309050bdadf6a14d9cddf4529d309ef97cc6d2c 100644
79--- a/src/CMakeLists.txt
80+++ b/src/CMakeLists.txt
81@@ -86,18 +86,18 @@ ENDIF ()
82 ADD_LIBRARY(libcreaterepo_c ${createrepo_c_library_type} ${createrepo_c_SRCS})
83 TARGET_LINK_LIBRARIES(libcreaterepo_c ${BZIP2_LIBRARIES})
84 TARGET_LINK_LIBRARIES(libcreaterepo_c ${CURL_LIBRARY})
85-TARGET_LINK_LIBRARIES(libcreaterepo_c ${GLIB2_LIBRARIES})
86-TARGET_LINK_LIBRARIES(libcreaterepo_c ${GIO_LIBRARIES})
87-TARGET_LINK_LIBRARIES(libcreaterepo_c ${LIBMODULEMD_LIBRARIES})
88+TARGET_LINK_LIBRARIES(libcreaterepo_c PkgConfig::GLIB2)
89+TARGET_LINK_LIBRARIES(libcreaterepo_c PkgConfig::GIO)
90+TARGET_LINK_LIBRARIES(libcreaterepo_c PkgConfig::LIBMODULEMD)
91 TARGET_LINK_LIBRARIES(libcreaterepo_c ${LIBXML2_LIBRARIES})
92-TARGET_LINK_LIBRARIES(libcreaterepo_c ${LZMA_LIBRARIES})
93+TARGET_LINK_LIBRARIES(libcreaterepo_c PkgConfig::LZMA)
94 TARGET_LINK_LIBRARIES(libcreaterepo_c ${OPENSSL_LIBRARIES})
95-TARGET_LINK_LIBRARIES(libcreaterepo_c ${RPM_LIBRARIES})
96-TARGET_LINK_LIBRARIES(libcreaterepo_c ${SQLITE3_LIBRARIES})
97+TARGET_LINK_LIBRARIES(libcreaterepo_c PkgConfig::RPM)
98+TARGET_LINK_LIBRARIES(libcreaterepo_c PkgConfig::SQLITE3)
99 TARGET_LINK_LIBRARIES(libcreaterepo_c ${ZLIB_LIBRARY})
100-TARGET_LINK_LIBRARIES(libcreaterepo_c ${ZCK_LIBRARIES})
101-TARGET_LINK_LIBRARIES(libcreaterepo_c ${DRPM_LIBRARIES})
102-TARGET_LINK_LIBRARIES(libcreaterepo_c ${ZSTD_LIBRARIES})
103+TARGET_LINK_LIBRARIES(libcreaterepo_c PkgConfig::ZCK)
104+TARGET_LINK_LIBRARIES(libcreaterepo_c PkgConfig::DRPM)
105+TARGET_LINK_LIBRARIES(libcreaterepo_c PkgConfig::ZSTD)
106
107 SET_TARGET_PROPERTIES(libcreaterepo_c PROPERTIES
108 OUTPUT_NAME "createrepo_c"
109@@ -108,27 +108,27 @@ SET_TARGET_PROPERTIES(libcreaterepo_c PROPERTIES
110 ADD_EXECUTABLE(createrepo_c createrepo_c.c cmd_parser.c)
111 TARGET_LINK_LIBRARIES(createrepo_c
112 libcreaterepo_c
113- ${GLIB2_LIBRARIES}
114- ${GTHREAD2_LIBRARIES})
115+ PkgConfig::GLIB2
116+ PkgConfig::GTHREAD2)
117
118 ADD_EXECUTABLE(mergerepo_c mergerepo_c.c)
119 TARGET_LINK_LIBRARIES(mergerepo_c
120 libcreaterepo_c
121- ${GLIB2_LIBRARIES}
122- ${GTHREAD2_LIBRARIES}
123- ${LIBMODULEMD_LIBRARIES})
124+ PkgConfig::GLIB2
125+ PkgConfig::GTHREAD2
126+ PkgConfig::LIBMODULEMD)
127
128 ADD_EXECUTABLE(modifyrepo_c modifyrepo_c.c)
129 TARGET_LINK_LIBRARIES(modifyrepo_c
130 libcreaterepo_c
131- ${GLIB2_LIBRARIES}
132- ${GTHREAD2_LIBRARIES})
133+ PkgConfig::GLIB2
134+ PkgConfig::GTHREAD2)
135
136 ADD_EXECUTABLE(sqliterepo_c sqliterepo_c.c)
137 TARGET_LINK_LIBRARIES(sqliterepo_c
138 libcreaterepo_c
139- ${GLIB2_LIBRARIES}
140- ${GTHREAD2_LIBRARIES})
141+ PkgConfig::GLIB2
142+ PkgConfig::GTHREAD2)
143
144 CONFIGURE_FILE("createrepo_c.pc.cmake" "${CMAKE_SOURCE_DIR}/src/createrepo_c.pc" @ONLY)
145 CONFIGURE_FILE("version.h.in" "${CMAKE_CURRENT_SOURCE_DIR}/version.h" @ONLY)
146diff --git a/tests/CMakeLists.txt b/tests/CMakeLists.txt
147index 4ffe837edb64153a7261d19dbaf67aceac4b5746..37339ad75190827a8e501de64dbf929f9aee4cd4 100644
148--- a/tests/CMakeLists.txt
149+++ b/tests/CMakeLists.txt
150@@ -1,61 +1,61 @@
151 ADD_EXECUTABLE(test_checksum test_checksum.c)
152-TARGET_LINK_LIBRARIES(test_checksum libcreaterepo_c ${GLIB2_LIBRARIES})
153+TARGET_LINK_LIBRARIES(test_checksum libcreaterepo_c PkgConfig::GLIB2)
154 ADD_DEPENDENCIES(tests test_checksum)
155
156 ADD_EXECUTABLE(test_compression_wrapper test_compression_wrapper.c)
157-TARGET_LINK_LIBRARIES(test_compression_wrapper libcreaterepo_c ${GLIB2_LIBRARIES})
158+TARGET_LINK_LIBRARIES(test_compression_wrapper libcreaterepo_c PkgConfig::GLIB2)
159 ADD_DEPENDENCIES(tests test_compression_wrapper)
160
161 ADD_EXECUTABLE(test_load_metadata test_load_metadata.c)
162-TARGET_LINK_LIBRARIES(test_load_metadata libcreaterepo_c ${GLIB2_LIBRARIES})
163+TARGET_LINK_LIBRARIES(test_load_metadata libcreaterepo_c PkgConfig::GLIB2)
164 ADD_DEPENDENCIES(tests test_load_metadata)
165
166 ADD_EXECUTABLE(test_locate_metadata test_locate_metadata.c)
167-TARGET_LINK_LIBRARIES(test_locate_metadata libcreaterepo_c ${GLIB2_LIBRARIES})
168+TARGET_LINK_LIBRARIES(test_locate_metadata libcreaterepo_c PkgConfig::GLIB2)
169 ADD_DEPENDENCIES(tests test_locate_metadata)
170
171 ADD_EXECUTABLE(test_misc test_misc.c)
172-TARGET_LINK_LIBRARIES(test_misc libcreaterepo_c ${GLIB2_LIBRARIES})
173+TARGET_LINK_LIBRARIES(test_misc libcreaterepo_c PkgConfig::GLIB2)
174 ADD_DEPENDENCIES(tests test_misc)
175
176 ADD_EXECUTABLE(test_sqlite test_sqlite.c)
177-TARGET_LINK_LIBRARIES(test_sqlite libcreaterepo_c ${GLIB2_LIBRARIES})
178+TARGET_LINK_LIBRARIES(test_sqlite libcreaterepo_c PkgConfig::GLIB2)
179 ADD_DEPENDENCIES(tests test_sqlite)
180
181 ADD_EXECUTABLE(test_xml_file test_xml_file.c)
182-TARGET_LINK_LIBRARIES(test_xml_file libcreaterepo_c ${GLIB2_LIBRARIES})
183+TARGET_LINK_LIBRARIES(test_xml_file libcreaterepo_c PkgConfig::GLIB2)
184 ADD_DEPENDENCIES(tests test_xml_file)
185
186 ADD_EXECUTABLE(test_xml_parser_filelists test_xml_parser_filelists.c)
187-TARGET_LINK_LIBRARIES(test_xml_parser_filelists libcreaterepo_c ${GLIB2_LIBRARIES})
188+TARGET_LINK_LIBRARIES(test_xml_parser_filelists libcreaterepo_c PkgConfig::GLIB2)
189 ADD_DEPENDENCIES(tests test_xml_parser_filelists)
190
191 ADD_EXECUTABLE(test_xml_parser_repomd test_xml_parser_repomd.c)
192-TARGET_LINK_LIBRARIES(test_xml_parser_repomd libcreaterepo_c ${GLIB2_LIBRARIES})
193+TARGET_LINK_LIBRARIES(test_xml_parser_repomd libcreaterepo_c PkgConfig::GLIB2)
194 ADD_DEPENDENCIES(tests test_xml_parser_repomd)
195
196 ADD_EXECUTABLE(test_xml_parser_updateinfo test_xml_parser_updateinfo.c)
197-TARGET_LINK_LIBRARIES(test_xml_parser_updateinfo libcreaterepo_c ${GLIB2_LIBRARIES})
198+TARGET_LINK_LIBRARIES(test_xml_parser_updateinfo libcreaterepo_c PkgConfig::GLIB2)
199 ADD_DEPENDENCIES(tests test_xml_parser_updateinfo)
200
201 ADD_EXECUTABLE(test_xml_parser_main_metadata_together test_xml_parser_main_metadata_together.c)
202-TARGET_LINK_LIBRARIES(test_xml_parser_main_metadata_together libcreaterepo_c ${GLIB2_LIBRARIES})
203+TARGET_LINK_LIBRARIES(test_xml_parser_main_metadata_together libcreaterepo_c PkgConfig::GLIB2)
204 ADD_DEPENDENCIES(tests test_xml_parser_main_metadata_together)
205
206 ADD_EXECUTABLE(test_xml_dump test_xml_dump.c)
207-TARGET_LINK_LIBRARIES(test_xml_dump libcreaterepo_c ${GLIB2_LIBRARIES})
208+TARGET_LINK_LIBRARIES(test_xml_dump libcreaterepo_c PkgConfig::GLIB2)
209 ADD_DEPENDENCIES(tests test_xml_dump)
210
211 ADD_EXECUTABLE(test_xml_dump_primary test_xml_dump_primary.c)
212-TARGET_LINK_LIBRARIES(test_xml_dump_primary libcreaterepo_c ${GLIB2_LIBRARIES})
213+TARGET_LINK_LIBRARIES(test_xml_dump_primary libcreaterepo_c PkgConfig::GLIB2)
214 ADD_DEPENDENCIES(tests test_xml_dump_primary)
215
216 ADD_EXECUTABLE(test_koji test_koji.c)
217-TARGET_LINK_LIBRARIES(test_koji libcreaterepo_c ${GLIB2_LIBRARIES})
218+TARGET_LINK_LIBRARIES(test_koji libcreaterepo_c PkgConfig::GLIB2)
219 ADD_DEPENDENCIES(tests test_koji)
220
221 ADD_EXECUTABLE(test_modifyrepo_shared test_modifyrepo_shared.c)
222-TARGET_LINK_LIBRARIES(test_modifyrepo_shared libcreaterepo_c ${GLIB2_LIBRARIES})
223+TARGET_LINK_LIBRARIES(test_modifyrepo_shared libcreaterepo_c PkgConfig::GLIB2)
224 ADD_DEPENDENCIES(tests test_modifyrepo_shared)
225
226 CONFIGURE_FILE("run_tests.sh.in" "${CMAKE_BINARY_DIR}/tests/run_tests.sh")
diff --git a/meta/recipes-devtools/createrepo-c/createrepo-c/0003-Don-t-try-to-use-imported-targets-of-turned-off-depe.patch b/meta/recipes-devtools/createrepo-c/createrepo-c/0003-Don-t-try-to-use-imported-targets-of-turned-off-depe.patch
new file mode 100644
index 0000000000..769976694e
--- /dev/null
+++ b/meta/recipes-devtools/createrepo-c/createrepo-c/0003-Don-t-try-to-use-imported-targets-of-turned-off-depe.patch
@@ -0,0 +1,53 @@
1From cfd899731f40695e9fd362dc64098e27636808fe Mon Sep 17 00:00:00 2001
2From: Pietro Cerutti <gahr@gahr.ch>
3Date: Mon, 14 Oct 2024 11:49:42 +0000
4Subject: [PATCH] Don't try to use imported targets of turned-off dependencies
5
6Upstream-Status: Backport [0a2da7c87ae9b7e3e11e77416a8e75633d4608a0]
7Signed-off-by: Moritz Haase <Moritz.Haase@bmw.de>
8---
9 src/CMakeLists.txt | 18 +++++++++++++-----
10 1 file changed, 13 insertions(+), 5 deletions(-)
11
12diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt
13index 5309050bdadf6a14d9cddf4529d309ef97cc6d2c..9444875ff1a2fd2ce0ccc678e121ea54ce0d1b83 100644
14--- a/src/CMakeLists.txt
15+++ b/src/CMakeLists.txt
16@@ -88,15 +88,21 @@ TARGET_LINK_LIBRARIES(libcreaterepo_c ${BZIP2_LIBRARIES})
17 TARGET_LINK_LIBRARIES(libcreaterepo_c ${CURL_LIBRARY})
18 TARGET_LINK_LIBRARIES(libcreaterepo_c PkgConfig::GLIB2)
19 TARGET_LINK_LIBRARIES(libcreaterepo_c PkgConfig::GIO)
20-TARGET_LINK_LIBRARIES(libcreaterepo_c PkgConfig::LIBMODULEMD)
21+IF (WITH_LIBMODULEMD)
22+ TARGET_LINK_LIBRARIES(libcreaterepo_c PkgConfig::LIBMODULEMD)
23+ENDIF (WITH_LIBMODULEMD)
24 TARGET_LINK_LIBRARIES(libcreaterepo_c ${LIBXML2_LIBRARIES})
25 TARGET_LINK_LIBRARIES(libcreaterepo_c PkgConfig::LZMA)
26 TARGET_LINK_LIBRARIES(libcreaterepo_c ${OPENSSL_LIBRARIES})
27 TARGET_LINK_LIBRARIES(libcreaterepo_c PkgConfig::RPM)
28 TARGET_LINK_LIBRARIES(libcreaterepo_c PkgConfig::SQLITE3)
29 TARGET_LINK_LIBRARIES(libcreaterepo_c ${ZLIB_LIBRARY})
30-TARGET_LINK_LIBRARIES(libcreaterepo_c PkgConfig::ZCK)
31-TARGET_LINK_LIBRARIES(libcreaterepo_c PkgConfig::DRPM)
32+IF (WITH_ZCHUNK)
33+ TARGET_LINK_LIBRARIES(libcreaterepo_c PkgConfig::ZCK)
34+ENDIF (WITH_ZCHUNK)
35+IF (ENABLE_DRPM)
36+ TARGET_LINK_LIBRARIES(libcreaterepo_c PkgConfig::DRPM)
37+ENDIF (ENABLE_DRPM)
38 TARGET_LINK_LIBRARIES(libcreaterepo_c PkgConfig::ZSTD)
39
40 SET_TARGET_PROPERTIES(libcreaterepo_c PROPERTIES
41@@ -115,8 +121,10 @@ ADD_EXECUTABLE(mergerepo_c mergerepo_c.c)
42 TARGET_LINK_LIBRARIES(mergerepo_c
43 libcreaterepo_c
44 PkgConfig::GLIB2
45- PkgConfig::GTHREAD2
46- PkgConfig::LIBMODULEMD)
47+ PkgConfig::GTHREAD2)
48+IF (WITH_LIBMODULEMD)
49+ TARGET_LINK_LIBRARIES(mergerepo_c PkgConfig::LIBMODULEMD)
50+ENDIF (WITH_LIBMODULEMD)
51
52 ADD_EXECUTABLE(modifyrepo_c modifyrepo_c.c)
53 TARGET_LINK_LIBRARIES(modifyrepo_c
diff --git a/meta/recipes-devtools/createrepo-c/createrepo-c/0004-cmake-Allow-builds-without-Doxygen-being-present-wit.patch b/meta/recipes-devtools/createrepo-c/createrepo-c/0004-cmake-Allow-builds-without-Doxygen-being-present-wit.patch
new file mode 100644
index 0000000000..acf888e7ba
--- /dev/null
+++ b/meta/recipes-devtools/createrepo-c/createrepo-c/0004-cmake-Allow-builds-without-Doxygen-being-present-wit.patch
@@ -0,0 +1,50 @@
1From 90f39874bd122ca9e966f32c01e43e922031018e Mon Sep 17 00:00:00 2001
2From: Moritz Haase <Moritz.Haase@bmw.de>
3Date: Mon, 23 Jun 2025 09:21:07 +0200
4Subject: [PATCH] cmake: Allow builds without Doxygen being present with CMake
5 4+
6
7With CMake 4+, the initial CMake run fails with
8
9 CMake Error at doc/CMakeLists.txt:18 (ADD_DEPENDENCIES):
10 The dependency target "doc-c" of target "doc" does not exist.
11
12in case Doxygen is not installed on the system, since non-existent dependencies
13are not ignored anymore (see [0]). Rectify that by making sure that we only add
14the dependency in case Doxygen has been found.
15
16[0]: https://cmake.org/cmake/help/latest/policy/CMP0046.html
17
18Upstream-Status: Backport [908e3a4a5909ab107da41c2631a06c6b23617f3c]
19Signed-off-by: Moritz Haase <Moritz.Haase@bmw.de>
20---
21 doc/CMakeLists.txt | 7 ++++---
22 1 file changed, 4 insertions(+), 3 deletions(-)
23
24diff --git a/doc/CMakeLists.txt b/doc/CMakeLists.txt
25index 6b2ef5e0593757c7b977cd5d228b7774b4f45641..6332b91260ff87f16e331071e652bfe0b167f518 100644
26--- a/doc/CMakeLists.txt
27+++ b/doc/CMakeLists.txt
28@@ -1,11 +1,15 @@
29 ADD_SUBDIRECTORY (python)
30
31+ADD_CUSTOM_TARGET (doc)
32+ADD_DEPENDENCIES (doc doc-python)
33+
34 find_package(Doxygen)
35 if(DOXYGEN_FOUND)
36 CONFIGURE_FILE("Doxyfile.in.in" "${CMAKE_CURRENT_BINARY_DIR}/Doxyfile.in" @ONLY)
37 add_custom_target(doc-c
38 ${DOXYGEN_EXECUTABLE} ${CMAKE_CURRENT_BINARY_DIR}/Doxyfile.in
39 COMMENT "Building C API documentation with Doxygen" VERBATIM)
40+ ADD_DEPENDENCIES (doc doc-c)
41 endif(DOXYGEN_FOUND)
42
43 IF(CREATEREPO_C_INSTALL_MANPAGES)
44@@ -13,6 +17,3 @@ IF(CREATEREPO_C_INSTALL_MANPAGES)
45 DESTINATION "${CMAKE_INSTALL_MANDIR}/man8"
46 COMPONENT bin)
47 ENDIF(CREATEREPO_C_INSTALL_MANPAGES)
48-
49-ADD_CUSTOM_TARGET (doc)
50-ADD_DEPENDENCIES (doc doc-python doc-c)
diff --git a/meta/recipes-devtools/createrepo-c/createrepo-c_1.2.1.bb b/meta/recipes-devtools/createrepo-c/createrepo-c_1.2.1.bb
index 63a717726c..ecd43b0c0b 100644
--- a/meta/recipes-devtools/createrepo-c/createrepo-c_1.2.1.bb
+++ b/meta/recipes-devtools/createrepo-c/createrepo-c_1.2.1.bb
@@ -7,6 +7,10 @@ LIC_FILES_CHKSUM = "file://COPYING;md5=b234ee4d69f5fce4486a80fdaf4a4263"
7SRC_URI = "git://github.com/rpm-software-management/createrepo_c;branch=master;protocol=https;tag=${PV} \ 7SRC_URI = "git://github.com/rpm-software-management/createrepo_c;branch=master;protocol=https;tag=${PV} \
8 file://0001-Do-not-set-PYTHON_INSTALL_DIR-by-running-python.patch \ 8 file://0001-Do-not-set-PYTHON_INSTALL_DIR-by-running-python.patch \
9 file://0001-include-rpm-rpmstring.h.patch \ 9 file://0001-include-rpm-rpmstring.h.patch \
10 file://0001-Fix-libname-of-Libs.private.patch \
11 file://0002-Use-IMPORTED_TARGET-for-3rd-party-dependencies.patch \
12 file://0003-Don-t-try-to-use-imported-targets-of-turned-off-depe.patch \
13 file://0004-cmake-Allow-builds-without-Doxygen-being-present-wit.patch \
10 " 14 "
11 15
12SRCREV = "8c6e6f88df86d1e34ca26d3835d77a2816326414" 16SRCREV = "8c6e6f88df86d1e34ca26d3835d77a2816326414"
diff --git a/meta/recipes-devtools/dosfstools/dosfstools/0001-fsck.fat-Adhere-to-the-fsck-exit-codes.patch b/meta/recipes-devtools/dosfstools/dosfstools/0001-fsck.fat-Adhere-to-the-fsck-exit-codes.patch
new file mode 100644
index 0000000000..3d2ce48723
--- /dev/null
+++ b/meta/recipes-devtools/dosfstools/dosfstools/0001-fsck.fat-Adhere-to-the-fsck-exit-codes.patch
@@ -0,0 +1,214 @@
1From 9d165145b9f9c20a56e111360fbc2003c2b28cba Mon Sep 17 00:00:00 2001
2From: Ricardo Simoes <ricardo.simoes@pt.bosch.com>
3Date: Thu, 26 Jun 2025 08:14:29 +0100
4Subject: [PATCH] fsck.fat: Adhere to the fsck exit codes
5
6fsck.fat is used as a filesystem-specific checker for the `fsck`. This
7also causes `fsck` to return the same exit-codes given by `fsck.fat`.
8
9In most cases this is already the case. One exception to that comes when
10checking a read-only filesystem. In that case `fsck.fat` will return 6,
11which for `fsck` means "Fiesystem errors left uncorrected" and "System
12should reboot". When a more proper response would be to return 8,
13"Operational Error".
14
15This commit solves that problem by introducing a new header file which
16standardizes the exit codes used by `fsck.fat`.
17
18Signed-off-by: Ricardo Ungerer <ungerer.ricardo@gmail.com>
19
20Upstream-Status: Inactive-Upstream [lastcommit: 2023, lastrelease: 2021]
21Upstream-Status: Submitted [https://github.com/dosfstools/dosfstools/pull/217]
22---
23 src/Makefile.am | 4 ++--
24 src/common.c | 8 ++++----
25 src/exit_codes.h | 15 +++++++++++++++
26 src/fsck.fat.c | 23 ++++++++++++-----------
27 src/io.c | 3 ++-
28 5 files changed, 35 insertions(+), 18 deletions(-)
29 create mode 100644 src/exit_codes.h
30
31diff --git a/src/Makefile.am b/src/Makefile.am
32index a389046..48f00dd 100644
33--- a/src/Makefile.am
34+++ b/src/Makefile.am
35@@ -23,7 +23,7 @@ EXTRA_DIST = blkdev/README
36
37 charconv_common_sources = charconv.c charconv.h
38 charconv_common_ldadd = $(LIBICONV)
39-fscklabel_common_sources = boot.c boot.h common.c common.h \
40+fscklabel_common_sources = boot.c boot.h common.c common.h exit_codes.h \
41 fat.c fat.h io.c io.h msdos_fs.h \
42 $(charconv_common_sources) \
43 fsck.fat.h endian_compat.h
44@@ -38,7 +38,7 @@ devinfo_common_sources = device_info.c device_info.h \
45 blkdev/blkdev.c blkdev/blkdev.h \
46 blkdev/linux_version.c blkdev/linux_version.h
47 mkfs_fat_SOURCES = mkfs.fat.c msdos_fs.h common.c common.h endian_compat.h \
48- $(charconv_common_sources) $(devinfo_common_sources)
49+ exit_codes.h $(charconv_common_sources) $(devinfo_common_sources)
50 mkfs_fat_CPPFLAGS = -I$(srcdir)/blkdev
51 mkfs_fat_CFLAGS = $(AM_CFLAGS)
52 mkfs_fat_LDADD = $(charconv_common_ldadd)
53diff --git a/src/common.c b/src/common.c
54index 4f1afcb..089d4b3 100644
55--- a/src/common.c
56+++ b/src/common.c
57@@ -38,7 +38,7 @@
58
59 #include "common.h"
60 #include "charconv.h"
61-
62+#include "exit_codes.h"
63
64 int interactive;
65 int write_immed;
66@@ -62,7 +62,7 @@ void die(const char *msg, ...)
67 vfprintf(stderr, msg, args);
68 va_end(args);
69 fprintf(stderr, "\n");
70- exit(1);
71+ exit(OPERATIONAL_ERROR);
72 }
73
74 void pdie(const char *msg, ...)
75@@ -205,7 +205,7 @@ int get_choice(int noninteractive_result, const char *noninteractive_msg,
76 } while (choice == '\n'); /* filter out enter presses */
77
78 if (choice == EOF)
79- exit(1);
80+ exit(USAGE_OR_SYNTAX_ERROR);
81
82 printf("%c\n", choice);
83
84@@ -235,7 +235,7 @@ int get_choice(int noninteractive_result, const char *noninteractive_msg,
85 inhibit_quit_choice = 0;
86
87 if (quit_choice == 1)
88- exit(0);
89+ exit(NO_ERRORS);
90 }
91 }
92
93diff --git a/src/exit_codes.h b/src/exit_codes.h
94new file mode 100644
95index 0000000..f67d22e
96--- /dev/null
97+++ b/src/exit_codes.h
98@@ -0,0 +1,15 @@
99+#ifndef _EXIT_CODES_H
100+#define _EXIT_CODES_H
101+
102+/* Codes as defined by fsck.
103+ For more information, see fsck manpage. */
104+#define NO_ERRORS 0
105+#define FS_ERRORS_CORRECTED 1
106+#define SYSTEM_SHOULD_BE_REBOOTED 2
107+#define FS_ERRORS_LEFT_UNCORRECTED 4
108+#define OPERATIONAL_ERROR 8
109+#define USAGE_OR_SYNTAX_ERROR 16
110+#define CHECKING_CANCELED_BY_USER 32
111+#define SHARED_LIB_ERROR 128
112+
113+#endif
114diff --git a/src/fsck.fat.c b/src/fsck.fat.c
115index 8b02b57..42e3ab4 100644
116--- a/src/fsck.fat.c
117+++ b/src/fsck.fat.c
118@@ -46,6 +46,7 @@
119 #include "file.h"
120 #include "check.h"
121 #include "charconv.h"
122+#include "exit_codes.h"
123
124 int rw = 0, list = 0, test = 0, verbose = 0;
125 long fat_table = 0;
126@@ -147,10 +148,10 @@ int main(int argc, char **argv)
127 codepage = strtol(optarg, &tmp, 10);
128 if (!*optarg || isspace(*optarg) || *tmp || errno || codepage < 0 || codepage > INT_MAX) {
129 fprintf(stderr, "Invalid codepage : %s\n", optarg);
130- usage(argv[0], 2);
131+ usage(argv[0], USAGE_OR_SYNTAX_ERROR);
132 }
133 if (!set_dos_codepage(codepage))
134- usage(argv[0], 2);
135+ usage(argv[0], USAGE_OR_SYNTAX_ERROR);
136 break;
137 case 'd':
138 file_add(optarg, fdt_drop);
139@@ -163,7 +164,7 @@ int main(int argc, char **argv)
140 fat_table = strtol(optarg, &tmp, 10);
141 if (!*optarg || isspace(*optarg) || *tmp || errno || fat_table < 0 || fat_table > 255) {
142 fprintf(stderr, "Invalid FAT table : %s\n", optarg);
143- usage(argv[0], 2);
144+ usage(argv[0], USAGE_OR_SYNTAX_ERROR);
145 }
146 break;
147 case 'l':
148@@ -202,31 +203,31 @@ int main(int argc, char **argv)
149 atari_format = 1;
150 } else {
151 fprintf(stderr, "Unknown variant: %s\n", optarg);
152- usage(argv[0], 2);
153+ usage(argv[0], USAGE_OR_SYNTAX_ERROR);
154 }
155 break;
156 case 'w':
157 write_immed = 1;
158 break;
159 case OPT_HELP:
160- usage(argv[0], 0);
161+ usage(argv[0], EXIT_SUCCESS);
162 break;
163 case '?':
164- usage(argv[0], 2);
165+ usage(argv[0], USAGE_OR_SYNTAX_ERROR);
166 break;
167 default:
168 fprintf(stderr,
169 "Internal error: getopt_long() returned unexpected value %d\n", c);
170- exit(3);
171+ exit(OPERATIONAL_ERROR);
172 }
173 if (!set_dos_codepage(-1)) /* set default codepage if none was given in command line */
174- exit(2);
175+ exit(OPERATIONAL_ERROR);
176 if ((test || write_immed) && !rw) {
177 fprintf(stderr, "-t and -w can not be used in read only mode\n");
178- exit(2);
179+ exit(USAGE_OR_SYNTAX_ERROR);
180 }
181 if (optind != argc - 1)
182- usage(argv[0], 2);
183+ usage(argv[0], USAGE_OR_SYNTAX_ERROR);
184
185 printf("fsck.fat " VERSION " (" VERSION_DATE ")\n");
186 fs_open(argv[optind], rw);
187@@ -285,5 +286,5 @@ exit:
188 n_files, (unsigned long)fs.data_clusters - free_clusters,
189 (unsigned long)fs.data_clusters);
190
191- return fs_close(rw) ? 1 : 0;
192+ return fs_close(rw) ? FS_ERRORS_CORRECTED : NO_ERRORS;
193 }
194diff --git a/src/io.c b/src/io.c
195index 8c0c3b2..8bd1ae5 100644
196--- a/src/io.c
197+++ b/src/io.c
198@@ -44,6 +44,7 @@
199 #include "fsck.fat.h"
200 #include "common.h"
201 #include "io.h"
202+#include "exit_codes.h"
203
204 typedef struct _change {
205 void *data;
206@@ -60,7 +61,7 @@ void fs_open(const char *path, int rw)
207 {
208 if ((fd = open(path, rw ? O_RDWR : O_RDONLY)) < 0) {
209 perror("open");
210- exit(6);
211+ exit(OPERATIONAL_ERROR);
212 }
213 changes = last = NULL;
214 did_change = 0;
diff --git a/meta/recipes-devtools/dosfstools/dosfstools/0002-manpages-Document-fsck.fat-new-exit-codes.patch b/meta/recipes-devtools/dosfstools/dosfstools/0002-manpages-Document-fsck.fat-new-exit-codes.patch
new file mode 100644
index 0000000000..29bba7b093
--- /dev/null
+++ b/meta/recipes-devtools/dosfstools/dosfstools/0002-manpages-Document-fsck.fat-new-exit-codes.patch
@@ -0,0 +1,46 @@
1From 8d703216d2ea3247092a08adb0c37b38eb77ccc7 Mon Sep 17 00:00:00 2001
2From: Ricardo Ungerer <ungerer.ricardo@gmail.com>
3Date: Wed, 21 May 2025 07:18:15 +0100
4Subject: [PATCH 2/3] manpages: Document fsck.fat new exit codes
5
6Signed-off-by: Ricardo Ungerer <ungerer.ricardo@gmail.com>
7
8Upstream-Status: Inactive-Upstream [lastcommit: 2023, lastrelease: 2021]
9Upstream-Status: Submitted [https://github.com/dosfstools/dosfstools/pull/217]
10---
11 manpages/fsck.fat.8.in | 18 +++++++++++++-----
12 1 file changed, 13 insertions(+), 5 deletions(-)
13
14diff --git a/manpages/fsck.fat.8.in b/manpages/fsck.fat.8.in
15index 824a83d..557aa4c 100644
16--- a/manpages/fsck.fat.8.in
17+++ b/manpages/fsck.fat.8.in
18@@ -222,13 +222,21 @@ Display help message describing usage and options then exit.
19 .\" ----------------------------------------------------------------------------
20 .SH "EXIT STATUS"
21 .IP "0" 4
22-No recoverable errors have been detected.
23+No errors
24 .IP "1" 4
25-Recoverable errors have been detected or \fBfsck.fat\fP has discovered an
26-internal inconsistency.
27+Filesystem errors corrected
28 .IP "2" 4
29-Usage error.
30-\fBfsck.fat\fP did not access the filesystem.
31+System should be rebooted
32+.IP "4" 4
33+Filesystem errors left uncorrected
34+.IP "8" 4
35+Operational error
36+.IP "16" 4
37+Usage or syntax error
38+.IP "32" 4
39+Checking canceled by user request
40+.IP "128" 4
41+Shared-library error
42 .\" ----------------------------------------------------------------------------
43 .SH FILES
44 .IP "\fIfsck0000.rec\fP, \fIfsck0001.rec\fP, ..." 4
45--
462.25.1
diff --git a/meta/recipes-devtools/dosfstools/dosfstools_4.2.bb b/meta/recipes-devtools/dosfstools/dosfstools_4.2.bb
index 175fa265ef..86fb68f664 100644
--- a/meta/recipes-devtools/dosfstools/dosfstools_4.2.bb
+++ b/meta/recipes-devtools/dosfstools/dosfstools_4.2.bb
@@ -10,11 +10,12 @@ LICENSE = "GPL-3.0-only"
10LIC_FILES_CHKSUM = "file://COPYING;md5=d32239bcb673463ab874e80d47fae504" 10LIC_FILES_CHKSUM = "file://COPYING;md5=d32239bcb673463ab874e80d47fae504"
11 11
12SRC_URI = "${GITHUB_BASE_URI}/download/v${PV}/${BP}.tar.gz \ 12SRC_URI = "${GITHUB_BASE_URI}/download/v${PV}/${BP}.tar.gz \
13 " 13 file://source-date-epoch.patch \
14 file://0001-fsck.fat-Adhere-to-the-fsck-exit-codes.patch \
15 file://0002-manpages-Document-fsck.fat-new-exit-codes.patch \
16 "
14SRC_URI[sha256sum] = "64926eebf90092dca21b14259a5301b7b98e7b1943e8a201c7d726084809b527" 17SRC_URI[sha256sum] = "64926eebf90092dca21b14259a5301b7b98e7b1943e8a201c7d726084809b527"
15 18
16SRC_URI += "file://source-date-epoch.patch"
17
18inherit autotools gettext pkgconfig update-alternatives github-releases 19inherit autotools gettext pkgconfig update-alternatives github-releases
19 20
20EXTRA_OECONF = "--enable-compat-symlinks --without-iconv" 21EXTRA_OECONF = "--enable-compat-symlinks --without-iconv"
diff --git a/meta/recipes-devtools/git/git/fixsort.patch b/meta/recipes-devtools/git/git/fixsort.patch
index e077eba8ff..7066e1808d 100644
--- a/meta/recipes-devtools/git/git/fixsort.patch
+++ b/meta/recipes-devtools/git/git/fixsort.patch
@@ -23,15 +23,15 @@ Upstream-Status: Submitted [https://public-inbox.org/git/f029a942dd3d50d85e60bd3
23 1 file changed, 1 insertion(+), 1 deletion(-) 23 1 file changed, 1 insertion(+), 1 deletion(-)
24 24
25diff --git a/generate-configlist.sh b/generate-configlist.sh 25diff --git a/generate-configlist.sh b/generate-configlist.sh
26index dffdaad..cc35a21 100755 26index 75c39ad..6d4525e 100755
27--- a/generate-configlist.sh 27--- a/generate-configlist.sh
28+++ b/generate-configlist.sh 28+++ b/generate-configlist.sh
29@@ -15,7 +15,7 @@ static const char *config_name_list[] = { 29@@ -23,7 +23,7 @@ EOF
30 EOF 30 d' \
31 grep -h '^[a-zA-Z].*\..*::$' "$SOURCE_DIR"/Documentation/*config.adoc "$SOURCE_DIR"/Documentation/config/*.adoc | 31 "$SOURCE_DIR"/Documentation/*config.adoc \
32 sed '/deprecated/d; s/::$//; s/, */\n/g' | 32 "$SOURCE_DIR"/Documentation/config/*.adoc |
33- sort | 33- sort
34+ LC_ALL=C sort | 34+ LC_ALL=C sort
35 sed 's/^.*$/ "&",/'
36 cat <<EOF 35 cat <<EOF
37 NULL, 36 NULL,
37 };
diff --git a/meta/recipes-devtools/git/git_2.49.0.bb b/meta/recipes-devtools/git/git_2.50.0.bb
index e1b501d62b..2d28fd05fc 100644
--- a/meta/recipes-devtools/git/git_2.49.0.bb
+++ b/meta/recipes-devtools/git/git_2.50.0.bb
@@ -170,4 +170,4 @@ EXTRA_OECONF += "ac_cv_snprintf_returns_bogus=no \
170 " 170 "
171EXTRA_OEMAKE += "NO_GETTEXT=1" 171EXTRA_OEMAKE += "NO_GETTEXT=1"
172 172
173SRC_URI[tarball.sha256sum] = "f8047f572f665bebeb637fd5f14678f31b3ca5d2ff9a18f20bd925bd48f75d3c" 173SRC_URI[tarball.sha256sum] = "920f8ca563d16a7d4fdecb44349cbffbc5cb814a8b36c96028463478197050da"
diff --git a/meta/recipes-devtools/json-c/json-c_0.18.bb b/meta/recipes-devtools/json-c/json-c_0.18.bb
index ece320d66c..c112aacf4b 100644
--- a/meta/recipes-devtools/json-c/json-c_0.18.bb
+++ b/meta/recipes-devtools/json-c/json-c_0.18.bb
@@ -19,8 +19,7 @@ UPSTREAM_CHECK_REGEX = "json-c-(?P<pver>\d+(\.\d+)+)-\d+"
19 19
20RPROVIDES:${PN} = "libjson" 20RPROVIDES:${PN} = "libjson"
21 21
22# - '-Werror' must be disabled for ICECC builds 22# Apps aren't needed/packaged and their CMakeLists.txt is incompatible with CMake 4+.
23# - Apps aren't needed/packaged and their CMakeLists.txt is incompatible with CMake 4+.
24EXTRA_OECMAKE = "-DDISABLE_WERROR=ON \ 23EXTRA_OECMAKE = "-DDISABLE_WERROR=ON \
25 -DBUILD_APPS=OFF \ 24 -DBUILD_APPS=OFF \
26" 25"
diff --git a/meta/recipes-devtools/libcomps/libcomps/0001-libcomps-Support-builds-with-CMake-4.patch b/meta/recipes-devtools/libcomps/libcomps/0001-libcomps-Support-builds-with-CMake-4.patch
new file mode 100644
index 0000000000..9a90e05888
--- /dev/null
+++ b/meta/recipes-devtools/libcomps/libcomps/0001-libcomps-Support-builds-with-CMake-4.patch
@@ -0,0 +1,132 @@
1From 702ec1423fb9b53244b902923fd87ef19b63a7f5 Mon Sep 17 00:00:00 2001
2From: Moritz Haase <Moritz.Haase@bmw.de>
3Date: Mon, 23 Jun 2025 08:32:18 +0200
4Subject: [PATCH] libcomps: Support builds with CMake 4+
5
6- Bump minimum required version to 3.10, the lowest one CMake 4+ don't complain
7 about. It's also possible to use 3.5, but that results in a deprecation
8 warning. The 'cmake_minimum_required()' invocation has been moved before the
9 initial 'project()' call as CMake complained about the wrong order.
10
11- Set policy CMP0148 [0] to OLD to unblock build without additional changes.
12 Eventually, the usage of the 'PythonInterp' and 'PythonLibs' find modules will
13 be need to be updated to use 'Python3' instead.
14
15- Set policy CMP0175 [1] to NEW and fix warnings.
16
17- Fix the 'No TARGET ... has been created in this directory' error in
18 'src/python'.
19
20- Fix 'Utility target <foo> must not be used as the target of a
21 target_link_libraries call' errors (see [2]).
22
23- Mark the 'check' library as required when tests are enabled to prevent test
24 targets from linking a non-existing library in case it's not installed.
25
26[0]: https://cmake.org/cmake/help/latest/policy/CMP0148.html
27[1]: https://cmake.org/cmake/help/latest/policy/CMP0175.html
28[2]: https://cmake.org/cmake/help/latest/policy/CMP0039.html
29
30Upstream-Status: Backport [702ec1423fb9b53244b902923fd87ef19b63a7f5]
31Signed-off-by: Moritz Haase <Moritz.Haase@bmw.de>
32---
33 README.md | 3 +--
34 libcomps/CMakeLists.txt | 7 +++++--
35 libcomps/src/python/docs/CMakeLists.txt | 3 ++-
36 libcomps/src/python/pycopy.cmake | 7 ++++---
37 libcomps/tests/CMakeLists.txt | 2 --
38 5 files changed, 12 insertions(+), 10 deletions(-)
39
40diff --git a/README.md b/README.md
41index 7f8314dd3f70d131c4d399f069d3d7bb77dcff02..24bf8a226d50b7b9b5372f98b52650ff4467c3d6 100644
42--- a/README.md
43+++ b/README.md
44@@ -27,7 +27,7 @@ for python bindings:
45
46 for C library tests:
47
48-* check http://check.sourceforge.net/
49+* check https://github.com/libcheck/check
50
51 for documentation build:
52
53@@ -128,4 +128,3 @@ Here's the most direct way to get your work merged into the project.
54
55 1. Push the branch to your fork
56 1. Send a pull request for your branch
57-
58diff --git a/libcomps/CMakeLists.txt b/libcomps/CMakeLists.txt
59index d8d628af1a8b863b6173ff11615a59aa58d8235e..3957e63a311fc42c85516c0e66fc6f598194cb8f 100644
60--- a/libcomps/CMakeLists.txt
61+++ b/libcomps/CMakeLists.txt
62@@ -1,5 +1,8 @@
63+cmake_minimum_required (VERSION 3.10)
64 project(libcomps C)
65-cmake_minimum_required (VERSION 2.8.10)
66+
67+cmake_policy(SET CMP0148 OLD)
68+cmake_policy(SET CMP0175 NEW)
69
70 include (GNUInstallDirs)
71 include (${CMAKE_ROOT}/Modules/CheckFunctionExists.cmake)
72@@ -32,7 +35,7 @@ include_directories("${PROJECT_SOURCE_DIR}/src")
73 #include_directories("${PROJECT_SOURCE_DIR}/src/libcomps")
74
75 if (ENABLE_TESTS)
76- find_library(CHECK_LIBRARY NAMES check)
77+ find_library(CHECK_LIBRARY REQUIRED NAMES check)
78 endif()
79 find_library(EXPAT_LIBRARY NAMES expat)
80
81diff --git a/libcomps/src/python/docs/CMakeLists.txt b/libcomps/src/python/docs/CMakeLists.txt
82index c4b388cb4a4bb2d962a625a448efcfee14ef71b3..9c92b2dacf4a2cb76f461b8038217cc8e895a369 100644
83--- a/libcomps/src/python/docs/CMakeLists.txt
84+++ b/libcomps/src/python/docs/CMakeLists.txt
85@@ -26,7 +26,8 @@ add_dependencies(pydocs pycomps)
86 include(../pycopy.cmake)
87 add_custom_command(TARGET pydocs PRE_BUILD COMMAND set -E $ENV{LD_LIBRARY_PATH} "${LIBCOMPS_OUT}:$ENV{LD_LIBRARY_PATH}")
88
89-add_custom_command(TARGET pydocs COMMAND ${PYTHON_EXECUTABLE} ${SPHINX_EXECUTABLE} -E -b html
90+add_custom_command(TARGET pydocs POST_BUILD
91+ COMMAND ${PYTHON_EXECUTABLE} ${SPHINX_EXECUTABLE} -E -b html
92 "${CMAKE_CURRENT_SOURCE_DIR}/doc-sources/"
93 "${CMAKE_CURRENT_BINARY_DIR}/html/"
94 COMMENT "LDLP $ENV{LD_LIBRARY_PATH}")
95diff --git a/libcomps/src/python/pycopy.cmake b/libcomps/src/python/pycopy.cmake
96index b22f83595c09b4af8f1c2e49ddbd7755f4c97f0b..0e99e38d791ffd13496bd8fbbf61cd7701e543b7 100644
97--- a/libcomps/src/python/pycopy.cmake
98+++ b/libcomps/src/python/pycopy.cmake
99@@ -6,9 +6,10 @@ math (EXPR len "${len} - 1")
100
101 #set(pycopy "py${pversion}-copy")
102
103-#if (NOT TARGET ${pycopy})
104+if (NOT TARGET ${pycopy})
105+ add_custom_target(${pycopy} DEPENDS pycomps)
106+endif()
107
108-#add_custom_target(${pycopy} DEPENDS pycomps)
109 set (pycomps_SRCDIR "${PROJECT_SOURCE_DIR}/src/python/src/")
110 set (pycomps_TESTDIR "${PROJECT_SOURCE_DIR}/src/python/tests/")
111 set (pycomps_LIBPATH ${PYCOMPS_LIB_PATH})#"${PROJECT_BINARY_DIR}/src/python/src/python${pversion}")
112@@ -16,7 +17,7 @@ set (pycomps_LIBPATH ${PYCOMPS_LIB_PATH})#"${PROJECT_BINARY_DIR}/src/python/src/
113 #add_custom_command(TARGET pycopy PRE_BUILD COMMAND ${CMAKE_COMMAND} -E
114 # make_directory "${CP_DST}")
115
116-add_custom_command(TARGET ${pycopy} COMMAND ${CMAKE_COMMAND} -E
117+add_custom_command(TARGET ${pycopy} POST_BUILD COMMAND ${CMAKE_COMMAND} -E
118 make_directory ${pycomps_LIBPATH}/libcomps/comps/)
119
120 foreach(x RANGE 0 ${len})
121diff --git a/libcomps/tests/CMakeLists.txt b/libcomps/tests/CMakeLists.txt
122index 23ced7450afa02977c63f9374a4fee33ae596d98..9d6e428e18d5a234c7be74d957c25961dea30050 100644
123--- a/libcomps/tests/CMakeLists.txt
124+++ b/libcomps/tests/CMakeLists.txt
125@@ -87,7 +87,5 @@ add_custom_target(test_parse_run
126 WORKING_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}
127 DEPENDS test_parse
128 COMMENT "Running comps_parse test")
129-target_link_libraries(test_parse_run libcomps)
130-target_link_libraries(test_comps_run libcomps)
131
132 add_dependencies(ctest test_comps_run test_parse_run)
diff --git a/meta/recipes-devtools/libcomps/libcomps_0.1.21.bb b/meta/recipes-devtools/libcomps/libcomps_0.1.21.bb
index 5709f3e69f..9429c703e1 100644
--- a/meta/recipes-devtools/libcomps/libcomps_0.1.21.bb
+++ b/meta/recipes-devtools/libcomps/libcomps_0.1.21.bb
@@ -5,6 +5,7 @@ LICENSE = "GPL-2.0-only"
5LIC_FILES_CHKSUM = "file://COPYING;md5=b234ee4d69f5fce4486a80fdaf4a4263" 5LIC_FILES_CHKSUM = "file://COPYING;md5=b234ee4d69f5fce4486a80fdaf4a4263"
6 6
7SRC_URI = "git://github.com/rpm-software-management/libcomps.git;branch=master;protocol=https \ 7SRC_URI = "git://github.com/rpm-software-management/libcomps.git;branch=master;protocol=https \
8 file://0001-libcomps-Support-builds-with-CMake-4.patch \
8 file://0002-Do-not-set-PYTHON_INSTALL_DIR-by-running-python.patch \ 9 file://0002-Do-not-set-PYTHON_INSTALL_DIR-by-running-python.patch \
9 " 10 "
10 11
diff --git a/meta/recipes-devtools/libmodulemd/libmodulemd_2.15.1.bb b/meta/recipes-devtools/libmodulemd/libmodulemd_2.15.2.bb
index 6504414387..32d2a39c41 100644
--- a/meta/recipes-devtools/libmodulemd/libmodulemd_2.15.1.bb
+++ b/meta/recipes-devtools/libmodulemd/libmodulemd_2.15.2.bb
@@ -4,9 +4,9 @@ DESCRIPTION = "${SUMMARY}"
4LICENSE = "MIT" 4LICENSE = "MIT"
5LIC_FILES_CHKSUM = "file://COPYING;md5=25a3927bff3ee4f5b21bcb0ed3fcd6bb" 5LIC_FILES_CHKSUM = "file://COPYING;md5=25a3927bff3ee4f5b21bcb0ed3fcd6bb"
6 6
7SRC_URI = "git://github.com/fedora-modularity/libmodulemd;protocol=https;branch=main" 7SRC_URI = "git://github.com/fedora-modularity/libmodulemd;protocol=https;branch=main;tag=${PV}"
8 8
9SRCREV = "e7f179eeeb6eee1403f090fc43a3c80bb08b5bfd" 9SRCREV = "b8b11b4dafaa2c4d73883152bfa7e5bd81cd7395"
10 10
11inherit meson gobject-introspection pkgconfig manpages 11inherit meson gobject-introspection pkgconfig manpages
12 12
diff --git a/meta/recipes-devtools/mtools/mtools_4.0.48.bb b/meta/recipes-devtools/mtools/mtools_4.0.49.bb
index 646735f3b3..294b2f37b2 100644
--- a/meta/recipes-devtools/mtools/mtools_4.0.48.bb
+++ b/meta/recipes-devtools/mtools/mtools_4.0.49.bb
@@ -24,7 +24,7 @@ RRECOMMENDS:${PN}:libc-glibc = "\
24 glibc-gconv-ibm866 \ 24 glibc-gconv-ibm866 \
25 glibc-gconv-ibm869 \ 25 glibc-gconv-ibm869 \
26 " 26 "
27SRC_URI[sha256sum] = "03c29aac8735dd7154a989fbc29eaf2b506121ae1c3a35cd0bf2a02e94d271a9" 27SRC_URI[sha256sum] = "6fe5193583d6e7c59da75e63d7234f76c0b07caf33b103894f46f66a871ffc9f"
28 28
29SRC_URI = "${GNU_MIRROR}/mtools/mtools-${PV}.tar.bz2 \ 29SRC_URI = "${GNU_MIRROR}/mtools/mtools-${PV}.tar.bz2 \
30 file://mtools-makeinfo.patch \ 30 file://mtools-makeinfo.patch \
diff --git a/meta/recipes-devtools/ninja/ninja_1.12.1.bb b/meta/recipes-devtools/ninja/ninja_1.13.0.bb
index 5aff82edec..a5fa8f1c9e 100644
--- a/meta/recipes-devtools/ninja/ninja_1.12.1.bb
+++ b/meta/recipes-devtools/ninja/ninja_1.13.0.bb
@@ -1,14 +1,18 @@
1SUMMARY = "Ninja is a small build system with a focus on speed." 1SUMMARY = "Ninja is a small build system with a focus on speed."
2HOMEPAGE = "https://ninja-build.org/" 2HOMEPAGE = "https://ninja-build.org/"
3DESCRIPTION = "Ninja is a small build system with a focus on speed. It differs from other build systems in two major respects: it is designed to have its input files generated by a higher-level build system, and it is designed to run builds as fast as possible." 3DESCRIPTION = "Ninja is a small build system with a focus on speed. \
4It differs from other build systems in two major respects: \
5it is designed to have its input files generated by a higher-level build system, \
6and it is designed to run builds as fast as possible."
7
4LICENSE = "Apache-2.0" 8LICENSE = "Apache-2.0"
5LIC_FILES_CHKSUM = "file://COPYING;md5=a81586a64ad4e476c791cda7e2f2c52e" 9LIC_FILES_CHKSUM = "file://COPYING;md5=a81586a64ad4e476c791cda7e2f2c52e"
6 10
7DEPENDS = "re2c-native ninja-native" 11DEPENDS = "re2c-native ninja-native"
8 12
9SRCREV = "2daa09ba270b0a43e1929d29b073348aa985dfaa" 13SRCREV = "b4d51f6ed5bed09dd2b70324df0d9cb4ecad2638"
10 14
11SRC_URI = "git://github.com/ninja-build/ninja.git;branch=release;protocol=https" 15SRC_URI = "git://github.com/ninja-build/ninja.git;branch=release;protocol=https;tag=v${PV}"
12UPSTREAM_CHECK_GITTAGREGEX = "v(?P<pver>.*)" 16UPSTREAM_CHECK_GITTAGREGEX = "v(?P<pver>.*)"
13 17
14do_configure[noexec] = "1" 18do_configure[noexec] = "1"
diff --git a/meta/recipes-devtools/pkgconf/pkgconf_2.4.3.bb b/meta/recipes-devtools/pkgconf/pkgconf_2.5.1.bb
index 9695e37bbd..12ca075b5d 100644
--- a/meta/recipes-devtools/pkgconf/pkgconf_2.4.3.bb
+++ b/meta/recipes-devtools/pkgconf/pkgconf_2.5.1.bb
@@ -20,7 +20,7 @@ SRC_URI = "\
20 file://pkg-config-native.in \ 20 file://pkg-config-native.in \
21 file://pkg-config-esdk.in \ 21 file://pkg-config-esdk.in \
22" 22"
23SRC_URI[sha256sum] = "51203d99ed573fa7344bf07ca626f10c7cc094e0846ac4aa0023bd0c83c25a41" 23SRC_URI[sha256sum] = "cd05c9589b9f86ecf044c10a2269822bc9eb001eced2582cfffd658b0a50c243"
24 24
25inherit autotools 25inherit autotools
26 26
diff --git a/meta/recipes-devtools/pseudo/pseudo_git.bb b/meta/recipes-devtools/pseudo/pseudo_git.bb
index 385b6f34d9..ae89d4d8e3 100644
--- a/meta/recipes-devtools/pseudo/pseudo_git.bb
+++ b/meta/recipes-devtools/pseudo/pseudo_git.bb
@@ -12,8 +12,8 @@ SRC_URI:append:class-nativesdk = " \
12 file://older-glibc-symbols.patch" 12 file://older-glibc-symbols.patch"
13SRC_URI[prebuilt.sha256sum] = "ed9f456856e9d86359f169f46a70ad7be4190d6040282b84c8d97b99072485aa" 13SRC_URI[prebuilt.sha256sum] = "ed9f456856e9d86359f169f46a70ad7be4190d6040282b84c8d97b99072485aa"
14 14
15SRCREV = "2c43381180f9cfef4c0a8bb0c1658a86c3fcc876" 15SRCREV = "b4645cb30573c5b3d5e94b9d50e1e2f8beefe9be"
16PV = "1.9.0+git" 16PV = "1.9.2"
17 17
18# largefile and 64bit time_t support adds these macros via compiler flags globally 18# largefile and 64bit time_t support adds these macros via compiler flags globally
19# remove them for pseudo since pseudo intercepts some of the functions which will be 19# remove them for pseudo since pseudo intercepts some of the functions which will be
diff --git a/meta/recipes-devtools/python/python3-hypothesis_6.135.9.bb b/meta/recipes-devtools/python/python3-hypothesis_6.135.16.bb
index efc5229fbc..c0241b63e4 100644
--- a/meta/recipes-devtools/python/python3-hypothesis_6.135.9.bb
+++ b/meta/recipes-devtools/python/python3-hypothesis_6.135.16.bb
@@ -13,7 +13,7 @@ SRC_URI += " \
13 file://test_rle.py \ 13 file://test_rle.py \
14 " 14 "
15 15
16SRC_URI[sha256sum] = "a80a256268b8af3d34d62be30f6bf4a7d099b2b762621cc5f3f1de65e7b98543" 16SRC_URI[sha256sum] = "6131ea0b698e69bad62aae915988b8d00a6ac974351d0830db74c5fffc68c418"
17 17
18RDEPENDS:${PN} += " \ 18RDEPENDS:${PN} += " \
19 python3-attrs \ 19 python3-attrs \
diff --git a/meta/recipes-devtools/python/python3-license-expression_30.4.1.bb b/meta/recipes-devtools/python/python3-license-expression_30.4.3.bb
index ec613f6eaa..065284ed62 100644
--- a/meta/recipes-devtools/python/python3-license-expression_30.4.1.bb
+++ b/meta/recipes-devtools/python/python3-license-expression_30.4.3.bb
@@ -4,7 +4,7 @@ HOMEPAGE = "https://github.com/nexB/license-expression"
4LICENSE = "Apache-2.0" 4LICENSE = "Apache-2.0"
5LIC_FILES_CHKSUM = "file://apache-2.0.LICENSE;md5=86d3f3a95c324c9479bd8986968f4327" 5LIC_FILES_CHKSUM = "file://apache-2.0.LICENSE;md5=86d3f3a95c324c9479bd8986968f4327"
6 6
7SRC_URI[sha256sum] = "9f02105f9e0fcecba6a85dfbbed7d94ea1c3a70cf23ddbfb5adf3438a6f6fce0" 7SRC_URI[sha256sum] = "49f439fea91c4d1a642f9f2902b58db1d42396c5e331045f41ce50df9b40b1f2"
8 8
9inherit pypi ptest-python-pytest python_setuptools_build_meta 9inherit pypi ptest-python-pytest python_setuptools_build_meta
10PYPI_PACKAGE = "license_expression" 10PYPI_PACKAGE = "license_expression"
diff --git a/meta/recipes-devtools/python/python3-lxml_5.4.0.bb b/meta/recipes-devtools/python/python3-lxml_6.0.0.bb
index 126fbe99b4..56f5664c9b 100644
--- a/meta/recipes-devtools/python/python3-lxml_5.4.0.bb
+++ b/meta/recipes-devtools/python/python3-lxml_6.0.0.bb
@@ -18,7 +18,7 @@ LIC_FILES_CHKSUM = "file://LICENSES.txt;md5=e4c045ebad958ead4b48008f70838403 \
18 18
19DEPENDS += "libxml2 libxslt" 19DEPENDS += "libxml2 libxslt"
20 20
21SRC_URI[sha256sum] = "d12832e1dbea4be280b22fd0ea7c9b87f0d8fc51ba06e92dc62d52f804f78ebd" 21SRC_URI[sha256sum] = "032e65120339d44cdc3efc326c9f660f5f7205f3a535c1fdbf898b29ea01fb72"
22 22
23SRC_URI += "${PYPI_SRC_URI}" 23SRC_URI += "${PYPI_SRC_URI}"
24inherit pkgconfig pypi setuptools3 24inherit pkgconfig pypi setuptools3
diff --git a/meta/recipes-devtools/python/python3-markdown_3.8.bb b/meta/recipes-devtools/python/python3-markdown_3.8.2.bb
index 09c2f3435b..d7ab34b915 100644
--- a/meta/recipes-devtools/python/python3-markdown_3.8.bb
+++ b/meta/recipes-devtools/python/python3-markdown_3.8.2.bb
@@ -5,7 +5,7 @@ LIC_FILES_CHKSUM = "file://LICENSE.md;md5=ec58cdf7cfed06a21f7a9362627a5480"
5 5
6inherit pypi python_setuptools_build_meta 6inherit pypi python_setuptools_build_meta
7 7
8SRC_URI[sha256sum] = "7df81e63f0df5c4b24b7d156eb81e4690595239b7d70937d0409f1b0de319c6f" 8SRC_URI[sha256sum] = "247b9a70dd12e27f67431ce62523e675b866d254f900c4fe75ce3dda62237c45"
9 9
10BBCLASSEXTEND = "native nativesdk" 10BBCLASSEXTEND = "native nativesdk"
11 11
diff --git a/meta/recipes-devtools/python/python3-numpy_2.3.0.bb b/meta/recipes-devtools/python/python3-numpy_2.3.1.bb
index 34a14f7ca6..bc718d37c4 100644
--- a/meta/recipes-devtools/python/python3-numpy_2.3.0.bb
+++ b/meta/recipes-devtools/python/python3-numpy_2.3.1.bb
@@ -12,7 +12,7 @@ SRC_URI = "${GITHUB_BASE_URI}/download/v${PV}/${SRCNAME}-${PV}.tar.gz \
12 file://fix_reproducibility.patch \ 12 file://fix_reproducibility.patch \
13 file://run-ptest \ 13 file://run-ptest \
14 " 14 "
15SRC_URI[sha256sum] = "581f87f9e9e9db2cba2141400e160e9dd644ee248788d6f90636eeb8fd9260a6" 15SRC_URI[sha256sum] = "1ec9ae20a4226da374362cca3c62cd753faf2f951440b0e3b98e93c235441d2b"
16 16
17GITHUB_BASE_URI = "https://github.com/numpy/numpy/releases" 17GITHUB_BASE_URI = "https://github.com/numpy/numpy/releases"
18UPSTREAM_CHECK_REGEX = "releases/tag/v?(?P<pver>\d+(\.\d+)+)$" 18UPSTREAM_CHECK_REGEX = "releases/tag/v?(?P<pver>\d+(\.\d+)+)$"
diff --git a/meta/recipes-devtools/python/python3-pdm_2.25.1.bb b/meta/recipes-devtools/python/python3-pdm_2.25.3.bb
index d9331ba72c..f3ec4e60d3 100644
--- a/meta/recipes-devtools/python/python3-pdm_2.25.1.bb
+++ b/meta/recipes-devtools/python/python3-pdm_2.25.3.bb
@@ -4,7 +4,7 @@ LICENSE = "MIT"
4SECTION = "devel/python" 4SECTION = "devel/python"
5LIC_FILES_CHKSUM = "file://LICENSE;md5=2eb31a2cc1a758c34b499f287dd04ef2" 5LIC_FILES_CHKSUM = "file://LICENSE;md5=2eb31a2cc1a758c34b499f287dd04ef2"
6 6
7SRC_URI[sha256sum] = "3145251f37a3f94fa211ade992e7db7792da4c3e8e3eeeb1993d952adebe0b96" 7SRC_URI[sha256sum] = "6d0820f805dacf64d55a7fe56777e7d8349a2ee35efc3006f29b4573d1311c84"
8 8
9inherit pypi python_setuptools_build_meta 9inherit pypi python_setuptools_build_meta
10 10
diff --git a/meta/recipes-devtools/python/python3-pygments_2.19.1.bb b/meta/recipes-devtools/python/python3-pygments_2.19.2.bb
index de24ed3f11..a1f73b441d 100644
--- a/meta/recipes-devtools/python/python3-pygments_2.19.1.bb
+++ b/meta/recipes-devtools/python/python3-pygments_2.19.2.bb
@@ -5,7 +5,7 @@ LICENSE = "BSD-2-Clause"
5LIC_FILES_CHKSUM = "file://LICENSE;md5=36a13c90514e2899f1eba7f41c3ee592" 5LIC_FILES_CHKSUM = "file://LICENSE;md5=36a13c90514e2899f1eba7f41c3ee592"
6 6
7inherit python_hatchling 7inherit python_hatchling
8SRC_URI[sha256sum] = "61c16d2a8576dc0649d9f39e089b5f02bcd27fba10d8fb4dcc28173f7a45151f" 8SRC_URI[sha256sum] = "636cb2477cec7f8952536970bc533bc43743542f70392ae026374600add5b887"
9 9
10inherit pypi 10inherit pypi
11 11
diff --git a/meta/recipes-devtools/python/python3-sphinx-argparse_0.5.2.bb b/meta/recipes-devtools/python/python3-sphinx-argparse_0.5.2.bb
new file mode 100644
index 0000000000..554fb3eb51
--- /dev/null
+++ b/meta/recipes-devtools/python/python3-sphinx-argparse_0.5.2.bb
@@ -0,0 +1,13 @@
1SUMMARY = "A sphinx extension that automatically documents argparse commands and options"
2HOMEPAGE = "https://sphinx-argparse.readthedocs.io/"
3LICENSE = "MIT"
4LIC_FILES_CHKSUM = "file://LICENCE.rst;md5=5c1cd8f13774629fee215681e66a1056"
5
6SRC_URI[sha256sum] = "e5352f8fa894b6fb6fda0498ba28a9f8d435971ef4bbc1a6c9c6414e7644f032"
7
8PYPI_PACKAGE = "sphinx_argparse"
9UPSTREAM_CHECK_PYPI_PACKAGE = "${PYPI_PACKAGE}"
10
11inherit pypi python_flit_core
12
13BBCLASSEXTEND = "native nativesdk"
diff --git a/meta/recipes-devtools/python/python3-sphinx-copybutton_0.5.2.bb b/meta/recipes-devtools/python/python3-sphinx-copybutton_0.5.2.bb
new file mode 100644
index 0000000000..0441804661
--- /dev/null
+++ b/meta/recipes-devtools/python/python3-sphinx-copybutton_0.5.2.bb
@@ -0,0 +1,10 @@
1SUMMARY = "Add a copy button to code blocks in Sphinx"
2HOMEPAGE = "https://sphinx-copybutton.readthedocs.io"
3LICENSE = "MIT"
4LIC_FILES_CHKSUM = "file://LICENSE;md5=c60e920848b6d2ecec51ea44a1a33bf0"
5
6SRC_URI[sha256sum] = "4cf17c82fb9646d1bc9ca92ac280813a3b605d8c421225fd9913154103ee1fbd"
7
8inherit setuptools3 pypi
9
10BBCLASSEXTEND = "native nativesdk"
diff --git a/meta/recipes-devtools/python/python3-urllib3_2.4.0.bb b/meta/recipes-devtools/python/python3-urllib3_2.5.0.bb
index 7a4bffc05e..a4f3995730 100644
--- a/meta/recipes-devtools/python/python3-urllib3_2.4.0.bb
+++ b/meta/recipes-devtools/python/python3-urllib3_2.5.0.bb
@@ -3,7 +3,7 @@ HOMEPAGE = "https://github.com/urllib3/urllib3"
3LICENSE = "MIT" 3LICENSE = "MIT"
4LIC_FILES_CHKSUM = "file://LICENSE.txt;md5=52d273a3054ced561275d4d15260ecda" 4LIC_FILES_CHKSUM = "file://LICENSE.txt;md5=52d273a3054ced561275d4d15260ecda"
5 5
6SRC_URI[sha256sum] = "414bc6535b787febd7567804cc015fee39daab8ad86268f1310a9250697de466" 6SRC_URI[sha256sum] = "3fc47733c7e419d4bc3f6b3dc2b4f890bb743906a30d56ba4a5bfa4bbff92760"
7 7
8inherit pypi python_hatchling 8inherit pypi python_hatchling
9 9
diff --git a/meta/recipes-devtools/python/python3-wheel_0.45.1.bb b/meta/recipes-devtools/python/python3-wheel_0.46.1.bb
index 8274e83747..058af2f0e7 100644
--- a/meta/recipes-devtools/python/python3-wheel_0.45.1.bb
+++ b/meta/recipes-devtools/python/python3-wheel_0.46.1.bb
@@ -4,9 +4,14 @@ SECTION = "devel/python"
4LICENSE = "MIT" 4LICENSE = "MIT"
5LIC_FILES_CHKSUM = "file://LICENSE.txt;md5=7ffb0db04527cfe380e4f2726bd05ebf" 5LIC_FILES_CHKSUM = "file://LICENSE.txt;md5=7ffb0db04527cfe380e4f2726bd05ebf"
6 6
7SRC_URI[sha256sum] = "661e1abd9198507b1409a20c02106d9670b2576e916d58f520316666abca6729" 7SRC_URI[sha256sum] = "fd477efb5da0f7df1d3c76c73c14394002c844451bd63229d8570f376f5e6a38"
8 8
9inherit python_flit_core pypi 9inherit python_flit_core pypi ptest-python-pytest
10
11RDEPENDS:${PN} += "python3-packaging"
12
13# One test is skipped but requires the "full" python3-flit, not just python3-flit-core
14RDEPENDS:${PN}-ptest += "python3-setuptools"
10 15
11BBCLASSEXTEND = "native nativesdk" 16BBCLASSEXTEND = "native nativesdk"
12 17
diff --git a/meta/recipes-devtools/repo/repo_2.55.2.bb b/meta/recipes-devtools/repo/repo_2.56.bb
index 882f3e6312..efdb9bd0c9 100644
--- a/meta/recipes-devtools/repo/repo_2.55.2.bb
+++ b/meta/recipes-devtools/repo/repo_2.56.bb
@@ -11,7 +11,7 @@ LIC_FILES_CHKSUM = "file://LICENSE;md5=3b83ef96387f14655fc854ddc3c6bd57"
11 11
12SRC_URI = "git://gerrit.googlesource.com/git-repo.git;protocol=https;branch=main;tag=v${PV} \ 12SRC_URI = "git://gerrit.googlesource.com/git-repo.git;protocol=https;branch=main;tag=v${PV} \
13 " 13 "
14SRCREV = "b262d0e4619c406a2708856ed312091d21c5bf39" 14SRCREV = "99b5a17f2c951fe5979100c36e7e1dbb4c61b36c"
15 15
16MIRRORS += "git://gerrit.googlesource.com/git-repo.git git://github.com/GerritCodeReview/git-repo.git" 16MIRRORS += "git://gerrit.googlesource.com/git-repo.git git://github.com/GerritCodeReview/git-repo.git"
17 17
diff --git a/meta/recipes-devtools/rpm-sequoia/rpm-sequoia_1.7.0.bb b/meta/recipes-devtools/rpm-sequoia/rpm-sequoia_1.7.0.bb
index 17d5a747ff..46f9ee8548 100644
--- a/meta/recipes-devtools/rpm-sequoia/rpm-sequoia_1.7.0.bb
+++ b/meta/recipes-devtools/rpm-sequoia/rpm-sequoia_1.7.0.bb
@@ -26,7 +26,7 @@ CARGO_INSTALL_LIBRARIES = "1"
26do_compile:prepend () { 26do_compile:prepend () {
27 # rpm-sequoia.pc is generated in the source directory 27 # rpm-sequoia.pc is generated in the source directory
28 # but the target directory does not exist there. 28 # but the target directory does not exist there.
29 mkdir -p ${S}/target/release 29 mkdir -p ${S}/target/${BUILD_DIR}
30 30
31 # From rpm-sequoia's README.md: 31 # From rpm-sequoia's README.md:
32 # 32 #
@@ -58,7 +58,7 @@ do_install:append () {
58 58
59 # rpm-sequoia does not install its pkgconfig file. Do it manually. 59 # rpm-sequoia does not install its pkgconfig file. Do it manually.
60 mkdir -p ${D}${libdir}/pkgconfig 60 mkdir -p ${D}${libdir}/pkgconfig
61 install -m644 ${S}/target/release/rpm-sequoia.pc ${D}${libdir}/pkgconfig 61 install -m644 ${S}/target/${BUILD_DIR}/rpm-sequoia.pc ${D}${libdir}/pkgconfig
62} 62}
63 63
64do_install_ptest:append () { 64do_install_ptest:append () {
diff --git a/meta/recipes-devtools/tcf-agent/tcf-agent_1.8.0.bb b/meta/recipes-devtools/tcf-agent/tcf-agent_1.8.0.bb
index 1639ae84e9..f008c0c6de 100644
--- a/meta/recipes-devtools/tcf-agent/tcf-agent_1.8.0.bb
+++ b/meta/recipes-devtools/tcf-agent/tcf-agent_1.8.0.bb
@@ -49,6 +49,12 @@ CFLAGS:append:riscv64 = " ${LCL_STOP_SERVICES}"
49CFLAGS:append:riscv32 = " ${LCL_STOP_SERVICES}" 49CFLAGS:append:riscv32 = " ${LCL_STOP_SERVICES}"
50CFLAGS:append:loongarch64 = " ${LCL_STOP_SERVICES}" 50CFLAGS:append:loongarch64 = " ${LCL_STOP_SERVICES}"
51 51
52# This works with gcc-ranlib wrapper only because it exists without error if nothing
53# is passed as argument but binutils ranlib and llvm ranlib do not and expect an input
54# passing $@ ensures that Makefile default target which is the archive name in tcf makefiles
55# is passed to RANLIB, ensures that whichever ranlib is used, the behavior is identical
56RANLIB:append = " $@"
57
52do_install() { 58do_install() {
53 oe_runmake install INSTALLROOT=${D} 59 oe_runmake install INSTALLROOT=${D}
54 install -d ${D}${sysconfdir}/init.d/ 60 install -d ${D}${sysconfdir}/init.d/
diff --git a/meta/recipes-devtools/tcltk/tcl_9.0.1.bb b/meta/recipes-devtools/tcltk/tcl_9.0.1.bb
index 70aa9b606c..765dc64e4d 100644
--- a/meta/recipes-devtools/tcltk/tcl_9.0.1.bb
+++ b/meta/recipes-devtools/tcltk/tcl_9.0.1.bb
@@ -51,7 +51,7 @@ do_install() {
51 ln -sf ./tclsh${VER} ${D}${bindir}/tclsh 51 ln -sf ./tclsh${VER} ${D}${bindir}/tclsh
52 ln -sf tclsh9.0 ${D}${bindir}/tclsh${VER} 52 ln -sf tclsh9.0 ${D}${bindir}/tclsh${VER}
53 sed -i "s;-L${B};-L${STAGING_LIBDIR};g" tclConfig.sh 53 sed -i "s;-L${B};-L${STAGING_LIBDIR};g" tclConfig.sh
54 sed -i "s;'${WORKDIR};'${STAGING_INCDIR};g" tclConfig.sh 54 sed -i "s;'${UNPACKDIR};'${STAGING_INCDIR};g" tclConfig.sh
55 install -d ${D}${bindir_crossscripts} 55 install -d ${D}${bindir_crossscripts}
56 install -m 0755 tclConfig.sh ${D}${bindir_crossscripts} 56 install -m 0755 tclConfig.sh ${D}${bindir_crossscripts}
57 install -m 0755 tclConfig.sh ${D}${libdir} 57 install -m 0755 tclConfig.sh ${D}${libdir}
@@ -105,6 +105,7 @@ tcl_package_preprocess() {
105 -e "s;-L${STAGING_LIBDIR};-L${libdir};g" \ 105 -e "s;-L${STAGING_LIBDIR};-L${libdir};g" \
106 -e "s;${STAGING_INCDIR};${includedir};g" \ 106 -e "s;${STAGING_INCDIR};${includedir};g" \
107 -e "s;--sysroot=${RECIPE_SYSROOT};;g" \ 107 -e "s;--sysroot=${RECIPE_SYSROOT};;g" \
108 -e "s;${B};${libdir};g" ${PKGD}${libdir}/tclConfig.sh \
108 ${PKGD}${libdir}/tclConfig.sh 109 ${PKGD}${libdir}/tclConfig.sh
109 110
110 rm -f ${PKGD}${bindir_crossscripts}/tclConfig.sh 111 rm -f ${PKGD}${bindir_crossscripts}/tclConfig.sh
diff --git a/meta/recipes-extended/ethtool/ethtool/avoid_parallel_tests.patch b/meta/recipes-extended/ethtool/ethtool/avoid_parallel_tests.patch
index 4affc332a9..79232a6b00 100644
--- a/meta/recipes-extended/ethtool/ethtool/avoid_parallel_tests.patch
+++ b/meta/recipes-extended/ethtool/ethtool/avoid_parallel_tests.patch
@@ -1,4 +1,4 @@
1From 755cf01b02e6ec8c8acb79558cbad28e301519b3 Mon Sep 17 00:00:00 2001 1From 27757ce1a8956591d22e7f9dc8cef37e37be8e9f Mon Sep 17 00:00:00 2001
2From: Tudor Florea <tudor.florea@enea.com> 2From: Tudor Florea <tudor.florea@enea.com>
3Date: Wed, 28 May 2014 18:59:54 +0200 3Date: Wed, 28 May 2014 18:59:54 +0200
4Subject: [PATCH] ethtool: use serial-tests config needed by ptest. 4Subject: [PATCH] ethtool: use serial-tests config needed by ptest.
@@ -14,10 +14,10 @@ Upstream-Status: Inappropriate
14 1 file changed, 1 insertion(+), 1 deletion(-) 14 1 file changed, 1 insertion(+), 1 deletion(-)
15 15
16diff --git a/configure.ac b/configure.ac 16diff --git a/configure.ac b/configure.ac
17index db71394..5e93135 100644 17index f5fdc8b..3eab387 100644
18--- a/configure.ac 18--- a/configure.ac
19+++ b/configure.ac 19+++ b/configure.ac
20@@ -3,7 +3,7 @@ AC_INIT(ethtool, 6.14, netdev@vger.kernel.org) 20@@ -3,7 +3,7 @@ AC_INIT(ethtool, 6.15, netdev@vger.kernel.org)
21 AC_PREREQ(2.52) 21 AC_PREREQ(2.52)
22 AC_CONFIG_MACRO_DIR([m4]) 22 AC_CONFIG_MACRO_DIR([m4])
23 AC_CONFIG_SRCDIR([ethtool.c]) 23 AC_CONFIG_SRCDIR([ethtool.c])
diff --git a/meta/recipes-extended/ethtool/ethtool_6.14.bb b/meta/recipes-extended/ethtool/ethtool_6.15.bb
index 41164ac6ca..eb6b272d4a 100644
--- a/meta/recipes-extended/ethtool/ethtool_6.14.bb
+++ b/meta/recipes-extended/ethtool/ethtool_6.15.bb
@@ -11,7 +11,7 @@ SRC_URI = "${KERNELORG_MIRROR}/software/network/ethtool/ethtool-${PV}.tar.gz \
11 file://avoid_parallel_tests.patch \ 11 file://avoid_parallel_tests.patch \
12 " 12 "
13 13
14SRC_URI[sha256sum] = "3dbfc910513d1fef683f27ab12325cc88551abffae66d0ad3afe2a13317d2339" 14SRC_URI[sha256sum] = "5d21a75b54c5e617b8ac0fe161e2ef3a75ecdf569ab64831474882dd3ece6077"
15 15
16UPSTREAM_CHECK_URI = "https://www.kernel.org/pub/software/network/ethtool/" 16UPSTREAM_CHECK_URI = "https://www.kernel.org/pub/software/network/ethtool/"
17 17
diff --git a/meta/recipes-extended/libarchive/libarchive_3.8.1.bb b/meta/recipes-extended/libarchive/libarchive_3.8.1.bb
index 472b5820f0..69520b1bad 100644
--- a/meta/recipes-extended/libarchive/libarchive_3.8.1.bb
+++ b/meta/recipes-extended/libarchive/libarchive_3.8.1.bb
@@ -30,6 +30,7 @@ PACKAGECONFIG[zstd] = "--with-zstd,--without-zstd,zstd,"
30EXTRA_OECONF += "--enable-largefile --without-iconv" 30EXTRA_OECONF += "--enable-largefile --without-iconv"
31 31
32SRC_URI = "https://libarchive.org/downloads/libarchive-${PV}.tar.gz" 32SRC_URI = "https://libarchive.org/downloads/libarchive-${PV}.tar.gz"
33UPSTREAM_CHECK_URI = "https://www.libarchive.org/"
33 34
34SRC_URI[sha256sum] = "bde832a5e3344dc723cfe9cc37f8e54bde04565bfe6f136bc1bd31ab352e9fab" 35SRC_URI[sha256sum] = "bde832a5e3344dc723cfe9cc37f8e54bde04565bfe6f136bc1bd31ab352e9fab"
35 36
diff --git a/meta/recipes-extended/mingetty/mingetty_1.08.bb b/meta/recipes-extended/mingetty/mingetty_1.08.bb
index be059995e7..892233054b 100644
--- a/meta/recipes-extended/mingetty/mingetty_1.08.bb
+++ b/meta/recipes-extended/mingetty/mingetty_1.08.bb
@@ -15,7 +15,7 @@ EXTRA_OEMAKE = "CC='${CC}' \
15 CFLAGS='${CFLAGS} -D_GNU_SOURCE'" 15 CFLAGS='${CFLAGS} -D_GNU_SOURCE'"
16 16
17do_install(){ 17do_install(){
18 sed -i -e "s;SBINDIR=/sbin;SBINDIR=$base_sbindir;" ${S}/Makefile 18 sed -i -e "/^SBINDIR=/c SBINDIR=$base_sbindir" ${S}/Makefile
19 install -d ${D}${mandir}/man8 ${D}/${base_sbindir} 19 install -d ${D}${mandir}/man8 ${D}/${base_sbindir}
20 oe_runmake install DESTDIR=${D} 20 oe_runmake install DESTDIR=${D}
21} 21}
diff --git a/meta/recipes-extended/pam/libpam/0001-meson.build-correct-check-for-existence-of-two-prepr.patch b/meta/recipes-extended/pam/libpam/0001-meson.build-correct-check-for-existence-of-two-prepr.patch
deleted file mode 100644
index ef087ffc06..0000000000
--- a/meta/recipes-extended/pam/libpam/0001-meson.build-correct-check-for-existence-of-two-prepr.patch
+++ /dev/null
@@ -1,40 +0,0 @@
1From 9b5182d4781bcd6fb37a4030faf325965fde3e93 Mon Sep 17 00:00:00 2001
2From: Alexander Kanavin <alex@linutronix.de>
3Date: Thu, 28 Nov 2024 20:32:17 +0100
4Subject: [PATCH] meson: correct check for existence of two preprocessor
5 defines
6
7sizeof is meant for *types*, and in case of cross compiling
8the test program produced by it has incorrect syntax
9 __NR_keyctl something;
10and will always fail to compile.
11
12* meson.build: Use cc.get_define() instead of cc.sizeof() to check for
13preprocessor symbols.
14
15Co-authored-by: Dmitry V. Levin <ldv@strace.io>
16Upstream-Status: Backport [https://github.com/linux-pam/linux-pam/pull/861]
17Signed-off-by: Alexander Kanavin <alex@linutronix.de>
18---
19 meson.build | 4 ++--
20 1 file changed, 2 insertions(+), 2 deletions(-)
21
22diff --git a/meson.build b/meson.build
23index f6a7dafe9..307fed0aa 100644
24--- a/meson.build
25+++ b/meson.build
26@@ -198,12 +198,12 @@ foreach ident: check_functions
27 endif
28 endforeach
29
30-enable_pam_keyinit = cc.sizeof('__NR_keyctl', prefix: '#include <sys/syscall.h>') > 0
31+enable_pam_keyinit = cc.get_define('__NR_keyctl', prefix: '#include <sys/syscall.h>') != ''
32
33 if get_option('mailspool') != ''
34 cdata.set_quoted('PAM_PATH_MAILDIR', get_option('mailspool'))
35 else
36- have = cc.sizeof('_PATH_MAILDIR', prefix: '#include <paths.h>') > 0
37+ have = cc.get_define('_PATH_MAILDIR', prefix: '#include <paths.h>') != ''
38 cdata.set('PAM_PATH_MAILDIR', have ? '_PATH_MAILDIR' : '"/var/spool/mail"')
39 endif
40
diff --git a/meta/recipes-extended/pam/libpam_1.7.0.bb b/meta/recipes-extended/pam/libpam_1.7.1.bb
index dea9ff592b..565b00c264 100644
--- a/meta/recipes-extended/pam/libpam_1.7.0.bb
+++ b/meta/recipes-extended/pam/libpam_1.7.1.bb
@@ -22,10 +22,9 @@ SRC_URI = "${GITHUB_BASE_URI}/download/v${PV}/Linux-PAM-${PV}.tar.xz \
22 file://pam.d/other \ 22 file://pam.d/other \
23 file://run-ptest \ 23 file://run-ptest \
24 file://pam-volatiles.conf \ 24 file://pam-volatiles.conf \
25 file://0001-meson.build-correct-check-for-existence-of-two-prepr.patch \
26 " 25 "
27 26
28SRC_URI[sha256sum] = "57dcd7a6b966ecd5bbd95e1d11173734691e16b68692fa59661cdae9b13b1697" 27SRC_URI[sha256sum] = "21dbcec6e01dd578f14789eac9024a18941e6f2702a05cf91b28c232eeb26ab0"
29 28
30DEPENDS = "bison-native flex-native libxml2-native virtual/crypt" 29DEPENDS = "bison-native flex-native libxml2-native virtual/crypt"
31 30
diff --git a/meta/recipes-extended/procps/procps_4.0.5.bb b/meta/recipes-extended/procps/procps_4.0.5.bb
index 2b41be3930..d568cc831e 100644
--- a/meta/recipes-extended/procps/procps_4.0.5.bb
+++ b/meta/recipes-extended/procps/procps_4.0.5.bb
@@ -12,7 +12,7 @@ DEPENDS = "ncurses"
12 12
13inherit autotools gettext pkgconfig update-alternatives 13inherit autotools gettext pkgconfig update-alternatives
14 14
15SRC_URI = "git://gitlab.com/procps-ng/procps.git;protocol=https;branch=master \ 15SRC_URI = "git://gitlab.com/procps-ng/procps.git;protocol=https;branch=master;tag=v${PV} \
16 file://sysctl.conf \ 16 file://sysctl.conf \
17 " 17 "
18SRCREV = "f46b2f7929cdfe2913ed0a7f585b09d6adbf994e" 18SRCREV = "f46b2f7929cdfe2913ed0a7f585b09d6adbf994e"
diff --git a/meta/recipes-extended/psmisc/psmisc_23.7.bb b/meta/recipes-extended/psmisc/psmisc_23.7.bb
index fff1f218f4..44f8530977 100644
--- a/meta/recipes-extended/psmisc/psmisc_23.7.bb
+++ b/meta/recipes-extended/psmisc/psmisc_23.7.bb
@@ -12,7 +12,7 @@ DEPENDS = "ncurses virtual/libintl"
12LICENSE = "GPL-2.0-only" 12LICENSE = "GPL-2.0-only"
13LIC_FILES_CHKSUM = "file://COPYING;md5=0636e73ff0215e8d672dc4c32c317bb3" 13LIC_FILES_CHKSUM = "file://COPYING;md5=0636e73ff0215e8d672dc4c32c317bb3"
14 14
15SRC_URI = "git://gitlab.com/psmisc/psmisc.git;protocol=https;branch=master \ 15SRC_URI = "git://gitlab.com/psmisc/psmisc.git;protocol=https;branch=master;tag=v${PV} \
16 " 16 "
17SRCREV = "9091d6dbcce3d8fb87adf9249a2eb346d25a562c" 17SRCREV = "9091d6dbcce3d8fb87adf9249a2eb346d25a562c"
18 18
diff --git a/meta/recipes-extended/shadow/shadow_4.17.4.bb b/meta/recipes-extended/shadow/shadow_4.18.0.bb
index 73942888b6..6842a46dd7 100644
--- a/meta/recipes-extended/shadow/shadow_4.17.4.bb
+++ b/meta/recipes-extended/shadow/shadow_4.18.0.bb
@@ -25,7 +25,7 @@ SRC_URI:append:class-native = " \
25 file://commonio.c-fix-unexpected-open-failure-in-chroot-env.patch \ 25 file://commonio.c-fix-unexpected-open-failure-in-chroot-env.patch \
26 file://disable_syslog.patch \ 26 file://disable_syslog.patch \
27 " 27 "
28SRC_URI[sha256sum] = "0a288c251f339846af6bdfd4447b196153204deba42407bce5b0917998322e9b" 28SRC_URI[sha256sum] = "ae486ce4c0bce55c42d76d8478e428c41586f1da2f89fbf5228243fb4d849db4"
29UPSTREAM_CHECK_REGEX = "releases/tag/v?(?P<pver>\d+(\.\d+)+)$" 29UPSTREAM_CHECK_REGEX = "releases/tag/v?(?P<pver>\d+(\.\d+)+)$"
30 30
31# Additional Policy files for PAM 31# Additional Policy files for PAM
diff --git a/meta/recipes-extended/sudo/files/0001-sudo.conf.in-fix-conflict-with-multilib.patch b/meta/recipes-extended/sudo/files/0001-sudo.conf.in-fix-conflict-with-multilib.patch
index ec0384e257..1989c5abd7 100644
--- a/meta/recipes-extended/sudo/files/0001-sudo.conf.in-fix-conflict-with-multilib.patch
+++ b/meta/recipes-extended/sudo/files/0001-sudo.conf.in-fix-conflict-with-multilib.patch
@@ -1,4 +1,4 @@
1From 61ae82a2ba502492b6a78f248258abb71daeb227 Mon Sep 17 00:00:00 2001 1From 8c69192754ba73dd6e3273728a21aa73988f4bfb Mon Sep 17 00:00:00 2001
2From: Kai Kang <kai.kang@windriver.com> 2From: Kai Kang <kai.kang@windriver.com>
3Date: Tue, 17 Nov 2020 11:13:40 +0800 3Date: Tue, 17 Nov 2020 11:13:40 +0800
4Subject: [PATCH] sudo.conf.in: fix conflict with multilib 4Subject: [PATCH] sudo.conf.in: fix conflict with multilib
@@ -20,7 +20,7 @@ Upstream-Status: Inappropriate [OE configuration specific]
20 1 file changed, 4 insertions(+), 4 deletions(-) 20 1 file changed, 4 insertions(+), 4 deletions(-)
21 21
22diff --git a/examples/sudo.conf.in b/examples/sudo.conf.in 22diff --git a/examples/sudo.conf.in b/examples/sudo.conf.in
23index 2187457..0908d24 100644 23index bdd676c..094341c 100644
24--- a/examples/sudo.conf.in 24--- a/examples/sudo.conf.in
25+++ b/examples/sudo.conf.in 25+++ b/examples/sudo.conf.in
26@@ -4,7 +4,7 @@ 26@@ -4,7 +4,7 @@
@@ -52,7 +52,7 @@ index 2187457..0908d24 100644
52 # Sudo plugin directory: 52 # Sudo plugin directory:
53@@ -74,7 +74,7 @@ 53@@ -74,7 +74,7 @@
54 # The default directory to use when searching for plugins that are 54 # The default directory to use when searching for plugins that are
55 # specified without a fully qualified path name. 55 # specified without a fully-qualified path name.
56 # 56 #
57-#Path plugin_dir @plugindir@ 57-#Path plugin_dir @plugindir@
58+#Path plugin_dir $plugindir 58+#Path plugin_dir $plugindir
diff --git a/meta/recipes-extended/sudo/sudo.inc b/meta/recipes-extended/sudo/sudo.inc
index 0afbf669f0..a23de1fcf7 100644
--- a/meta/recipes-extended/sudo/sudo.inc
+++ b/meta/recipes-extended/sudo/sudo.inc
@@ -4,7 +4,7 @@ HOMEPAGE = "http://www.sudo.ws"
4BUGTRACKER = "http://www.sudo.ws/bugs/" 4BUGTRACKER = "http://www.sudo.ws/bugs/"
5SECTION = "admin" 5SECTION = "admin"
6LICENSE = "ISC & BSD-3-Clause & BSD-2-Clause & Zlib" 6LICENSE = "ISC & BSD-3-Clause & BSD-2-Clause & Zlib"
7LIC_FILES_CHKSUM = "file://LICENSE.md;md5=0a6876cbeb2aa51837935ba3fd82ee87 \ 7LIC_FILES_CHKSUM = "file://LICENSE.md;md5=2841c822e587db145364ca95e9be2ffa \
8 file://plugins/sudoers/redblack.c;beginline=1;endline=46;md5=03e35317699ba00b496251e0dfe9f109 \ 8 file://plugins/sudoers/redblack.c;beginline=1;endline=46;md5=03e35317699ba00b496251e0dfe9f109 \
9 file://lib/util/reallocarray.c;beginline=3;endline=15;md5=397dd45c7683e90b9f8bf24638cf03bf \ 9 file://lib/util/reallocarray.c;beginline=3;endline=15;md5=397dd45c7683e90b9f8bf24638cf03bf \
10 file://lib/util/fnmatch.c;beginline=3;endline=27;md5=004d7d2866ba1f5b41174906849d2e0f \ 10 file://lib/util/fnmatch.c;beginline=3;endline=27;md5=004d7d2866ba1f5b41174906849d2e0f \
diff --git a/meta/recipes-extended/sudo/sudo_1.9.16p2.bb b/meta/recipes-extended/sudo/sudo_1.9.17.bb
index fbe507ad32..71d48f448d 100644
--- a/meta/recipes-extended/sudo/sudo_1.9.16p2.bb
+++ b/meta/recipes-extended/sudo/sudo_1.9.17.bb
@@ -7,7 +7,7 @@ SRC_URI = "https://www.sudo.ws/dist/sudo-${PV}.tar.gz \
7 7
8PAM_SRC_URI = "file://sudo.pam" 8PAM_SRC_URI = "file://sudo.pam"
9 9
10SRC_URI[sha256sum] = "976aa56d3e3b2a75593307864288addb748c9c136e25d95a9cc699aafa77239c" 10SRC_URI[sha256sum] = "3f212c69d534d5822b492d099abb02a593f91ca99f5afde5cb9bd3e1dcdad069"
11 11
12DEPENDS += " virtual/crypt ${@bb.utils.contains('DISTRO_FEATURES', 'pam', 'libpam', '', d)}" 12DEPENDS += " virtual/crypt ${@bb.utils.contains('DISTRO_FEATURES', 'pam', 'libpam', '', d)}"
13RDEPENDS:${PN} += " ${@bb.utils.contains('DISTRO_FEATURES', 'pam', 'pam-plugin-limits pam-plugin-keyinit', '', d)}" 13RDEPENDS:${PN} += " ${@bb.utils.contains('DISTRO_FEATURES', 'pam', 'pam-plugin-limits pam-plugin-keyinit', '', d)}"
diff --git a/meta/recipes-gnome/libadwaita/libadwaita_1.7.4.bb b/meta/recipes-gnome/libadwaita/libadwaita_1.7.5.bb
index e2bfb0984e..e8a8d21f02 100644
--- a/meta/recipes-gnome/libadwaita/libadwaita_1.7.4.bb
+++ b/meta/recipes-gnome/libadwaita/libadwaita_1.7.5.bb
@@ -11,7 +11,7 @@ DEPENDS = " \
11 11
12inherit gnomebase gobject-introspection gi-docgen vala features_check 12inherit gnomebase gobject-introspection gi-docgen vala features_check
13 13
14SRC_URI[archive.sha256sum] = "a012bef97ac0d726b969b18099f75fc5eee9e92c012af9672b827350d53ae970" 14SRC_URI[archive.sha256sum] = "c2c1813c967d45c0f49e907f8c26e66f68fe49dec6436e2d3349350ac9efbd2e"
15 15
16ANY_OF_DISTRO_FEATURES = "${GTK3DISTROFEATURES}" 16ANY_OF_DISTRO_FEATURES = "${GTK3DISTROFEATURES}"
17REQUIRED_DISTRO_FEATURES = "opengl" 17REQUIRED_DISTRO_FEATURES = "opengl"
diff --git a/meta/recipes-graphics/mesa/mesa.inc b/meta/recipes-graphics/mesa/mesa.inc
index 6b42a238cc..3d9e9ec91f 100644
--- a/meta/recipes-graphics/mesa/mesa.inc
+++ b/meta/recipes-graphics/mesa/mesa.inc
@@ -20,8 +20,8 @@ SRC_URI = "https://archive.mesa3d.org/mesa-${PV}.tar.xz \
20 file://0001-dont-build-clover-frontend.patch \ 20 file://0001-dont-build-clover-frontend.patch \
21" 21"
22 22
23SRC_URI[sha256sum] = "ffcb6cadb5fd356d56008e6308641dfe4b2929f30139f6585436ca6e3cddba7f" 23SRC_URI[sha256sum] = "164872a5e792408aa72fecd52b7be6409724c4ad81700798675a7d801d976704"
24PV = "25.1.3" 24PV = "25.1.4"
25 25
26UPSTREAM_CHECK_GITTAGREGEX = "mesa-(?P<pver>\d+(\.\d+)+)" 26UPSTREAM_CHECK_GITTAGREGEX = "mesa-(?P<pver>\d+(\.\d+)+)"
27 27
diff --git a/meta/recipes-graphics/pango/pango_1.56.3.bb b/meta/recipes-graphics/pango/pango_1.56.4.bb
index 479327dfde..5de51508fe 100644
--- a/meta/recipes-graphics/pango/pango_1.56.3.bb
+++ b/meta/recipes-graphics/pango/pango_1.56.4.bb
@@ -18,7 +18,7 @@ UPSTREAM_CHECK_REGEX = "pango-(?P<pver>\d+\.(?!9\d+)\d+\.\d+)"
18GIR_MESON_ENABLE_FLAG = "enabled" 18GIR_MESON_ENABLE_FLAG = "enabled"
19GIR_MESON_DISABLE_FLAG = "disabled" 19GIR_MESON_DISABLE_FLAG = "disabled"
20 20
21SRC_URI[archive.sha256sum] = "2606252bc25cd8d24e1b7f7e92c3a272b37acd6734347b73b47a482834ba2491" 21SRC_URI[archive.sha256sum] = "17065e2fcc5f5a5bdbffc884c956bfc7c451a96e8c4fb2f8ad837c6413cb5a01"
22 22
23DEPENDS = "glib-2.0 glib-2.0-native fontconfig freetype virtual/libiconv cairo harfbuzz fribidi" 23DEPENDS = "glib-2.0 glib-2.0-native fontconfig freetype virtual/libiconv cairo harfbuzz fribidi"
24DEPENDS += "${@' python3-docutils-native' if d.getVar('GIDOCGEN_ENABLED') == 'True' else ''}" 24DEPENDS += "${@' python3-docutils-native' if d.getVar('GIDOCGEN_ENABLED') == 'True' else ''}"
diff --git a/meta/recipes-graphics/shaderc/files/0001-cmake-disable-building-external-dependencies.patch b/meta/recipes-graphics/shaderc/files/0001-cmake-disable-building-external-dependencies.patch
index 07765653bb..77b81635b6 100644
--- a/meta/recipes-graphics/shaderc/files/0001-cmake-disable-building-external-dependencies.patch
+++ b/meta/recipes-graphics/shaderc/files/0001-cmake-disable-building-external-dependencies.patch
@@ -1,4 +1,4 @@
1From ed0e2fad08a3cd3f0a0c70922737d8a6886f484d Mon Sep 17 00:00:00 2001 1From 3db09ee0d0bf6390eb3dcd835bd4ef786188bf16 Mon Sep 17 00:00:00 2001
2From: Jose Quaresma <quaresma.jose@gmail.com> 2From: Jose Quaresma <quaresma.jose@gmail.com>
3Date: Sat, 13 Feb 2021 00:45:56 +0000 3Date: Sat, 13 Feb 2021 00:45:56 +0000
4Subject: [PATCH] cmake: disable building external dependencies 4Subject: [PATCH] cmake: disable building external dependencies
@@ -15,10 +15,10 @@ Signed-off-by: Jose Quaresma <quaresma.jose@gmail.com>
15 2 files changed, 25 insertions(+), 10 deletions(-) 15 2 files changed, 25 insertions(+), 10 deletions(-)
16 16
17diff --git a/CMakeLists.txt b/CMakeLists.txt 17diff --git a/CMakeLists.txt b/CMakeLists.txt
18index bd6b890..f1ddd74 100644 18index 06f5395..39b8869 100644
19--- a/CMakeLists.txt 19--- a/CMakeLists.txt
20+++ b/CMakeLists.txt 20+++ b/CMakeLists.txt
21@@ -62,6 +62,7 @@ else() 21@@ -72,6 +72,7 @@ else()
22 endif() 22 endif()
23 23
24 option(SHADERC_ENABLE_WERROR_COMPILE "Enable passing -Werror to compiler, if available" ON) 24 option(SHADERC_ENABLE_WERROR_COMPILE "Enable passing -Werror to compiler, if available" ON)
@@ -26,7 +26,7 @@ index bd6b890..f1ddd74 100644
26 26
27 set (CMAKE_CXX_STANDARD 17) 27 set (CMAKE_CXX_STANDARD 17)
28 28
29@@ -119,8 +120,14 @@ endif(MSVC) 29@@ -129,8 +130,14 @@ endif(MSVC)
30 30
31 31
32 # Configure subdirectories. 32 # Configure subdirectories.
@@ -43,7 +43,7 @@ index bd6b890..f1ddd74 100644
43 43
44 add_subdirectory(libshaderc_util) 44 add_subdirectory(libshaderc_util)
45 add_subdirectory(libshaderc) 45 add_subdirectory(libshaderc)
46@@ -132,7 +139,7 @@ endif() 46@@ -142,7 +149,7 @@ endif()
47 add_custom_target(build-version 47 add_custom_target(build-version
48 ${Python_EXECUTABLE} 48 ${Python_EXECUTABLE}
49 ${CMAKE_CURRENT_SOURCE_DIR}/utils/update_build_version.py 49 ${CMAKE_CURRENT_SOURCE_DIR}/utils/update_build_version.py
diff --git a/meta/recipes-graphics/shaderc/shaderc_2025.2.bb b/meta/recipes-graphics/shaderc/shaderc_2025.3.bb
index 9e56b97830..692e85e56c 100644
--- a/meta/recipes-graphics/shaderc/shaderc_2025.2.bb
+++ b/meta/recipes-graphics/shaderc/shaderc_2025.3.bb
@@ -6,7 +6,7 @@ HOMEPAGE = "https://github.com/google/shaderc"
6LICENSE = "Apache-2.0" 6LICENSE = "Apache-2.0"
7LIC_FILES_CHKSUM = "file://LICENSE;md5=86d3f3a95c324c9479bd8986968f4327" 7LIC_FILES_CHKSUM = "file://LICENSE;md5=86d3f3a95c324c9479bd8986968f4327"
8 8
9SRCREV = "8c269ee0fe607f2d7cac00c0cb4fa243d6a6ec26" 9SRCREV = "eb0bc20d0c31320fe834e4ee8eb02807292b9703"
10SRC_URI = "git://github.com/google/shaderc.git;protocol=https;branch=main;tag=v${PV} \ 10SRC_URI = "git://github.com/google/shaderc.git;protocol=https;branch=main;tag=v${PV} \
11 file://0001-cmake-disable-building-external-dependencies.patch \ 11 file://0001-cmake-disable-building-external-dependencies.patch \
12 file://0002-libshaderc_util-fix-glslang-header-file-location.patch \ 12 file://0002-libshaderc_util-fix-glslang-header-file-location.patch \
diff --git a/meta/recipes-kernel/linux-firmware/linux-firmware_20250509.bb b/meta/recipes-kernel/linux-firmware/linux-firmware_20250627.bb
index ea75271af8..4bdb36ea67 100644
--- a/meta/recipes-kernel/linux-firmware/linux-firmware_20250509.bb
+++ b/meta/recipes-kernel/linux-firmware/linux-firmware_20250627.bb
@@ -8,13 +8,24 @@ SECTION = "kernel"
8LICENSE = "\ 8LICENSE = "\
9 Firmware-Abilis \ 9 Firmware-Abilis \
10 & Firmware-adsp_sst \ 10 & Firmware-adsp_sst \
11 & Firmware-aeonsemi \
11 & Firmware-agere \ 12 & Firmware-agere \
13 & Firmware-airoha \
14 & Firmware-alacritech \
12 & Firmware-amdgpu \ 15 & Firmware-amdgpu \
16 & Firmware-amdisp \
17 & Firmware-amdnpu \
18 & Firmware-amd_pmf \
19 & Firmware-amd-sev \
13 & Firmware-amd-ucode \ 20 & Firmware-amd-ucode \
21 & Firmware-amlogic \
14 & Firmware-amlogic_vdec \ 22 & Firmware-amlogic_vdec \
15 & Firmware-amphion_vpu \ 23 & Firmware-amphion_vpu \
16 & Firmware-atheros_firmware \ 24 & Firmware-atheros_firmware \
17 & Firmware-atmel \ 25 & Firmware-atmel \
26 & Firmware-bmi260 \
27 & Firmware-bnx2 \
28 & Firmware-bnx2x \
18 & Firmware-broadcom_bcm43xx \ 29 & Firmware-broadcom_bcm43xx \
19 & Firmware-ca0132 \ 30 & Firmware-ca0132 \
20 & Firmware-cavium \ 31 & Firmware-cavium \
@@ -22,9 +33,13 @@ LICENSE = "\
22 & Firmware-cirrus \ 33 & Firmware-cirrus \
23 & Firmware-cnm \ 34 & Firmware-cnm \
24 & Firmware-cw1200 \ 35 & Firmware-cw1200 \
36 & Firmware-cw1200-sdd \
37 & Firmware-cxgb3 \
25 & Firmware-cypress \ 38 & Firmware-cypress \
39 & Firmware-dabusb \
26 & Firmware-dib0700 \ 40 & Firmware-dib0700 \
27 & Firmware-e100 \ 41 & Firmware-e100 \
42 & Firmware-emi26 \
28 & Firmware-ene_firmware \ 43 & Firmware-ene_firmware \
29 & Firmware-fw_sst_0f28 \ 44 & Firmware-fw_sst_0f28 \
30 & Firmware-go7007 \ 45 & Firmware-go7007 \
@@ -33,16 +48,23 @@ LICENSE = "\
33 & Firmware-ibt_firmware \ 48 & Firmware-ibt_firmware \
34 & Firmware-ice \ 49 & Firmware-ice \
35 & Firmware-ice_enhanced \ 50 & Firmware-ice_enhanced \
51 & Firmware-intel \
52 & Firmware-intel_vpu \
53 & Firmware-ipu3_firmware \
36 & Firmware-it913x \ 54 & Firmware-it913x \
55 & Firmware-ivsc \
37 & Firmware-iwlwifi_firmware \ 56 & Firmware-iwlwifi_firmware \
57 & Firmware-ixp4xx \
38 & Firmware-IntcSST2 \ 58 & Firmware-IntcSST2 \
39 & Firmware-kaweth \ 59 & Firmware-kaweth \
60 & Firmware-keyspan \
40 & Firmware-linaro \ 61 & Firmware-linaro \
41 & Firmware-Lontium \ 62 & Firmware-Lontium \
42 & Firmware-mali_csffw \ 63 & Firmware-mali_csffw \
43 & Firmware-Marvell \ 64 & Firmware-Marvell \
44 & Firmware-mediatek \ 65 & Firmware-mediatek \
45 & Firmware-microchip \ 66 & Firmware-microchip \
67 & Firmware-montage \
46 & Firmware-moxa \ 68 & Firmware-moxa \
47 & Firmware-myri10ge_firmware \ 69 & Firmware-myri10ge_firmware \
48 & Firmware-netronome \ 70 & Firmware-netronome \
@@ -71,6 +93,9 @@ LICENSE = "\
71 & Firmware-siano \ 93 & Firmware-siano \
72 & Firmware-ti-connectivity \ 94 & Firmware-ti-connectivity \
73 & Firmware-ti-keystone \ 95 & Firmware-ti-keystone \
96 & Firmware-ti-tspa \
97 & Firmware-tigon \
98 & Firmware-typhoon \
74 & Firmware-ueagle-atm4-firmware \ 99 & Firmware-ueagle-atm4-firmware \
75 & Firmware-via_vt6656 \ 100 & Firmware-via_vt6656 \
76 & Firmware-wfx \ 101 & Firmware-wfx \
@@ -78,30 +103,46 @@ LICENSE = "\
78 & Firmware-xc4000 \ 103 & Firmware-xc4000 \
79 & Firmware-xc5000 \ 104 & Firmware-xc5000 \
80 & Firmware-xc5000c \ 105 & Firmware-xc5000c \
106 & Firmware-xe \
81 & WHENCE \ 107 & WHENCE \
82 & GPL-2.0-or-later \ 108 & GPL-2.0-or-later \
83" 109"
84 110
85LIC_FILES_CHKSUM = "file://LICENCE.Abilis;md5=b5ee3f410780e56711ad48eadc22b8bc \ 111LIC_FILES_CHKSUM = "file://LICENCE.Abilis;md5=b5ee3f410780e56711ad48eadc22b8bc \
86 file://LICENCE.adsp_sst;md5=615c45b91a5a4a9fe046d6ab9a2df728 \ 112 file://LICENCE.adsp_sst;md5=615c45b91a5a4a9fe046d6ab9a2df728 \
113 file://LICENSE.aeonsemi;md5=521c00bae0077c90d6ffb9ccf66905ae \
87 file://LICENCE.agere;md5=af0133de6b4a9b2522defd5f188afd31 \ 114 file://LICENCE.agere;md5=af0133de6b4a9b2522defd5f188afd31 \
115 file://LICENSE.airoha;md5=fa3dedb960e2673aea51aa509f7b537d \
116 file://LICENCE.alacritech;md5=75dabc07cc2fb59d929baa6bd6aae48a \
88 file://LICENSE.amdgpu;md5=1433dfea38c97a2e563a248a863dcb94 \ 117 file://LICENSE.amdgpu;md5=1433dfea38c97a2e563a248a863dcb94 \
118 file://LICENSE.amdisp;md5=f040a36bf52c9643edb7c009d6f1b141 \
119 file://LICENSE.amdnpu;md5=ea42c0f38f2d42aad08bd50c822460dc \
120 file://LICENSE.amd_pmf;md5=a2589a05ea5b6bd2b7f4f623c7e7a649 \
121 file://LICENSE.amd-sev;md5=e750538791a8be0b7249c579edefb035 \
89 file://LICENSE.amd-ucode;md5=6ca90c57f7b248de1e25c7f68ffc4698 \ 122 file://LICENSE.amd-ucode;md5=6ca90c57f7b248de1e25c7f68ffc4698 \
123 file://LICENSE.amlogic;md5=80e4e3f27def8bc4b232009c3a587c07 \
90 file://LICENSE.amlogic_vdec;md5=dc44f59bf64a81643e500ad3f39a468a \ 124 file://LICENSE.amlogic_vdec;md5=dc44f59bf64a81643e500ad3f39a468a \
91 file://LICENSE.amphion_vpu;md5=2bcdc00527b2d0542bd92b52aaec2b60 \ 125 file://LICENSE.amphion_vpu;md5=2bcdc00527b2d0542bd92b52aaec2b60 \
92 file://LICENCE.atheros_firmware;md5=30a14c7823beedac9fa39c64fdd01a13 \ 126 file://LICENCE.atheros_firmware;md5=30a14c7823beedac9fa39c64fdd01a13 \
93 file://LICENSE.atmel;md5=aa74ac0c60595dee4d4e239107ea77a3 \ 127 file://LICENSE.atmel;md5=aa74ac0c60595dee4d4e239107ea77a3 \
128 file://LICENSE.bmi260;md5=0008c039ec4281e382bd0cb41b66866c \
129 file://LICENCE.bnx2;md5=d156fb810e162c4b0065ec8316efcd38 \
130 file://LICENCE.bnx2x;md5=9494ec1462e461dec5322d1a1f0adf81 \
94 file://LICENCE.broadcom_bcm43xx;md5=3160c14df7228891b868060e1951dfbc \ 131 file://LICENCE.broadcom_bcm43xx;md5=3160c14df7228891b868060e1951dfbc \
95 file://LICENCE.ca0132;md5=209b33e66ee5be0461f13d31da392198 \ 132 file://LICENCE.ca0132;md5=209b33e66ee5be0461f13d31da392198 \
96 file://LICENCE.cadence;md5=009f46816f6956cfb75ede13d3e1cee0 \ 133 file://LICENCE.cadence;md5=009f46816f6956cfb75ede13d3e1cee0 \
97 file://LICENCE.cavium;md5=c37aaffb1ebe5939b2580d073a95daea \ 134 file://LICENCE.cavium;md5=c37aaffb1ebe5939b2580d073a95daea \
98 file://LICENCE.chelsio_firmware;md5=819aa8c3fa453f1b258ed8d168a9d903 \ 135 file://LICENCE.chelsio_firmware;md5=819aa8c3fa453f1b258ed8d168a9d903 \
99 file://LICENSE.cirrus;md5=662ea2c1a8888f7d79ed7f27c27472e1 \ 136 file://LICENSE.cirrus;md5=662ea2c1a8888f7d79ed7f27c27472e1 \
100 file://LICENCE.cnm;md5=93b67e6bac7f8fec22b96b8ad0a1a9d0 \ 137 file://LICENCE.cnm;md5=df3992006621b797e36de43f36336e36 \
101 file://LICENCE.cw1200;md5=f0f770864e7a8444a5c5aa9d12a3a7ed \ 138 file://LICENCE.cw1200;md5=f0f770864e7a8444a5c5aa9d12a3a7ed \
139 file://LICENCE.cw1200-sdd;md5=7e99e5e15c3668e96504a82ebd532ee4 \
140 file://LICENCE.cxgb3;md5=1cf82d9e2a4b301e20c7936e61cd0e45 \
102 file://LICENCE.cypress;md5=48cd9436c763bf873961f9ed7b5c147b \ 141 file://LICENCE.cypress;md5=48cd9436c763bf873961f9ed7b5c147b \
142 file://LICENCE.dabusb;md5=fd785fc5f935c950a3423e4b1b996657 \
103 file://LICENSE.dib0700;md5=f7411825c8a555a1a3e5eab9ca773431 \ 143 file://LICENSE.dib0700;md5=f7411825c8a555a1a3e5eab9ca773431 \
104 file://LICENCE.e100;md5=ec0f84136766df159a3ae6d02acdf5a8 \ 144 file://LICENCE.e100;md5=ec0f84136766df159a3ae6d02acdf5a8 \
145 file://LICENCE.emi26;md5=2d1cd6e732b81824fe2f0fbf595b1413 \
105 file://LICENCE.ene_firmware;md5=ed67f0f62f8f798130c296720b7d3921 \ 146 file://LICENCE.ene_firmware;md5=ed67f0f62f8f798130c296720b7d3921 \
106 file://LICENCE.fw_sst_0f28;md5=6353931c988ad52818ae733ac61cd293 \ 147 file://LICENCE.fw_sst_0f28;md5=6353931c988ad52818ae733ac61cd293 \
107 file://LICENCE.go7007;md5=c0bb9f6aaaba55b0529ee9b30aa66beb \ 148 file://LICENCE.go7007;md5=c0bb9f6aaaba55b0529ee9b30aa66beb \
@@ -111,15 +152,22 @@ LIC_FILES_CHKSUM = "file://LICENCE.Abilis;md5=b5ee3f410780e56711ad48eadc22b8bc \
111 file://LICENSE.ice;md5=742ab4850f2670792940e6d15c974b2f \ 152 file://LICENSE.ice;md5=742ab4850f2670792940e6d15c974b2f \
112 file://LICENSE.ice_enhanced;md5=f305cfc31b64f95f774f9edd9df0224d \ 153 file://LICENSE.ice_enhanced;md5=f305cfc31b64f95f774f9edd9df0224d \
113 file://LICENCE.IntcSST2;md5=9e7d8bea77612d7cc7d9e9b54b623062 \ 154 file://LICENCE.IntcSST2;md5=9e7d8bea77612d7cc7d9e9b54b623062 \
155 file://LICENSE.intel;md5=5c22a4ab607349c89ffcbb1595e493f8 \
156 file://LICENSE.intel_vpu;md5=1e231b7287d5a5018740041c352eb58e \
157 file://LICENSE.ipu3_firmware;md5=38fe8238c06bf7dcfd0eedbebf452c3b \
114 file://LICENCE.it913x;md5=1fbf727bfb6a949810c4dbfa7e6ce4f8 \ 158 file://LICENCE.it913x;md5=1fbf727bfb6a949810c4dbfa7e6ce4f8 \
159 file://LICENSE.ivsc;md5=4f1f696a12c18dd058d3cc51006c640d \
115 file://LICENCE.iwlwifi_firmware;md5=2ce6786e0fc11ac6e36b54bb9b799f1b \ 160 file://LICENCE.iwlwifi_firmware;md5=2ce6786e0fc11ac6e36b54bb9b799f1b \
161 file://LICENSE.ixp4xx;md5=ddc5cd6cbc6745343926fe7ecc2cdeb2 \
116 file://LICENCE.kaweth;md5=b1d876e562f4b3b8d391ad8395dfe03f \ 162 file://LICENCE.kaweth;md5=b1d876e562f4b3b8d391ad8395dfe03f \
163 file://LICENCE.keyspan;md5=676af26017c45772c972ce4a75d467d9 \
117 file://LICENCE.linaro;md5=936d91e71cf9cd30e733db4bf11661cc \ 164 file://LICENCE.linaro;md5=936d91e71cf9cd30e733db4bf11661cc \
118 file://LICENSE.Lontium;md5=4ec8dc582ff7295f39e2ca6a7b0be2b6 \ 165 file://LICENSE.Lontium;md5=4ec8dc582ff7295f39e2ca6a7b0be2b6 \
119 file://LICENCE.mali_csffw;md5=e064aaec4d21ef856e1b76a6f5dc435f \ 166 file://LICENCE.mali_csffw;md5=e064aaec4d21ef856e1b76a6f5dc435f \
120 file://LICENCE.Marvell;md5=28b6ed8bd04ba105af6e4dcd6e997772 \ 167 file://LICENCE.Marvell;md5=28b6ed8bd04ba105af6e4dcd6e997772 \
121 file://LICENCE.mediatek;md5=7c1976b63217d76ce47d0a11d8a79cf2 \ 168 file://LICENCE.mediatek;md5=7c1976b63217d76ce47d0a11d8a79cf2 \
122 file://LICENCE.microchip;md5=db753b00305675dfbf120e3f24a47277 \ 169 file://LICENCE.microchip;md5=db753b00305675dfbf120e3f24a47277 \
170 file://LICENSE.montage;md5=12a9f2b351f60fc9374da61c8b2f11ed \
123 file://LICENCE.moxa;md5=1086614767d8ccf744a923289d3d4261 \ 171 file://LICENCE.moxa;md5=1086614767d8ccf744a923289d3d4261 \
124 file://LICENCE.myri10ge_firmware;md5=42e32fb89f6b959ca222e25ac8df8fed \ 172 file://LICENCE.myri10ge_firmware;md5=42e32fb89f6b959ca222e25ac8df8fed \
125 file://LICENCE.Netronome;md5=4add08f2577086d44447996503cddf5f \ 173 file://LICENCE.Netronome;md5=4add08f2577086d44447996503cddf5f \
@@ -149,30 +197,45 @@ LIC_FILES_CHKSUM = "file://LICENCE.Abilis;md5=b5ee3f410780e56711ad48eadc22b8bc \
149 file://LICENCE.siano;md5=4556c1bf830067f12ca151ad953ec2a5 \ 197 file://LICENCE.siano;md5=4556c1bf830067f12ca151ad953ec2a5 \
150 file://LICENCE.ti-connectivity;md5=3b1e9cf54aba8146dad4b735777d406f \ 198 file://LICENCE.ti-connectivity;md5=3b1e9cf54aba8146dad4b735777d406f \
151 file://LICENCE.ti-keystone;md5=3a86335d32864b0bef996bee26cc0f2c \ 199 file://LICENCE.ti-keystone;md5=3a86335d32864b0bef996bee26cc0f2c \
200 file://LICENCE.ti-tspa;md5=d1a0eb27d0020752040190b9d51ad9be \
201 file://LICENCE.tigon;md5=49d104a32337f4a4c89478a86ce9ae4f \
202 file://LICENCE.typhoon;md5=43b30243a6bda91f54c8e00600c4add5 \
152 file://LICENCE.ueagle-atm4-firmware;md5=4ed7ea6b507ccc583b9d594417714118 \ 203 file://LICENCE.ueagle-atm4-firmware;md5=4ed7ea6b507ccc583b9d594417714118 \
153 file://LICENCE.via_vt6656;md5=e4159694cba42d4377a912e78a6e850f \ 204 file://LICENCE.via_vt6656;md5=e4159694cba42d4377a912e78a6e850f \
154 file://LICENCE.wl1251;md5=ad3f81922bb9e197014bb187289d3b5b \ 205 file://LICENCE.wl1251;md5=ad3f81922bb9e197014bb187289d3b5b \
155 file://LICENCE.xc4000;md5=0ff51d2dc49fce04814c9155081092f0 \ 206 file://LICENCE.xc4000;md5=0ff51d2dc49fce04814c9155081092f0 \
156 file://LICENCE.xc5000;md5=1e170c13175323c32c7f4d0998d53f66 \ 207 file://LICENCE.xc5000;md5=1e170c13175323c32c7f4d0998d53f66 \
157 file://LICENCE.xc5000c;md5=12b02efa3049db65d524aeb418dd87ca \ 208 file://LICENCE.xc5000c;md5=12b02efa3049db65d524aeb418dd87ca \
209 file://LICENSE.xe;md5=c674d38774242bc0c528214721488118 \
158 file://wfx/LICENCE.wf200;md5=4d1beff00d902c05c9c7e95a5d8eb52d \ 210 file://wfx/LICENCE.wf200;md5=4d1beff00d902c05c9c7e95a5d8eb52d \
159 file://WHENCE;md5=${WHENCE_CHKSUM} \ 211 file://WHENCE;md5=${WHENCE_CHKSUM} \
160 " 212 "
161# WHENCE checksum is defined separately to ease overriding it if 213# WHENCE checksum is defined separately to ease overriding it if
162# class-devupstream is selected. 214# class-devupstream is selected.
163WHENCE_CHKSUM = "d85e2f182f489a235400712cbfdb017a" 215WHENCE_CHKSUM = "3b864f69afb6609b4558a074bb428348"
164 216
165# These are not common licenses, set NO_GENERIC_LICENSE for them 217# These are not common licenses, set NO_GENERIC_LICENSE for them
166# so that the license files will be copied from fetched source 218# so that the license files will be copied from fetched source
167NO_GENERIC_LICENSE[Firmware-Abilis] = "LICENCE.Abilis" 219NO_GENERIC_LICENSE[Firmware-Abilis] = "LICENCE.Abilis"
168NO_GENERIC_LICENSE[Firmware-adsp_sst] = "LICENCE.adsp_sst" 220NO_GENERIC_LICENSE[Firmware-adsp_sst] = "LICENCE.adsp_sst"
221NO_GENERIC_LICENSE[Firmware-aeonsemi] = "LICENSE.aeonsemi"
169NO_GENERIC_LICENSE[Firmware-agere] = "LICENCE.agere" 222NO_GENERIC_LICENSE[Firmware-agere] = "LICENCE.agere"
223NO_GENERIC_LICENSE[Firmware-airoha] = "LICENSE.airoha"
224NO_GENERIC_LICENSE[Firmware-alacritech] = "LICENCE.alacritech"
170NO_GENERIC_LICENSE[Firmware-amdgpu] = "LICENSE.amdgpu" 225NO_GENERIC_LICENSE[Firmware-amdgpu] = "LICENSE.amdgpu"
226NO_GENERIC_LICENSE[Firmware-amdisp] = "LICENSE.amdisp"
227NO_GENERIC_LICENSE[Firmware-amdnpu] = "LICENSE.amdnpu"
228NO_GENERIC_LICENSE[Firmware-amd_pmf] = "LICENSE.amd_pmf"
229NO_GENERIC_LICENSE[Firmware-amd-sev] = "LICENSE.amd-sev"
171NO_GENERIC_LICENSE[Firmware-amd-ucode] = "LICENSE.amd-ucode" 230NO_GENERIC_LICENSE[Firmware-amd-ucode] = "LICENSE.amd-ucode"
231NO_GENERIC_LICENSE[Firmware-amlogic] = "LICENSE.amlogic"
172NO_GENERIC_LICENSE[Firmware-amlogic_vdec] = "LICENSE.amlogic_vdec" 232NO_GENERIC_LICENSE[Firmware-amlogic_vdec] = "LICENSE.amlogic_vdec"
173NO_GENERIC_LICENSE[Firmware-amphion_vpu] = "LICENSE.amphion_vpu" 233NO_GENERIC_LICENSE[Firmware-amphion_vpu] = "LICENSE.amphion_vpu"
174NO_GENERIC_LICENSE[Firmware-atheros_firmware] = "LICENCE.atheros_firmware" 234NO_GENERIC_LICENSE[Firmware-atheros_firmware] = "LICENCE.atheros_firmware"
175NO_GENERIC_LICENSE[Firmware-atmel] = "LICENSE.atmel" 235NO_GENERIC_LICENSE[Firmware-atmel] = "LICENSE.atmel"
236NO_GENERIC_LICENSE[Firmware-bmi260] = "LICENSE.bmi260"
237NO_GENERIC_LICENSE[Firmware-bnx2] = "LICENCE.bnx2"
238NO_GENERIC_LICENSE[Firmware-bnx2x] = "LICENCE.bnx2x"
176NO_GENERIC_LICENSE[Firmware-broadcom_bcm43xx] = "LICENCE.broadcom_bcm43xx" 239NO_GENERIC_LICENSE[Firmware-broadcom_bcm43xx] = "LICENCE.broadcom_bcm43xx"
177NO_GENERIC_LICENSE[Firmware-ca0132] = "LICENCE.ca0132" 240NO_GENERIC_LICENSE[Firmware-ca0132] = "LICENCE.ca0132"
178NO_GENERIC_LICENSE[Firmware-cadence] = "LICENCE.cadence" 241NO_GENERIC_LICENSE[Firmware-cadence] = "LICENCE.cadence"
@@ -181,9 +244,13 @@ NO_GENERIC_LICENSE[Firmware-chelsio_firmware] = "LICENCE.chelsio_firmware"
181NO_GENERIC_LICENSE[Firmware-cirrus] = "LICENSE.cirrus" 244NO_GENERIC_LICENSE[Firmware-cirrus] = "LICENSE.cirrus"
182NO_GENERIC_LICENSE[Firmware-cnm] = "LICENCE.cnm" 245NO_GENERIC_LICENSE[Firmware-cnm] = "LICENCE.cnm"
183NO_GENERIC_LICENSE[Firmware-cw1200] = "LICENCE.cw1200" 246NO_GENERIC_LICENSE[Firmware-cw1200] = "LICENCE.cw1200"
247NO_GENERIC_LICENSE[Firmware-cw1200-sdd] = "LICENCE.cw1200-sdd"
248NO_GENERIC_LICENSE[Firmware-cxgb3] = "LICENCE.cxgb3"
184NO_GENERIC_LICENSE[Firmware-cypress] = "LICENCE.cypress" 249NO_GENERIC_LICENSE[Firmware-cypress] = "LICENCE.cypress"
250NO_GENERIC_LICENSE[Firmware-dabusb] = "LICENCE.dabusb"
185NO_GENERIC_LICENSE[Firmware-dib0700] = "LICENSE.dib0700" 251NO_GENERIC_LICENSE[Firmware-dib0700] = "LICENSE.dib0700"
186NO_GENERIC_LICENSE[Firmware-e100] = "LICENCE.e100" 252NO_GENERIC_LICENSE[Firmware-e100] = "LICENCE.e100"
253NO_GENERIC_LICENSE[Firmware-emi26] = "LICENCE.emi26"
187NO_GENERIC_LICENSE[Firmware-ene_firmware] = "LICENCE.ene_firmware" 254NO_GENERIC_LICENSE[Firmware-ene_firmware] = "LICENCE.ene_firmware"
188NO_GENERIC_LICENSE[Firmware-fw_sst_0f28] = "LICENCE.fw_sst_0f28" 255NO_GENERIC_LICENSE[Firmware-fw_sst_0f28] = "LICENCE.fw_sst_0f28"
189NO_GENERIC_LICENSE[Firmware-go7007] = "LICENCE.go7007" 256NO_GENERIC_LICENSE[Firmware-go7007] = "LICENCE.go7007"
@@ -193,15 +260,22 @@ NO_GENERIC_LICENSE[Firmware-ibt_firmware] = "LICENCE.ibt_firmware"
193NO_GENERIC_LICENSE[Firmware-ice] = "LICENSE.ice" 260NO_GENERIC_LICENSE[Firmware-ice] = "LICENSE.ice"
194NO_GENERIC_LICENSE[Firmware-ice_enhanced] = "LICENSE.ice_enhanced" 261NO_GENERIC_LICENSE[Firmware-ice_enhanced] = "LICENSE.ice_enhanced"
195NO_GENERIC_LICENSE[Firmware-IntcSST2] = "LICENCE.IntcSST2" 262NO_GENERIC_LICENSE[Firmware-IntcSST2] = "LICENCE.IntcSST2"
263NO_GENERIC_LICENSE[Firmware-intel] = "LICENSE.intel"
264NO_GENERIC_LICENSE[Firmware-intel_vpu] = "LICENSE.intel_vpu"
265NO_GENERIC_LICENSE[Firmware-ipu3_firmware] = "LICENSE.ipu3_firmware"
196NO_GENERIC_LICENSE[Firmware-it913x] = "LICENCE.it913x" 266NO_GENERIC_LICENSE[Firmware-it913x] = "LICENCE.it913x"
267NO_GENERIC_LICENSE[Firmware-ivsc] = "LICENSE.ivsc"
197NO_GENERIC_LICENSE[Firmware-iwlwifi_firmware] = "LICENCE.iwlwifi_firmware" 268NO_GENERIC_LICENSE[Firmware-iwlwifi_firmware] = "LICENCE.iwlwifi_firmware"
269NO_GENERIC_LICENSE[Firmware-ixp4xx] = "LICENSE.ixp4xx"
198NO_GENERIC_LICENSE[Firmware-kaweth] = "LICENCE.kaweth" 270NO_GENERIC_LICENSE[Firmware-kaweth] = "LICENCE.kaweth"
271NO_GENERIC_LICENSE[Firmware-keyspan] = "LICENCE.keyspan"
199NO_GENERIC_LICENSE[Firmware-linaro] = "LICENCE.linaro" 272NO_GENERIC_LICENSE[Firmware-linaro] = "LICENCE.linaro"
200NO_GENERIC_LICENSE[Firmware-Lontium] = "LICENSE.Lontium" 273NO_GENERIC_LICENSE[Firmware-Lontium] = "LICENSE.Lontium"
201NO_GENERIC_LICENSE[Firmware-mali_csffw] = "LICENCE.mali_csffw" 274NO_GENERIC_LICENSE[Firmware-mali_csffw] = "LICENCE.mali_csffw"
202NO_GENERIC_LICENSE[Firmware-Marvell] = "LICENCE.Marvell" 275NO_GENERIC_LICENSE[Firmware-Marvell] = "LICENCE.Marvell"
203NO_GENERIC_LICENSE[Firmware-mediatek] = "LICENCE.mediatek" 276NO_GENERIC_LICENSE[Firmware-mediatek] = "LICENCE.mediatek"
204NO_GENERIC_LICENSE[Firmware-microchip] = "LICENCE.microchip" 277NO_GENERIC_LICENSE[Firmware-microchip] = "LICENCE.microchip"
278NO_GENERIC_LICENSE[Firmware-montage] = "LICENSE.montage"
205NO_GENERIC_LICENSE[Firmware-moxa] = "LICENCE.moxa" 279NO_GENERIC_LICENSE[Firmware-moxa] = "LICENCE.moxa"
206NO_GENERIC_LICENSE[Firmware-myri10ge_firmware] = "LICENCE.myri10ge_firmware" 280NO_GENERIC_LICENSE[Firmware-myri10ge_firmware] = "LICENCE.myri10ge_firmware"
207NO_GENERIC_LICENSE[Firmware-netronome] = "LICENCE.Netronome" 281NO_GENERIC_LICENSE[Firmware-netronome] = "LICENCE.Netronome"
@@ -230,6 +304,9 @@ NO_GENERIC_LICENSE[Firmware-siano] = "LICENCE.siano"
230NO_GENERIC_LICENSE[Firmware-imx-sdma_firmware] = "LICENSE.sdma_firmware" 304NO_GENERIC_LICENSE[Firmware-imx-sdma_firmware] = "LICENSE.sdma_firmware"
231NO_GENERIC_LICENSE[Firmware-ti-connectivity] = "LICENCE.ti-connectivity" 305NO_GENERIC_LICENSE[Firmware-ti-connectivity] = "LICENCE.ti-connectivity"
232NO_GENERIC_LICENSE[Firmware-ti-keystone] = "LICENCE.ti-keystone" 306NO_GENERIC_LICENSE[Firmware-ti-keystone] = "LICENCE.ti-keystone"
307NO_GENERIC_LICENSE[Firmware-ti-tspa] = "LICENCE.ti-tspa"
308NO_GENERIC_LICENSE[Firmware-tigon] = "LICENCE.tigon"
309NO_GENERIC_LICENSE[Firmware-typhoon] = "LICENCE.typhoon"
233NO_GENERIC_LICENSE[Firmware-ueagle-atm4-firmware] = "LICENCE.ueagle-atm4-firmware" 310NO_GENERIC_LICENSE[Firmware-ueagle-atm4-firmware] = "LICENCE.ueagle-atm4-firmware"
234NO_GENERIC_LICENSE[Firmware-via_vt6656] = "LICENCE.via_vt6656" 311NO_GENERIC_LICENSE[Firmware-via_vt6656] = "LICENCE.via_vt6656"
235NO_GENERIC_LICENSE[Firmware-wfx] = "wfx/LICENCE.wf200" 312NO_GENERIC_LICENSE[Firmware-wfx] = "wfx/LICENCE.wf200"
@@ -237,6 +314,7 @@ NO_GENERIC_LICENSE[Firmware-wl1251] = "LICENCE.wl1251"
237NO_GENERIC_LICENSE[Firmware-xc4000] = "LICENCE.xc4000" 314NO_GENERIC_LICENSE[Firmware-xc4000] = "LICENCE.xc4000"
238NO_GENERIC_LICENSE[Firmware-xc5000] = "LICENCE.xc5000" 315NO_GENERIC_LICENSE[Firmware-xc5000] = "LICENCE.xc5000"
239NO_GENERIC_LICENSE[Firmware-xc5000c] = "LICENCE.xc5000c" 316NO_GENERIC_LICENSE[Firmware-xc5000c] = "LICENCE.xc5000c"
317NO_GENERIC_LICENSE[Firmware-xe] = "LICENSE.xe"
240NO_GENERIC_LICENSE[WHENCE] = "WHENCE" 318NO_GENERIC_LICENSE[WHENCE] = "WHENCE"
241 319
242PE = "1" 320PE = "1"
@@ -250,7 +328,7 @@ SRC_URI:class-devupstream = "git://git.kernel.org/pub/scm/linux/kernel/git/firmw
250# Pin this to the 20220509 release, override this in local.conf 328# Pin this to the 20220509 release, override this in local.conf
251SRCREV:class-devupstream ?= "b19cbdca78ab2adfd210c91be15a22568e8b8cae" 329SRCREV:class-devupstream ?= "b19cbdca78ab2adfd210c91be15a22568e8b8cae"
252 330
253SRC_URI[sha256sum] = "f2c60d66f226a28130cb5643e6e544d3229673460e127c91ba03f1080cbd703e" 331SRC_URI[sha256sum] = "edefb1d2a538367abf9558802fee3cd135ebb19a4a5890c8eefb3416a92a6b89"
254 332
255inherit allarch 333inherit allarch
256 334
@@ -474,15 +552,15 @@ PACKAGES =+ "${PN}-amphion-vpu-license ${PN}-amphion-vpu \
474 ${PN}-qcom-vpu \ 552 ${PN}-qcom-vpu \
475 ${PN}-qcom-adreno-a2xx ${PN}-qcom-adreno-a3xx ${PN}-qcom-adreno-a4xx ${PN}-qcom-adreno-a530 \ 553 ${PN}-qcom-adreno-a2xx ${PN}-qcom-adreno-a3xx ${PN}-qcom-adreno-a4xx ${PN}-qcom-adreno-a530 \
476 ${PN}-qcom-adreno-a623 ${PN}-qcom-adreno-a630 ${PN}-qcom-adreno-a650 ${PN}-qcom-adreno-a660 \ 554 ${PN}-qcom-adreno-a623 ${PN}-qcom-adreno-a630 ${PN}-qcom-adreno-a650 ${PN}-qcom-adreno-a660 \
477 ${PN}-qcom-adreno-a663 ${PN}-qcom-adreno-a702 ${PN}-qcom-adreno-g750 \ 555 ${PN}-qcom-adreno-a663 ${PN}-qcom-adreno-a702 ${PN}-qcom-adreno-g715 ${PN}-qcom-adreno-g750 \
478 ${PN}-qcom-apq8016-modem ${PN}-qcom-apq8016-wifi \ 556 ${PN}-qcom-apq8016-modem ${PN}-qcom-apq8016-wifi \
479 ${PN}-qcom-apq8096-adreno ${PN}-qcom-apq8096-audio ${PN}-qcom-apq8096-modem \ 557 ${PN}-qcom-apq8096-adreno ${PN}-qcom-apq8096-audio ${PN}-qcom-apq8096-modem \
480 ${PN}-qcom-qcm2290-adreno ${PN}-qcom-qcm2290-audio ${PN}-qcom-qcm2290-modem \ 558 ${PN}-qcom-qcm2290-adreno ${PN}-qcom-qcm2290-audio ${PN}-qcom-qcm2290-modem \
481 ${PN}-qcom-qcm6490-adreno \ 559 ${PN}-qcom-qcm6490-adreno ${PN}-qcom-qcm6490-audio ${PN}-qcom-qcm6490-compute \
482 ${PN}-qcom-qcm6490-audio ${PN}-qcom-qcm6490-compute ${PN}-qcom-qcm6490-ipa ${PN}-qcom-qcm6490-wifi \ 560 ${PN}-qcom-qcm6490-ipa ${PN}-qcom-qcm6490-wifi ${PN}-qcom-qcm6490-qupv3fw \
483 ${PN}-qcom-qcs615-adreno \ 561 ${PN}-qcom-qcs615-adreno \
484 ${PN}-qcom-qcs8300-adreno ${PN}-qcom-qcs8300-audio ${PN}-qcom-qcs8300-compute \ 562 ${PN}-qcom-qcs8300-adreno ${PN}-qcom-qcs8300-audio ${PN}-qcom-qcs8300-compute \
485 ${PN}-qcom-qcs8300-generalpurpose \ 563 ${PN}-qcom-qcs8300-generalpurpose ${PN}-qcom-qcs8300-qupv3fw \
486 ${PN}-qcom-qrb4210-adreno \ 564 ${PN}-qcom-qrb4210-adreno \
487 ${PN}-qcom-qrb4210-audio ${PN}-qcom-qrb4210-compute ${PN}-qcom-qrb4210-modem \ 565 ${PN}-qcom-qrb4210-audio ${PN}-qcom-qrb4210-compute ${PN}-qcom-qrb4210-modem \
488 ${PN}-qcom-sa8775p-adreno ${PN}-qcom-sa8775p-audio ${PN}-qcom-sa8775p-compute \ 566 ${PN}-qcom-sa8775p-adreno ${PN}-qcom-sa8775p-audio ${PN}-qcom-sa8775p-compute \
@@ -492,6 +570,7 @@ PACKAGES =+ "${PN}-amphion-vpu-license ${PN}-amphion-vpu \
492 ${PN}-qcom-sc8280xp-lenovo-x13s-adreno \ 570 ${PN}-qcom-sc8280xp-lenovo-x13s-adreno \
493 ${PN}-qcom-sc8280xp-lenovo-x13s-compute \ 571 ${PN}-qcom-sc8280xp-lenovo-x13s-compute \
494 ${PN}-qcom-sc8280xp-lenovo-x13s-sensors \ 572 ${PN}-qcom-sc8280xp-lenovo-x13s-sensors \
573 ${PN}-qcom-sc8280xp-lenovo-x13s-vpu \
495 ${PN}-qcom-sdm845-adreno ${PN}-qcom-sdm845-audio ${PN}-qcom-sdm845-compute \ 574 ${PN}-qcom-sdm845-adreno ${PN}-qcom-sdm845-audio ${PN}-qcom-sdm845-compute \
496 ${PN}-qcom-sdm845-thundercomm-db845c-sensors \ 575 ${PN}-qcom-sdm845-thundercomm-db845c-sensors \
497 ${PN}-qcom-sm8250-adreno ${PN}-qcom-sm8250-audio ${PN}-qcom-sm8250-compute \ 576 ${PN}-qcom-sm8250-adreno ${PN}-qcom-sm8250-audio ${PN}-qcom-sm8250-compute \
@@ -503,6 +582,7 @@ PACKAGES =+ "${PN}-amphion-vpu-license ${PN}-amphion-vpu \
503 ${PN}-qcom-x1e80100-lenovo-t14s-g6-compute ${PN}-qcom-x1e80100-lenovo-t14s-g6-vpu \ 582 ${PN}-qcom-x1e80100-lenovo-t14s-g6-compute ${PN}-qcom-x1e80100-lenovo-t14s-g6-vpu \
504 ${PN}-qcom-x1e80100-lenovo-yoga-slim7x-adreno ${PN}-qcom-x1e80100-lenovo-yoga-slim7x-audio \ 583 ${PN}-qcom-x1e80100-lenovo-yoga-slim7x-adreno ${PN}-qcom-x1e80100-lenovo-yoga-slim7x-audio \
505 ${PN}-qcom-x1e80100-lenovo-yoga-slim7x-compute ${PN}-qcom-x1e80100-lenovo-yoga-slim7x-vpu \ 584 ${PN}-qcom-x1e80100-lenovo-yoga-slim7x-compute ${PN}-qcom-x1e80100-lenovo-yoga-slim7x-vpu \
585 ${PN}-qcom-x1p42100-adreno \
506 ${PN}-qla2xxx ${PN}-qla2xxx-license \ 586 ${PN}-qla2xxx ${PN}-qla2xxx-license \
507 ${PN}-rockchip-license ${PN}-rockchip-dptx \ 587 ${PN}-rockchip-license ${PN}-rockchip-dptx \
508 ${PN}-amlogic-vdec-license ${PN}-amlogic-vdec \ 588 ${PN}-amlogic-vdec-license ${PN}-amlogic-vdec \
@@ -1801,6 +1881,7 @@ LICENSE:${PN}-qcom-adreno-a650 = "Firmware-qcom"
1801LICENSE:${PN}-qcom-adreno-a660 = "Firmware-qcom" 1881LICENSE:${PN}-qcom-adreno-a660 = "Firmware-qcom"
1802LICENSE:${PN}-qcom-adreno-a663 = "Firmware-qcom" 1882LICENSE:${PN}-qcom-adreno-a663 = "Firmware-qcom"
1803LICENSE:${PN}-qcom-adreno-a702 = "Firmware-qcom" 1883LICENSE:${PN}-qcom-adreno-a702 = "Firmware-qcom"
1884LICENSE:${PN}-qcom-adreno-g715 = "Firmware-qcom"
1804LICENSE:${PN}-qcom-adreno-g750 = "Firmware-qcom" 1885LICENSE:${PN}-qcom-adreno-g750 = "Firmware-qcom"
1805LICENSE:${PN}-qcom-apq8016-modem = "Firmware-qcom" 1886LICENSE:${PN}-qcom-apq8016-modem = "Firmware-qcom"
1806LICENSE:${PN}-qcom-apq8016-wifi = "Firmware-qcom" 1887LICENSE:${PN}-qcom-apq8016-wifi = "Firmware-qcom"
@@ -1816,11 +1897,13 @@ LICENSE:${PN}-qcom-qcm6490-audio = "Firmware-qcom"
1816LICENSE:${PN}-qcom-qcm6490-compute = "Firmware-qcom" 1897LICENSE:${PN}-qcom-qcm6490-compute = "Firmware-qcom"
1817LICENSE:${PN}-qcom-qcm6490-ipa = "Firmware-qcom" 1898LICENSE:${PN}-qcom-qcm6490-ipa = "Firmware-qcom"
1818LICENSE:${PN}-qcom-qcm6490-wifi = "Firmware-qcom" 1899LICENSE:${PN}-qcom-qcm6490-wifi = "Firmware-qcom"
1900LICENSE:${PN}-qcom-qcm6490-qupv3fw = "Firmware-qcom"
1819LICENSE:${PN}-qcom-qcs615-adreno = "Firmware-qcom" 1901LICENSE:${PN}-qcom-qcs615-adreno = "Firmware-qcom"
1820LICENSE:${PN}-qcom-qcs8300-adreno = "Firmware-qcom" 1902LICENSE:${PN}-qcom-qcs8300-adreno = "Firmware-qcom"
1821LICENSE:${PN}-qcom-qcs8300-audio = "Firmware-qcom-2" 1903LICENSE:${PN}-qcom-qcs8300-audio = "Firmware-qcom-2"
1822LICENSE:${PN}-qcom-qcs8300-compute = "Firmware-qcom-2" 1904LICENSE:${PN}-qcom-qcs8300-compute = "Firmware-qcom-2"
1823LICENSE:${PN}-qcom-qcs8300-generalpurpose = "Firmware-qcom-2" 1905LICENSE:${PN}-qcom-qcs8300-generalpurpose = "Firmware-qcom-2"
1906LICENSE:${PN}-qcom-qcs8300-qupv3fw = "Firmware-qcom"
1824LICENSE:${PN}-qcom-qrb4210-adreno = "Firmware-qcom" 1907LICENSE:${PN}-qcom-qrb4210-adreno = "Firmware-qcom"
1825LICENSE:${PN}-qcom-qrb4210-audio = "Firmware-qcom" 1908LICENSE:${PN}-qcom-qrb4210-audio = "Firmware-qcom"
1826LICENSE:${PN}-qcom-qrb4210-compute = "Firmware-qcom" 1909LICENSE:${PN}-qcom-qrb4210-compute = "Firmware-qcom"
@@ -1830,11 +1913,12 @@ LICENSE:${PN}-qcom-sa8775p-adreno = "Firmware-qcom"
1830LICENSE:${PN}-qcom-sa8775p-audio = "Firmware-qcom-2" 1913LICENSE:${PN}-qcom-sa8775p-audio = "Firmware-qcom-2"
1831LICENSE:${PN}-qcom-sa8775p-compute = "Firmware-qcom-2" 1914LICENSE:${PN}-qcom-sa8775p-compute = "Firmware-qcom-2"
1832LICENSE:${PN}-qcom-sa8775p-generalpurpose = "Firmware-qcom-2" 1915LICENSE:${PN}-qcom-sa8775p-generalpurpose = "Firmware-qcom-2"
1833LICENSE:${PN}-qcom-sa8775p-qupv3fw = "Firmware-qcom-2" 1916LICENSE:${PN}-qcom-sa8775p-qupv3fw = "Firmware-qcom"
1834LICENSE:${PN}-qcom-sc8280xp-lenovo-x13s-audio = "Firmware-qcom & Firmware-linaro" 1917LICENSE:${PN}-qcom-sc8280xp-lenovo-x13s-audio = "Firmware-qcom & Firmware-linaro"
1835LICENSE:${PN}-qcom-sc8280xp-lenovo-x13s-adreno = "Firmware-qcom" 1918LICENSE:${PN}-qcom-sc8280xp-lenovo-x13s-adreno = "Firmware-qcom"
1836LICENSE:${PN}-qcom-sc8280xp-lenovo-x13s-compute = "Firmware-qcom" 1919LICENSE:${PN}-qcom-sc8280xp-lenovo-x13s-compute = "Firmware-qcom"
1837LICENSE:${PN}-qcom-sc8280xp-lenovo-x13s-sensors = "Firmware-qcom" 1920LICENSE:${PN}-qcom-sc8280xp-lenovo-x13s-sensors = "Firmware-qcom"
1921LICENSE:${PN}-qcom-sc8280xp-lenovo-x13s-vpu = "Firmware-qcom"
1838LICENSE:${PN}-qcom-sdm845-audio = "Firmware-qcom" 1922LICENSE:${PN}-qcom-sdm845-audio = "Firmware-qcom"
1839LICENSE:${PN}-qcom-sdm845-adreno = "Firmware-qcom" 1923LICENSE:${PN}-qcom-sdm845-adreno = "Firmware-qcom"
1840LICENSE:${PN}-qcom-sdm845-compute = "Firmware-qcom" 1924LICENSE:${PN}-qcom-sdm845-compute = "Firmware-qcom"
@@ -1856,6 +1940,7 @@ LICENSE:${PN}-qcom-x1e80100-lenovo-yoga-slim7x-adreno = "Firmware-qcom"
1856LICENSE:${PN}-qcom-x1e80100-lenovo-yoga-slim7x-audio = "Firmware-qcom & Firmware-linaro" 1940LICENSE:${PN}-qcom-x1e80100-lenovo-yoga-slim7x-audio = "Firmware-qcom & Firmware-linaro"
1857LICENSE:${PN}-qcom-x1e80100-lenovo-yoga-slim7x-compute = "Firmware-qcom" 1941LICENSE:${PN}-qcom-x1e80100-lenovo-yoga-slim7x-compute = "Firmware-qcom"
1858LICENSE:${PN}-qcom-x1e80100-lenovo-yoga-slim7x-vpu = "Firmware-qcom" 1942LICENSE:${PN}-qcom-x1e80100-lenovo-yoga-slim7x-vpu = "Firmware-qcom"
1943LICENSE:${PN}-qcom-x1p42100-adreno = "Firmware-qcom"
1859 1944
1860FILES:${PN}-qcom-license = "${nonarch_base_libdir}/firmware/LICENSE.qcom ${nonarch_base_libdir}/firmware/qcom/NOTICE.txt" 1945FILES:${PN}-qcom-license = "${nonarch_base_libdir}/firmware/LICENSE.qcom ${nonarch_base_libdir}/firmware/qcom/NOTICE.txt"
1861FILES:${PN}-qcom-2-license = "${nonarch_base_libdir}/firmware/LICENSE.qcom-2" 1946FILES:${PN}-qcom-2-license = "${nonarch_base_libdir}/firmware/LICENSE.qcom-2"
@@ -1885,6 +1970,7 @@ FILES:${PN}-qcom-adreno-a660 = "${nonarch_base_libdir}/firmware/qcom/a660*.*"
1885FILES:${PN}-qcom-adreno-a663 = "${nonarch_base_libdir}/firmware/qcom/a663*.*" 1970FILES:${PN}-qcom-adreno-a663 = "${nonarch_base_libdir}/firmware/qcom/a663*.*"
1886FILES:${PN}-qcom-adreno-a702 = "${nonarch_base_libdir}/firmware/qcom/a702*.*" 1971FILES:${PN}-qcom-adreno-a702 = "${nonarch_base_libdir}/firmware/qcom/a702*.*"
1887FILES:${PN}-qcom-adreno-g750 = "${nonarch_base_libdir}/firmware/qcom/gen70500_*.*" 1972FILES:${PN}-qcom-adreno-g750 = "${nonarch_base_libdir}/firmware/qcom/gen70500_*.*"
1973FILES:${PN}-qcom-adreno-g715 = "${nonarch_base_libdir}/firmware/qcom/gen71500_*.*"
1888FILES:${PN}-qcom-apq8016-modem = "${nonarch_base_libdir}/firmware/qcom/apq8016/mba.mbn* ${nonarch_base_libdir}/firmware/qcom/apq8016/modem.mbn*" 1974FILES:${PN}-qcom-apq8016-modem = "${nonarch_base_libdir}/firmware/qcom/apq8016/mba.mbn* ${nonarch_base_libdir}/firmware/qcom/apq8016/modem.mbn*"
1889FILES:${PN}-qcom-apq8016-wifi = "${nonarch_base_libdir}/firmware/qcom/apq8016/wcnss.mbn* ${nonarch_base_libdir}/firmware/qcom/apq8016/WCNSS*" 1975FILES:${PN}-qcom-apq8016-wifi = "${nonarch_base_libdir}/firmware/qcom/apq8016/wcnss.mbn* ${nonarch_base_libdir}/firmware/qcom/apq8016/WCNSS*"
1890FILES:${PN}-qcom-apq8096-adreno = "${nonarch_base_libdir}/firmware/qcom/apq8096/a530_zap.mbn* ${nonarch_base_libdir}/firmware/qcom/a530_zap.mdt*" 1976FILES:${PN}-qcom-apq8096-adreno = "${nonarch_base_libdir}/firmware/qcom/apq8096/a530_zap.mbn* ${nonarch_base_libdir}/firmware/qcom/a530_zap.mdt*"
@@ -1899,11 +1985,13 @@ FILES:${PN}-qcom-qcm6490-audio = "${nonarch_base_libdir}/firmware/qcom/qc[ms]649
1899FILES:${PN}-qcom-qcm6490-compute = "${nonarch_base_libdir}/firmware/qcom/qc[ms]6490/cdsp*.*" 1985FILES:${PN}-qcom-qcm6490-compute = "${nonarch_base_libdir}/firmware/qcom/qc[ms]6490/cdsp*.*"
1900FILES:${PN}-qcom-qcm6490-ipa = "${nonarch_base_libdir}/firmware/qcom/qcm6490/ipa_fws.mbn" 1986FILES:${PN}-qcom-qcm6490-ipa = "${nonarch_base_libdir}/firmware/qcom/qcm6490/ipa_fws.mbn"
1901FILES:${PN}-qcom-qcm6490-wifi = "${nonarch_base_libdir}/firmware/qcom/qc[ms]6490/wpss.mbn*" 1987FILES:${PN}-qcom-qcm6490-wifi = "${nonarch_base_libdir}/firmware/qcom/qc[ms]6490/wpss.mbn*"
1988FILES:${PN}-qcom-qcm6490-qupv3fw = "${nonarch_base_libdir}/firmware/qcom/qcm6490/qupv3fw.elf*"
1902FILES:${PN}-qcom-qcs615-adreno = "${nonarch_base_libdir}/firmware/qcom/qcs615/a612_zap.mbn*" 1989FILES:${PN}-qcom-qcs615-adreno = "${nonarch_base_libdir}/firmware/qcom/qcs615/a612_zap.mbn*"
1903FILES:${PN}-qcom-qcs8300-adreno = "${nonarch_base_libdir}/firmware/qcom/qcs8300/a623_zap.mbn*" 1990FILES:${PN}-qcom-qcs8300-adreno = "${nonarch_base_libdir}/firmware/qcom/qcs8300/a623_zap.mbn*"
1904FILES:${PN}-qcom-qcs8300-audio = "${nonarch_base_libdir}/firmware/qcom/qcs8300/adsp*.*" 1991FILES:${PN}-qcom-qcs8300-audio = "${nonarch_base_libdir}/firmware/qcom/qcs8300/adsp*.*"
1905FILES:${PN}-qcom-qcs8300-compute = "${nonarch_base_libdir}/firmware/qcom/qcs8300/cdsp*.*" 1992FILES:${PN}-qcom-qcs8300-compute = "${nonarch_base_libdir}/firmware/qcom/qcs8300/cdsp*.*"
1906FILES:${PN}-qcom-qcs8300-generalpurpose = "${nonarch_base_libdir}/firmware/qcom/qcs8300/gpdsp*.*" 1993FILES:${PN}-qcom-qcs8300-generalpurpose = "${nonarch_base_libdir}/firmware/qcom/qcs8300/gpdsp*.*"
1994FILES:${PN}-qcom-qcs8300-qupv3fw = "${nonarch_base_libdir}/firmware/qcom/qcs8300/qupv3fw.elf*"
1907FILES:${PN}-qcom-qrb4210-adreno = "${nonarch_base_libdir}/firmware/qcom/qrb4210/a610_zap.mbn*" 1995FILES:${PN}-qcom-qrb4210-adreno = "${nonarch_base_libdir}/firmware/qcom/qrb4210/a610_zap.mbn*"
1908FILES:${PN}-qcom-qrb4210-audio = "${nonarch_base_libdir}/firmware/qcom/qrb4210/adsp*.*" 1996FILES:${PN}-qcom-qrb4210-audio = "${nonarch_base_libdir}/firmware/qcom/qrb4210/adsp*.*"
1909FILES:${PN}-qcom-qrb4210-compute = "${nonarch_base_libdir}/firmware/qcom/qrb4210/cdsp*.*" 1997FILES:${PN}-qcom-qrb4210-compute = "${nonarch_base_libdir}/firmware/qcom/qrb4210/cdsp*.*"
@@ -1919,6 +2007,7 @@ FILES:${PN}-qcom-sc8280xp-lenovo-x13s-audio = "${nonarch_base_libdir}/firmware/q
1919FILES:${PN}-qcom-sc8280xp-lenovo-x13s-adreno = "${nonarch_base_libdir}/firmware/qcom/sc8280xp/LENOVO/21BX/qcdxkmsuc8280.mbn*" 2007FILES:${PN}-qcom-sc8280xp-lenovo-x13s-adreno = "${nonarch_base_libdir}/firmware/qcom/sc8280xp/LENOVO/21BX/qcdxkmsuc8280.mbn*"
1920FILES:${PN}-qcom-sc8280xp-lenovo-x13s-compute = "${nonarch_base_libdir}/firmware/qcom/sc8280xp/LENOVO/21BX/*cdsp*.*" 2008FILES:${PN}-qcom-sc8280xp-lenovo-x13s-compute = "${nonarch_base_libdir}/firmware/qcom/sc8280xp/LENOVO/21BX/*cdsp*.*"
1921FILES:${PN}-qcom-sc8280xp-lenovo-x13s-sensors = "${nonarch_base_libdir}/firmware/qcom/sc8280xp/LENOVO/21BX/*slpi*.*" 2009FILES:${PN}-qcom-sc8280xp-lenovo-x13s-sensors = "${nonarch_base_libdir}/firmware/qcom/sc8280xp/LENOVO/21BX/*slpi*.*"
2010FILES:${PN}-qcom-sc8280xp-lenovo-x13s-vpu = "${nonarch_base_libdir}/firmware/qcom/sc8280xp/LENOVO/21BX/qcvss8280.mbn*"
1922FILES:${PN}-qcom-sdm845-adreno = "${nonarch_base_libdir}/firmware/qcom/sdm845/a630*.*" 2011FILES:${PN}-qcom-sdm845-adreno = "${nonarch_base_libdir}/firmware/qcom/sdm845/a630*.*"
1923FILES:${PN}-qcom-sdm845-audio = "${nonarch_base_libdir}/firmware/qcom/sdm845/adsp*.*" 2012FILES:${PN}-qcom-sdm845-audio = "${nonarch_base_libdir}/firmware/qcom/sdm845/adsp*.*"
1924FILES:${PN}-qcom-sdm845-compute = "${nonarch_base_libdir}/firmware/qcom/sdm845/cdsp*.*" 2013FILES:${PN}-qcom-sdm845-compute = "${nonarch_base_libdir}/firmware/qcom/sdm845/cdsp*.*"
@@ -1941,6 +2030,7 @@ FILES:${PN}-qcom-x1e80100-lenovo-yoga-slim7x-adreno = "${nonarch_base_libdir}/fi
1941FILES:${PN}-qcom-x1e80100-lenovo-yoga-slim7x-audio = "${nonarch_base_libdir}/firmware/qcom/x1e80100/LENOVO/83ED/*adsp*.* ${nonarch_base_libdir}/firmware/qcom/x1e80100/LENOVO/83ED/battmgr.jsn* ${nonarch_base_libdir}/firmware/qcom/x1e80100/LENOVO/83ED/X1E80100-LENOVO-Yoga-Slim7x-tplg.bin* ${nonarch_base_libdir}/firmware/qcom/x1e80100/X1E80100-LENOVO-Yoga-Slim7x-tplg.bin*" 2030FILES:${PN}-qcom-x1e80100-lenovo-yoga-slim7x-audio = "${nonarch_base_libdir}/firmware/qcom/x1e80100/LENOVO/83ED/*adsp*.* ${nonarch_base_libdir}/firmware/qcom/x1e80100/LENOVO/83ED/battmgr.jsn* ${nonarch_base_libdir}/firmware/qcom/x1e80100/LENOVO/83ED/X1E80100-LENOVO-Yoga-Slim7x-tplg.bin* ${nonarch_base_libdir}/firmware/qcom/x1e80100/X1E80100-LENOVO-Yoga-Slim7x-tplg.bin*"
1942FILES:${PN}-qcom-x1e80100-lenovo-yoga-slim7x-compute = "${nonarch_base_libdir}/firmware/qcom/x1e80100/LENOVO/83ED/*cdsp*.*" 2031FILES:${PN}-qcom-x1e80100-lenovo-yoga-slim7x-compute = "${nonarch_base_libdir}/firmware/qcom/x1e80100/LENOVO/83ED/*cdsp*.*"
1943FILES:${PN}-qcom-x1e80100-lenovo-yoga-slim7x-vpu = "${nonarch_base_libdir}/firmware/qcom/x1e80100/LENOVO/83ED/qcvss8380.mbn* ${nonarch_base_libdir}/firmware/qcom/x1e80100/LENOVO/83ED/qcav1e8380.mbn*" 2032FILES:${PN}-qcom-x1e80100-lenovo-yoga-slim7x-vpu = "${nonarch_base_libdir}/firmware/qcom/x1e80100/LENOVO/83ED/qcvss8380.mbn* ${nonarch_base_libdir}/firmware/qcom/x1e80100/LENOVO/83ED/qcav1e8380.mbn*"
2033FILES:${PN}-qcom-x1p42100-adreno = "${nonarch_base_libdir}/firmware/qcom/x1p42100/gen71500_zap.mbn*"
1944 2034
1945RDEPENDS:${PN}-qcom-aic100 = "${PN}-qcom-license" 2035RDEPENDS:${PN}-qcom-aic100 = "${PN}-qcom-license"
1946RDEPENDS:${PN}-qcom-qdu100 = "${PN}-qcom-license" 2036RDEPENDS:${PN}-qcom-qdu100 = "${PN}-qcom-license"
@@ -1961,6 +2051,7 @@ RDEPENDS:${PN}-qcom-adreno-a650 = "${PN}-qcom-license"
1961RDEPENDS:${PN}-qcom-adreno-a660 = "${PN}-qcom-license" 2051RDEPENDS:${PN}-qcom-adreno-a660 = "${PN}-qcom-license"
1962RDEPENDS:${PN}-qcom-adreno-a663 = "${PN}-qcom-license ${PN}-qcom-adreno-a660" 2052RDEPENDS:${PN}-qcom-adreno-a663 = "${PN}-qcom-license ${PN}-qcom-adreno-a660"
1963RDEPENDS:${PN}-qcom-adreno-a702 = "${PN}-qcom-license" 2053RDEPENDS:${PN}-qcom-adreno-a702 = "${PN}-qcom-license"
2054RDEPENDS:${PN}-qcom-adreno-g715 = "${PN}-qcom-license"
1964RDEPENDS:${PN}-qcom-adreno-g750 = "${PN}-qcom-license" 2055RDEPENDS:${PN}-qcom-adreno-g750 = "${PN}-qcom-license"
1965RDEPENDS:${PN}-qcom-apq8016-modem = "${PN}-qcom-license" 2056RDEPENDS:${PN}-qcom-apq8016-modem = "${PN}-qcom-license"
1966RDEPENDS:${PN}-qcom-apq8016-wifi = "${PN}-qcom-license" 2057RDEPENDS:${PN}-qcom-apq8016-wifi = "${PN}-qcom-license"
@@ -1980,11 +2071,13 @@ RPROVIDES:${PN}-qcom-qcm6490-compute = "${PN}-qcom-qcs6490-compute"
1980RDEPENDS:${PN}-qcom-qcm6490-ipa = "${PN}-qcom-license" 2071RDEPENDS:${PN}-qcom-qcm6490-ipa = "${PN}-qcom-license"
1981RDEPENDS:${PN}-qcom-qcm6490-wifi = "${PN}-qcom-license" 2072RDEPENDS:${PN}-qcom-qcm6490-wifi = "${PN}-qcom-license"
1982RPROVIDES:${PN}-qcom-qcm6490-wifi = "${PN}-qcom-qcs6490-wifi" 2073RPROVIDES:${PN}-qcom-qcm6490-wifi = "${PN}-qcom-qcs6490-wifi"
2074RDEPENDS:${PN}-qcom-qcm6490-qupv3fw = "${PN}-qcom-license"
1983RDEPENDS:${PN}-qcom-qcs615-adreno = "${PN}-qcom-license" 2075RDEPENDS:${PN}-qcom-qcs615-adreno = "${PN}-qcom-license"
1984RDEPENDS:${PN}-qcom-qcs8300-adreno = "${PN}-qcom-license" 2076RDEPENDS:${PN}-qcom-qcs8300-adreno = "${PN}-qcom-license"
1985RDEPENDS:${PN}-qcom-qcs8300-audio = "${PN}-qcom-2-license" 2077RDEPENDS:${PN}-qcom-qcs8300-audio = "${PN}-qcom-2-license"
1986RDEPENDS:${PN}-qcom-qcs8300-compute = "${PN}-qcom-2-license" 2078RDEPENDS:${PN}-qcom-qcs8300-compute = "${PN}-qcom-2-license"
1987RDEPENDS:${PN}-qcom-qcs8300-generalpurpose = "${PN}-qcom-2-license" 2079RDEPENDS:${PN}-qcom-qcs8300-generalpurpose = "${PN}-qcom-2-license"
2080RDEPENDS:${PN}-qcom-qcs8300-qupv3fw = "${PN}-qcom-license"
1988RDEPENDS:${PN}-qcom-qrb4210-adreno = "${PN}-qcom-license" 2081RDEPENDS:${PN}-qcom-qrb4210-adreno = "${PN}-qcom-license"
1989RDEPENDS:${PN}-qcom-qrb4210-audio = "${PN}-qcom-license" 2082RDEPENDS:${PN}-qcom-qrb4210-audio = "${PN}-qcom-license"
1990RDEPENDS:${PN}-qcom-qrb4210-compute = "${PN}-qcom-license" 2083RDEPENDS:${PN}-qcom-qrb4210-compute = "${PN}-qcom-license"
@@ -1996,11 +2089,12 @@ RDEPENDS:${PN}-qcom-sa8775p-adreno = "${PN}-qcom-license"
1996RDEPENDS:${PN}-qcom-sa8775p-audio = "${PN}-qcom-2-license" 2089RDEPENDS:${PN}-qcom-sa8775p-audio = "${PN}-qcom-2-license"
1997RDEPENDS:${PN}-qcom-sa8775p-compute = "${PN}-qcom-2-license" 2090RDEPENDS:${PN}-qcom-sa8775p-compute = "${PN}-qcom-2-license"
1998RDEPENDS:${PN}-qcom-sa8775p-generalpurpose = "${PN}-qcom-2-license" 2091RDEPENDS:${PN}-qcom-sa8775p-generalpurpose = "${PN}-qcom-2-license"
1999RDEPENDS:${PN}-qcom-sa8775p-qupv3fw = "${PN}-qcom-2-license" 2092RDEPENDS:${PN}-qcom-sa8775p-qupv3fw = "${PN}-qcom-license"
2000RDEPENDS:${PN}-qcom-sc8280xp-lenovo-x13s-audio = "${PN}-qcom-license ${PN}-linaro-license" 2093RDEPENDS:${PN}-qcom-sc8280xp-lenovo-x13s-audio = "${PN}-qcom-license ${PN}-linaro-license"
2001RDEPENDS:${PN}-qcom-sc8280xp-lenovo-x13s-adreno = "${PN}-qcom-license" 2094RDEPENDS:${PN}-qcom-sc8280xp-lenovo-x13s-adreno = "${PN}-qcom-license"
2002RDEPENDS:${PN}-qcom-sc8280xp-lenovo-x13s-compute = "${PN}-qcom-license" 2095RDEPENDS:${PN}-qcom-sc8280xp-lenovo-x13s-compute = "${PN}-qcom-license"
2003RDEPENDS:${PN}-qcom-sc8280xp-lenovo-x13s-sensors = "${PN}-qcom-license" 2096RDEPENDS:${PN}-qcom-sc8280xp-lenovo-x13s-sensors = "${PN}-qcom-license"
2097RDEPENDS:${PN}-qcom-sc8280xp-lenovo-x13s-vpu = "${PN}-qcom-license"
2004RDEPENDS:${PN}-qcom-sdm845-adreno = "${PN}-qcom-license" 2098RDEPENDS:${PN}-qcom-sdm845-adreno = "${PN}-qcom-license"
2005RDEPENDS:${PN}-qcom-sdm845-audio = "${PN}-qcom-license" 2099RDEPENDS:${PN}-qcom-sdm845-audio = "${PN}-qcom-license"
2006RDEPENDS:${PN}-qcom-sdm845-compute = "${PN}-qcom-license" 2100RDEPENDS:${PN}-qcom-sdm845-compute = "${PN}-qcom-license"
@@ -2021,11 +2115,13 @@ RDEPENDS:${PN}-qcom-x1e80100-lenovo-yoga-slim7x-adreno = "${PN}-qcom-license"
2021RDEPENDS:${PN}-qcom-x1e80100-lenovo-yoga-slim7x-audio = "${PN}-qcom-license ${PN}-linaro-license" 2115RDEPENDS:${PN}-qcom-x1e80100-lenovo-yoga-slim7x-audio = "${PN}-qcom-license ${PN}-linaro-license"
2022RDEPENDS:${PN}-qcom-x1e80100-lenovo-yoga-slim7x-compute = "${PN}-qcom-license" 2116RDEPENDS:${PN}-qcom-x1e80100-lenovo-yoga-slim7x-compute = "${PN}-qcom-license"
2023RDEPENDS:${PN}-qcom-x1e80100-lenovo-yoga-slim7x-vpu = "${PN}-qcom-license" 2117RDEPENDS:${PN}-qcom-x1e80100-lenovo-yoga-slim7x-vpu = "${PN}-qcom-license"
2118RDEPENDS:${PN}-qcom-x1p42100-adreno = "${PN}-qcom-license"
2024 2119
2025RRECOMMENDS:${PN}-qcom-sc8280xp-lenovo-x13s-audio = "${PN}-qcom-sc8280xp-lenovo-x13s-compat" 2120RRECOMMENDS:${PN}-qcom-sc8280xp-lenovo-x13s-audio = "${PN}-qcom-sc8280xp-lenovo-x13s-compat"
2026RRECOMMENDS:${PN}-qcom-sc8280xp-lenovo-x13s-adreno = "${PN}-qcom-sc8280xp-lenovo-x13s-compat" 2121RRECOMMENDS:${PN}-qcom-sc8280xp-lenovo-x13s-adreno = "${PN}-qcom-sc8280xp-lenovo-x13s-compat"
2027RRECOMMENDS:${PN}-qcom-sc8280xp-lenovo-x13s-compute = "${PN}-qcom-sc8280xp-lenovo-x13s-compat" 2122RRECOMMENDS:${PN}-qcom-sc8280xp-lenovo-x13s-compute = "${PN}-qcom-sc8280xp-lenovo-x13s-compat"
2028RRECOMMENDS:${PN}-qcom-sc8280xp-lenovo-x13s-sensors = "${PN}-qcom-sc8280xp-lenovo-x13s-compat" 2123RRECOMMENDS:${PN}-qcom-sc8280xp-lenovo-x13s-sensors = "${PN}-qcom-sc8280xp-lenovo-x13s-compat"
2124RRECOMMENDS:${PN}-qcom-sc8280xp-lenovo-x13s-vpu = "${PN}-qcom-sc8280xp-lenovo-x13s-compat"
2029 2125
2030LICENSE:${PN}-liquidui = "Firmware-cavium_liquidio" 2126LICENSE:${PN}-liquidui = "Firmware-cavium_liquidio"
2031FILES:${PN}-liquidio = "${nonarch_base_libdir}/firmware/liquidio" 2127FILES:${PN}-liquidio = "${nonarch_base_libdir}/firmware/liquidio"
@@ -2053,27 +2149,49 @@ RDEPENDS:${PN}-amlogic-vdec = "${PN}-amlogic-vdec-license"
2053# Maybe split out to separate packages when needed. 2149# Maybe split out to separate packages when needed.
2054LICENSE:${PN} = "\ 2150LICENSE:${PN} = "\
2055 Firmware-Abilis \ 2151 Firmware-Abilis \
2152 & Firmware-aeonsemi \
2056 & Firmware-agere \ 2153 & Firmware-agere \
2154 & Firmware-airoha \
2155 & Firmware-alacritech \
2057 & Firmware-amdgpu \ 2156 & Firmware-amdgpu \
2157 & Firmware-amdisp \
2158 & Firmware-amdnpu \
2159 & Firmware-amd_pmf \
2160 & Firmware-amd-sev \
2058 & Firmware-amd-ucode \ 2161 & Firmware-amd-ucode \
2162 & Firmware-amlogic \
2059 & Firmware-amlogic_vdec \ 2163 & Firmware-amlogic_vdec \
2060 & Firmware-atmel \ 2164 & Firmware-atmel \
2165 & Firmware-bmi260 \
2166 & Firmware-bnx2 \
2167 & Firmware-bnx2x \
2061 & Firmware-ca0132 \ 2168 & Firmware-ca0132 \
2062 & Firmware-cavium \ 2169 & Firmware-cavium \
2063 & Firmware-chelsio_firmware \ 2170 & Firmware-chelsio_firmware \
2064 & Firmware-cirrus \ 2171 & Firmware-cirrus \
2065 & Firmware-cnm \ 2172 & Firmware-cnm \
2066 & Firmware-cw1200 \ 2173 & Firmware-cw1200 \
2174 & Firmware-cw1200-sdd \
2175 & Firmware-cxgb3 \
2176 & Firmware-dabusb \
2067 & Firmware-dib0700 \ 2177 & Firmware-dib0700 \
2068 & Firmware-e100 \ 2178 & Firmware-e100 \
2179 & Firmware-emi26 \
2069 & Firmware-ene_firmware \ 2180 & Firmware-ene_firmware \
2070 & Firmware-fw_sst_0f28 \ 2181 & Firmware-fw_sst_0f28 \
2071 & Firmware-go7007 \ 2182 & Firmware-go7007 \
2072 & Firmware-hfi1_firmware \ 2183 & Firmware-hfi1_firmware \
2073 & Firmware-ibt_firmware \ 2184 & Firmware-ibt_firmware \
2185 & Firmware-intel \
2186 & Firmware-intel_vpu \
2187 & Firmware-ipu3_firmware \
2074 & Firmware-it913x \ 2188 & Firmware-it913x \
2189 & Firmware-ivsc \
2190 & Firmware-ixp4xx \
2075 & Firmware-IntcSST2 \ 2191 & Firmware-IntcSST2 \
2076 & Firmware-kaweth \ 2192 & Firmware-kaweth \
2193 & Firmware-keyspan \
2194 & Firmware-montage \
2077 & Firmware-moxa \ 2195 & Firmware-moxa \
2078 & Firmware-myri10ge_firmware \ 2196 & Firmware-myri10ge_firmware \
2079 & Firmware-nvidia \ 2197 & Firmware-nvidia \
@@ -2093,11 +2211,15 @@ LICENSE:${PN} = "\
2093 & Firmware-siano \ 2211 & Firmware-siano \
2094 & Firmware-ti-connectivity \ 2212 & Firmware-ti-connectivity \
2095 & Firmware-ti-keystone \ 2213 & Firmware-ti-keystone \
2214 & Firmware-ti-tspa \
2215 & Firmware-tigon \
2216 & Firmware-typhoon \
2096 & Firmware-ueagle-atm4-firmware \ 2217 & Firmware-ueagle-atm4-firmware \
2097 & Firmware-wl1251 \ 2218 & Firmware-wl1251 \
2098 & Firmware-xc4000 \ 2219 & Firmware-xc4000 \
2099 & Firmware-xc5000 \ 2220 & Firmware-xc5000 \
2100 & Firmware-xc5000c \ 2221 & Firmware-xc5000c \
2222 & Firmware-xe \
2101 & WHENCE \ 2223 & WHENCE \
2102" 2224"
2103 2225
diff --git a/meta/recipes-kernel/linux/kernel-devsrc.bb b/meta/recipes-kernel/linux/kernel-devsrc.bb
index 7ad848c35e..3d2eb3929e 100644
--- a/meta/recipes-kernel/linux/kernel-devsrc.bb
+++ b/meta/recipes-kernel/linux/kernel-devsrc.bb
@@ -7,7 +7,7 @@ SECTION = "kernel"
7 7
8LICENSE = "GPL-2.0-only" 8LICENSE = "GPL-2.0-only"
9 9
10inherit linux-kernel-base 10inherit kernelsrc
11 11
12# Whilst not a module, this ensures we don't get multilib extended (which would make no sense) 12# Whilst not a module, this ensures we don't get multilib extended (which would make no sense)
13inherit module-base 13inherit module-base
@@ -20,14 +20,10 @@ do_install[depends] += "virtual/kernel:do_shared_workdir"
20do_install[depends] += "virtual/kernel:do_install" 20do_install[depends] += "virtual/kernel:do_install"
21 21
22# There's nothing to do here, except install the source where we can package it 22# There's nothing to do here, except install the source where we can package it
23do_fetch[noexec] = "1"
24do_unpack[noexec] = "1"
25do_patch[noexec] = "1"
26do_configure[noexec] = "1" 23do_configure[noexec] = "1"
27do_compile[noexec] = "1" 24do_compile[noexec] = "1"
28deltask do_populate_sysroot 25deltask do_populate_sysroot
29 26
30S = "${STAGING_KERNEL_DIR}"
31B = "${STAGING_KERNEL_BUILDDIR}" 27B = "${STAGING_KERNEL_BUILDDIR}"
32 28
33PACKAGE_ARCH = "${MACHINE_ARCH}" 29PACKAGE_ARCH = "${MACHINE_ARCH}"
diff --git a/meta/recipes-kernel/perf/perf.bb b/meta/recipes-kernel/perf/perf.bb
index 157aca4d79..4f29bd5bbc 100644
--- a/meta/recipes-kernel/perf/perf.bb
+++ b/meta/recipes-kernel/perf/perf.bb
@@ -385,10 +385,6 @@ do_configure:prepend () {
385 done 385 done
386} 386}
387 387
388python do_package:prepend() {
389 d.setVar('PKGV', d.getVar("KERNEL_VERSION").split("-")[0])
390}
391
392PACKAGE_ARCH = "${MACHINE_ARCH}" 388PACKAGE_ARCH = "${MACHINE_ARCH}"
393 389
394PACKAGES =+ "${PN}-archive ${PN}-tests ${PN}-perl ${PN}-python" 390PACKAGES =+ "${PN}-archive ${PN}-tests ${PN}-perl ${PN}-python"
diff --git a/meta/recipes-multimedia/gstreamer/gst-devtools_1.26.2.bb b/meta/recipes-multimedia/gstreamer/gst-devtools_1.26.3.bb
index f898db80e7..f107af110b 100644
--- a/meta/recipes-multimedia/gstreamer/gst-devtools_1.26.2.bb
+++ b/meta/recipes-multimedia/gstreamer/gst-devtools_1.26.3.bb
@@ -12,7 +12,7 @@ SRC_URI = "https://gstreamer.freedesktop.org/src/gst-devtools/gst-devtools-${PV}
12 file://0001-connect-has-a-different-signature-on-musl.patch \ 12 file://0001-connect-has-a-different-signature-on-musl.patch \
13 " 13 "
14 14
15SRC_URI[sha256sum] = "400ff79fe371367deb8ad1adf8b4643d6e558a433bf83136c2dd496fe8210f37" 15SRC_URI[sha256sum] = "4fde19c3c144834f8cb05c2ca3f14b3a50d395bad203d17f98a6e70c1672f2ba"
16 16
17DEPENDS = "json-glib glib-2.0 glib-2.0-native gstreamer1.0 gstreamer1.0-plugins-base" 17DEPENDS = "json-glib glib-2.0 glib-2.0-native gstreamer1.0 gstreamer1.0-plugins-base"
18RRECOMMENDS:${PN} = "git" 18RRECOMMENDS:${PN} = "git"
diff --git a/meta/recipes-multimedia/gstreamer/gst-examples_1.26.2.bb b/meta/recipes-multimedia/gstreamer/gst-examples_1.26.3.bb
index 33c4119d1a..8835b7d97b 100644
--- a/meta/recipes-multimedia/gstreamer/gst-examples_1.26.2.bb
+++ b/meta/recipes-multimedia/gstreamer/gst-examples_1.26.3.bb
@@ -7,12 +7,12 @@ LIC_FILES_CHKSUM = "file://playback/player/gtk/gtk-play.c;beginline=1;endline=20
7 7
8DEPENDS = "glib-2.0 gstreamer1.0 gstreamer1.0-plugins-base gstreamer1.0-plugins-bad gtk+3 json-glib glib-2.0-native" 8DEPENDS = "glib-2.0 gstreamer1.0 gstreamer1.0-plugins-base gstreamer1.0-plugins-bad gtk+3 json-glib glib-2.0-native"
9 9
10SRC_URI = "git://gitlab.freedesktop.org/gstreamer/gstreamer.git;protocol=https;branch=1.26 \ 10SRC_URI = "git://gitlab.freedesktop.org/gstreamer/gstreamer.git;protocol=https;branch=1.26;tag=${PV} \
11 file://0001-Make-player-examples-installable.patch \ 11 file://0001-Make-player-examples-installable.patch \
12 file://gst-player.desktop \ 12 file://gst-player.desktop \
13 " 13 "
14 14
15SRCREV = "100c21e1faf68efe7f3830b6e9f856760697ab48" 15SRCREV = "87bc0c6e949e3dcc440658f78ef52aa8088cb62f"
16 16
17S = "${UNPACKDIR}/${BP}/subprojects/gst-examples" 17S = "${UNPACKDIR}/${BP}/subprojects/gst-examples"
18 18
diff --git a/meta/recipes-multimedia/gstreamer/gstreamer1.0-libav_1.26.2.bb b/meta/recipes-multimedia/gstreamer/gstreamer1.0-libav_1.26.3.bb
index e3410f0907..4125fdf31f 100644
--- a/meta/recipes-multimedia/gstreamer/gstreamer1.0-libav_1.26.2.bb
+++ b/meta/recipes-multimedia/gstreamer/gstreamer1.0-libav_1.26.3.bb
@@ -12,7 +12,7 @@ LIC_FILES_CHKSUM = "file://COPYING;md5=69333daa044cb77e486cc36129f7a770 \
12 " 12 "
13 13
14SRC_URI = "https://gstreamer.freedesktop.org/src/gst-libav/gst-libav-${PV}.tar.xz" 14SRC_URI = "https://gstreamer.freedesktop.org/src/gst-libav/gst-libav-${PV}.tar.xz"
15SRC_URI[sha256sum] = "2eceba9cae4c495bb4ea134c27f010356036f1fa1972db5f54833f5f6c9f8db0" 15SRC_URI[sha256sum] = "3ada7e50a3b9b8ba3e405b14c4021e25fbb10379f77d2ce490aa16523ed2724d"
16 16
17S = "${UNPACKDIR}/gst-libav-${PV}" 17S = "${UNPACKDIR}/gst-libav-${PV}"
18 18
diff --git a/meta/recipes-multimedia/gstreamer/gstreamer1.0-plugins-bad_1.26.2.bb b/meta/recipes-multimedia/gstreamer/gstreamer1.0-plugins-bad_1.26.3.bb
index b311286cc2..12992057e7 100644
--- a/meta/recipes-multimedia/gstreamer/gstreamer1.0-plugins-bad_1.26.2.bb
+++ b/meta/recipes-multimedia/gstreamer/gstreamer1.0-plugins-bad_1.26.3.bb
@@ -10,7 +10,7 @@ SRC_URI = "https://gstreamer.freedesktop.org/src/gst-plugins-bad/gst-plugins-bad
10 file://0002-avoid-including-sys-poll.h-directly.patch \ 10 file://0002-avoid-including-sys-poll.h-directly.patch \
11 file://0004-opencv-resolve-missing-opencv-data-dir-in-yocto-buil.patch \ 11 file://0004-opencv-resolve-missing-opencv-data-dir-in-yocto-buil.patch \
12 " 12 "
13SRC_URI[sha256sum] = "cb116bfc3722c2de53838899006cafdb3c7c0bc69cd769b33c992a8421a9d844" 13SRC_URI[sha256sum] = "95c48dacaf14276f4e595f4cbca94b3cfebfc22285e765e2aa56d0a7275d7561"
14 14
15S = "${UNPACKDIR}/gst-plugins-bad-${PV}" 15S = "${UNPACKDIR}/gst-plugins-bad-${PV}"
16 16
diff --git a/meta/recipes-multimedia/gstreamer/gstreamer1.0-plugins-base_1.26.2.bb b/meta/recipes-multimedia/gstreamer/gstreamer1.0-plugins-base_1.26.3.bb
index c264a14ee6..74eb1360f6 100644
--- a/meta/recipes-multimedia/gstreamer/gstreamer1.0-plugins-base_1.26.2.bb
+++ b/meta/recipes-multimedia/gstreamer/gstreamer1.0-plugins-base_1.26.3.bb
@@ -11,7 +11,7 @@ SRC_URI = "https://gstreamer.freedesktop.org/src/gst-plugins-base/gst-plugins-ba
11 file://0003-viv-fb-Make-sure-config.h-is-included.patch \ 11 file://0003-viv-fb-Make-sure-config.h-is-included.patch \
12 file://0002-ssaparse-enhance-SSA-text-lines-parsing.patch \ 12 file://0002-ssaparse-enhance-SSA-text-lines-parsing.patch \
13 " 13 "
14SRC_URI[sha256sum] = "f4b9fc0be852fe5f65401d18ae6218e4aea3ff7a3c9f8d265939b9c4704915f7" 14SRC_URI[sha256sum] = "4ef9f9ef09025308ce220e2dd22a89e4c992d8ca71b968e3c70af0634ec27933"
15 15
16S = "${UNPACKDIR}/gst-plugins-base-${PV}" 16S = "${UNPACKDIR}/gst-plugins-base-${PV}"
17 17
diff --git a/meta/recipes-multimedia/gstreamer/gstreamer1.0-plugins-good_1.26.2.bb b/meta/recipes-multimedia/gstreamer/gstreamer1.0-plugins-good_1.26.3.bb
index 7a81a29d95..601a7961c7 100644
--- a/meta/recipes-multimedia/gstreamer/gstreamer1.0-plugins-good_1.26.2.bb
+++ b/meta/recipes-multimedia/gstreamer/gstreamer1.0-plugins-good_1.26.3.bb
@@ -6,7 +6,7 @@ BUGTRACKER = "https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/issues
6 6
7SRC_URI = "https://gstreamer.freedesktop.org/src/gst-plugins-good/gst-plugins-good-${PV}.tar.xz" 7SRC_URI = "https://gstreamer.freedesktop.org/src/gst-plugins-good/gst-plugins-good-${PV}.tar.xz"
8 8
9SRC_URI[sha256sum] = "d864b9aec28c3a80895468c909dd303e5f22f92d6e2b1137f80e2a1454584339" 9SRC_URI[sha256sum] = "fe4ec9670edfe6bb1e5f27169ae145b5ac2dd218ac98bd8251c8fba41ad33c53"
10 10
11S = "${UNPACKDIR}/gst-plugins-good-${PV}" 11S = "${UNPACKDIR}/gst-plugins-good-${PV}"
12 12
diff --git a/meta/recipes-multimedia/gstreamer/gstreamer1.0-plugins-ugly_1.26.2.bb b/meta/recipes-multimedia/gstreamer/gstreamer1.0-plugins-ugly_1.26.3.bb
index fcd97e4245..cc3da89556 100644
--- a/meta/recipes-multimedia/gstreamer/gstreamer1.0-plugins-ugly_1.26.2.bb
+++ b/meta/recipes-multimedia/gstreamer/gstreamer1.0-plugins-ugly_1.26.3.bb
@@ -15,7 +15,7 @@ SRC_URI = " \
15 https://gstreamer.freedesktop.org/src/gst-plugins-ugly/gst-plugins-ugly-${PV}.tar.xz \ 15 https://gstreamer.freedesktop.org/src/gst-plugins-ugly/gst-plugins-ugly-${PV}.tar.xz \
16 " 16 "
17 17
18SRC_URI[sha256sum] = "ec2d7556c6b8c2694f9b918ab9c4c6c998fb908c6b6a6ad57441702dad14ce73" 18SRC_URI[sha256sum] = "417f5ee895f734ac0341b3719c175fff16b4c8eae8806e29e170b3bcb3d9dba5"
19 19
20S = "${UNPACKDIR}/gst-plugins-ugly-${PV}" 20S = "${UNPACKDIR}/gst-plugins-ugly-${PV}"
21 21
diff --git a/meta/recipes-multimedia/gstreamer/gstreamer1.0-python_1.26.2.bb b/meta/recipes-multimedia/gstreamer/gstreamer1.0-python_1.26.3.bb
index 3c60e09d85..1f80063a0b 100644
--- a/meta/recipes-multimedia/gstreamer/gstreamer1.0-python_1.26.2.bb
+++ b/meta/recipes-multimedia/gstreamer/gstreamer1.0-python_1.26.3.bb
@@ -8,7 +8,7 @@ LICENSE = "LGPL-2.1-or-later"
8LIC_FILES_CHKSUM = "file://COPYING;md5=c34deae4e395ca07e725ab0076a5f740" 8LIC_FILES_CHKSUM = "file://COPYING;md5=c34deae4e395ca07e725ab0076a5f740"
9 9
10SRC_URI = "https://gstreamer.freedesktop.org/src/${PNREAL}/${PNREAL}-${PV}.tar.xz" 10SRC_URI = "https://gstreamer.freedesktop.org/src/${PNREAL}/${PNREAL}-${PV}.tar.xz"
11SRC_URI[sha256sum] = "757ae964c16a542d60708bcb8a67c56c5be83785c0d1c534b9b9366bf676746e" 11SRC_URI[sha256sum] = "9343b9a7c45f472498c24ddb6fea9aba5f1a24395ddbc0b79da6e485e42d1b12"
12 12
13DEPENDS = "gstreamer1.0 gstreamer1.0-plugins-base python3-pygobject gstreamer1.0-plugins-bad" 13DEPENDS = "gstreamer1.0 gstreamer1.0-plugins-base python3-pygobject gstreamer1.0-plugins-bad"
14RDEPENDS:${PN} += "gstreamer1.0 gstreamer1.0-plugins-base python3-pygobject" 14RDEPENDS:${PN} += "gstreamer1.0 gstreamer1.0-plugins-base python3-pygobject"
diff --git a/meta/recipes-multimedia/gstreamer/gstreamer1.0-rtsp-server_1.26.2.bb b/meta/recipes-multimedia/gstreamer/gstreamer1.0-rtsp-server_1.26.3.bb
index 51085bb3fa..7ee7a1f07f 100644
--- a/meta/recipes-multimedia/gstreamer/gstreamer1.0-rtsp-server_1.26.2.bb
+++ b/meta/recipes-multimedia/gstreamer/gstreamer1.0-rtsp-server_1.26.3.bb
@@ -10,7 +10,7 @@ PNREAL = "gst-rtsp-server"
10 10
11SRC_URI = "https://gstreamer.freedesktop.org/src/${PNREAL}/${PNREAL}-${PV}.tar.xz" 11SRC_URI = "https://gstreamer.freedesktop.org/src/${PNREAL}/${PNREAL}-${PV}.tar.xz"
12 12
13SRC_URI[sha256sum] = "f942b2a499ed6d161222868db0e80de45297b4777ff189c6fb890bde698c2dc3" 13SRC_URI[sha256sum] = "415e8a53a9844789770dd4f116ac2e3a4a33de42673c57acc25c5ba0f4406fc5"
14 14
15S = "${UNPACKDIR}/${PNREAL}-${PV}" 15S = "${UNPACKDIR}/${PNREAL}-${PV}"
16 16
diff --git a/meta/recipes-multimedia/gstreamer/gstreamer1.0-vaapi_1.26.2.bb b/meta/recipes-multimedia/gstreamer/gstreamer1.0-vaapi_1.26.3.bb
index 9b8aaf09df..98eba8bcdb 100644
--- a/meta/recipes-multimedia/gstreamer/gstreamer1.0-vaapi_1.26.2.bb
+++ b/meta/recipes-multimedia/gstreamer/gstreamer1.0-vaapi_1.26.3.bb
@@ -11,7 +11,7 @@ LIC_FILES_CHKSUM = "file://COPYING.LIB;md5=4fbd65380cdd255951079008b364516c"
11 11
12SRC_URI = "https://gstreamer.freedesktop.org/src/${REALPN}/${REALPN}-${PV}.tar.xz" 12SRC_URI = "https://gstreamer.freedesktop.org/src/${REALPN}/${REALPN}-${PV}.tar.xz"
13 13
14SRC_URI[sha256sum] = "0e24194236ed3b7f06f90e90efdf17f3f5ee39132e20081189a6c7690601051a" 14SRC_URI[sha256sum] = "2d643fbd1420297da5a4d6945d11f0a5b4f82feea54ea6aec9368d42995d8b03"
15 15
16S = "${UNPACKDIR}/${REALPN}-${PV}" 16S = "${UNPACKDIR}/${REALPN}-${PV}"
17DEPENDS = "libva gstreamer1.0 gstreamer1.0-plugins-base gstreamer1.0-plugins-bad" 17DEPENDS = "libva gstreamer1.0 gstreamer1.0-plugins-base gstreamer1.0-plugins-bad"
diff --git a/meta/recipes-multimedia/gstreamer/gstreamer1.0_1.26.2.bb b/meta/recipes-multimedia/gstreamer/gstreamer1.0_1.26.3.bb
index a921e39144..9de76944fb 100644
--- a/meta/recipes-multimedia/gstreamer/gstreamer1.0_1.26.2.bb
+++ b/meta/recipes-multimedia/gstreamer/gstreamer1.0_1.26.3.bb
@@ -22,7 +22,7 @@ SRC_URI = "https://gstreamer.freedesktop.org/src/gstreamer/gstreamer-${PV}.tar.x
22 file://0003-tests-use-a-dictionaries-for-environment.patch \ 22 file://0003-tests-use-a-dictionaries-for-environment.patch \
23 file://0004-tests-add-helper-script-to-run-the-installed_tests.patch \ 23 file://0004-tests-add-helper-script-to-run-the-installed_tests.patch \
24 " 24 "
25SRC_URI[sha256sum] = "f75334a3dff497c240844304a60015145792ecc3b6b213ac19841ccbd6fdf0ad" 25SRC_URI[sha256sum] = "dc661603221293dccc740862425eb54fbbed60fb29d08c801d440a6a3ff82680"
26 26
27PACKAGECONFIG ??= "${@bb.utils.contains('PTEST_ENABLED', '1', 'tests', '', d)} \ 27PACKAGECONFIG ??= "${@bb.utils.contains('PTEST_ENABLED', '1', 'tests', '', d)} \
28 check \ 28 check \
diff --git a/meta/recipes-multimedia/libogg/libogg_1.3.5.bb b/meta/recipes-multimedia/libogg/libogg_1.3.6.bb
index 402d700aa1..4810f156f2 100644
--- a/meta/recipes-multimedia/libogg/libogg_1.3.5.bb
+++ b/meta/recipes-multimedia/libogg/libogg_1.3.6.bb
@@ -11,6 +11,6 @@ LIC_FILES_CHKSUM = "file://COPYING;md5=db1b7a668b2a6f47b2af88fb008ad555 \
11 11
12SRC_URI = "http://downloads.xiph.org/releases/ogg/${BP}.tar.xz" 12SRC_URI = "http://downloads.xiph.org/releases/ogg/${BP}.tar.xz"
13 13
14SRC_URI[sha256sum] = "c4d91be36fc8e54deae7575241e03f4211eb102afb3fc0775fbbc1b740016705" 14SRC_URI[sha256sum] = "5c8253428e181840cd20d41f3ca16557a9cc04bad4a3d04cce84808677fa1061"
15 15
16inherit autotools pkgconfig 16inherit autotools pkgconfig
diff --git a/meta/recipes-sato/webkit/libwpe/0001-cmake-Bump-required-CMake-version-to-3.5-to-allow-bu.patch b/meta/recipes-sato/webkit/libwpe/0001-cmake-Bump-required-CMake-version-to-3.5-to-allow-bu.patch
new file mode 100644
index 0000000000..05688ee463
--- /dev/null
+++ b/meta/recipes-sato/webkit/libwpe/0001-cmake-Bump-required-CMake-version-to-3.5-to-allow-bu.patch
@@ -0,0 +1,38 @@
1From 7b227c7c1ac226498b1ea3987f87350d0f14f49f Mon Sep 17 00:00:00 2001
2From: Moritz Haase <Moritz.Haase@bmw.de>
3Date: Wed, 2 Jul 2025 09:19:44 +0200
4Subject: [PATCH] cmake: Bump required CMake version to 3.5 to allow builds
5 with CMake 4+
6
7This enables builds with CMake 4+, fixing:
8
9 CMake Error at CMakeLists.txt:1 (cmake_minimum_required):
10 Compatibility with CMake < 3.5 has been removed from CMake.
11
12 Update the VERSION argument <min> value. Or, use the <min>...<max> syntax
13 to tell CMake that the project requires at least <min> but has been
14 updated to work with policies introduced by <max> or earlier.
15
16 Or, add -DCMAKE_POLICY_VERSION_MINIMUM=3.5 to try configuring anyway.
17
18While at it, remove the extra call to 'cmake_policy()'. When passing the same
19version as to 'cmake_minimum_required()' it's not needed, as the latter calls
20the former automatically.
21
22Signed-off-by: Moritz Haase <Moritz.Haase@bmw.de>
23Upstream-Status: Submitted [https://github.com/WebPlatformForEmbedded/libwpe/pull/136]
24---
25 CMakeLists.txt | 3 +--
26 1 file changed, 1 insertion(+), 2 deletions(-)
27
28diff --git a/CMakeLists.txt b/CMakeLists.txt
29index db9ae50..2a01daf 100644
30--- a/CMakeLists.txt
31+++ b/CMakeLists.txt
32@@ -1,5 +1,4 @@
33-cmake_minimum_required(VERSION 3.0)
34-cmake_policy(VERSION 3.0)
35+cmake_minimum_required(VERSION 3.5)
36
37 set(CMAKE_MODULE_PATH "${CMAKE_CURRENT_SOURCE_DIR}/cmake")
38 include(VersioningUtils)
diff --git a/meta/recipes-sato/webkit/libwpe_1.16.2.bb b/meta/recipes-sato/webkit/libwpe_1.16.2.bb
index 324e2f213c..6cb6818acc 100644
--- a/meta/recipes-sato/webkit/libwpe_1.16.2.bb
+++ b/meta/recipes-sato/webkit/libwpe_1.16.2.bb
@@ -10,9 +10,11 @@ inherit cmake features_check pkgconfig
10 10
11REQUIRED_DISTRO_FEATURES = "opengl" 11REQUIRED_DISTRO_FEATURES = "opengl"
12 12
13SRC_URI = "https://wpewebkit.org/releases/${BPN}-${PV}.tar.xz" 13SRC_URI = "https://wpewebkit.org/releases/${BPN}-${PV}.tar.xz \
14 file://0001-cmake-Bump-required-CMake-version-to-3.5-to-allow-bu.patch \
15 "
14SRC_URI[sha256sum] = "960bdd11c3f2cf5bd91569603ed6d2aa42fd4000ed7cac930a804eac367888d7" 16SRC_URI[sha256sum] = "960bdd11c3f2cf5bd91569603ed6d2aa42fd4000ed7cac930a804eac367888d7"
15 17
16# This is a tweak of upstream-version-is-even needed because 18# This is a tweak of upstream-version-is-even needed because
17# ipstream directory contains tarballs for other components as well. 19# upstream directory contains tarballs for other components as well.
18UPSTREAM_CHECK_REGEX = "libwpe-(?P<pver>\d+\.(\d*[02468])+(\.\d+)+)\.tar" 20UPSTREAM_CHECK_REGEX = "libwpe-(?P<pver>\d+\.(\d*[02468])+(\.\d+)+)\.tar"
diff --git a/meta/recipes-support/enchant/enchant2_2.8.6.bb b/meta/recipes-support/enchant/enchant2_2.8.10.bb
index 2696fc0f81..e2965e9e10 100644
--- a/meta/recipes-support/enchant/enchant2_2.8.6.bb
+++ b/meta/recipes-support/enchant/enchant2_2.8.10.bb
@@ -12,7 +12,7 @@ DEPENDS = "glib-2.0 groff-native"
12inherit autotools pkgconfig github-releases 12inherit autotools pkgconfig github-releases
13 13
14SRC_URI = "${GITHUB_BASE_URI}/download/v${PV}/enchant-${PV}.tar.gz" 14SRC_URI = "${GITHUB_BASE_URI}/download/v${PV}/enchant-${PV}.tar.gz"
15SRC_URI[sha256sum] = "c4cd0889d8aff8248fc3913de5a83907013962f0e1895030a3836468cd40af5b" 15SRC_URI[sha256sum] = "6db791265ace652c63a6d24f376f4c562b742284d70d3ccb9e1ce8be45b288c9"
16 16
17GITHUB_BASE_URI = "https://github.com/rrthomas/enchant/releases" 17GITHUB_BASE_URI = "https://github.com/rrthomas/enchant/releases"
18 18
diff --git a/meta/recipes-support/gnupg/drop-unknown-suffix.inc b/meta/recipes-support/gnupg/drop-unknown-suffix.inc
new file mode 100644
index 0000000000..dc8f31869c
--- /dev/null
+++ b/meta/recipes-support/gnupg/drop-unknown-suffix.inc
@@ -0,0 +1,29 @@
1#
2# Copyright OpenEmbedded Contributors
3#
4# SPDX-License-Identifier: MIT
5#
6
7#
8# This .inc file is used to remove unknown suffix in runtime version
9# for gnupg and its related packages.
10#
11# In these packages, if autogen.sh is run outside of a git repo,
12# the find-version function always assumes that the package is a
13# beta version and adds the suffix '-unknown' to the version number.
14#
15# This .inc file modifies autogen.sh to:
16# 1. Replace beta=yes with beta=no
17# 2. Replace tmp="-unknown" with tmp=""
18#
19
20do_configure:prepend() {
21 if [ -f ${S}/autogen.sh ]; then
22 sed -i \
23 -e 's/^\([[:space:]]*\)beta=yes$/\1beta=no/' \
24 -e 's/^\([[:space:]]*\)tmp="-unknown"$/\1tmp=""/' \
25 ${S}/autogen.sh
26 else
27 bbwarn "autogen.sh not found in ${S}."
28 fi
29}
diff --git a/meta/recipes-support/gnupg/gnupg/0004-autogen.sh-fix-find-version-for-beta-checking.patch b/meta/recipes-support/gnupg/gnupg/0004-autogen.sh-fix-find-version-for-beta-checking.patch
deleted file mode 100644
index fc7d964ec4..0000000000
--- a/meta/recipes-support/gnupg/gnupg/0004-autogen.sh-fix-find-version-for-beta-checking.patch
+++ /dev/null
@@ -1,31 +0,0 @@
1From 4d8cc1982273d571b4e80fe981878d0fa5884236 Mon Sep 17 00:00:00 2001
2From: Wenzong Fan <wenzong.fan@windriver.com>
3Date: Wed, 16 Aug 2017 11:23:22 +0800
4Subject: [PATCH] autogen.sh: fix find-version for beta checking
5
6find-version always assumes that gnupg is beta if autogen.sh is run
7out of git-repo. This doesn't work for users whom just take release
8tarball and re-run autoconf in their local build dir.
9
10Upstream-Status: Pending
11
12Signed-off-by: Wenzong Fan <wenzong.fan@windriver.com>
13
14Rebase to 2.1.23
15Signed-off-by: Hongxu Jia <hongxu.jia@windriver.com>
16---
17 autogen.sh | 1 -
18 1 file changed, 1 deletion(-)
19
20diff --git a/autogen.sh b/autogen.sh
21index 9f91297..116fb7f 100755
22--- a/autogen.sh
23+++ b/autogen.sh
24@@ -270,7 +270,6 @@ if [ "$myhost" = "find-version" ]; then
25 rvd=$((0x$(echo ${rev} | dd bs=1 count=4 2>/dev/null)))
26 else
27 ingit=no
28- beta=yes
29 tmp="-unknown"
30 cid="0000000"
31 rev="0000000"
diff --git a/meta/recipes-support/gnupg/gnupg_2.5.5.bb b/meta/recipes-support/gnupg/gnupg_2.5.5.bb
index a30dbac62e..cbf0988953 100644
--- a/meta/recipes-support/gnupg/gnupg_2.5.5.bb
+++ b/meta/recipes-support/gnupg/gnupg_2.5.5.bb
@@ -13,10 +13,11 @@ DEPENDS = "npth libassuan libksba zlib bzip2 readline libgcrypt"
13 13
14inherit autotools gettext texinfo pkgconfig upstream-version-is-even 14inherit autotools gettext texinfo pkgconfig upstream-version-is-even
15 15
16require drop-unknown-suffix.inc
17
16UPSTREAM_CHECK_URI = "https://gnupg.org/ftp/gcrypt/gnupg/" 18UPSTREAM_CHECK_URI = "https://gnupg.org/ftp/gcrypt/gnupg/"
17SRC_URI = "${GNUPG_MIRROR}/${BPN}/${BPN}-${PV}.tar.bz2 \ 19SRC_URI = "${GNUPG_MIRROR}/${BPN}/${BPN}-${PV}.tar.bz2 \
18 file://0002-use-pkgconfig-instead-of-npth-config.patch \ 20 file://0002-use-pkgconfig-instead-of-npth-config.patch \
19 file://0004-autogen.sh-fix-find-version-for-beta-checking.patch \
20 file://0001-Woverride-init-is-not-needed-with-gcc-9.patch \ 21 file://0001-Woverride-init-is-not-needed-with-gcc-9.patch \
21 " 22 "
22SRC_URI:append:class-native = " file://0001-configure.ac-use-a-custom-value-for-the-location-of-.patch \ 23SRC_URI:append:class-native = " file://0001-configure.ac-use-a-custom-value-for-the-location-of-.patch \
diff --git a/meta/recipes-support/libassuan/libassuan_3.0.2.bb b/meta/recipes-support/libassuan/libassuan_3.0.2.bb
index f0b7746284..0d2ccce989 100644
--- a/meta/recipes-support/libassuan/libassuan_3.0.2.bb
+++ b/meta/recipes-support/libassuan/libassuan_3.0.2.bb
@@ -26,6 +26,8 @@ BINCONFIG = "${bindir}/libassuan-config"
26 26
27inherit autotools texinfo binconfig-disabled pkgconfig multilib_header 27inherit autotools texinfo binconfig-disabled pkgconfig multilib_header
28 28
29require recipes-support/gnupg/drop-unknown-suffix.inc
30
29do_configure:prepend () { 31do_configure:prepend () {
30 # Else these could be used in preference to those in aclocal-copy 32 # Else these could be used in preference to those in aclocal-copy
31 rm -f ${S}/m4/*.m4 33 rm -f ${S}/m4/*.m4
diff --git a/meta/recipes-support/libgcrypt/libgcrypt_1.11.1.bb b/meta/recipes-support/libgcrypt/libgcrypt_1.11.1.bb
index 5574e8c821..14cbe53647 100644
--- a/meta/recipes-support/libgcrypt/libgcrypt_1.11.1.bb
+++ b/meta/recipes-support/libgcrypt/libgcrypt_1.11.1.bb
@@ -32,6 +32,8 @@ BINCONFIG = "${bindir}/libgcrypt-config"
32 32
33inherit autotools texinfo binconfig-disabled pkgconfig ptest 33inherit autotools texinfo binconfig-disabled pkgconfig ptest
34 34
35require recipes-support/gnupg/drop-unknown-suffix.inc
36
35EXTRA_OECONF = "--disable-asm" 37EXTRA_OECONF = "--disable-asm"
36EXTRA_OEMAKE:class-target = "LIBTOOLFLAGS='--tag=CC'" 38EXTRA_OEMAKE:class-target = "LIBTOOLFLAGS='--tag=CC'"
37 39
diff --git a/meta/recipes-support/libgpg-error/libgpg-error_1.55.bb b/meta/recipes-support/libgpg-error/libgpg-error_1.55.bb
index 842f54b0ff..7de52314a4 100644
--- a/meta/recipes-support/libgpg-error/libgpg-error_1.55.bb
+++ b/meta/recipes-support/libgpg-error/libgpg-error_1.55.bb
@@ -25,6 +25,8 @@ BINCONFIG = "${bindir}/gpg-error-config"
25 25
26inherit autotools binconfig-disabled pkgconfig gettext multilib_header multilib_script ptest 26inherit autotools binconfig-disabled pkgconfig gettext multilib_header multilib_script ptest
27 27
28require recipes-support/gnupg/drop-unknown-suffix.inc
29
28RDEPENDS:${PN}-ptest:append = " make bash" 30RDEPENDS:${PN}-ptest:append = " make bash"
29 31
30MULTILIB_SCRIPTS = "${PN}-dev:${bindir}/gpgrt-config" 32MULTILIB_SCRIPTS = "${PN}-dev:${bindir}/gpgrt-config"
diff --git a/meta/recipes-support/libksba/libksba_1.6.7.bb b/meta/recipes-support/libksba/libksba_1.6.7.bb
index b7a9fc4050..d97fa84977 100644
--- a/meta/recipes-support/libksba/libksba_1.6.7.bb
+++ b/meta/recipes-support/libksba/libksba_1.6.7.bb
@@ -20,6 +20,8 @@ BINCONFIG = "${bindir}/ksba-config"
20 20
21inherit autotools binconfig-disabled pkgconfig texinfo 21inherit autotools binconfig-disabled pkgconfig texinfo
22 22
23require recipes-support/gnupg/drop-unknown-suffix.inc
24
23UPSTREAM_CHECK_URI = "https://gnupg.org/download/index.html" 25UPSTREAM_CHECK_URI = "https://gnupg.org/download/index.html"
24SRC_URI = "${GNUPG_MIRROR}/${BPN}/${BPN}-${PV}.tar.bz2 \ 26SRC_URI = "${GNUPG_MIRROR}/${BPN}/${BPN}-${PV}.tar.bz2 \
25 file://ksba-add-pkgconfig-support.patch" 27 file://ksba-add-pkgconfig-support.patch"
diff --git a/meta/recipes-support/libproxy/libproxy_0.5.9.bb b/meta/recipes-support/libproxy/libproxy_0.5.10.bb
index ed8a4df2a8..21930ada00 100644
--- a/meta/recipes-support/libproxy/libproxy_0.5.9.bb
+++ b/meta/recipes-support/libproxy/libproxy_0.5.10.bb
@@ -13,8 +13,8 @@ LIC_FILES_CHKSUM = "file://COPYING;md5=4fbd65380cdd255951079008b364516c \
13 13
14DEPENDS = "glib-2.0" 14DEPENDS = "glib-2.0"
15 15
16SRC_URI = "git://github.com/libproxy/libproxy;protocol=https;branch=main" 16SRC_URI = "git://github.com/libproxy/libproxy;protocol=https;branch=main;tag=${PV}"
17SRCREV = "77e2a2b88a319974cf099c8eaaaa03030bc4c0d4" 17SRCREV = "7e4852f9658084c61a95973b8a1d720b1763437a"
18 18
19inherit meson pkgconfig gobject-introspection vala gi-docgen 19inherit meson pkgconfig gobject-introspection vala gi-docgen
20GIDOCGEN_MESON_OPTION = 'docs' 20GIDOCGEN_MESON_OPTION = 'docs'
diff --git a/meta/recipes-support/nghttp2/nghttp2_1.65.0.bb b/meta/recipes-support/nghttp2/nghttp2_1.66.0.bb
index 008935f165..2886681827 100644
--- a/meta/recipes-support/nghttp2/nghttp2_1.65.0.bb
+++ b/meta/recipes-support/nghttp2/nghttp2_1.66.0.bb
@@ -5,7 +5,7 @@ LICENSE = "MIT"
5LIC_FILES_CHKSUM = "file://COPYING;md5=764abdf30b2eadd37ce47dcbce0ea1ec" 5LIC_FILES_CHKSUM = "file://COPYING;md5=764abdf30b2eadd37ce47dcbce0ea1ec"
6 6
7SRC_URI = "${GITHUB_BASE_URI}/download/v${PV}/nghttp2-${PV}.tar.xz" 7SRC_URI = "${GITHUB_BASE_URI}/download/v${PV}/nghttp2-${PV}.tar.xz"
8SRC_URI[sha256sum] = "f1b9df5f02e9942b31247e3d415483553bc4ac501c87aa39340b6d19c92a9331" 8SRC_URI[sha256sum] = "00ba1bdf0ba2c74b2a4fe6c8b1069dc9d82f82608af24442d430df97c6f9e631"
9 9
10inherit cmake manpages python3native github-releases 10inherit cmake manpages python3native github-releases
11PACKAGECONFIG[manpages] = "" 11PACKAGECONFIG[manpages] = ""
diff --git a/meta/recipes-support/pinentry/pinentry_1.3.1.bb b/meta/recipes-support/pinentry/pinentry_1.3.1.bb
index 14b368177c..0fc652cdba 100644
--- a/meta/recipes-support/pinentry/pinentry_1.3.1.bb
+++ b/meta/recipes-support/pinentry/pinentry_1.3.1.bb
@@ -20,6 +20,8 @@ SRC_URI[sha256sum] = "bc72ee27c7239007ab1896c3c2fae53b076e2c9bd2483dc2769a16902b
20 20
21inherit autotools pkgconfig 21inherit autotools pkgconfig
22 22
23require recipes-support/gnupg/drop-unknown-suffix.inc
24
23PACKAGECONFIG ??= "ncurses" 25PACKAGECONFIG ??= "ncurses"
24 26
25PACKAGECONFIG[ncurses] = "--enable-ncurses --with-ncurses-include-dir=${STAGING_INCDIR}, --disable-ncurses, ncurses" 27PACKAGECONFIG[ncurses] = "--enable-ncurses --with-ncurses-include-dir=${STAGING_INCDIR}, --disable-ncurses, ncurses"