diff options
Diffstat (limited to 'poky/meta')
38 files changed, 674 insertions, 83 deletions
diff --git a/poky/meta/classes/insane.bbclass b/poky/meta/classes/insane.bbclass index 0deebdb148..0bc6492c83 100644 --- a/poky/meta/classes/insane.bbclass +++ b/poky/meta/classes/insane.bbclass @@ -1117,6 +1117,7 @@ python do_package_qa () { # binutils is used for most checks, so need to set as dependency # POPULATESYSROOTDEPS is defined in staging class. do_package_qa[depends] += "${POPULATESYSROOTDEPS}" +do_package_qa[vardeps] = "${@bb.utils.contains('ERROR_QA', 'empty-dirs', 'QA_EMPTY_DIRS', '', d)}" do_package_qa[vardepsexclude] = "BB_TASKDEPDATA" do_package_qa[rdeptask] = "do_packagedata" addtask do_package_qa after do_packagedata do_package before do_build @@ -1182,9 +1183,9 @@ python do_qa_patch() { msg += " devtool modify %s\n" % d.getVar('PN') msg += " devtool finish --force-patch-refresh %s <layer_path>\n\n" % d.getVar('PN') msg += "Don't forget to review changes done by devtool!\n" - if 'patch-fuzz' in d.getVar('ERROR_QA'): + if bb.utils.filter('ERROR_QA', 'patch-fuzz', d): bb.error(msg) - elif 'patch-fuzz' in d.getVar('WARN_QA'): + elif bb.utils.filter('WARN_QA', 'patch-fuzz', d): bb.warn(msg) msg = "Patch log indicates that patches do not apply cleanly." oe.qa.handle_error("patch-fuzz", msg, d) diff --git a/poky/meta/classes/kernel.bbclass b/poky/meta/classes/kernel.bbclass index b3bbd3b276..7ca847f0a3 100644 --- a/poky/meta/classes/kernel.bbclass +++ b/poky/meta/classes/kernel.bbclass @@ -447,7 +447,6 @@ kernel_do_install() { # Install various kernel output (zImage, map file, config, module support files) # install -d ${D}/${KERNEL_IMAGEDEST} - install -d ${D}/boot # # When including an initramfs bundle inside a FIT image, the fitImage is created after the install task @@ -465,10 +464,10 @@ kernel_do_install() { fi done - install -m 0644 System.map ${D}/boot/System.map-${KERNEL_VERSION} - install -m 0644 .config ${D}/boot/config-${KERNEL_VERSION} - install -m 0644 vmlinux ${D}/boot/vmlinux-${KERNEL_VERSION} - [ -e Module.symvers ] && install -m 0644 Module.symvers ${D}/boot/Module.symvers-${KERNEL_VERSION} + install -m 0644 System.map ${D}/${KERNEL_IMAGEDEST}/System.map-${KERNEL_VERSION} + install -m 0644 .config ${D}/${KERNEL_IMAGEDEST}/config-${KERNEL_VERSION} + install -m 0644 vmlinux ${D}/${KERNEL_IMAGEDEST}/vmlinux-${KERNEL_VERSION} + [ -e Module.symvers ] && install -m 0644 Module.symvers ${D}/${KERNEL_IMAGEDEST}/Module.symvers-${KERNEL_VERSION} install -d ${D}${sysconfdir}/modules-load.d install -d ${D}${sysconfdir}/modprobe.d } @@ -649,8 +648,8 @@ PACKAGES = "${KERNEL_PACKAGE_NAME} ${KERNEL_PACKAGE_NAME}-base ${KERNEL_PACKAGE_ FILES:${PN} = "" FILES:${KERNEL_PACKAGE_NAME}-base = "${nonarch_base_libdir}/modules/${KERNEL_VERSION}/modules.order ${nonarch_base_libdir}/modules/${KERNEL_VERSION}/modules.builtin ${nonarch_base_libdir}/modules/${KERNEL_VERSION}/modules.builtin.modinfo" FILES:${KERNEL_PACKAGE_NAME}-image = "" -FILES:${KERNEL_PACKAGE_NAME}-dev = "/boot/System.map* /boot/Module.symvers* /boot/config* ${KERNEL_SRC_PATH} ${nonarch_base_libdir}/modules/${KERNEL_VERSION}/build" -FILES:${KERNEL_PACKAGE_NAME}-vmlinux = "/boot/vmlinux-${KERNEL_VERSION_NAME}" +FILES:${KERNEL_PACKAGE_NAME}-dev = "/${KERNEL_IMAGEDEST}/System.map* /${KERNEL_IMAGEDEST}/Module.symvers* /${KERNEL_IMAGEDEST}/config* ${KERNEL_SRC_PATH} ${nonarch_base_libdir}/modules/${KERNEL_VERSION}/build" +FILES:${KERNEL_PACKAGE_NAME}-vmlinux = "/${KERNEL_IMAGEDEST}/vmlinux-${KERNEL_VERSION_NAME}" FILES:${KERNEL_PACKAGE_NAME}-modules = "" RDEPENDS:${KERNEL_PACKAGE_NAME} = "${KERNEL_PACKAGE_NAME}-base (= ${EXTENDPKGV})" # Allow machines to override this dependency if kernel image files are @@ -712,7 +711,7 @@ python do_strip() { extra_sections = d.getVar('KERNEL_IMAGE_STRIP_EXTRA_SECTIONS') kernel_image = d.getVar('B') + "/" + d.getVar('KERNEL_OUTPUT_DIR') + "/vmlinux" - if (extra_sections and kernel_image.find('boot/vmlinux') != -1): + if (extra_sections and kernel_image.find('${KERNEL_IMAGEDEST}/vmlinux') != -1): kernel_image_stripped = kernel_image + ".stripped" shutil.copy2(kernel_image, kernel_image_stripped) oe.package.runstrip((kernel_image_stripped, 8, strip, extra_sections)) diff --git a/poky/meta/classes/mirrors.bbclass b/poky/meta/classes/mirrors.bbclass index 37dc449ade..ffdccff5fb 100644 --- a/poky/meta/classes/mirrors.bbclass +++ b/poky/meta/classes/mirrors.bbclass @@ -76,3 +76,14 @@ git://git.gnome.org/.* git://gitlab.gnome.org/GNOME/PATH;protocol=https \ git://.*/.* git://HOST/PATH;protocol=https \ git://.*/.* git://HOST/git/PATH;protocol=https \ " + +# Switch glibc and binutils recipes to use shallow clones as they're large and this +# improves user experience whilst allowing the flexibility of git urls in the recipes +BB_GIT_SHALLOW:pn-binutils = "1" +BB_GIT_SHALLOW:pn-binutils-cross-${TARGET_ARCH} = "1" +BB_GIT_SHALLOW:pn-binutils-cross-canadian-${TRANSLATED_TARGET_ARCH} = "1" +BB_GIT_SHALLOW:pn-binutils-cross-testsuite = "1" +BB_GIT_SHALLOW:pn-binutils-crosssdk-${SDK_SYS} = "1" +BB_GIT_SHALLOW:pn-glibc = "1" +PREMIRRORS += "git://sourceware.org/git/glibc.git https://downloads.yoctoproject.org/mirror/sources/ \ + git://sourceware.org/git/binutils-gdb.git https://downloads.yoctoproject.org/mirror/sources/" diff --git a/poky/meta/classes/uboot-sign.bbclass b/poky/meta/classes/uboot-sign.bbclass index 8d136e9405..4ca8118eb2 100644 --- a/poky/meta/classes/uboot-sign.bbclass +++ b/poky/meta/classes/uboot-sign.bbclass @@ -250,7 +250,7 @@ do_install:append() { [ -n "${UBOOT_DTB_BINARY}" ]; then install_helper fi - if [ "${SPL_SIGN_ENABLE}" = "1" -a -n "${SPL_DTB_BINARY}" ]; then + if [ "${UBOOT_FITIMAGE_ENABLE}" = "1" -a -n "${SPL_DTB_BINARY}" ]; then install_spl_helper fi done diff --git a/poky/meta/conf/bitbake.conf b/poky/meta/conf/bitbake.conf index 7705415a4f..3fa2bee053 100644 --- a/poky/meta/conf/bitbake.conf +++ b/poky/meta/conf/bitbake.conf @@ -915,19 +915,6 @@ SERIAL_CONSOLES ??= "${@d.getVar('SERIAL_CONSOLE').replace(' ', ';')}" NO_RECOMMENDATIONS ??= "" BAD_RECOMMENDATIONS ?= "" -# Make sure MACHINE isn't exported -# (breaks binutils at least) -MACHINE[unexport] = "1" - -# Make sure TARGET_ARCH isn't exported -# (breaks Makefiles using implicit rules, e.g. quilt, as GNU make has this -# in them, undocumented) -TARGET_ARCH[unexport] = "1" - -# Make sure DISTRO isn't exported -# (breaks sysvinit at least) -DISTRO[unexport] = "1" - # Make sure SHELL isn't exported # (can break any number of things if the user's shell isn't POSIX-compliant, # including the flock command). The user's shell shouldn't affect our builds. @@ -949,7 +936,7 @@ BB_HASHEXCLUDE_COMMON ?= "TMPDIR FILE PATH PWD BB_TASKHASH BBPATH BBSERVER DL_DI USER FILESPATH STAGING_DIR_HOST STAGING_DIR_TARGET COREBASE PRSERV_HOST \ STAMPS_DIR PRSERV_DUMPDIR PRSERV_DUMPFILE PRSERV_LOCKDOWN PARALLEL_MAKE \ CCACHE_DIR EXTERNAL_TOOLCHAIN CCACHE CCACHE_NOHASHDIR LICENSE_PATH SDKPKGSUFFIX \ - WARN_QA ERROR_QA WORKDIR STAMPCLEAN PKGDATA_DIR BUILD_ARCH SSTATE_PKGARCH \ + WARN_QA WORKDIR STAMPCLEAN PKGDATA_DIR BUILD_ARCH SSTATE_PKGARCH \ BB_WORKERCONTEXT BB_LIMITEDDEPS BB_UNIHASH extend_recipe_sysroot DEPLOY_DIR \ SSTATE_HASHEQUIV_METHOD SSTATE_HASHEQUIV_REPORT_TASKDATA \ SSTATE_HASHEQUIV_OWNER CCACHE_TOP_DIR BB_HASHSERVE GIT_CEILING_DIRECTORIES \ diff --git a/poky/meta/conf/distro/include/ptest-packagelists.inc b/poky/meta/conf/distro/include/ptest-packagelists.inc index ac3295d1aa..b51cce4d9e 100644 --- a/poky/meta/conf/distro/include/ptest-packagelists.inc +++ b/poky/meta/conf/distro/include/ptest-packagelists.inc @@ -48,6 +48,7 @@ PTESTS_FAST = "\ opkg-ptest \ pango-ptest \ parted-ptest \ + popt-ptest \ python3-atomicwrites-ptest \ python3-bcrypt-ptest \ python3-hypothesis-ptest \ diff --git a/poky/meta/lib/oe/gpg_sign.py b/poky/meta/lib/oe/gpg_sign.py index 1bce6cb792..aa9bb49f2c 100644 --- a/poky/meta/lib/oe/gpg_sign.py +++ b/poky/meta/lib/oe/gpg_sign.py @@ -58,7 +58,7 @@ class LocalSigner(object): for i in range(0, len(files), sign_chunk): subprocess.check_output(shlex.split(cmd + ' '.join(files[i:i+sign_chunk])), stderr=subprocess.STDOUT) - def detach_sign(self, input_file, keyid, passphrase_file, passphrase=None, armor=True): + def detach_sign(self, input_file, keyid, passphrase_file, passphrase=None, armor=True, output_suffix=None, use_sha256=False): """Create a detached signature of a file""" if passphrase_file and passphrase: @@ -71,6 +71,10 @@ class LocalSigner(object): cmd += ['--homedir', self.gpg_path] if armor: cmd += ['--armor'] + if output_suffix: + cmd += ['-o', input_file + "." + output_suffix] + if use_sha256: + cmd += ['--digest-algo', "SHA256"] #gpg > 2.1 supports password pipes only through the loopback interface #gpg < 2.1 errors out if given unknown parameters diff --git a/poky/meta/lib/oe/package_manager/deb/__init__.py b/poky/meta/lib/oe/package_manager/deb/__init__.py index 9f112ae25b..86ddb130ad 100644 --- a/poky/meta/lib/oe/package_manager/deb/__init__.py +++ b/poky/meta/lib/oe/package_manager/deb/__init__.py @@ -53,6 +53,7 @@ class DpkgIndexer(Indexer): index_cmds = [] deb_dirs_found = False + index_sign_files = set() for arch in arch_list: arch_dir = os.path.join(self.deploy_dir, arch) if not os.path.isdir(arch_dir): @@ -62,7 +63,10 @@ class DpkgIndexer(Indexer): cmd += "%s -fcn Packages > Packages.gz;" % gzip - with open(os.path.join(arch_dir, "Release"), "w+") as release: + release_file = os.path.join(arch_dir, "Release") + index_sign_files.add(release_file) + + with open(release_file, "w+") as release: release.write("Label: %s\n" % arch) cmd += "PSEUDO_UNLOAD=1 %s release . >> Release" % apt_ftparchive @@ -76,8 +80,17 @@ class DpkgIndexer(Indexer): return oe.utils.multiprocess_launch(create_index, index_cmds, self.d) - if self.d.getVar('PACKAGE_FEED_SIGN') == '1': - raise NotImplementedError('Package feed signing not implementd for dpkg') + if self.d.getVar('PACKAGE_FEED_SIGN', True) == '1': + signer = get_signer(self.d, self.d.getVar('PACKAGE_FEED_GPG_BACKEND', True)) + else: + signer = None + if signer: + for f in index_sign_files: + signer.detach_sign(f, + self.d.getVar('PACKAGE_FEED_GPG_NAME', True), + self.d.getVar('PACKAGE_FEED_GPG_PASSPHRASE_FILE', True), + output_suffix="gpg", + use_sha256=True) class PMPkgsList(PkgsList): diff --git a/poky/meta/recipes-core/busybox/busybox/0001-depmod-Ignore-.debug-directories.patch b/poky/meta/recipes-core/busybox/busybox/0001-depmod-Ignore-.debug-directories.patch new file mode 100644 index 0000000000..354f83a4a5 --- /dev/null +++ b/poky/meta/recipes-core/busybox/busybox/0001-depmod-Ignore-.debug-directories.patch @@ -0,0 +1,32 @@ +From 5f6ed003f10ee0bd4a508d5f59129a29f0920dfc Mon Sep 17 00:00:00 2001 +From: Saul Wold <saul.wold@windriver.com> +Date: Thu, 31 Mar 2022 11:21:45 -0700 +Subject: [PATCH] depmod: Ignore .debug directories + +The .debug/<module>.ko files do not have the correct symbol information +since it's split away from the actual <module>.ko file. Just ignore it. + +Upstream-Status: Pending + +Signed-off-by: Saul Wold <saul.wold@windriver.com> +--- + modutils/depmod.c | 3 +++ + 1 file changed, 3 insertions(+) + +diff --git a/modutils/depmod.c b/modutils/depmod.c +index bb42bbe..aa5a2de 100644 +--- a/modutils/depmod.c ++++ b/modutils/depmod.c +@@ -43,6 +43,9 @@ static int FAST_FUNC parse_module(struct recursive_state *state, + /* Arbitrary. Was sb->st_size, but that breaks .gz etc */ + size_t len = (64*1024*1024 - 4096); + ++ if (strstr(fname, ".debug") == NULL) ++ return TRUE; ++ + if (strrstr(fname, ".ko") == NULL) + return TRUE; + +-- +2.31.1 + diff --git a/poky/meta/recipes-core/busybox/busybox_1.35.0.bb b/poky/meta/recipes-core/busybox/busybox_1.35.0.bb index 7ce1717046..ab11f3d89a 100644 --- a/poky/meta/recipes-core/busybox/busybox_1.35.0.bb +++ b/poky/meta/recipes-core/busybox/busybox_1.35.0.bb @@ -1,6 +1,7 @@ require busybox.inc SRC_URI = "https://busybox.net/downloads/busybox-${PV}.tar.bz2;name=tarball \ + file://0001-depmod-Ignore-.debug-directories.patch \ file://busybox-udhcpc-no_deconfig.patch \ file://find-touchscreen.sh \ file://busybox-cron \ diff --git a/poky/meta/recipes-core/glib-2.0/glib-2.0/0001-tests-Add-C-tests-for-typechecking-with-atomic-compa.patch b/poky/meta/recipes-core/glib-2.0/glib-2.0/0001-tests-Add-C-tests-for-typechecking-with-atomic-compa.patch new file mode 100644 index 0000000000..4842f462e1 --- /dev/null +++ b/poky/meta/recipes-core/glib-2.0/glib-2.0/0001-tests-Add-C-tests-for-typechecking-with-atomic-compa.patch @@ -0,0 +1,64 @@ +From 44b4bcd56d7ac2bd8ebf00e9fa433ad897d68216 Mon Sep 17 00:00:00 2001 +From: Philip Withnall <pwithnall@endlessos.org> +Date: Fri, 1 Apr 2022 13:44:45 +0100 +Subject: [PATCH 1/2] tests: Add C++ tests for typechecking with atomic compare + and exchanges + +Signed-off-by: Philip Withnall <pwithnall@endlessos.org> + +Helps: #2625 +Upstream-Status: Submitted [https://gitlab.gnome.org/GNOME/glib/-/merge_requests/2578] +Signed-off-by: Khem Raj <raj.khem@gmail.com> +--- + glib/tests/cxx.cpp | 28 ++++++++++++++++++++++++++++ + 1 file changed, 28 insertions(+) + +diff --git a/glib/tests/cxx.cpp b/glib/tests/cxx.cpp +index be0a6bfa1..7d7f27c91 100644 +--- a/glib/tests/cxx.cpp ++++ b/glib/tests/cxx.cpp +@@ -53,6 +53,32 @@ test_typeof (void) + #endif + } + ++static void ++test_atomic_pointer_compare_and_exchange (void) ++{ ++ const gchar *str1 = "str1"; ++ const gchar *str2 = "str2"; ++ const gchar *atomic_string = str1; ++ ++ g_test_message ("Test that g_atomic_pointer_compare_and_exchange() with a " ++ "non-void* pointer doesn’t have any compiler warnings in C++ mode"); ++ ++ g_assert_true (g_atomic_pointer_compare_and_exchange (&atomic_string, str1, str2)); ++ g_assert_true (atomic_string == str2); ++} ++ ++static void ++test_atomic_int_compare_and_exchange (void) ++{ ++ gint atomic_int = 5; ++ ++ g_test_message ("Test that g_atomic_int_compare_and_exchange() doesn’t have " ++ "any compiler warnings in C++ mode"); ++ ++ g_assert_true (g_atomic_int_compare_and_exchange (&atomic_int, 5, 50)); ++ g_assert_cmpint (atomic_int, ==, 50); ++} ++ + int + main (int argc, char *argv[]) + { +@@ -63,6 +89,8 @@ main (int argc, char *argv[]) + #endif + + g_test_add_func ("/C++/typeof", test_typeof); ++ g_test_add_func ("/C++/atomic-pointer-compare-and-exchange", test_atomic_pointer_compare_and_exchange); ++ g_test_add_func ("/C++/atomic-int-compare-and-exchange", test_atomic_int_compare_and_exchange); + + return g_test_run (); + } +-- +2.35.1 + diff --git a/poky/meta/recipes-core/glib-2.0/glib-2.0/0002-gatomic-Add-a-C-variant-of-g_atomic_int_compare_and_.patch b/poky/meta/recipes-core/glib-2.0/glib-2.0/0002-gatomic-Add-a-C-variant-of-g_atomic_int_compare_and_.patch new file mode 100644 index 0000000000..a07f94672f --- /dev/null +++ b/poky/meta/recipes-core/glib-2.0/glib-2.0/0002-gatomic-Add-a-C-variant-of-g_atomic_int_compare_and_.patch @@ -0,0 +1,70 @@ +From 2668390454bc0efe52a262eb2faa4a2bd5a062e2 Mon Sep 17 00:00:00 2001 +From: Philip Withnall <pwithnall@endlessos.org> +Date: Fri, 1 Apr 2022 13:47:19 +0100 +Subject: [PATCH 2/2] gatomic: Add a C++ variant of + g_atomic_int_compare_and_exchange() +MIME-Version: 1.0 +Content-Type: text/plain; charset=UTF-8 +Content-Transfer-Encoding: 8bit + +The C++ variant implements type safety differently, to avoid warnings +from C++ compilers about: +``` +../../../gnome-commander-1.14.2/src/intviewer/searcher.cc:303:5: error: cannot initialize a parameter of type 'gint *' (aka 'int *') with an rvalue of type 'void *' + g_atomic_int_compare_and_exchange ((gint*)&src->priv->progress_value, oldval, (gint)d); + ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +/mnt/b/yoe/master/build/tmp/work/cortexa72-yoe-linux/gnome-commander/1.14.2-r0/recipe-sysroot/usr/include/glib-2.0/glib/gatomic.h:160:44: note: expanded from macro 'g_atomic_int_compare_and_exchange' + __atomic_compare_exchange_n ((atomic), (void *) (&(gaicae_oldval)), (newval), FALSE, __ATOMIC_SEQ_CST, __ATOMIC_SEQ_CST) ? TRUE : FALSE; \ + ^~~~~~~~~~~~~~~~~~~~~~~~~~~ +``` + +This complements the existing C++ variant for +`g_atomic_pointer_compare_and_exchange()`, and fixes a regression on C++ +from https://gitlab.gnome.org/GNOME/glib/-/merge_requests/2114. + +With the addition of the unit tests in the previous commit, this is +effectively tested by the FreeBSD and macOS CI jobs, as they use +`clang++` in C++ mode. `g++` doesn’t seem to emit a warning about this. + +Signed-off-by: Philip Withnall <pwithnall@endlessos.org> + +Fixes: #2625 +Upstream-Status: Submitted [https://gitlab.gnome.org/GNOME/glib/-/merge_requests/2578] +Signed-off-by: Khem Raj <raj.khem@gmail.com> +--- + glib/gatomic.h | 12 ++++++++++++ + 1 file changed, 12 insertions(+) + +diff --git a/glib/gatomic.h b/glib/gatomic.h +index 5eba1dbc7..8b2b880c8 100644 +--- a/glib/gatomic.h ++++ b/glib/gatomic.h +@@ -152,6 +152,17 @@ G_END_DECLS + (void) (0 ? *(atomic) ^ *(atomic) : 1); \ + __atomic_fetch_sub ((atomic), 1, __ATOMIC_SEQ_CST) == 1; \ + })) ++#if defined(glib_typeof) && defined(__cplusplus) && __cplusplus >= 201103L ++/* See comments below about equivalent g_atomic_pointer_compare_and_exchange() ++ * shenanigans for type-safety when compiling in C++ mode. */ ++#define g_atomic_int_compare_and_exchange(atomic, oldval, newval) \ ++ (G_GNUC_EXTENSION ({ \ ++ glib_typeof (*(atomic)) gaicae_oldval = (oldval); \ ++ G_STATIC_ASSERT (sizeof *(atomic) == sizeof (gint)); \ ++ (void) (0 ? *(atomic) ^ (newval) ^ (oldval) : 1); \ ++ __atomic_compare_exchange_n ((atomic), &gaicae_oldval, (newval), FALSE, __ATOMIC_SEQ_CST, __ATOMIC_SEQ_CST) ? TRUE : FALSE; \ ++ })) ++#else /* if !(defined(glib_typeof) && defined(__cplusplus) && __cplusplus >= 201103L) */ + #define g_atomic_int_compare_and_exchange(atomic, oldval, newval) \ + (G_GNUC_EXTENSION ({ \ + gint gaicae_oldval = (oldval); \ +@@ -159,6 +170,7 @@ G_END_DECLS + (void) (0 ? *(atomic) ^ (newval) ^ (oldval) : 1); \ + __atomic_compare_exchange_n ((atomic), (void *) (&(gaicae_oldval)), (newval), FALSE, __ATOMIC_SEQ_CST, __ATOMIC_SEQ_CST) ? TRUE : FALSE; \ + })) ++#endif /* defined(glib_typeof) */ + #define g_atomic_int_add(atomic, val) \ + (G_GNUC_EXTENSION ({ \ + G_STATIC_ASSERT (sizeof *(atomic) == sizeof (gint)); \ +-- +2.35.1 + diff --git a/poky/meta/recipes-core/glib-2.0/glib-2.0_2.72.0.bb b/poky/meta/recipes-core/glib-2.0/glib-2.0_2.72.0.bb index 8b7016ec0f..62479e3c3f 100644 --- a/poky/meta/recipes-core/glib-2.0/glib-2.0_2.72.0.bb +++ b/poky/meta/recipes-core/glib-2.0/glib-2.0_2.72.0.bb @@ -16,6 +16,8 @@ SRC_URI = "${GNOME_MIRROR}/glib/${SHRT_VER}/glib-${PV}.tar.xz \ file://0001-Do-not-write-bindir-into-pkg-config-files.patch \ file://0001-meson-Run-atomics-test-on-clang-as-well.patch \ file://0001-gio-tests-resources.c-comment-out-a-build-host-only-.patch \ + file://0001-tests-Add-C-tests-for-typechecking-with-atomic-compa.patch \ + file://0002-gatomic-Add-a-C-variant-of-g_atomic_int_compare_and_.patch \ " SRC_URI:append:class-native = " file://relocate-modules.patch" diff --git a/poky/meta/recipes-core/images/build-appliance-image_15.0.0.bb b/poky/meta/recipes-core/images/build-appliance-image_15.0.0.bb index 73fdd5c791..703e721a2b 100644 --- a/poky/meta/recipes-core/images/build-appliance-image_15.0.0.bb +++ b/poky/meta/recipes-core/images/build-appliance-image_15.0.0.bb @@ -24,7 +24,7 @@ IMAGE_FSTYPES = "wic.vmdk wic.vhd wic.vhdx" inherit core-image setuptools3 -SRCREV ?= "0d518533e2794586234e69c80b65ca453b1b33b9" +SRCREV ?= "0b4231b597618e18668b8340f4209cd364b2b2d0" SRC_URI = "git://git.yoctoproject.org/poky;branch=master \ file://Yocto_Build_Appliance.vmx \ file://Yocto_Build_Appliance.vmxf \ diff --git a/poky/meta/recipes-core/os-release/os-release.bb b/poky/meta/recipes-core/os-release/os-release.bb index 637d059e8b..caa2ed25aa 100644 --- a/poky/meta/recipes-core/os-release/os-release.bb +++ b/poky/meta/recipes-core/os-release/os-release.bb @@ -50,6 +50,11 @@ do_install () { install -d ${D}${nonarch_libdir} ${D}${sysconfdir} install -m 0644 os-release ${D}${nonarch_libdir}/ ln -rs ${D}${nonarch_libdir}/os-release ${D}${sysconfdir}/os-release + ln -rs ${D}${nonarch_libdir}/os-release ${D}${sysconfdir}/initrd-release } -FILES:${PN} += "${nonarch_libdir}/os-release" +FILES:${PN} = "${sysconfdir}/os-release ${nonarch_libdir}/os-release" + +PACKAGES += "${PN}-initrd" +FILES:${PN}-initrd = "${sysconfdir}/initrd-release" +RDEPENDS:${PN}-initrd += "${PN}" diff --git a/poky/meta/recipes-devtools/gcc/gcc-11.2.inc b/poky/meta/recipes-devtools/gcc/gcc-11.2.inc index 2394c86e29..68e0d203fc 100644 --- a/poky/meta/recipes-devtools/gcc/gcc-11.2.inc +++ b/poky/meta/recipes-devtools/gcc/gcc-11.2.inc @@ -68,6 +68,7 @@ SRC_URI = "\ file://0003-CVE-2021-42574.patch \ file://0004-CVE-2021-42574.patch \ file://0001-CVE-2021-46195.patch \ + file://0042-Fix-thread-stack-size-init.patch \ " SRC_URI[sha256sum] = "d08edc536b54c372a1010ff6619dd274c0f1603aa49212ba20f7aa2cda36fa8b" diff --git a/poky/meta/recipes-devtools/gcc/gcc/0042-Fix-thread-stack-size-init.patch b/poky/meta/recipes-devtools/gcc/gcc/0042-Fix-thread-stack-size-init.patch new file mode 100644 index 0000000000..3fb9ee98de --- /dev/null +++ b/poky/meta/recipes-devtools/gcc/gcc/0042-Fix-thread-stack-size-init.patch @@ -0,0 +1,23 @@ +The patch is needed in order to support recent glibc (2.34). + +Upstream-Status: Backport [https://gcc.gnu.org/git/?p=gcc.git;a=commit;h=91f8a7a34cf29ae7c465603a801326767f1cc7e9] + +Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org> + +--- +--- a/libsanitizer/sanitizer_common/sanitizer_posix_libcdep.cpp 2022-03-15 07:59:54.515325204 -0700 ++++ b/libsanitizer/sanitizer_common/sanitizer_posix_libcdep.cpp 2022-03-15 08:01:45.919405931 -0700 +@@ -166,9 +166,10 @@ + #if !SANITIZER_GO + // TODO(glider): different tools may require different altstack size. + static uptr GetAltStackSize() { +- // SIGSTKSZ is not enough. +- static const uptr kAltStackSize = SIGSTKSZ * 4; +- return kAltStackSize; ++ // Note: since GLIBC_2.31, SIGSTKSZ may be a function call, so this may be ++ // more costly that you think. However GetAltStackSize is only call 2-3 times ++ // per thread so don't cache the evaluation. ++ return SIGSTKSZ * 4; + } + + void SetAlternateSignalStack() { diff --git a/poky/meta/recipes-devtools/pseudo/pseudo_git.bb b/poky/meta/recipes-devtools/pseudo/pseudo_git.bb index d20136aef9..e7ef6a730c 100644 --- a/poky/meta/recipes-devtools/pseudo/pseudo_git.bb +++ b/poky/meta/recipes-devtools/pseudo/pseudo_git.bb @@ -13,7 +13,7 @@ SRC_URI:append:class-nativesdk = " \ file://older-glibc-symbols.patch" SRC_URI[prebuilt.sha256sum] = "ed9f456856e9d86359f169f46a70ad7be4190d6040282b84c8d97b99072485aa" -SRCREV = "df1d1321fb093283485c387e3c933d2d264e509c" +SRCREV = "2b4b88eb513335b0ece55fe51854693d9b20de35" S = "${WORKDIR}/git" PV = "1.9.0+git${SRCPV}" diff --git a/poky/meta/recipes-devtools/python/python3-jinja2_3.1.1.bb b/poky/meta/recipes-devtools/python/python3-jinja2_3.1.1.bb index 0a2bcd71f5..c38686a5c2 100644 --- a/poky/meta/recipes-devtools/python/python3-jinja2_3.1.1.bb +++ b/poky/meta/recipes-devtools/python/python3-jinja2_3.1.1.bb @@ -1,5 +1,5 @@ DESCRIPTION = "Python Jinja2: A small but fast and easy to use stand-alone template engine written in pure python." -HOMEPAGE = "https://pypi.org/project/Jinja/" +HOMEPAGE = "https://pypi.org/project/Jinja2/" LICENSE = "BSD-3-Clause" LIC_FILES_CHKSUM = "file://LICENSE.rst;md5=5dc88300786f1c214c1e9827a5229462" diff --git a/poky/meta/recipes-extended/timezone/timezone.inc b/poky/meta/recipes-extended/timezone/timezone.inc index 43d14d7f12..cdd1a2ac3c 100644 --- a/poky/meta/recipes-extended/timezone/timezone.inc +++ b/poky/meta/recipes-extended/timezone/timezone.inc @@ -6,7 +6,7 @@ SECTION = "base" LICENSE = "PD & BSD-3-Clause" LIC_FILES_CHKSUM = "file://LICENSE;md5=c679c9d6b02bc2757b3eaf8f53c43fba" -PV = "2021e" +PV = "2022a" SRC_URI =" http://www.iana.org/time-zones/repository/releases/tzcode${PV}.tar.gz;name=tzcode \ http://www.iana.org/time-zones/repository/releases/tzdata${PV}.tar.gz;name=tzdata \ @@ -14,6 +14,6 @@ SRC_URI =" http://www.iana.org/time-zones/repository/releases/tzcode${PV}.tar.gz UPSTREAM_CHECK_URI = "http://www.iana.org/time-zones" -SRC_URI[tzcode.sha256sum] = "584666393a5424d13d27ec01183da17703273664742e049d4f62f62dab631775" -SRC_URI[tzdata.sha256sum] = "07ec42b737d0d3c6be9c337f8abb5f00554a0f9cc4fcf01a703d69403b6bb2b1" +SRC_URI[tzcode.sha256sum] = "f8575e7e33be9ee265df2081092526b81c80abac3f4a04399ae9d4d91cdadac7" +SRC_URI[tzdata.sha256sum] = "ef7fffd9f4f50f4f58328b35022a32a5a056b245c5cb3d6791dddb342f871664" diff --git a/poky/meta/recipes-extended/unzip/unzip/CVE-2021-4217.patch b/poky/meta/recipes-extended/unzip/unzip/CVE-2021-4217.patch new file mode 100644 index 0000000000..6ba2b879a3 --- /dev/null +++ b/poky/meta/recipes-extended/unzip/unzip/CVE-2021-4217.patch @@ -0,0 +1,67 @@ +From 731d698377dbd1f5b1b90efeb8094602ed59fc40 Mon Sep 17 00:00:00 2001 +From: Nils Bars <nils.bars@t-online.de> +Date: Mon, 17 Jan 2022 16:53:16 +0000 +Subject: [PATCH] Fix null pointer dereference and use of uninitialized data + +This fixes a bug that causes use of uninitialized heap data if `readbuf` fails +to read as many bytes as indicated by the extra field length attribute. +Furthermore, this fixes a null pointer dereference if an archive contains an +`EF_UNIPATH` extra field but does not have a filename set. +--- + fileio.c | 5 ++++- + process.c | 6 +++++- + 2 files changed, 9 insertions(+), 2 deletions(-) +--- + +Patch from: +https://bugs.launchpad.net/ubuntu/+source/unzip/+bug/1957077 +https://launchpadlibrarian.net/580782282/0001-Fix-null-pointer-dereference-and-use-of-uninitialized-data.patch +Regenerated to apply without offsets. + +CVE: CVE-2021-4217 + +Upstream-Status: Pending [infozip upstream inactive] + +Signed-off-by: Joe Slater <joe.slater@windriver.com> + + +diff --git a/fileio.c b/fileio.c +index 14460f3..1dc319e 100644 +--- a/fileio.c ++++ b/fileio.c +@@ -2301,8 +2301,11 @@ int do_string(__G__ length, option) /* return PK-type error code */ + seek_zipf(__G__ G.cur_zipfile_bufstart - G.extra_bytes + + (G.inptr-G.inbuf) + length); + } else { +- if (readbuf(__G__ (char *)G.extra_field, length) == 0) ++ unsigned bytes_read = readbuf(__G__ (char *)G.extra_field, length); ++ if (bytes_read == 0) + return PK_EOF; ++ if (bytes_read != length) ++ return PK_ERR; + /* Looks like here is where extra fields are read */ + if (getZip64Data(__G__ G.extra_field, length) != PK_COOL) + { +diff --git a/process.c b/process.c +index 5f8f6c6..de843a5 100644 +--- a/process.c ++++ b/process.c +@@ -2058,10 +2058,14 @@ int getUnicodeData(__G__ ef_buf, ef_len) + G.unipath_checksum = makelong(offset + ef_buf); + offset += 4; + ++ if (!G.filename_full) { ++ /* Check if we have a unicode extra section but no filename set */ ++ return PK_ERR; ++ } ++ + /* + * Compute 32-bit crc + */ +- + chksum = crc32(chksum, (uch *)(G.filename_full), + strlen(G.filename_full)); + +-- +2.32.0 + diff --git a/poky/meta/recipes-extended/unzip/unzip_6.0.bb b/poky/meta/recipes-extended/unzip/unzip_6.0.bb index af94a39195..c222a684b4 100644 --- a/poky/meta/recipes-extended/unzip/unzip_6.0.bb +++ b/poky/meta/recipes-extended/unzip/unzip_6.0.bb @@ -28,6 +28,7 @@ SRC_URI = "${SOURCEFORGE_MIRROR}/infozip/UnZip%206.x%20%28latest%29/UnZip%206.0/ file://CVE-2019-13232_p3.patch \ file://unzip_optimization.patch \ file://0001-configure-Pass-LDFLAGS-to-tests-doing-link-step.patch \ + file://CVE-2021-4217.patch \ " UPSTREAM_VERSION_UNKNOWN = "1" diff --git a/poky/meta/recipes-graphics/libsdl2/libsdl2/0001-Disable-libunwind-in-native-OE-builds-by-not-looking.patch b/poky/meta/recipes-graphics/libsdl2/libsdl2/0001-Disable-libunwind-in-native-OE-builds-by-not-looking.patch new file mode 100644 index 0000000000..214664f621 --- /dev/null +++ b/poky/meta/recipes-graphics/libsdl2/libsdl2/0001-Disable-libunwind-in-native-OE-builds-by-not-looking.patch @@ -0,0 +1,38 @@ +From 50c691e83f81b235bb96ef996dd4568ffaae256f Mon Sep 17 00:00:00 2001 +From: Carlos Rafael Giani <crg7475@mailbox.org> +Date: Fri, 18 Mar 2022 12:06:23 +0100 +Subject: [PATCH] Disable libunwind in native OE builds by not looking for + libunwind + +This is a workaround for this build error: + +| -- Checking for one of the modules 'libunwind' +| CMake Error at [...]/build/tmp/work/x86_64-linux/libsdl2-native/2.0.20-r0/recipe-sysroot-native/usr/share/cmake-3.22/Modules/FindPkgConfig.cmake:890 (message): +| None of the required 'libunwind' found +| Call Stack (most recent call first): +| CMakeLists.txt:1367 (pkg_search_module) + +By not looking for the libunwind header, the rest of the libunwind +specific bits in the CMake build script are disabled. + +Upstream-Status: Inappropriate [OE specific] +--- + CMakeLists.txt | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/CMakeLists.txt b/CMakeLists.txt +index 64f9fbf..12a4d8f 100644 +--- a/CMakeLists.txt ++++ b/CMakeLists.txt +@@ -862,7 +862,7 @@ if(SDL_LIBC) + check_include_file(sys/types.h HAVE_SYS_TYPES_H) + foreach(_HEADER + stdio.h stdlib.h stddef.h stdarg.h malloc.h memory.h string.h limits.h float.h +- strings.h wchar.h inttypes.h stdint.h ctype.h math.h iconv.h signal.h libunwind.h) ++ strings.h wchar.h inttypes.h stdint.h ctype.h math.h iconv.h signal.h) + string(TOUPPER "HAVE_${_HEADER}" _UPPER) + string(REPLACE "." "_" _HAVE_H ${_UPPER}) + check_include_file("${_HEADER}" ${_HAVE_H}) +-- +2.32.0 + diff --git a/poky/meta/recipes-graphics/libsdl2/libsdl2_2.0.20.bb b/poky/meta/recipes-graphics/libsdl2/libsdl2_2.0.20.bb index 58bc94cc86..4ba22c1fe6 100644 --- a/poky/meta/recipes-graphics/libsdl2/libsdl2_2.0.20.bb +++ b/poky/meta/recipes-graphics/libsdl2/libsdl2_2.0.20.bb @@ -20,6 +20,7 @@ SRC_URI = "http://www.libsdl.org/release/SDL2-${PV}.tar.gz \ file://optional-libunwind-generic.patch \ file://0001-sdlchecks.cmake-pass-cflags-to-the-appropriate-cmake.patch \ " +SRC_URI:append:class-native = " file://0001-Disable-libunwind-in-native-OE-builds-by-not-looking.patch" S = "${WORKDIR}/SDL2-${PV}" diff --git a/poky/meta/recipes-graphics/waffle/waffle_1.7.0.bb b/poky/meta/recipes-graphics/waffle/waffle_1.7.0.bb index b931515700..f1fd9e7630 100644 --- a/poky/meta/recipes-graphics/waffle/waffle_1.7.0.bb +++ b/poky/meta/recipes-graphics/waffle/waffle_1.7.0.bb @@ -23,7 +23,8 @@ DEPENDS:append = " python3 cmake-native" # stack. PACKAGECONFIG ??= "${@bb.utils.contains('DISTRO_FEATURES', 'x11', 'glx x11-egl', '', d)} \ ${@bb.utils.contains('DISTRO_FEATURES', 'wayland', 'wayland', '', d)} \ - surfaceless-egl gbm" + ${@bb.utils.contains('DISTRO_FEATURES', 'opengl', 'gbm surfaceless-egl', '', d)} \ +" # virtual/libgl requires opengl in DISTRO_FEATURES. REQUIRED_DISTRO_FEATURES += "${@bb.utils.contains('DEPENDS', 'virtual/${MLPREFIX}libgl', 'opengl', '', d)}" diff --git a/poky/meta/recipes-kernel/kmod/depmodwrapper-cross_1.0.bb b/poky/meta/recipes-kernel/kmod/depmodwrapper-cross_1.0.bb index 04fc14a6d2..303026ad78 100644 --- a/poky/meta/recipes-kernel/kmod/depmodwrapper-cross_1.0.bb +++ b/poky/meta/recipes-kernel/kmod/depmodwrapper-cross_1.0.bb @@ -30,11 +30,16 @@ if [ -r "${PKGDATA_DIR}/kernel-depmod/kernel-abiversion" ]; then kernelabi=\$(cat "${PKGDATA_DIR}/kernel-depmod/kernel-abiversion") fi +if [ ! -e "\$3${nonarch_base_libdir}/depmod.d/exclude.conf" ]; then + mkdir -p "\$3${nonarch_base_libdir}/depmod.d" + echo "exclude .debug" > "\$3${nonarch_base_libdir}/depmod.d/exclude.conf" +fi + if [ ! -r ${PKGDATA_DIR}/kernel-depmod/System.map-\$4 ] || [ "\$kernelabi" != "\$4" ]; then echo "Unable to read: ${PKGDATA_DIR}/kernel-depmod/System.map-\$4" >&2 - exec env depmod -C "\$3${sysconfdir}/depmod.d" "\$1" "\$2" "\$3" "\$4" + exec env depmod -C "\$3${nonarch_base_libdir}/depmod.d" "\$1" "\$2" "\$3" "\$4" else - exec env depmod -C "\$3${sysconfdir}/depmod.d" "\$1" "\$2" "\$3" -F "${PKGDATA_DIR}/kernel-depmod/System.map-\$4" "\$4" + exec env depmod -C "\$3${nonarch_base_libdir}/depmod.d" "\$1" "\$2" "\$3" -F "${PKGDATA_DIR}/kernel-depmod/System.map-\$4" "\$4" fi EOF chmod +x ${D}${bindir_crossscripts}/depmodwrapper diff --git a/poky/meta/recipes-kernel/kmod/kmod/0001-depmod-Add-support-for-excluding-a-directory.patch b/poky/meta/recipes-kernel/kmod/kmod/0001-depmod-Add-support-for-excluding-a-directory.patch new file mode 100644 index 0000000000..ea0570af2b --- /dev/null +++ b/poky/meta/recipes-kernel/kmod/kmod/0001-depmod-Add-support-for-excluding-a-directory.patch @@ -0,0 +1,172 @@ +From f50e2d67575ac5f256fb853ca9d29aeac92d9a57 Mon Sep 17 00:00:00 2001 +From: Saul Wold <saul.wold@windriver.com> +Date: Thu, 31 Mar 2022 14:56:28 -0700 +Subject: [PATCH] depmod: Add support for excluding a directory + +This adds support to depmod to enable a new exclude directive in +the depmod.d/*.conf configuration file. Currently depmod +already excludes directories named source or build. This change +will allow additional directories like .debug to be excluded also +via a new exclude directive. + +depmod.d/exclude.conf example: +exclude .debug + +Upstream-Status: Accepted + +Signed-off-by: Saul Wold <saul.wold@windriver.com> +[ Fix warnings and make should_exclude_dir() return bool ] +Signed-off-by: Lucas De Marchi <lucas.demarchi@intel.com> +--- + man/depmod.d.xml | 14 ++++++++++ + tools/depmod.c | 66 +++++++++++++++++++++++++++++++++++++++++++++--- + 2 files changed, 76 insertions(+), 4 deletions(-) + +diff --git a/man/depmod.d.xml b/man/depmod.d.xml +index b315e93..76548e9 100644 +--- a/man/depmod.d.xml ++++ b/man/depmod.d.xml +@@ -131,6 +131,20 @@ + </para> + </listitem> + </varlistentry> ++ <varlistentry> ++ <term>exclude <replaceable>excludedir</replaceable> ++ </term> ++ <listitem> ++ <para> ++ This specifies the trailing directories that will be excluded ++ during the search for kernel modules. ++ </para> ++ <para> ++ The <replaceable>excludedir</replaceable> is the trailing directory ++ to exclude ++ </para> ++ </listitem> ++ </varlistentry> + </variablelist> + </refsect1> + +diff --git a/tools/depmod.c b/tools/depmod.c +index 07a35ba..4117dd1 100644 +--- a/tools/depmod.c ++++ b/tools/depmod.c +@@ -458,6 +458,11 @@ struct cfg_external { + char path[]; + }; + ++struct cfg_exclude { ++ struct cfg_exclude *next; ++ char exclude_dir[]; ++}; ++ + struct cfg { + const char *kversion; + char dirname[PATH_MAX]; +@@ -469,6 +474,7 @@ struct cfg { + struct cfg_override *overrides; + struct cfg_search *searches; + struct cfg_external *externals; ++ struct cfg_exclude *excludes; + }; + + static enum search_type cfg_define_search_type(const char *path) +@@ -580,6 +586,30 @@ static void cfg_external_free(struct cfg_external *ext) + free(ext); + } + ++static int cfg_exclude_add(struct cfg *cfg, const char *path) ++{ ++ struct cfg_exclude *exc; ++ size_t len = strlen(path); ++ ++ exc = malloc(sizeof(struct cfg_exclude) + len + 1); ++ if (exc == NULL) { ++ ERR("exclude add: out of memory\n"); ++ return -ENOMEM; ++ } ++ memcpy(exc->exclude_dir, path, len + 1); ++ ++ DBG("exclude add: %s\n", path); ++ ++ exc->next = cfg->excludes; ++ cfg->excludes = exc; ++ return 0; ++} ++ ++static void cfg_exclude_free(struct cfg_exclude *exc) ++{ ++ free(exc); ++} ++ + static int cfg_kernel_matches(const struct cfg *cfg, const char *pattern) + { + regex_t re; +@@ -657,6 +687,11 @@ static int cfg_file_parse(struct cfg *cfg, const char *filename) + } + + cfg_external_add(cfg, dir); ++ } else if (streq(cmd, "exclude")) { ++ const char *sp; ++ while ((sp = strtok_r(NULL, "\t ", &saveptr)) != NULL) { ++ cfg_exclude_add(cfg, sp); ++ } + } else if (streq(cmd, "include") + || streq(cmd, "make_map_files")) { + INF("%s:%u: command %s not implemented yet\n", +@@ -857,6 +892,12 @@ static void cfg_free(struct cfg *cfg) + cfg->externals = cfg->externals->next; + cfg_external_free(tmp); + } ++ ++ while (cfg->excludes) { ++ struct cfg_exclude *tmp = cfg->excludes; ++ cfg->excludes = cfg->excludes->next; ++ cfg_exclude_free(tmp); ++ } + } + + +@@ -1229,6 +1270,25 @@ add: + return 0; + } + ++static bool should_exclude_dir(const struct cfg *cfg, const char *name) ++{ ++ struct cfg_exclude *exc; ++ ++ if (name[0] == '.' && (name[1] == '\0' || ++ (name[1] == '.' && name[2] == '\0'))) ++ return true; ++ ++ if (streq(name, "build") || streq(name, "source")) ++ return true; ++ ++ for (exc = cfg->excludes; exc != NULL; exc = exc->next) { ++ if (streq(name, exc->exclude_dir)) ++ return true; ++ } ++ ++ return false; ++} ++ + static int depmod_modules_search_dir(struct depmod *depmod, DIR *d, size_t baselen, struct scratchbuf *s_path) + { + struct dirent *de; +@@ -1240,11 +1300,9 @@ static int depmod_modules_search_dir(struct depmod *depmod, DIR *d, size_t basel + size_t namelen; + uint8_t is_dir; + +- if (name[0] == '.' && (name[1] == '\0' || +- (name[1] == '.' && name[2] == '\0'))) +- continue; +- if (streq(name, "build") || streq(name, "source")) ++ if (should_exclude_dir(depmod->cfg, name)) + continue; ++ + namelen = strlen(name); + if (scratchbuf_alloc(s_path, baselen + namelen + 2) < 0) { + err = -ENOMEM; +-- +2.31.1 + diff --git a/poky/meta/recipes-kernel/kmod/kmod_29.bb b/poky/meta/recipes-kernel/kmod/kmod_29.bb index 91951edde1..9b66349066 100644 --- a/poky/meta/recipes-kernel/kmod/kmod_29.bb +++ b/poky/meta/recipes-kernel/kmod/kmod_29.bb @@ -20,6 +20,7 @@ SRCREV = "b6ecfc916a17eab8f93be5b09f4e4f845aabd3d1" SRC_URI = "git://git.kernel.org/pub/scm/utils/kernel/kmod/kmod.git;branch=master \ file://depmod-search.conf \ file://avoid_parallel_tests.patch \ + file://0001-depmod-Add-support-for-excluding-a-directory.patch \ " S = "${WORKDIR}/git" @@ -64,6 +65,9 @@ do_install:append () { # install depmod.d file for search/ dir install -Dm644 "${WORKDIR}/depmod-search.conf" "${D}${nonarch_base_libdir}/depmod.d/search.conf" + + # Add .debug to the exclude path for depmod + echo "exclude .debug" > ${D}${nonarch_base_libdir}/depmod.d/exclude.conf } ALTERNATIVE_PRIORITY = "70" diff --git a/poky/meta/recipes-kernel/linux/linux-yocto-rt_5.10.bb b/poky/meta/recipes-kernel/linux/linux-yocto-rt_5.10.bb index a8b6aa203d..3ff54b9ebb 100644 --- a/poky/meta/recipes-kernel/linux/linux-yocto-rt_5.10.bb +++ b/poky/meta/recipes-kernel/linux/linux-yocto-rt_5.10.bb @@ -11,13 +11,13 @@ python () { raise bb.parse.SkipRecipe("Set PREFERRED_PROVIDER_virtual/kernel to linux-yocto-rt to enable it") } -SRCREV_machine ?= "7f96d3fd60eea0ab38afdf07b3fc7c8c9f501802" -SRCREV_meta ?= "24ab54209a8822aad92afe2c51ea5b95f5175394" +SRCREV_machine ?= "40a6731993d406d6c9fed43cb20c6a4f178ff2cc" +SRCREV_meta ?= "2278ed571c14df6e87d8e01ac26f649d98020623" SRC_URI = "git://git.yoctoproject.org/linux-yocto.git;branch=${KBRANCH};name=machine \ git://git.yoctoproject.org/yocto-kernel-cache;type=kmeta;name=meta;branch=yocto-5.10;destsuffix=${KMETA}" -LINUX_VERSION ?= "5.10.107" +LINUX_VERSION ?= "5.10.109" LIC_FILES_CHKSUM = "file://COPYING;md5=6bc538ed5bd9a7fc9398086aedcd7e46" diff --git a/poky/meta/recipes-kernel/linux/linux-yocto-rt_5.15.bb b/poky/meta/recipes-kernel/linux/linux-yocto-rt_5.15.bb index 8edafbcc4e..87ccfc1f45 100644 --- a/poky/meta/recipes-kernel/linux/linux-yocto-rt_5.15.bb +++ b/poky/meta/recipes-kernel/linux/linux-yocto-rt_5.15.bb @@ -11,13 +11,13 @@ python () { raise bb.parse.SkipRecipe("Set PREFERRED_PROVIDER_virtual/kernel to linux-yocto-rt to enable it") } -SRCREV_machine ?= "593f500eff5997a184c8d3836e1e26b199af994f" -SRCREV_meta ?= "fee71fc34f2e551ebfd7bf0996d82f3447787e7a" +SRCREV_machine ?= "29d051cc421a76432897019edc33edae35b16e39" +SRCREV_meta ?= "63e25b5717751b4b33685bd5991d10c52934a4c6" SRC_URI = "git://git.yoctoproject.org/linux-yocto.git;branch=${KBRANCH};name=machine \ git://git.yoctoproject.org/yocto-kernel-cache;type=kmeta;name=meta;branch=yocto-5.15;destsuffix=${KMETA}" -LINUX_VERSION ?= "5.15.30" +LINUX_VERSION ?= "5.15.32" LIC_FILES_CHKSUM = "file://COPYING;md5=6bc538ed5bd9a7fc9398086aedcd7e46" diff --git a/poky/meta/recipes-kernel/linux/linux-yocto-tiny_5.10.bb b/poky/meta/recipes-kernel/linux/linux-yocto-tiny_5.10.bb index 758260c3d8..bbaa0ebc00 100644 --- a/poky/meta/recipes-kernel/linux/linux-yocto-tiny_5.10.bb +++ b/poky/meta/recipes-kernel/linux/linux-yocto-tiny_5.10.bb @@ -6,7 +6,7 @@ KCONFIG_MODE = "--allnoconfig" require recipes-kernel/linux/linux-yocto.inc -LINUX_VERSION ?= "5.10.107" +LINUX_VERSION ?= "5.10.109" LIC_FILES_CHKSUM = "file://COPYING;md5=6bc538ed5bd9a7fc9398086aedcd7e46" DEPENDS += "${@bb.utils.contains('ARCH', 'x86', 'elfutils-native', '', d)}" @@ -15,9 +15,9 @@ DEPENDS += "openssl-native util-linux-native" KMETA = "kernel-meta" KCONF_BSP_AUDIT_LEVEL = "2" -SRCREV_machine:qemuarm ?= "d47f1b40f2f77d0c810defd853c69eb39cb84bf5" -SRCREV_machine ?= "1ae0844c6a36151066744e43fd30db3a946bc21d" -SRCREV_meta ?= "24ab54209a8822aad92afe2c51ea5b95f5175394" +SRCREV_machine:qemuarm ?= "9524d0ca0feeeb4cb698e3c984f4391ccb4b8e19" +SRCREV_machine ?= "bccf3a5f14511fb8ce6a9dd990216508d2c2ec6e" +SRCREV_meta ?= "2278ed571c14df6e87d8e01ac26f649d98020623" PV = "${LINUX_VERSION}+git${SRCPV}" diff --git a/poky/meta/recipes-kernel/linux/linux-yocto-tiny_5.15.bb b/poky/meta/recipes-kernel/linux/linux-yocto-tiny_5.15.bb index 01c59a1ffc..d8ce5dc518 100644 --- a/poky/meta/recipes-kernel/linux/linux-yocto-tiny_5.15.bb +++ b/poky/meta/recipes-kernel/linux/linux-yocto-tiny_5.15.bb @@ -6,7 +6,7 @@ KCONFIG_MODE = "--allnoconfig" require recipes-kernel/linux/linux-yocto.inc -LINUX_VERSION ?= "5.15.30" +LINUX_VERSION ?= "5.15.32" LIC_FILES_CHKSUM = "file://COPYING;md5=6bc538ed5bd9a7fc9398086aedcd7e46" DEPENDS += "${@bb.utils.contains('ARCH', 'x86', 'elfutils-native', '', d)}" @@ -15,9 +15,9 @@ DEPENDS += "openssl-native util-linux-native" KMETA = "kernel-meta" KCONF_BSP_AUDIT_LEVEL = "2" -SRCREV_machine:qemuarm ?= "0c05aecb4a6a902d8b44b69f887dd991e091b234" -SRCREV_machine ?= "94c4403d43f8d4a4fa330d9342350b02426696d4" -SRCREV_meta ?= "fee71fc34f2e551ebfd7bf0996d82f3447787e7a" +SRCREV_machine:qemuarm ?= "cc9e92e826af229b841fcaf8c645e638a86eba43" +SRCREV_machine ?= "c3d54a67cbf3fb8e6df2d88c80e9d2c74f69aba4" +SRCREV_meta ?= "63e25b5717751b4b33685bd5991d10c52934a4c6" PV = "${LINUX_VERSION}+git${SRCPV}" diff --git a/poky/meta/recipes-kernel/linux/linux-yocto_5.10.bb b/poky/meta/recipes-kernel/linux/linux-yocto_5.10.bb index 9c1bd26b36..0cf14b748f 100644 --- a/poky/meta/recipes-kernel/linux/linux-yocto_5.10.bb +++ b/poky/meta/recipes-kernel/linux/linux-yocto_5.10.bb @@ -13,17 +13,17 @@ KBRANCH:qemux86 ?= "v5.10/standard/base" KBRANCH:qemux86-64 ?= "v5.10/standard/base" KBRANCH:qemumips64 ?= "v5.10/standard/mti-malta64" -SRCREV_machine:qemuarm ?= "2ef8231651bb6a4c79b307f59a794b92238546ec" -SRCREV_machine:qemuarm64 ?= "00684b441f15d202c5849eed164a9b3b94a5c1e8" -SRCREV_machine:qemumips ?= "661a4f517906253e074fe301d68ff1e6b6968e9f" -SRCREV_machine:qemuppc ?= "bff933cb7a11019c64e6034c48ab79453f75b99e" -SRCREV_machine:qemuriscv64 ?= "763c0dbc0458ebcb1d06afe2f324925f0f61bd27" -SRCREV_machine:qemuriscv32 ?= "763c0dbc0458ebcb1d06afe2f324925f0f61bd27" -SRCREV_machine:qemux86 ?= "763c0dbc0458ebcb1d06afe2f324925f0f61bd27" -SRCREV_machine:qemux86-64 ?= "763c0dbc0458ebcb1d06afe2f324925f0f61bd27" -SRCREV_machine:qemumips64 ?= "7a89b456542ff1fa0ab71fa4a2ae6f04281f3a2d" -SRCREV_machine ?= "763c0dbc0458ebcb1d06afe2f324925f0f61bd27" -SRCREV_meta ?= "24ab54209a8822aad92afe2c51ea5b95f5175394" +SRCREV_machine:qemuarm ?= "dfeff112cafaf3a04da6cd60301d297406e1b77f" +SRCREV_machine:qemuarm64 ?= "3641e4234255c71c33cb2d9422f54c17b70c8941" +SRCREV_machine:qemumips ?= "7eead19134a43cf9ccc0fa9d75c45be2a7743f13" +SRCREV_machine:qemuppc ?= "6e1d66b2a871be0450722a50fc087ff8ccbcddd7" +SRCREV_machine:qemuriscv64 ?= "d2f7a595bf0b752275d503046494b668549cb151" +SRCREV_machine:qemuriscv32 ?= "d2f7a595bf0b752275d503046494b668549cb151" +SRCREV_machine:qemux86 ?= "d2f7a595bf0b752275d503046494b668549cb151" +SRCREV_machine:qemux86-64 ?= "d2f7a595bf0b752275d503046494b668549cb151" +SRCREV_machine:qemumips64 ?= "279f142932679a8ba212ebae4b9db851636a1fab" +SRCREV_machine ?= "d2f7a595bf0b752275d503046494b668549cb151" +SRCREV_meta ?= "2278ed571c14df6e87d8e01ac26f649d98020623" # remap qemuarm to qemuarma15 for the 5.8 kernel # KMACHINE:qemuarm ?= "qemuarma15" @@ -32,7 +32,7 @@ SRC_URI = "git://git.yoctoproject.org/linux-yocto.git;name=machine;branch=${KBRA git://git.yoctoproject.org/yocto-kernel-cache;type=kmeta;name=meta;branch=yocto-5.10;destsuffix=${KMETA}" LIC_FILES_CHKSUM = "file://COPYING;md5=6bc538ed5bd9a7fc9398086aedcd7e46" -LINUX_VERSION ?= "5.10.107" +LINUX_VERSION ?= "5.10.109" DEPENDS += "${@bb.utils.contains('ARCH', 'x86', 'elfutils-native', '', d)}" DEPENDS += "openssl-native util-linux-native" diff --git a/poky/meta/recipes-kernel/linux/linux-yocto_5.15.bb b/poky/meta/recipes-kernel/linux/linux-yocto_5.15.bb index de71d1fe13..54157fd245 100644 --- a/poky/meta/recipes-kernel/linux/linux-yocto_5.15.bb +++ b/poky/meta/recipes-kernel/linux/linux-yocto_5.15.bb @@ -13,24 +13,24 @@ KBRANCH:qemux86 ?= "v5.15/standard/base" KBRANCH:qemux86-64 ?= "v5.15/standard/base" KBRANCH:qemumips64 ?= "v5.15/standard/mti-malta64" -SRCREV_machine:qemuarm ?= "4632211e5b019b6337536305bfce0a5ffd3b570b" -SRCREV_machine:qemuarm64 ?= "c88fcdb0b3ca81f0149309ed7025cb28f709ed3d" -SRCREV_machine:qemumips ?= "ad268b2a1d6d1d6f1c9e9103cf4b1519477feb39" -SRCREV_machine:qemuppc ?= "688bb26b6f83a60ec39a0f20f31ec2bc37b49c6f" -SRCREV_machine:qemuriscv64 ?= "70cf8dde55448a804da825139fa12daf5a855047" -SRCREV_machine:qemuriscv32 ?= "70cf8dde55448a804da825139fa12daf5a855047" -SRCREV_machine:qemux86 ?= "70cf8dde55448a804da825139fa12daf5a855047" -SRCREV_machine:qemux86-64 ?= "70cf8dde55448a804da825139fa12daf5a855047" -SRCREV_machine:qemumips64 ?= "5e7bcff3dccd4749783b87d69ffd405ba71c9fda" -SRCREV_machine ?= "70cf8dde55448a804da825139fa12daf5a855047" -SRCREV_meta ?= "fee71fc34f2e551ebfd7bf0996d82f3447787e7a" +SRCREV_machine:qemuarm ?= "b6fd1a7dd80a336567fa30c1d674f0d5df9af836" +SRCREV_machine:qemuarm64 ?= "387a676543764b59e38cf6b13d6474846fb07d78" +SRCREV_machine:qemumips ?= "7c084cf3a700f7a2c68c8909501f4d35b3215e40" +SRCREV_machine:qemuppc ?= "239f7c8f37bf9ade16325101df3c06a485ccc74e" +SRCREV_machine:qemuriscv64 ?= "c9f3902d8069e32a8928153a38d8f6115194d128" +SRCREV_machine:qemuriscv32 ?= "c9f3902d8069e32a8928153a38d8f6115194d128" +SRCREV_machine:qemux86 ?= "c9f3902d8069e32a8928153a38d8f6115194d128" +SRCREV_machine:qemux86-64 ?= "c9f3902d8069e32a8928153a38d8f6115194d128" +SRCREV_machine:qemumips64 ?= "a4805fe749c9c56d18a60b5378674760ef0e85ed" +SRCREV_machine ?= "c9f3902d8069e32a8928153a38d8f6115194d128" +SRCREV_meta ?= "63e25b5717751b4b33685bd5991d10c52934a4c6" # set your preferred provider of linux-yocto to 'linux-yocto-upstream', and you'll # get the <version>/base branch, which is pure upstream -stable, and the same # meta SRCREV as the linux-yocto-standard builds. Select your version using the # normal PREFERRED_VERSION settings. BBCLASSEXTEND = "devupstream:target" -SRCREV_machine:class-devupstream ?= "0464ab17184b8fdec6676fabe76059b90e54e74f" +SRCREV_machine:class-devupstream ?= "e29be6724adbc9c3126d2a9550ec21f927f22f6d" PN:class-devupstream = "linux-yocto-upstream" KBRANCH:class-devupstream = "v5.15/base" @@ -41,7 +41,7 @@ SRC_URI = "git://git.yoctoproject.org/linux-yocto.git;name=machine;branch=${KBRA git://git.yoctoproject.org/yocto-kernel-cache;type=kmeta;name=meta;branch=yocto-5.15;destsuffix=${KMETA}" LIC_FILES_CHKSUM = "file://COPYING;md5=6bc538ed5bd9a7fc9398086aedcd7e46" -LINUX_VERSION ?= "5.15.30" +LINUX_VERSION ?= "5.15.32" DEPENDS += "${@bb.utils.contains('ARCH', 'x86', 'elfutils-native', '', d)}" DEPENDS += "openssl-native util-linux-native" diff --git a/poky/meta/recipes-support/popt/popt/0001-popt-test-output-format-for-ptest.patch b/poky/meta/recipes-support/popt/popt/0001-popt-test-output-format-for-ptest.patch new file mode 100644 index 0000000000..020949cc34 --- /dev/null +++ b/poky/meta/recipes-support/popt/popt/0001-popt-test-output-format-for-ptest.patch @@ -0,0 +1,68 @@ +From 330b77081c3a4c7ae76cb08602db385b40fa7ff7 Mon Sep 17 00:00:00 2001 +From: Simone Weiss <simone.weiss@elektrobit.com> +Date: Mon, 13 Dec 2021 09:29:53 +0000 +Subject: [PATCH] popt test output format for ptest + +patch test output format to match simple-test as it is used in ptests. + +Upstream-Status: Pending + +Signed-off-by: Simone Weiss <simone.weiss@elektrobit.com> +Signed-off-by: David Niederpruem <david.niederpruem@elektrobit.com> +--- + tests/testit.sh | 20 ++++++++------------ + 1 file changed, 8 insertions(+), 12 deletions(-) + +diff --git a/tests/testit.sh b/tests/testit.sh +index 2a7b4aa..50b42e2 100755 +--- a/tests/testit.sh ++++ b/tests/testit.sh +@@ -5,12 +5,11 @@ run() { + name=$1; shift + answer=$1; shift + +- echo Running test $name. +- + result=`HOME=$builddir $builddir/$prog $*` + if [ "$answer" != "$result" ]; then +- echo "Test \"$prog $*\" failed with: \"$result\" != \"$answer\" " +- exit 2 ++ echo "FAIL: $name" ++ else ++ echo "PASS: $name" + fi + } + +@@ -23,17 +22,17 @@ run_diff() { + out=$builddir/tmp.out + diff_file=$builddir/tmp.diff + +- echo Running test $name. +- + $builddir/$prog $in_file > $out + ret=$? + diff $out $answer_file > $diff_file + diff_ret=$? + + if [ "$diff_ret" != "0" ]; then +- echo "Test \"$name\" failed output is in $out, diff is:" +- cat $diff_file +- exit 2 ++ echo "FAIL: $name" ++ echo "diff is:" ++ cat $diff_file ++ else ++ echo "PASS: $name" + fi + rm $out $diff_file + } +@@ -174,6 +173,3 @@ Help options: + #run_diff test3 "test3 - 51" test3-data/01.input test3-data/01.answer + #run_diff test3 "test3 - 52" test3-data/02.input test3-data/02.answer + #run_diff test3 "test3 - 53" test3-data/03.input test3-data/03.answer +- +-echo "" +-echo "Passed." +-- +2.17.1 + diff --git a/poky/meta/recipes-support/popt/popt/run-ptest b/poky/meta/recipes-support/popt/popt/run-ptest new file mode 100644 index 0000000000..85754035d0 --- /dev/null +++ b/poky/meta/recipes-support/popt/popt/run-ptest @@ -0,0 +1,3 @@ +#!/bin/sh + +./testit.sh diff --git a/poky/meta/recipes-support/popt/popt_1.18.bb b/poky/meta/recipes-support/popt/popt_1.18.bb index 057c44f223..af8add4ad6 100644 --- a/poky/meta/recipes-support/popt/popt_1.18.bb +++ b/poky/meta/recipes-support/popt/popt_1.18.bb @@ -8,9 +8,26 @@ LIC_FILES_CHKSUM = "file://COPYING;md5=cb0613c30af2a8249b8dcc67d3edb06d" DEPENDS = "virtual/libiconv" -SRC_URI = "http://ftp.rpm.org/popt/releases/popt-1.x/${BP}.tar.gz" +SRC_URI = "\ + http://ftp.rpm.org/popt/releases/popt-1.x/${BP}.tar.gz \ + file://0001-popt-test-output-format-for-ptest.patch \ + file://run-ptest \ +" SRC_URI[sha256sum] = "5159bc03a20b28ce363aa96765f37df99ea4d8850b1ece17d1e6ad5c24fdc5d1" -inherit autotools gettext +inherit autotools gettext ptest + +RDEPENDS_${PN}-ptest += "bash" + +do_compile_ptest() { + sed 's#lt-test1#test1#g' ${S}/tests/testit.sh > ${B}/tests/testit.sh +} + +do_install_ptest() { + install ${B}/tests/.libs/test* ${D}/${PTEST_PATH} + install ${B}/tests/.libs/tdict ${D}/${PTEST_PATH} + install ${B}/tests/testit.sh ${D}/${PTEST_PATH} + install ${B}/tests/test-poptrc ${D}/${PTEST_PATH} +} BBCLASSEXTEND = "native nativesdk" diff --git a/poky/meta/recipes-support/vim/vim.inc b/poky/meta/recipes-support/vim/vim.inc index 905ba3f9c6..21ff036cf4 100644 --- a/poky/meta/recipes-support/vim/vim.inc +++ b/poky/meta/recipes-support/vim/vim.inc @@ -11,7 +11,7 @@ RSUGGESTS:${PN} = "diffutils" LICENSE = "Vim" LIC_FILES_CHKSUM = "file://LICENSE;md5=6b30ea4fa660c483b619924bc709ef99 \ - file://runtime/doc/uganda.txt;md5=a3f193c20c6faff93c69185d5d070535" + file://runtime/doc/uganda.txt;md5=daf48235bb824c77fe8ae88d5f575f74" SRC_URI = "git://github.com/vim/vim.git;branch=master;protocol=https \ file://disable_acl_header_check.patch \ @@ -21,8 +21,8 @@ SRC_URI = "git://github.com/vim/vim.git;branch=master;protocol=https \ file://racefix.patch \ " -PV .= ".4524" -SRCREV = "d8f8629b1bf566e1dada7515e9b146c69e5d9757" +PV .= ".4681" +SRCREV = "15f74fab653a784548d5d966644926b47ba2cfa7" # Remove when 8.3 is out UPSTREAM_VERSION_UNKNOWN = "1" |