[OE-core] [PATCH] musl: add typedefs for Elf64_Relr and Elf32_Relr
From: Zang Ruochen The absence of this typedef causes elfutils to report the following error: /usr/include/gelf.h:86:9: error: unknown type name 'Elf64_Relr' https://git.musl-libc.org/cgit/musl/commit/?id=6be76895f6863100a311d474a42abdbb6466189d Signed-off-by: Zang Ruochen --- ...pedefs-for-Elf64_Relr-and-Elf32_Relr.patch | 37 +++ meta/recipes-core/musl/musl_git.bb| 1 + 2 files changed, 38 insertions(+) create mode 100644 meta/recipes-core/musl/musl/0003-elf.h-add-typedefs-for-Elf64_Relr-and-Elf32_Relr.patch diff --git a/meta/recipes-core/musl/musl/0003-elf.h-add-typedefs-for-Elf64_Relr-and-Elf32_Relr.patch b/meta/recipes-core/musl/musl/0003-elf.h-add-typedefs-for-Elf64_Relr-and-Elf32_Relr.patch new file mode 100644 index 00..45d40cd5b4 --- /dev/null +++ b/meta/recipes-core/musl/musl/0003-elf.h-add-typedefs-for-Elf64_Relr-and-Elf32_Relr.patch @@ -0,0 +1,37 @@ +From 65b0ac0d998bf0f36924a7c27ed9e702b2a5a453 Mon Sep 17 00:00:00 2001 +From: Violet Purcell +Date: Sat, 4 Nov 2023 12:09:20 -0400 +Subject: [PATCH] elf.h: add typedefs for Elf64_Relr and Elf32_Relr + +These were overlooked when DT_RELR was added in commit +d32dadd60efb9d3b255351a3b532f8e4c3dd0db1, potentially breaking +software that treats presence of the DT_RELR macro as implying they +exist. + +Upstream-Status: Backport [1.2.5] + +Signed-off-by: Zang Ruochen + +--- + include/elf.h | 5 + + 1 file changed, 5 insertions(+) + +diff --git a/include/elf.h b/include/elf.h +index 23f2c4bc..72d17c3a 100644 +--- a/include/elf.h b/include/elf.h +@@ -558,6 +558,11 @@ typedef struct { + + + ++typedef Elf32_Word Elf32_Relr; ++typedef Elf64_Xword Elf64_Relr; ++ ++ ++ + #define ELF32_R_SYM(val) ((val) >> 8) + #define ELF32_R_TYPE(val) ((val) & 0xff) + #define ELF32_R_INFO(sym, type) (((sym) << 8) + ((type) & 0xff)) +-- +2.25.1 + diff --git a/meta/recipes-core/musl/musl_git.bb b/meta/recipes-core/musl/musl_git.bb index 7dd949ffaf..324269a968 100644 --- a/meta/recipes-core/musl/musl_git.bb +++ b/meta/recipes-core/musl/musl_git.bb @@ -13,6 +13,7 @@ PV = "${BASEVER}+git" SRC_URI = "git://git.etalabs.net/git/musl;branch=master;protocol=https \ file://0001-Make-dynamic-linker-a-relative-symlink-to-libc.patch \ file://0002-ldso-Use-syslibdir-and-libdir-as-default-pathes-to-l.patch \ + file://0003-elf.h-add-typedefs-for-Elf64_Relr-and-Elf32_Relr.patch \ " S = "${WORKDIR}/git" -- 2.25.1 -=-=-=-=-=-=-=-=-=-=-=- Links: You receive all messages sent to this group. View/Reply Online (#192013): https://lists.openembedded.org/g/openembedded-core/message/192013 Mute This Topic: https://lists.openembedded.org/mt/103051153/21656 Group Owner: openembedded-core+ow...@lists.openembedded.org Unsubscribe: https://lists.openembedded.org/g/openembedded-core/unsub [arch...@mail-archive.com] -=-=-=-=-=-=-=-=-=-=-=-
Re: [PATCH] [OE-core] [PATCHv2] elfutils: upgrade 0.189 -> 0.190
Hello. This error is caused by a lack of typedefs in musl. I'll submit a fix patch for musl later. https://git.musl-libc.org/cgit/musl/commit/include/elf.h?id=6be76895f6863100a311d474a42abdbb6466189d > -原始邮件- > 发件人: "Alexandre Belloni" > 发送时间:2023-12-05 06:35:30 (星期二) > 收件人: "Zang Ruochen" > 抄送: openembedded-core@lists.openembedded.org > 主题: Re: [PATCH] [OE-core] [PATCHv2] elfutils: upgrade 0.189 -> 0.190 > > Hello, > > This fails with musl: > > https://autobuilder.yoctoproject.org/typhoon/#/builders/64/builds/8232/steps/11/logs/stdio > https://autobuilder.yoctoproject.org/typhoon/#/builders/45/builds/8262/steps/12/logs/stdio > > New ptest failure: > https://autobuilder.yoctoproject.org/typhoon/#/builders/81/builds/5988/steps/12/logs/stdio > https://autobuilder.yoctoproject.org/typhoon/#/builders/82/builds/5808/steps/12/logs/stdio > > On 03/12/2023 18:35:51-0800, Zang Ruochen wrote: > > From: Zang Ruochen > > > > The following patches have been fixed: > > 0001-libasm-may-link-with-libbz2-if-found.patch > > > > Refresh the following patch: > > 0001-dso-link-change.patch > > > > Signed-off-by: Zang Ruochen > > --- > > .../{elfutils_0.189.bb => elfutils_0.190.bb} | 3 +- > > .../elfutils/files/0001-dso-link-change.patch | 14 > > ...libasm-may-link-with-libbz2-if-found.patch | 36 --- > > 3 files changed, 9 insertions(+), 44 deletions(-) > > rename meta/recipes-devtools/elfutils/{elfutils_0.189.bb => > > elfutils_0.190.bb} (98%) > > delete mode 100644 > > meta/recipes-devtools/elfutils/files/0001-libasm-may-link-with-libbz2-if-found.patch > > > > diff --git a/meta/recipes-devtools/elfutils/elfutils_0.189.bb > > b/meta/recipes-devtools/elfutils/elfutils_0.190.bb > > similarity index 98% > > rename from meta/recipes-devtools/elfutils/elfutils_0.189.bb > > rename to meta/recipes-devtools/elfutils/elfutils_0.190.bb > > index d8bf82b022..8657080830 100644 > > --- a/meta/recipes-devtools/elfutils/elfutils_0.189.bb > > +++ b/meta/recipes-devtools/elfutils/elfutils_0.190.bb > > @@ -16,7 +16,6 @@ SRC_URI = > > "https://sourceware.org/elfutils/ftp/${PV}/${BP}.tar.bz2 \ > > file://0002-Fix-elf_cvt_gunhash-if-dest-and-src-are-same.patch \ > > file://0003-fixheadercheck.patch \ > > file://0006-Fix-build-on-aarch64-musl.patch \ > > - file://0001-libasm-may-link-with-libbz2-if-found.patch \ > > > > file://0001-libelf-elf_end.c-check-data_list.data.d.d_buf-before.patch \ > > file://0001-skip-the-test-when-gcc-not-deployed.patch \ > > file://ptest.patch \ > > @@ -25,7 +24,7 @@ SRC_URI = > > "https://sourceware.org/elfutils/ftp/${PV}/${BP}.tar.bz2 \ > > SRC_URI:append:libc-musl = " \ > > file://0003-musl-utils.patch \ > > " > > -SRC_URI[sha256sum] = > > "39bd8f1a338e2b7cd4abc3ff11a0eddc6e690f69578a57478d8179b4148708c8" > > +SRC_URI[sha256sum] = > > "8e00a3a9b5f04bc1dc273ae86281d2d26ed412020b391ffcc23198f10231d692" > > > > inherit autotools gettext ptest pkgconfig > > > > diff --git > > a/meta/recipes-devtools/elfutils/files/0001-dso-link-change.patch > > b/meta/recipes-devtools/elfutils/files/0001-dso-link-change.patch > > index 6acc036406..8ccfcb7bd5 100644 > > --- a/meta/recipes-devtools/elfutils/files/0001-dso-link-change.patch > > +++ b/meta/recipes-devtools/elfutils/files/0001-dso-link-change.patch > > @@ -16,18 +16,18 @@ more details. > > Rebase to 0.170 > > > > Signed-off-by: Hongxu Jia > > - > > +Signed-off-by: Zang Ruochen > > --- > > src/Makefile.am | 2 +- > > tests/Makefile.am | 2 +- > > 2 files changed, 2 insertions(+), 2 deletions(-) > > > > diff --git a/src/Makefile.am b/src/Makefile.am > > -index 88d0ac8..c28d81f 100644 > > +index d3d9d40..ea61616 100644 > > --- a/src/Makefile.am > > +++ b/src/Makefile.am > > @@ -45,7 +45,7 @@ libdw = ../libdw/libdw.a -lz $(zip_LIBS) $(libelf) -ldl > > -lpthread > > - libelf = ../libelf/libelf.a -lz > > + libelf = ../libelf/libelf.a -lz $(zstd_LIBS) > > else > > libasm = ../libasm/libasm.so > > -libdw = ../libdw/libdw.so > > @@ -36,11 +36,11 @@ index 88d0ac8..c28d81f 100644 > > endif > > libebl = ../libebl/libebl.a ../backends/libebl_backends.a > > ../libcpu/libcpu.a > > diff --git a/tests/Makefile.am b/tests/Makefile.am > > -index c145720..72afd0e 100644 > > +index 7fb8efb..71c1a61 100644 > > --- a/tests/Makefile.am > > +++ b/tests/Makefile.am > > -@@ -554,7 +554,7 @@ libdw = ../libdw/libdw.a -lz $(zip_LIBS) $(libelf) > > $(libebl) -ldl -lpthread > > - libelf = ../libelf/libelf.a -lz > > +@@ -680,7 +680,7 @@ libdw = ../libdw/libdw.a -lz $(zip_LIBS) $(libelf) > > $(libebl) -ldl -lpthread > > + libelf = ../libelf/libelf.a -lz $(zstd_LIBS) > > libasm = ../libasm/libasm.a > > else > > -libdw = ../libdw/libdw.so > > @@ -48,3 +48,5 @@ index c145720..72afd0e 100644 > > libelf = ../libelf/libelf.so > > libasm = ../libasm/libasm.so > > endif > > +-- > > +2.25.1 > >
[OE-core][kirkstone][PATCH] avahi: backport CVE-2023-1981 & CVE's follow-up patches
From: Vijay Anusuri import patches from ubuntu to fix CVE-2023-1981 CVE-2023-38469-2 CVE-2023-38470-2 CVE-2023-38471-2 Upstream-Status: Backport [import from ubuntu https://git.launchpad.net/ubuntu/+source/avahi/tree/debian/patches?h=ubuntu/jammy-security Upstream commit https://github.com/lathiat/avahi/commit/a2696da2f2c50ac43b6c4903f72290d5c3fa9f6f & https://github.com/lathiat/avahi/commit/c6cab87df290448a63323c8ca759baa516166237 & https://github.com/lathiat/avahi/commit/94cb6489114636940ac683515417990b55b5d66c & https://github.com/lathiat/avahi/commit/b675f70739f404342f7f78635d6e2dcd85a13460] Ref: https://git.openembedded.org/openembedded-core-contrib/commit/?h=stable/nanbield-nut=a9203c46cd64c3ec5e5b00e381bbac85733f85df Signed-off-by: Vijay Anusuri --- meta/recipes-connectivity/avahi/avahi_0.8.bb | 10 ++- .../avahi/files/CVE-2023-1981.patch | 58 + ...023-38469.patch => CVE-2023-38469-1.patch} | 0 .../avahi/files/CVE-2023-38469-2.patch| 65 +++ ...023-38470.patch => CVE-2023-38470-1.patch} | 0 .../avahi/files/CVE-2023-38470-2.patch| 52 +++ ...023-38471.patch => CVE-2023-38471-1.patch} | 0 .../avahi/files/CVE-2023-38471-2.patch| 52 +++ .../avahi/files/CVE-2023-38472.patch | 44 ++--- 9 files changed, 256 insertions(+), 25 deletions(-) create mode 100644 meta/recipes-connectivity/avahi/files/CVE-2023-1981.patch rename meta/recipes-connectivity/avahi/files/{CVE-2023-38469.patch => CVE-2023-38469-1.patch} (100%) create mode 100644 meta/recipes-connectivity/avahi/files/CVE-2023-38469-2.patch rename meta/recipes-connectivity/avahi/files/{CVE-2023-38470.patch => CVE-2023-38470-1.patch} (100%) create mode 100644 meta/recipes-connectivity/avahi/files/CVE-2023-38470-2.patch rename meta/recipes-connectivity/avahi/files/{CVE-2023-38471.patch => CVE-2023-38471-1.patch} (100%) create mode 100644 meta/recipes-connectivity/avahi/files/CVE-2023-38471-2.patch diff --git a/meta/recipes-connectivity/avahi/avahi_0.8.bb b/meta/recipes-connectivity/avahi/avahi_0.8.bb index af5284a252..5d1c86978a 100644 --- a/meta/recipes-connectivity/avahi/avahi_0.8.bb +++ b/meta/recipes-connectivity/avahi/avahi_0.8.bb @@ -26,9 +26,13 @@ SRC_URI = "https://github.com/lathiat/avahi/releases/download/v${PV}/avahi-${PV} file://0001-Fix-opening-etc-resolv.conf-error.patch \ file://handle-hup.patch \ file://local-ping.patch \ - file://CVE-2023-38471.patch \ - file://CVE-2023-38470.patch \ - file://CVE-2023-38469.patch \ + file://CVE-2023-1981.patch \ + file://CVE-2023-38469-1.patch \ + file://CVE-2023-38469-2.patch \ + file://CVE-2023-38470-1.patch \ + file://CVE-2023-38470-2.patch \ + file://CVE-2023-38471-1.patch \ + file://CVE-2023-38471-2.patch \ file://CVE-2023-38472.patch \ file://CVE-2023-38473.patch \ " diff --git a/meta/recipes-connectivity/avahi/files/CVE-2023-1981.patch b/meta/recipes-connectivity/avahi/files/CVE-2023-1981.patch new file mode 100644 index 00..4d7924d13a --- /dev/null +++ b/meta/recipes-connectivity/avahi/files/CVE-2023-1981.patch @@ -0,0 +1,58 @@ +From a2696da2f2c50ac43b6c4903f72290d5c3fa9f6f Mon Sep 17 00:00:00 2001 +From: =?UTF-8?q?Petr=20Men=C5=A1=C3=ADk?= +Date: Thu, 17 Nov 2022 01:51:53 +0100 +Subject: [PATCH] Emit error if requested service is not found + +It currently just crashes instead of replying with error. Check return +value and emit error instead of passing NULL pointer to reply. + +Fixes #375 + +Upstream-Status: Backport [import from ubuntu https://git.launchpad.net/ubuntu/+source/avahi/tree/debian/patches/CVE-2023-1981.patch?h=ubuntu/jammy-security +Upstream commit https://github.com/lathiat/avahi/commit/a2696da2f2c50ac43b6c4903f72290d5c3fa9f6f] +CVE: CVE-2023-1981 +Signed-off-by: Vijay Anusuri +--- + avahi-daemon/dbus-protocol.c | 20 ++-- + 1 file changed, 14 insertions(+), 6 deletions(-) + +diff --git a/avahi-daemon/dbus-protocol.c b/avahi-daemon/dbus-protocol.c +index 70d7687bc..406d0b441 100644 +--- a/avahi-daemon/dbus-protocol.c b/avahi-daemon/dbus-protocol.c +@@ -375,10 +375,14 @@ static DBusHandlerResult dbus_get_alternative_host_name(DBusConnection *c, DBusM + } + + t = avahi_alternative_host_name(n); +-avahi_dbus_respond_string(c, m, t); +-avahi_free(t); ++if (t) { ++avahi_dbus_respond_string(c, m, t); ++avahi_free(t); + +-return DBUS_HANDLER_RESULT_HANDLED; ++return DBUS_HANDLER_RESULT_HANDLED; ++} else { ++return avahi_dbus_respond_error(c, m, AVAHI_ERR_NOT_FOUND, "Hostname not found"); ++} + } + + static DBusHandlerResult dbus_get_alternative_service_name(DBusConnection *c, DBusMessage *m, DBusError *error) { +@@ -389,10 +393,14 @@ static DBusHandlerResult
[OE-core] [master] [PATCH] cve-update-nvd2-native: increase the delay between subsequent request failures
Sometimes NVD servers are unstable and return too many errors. There is an option to have higher fetch attempts to increase the chances of successfully fetching the CVE data. Additionally, it also makes sense to progressively increase the delay after a failed request to an already unstable or busy server. The increase in delay is reset after every successful request and the maximum delay is limited to 30 seconds. Also, the logs are improved to give more clarity. Signed-off-by: Dhairya Nagodra --- meta/recipes-core/meta/cve-update-nvd2-native.bb | 13 + 1 file changed, 9 insertions(+), 4 deletions(-) diff --git a/meta/recipes-core/meta/cve-update-nvd2-native.bb b/meta/recipes-core/meta/cve-update-nvd2-native.bb index 941fca34c6..bfe48b27e7 100644 --- a/meta/recipes-core/meta/cve-update-nvd2-native.bb +++ b/meta/recipes-core/meta/cve-update-nvd2-native.bb @@ -114,7 +114,10 @@ def cleanup_db_download(db_file, db_tmp_file): if os.path.exists(db_tmp_file): os.remove(db_tmp_file) -def nvd_request_next(url, attempts, api_key, args): +def nvd_request_wait(attempt, min_wait): +return min ( ( (2 * attempt) + min_wait ) , 30) + +def nvd_request_next(url, attempts, api_key, args, min_wait): """ Request next part of the NVD dabase """ @@ -143,8 +146,10 @@ def nvd_request_next(url, attempts, api_key, args): r.close() except Exception as e: -bb.note("CVE database: received error (%s), retrying" % (e)) -time.sleep(6) +wait_time = nvd_request_wait(attempt, min_wait) +bb.note("CVE database: received error (%s)" % (e)) +bb.note("CVE database: retrying download after %d seconds. attempted (%d/%d)" % (wait_time, attempt+1, attempts)) +time.sleep(wait_time) pass else: return raw_data @@ -195,7 +200,7 @@ def update_db_file(db_tmp_file, d, database_time): while True: req_args['startIndex'] = index -raw_data = nvd_request_next(url, attempts, api_key, req_args) +raw_data = nvd_request_next(url, attempts, api_key, req_args, wait_time) if raw_data is None: # We haven't managed to download data return False -- 2.35.6 -=-=-=-=-=-=-=-=-=-=-=- Links: You receive all messages sent to this group. View/Reply Online (#192010): https://lists.openembedded.org/g/openembedded-core/message/192010 Mute This Topic: https://lists.openembedded.org/mt/103049968/21656 Group Owner: openembedded-core+ow...@lists.openembedded.org Unsubscribe: https://lists.openembedded.org/g/openembedded-core/unsub [arch...@mail-archive.com] -=-=-=-=-=-=-=-=-=-=-=-
[OE-core] [PATCH] gdb: Update to gdb 14.1 release
* Drop add-missing-ldflags.patch, its already applied to gdb 14 * Add dependency on mpfr for cross/cross-canadian/target recipe * Remove gcc-only complier restriction, clang can compile it just fine * Notable changes are here [1] [2] [1] https://sourceware.org/git/?p=binutils-gdb.git;a=blob_plain;f=gdb/NEWS;hb=refs/heads/gdb-14-branch [2] https://www.sourceware.org/gdb/download/ANNOUNCEMENT Signed-off-by: Khem Raj --- meta/conf/distro/include/tcmode-default.inc | 2 +- meta/recipes-devtools/gdb/gdb-common.inc | 2 +- .../gdb/gdb-cross-canadian.inc| 2 +- ...ian_13.2.bb => gdb-cross-canadian_14.1.bb} | 0 meta/recipes-devtools/gdb/gdb-cross.inc | 2 +- .../{gdb-cross_13.2.bb => gdb-cross_14.1.bb} | 0 meta/recipes-devtools/gdb/gdb.inc | 5 +- ...ux-nat-Define-_ABIO32-if-not-defined.patch | 4 +- ...e-pt_regs-uapi_pt_regs-on-GLIBC-syst.patch | 4 +- ...readline.a-when-using-disable-static.patch | 10 ++-- .../gdb/gdb/0004-use-asm-sgidefs.h.patch | 4 +- .../gdb/gdb/0005-Change-order-of-CFLAGS.patch | 4 +- ...06-resolve-restrict-keyword-conflict.patch | 2 +- .../0007-Fix-invalid-sigprocmask-call.patch | 2 +- ...sing-_Alignof-when-using-C11-or-newe.patch | 4 +- .../gdb/gdb/add-missing-ldflags.patch | 47 --- .../gdb/{gdb_13.2.bb => gdb_14.1.bb} | 0 17 files changed, 22 insertions(+), 72 deletions(-) rename meta/recipes-devtools/gdb/{gdb-cross-canadian_13.2.bb => gdb-cross-canadian_14.1.bb} (100%) rename meta/recipes-devtools/gdb/{gdb-cross_13.2.bb => gdb-cross_14.1.bb} (100%) delete mode 100644 meta/recipes-devtools/gdb/gdb/add-missing-ldflags.patch rename meta/recipes-devtools/gdb/{gdb_13.2.bb => gdb_14.1.bb} (100%) diff --git a/meta/conf/distro/include/tcmode-default.inc b/meta/conf/distro/include/tcmode-default.inc index 707402e6eb9..66c274aa806 100644 --- a/meta/conf/distro/include/tcmode-default.inc +++ b/meta/conf/distro/include/tcmode-default.inc @@ -19,7 +19,7 @@ PREFERRED_PROVIDER_virtual/gettext ??= "gettext" GCCVERSION ?= "13.%" SDKGCCVERSION ?= "${GCCVERSION}" BINUVERSION ?= "2.41%" -GDBVERSION ?= "13.%" +GDBVERSION ?= "14.%" GLIBCVERSION ?= "2.38%" LINUXLIBCVERSION ?= "6.5%" QEMUVERSION ?= "8.1%" diff --git a/meta/recipes-devtools/gdb/gdb-common.inc b/meta/recipes-devtools/gdb/gdb-common.inc index 48dbb914636..ea1fc27a61b 100644 --- a/meta/recipes-devtools/gdb/gdb-common.inc +++ b/meta/recipes-devtools/gdb/gdb-common.inc @@ -2,7 +2,7 @@ SUMMARY = "GNU debugger" HOMEPAGE = "http://www.gnu.org/software/gdb/; DESCRIPTION = "GDB, the GNU Project debugger, allows you to see what is going on inside another program while it executes -- or what another program was doing at the moment it crashed." SECTION = "devel" -DEPENDS = "expat gmp zlib ncurses virtual/libiconv ${LTTNGUST} bison-native" +DEPENDS = "expat gmp mpfr zlib ncurses virtual/libiconv ${LTTNGUST} bison-native" LTTNGUST = "lttng-ust" LTTNGUST:arc = "" diff --git a/meta/recipes-devtools/gdb/gdb-cross-canadian.inc b/meta/recipes-devtools/gdb/gdb-cross-canadian.inc index 81dc572be0d..058ffbc9c55 100644 --- a/meta/recipes-devtools/gdb/gdb-cross-canadian.inc +++ b/meta/recipes-devtools/gdb/gdb-cross-canadian.inc @@ -6,7 +6,7 @@ SUMMARY = "GNU debugger (cross-canadian gdb for ${TARGET_ARCH} target)" PN = "gdb-cross-canadian-${TRANSLATED_TARGET_ARCH}" BPN = "gdb" -DEPENDS = "nativesdk-ncurses nativesdk-expat nativesdk-gettext nativesdk-gmp \ +DEPENDS = "nativesdk-ncurses nativesdk-expat nativesdk-gettext nativesdk-gmp nativesdk-mpfr \ virtual/${HOST_PREFIX}gcc virtual/${HOST_PREFIX}binutils virtual/nativesdk-libc" GDBPROPREFIX = "--program-prefix='${TARGET_PREFIX}'" diff --git a/meta/recipes-devtools/gdb/gdb-cross-canadian_13.2.bb b/meta/recipes-devtools/gdb/gdb-cross-canadian_14.1.bb similarity index 100% rename from meta/recipes-devtools/gdb/gdb-cross-canadian_13.2.bb rename to meta/recipes-devtools/gdb/gdb-cross-canadian_14.1.bb diff --git a/meta/recipes-devtools/gdb/gdb-cross.inc b/meta/recipes-devtools/gdb/gdb-cross.inc index 9f9675c1b32..399f4bba97a 100644 --- a/meta/recipes-devtools/gdb/gdb-cross.inc +++ b/meta/recipes-devtools/gdb/gdb-cross.inc @@ -1,6 +1,6 @@ require gdb-common.inc -DEPENDS = "expat-native gmp-native ncurses-native flex-native bison-native" +DEPENDS = "expat-native gmp-native mpfr-native ncurses-native flex-native bison-native" inherit python3native pkgconfig diff --git a/meta/recipes-devtools/gdb/gdb-cross_13.2.bb b/meta/recipes-devtools/gdb/gdb-cross_14.1.bb similarity index 100% rename from meta/recipes-devtools/gdb/gdb-cross_13.2.bb rename to meta/recipes-devtools/gdb/gdb-cross_14.1.bb diff --git a/meta/recipes-devtools/gdb/gdb.inc b/meta/recipes-devtools/gdb/gdb.inc index e986b1a1f91..eb480f3c658 100644 --- a/meta/recipes-devtools/gdb/gdb.inc +++ b/meta/recipes-devtools/gdb/gdb.inc @@ -13,8 +13,5 @@ SRC_URI = "${GNU_MIRROR}/gdb/gdb-${PV}.tar.xz \
[OE-core] [master] [PATCH] cve-update-nvd2-native: faster requests with API keys
As per NVD, the public rate limit is 5 requests in 30s (6s delay). Using an API key increases the limit to 50 requests in 30s (0.6s delay). However, NVD still recommends sleeping for several seconds so that the other legitimate requests are serviced without denial or interruption. Keeping the default sleep at 6 seconds and 2 seconds with an API key. For failures, the wait time is unchanged (6 seconds). Reference: https://nvd.nist.gov/developers/start-here#RateLimits Signed-off-by: Dhairya Nagodra --- meta/recipes-core/meta/cve-update-nvd2-native.bb | 7 ++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/meta/recipes-core/meta/cve-update-nvd2-native.bb b/meta/recipes-core/meta/cve-update-nvd2-native.bb index 9ab8dc6050..941fca34c6 100644 --- a/meta/recipes-core/meta/cve-update-nvd2-native.bb +++ b/meta/recipes-core/meta/cve-update-nvd2-native.bb @@ -188,6 +188,11 @@ def update_db_file(db_tmp_file, d, database_time): api_key = d.getVar("NVDCVE_API_KEY") or None attempts = int(d.getVar("CVE_DB_UPDATE_ATTEMPTS")) +# Recommended by NVD +wait_time = 6 +if api_key: +wait_time = 2 + while True: req_args['startIndex'] = index raw_data = nvd_request_next(url, attempts, api_key, req_args) @@ -210,7 +215,7 @@ def update_db_file(db_tmp_file, d, database_time): break # Recommended by NVD -time.sleep(6) +time.sleep(wait_time) # Update success, set the date to cve_check file. cve_f.write('CVE database update : %s\n\n' % datetime.date.today()) -- 2.35.6 -=-=-=-=-=-=-=-=-=-=-=- Links: You receive all messages sent to this group. View/Reply Online (#192008): https://lists.openembedded.org/g/openembedded-core/message/192008 Mute This Topic: https://lists.openembedded.org/mt/103048465/21656 Group Owner: openembedded-core+ow...@lists.openembedded.org Unsubscribe: https://lists.openembedded.org/g/openembedded-core/unsub [arch...@mail-archive.com] -=-=-=-=-=-=-=-=-=-=-=-
[OE-core][kirkstone 15/15] native: Clear TUNE_FEATURES/ABIEXTENSION
From: Richard Purdie Some recipes reference these. Rather than continually trying to chase down the references and taskhash issues, clear the variables for an easier life and simpler code. These wouldn't convey anything useful in a native build. Signed-off-by: Richard Purdie (cherry picked from commit f8edeead263708889d31a7ff578ef8274cb678b4) Signed-off-by: Jermain Horsman Signed-off-by: Steve Sakoman --- meta/classes/native.bbclass | 2 ++ 1 file changed, 2 insertions(+) diff --git a/meta/classes/native.bbclass b/meta/classes/native.bbclass index 4de96cd59b..56726301bd 100644 --- a/meta/classes/native.bbclass +++ b/meta/classes/native.bbclass @@ -23,6 +23,8 @@ TARGET_CFLAGS = "${BUILD_CFLAGS}" TARGET_CXXFLAGS = "${BUILD_CXXFLAGS}" TARGET_LDFLAGS = "${BUILD_LDFLAGS}" TARGET_FPU = "" +TUNE_FEATURES = "" +ABIEXTENSION = "" HOST_ARCH = "${BUILD_ARCH}" HOST_OS = "${BUILD_OS}" -- 2.34.1 -=-=-=-=-=-=-=-=-=-=-=- Links: You receive all messages sent to this group. View/Reply Online (#192007): https://lists.openembedded.org/g/openembedded-core/message/192007 Mute This Topic: https://lists.openembedded.org/mt/103048241/21656 Group Owner: openembedded-core+ow...@lists.openembedded.org Unsubscribe: https://lists.openembedded.org/g/openembedded-core/unsub [arch...@mail-archive.com] -=-=-=-=-=-=-=-=-=-=-=-
[OE-core][kirkstone 14/15] rust-cross: Simplfy the rust_gen_target calls
From: Richard Purdie Match the code in rust-cross-canadian so that further simplifications can be considered in future. Signed-off-by: Richard Purdie (cherry picked from commit 5cb62d0a33777cb9afb1eea5f736a2580ce50dc7) Signed-off-by: Jermain Horsman Signed-off-by: Steve Sakoman --- meta/recipes-devtools/rust/rust-common.inc | 12 ++-- meta/recipes-devtools/rust/rust-cross.inc | 16 2 files changed, 10 insertions(+), 18 deletions(-) diff --git a/meta/recipes-devtools/rust/rust-common.inc b/meta/recipes-devtools/rust/rust-common.inc index 3252827818..a73367bbd5 100644 --- a/meta/recipes-devtools/rust/rust-common.inc +++ b/meta/recipes-devtools/rust/rust-common.inc @@ -119,12 +119,12 @@ def llvm_features(d): ## arm-unknown-linux-gnueabihf -DATA_LAYOUT[arm] = "e-m:e-p:32:32-i64:64-v128:64:128-a:0:32-n32-S64" -TARGET_ENDIAN[arm] = "little" -TARGET_POINTER_WIDTH[arm] = "32" -TARGET_C_INT_WIDTH[arm] = "32" -MAX_ATOMIC_WIDTH[arm] = "64" -FEATURES[arm] = "+v6,+vfp2" +DATA_LAYOUT[arm-eabi] = "e-m:e-p:32:32-i64:64-v128:64:128-a:0:32-n32-S64" +TARGET_ENDIAN[arm-eabi] = "little" +TARGET_POINTER_WIDTH[arm-eabi] = "32" +TARGET_C_INT_WIDTH[arm-eabi] = "32" +MAX_ATOMIC_WIDTH[arm-eabi] = "64" +FEATURES[arm-eabi] = "+v6,+vfp2" ## armv7-unknown-linux-gnueabihf DATA_LAYOUT[armv7-eabi] = "e-m:e-p:32:32-i64:64-v128:64:128-a:0:32-n32-S64" diff --git a/meta/recipes-devtools/rust/rust-cross.inc b/meta/recipes-devtools/rust/rust-cross.inc index 4c026b1f38..2e47a3aa5f 100644 --- a/meta/recipes-devtools/rust/rust-cross.inc +++ b/meta/recipes-devtools/rust/rust-cross.inc @@ -1,17 +1,9 @@ python do_rust_gen_targets () { wd = d.getVar('WORKDIR') + '/targets/' -# It is important 'TARGET' is last here so that it overrides our less -# informed choices for BUILD & HOST if TARGET happens to be the same as -# either of them. -for thing in ['BUILD', 'HOST', 'TARGET']: -bb.debug(1, "rust_gen_target for " + thing) -features = "" -cpu = "generic" -arch = d.getVar('{}_ARCH'.format(thing)) -if thing is "TARGET": -features = d.getVar('TARGET_LLVM_FEATURES') or "" -cpu = d.getVar('TARGET_LLVM_CPU') -rust_gen_target(d, thing, wd, features, cpu, arch) +# Order of BUILD, HOST, TARGET is important in case the files overwrite, most specific last +rust_gen_target(d, 'BUILD', wd, "", "generic", d.getVar('BUILD_ARCH')) +rust_gen_target(d, 'HOST', wd, "", "generic", d.getVar('HOST_ARCH')) +rust_gen_target(d, 'TARGET', wd, d.getVar('TARGET_LLVM_FEATURES') or "", d.getVar('TARGET_LLVM_CPU'), d.getVar('TARGET_ARCH')) } # Otherwise we'll depend on what we provide -- 2.34.1 -=-=-=-=-=-=-=-=-=-=-=- Links: You receive all messages sent to this group. View/Reply Online (#192006): https://lists.openembedded.org/g/openembedded-core/message/192006 Mute This Topic: https://lists.openembedded.org/mt/103048240/21656 Group Owner: openembedded-core+ow...@lists.openembedded.org Unsubscribe: https://lists.openembedded.org/g/openembedded-core/unsub [arch...@mail-archive.com] -=-=-=-=-=-=-=-=-=-=-=-
[OE-core][kirkstone 13/15] rust-cross/rust-common: Merge arm target handling code to fix cross-canadian
From: Richard Purdie rust-cross had special handling for armv7 targets but we also need this for cross-canadian. Merge the code into the main function so everything is consistent. Also then fix the arm definition to be arm-eabi since ABI is correctly being looked up. Signed-off-by: Richard Purdie (cherry picked from commit ff3c3dbbd2bf1bb7bb70b55cca203e9eedcf14a8) Signed-off-by: Jermain Horsman Signed-off-by: Steve Sakoman --- meta/recipes-devtools/rust/rust-common.inc | 6 ++ meta/recipes-devtools/rust/rust-cross.inc | 7 +-- 2 files changed, 7 insertions(+), 6 deletions(-) diff --git a/meta/recipes-devtools/rust/rust-common.inc b/meta/recipes-devtools/rust/rust-common.inc index ac00fd3d43..3252827818 100644 --- a/meta/recipes-devtools/rust/rust-common.inc +++ b/meta/recipes-devtools/rust/rust-common.inc @@ -297,6 +297,12 @@ def rust_gen_target(d, thing, wd, features, cpu, arch, abi=""): sys = sys_for(d, thing) prefix = prefix_for(d, thing) +if thing == "TARGET": +abi = d.getVar('ABIEXTENSION') +# arm and armv7 have different targets in llvm +if arch == "arm" and target_is_armv7(d): +arch = 'armv7' + rust_arch = oe.rust.arch_to_rust_arch(arch) if abi: diff --git a/meta/recipes-devtools/rust/rust-cross.inc b/meta/recipes-devtools/rust/rust-cross.inc index f6babfeeda..4c026b1f38 100644 --- a/meta/recipes-devtools/rust/rust-cross.inc +++ b/meta/recipes-devtools/rust/rust-cross.inc @@ -8,15 +8,10 @@ python do_rust_gen_targets () { features = "" cpu = "generic" arch = d.getVar('{}_ARCH'.format(thing)) -abi = "" if thing is "TARGET": -abi = d.getVar('ABIEXTENSION') -# arm and armv7 have different targets in llvm -if arch == "arm" and target_is_armv7(d): -arch = 'armv7' features = d.getVar('TARGET_LLVM_FEATURES') or "" cpu = d.getVar('TARGET_LLVM_CPU') -rust_gen_target(d, thing, wd, features, cpu, arch, abi) +rust_gen_target(d, thing, wd, features, cpu, arch) } # Otherwise we'll depend on what we provide -- 2.34.1 -=-=-=-=-=-=-=-=-=-=-=- Links: You receive all messages sent to this group. View/Reply Online (#192005): https://lists.openembedded.org/g/openembedded-core/message/192005 Mute This Topic: https://lists.openembedded.org/mt/103048239/21656 Group Owner: openembedded-core+ow...@lists.openembedded.org Unsubscribe: https://lists.openembedded.org/g/openembedded-core/unsub [arch...@mail-archive.com] -=-=-=-=-=-=-=-=-=-=-=-
[OE-core][kirkstone 12/15] rust-cross-canadian: Fix ordering of target json config generation
From: Richard Purdie Based upon a patch from Otavio Salvador , ensure the target json files are written in the correct order with the most specific last incase it overwrites earlier files if the prefixes match. Signed-off-by: Richard Purdie (cherry picked from commit 1912c4e9e0ecf9655f3b3a41588b54d7956f5899) Signed-off-by: Jermain Horsman Signed-off-by: Steve Sakoman --- meta/recipes-devtools/rust/rust-cross-canadian-common.inc | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/meta/recipes-devtools/rust/rust-cross-canadian-common.inc b/meta/recipes-devtools/rust/rust-cross-canadian-common.inc index 1f21c8af26..df4901f1fa 100644 --- a/meta/recipes-devtools/rust/rust-cross-canadian-common.inc +++ b/meta/recipes-devtools/rust/rust-cross-canadian-common.inc @@ -27,9 +27,10 @@ DEBUG_PREFIX_MAP = "-fdebug-prefix-map=${WORKDIR}=/usr/src/debug/${PN}/${EXTENDP python do_rust_gen_targets () { wd = d.getVar('WORKDIR') + '/targets/' -rust_gen_target(d, 'TARGET', wd, d.getVar('TARGET_LLVM_FEATURES') or "", d.getVar('TARGET_LLVM_CPU'), d.getVar('TARGET_ARCH')) -rust_gen_target(d, 'HOST', wd, "", "generic", d.getVar('HOST_ARCH')) +# Order of BUILD, HOST, TARGET is important in case the files overwrite, most specific last rust_gen_target(d, 'BUILD', wd, "", "generic", d.getVar('BUILD_ARCH')) +rust_gen_target(d, 'HOST', wd, "", "generic", d.getVar('HOST_ARCH')) +rust_gen_target(d, 'TARGET', wd, d.getVar('TARGET_LLVM_FEATURES') or "", d.getVar('TARGET_LLVM_CPU'), d.getVar('TARGET_ARCH')) } INHIBIT_DEFAULT_RUST_DEPS = "1" -- 2.34.1 -=-=-=-=-=-=-=-=-=-=-=- Links: You receive all messages sent to this group. View/Reply Online (#192004): https://lists.openembedded.org/g/openembedded-core/message/192004 Mute This Topic: https://lists.openembedded.org/mt/103048238/21656 Group Owner: openembedded-core+ow...@lists.openembedded.org Unsubscribe: https://lists.openembedded.org/g/openembedded-core/unsub [arch...@mail-archive.com] -=-=-=-=-=-=-=-=-=-=-=-
[OE-core][kirkstone 11/15] rust-common: Set llvm-target correctly for cross SDK targets
From: Richard Purdie When a 'BUILD' target is requested we shouldn't be looking at TARGET_SYS but at BUILD_SYS. Due to the way rust mangles triplets, we need the HOST_SYS triplet to work with existing code - fixing that issue is a separate patch. Also drop the arch_abi argument, it doens't make any sense to a getVar() call and was a copy and paste error. Based on a patch from Otavio Salvador but separated out and tweaked. Fixes: bd36593ba3 ("rust-common: Drop LLVM_TARGET and simplify") Signed-off-by: Richard Purdie (cherry picked from commit d554161a045d12411f288394e253c54aa4c1257c) Signed-off-by: Jermain Horsman Signed-off-by: Steve Sakoman --- meta/recipes-devtools/rust/rust-common.inc | 6 +- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/meta/recipes-devtools/rust/rust-common.inc b/meta/recipes-devtools/rust/rust-common.inc index db0bd8fc1b..ac00fd3d43 100644 --- a/meta/recipes-devtools/rust/rust-common.inc +++ b/meta/recipes-devtools/rust/rust-common.inc @@ -307,9 +307,13 @@ def rust_gen_target(d, thing, wd, features, cpu, arch, abi=""): features = features or d.getVarFlag('FEATURES', arch_abi) or "" features = features.strip() +llvm_target = d.getVar('RUST_TARGET_SYS') +if thing == "BUILD": +llvm_target = d.getVar('RUST_HOST_SYS') + # build tspec tspec = {} -tspec['llvm-target'] = d.getVar('RUST_TARGET_SYS', arch_abi) +tspec['llvm-target'] = llvm_target tspec['data-layout'] = d.getVarFlag('DATA_LAYOUT', arch_abi) tspec['max-atomic-width'] = int(d.getVarFlag('MAX_ATOMIC_WIDTH', arch_abi)) tspec['target-pointer-width'] = d.getVarFlag('TARGET_POINTER_WIDTH', arch_abi) -- 2.34.1 -=-=-=-=-=-=-=-=-=-=-=- Links: You receive all messages sent to this group. View/Reply Online (#192003): https://lists.openembedded.org/g/openembedded-core/message/192003 Mute This Topic: https://lists.openembedded.org/mt/103048237/21656 Group Owner: openembedded-core+ow...@lists.openembedded.org Unsubscribe: https://lists.openembedded.org/g/openembedded-core/unsub [arch...@mail-archive.com] -=-=-=-=-=-=-=-=-=-=-=-
[OE-core][kirkstone 10/15] rust-llvm: Allow overriding LLVM target archs
From: Niko Mauno Move the default value into a variable which can be overridden to match more accurately the use case specific scenario. (From OE-Core rev: 645370e85d8742d0614cd52ca7507b5df2d38ad8) Signed-off-by: Niko Mauno Signed-off-by: Alexandre Belloni Signed-off-by: Richard Purdie Signed-off-by: Steve Sakoman --- meta/recipes-devtools/rust/rust-llvm.inc | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/meta/recipes-devtools/rust/rust-llvm.inc b/meta/recipes-devtools/rust/rust-llvm.inc index e645e7a7ac..416a07cd40 100644 --- a/meta/recipes-devtools/rust/rust-llvm.inc +++ b/meta/recipes-devtools/rust/rust-llvm.inc @@ -25,9 +25,11 @@ CXXFLAGS:remove = "-g" LLVM_DIR = "llvm${LLVM_RELEASE}" +RUST_LLVM_TARGETS ?= "ARM;AArch64;Mips;PowerPC;RISCV;X86" + EXTRA_OECMAKE = " \ -DCMAKE_BUILD_TYPE=Release \ --DLLVM_TARGETS_TO_BUILD='ARM;AArch64;Mips;PowerPC;RISCV;X86' \ +-DLLVM_TARGETS_TO_BUILD='${RUST_LLVM_TARGETS}' \ -DLLVM_BUILD_DOCS=OFF \ -DLLVM_ENABLE_TERMINFO=OFF \ -DLLVM_ENABLE_ZLIB=OFF \ -- 2.34.1 -=-=-=-=-=-=-=-=-=-=-=- Links: You receive all messages sent to this group. View/Reply Online (#192002): https://lists.openembedded.org/g/openembedded-core/message/192002 Mute This Topic: https://lists.openembedded.org/mt/103048236/21656 Group Owner: openembedded-core+ow...@lists.openembedded.org Unsubscribe: https://lists.openembedded.org/g/openembedded-core/unsub [arch...@mail-archive.com] -=-=-=-=-=-=-=-=-=-=-=-
[OE-core][kirkstone 09/15] bash: changes to SIGINT handler while waiting for a child
From: Wenlin Kang It rarely observes the problem while running shell script aborting test repeatedly, at the problem, the test shell script never returns to shell Steps to reproduce: 1. Run test script and ctrl-c repeatedly 2. Observe whether returns to shell after ctrl-c Fixed issue: https://lists.gnu.org/archive/html/bug-bash/2023-10/msg00131.html Signed-off-by: Wenlin Kang Signed-off-by: Steve Sakoman --- ...T-handler-while-waiting-for-a-child-.patch | 229 ++ meta/recipes-extended/bash/bash_5.1.16.bb | 1 + 2 files changed, 230 insertions(+) create mode 100644 meta/recipes-extended/bash/bash/0001-changes-to-SIGINT-handler-while-waiting-for-a-child-.patch diff --git a/meta/recipes-extended/bash/bash/0001-changes-to-SIGINT-handler-while-waiting-for-a-child-.patch b/meta/recipes-extended/bash/bash/0001-changes-to-SIGINT-handler-while-waiting-for-a-child-.patch new file mode 100644 index 00..c12b4b7766 --- /dev/null +++ b/meta/recipes-extended/bash/bash/0001-changes-to-SIGINT-handler-while-waiting-for-a-child-.patch @@ -0,0 +1,229 @@ +From 7e84276e07c0835a8729d6fe1265e70eedb2a7f7 Mon Sep 17 00:00:00 2001 +From: Chet Ramey +Date: Mon, 30 Oct 2023 12:16:07 -0400 +Subject: [PATCH] changes to SIGINT handler while waiting for a child; skip + vertical whitespace after translating an integer + +Upstream-Status: Backport +https://git.savannah.gnu.org/cgit/bash.git/commit/?h=devel=fe24a6a55e8850298b496c5b9d82f1866eba190e + +[Adjust and drop some codes to be applicable the tree] +Signed-off-by: Wenlin Kang +--- + general.c | 5 +++-- + jobs.c| 26 -- + tests/redir.right | 4 ++-- + tests/redir11.sub | 2 ++ + tests/type.right | 16 + tests/type.tests | 24 + 6 files changed, 43 insertions(+), 34 deletions(-) + +diff --git a/general.c b/general.c +index 50d5216..68987e2 100644 +--- a/general.c b/general.c +@@ -262,8 +262,9 @@ legal_number (string, result) + if (errno || ep == string) + return 0; /* errno is set on overflow or underflow */ + +- /* Skip any trailing whitespace, since strtoimax does not. */ +- while (whitespace (*ep)) ++ /* Skip any trailing whitespace, since strtoimax does not, using the same ++ test that strtoimax uses for leading whitespace. */ ++ while (isspace ((unsigned char) *ep)) + ep++; + + /* If *string is not '\0' but *ep is '\0' on return, the entire string +diff --git a/jobs.c b/jobs.c +index 7c3b6e8..84dab4d 100644 +--- a/jobs.c b/jobs.c +@@ -2727,6 +2727,10 @@ wait_for_background_pids (ps) + #define INVALID_SIGNAL_HANDLER (SigHandler *)wait_for_background_pids + static SigHandler *old_sigint_handler = INVALID_SIGNAL_HANDLER; + ++/* The current SIGINT handler as set by restore_sigint_handler. Only valid ++ immediately after restore_sigint_handler, used for continuations. */ ++static SigHandler *cur_sigint_handler = INVALID_SIGNAL_HANDLER; ++ + static int wait_sigint_received; + static int child_caught_sigint; + +@@ -2743,6 +2747,7 @@ wait_sigint_cleanup () + static void + restore_sigint_handler () + { ++ cur_sigint_handler = old_sigint_handler; + if (old_sigint_handler != INVALID_SIGNAL_HANDLER) + { + set_signal_handler (SIGINT, old_sigint_handler); +@@ -2766,8 +2771,7 @@ wait_sigint_handler (sig) + restore_sigint_handler (); + /* If we got a SIGINT while in `wait', and SIGINT is trapped, do +what POSIX.2 says (see builtins/wait.def for more info). */ +- if (this_shell_builtin && this_shell_builtin == wait_builtin && +-signal_is_trapped (SIGINT) && ++ if (signal_is_trapped (SIGINT) && + ((sigint_handler = trap_to_sighandler (SIGINT)) == trap_handler)) + { + trap_handler (SIGINT);/* set pending_traps[SIGINT] */ +@@ -2792,6 +2796,8 @@ wait_sigint_handler (sig) + { + set_exit_status (128+SIGINT); + restore_sigint_handler (); ++ if (cur_sigint_handler == INVALID_SIGNAL_HANDLER) ++ set_sigint_handler (); /* XXX - only do this in one place */ + kill (getpid (), SIGINT); + } + +@@ -2934,15 +2940,15 @@ wait_for (pid, flags) + { + SigHandler *temp_sigint_handler; + +- temp_sigint_handler = set_signal_handler (SIGINT, wait_sigint_handler); +- if (temp_sigint_handler == wait_sigint_handler) +- { ++ temp_sigint_handler = old_sigint_handler; ++ old_sigint_handler = set_signal_handler (SIGINT, wait_sigint_handler); ++ if (old_sigint_handler == wait_sigint_handler) ++ { + #if defined (DEBUG) +-internal_warning ("wait_for: recursively setting old_sigint_handler to wait_sigint_handler: running_trap = %d", running_trap); ++ internal_debug ("wait_for: recursively setting old_sigint_handler to wait_sigint_handler: running_trap = %d", running_trap); + #endif +- } +- else +- old_sigint_handler =
[OE-core][kirkstone 08/15] cve-exclusion_5.10.inc: update for 5.10.202
Signed-off-by: Steve Sakoman --- .../linux/cve-exclusion_5.10.inc | 92 +++ 1 file changed, 73 insertions(+), 19 deletions(-) diff --git a/meta/recipes-kernel/linux/cve-exclusion_5.10.inc b/meta/recipes-kernel/linux/cve-exclusion_5.10.inc index 7b4f68c428..583d81d0f2 100644 --- a/meta/recipes-kernel/linux/cve-exclusion_5.10.inc +++ b/meta/recipes-kernel/linux/cve-exclusion_5.10.inc @@ -1,9 +1,9 @@ # Auto-generated CVE metadata, DO NOT EDIT BY HAND. -# Generated at 2023-10-24 06:17:08.900468 for version 5.10.197 +# Generated at 2023-12-05 05:25:07.507188 for version 5.10.202 python check_kernel_cve_status_version() { -this_version = "5.10.197" +this_version = "5.10.202" kernel_version = d.getVar("LINUX_VERSION") if kernel_version != this_version: bb.warn("Kernel CVE status needs updating: generated for %s but kernel is %s" % (this_version, kernel_version)) @@ -5651,7 +5651,8 @@ CVE_CHECK_IGNORE += "CVE-2021-43976" # cpe-stable-backport: Backported in 5.10.89 CVE_CHECK_IGNORE += "CVE-2021-44733" -# CVE-2021-44879 needs backporting (fixed from 5.17rc1) +# cpe-stable-backport: Backported in 5.10.200 +CVE_CHECK_IGNORE += "CVE-2021-44879" # cpe-stable-backport: Backported in 5.10.91 CVE_CHECK_IGNORE += "CVE-2021-45095" @@ -6515,7 +6516,7 @@ CVE_CHECK_IGNORE += "CVE-2022-43945" # CVE-2022-44033 needs backporting (fixed from 6.4rc1) -# CVE-2022-44034 has no known resolution +# CVE-2022-44034 needs backporting (fixed from 6.4rc1) # CVE-2022-4543 has no known resolution @@ -6686,7 +6687,8 @@ CVE_CHECK_IGNORE += "CVE-2023-1118" # fixed-version: only affects 5.15rc1 onwards CVE_CHECK_IGNORE += "CVE-2023-1192" -# CVE-2023-1193 has no known resolution +# fixed-version: only affects 5.15rc1 onwards +CVE_CHECK_IGNORE += "CVE-2023-1193" # fixed-version: only affects 5.15rc1 onwards CVE_CHECK_IGNORE += "CVE-2023-1194" @@ -6982,7 +6984,8 @@ CVE_CHECK_IGNORE += "CVE-2023-3106" # CVE-2023-31084 needs backporting (fixed from 6.4rc3) -# CVE-2023-31085 needs backporting (fixed from 5.10.198) +# cpe-stable-backport: Backported in 5.10.198 +CVE_CHECK_IGNORE += "CVE-2023-31085" # cpe-stable-backport: Backported in 5.10.184 CVE_CHECK_IGNORE += "CVE-2023-3111" @@ -7098,7 +7101,8 @@ CVE_CHECK_IGNORE += "CVE-2023-34256" # fixed-version: only affects 6.1 onwards CVE_CHECK_IGNORE += "CVE-2023-34319" -# CVE-2023-34324 needs backporting (fixed from 5.10.198) +# cpe-stable-backport: Backported in 5.10.198 +CVE_CHECK_IGNORE += "CVE-2023-34324" # fixed-version: only affects 5.15rc1 onwards CVE_CHECK_IGNORE += "CVE-2023-3439" @@ -7123,7 +7127,8 @@ CVE_CHECK_IGNORE += "CVE-2023-35824" # fixed-version: only affects 5.18rc1 onwards CVE_CHECK_IGNORE += "CVE-2023-35826" -# CVE-2023-35827 has no known resolution +# cpe-stable-backport: Backported in 5.10.199 +CVE_CHECK_IGNORE += "CVE-2023-35827" # cpe-stable-backport: Backported in 5.10.180 CVE_CHECK_IGNORE += "CVE-2023-35828" @@ -7201,7 +7206,8 @@ CVE_CHECK_IGNORE += "CVE-2023-3867" # cpe-stable-backport: Backported in 5.10.195 CVE_CHECK_IGNORE += "CVE-2023-39189" -# CVE-2023-39191 needs backporting (fixed from 6.3rc1) +# fixed-version: only affects 5.19rc1 onwards +CVE_CHECK_IGNORE += "CVE-2023-39191" # cpe-stable-backport: Backported in 5.10.195 CVE_CHECK_IGNORE += "CVE-2023-39192" @@ -7212,6 +7218,11 @@ CVE_CHECK_IGNORE += "CVE-2023-39193" # cpe-stable-backport: Backported in 5.10.192 CVE_CHECK_IGNORE += "CVE-2023-39194" +# cpe-stable-backport: Backported in 5.10.188 +CVE_CHECK_IGNORE += "CVE-2023-39197" + +# CVE-2023-39198 needs backporting (fixed from 6.5rc7) + # cpe-stable-backport: Backported in 5.10.188 CVE_CHECK_IGNORE += "CVE-2023-4004" @@ -7223,7 +7234,8 @@ CVE_CHECK_IGNORE += "CVE-2023-4015" # cpe-stable-backport: Backported in 5.10.190 CVE_CHECK_IGNORE += "CVE-2023-40283" -# CVE-2023-40791 needs backporting (fixed from 6.5rc6) +# fixed-version: only affects 6.3rc1 onwards +CVE_CHECK_IGNORE += "CVE-2023-40791" # cpe-stable-backport: Backported in 5.10.190 CVE_CHECK_IGNORE += "CVE-2023-4128" @@ -7253,7 +7265,8 @@ CVE_CHECK_IGNORE += "CVE-2023-4207" # cpe-stable-backport: Backported in 5.10.190 CVE_CHECK_IGNORE += "CVE-2023-4208" -# CVE-2023-4244 needs backporting (fixed from 5.10.198) +# cpe-stable-backport: Backported in 5.10.198 +CVE_CHECK_IGNORE += "CVE-2023-4244" # cpe-stable-backport: Backported in 5.10.190 CVE_CHECK_IGNORE += "CVE-2023-4273" @@ -7264,7 +7277,8 @@ CVE_CHECK_IGNORE += "CVE-2023-42752" # cpe-stable-backport: Backported in 5.10.195 CVE_CHECK_IGNORE += "CVE-2023-42753" -# CVE-2023-42754 needs backporting (fixed from 5.10.198) +# cpe-stable-backport: Backported in 5.10.198 +CVE_CHECK_IGNORE += "CVE-2023-42754" # cpe-stable-backport: Backported in 5.10.197 CVE_CHECK_IGNORE += "CVE-2023-42755" @@ -7290,7 +7304,8 @@ CVE_CHECK_IGNORE += "CVE-2023-44466" # cpe-stable-backport: Backported in 5.10.118 CVE_CHECK_IGNORE +=
[OE-core][kirkstone 07/15] linux-yocto/5.10: update to v5.10.202
From: Bruce Ashfield Updating to the latest korg -stable release that comprises the following commits: 479e8b892541 Linux 5.10.202 610057f4f6e0 interconnect: qcom: Add support for mask-based BCMs 7ce66afcaaf6 netfilter: nf_tables: disable toggling dormant table state more than once d9c4da8cb74e netfilter: nf_tables: fix table flag updates 7d1d3f113425 netfilter: nftables: update table flags from the commit phase a98172e36e5f tracing: Have trace_event_file have ref counters c6e8af2a8a63 io_uring/fdinfo: lock SQ thread while retrieving thread cpu/pid aeeb1ad2dd4e drm/amd/display: Change the DMCUB mailbox memory location from FB to inbox e2bdd437886c drm/amdgpu: fix error handling in amdgpu_bo_list_get() dfa8e63ca527 drm/amd/pm: Handle non-terminated overdrive commands. 7dc933b4b498 ext4: remove gdb backup copy for meta bg in setup_new_flex_group_blocks 0932764fb54a ext4: correct the start block of counting reserved clusters 3c1ad03a5ff2 ext4: correct return value of ext4_convert_meta_bg d739a7e38944 ext4: correct offset of gdb backup in non meta_bg group to update_backups c878db71edc0 ext4: apply umask if ACL support is disabled 3a51aee542b0 Revert "net: r8169: Disable multicast filter for RTL8168H and RTL8107E" f6e014b5eb1d media: qcom: camss: Fix vfe_get() error jump e2d2e266089d mm: kmem: drop __GFP_NOFAIL when allocating objcg vectors 6875820f36bf nfsd: fix file memleak on client_opens_release b51b20c018c6 media: venus: hfi: add checks to handle capabilities from firmware bcee276a1e02 media: venus: hfi: fix the check to handle session buffer requirement da240b7bada2 media: venus: hfi_parser: Add check to keep the number of codecs within range 0f887306bd8b media: sharp: fix sharp encoding dfa9f4ea6502 media: lirc: drop trailing space from scancode transmit c041f5ddef00 f2fs: avoid format-overflow warning 829f0d5231b7 i2c: i801: fix potential race in i801_block_transaction_byte_by_byte 430603f6de33 net: phylink: initialize carrier state at creation 4dc0484e90a3 net: dsa: lan9303: consequently nested-lock physical MDIO cb1006640cb3 i2c: designware: Disable TX_EMPTY irq while waiting for block length byte 8e29eebe4c39 lsm: fix default return value for inode_getsecctx 8327f50442d2 lsm: fix default return value for vm_enough_memory a011391f019c Revert ncsi: Propagate carrier gain/loss events to the NCSI controller 969d994612ff arm64: dts: qcom: ipq6018: Fix tcsr_mutex register size 2b3931eb8e9c arm64: dts: qcom: ipq6018: switch TCSR mutex to MMIO bdda1c356d58 PCI: exynos: Don't discard .remove() callback 62d15b6a6ec9 Bluetooth: btusb: Add 0bda:b85b for Fn-Link RTL8852BE dbbf3c456002 Bluetooth: btusb: Add RTW8852BE device 13d3:3570 to device tables 990d4c76d254 bluetooth: Add device 13d3:3571 to device tables 3aba34baa4fb bluetooth: Add device 0bda:887b to device tables 0952747362c1 Bluetooth: btusb: Add Realtek RTL8852BE support ID 0x0cb8:0xc559 8617305611c1 cpufreq: stats: Fix buffer overflow detection in trans_stats() 2ed25af15b32 tty: serial: meson: fix hard LOCKUP on crtscts mode 07c61839582d serial: meson: Use platform_get_irq() to get the interrupt 980c3135f1ae tty: serial: meson: retrieve port FIFO size from DT 1e66cd408353 serial: meson: remove redundant initialization of variable id ba30578def84 ALSA: hda/realtek - Enable internal speaker of ASUS K6500ZC ddd47d8d1ba6 ALSA: hda/realtek - Add Dell ALC295 to pin fall back table a681d28b973f ALSA: info: Fix potential deadlock at disconnection f04fa1e1997f xhci: Enable RPM on controllers that support low-power states 5e34fe50a976 parisc/pgtable: Do not drop upper 5 address bits of physical address 064c697cac4b parisc: Prevent booting 64-bit kernels on PA1.x machines c6effcdd7dd0 i3c: master: cdns: Fix reading status register 76320f05b99d mtd: cfi_cmdset_0001: Byte swap OTP info dce3e7c40055 mm/memory_hotplug: use pfn math in place of direct struct page manipulation 63d2023fbbe1 mm/cma: use nth_page() in place of direct struct page manipulation d24340f08104 dmaengine: stm32-mdma: correct desc prep when channel running 788322e1ede6 mcb: fix error handling for different scenarios when parsing 25284c46b657 i2c: core: Run atomic i2c xfer when !preemptible 8f8fc95b3a7f kernel/reboot: emergency_restart: Set correct system_state 9386f59759b4 quota: explicitly forbid quota files from being encrypted f729cf6f3217 jbd2: fix potential data lost in recovering journal raced with synchronizing fs bdev db5ebaeb8fda PCI: keystone: Don't discard .probe() callback 2bcdc1b6b61e PCI: keystone: Don't discard .remove() callback 943347e53a75 genirq/generic_chip: Make irq_remove_generic_chip() irqdomain aware b2c194fe8f31 mmc: meson-gx: Remove setting of CMD_CFG_ERROR 03ed26935beb wifi: ath11k: fix
[OE-core][kirkstone 06/15] linux-yocto/5.10: update to v5.10.200
From: Bruce Ashfield Updating to the latest korg -stable release that comprises the following commits: 3e55583405ac Linux 5.10.200 a5feaf765935 ALSA: hda: intel-dsp-config: Fix JSL Chromebook quirk detection 9109649559f9 tty: 8250: Add support for Intashield IS-100 73bcb4d44988 tty: 8250: Add support for Brainboxes UP cards 119f38e8ca16 tty: 8250: Add support for additional Brainboxes UC cards a8bf6f62187f tty: 8250: Remove UC-257 and UC-431 e705aee2a657 usb: raw-gadget: properly handle interrupted requests 8e0324f2cbb7 usb: storage: set 1.50 as the lower bcdDevice for older "Super Top" compatibility 747b8f877998 PCI: Prevent xHCI driver from claiming AMD VanGogh USB3 DRD device deddf60c271f can: isotp: isotp_sendmsg(): fix TX state detection and wait behavior 8716c28f695c can: isotp: isotp_bind(): do not validate unused address information e4c4e0e1b29c can: isotp: add local echo tx processing and tx without FC 569c95b7ece0 can: isotp: handle wait_event_interruptible() return values de3c02383aa6 can: isotp: check CAN address family in isotp_bind() 0386f3704789 can: isotp: isotp_bind(): return -EINVAL on incorrect CAN ID formatting 93b1e3f3a263 can: isotp: set max PDU size to 64 kByte 7adbc048d84b can: isotp: Add error message if txqueuelen is too small 57798a2cfe15 can: isotp: add symbolic error message to isotp_module_init() 186ab5645199 can: isotp: change error format from decimal to symbolic error names b881ce6c7d10 powerpc/mm: Fix boot crash with FLATMEM 1b285a1bfb0d net: chelsio: cxgb4: add an error code check in t4_load_phy_fw 955a1105eec2 platform/mellanox: mlxbf-tmfifo: Fix a warning message 268ec38b797b scsi: mpt3sas: Fix in error path abf9c7811836 fbdev: uvesafb: Call cn_del_callback() at the end of uvesafb_exit() ec45886637ee ASoC: rt5650: fix the wrong result of key button c683d8b6417c netfilter: nfnetlink_log: silence bogus compiler warning 66cc633fc6e1 spi: npcm-fiu: Fix UMA reads when dummy.nbytes == 0 6f9093b6f8f7 fbdev: atyfb: only use ioremap_uc() on i386 and ia64 ead3c123a753 Input: synaptics-rmi4 - handle reset delay when using SMBus trsnsport fb8f253b9532 dmaengine: ste_dma40: Fix PM disable depth imbalance in d40_probe e619b38a873f irqchip/stm32-exti: add missing DT IRQ flag translation d151fb801957 net: sched: cls_u32: Fix allocation size in u32_init() 9ade01b2949b x86: Fix .brk attribute in linker script 3fdd5b2bb09f rpmsg: Fix possible refcount leak in rpmsg_register_device_override() 41c13a571de4 rpmsg: glink: Release driver_override 5f1bb9f4d4b5 rpmsg: Fix calling device_lock() on non-initialized device 5bbd3469a4b6 rpmsg: Fix kfree() of static memory on setting driver_override d0208fb38f43 rpmsg: Constify local variable in field store macro da369d3996cc driver: platform: Add helper for safer setting of driver_override 4a20f5ea62db objtool/x86: add missing embedded_insn check 6b977a7323f7 ext4: avoid overlapping preallocations due to overflow 58fe961c606c ext4: fix BUG in ext4_mb_new_inode_pa() due to overflow c0db17e55ff6 ext4: add two helper functions extent_logical_end() and pa_logical_end() c761d34a7ec0 x86/mm: Fix RESERVE_BRK() for older binutils 01a5e17e3ef3 x86/mm: Simplify RESERVE_BRK() 571ce7d944cd f2fs: fix to do sanity check on inode type during garbage collection d1c37e849f37 smbdirect: missing rc checks while waiting for rdma events b2e62728b106 kobject: Fix slab-out-of-bounds in fill_kobj_path() b9b197f65904 x86/i8259: Skip probing when ACPI/MADT advertises PCAT compatibility 62184eb77821 iio: adc: xilinx-xadc: Don't clobber preset voltage/temperature thresholds e96eb8853f33 iio: adc: xilinx: use more devres helpers and remove remove() 0eb1198fe4d6 iio: adc: xilinx: use devm_krealloc() instead of kfree() + kcalloc() c4b496c9f772 iio: adc: xilinx: use helper variable for >dev d8928befffe5 clk: Sanitize possible_parent_show to Handle Return Value of of_clk_get_parent_name 09ce0d85cc00 sparc32: fix a braino in fault handling in csum_and_copy_..._user() 0258ca32b0ea perf/core: Fix potential NULL deref 4e3c606afa25 nvmem: imx: correct nregs for i.MX6UL 37ccf15ebeec nvmem: imx: correct nregs for i.MX6SLL 7a1c29e93c25 nvmem: imx: correct nregs for i.MX6ULL d44166341f4b misc: fastrpc: Clean buffers on remote invocation failures 866838eb8ee9 tracing/kprobes: Fix the description of variable length arguments ca764116b5c1 i2c: aspeed: Fix i2c bus hang in slave read 18c5167d0460 i2c: stm32f7: Fix PEC handling in case of SMBUS transfers 80416f6ba002 i2c: muxes: i2c-demux-pinctrl: Use of_get_i2c_adapter_by_node() 9a9ead53e72f i2c: muxes: i2c-mux-gpmux: Use of_get_i2c_adapter_by_node() 3cb69f1dbc86 i2c: muxes: i2c-mux-pinctrl: Use of_get_i2c_adapter_by_node() 0c8587fec9d5 iio: exynos-adc:
[OE-core][kirkstone 05/15] linux-yocto/5.10: update to v5.10.198
From: Bruce Ashfield Updating to the latest korg -stable release that comprises the following commits: a8d812240fdd Linux 5.10.198 660627c71bc1 xen/events: replace evtchn_rwlock with RCU 1e3d016a9506 mmc: renesas_sdhi: only reset SCC when its pointer is populated a7d86a77c33b netfilter: nftables: exthdr: fix 4-byte stack OOB write 84f6b686df2d netfilter: nf_tables: fix kdoc warnings after gc rework c17446c00805 parisc: Restore __ldcw_align for PA-RISC 2.0 processors cfc93ae6 RDMA/mlx5: Fix NULL string error 0d520cdb0cd0 RDMA/siw: Fix connection failure handling 5a4a6a47e074 RDMA/uverbs: Fix typo of sizeof argument 626868282c36 RDMA/cma: Fix truncation compilation warning in make_cma_ports 7de0e42444e9 RDMA/cma: Initialize ib_sa_multicast structure to 0 when join 36953b4da78b gpio: pxa: disable pinctrl calls for MMP_GPIO 6ad972e66870 gpio: aspeed: fix the GPIO number passed to pinctrl_gpio_set_config() d7d8f1a679ec IB/mlx4: Fix the size of a buffer in add_port_entries() 204c2d485f86 of: dynamic: Fix potential memory leak in of_changeset_action() b74f12f98b7f RDMA/core: Require admin capabilities to set system parameters ccd87fe7a0f6 dm zoned: free dmz->ddev array in dmz_put_zoned_devices 82d87c944ea8 cpupower: add Makefile dependencies for install targets 492241613cf4 sctp: update hb timer immediately after users change hb_interval f87658493898 sctp: update transport state when processing a dupcook packet ff346b01eba5 tcp: fix delayed ACKs for MSS boundary condition 677aaa261e7a tcp: fix quick-ack counting to count actual ACKs of new data 6a24d0661fa3 tipc: fix a potential deadlock on >lock b9f1568ba37f net: stmmac: dwmac-stm32: fix resume on STM32 MCU 3a5142f01758 netfilter: nf_tables: nft_set_rbtree: fix spurious insertion failure 0ba9348532bd netfilter: handle the connecting collision properly in nf_conntrack_proto_sctp b212f361a5d1 net: ethernet: ti: am65-cpsw: Fix error code in am65_cpsw_nuss_init_tx_chns() dba849cc9811 net: nfc: llcp: Add lock when modifying device list 30bc4d7aebe3 net: usb: smsc75xx: Fix uninit-value access in __smsc75xx_read_reg d44346dda7d4 net: dsa: mv88e6xxx: Avoid EEPROM timeout when EEPROM is absent 96b2e1090397 ipv4, ipv6: Fix handling of transhdrlen in __ip{,6}_append_data() 2ea52a2fb8e8 net: fix possible store tearing in neigh_periodic_work() 6e3d9e5caba8 modpost: add missing else to the "of" check 225cd4f67bd4 NFSv4: Fix a nfs4_state_manager() race d8f2ba9ec358 ima: rework CONFIG_IMA dependency block 77f82df960cb scsi: target: core: Fix deadlock due to recursive locking a9430129d8db ima: Finish deprecation of IMA_TRUSTED_KEYRING Kconfig 725fd2080559 regmap: rbtree: Fix wrong register marked as in-cache when creating new node 666cdc43df24 wifi: mt76: mt76x02: fix MT76x0 external LNA gain handling 54a4faab2baa drivers/net: process the result of hdlc_open() and add call of hdlc_close() in uhdlc_close() 93dd471d3a2f bpf: Fix tr dereferencing 10a18c8bac7f wifi: mwifiex: Fix oob check condition in mwifiex_process_rx_packet 8c15c1bcc5b5 wifi: iwlwifi: dbg_ini: fix structure packing a5f643ab1163 ubi: Refuse attaching if mtd's erasesize is 0 33420a82067b arm64: Add Cortex-A520 CPU part definition 81d03e251894 net: prevent rewrite of msg_name in sock_sendmsg() 72fc02ebfc93 net: replace calls to sock->ops->connect() with kernel_connect() 1aeff207e295 wifi: mwifiex: Fix tlv_buf_left calculation f6f25930fa34 qed/red_ll2: Fix undefined behavior bug in struct qed_ll2_info b9c4b3ca9016 scsi: zfcp: Fix a double put in zfcp_port_enqueue() 04b6b67a3e77 Revert "PCI: qcom: Disable write access to read only registers for IP v2.3.3" c2cf152e8bb8 Revert "clk: imx: pll14xx: dynamically configure PLL for 393216000/361267200Hz" f94471c0cc31 block: fix use-after-free of q->q_usage_counter 0d6987d4a34c rbd: take header_rwsem in rbd_dev_refresh() only when updating d3d170c5fc06 rbd: decouple parent info read-in from updating rbd_dev 3ceb306f9b2d rbd: decouple header read-in from updating rbd_dev->header 7c4f11d73b24 rbd: move rbd_dev_refresh() definition d0952ce316d1 drm/mediatek: Fix backport issue in mtk_drm_gem_prime_vmap() c33d75a57a81 ring-buffer: Fix bytes info in per_cpu buffer stats 0ecde7dd766f ring-buffer: remove obsolete comment for free_buffer_page() 2ad1a1d3d616 NFSv4: Fix a state manager thread deadlock regression ec4325e80633 NFS: rename nfs_client_kset to nfs_kset 598539f38c72 NFS: Cleanup unused rpc_clnt variable 19f3d5d13b75 spi: zynqmp-gqspi: fix clock imbalance on probe failure 2cdec9c13f81 spi: spi-zynqmp-gqspi: Fix runtime PM imbalance in zynqmp_qspi_probe ae03dafc3761 fs: binfmt_elf_efpic: fix personality for ELF-FDPIC 8ec1abb59a98 ata: libata-sata: increase PMP SRST timeout to 10s
[OE-core][kirkstone 04/15] vim: upgrade 9.0.2068 -> 9.0.2130
From: Tim Orling https://github.com/vim/vim/compare/v9.0.2068...v9.0.2130 CVE: CVE-2023-48231 CVE: CVE-2023-48232 CVE: CVE-2023-48233 CVE: CVE-2023-48234 CVE: CVE-2023-48235 CVE: CVE-2023-48236 CVE: CVE-2023-48237 Signed-off-by: Tim Orling Signed-off-by: Alexandre Belloni (cherry picked from commit 5978d565a9e700485fc563dfe2e3c0045dd74b59) Signed-off-by: Steve Sakoman --- meta/recipes-support/vim/vim.inc | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/meta/recipes-support/vim/vim.inc b/meta/recipes-support/vim/vim.inc index a37310afd8..6b440d8947 100644 --- a/meta/recipes-support/vim/vim.inc +++ b/meta/recipes-support/vim/vim.inc @@ -19,8 +19,8 @@ SRC_URI = "git://github.com/vim/vim.git;branch=master;protocol=https \ file://no-path-adjust.patch \ " -PV .= ".2068" -SRCREV = "9198c1f2b1ddecde22af918541e0de2a32f0f45a" +PV .= ".2130" +SRCREV = "075ad7047457debfeef13442c01e74088b461092" # Do not consider .z in x.y.z, as that is updated with every commit UPSTREAM_CHECK_GITTAGREGEX = "(?P\d+\.\d+)\.0" -- 2.34.1 -=-=-=-=-=-=-=-=-=-=-=- Links: You receive all messages sent to this group. View/Reply Online (#191996): https://lists.openembedded.org/g/openembedded-core/message/191996 Mute This Topic: https://lists.openembedded.org/mt/103048226/21656 Group Owner: openembedded-core+ow...@lists.openembedded.org Unsubscribe: https://lists.openembedded.org/g/openembedded-core/unsub [arch...@mail-archive.com] -=-=-=-=-=-=-=-=-=-=-=-
[OE-core][kirkstone 03/15] python3-cryptography: fix CVE-2023-49083
From: Narpat Mali cryptography is a package designed to expose cryptographic primitives and recipes to Python developers. Calling `load_pem_pkcs7_certificates` or `load_der_pkcs7_certificates` could lead to a NULL-pointer dereference and segfault. Exploitation of this vulnerability poses a serious risk of Denial of Service (DoS) for any application attempting to deserialize a PKCS7 blob/certificate. The consequences extend to potential disruptions in system availability and stability. This vulnerability has been patched in version 41.0.6. References: https://nvd.nist.gov/vuln/detail/CVE-2023-49083 https://security-tracker.debian.org/tracker/CVE-2023-49083 Signed-off-by: Narpat Mali Signed-off-by: Steve Sakoman --- .../python3-cryptography/CVE-2023-49083.patch | 53 +++ .../python/python3-cryptography_36.0.2.bb | 1 + 2 files changed, 54 insertions(+) create mode 100644 meta/recipes-devtools/python/python3-cryptography/CVE-2023-49083.patch diff --git a/meta/recipes-devtools/python/python3-cryptography/CVE-2023-49083.patch b/meta/recipes-devtools/python/python3-cryptography/CVE-2023-49083.patch new file mode 100644 index 00..d398eea1d9 --- /dev/null +++ b/meta/recipes-devtools/python/python3-cryptography/CVE-2023-49083.patch @@ -0,0 +1,53 @@ +From 627ac5e314303acc00a19d58f09eb1eabd029fd1 Mon Sep 17 00:00:00 2001 +From: Alex Gaynor +Date: Wed, 6 Dec 2023 08:04:53 + +Subject: [PATCH] Fixed crash when loading a PKCS#7 bundle with no certificates + (#9926) + +CVE: CVE-2023-49083 + +Upstream-Status: Backport [https://github.com/pyca/cryptography/commit/1e7b4d074e14c4e694d3ce69ad6754a6039fd6ff] + +Signed-off-by: Narpat Mali +--- + src/cryptography/hazmat/backends/openssl/backend.py | 5 - + tests/hazmat/primitives/test_pkcs7.py | 6 ++ + 2 files changed, 10 insertions(+), 1 deletion(-) + +diff --git a/src/cryptography/hazmat/backends/openssl/backend.py b/src/cryptography/hazmat/backends/openssl/backend.py +index 5606fe6..c43fea0 100644 +--- a/src/cryptography/hazmat/backends/openssl/backend.py b/src/cryptography/hazmat/backends/openssl/backend.py +@@ -2189,9 +2189,12 @@ class Backend(BackendInterface): + _Reasons.UNSUPPORTED_SERIALIZATION, + ) + ++certs: list[x509.Certificate] = [] ++if p7.d.sign == self._ffi.NULL: ++return certs ++ + sk_x509 = p7.d.sign.cert + num = self._lib.sk_X509_num(sk_x509) +-certs = [] + for i in range(num): + x509 = self._lib.sk_X509_value(sk_x509, i) + self.openssl_assert(x509 != self._ffi.NULL) +diff --git a/tests/hazmat/primitives/test_pkcs7.py b/tests/hazmat/primitives/test_pkcs7.py +index 91ac842..b98a9f1 100644 +--- a/tests/hazmat/primitives/test_pkcs7.py b/tests/hazmat/primitives/test_pkcs7.py +@@ -81,6 +81,12 @@ class TestPKCS7Loading(object): + mode="rb", + ) + ++def test_load_pkcs7_empty_certificates(self): ++der = b"\x30\x0B\x06\x09\x2A\x86\x48\x86\xF7\x0D\x01\x07\x02" ++ ++certificates = pkcs7.load_der_pkcs7_certificates(der) ++assert certificates == [] ++ + + # We have no public verification API and won't be adding one until we get + # some requirements from users so this function exists to give us basic +-- +2.40.0 diff --git a/meta/recipes-devtools/python/python3-cryptography_36.0.2.bb b/meta/recipes-devtools/python/python3-cryptography_36.0.2.bb index c3ae0c1ab9..c429c75e1b 100644 --- a/meta/recipes-devtools/python/python3-cryptography_36.0.2.bb +++ b/meta/recipes-devtools/python/python3-cryptography_36.0.2.bb @@ -18,6 +18,7 @@ SRC_URI += " \ file://0002-Cargo.toml-edition-2018-2021.patch \ file://fix-leak-metric.patch \ file://CVE-2023-23931.patch \ +file://CVE-2023-49083.patch \ " inherit pypi python_setuptools3_rust -- 2.34.1 -=-=-=-=-=-=-=-=-=-=-=- Links: You receive all messages sent to this group. View/Reply Online (#191995): https://lists.openembedded.org/g/openembedded-core/message/191995 Mute This Topic: https://lists.openembedded.org/mt/103048224/21656 Group Owner: openembedded-core+ow...@lists.openembedded.org Unsubscribe: https://lists.openembedded.org/g/openembedded-core/unsub [arch...@mail-archive.com] -=-=-=-=-=-=-=-=-=-=-=-
[OE-core][kirkstone 02/15] xwayland: fix CVE-2023-5367
From: Lee Chee Yang Signed-off-by: Lee Chee Yang Signed-off-by: Steve Sakoman --- .../xwayland/xwayland/CVE-2023-5367.patch | 85 +++ .../xwayland/xwayland_22.1.8.bb | 4 +- 2 files changed, 88 insertions(+), 1 deletion(-) create mode 100644 meta/recipes-graphics/xwayland/xwayland/CVE-2023-5367.patch diff --git a/meta/recipes-graphics/xwayland/xwayland/CVE-2023-5367.patch b/meta/recipes-graphics/xwayland/xwayland/CVE-2023-5367.patch new file mode 100644 index 00..d4da1ecb4b --- /dev/null +++ b/meta/recipes-graphics/xwayland/xwayland/CVE-2023-5367.patch @@ -0,0 +1,85 @@ +CVE: CVE-2023-5367 +Upstream-Status: Backport [ https://gitlab.freedesktop.org/xorg/xserver/-/commit/541ab2ecd41d4d8689e71855d93e492bc554719a ] +Signed-off-by: Lee Chee Yang + + +From 541ab2ecd41d4d8689e71855d93e492bc554719a Mon Sep 17 00:00:00 2001 +From: Peter Hutterer +Date: Tue, 3 Oct 2023 11:53:05 +1000 +Subject: [PATCH] Xi/randr: fix handling of PropModeAppend/Prepend + +The handling of appending/prepending properties was incorrect, with at +least two bugs: the property length was set to the length of the new +part only, i.e. appending or prepending N elements to a property with P +existing elements always resulted in the property having N elements +instead of N + P. + +Second, when pre-pending a value to a property, the offset for the old +values was incorrect, leaving the new property with potentially +uninitalized values and/or resulting in OOB memory writes. +For example, prepending a 3 element value to a 5 element property would +result in this 8 value array: + [N, N, N, ?, ?, P, P, P ] P, P +^OOB write + +The XI2 code is a copy/paste of the RandR code, so the bug exists in +both. + +CVE-2023-5367, ZDI-CAN-22153 + +This vulnerability was discovered by: +Jan-Niklas Sohn working with Trend Micro Zero Day Initiative + +Signed-off-by: Peter Hutterer +--- + Xi/xiproperty.c| 4 ++-- + randr/rrproperty.c | 4 ++-- + 2 files changed, 4 insertions(+), 4 deletions(-) + +diff --git a/Xi/xiproperty.c b/Xi/xiproperty.c +index 066ba21fba..d315f04d0e 100644 +--- a/Xi/xiproperty.c b/Xi/xiproperty.c +@@ -730,7 +730,7 @@ XIChangeDeviceProperty(DeviceIntPtr dev, Atom property, Atom type, + XIDestroyDeviceProperty(prop); + return BadAlloc; + } +-new_value.size = len; ++new_value.size = total_len; + new_value.type = type; + new_value.format = format; + +@@ -747,7 +747,7 @@ XIChangeDeviceProperty(DeviceIntPtr dev, Atom property, Atom type, + case PropModePrepend: + new_data = new_value.data; + old_data = (void *) (((char *) new_value.data) + +- (prop_value->size * size_in_bytes)); ++ (len * size_in_bytes)); + break; + } + if (new_data) +diff --git a/randr/rrproperty.c b/randr/rrproperty.c +index c2fb9585c6..25469f57b2 100644 +--- a/randr/rrproperty.c b/randr/rrproperty.c +@@ -209,7 +209,7 @@ RRChangeOutputProperty(RROutputPtr output, Atom property, Atom type, + RRDestroyOutputProperty(prop); + return BadAlloc; + } +-new_value.size = len; ++new_value.size = total_len; + new_value.type = type; + new_value.format = format; + +@@ -226,7 +226,7 @@ RRChangeOutputProperty(RROutputPtr output, Atom property, Atom type, + case PropModePrepend: + new_data = new_value.data; + old_data = (void *) (((char *) new_value.data) + +- (prop_value->size * size_in_bytes)); ++ (len * size_in_bytes)); + break; + } + if (new_data) +-- +GitLab + diff --git a/meta/recipes-graphics/xwayland/xwayland_22.1.8.bb b/meta/recipes-graphics/xwayland/xwayland_22.1.8.bb index 6919ba421b..94797be8e0 100644 --- a/meta/recipes-graphics/xwayland/xwayland_22.1.8.bb +++ b/meta/recipes-graphics/xwayland/xwayland_22.1.8.bb @@ -9,7 +9,9 @@ HOMEPAGE = "https://fedoraproject.org/wiki/Changes/XwaylandStandalone; LICENSE = "MIT" LIC_FILES_CHKSUM = "file://COPYING;md5=5df87950af51ac2c5822094553ea1880" -SRC_URI = "https://www.x.org/archive/individual/xserver/xwayland-${PV}.tar.xz; +SRC_URI = "https://www.x.org/archive/individual/xserver/xwayland-${PV}.tar.xz \ + file://CVE-2023-5367.patch \ +" SRC_URI[sha256sum] = "d1173290b88ea8da42a7d9350dedfaba856ce4ae44e58c045ad9ecaa2f73" UPSTREAM_CHECK_REGEX = "xwayland-(?P\d+(\.(?!90\d)\d+)+)\.tar" -- 2.34.1 -=-=-=-=-=-=-=-=-=-=-=- Links: You receive all messages sent to this group. View/Reply Online (#191994): https://lists.openembedded.org/g/openembedded-core/message/191994 Mute This Topic: https://lists.openembedded.org/mt/103048223/21656 Group Owner: openembedded-core+ow...@lists.openembedded.org Unsubscribe:
[OE-core][kirkstone 01/15] libsndfile: fix CVE-2022-33065 Signed integer overflow in src/mat4.c
From: Vivek Kumbhar Signed-off-by: Vivek Kumbhar Signed-off-by: Steve Sakoman --- .../libsndfile1/CVE-2022-33065.patch | 46 +++ .../libsndfile/libsndfile1_1.0.31.bb | 1 + 2 files changed, 47 insertions(+) create mode 100644 meta/recipes-multimedia/libsndfile/libsndfile1/CVE-2022-33065.patch diff --git a/meta/recipes-multimedia/libsndfile/libsndfile1/CVE-2022-33065.patch b/meta/recipes-multimedia/libsndfile/libsndfile1/CVE-2022-33065.patch new file mode 100644 index 00..c5fba4d6b5 --- /dev/null +++ b/meta/recipes-multimedia/libsndfile/libsndfile1/CVE-2022-33065.patch @@ -0,0 +1,46 @@ +From 0754562e13d2e63a248a1c82f90b30bc0ffe307c Mon Sep 17 00:00:00 2001 +From: Alex Stewart +Date: Tue, 10 Oct 2023 16:10:34 -0400 +Subject: [PATCH] mat4/mat5: fix int overflow in dataend calculation + +The clang sanitizer warns of a possible signed integer overflow when +calculating the `dataend` value in `mat4_read_header()`. + +``` +src/mat4.c:323:41: runtime error: signed integer overflow: 205 * -100663296 cannot be represented in type 'int' +SUMMARY: UndefinedBehaviorSanitizer: undefined-behavior src/mat4.c:323:41 in +src/mat4.c:323:48: runtime error: signed integer overflow: 838860800 * 4 cannot be represented in type 'int' +SUMMARY: UndefinedBehaviorSanitizer: undefined-behavior src/mat4.c:323:48 in +``` + +Cast the offending `rows` and `cols` ints to `sf_count_t` (the type of +`dataend` before performing the calculation, to avoid the issue. + +CVE: CVE-2022-33065 +Fixes: https://github.com/libsndfile/libsndfile/issues/789 +Fixes: https://github.com/libsndfile/libsndfile/issues/833 + +Signed-off-by: Alex Stewart + +Upstream-Status: Backport [https://github.com/libsndfile/libsndfile/commit/0754562e13d2e63a248a1c82f90b30bc0ffe307c] +CVE: CVE-2022-33065 +Signed-off-by: Vivek Kumbhar +--- + src/mat4.c | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/src/mat4.c b/src/mat4.c +index 0b1b414..575683b 100644 +--- a/src/mat4.c b/src/mat4.c +@@ -320,7 +320,7 @@ mat4_read_header (SF_PRIVATE *psf) + psf->filelength - psf->dataoffset, psf->sf.channels * psf->sf.frames * psf->bytewidth) ; + } + else if ((psf->filelength - psf->dataoffset) > psf->sf.channels * psf->sf.frames * psf->bytewidth) +- psf->dataend = psf->dataoffset + rows * cols * psf->bytewidth ; ++ psf->dataend = psf->dataoffset + (sf_count_t) rows * (sf_count_t) cols * psf->bytewidth ; + + psf->datalength = psf->filelength - psf->dataoffset - psf->dataend ; + +-- +2.40.1 diff --git a/meta/recipes-multimedia/libsndfile/libsndfile1_1.0.31.bb b/meta/recipes-multimedia/libsndfile/libsndfile1_1.0.31.bb index f6ea585e34..0c654fd853 100644 --- a/meta/recipes-multimedia/libsndfile/libsndfile1_1.0.31.bb +++ b/meta/recipes-multimedia/libsndfile/libsndfile1_1.0.31.bb @@ -11,6 +11,7 @@ LICENSE = "LGPL-2.1-only" SRC_URI = "https://github.com/libsndfile/libsndfile/releases/download/${PV}/libsndfile-${PV}.tar.bz2 \ file://noopus.patch \ file://0001-flac-Fix-improper-buffer-reusing-732.patch \ + file://CVE-2022-33065.patch \ " UPSTREAM_CHECK_URI = "https://github.com/libsndfile/libsndfile/releases/; -- 2.34.1 -=-=-=-=-=-=-=-=-=-=-=- Links: You receive all messages sent to this group. View/Reply Online (#191993): https://lists.openembedded.org/g/openembedded-core/message/191993 Mute This Topic: https://lists.openembedded.org/mt/103048222/21656 Group Owner: openembedded-core+ow...@lists.openembedded.org Unsubscribe: https://lists.openembedded.org/g/openembedded-core/unsub [arch...@mail-archive.com] -=-=-=-=-=-=-=-=-=-=-=-
[OE-core][kirkstone 00/15] Patch review
Please review this set of changes for kirkstone and have comments back by end of day Monday, December 11 Passed a-full on autobuilder: https://autobuilder.yoctoproject.org/typhoon/#/builders/83/builds/6300 The following changes since commit 11da43b58e19583a9bc16044309610cfb2e86469: systemtap_git: fix used uninitialized error (2023-11-28 05:11:52 -1000) are available in the Git repository at: https://git.openembedded.org/openembedded-core-contrib stable/kirkstone-nut https://git.openembedded.org/openembedded-core-contrib/log/?h=stable/kirkstone-nut Bruce Ashfield (3): linux-yocto/5.10: update to v5.10.198 linux-yocto/5.10: update to v5.10.200 linux-yocto/5.10: update to v5.10.202 Lee Chee Yang (1): xwayland: fix CVE-2023-5367 Narpat Mali (1): python3-cryptography: fix CVE-2023-49083 Niko Mauno (1): rust-llvm: Allow overriding LLVM target archs Richard Purdie (5): rust-common: Set llvm-target correctly for cross SDK targets rust-cross-canadian: Fix ordering of target json config generation rust-cross/rust-common: Merge arm target handling code to fix cross-canadian rust-cross: Simplfy the rust_gen_target calls native: Clear TUNE_FEATURES/ABIEXTENSION Steve Sakoman (1): cve-exclusion_5.10.inc: update for 5.10.202 Tim Orling (1): vim: upgrade 9.0.2068 -> 9.0.2130 Vivek Kumbhar (1): libsndfile: fix CVE-2022-33065 Signed integer overflow in src/mat4.c Wenlin Kang (1): bash: changes to SIGINT handler while waiting for a child meta/classes/native.bbclass | 2 + .../python3-cryptography/CVE-2023-49083.patch | 53 .../python/python3-cryptography_36.0.2.bb | 1 + meta/recipes-devtools/rust/rust-common.inc| 24 +- .../rust/rust-cross-canadian-common.inc | 5 +- meta/recipes-devtools/rust/rust-cross.inc | 21 +- meta/recipes-devtools/rust/rust-llvm.inc | 4 +- ...T-handler-while-waiting-for-a-child-.patch | 229 ++ meta/recipes-extended/bash/bash_5.1.16.bb | 1 + .../xwayland/xwayland/CVE-2023-5367.patch | 85 +++ .../xwayland/xwayland_22.1.8.bb | 4 +- .../linux/cve-exclusion_5.10.inc | 92 +-- .../linux/linux-yocto-rt_5.10.bb | 6 +- .../linux/linux-yocto-tiny_5.10.bb| 8 +- meta/recipes-kernel/linux/linux-yocto_5.10.bb | 24 +- .../libsndfile1/CVE-2022-33065.patch | 46 .../libsndfile/libsndfile1_1.0.31.bb | 1 + meta/recipes-support/vim/vim.inc | 4 +- 18 files changed, 542 insertions(+), 68 deletions(-) create mode 100644 meta/recipes-devtools/python/python3-cryptography/CVE-2023-49083.patch create mode 100644 meta/recipes-extended/bash/bash/0001-changes-to-SIGINT-handler-while-waiting-for-a-child-.patch create mode 100644 meta/recipes-graphics/xwayland/xwayland/CVE-2023-5367.patch create mode 100644 meta/recipes-multimedia/libsndfile/libsndfile1/CVE-2022-33065.patch -- 2.34.1 -=-=-=-=-=-=-=-=-=-=-=- Links: You receive all messages sent to this group. View/Reply Online (#191992): https://lists.openembedded.org/g/openembedded-core/message/191992 Mute This Topic: https://lists.openembedded.org/mt/103048221/21656 Group Owner: openembedded-core+ow...@lists.openembedded.org Unsubscribe: https://lists.openembedded.org/g/openembedded-core/unsub [arch...@mail-archive.com] -=-=-=-=-=-=-=-=-=-=-=-
[OE-core] Patchtest results for [PATCH 6/6] python3-maturin: add sdk (testsdk) test case
Thank you for your submission. Patchtest identified one or more issues with the patch. Please see the log below for more information: --- Testing patch /home/patchtest/share/mboxes/6-6-python3-maturin-add-sdk-testsdk-test-case.patch FAIL: test mbox format: Series has malformed diff lines. Create the series again using git-format-patch and ensure it applies using git am (test_mbox.TestMbox.test_mbox_format) PASS: test Signed-off-by presence (test_mbox.TestMbox.test_signed_off_by_presence) PASS: test author valid (test_mbox.TestMbox.test_author_valid) PASS: test bugzilla entry format (test_mbox.TestMbox.test_bugzilla_entry_format) PASS: test commit message presence (test_mbox.TestMbox.test_commit_message_presence) PASS: test max line length (test_metadata.TestMetadata.test_max_line_length) PASS: test non-AUH upgrade (test_mbox.TestMbox.test_non_auh_upgrade) PASS: test shortlog format (test_mbox.TestMbox.test_shortlog_format) PASS: test shortlog length (test_mbox.TestMbox.test_shortlog_length) PASS: test target mailing list (test_mbox.TestMbox.test_target_mailing_list) SKIP: pretest pylint: Python-unidiff parse error (test_python_pylint.PyLint.pretest_pylint) SKIP: pretest src uri left files: Patch cannot be merged (test_metadata.TestMetadata.pretest_src_uri_left_files) SKIP: test CVE tag format: Parse error Hunk is shorter than expected (test_patch.TestPatch.test_cve_tag_format) SKIP: test Signed-off-by presence: Parse error Hunk is shorter than expected (test_patch.TestPatch.test_signed_off_by_presence) SKIP: test Upstream-Status presence: Parse error Hunk is shorter than expected (test_patch.TestPatch.test_upstream_status_presence_format) SKIP: test lic files chksum modified not mentioned: No modified recipes, skipping test (test_metadata.TestMetadata.test_lic_files_chksum_modified_not_mentioned) SKIP: test lic files chksum presence: No added recipes, skipping test (test_metadata.TestMetadata.test_lic_files_chksum_presence) SKIP: test license presence: No added recipes, skipping test (test_metadata.TestMetadata.test_license_presence) SKIP: test pylint: Python-unidiff parse error (test_python_pylint.PyLint.test_pylint) SKIP: test series merge on head: Merge test is disabled for now (test_mbox.TestMbox.test_series_merge_on_head) SKIP: test src uri left files: Patch cannot be merged (test_metadata.TestMetadata.test_src_uri_left_files) SKIP: test summary presence: No added recipes, skipping test (test_metadata.TestMetadata.test_summary_presence) --- Please address the issues identified and submit a new revision of the patch, or alternatively, reply to this email with an explanation of why the patch should be accepted. If you believe these results are due to an error in patchtest, please submit a bug at https://bugzilla.yoctoproject.org/ (use the 'Patchtest' category under 'Yocto Project Subprojects'). For more information on specific failures, see: https://wiki.yoctoproject.org/wiki/Patchtest. Thank you! -=-=-=-=-=-=-=-=-=-=-=- Links: You receive all messages sent to this group. View/Reply Online (#191991): https://lists.openembedded.org/g/openembedded-core/message/191991 Mute This Topic: https://lists.openembedded.org/mt/103045525/21656 Group Owner: openembedded-core+ow...@lists.openembedded.org Unsubscribe: https://lists.openembedded.org/g/openembedded-core/unsub [arch...@mail-archive.com] -=-=-=-=-=-=-=-=-=-=-=-
[OE-core] Patchtest results for [PATCH 5/6] oe-selfest: add maturn runtime (testimage) test
Thank you for your submission. Patchtest identified one or more issues with the patch. Please see the log below for more information: --- Testing patch /home/patchtest/share/mboxes/5-6-oe-selfest-add-maturn-runtime-testimage-test.patch FAIL: test mbox format: Series has malformed diff lines. Create the series again using git-format-patch and ensure it applies using git am (test_mbox.TestMbox.test_mbox_format) PASS: test Signed-off-by presence (test_mbox.TestMbox.test_signed_off_by_presence) PASS: test author valid (test_mbox.TestMbox.test_author_valid) PASS: test bugzilla entry format (test_mbox.TestMbox.test_bugzilla_entry_format) PASS: test commit message presence (test_mbox.TestMbox.test_commit_message_presence) PASS: test max line length (test_metadata.TestMetadata.test_max_line_length) PASS: test non-AUH upgrade (test_mbox.TestMbox.test_non_auh_upgrade) PASS: test shortlog format (test_mbox.TestMbox.test_shortlog_format) PASS: test shortlog length (test_mbox.TestMbox.test_shortlog_length) PASS: test target mailing list (test_mbox.TestMbox.test_target_mailing_list) SKIP: pretest pylint: Python-unidiff parse error (test_python_pylint.PyLint.pretest_pylint) SKIP: pretest src uri left files: Patch cannot be merged (test_metadata.TestMetadata.pretest_src_uri_left_files) SKIP: test CVE tag format: Parse error Hunk is shorter than expected (test_patch.TestPatch.test_cve_tag_format) SKIP: test Signed-off-by presence: Parse error Hunk is shorter than expected (test_patch.TestPatch.test_signed_off_by_presence) SKIP: test Upstream-Status presence: Parse error Hunk is shorter than expected (test_patch.TestPatch.test_upstream_status_presence_format) SKIP: test lic files chksum modified not mentioned: No modified recipes, skipping test (test_metadata.TestMetadata.test_lic_files_chksum_modified_not_mentioned) SKIP: test lic files chksum presence: No added recipes, skipping test (test_metadata.TestMetadata.test_lic_files_chksum_presence) SKIP: test license presence: No added recipes, skipping test (test_metadata.TestMetadata.test_license_presence) SKIP: test pylint: Python-unidiff parse error (test_python_pylint.PyLint.test_pylint) SKIP: test series merge on head: Merge test is disabled for now (test_mbox.TestMbox.test_series_merge_on_head) SKIP: test src uri left files: Patch cannot be merged (test_metadata.TestMetadata.test_src_uri_left_files) SKIP: test summary presence: No added recipes, skipping test (test_metadata.TestMetadata.test_summary_presence) --- Please address the issues identified and submit a new revision of the patch, or alternatively, reply to this email with an explanation of why the patch should be accepted. If you believe these results are due to an error in patchtest, please submit a bug at https://bugzilla.yoctoproject.org/ (use the 'Patchtest' category under 'Yocto Project Subprojects'). For more information on specific failures, see: https://wiki.yoctoproject.org/wiki/Patchtest. Thank you! -=-=-=-=-=-=-=-=-=-=-=- Links: You receive all messages sent to this group. View/Reply Online (#191990): https://lists.openembedded.org/g/openembedded-core/message/191990 Mute This Topic: https://lists.openembedded.org/mt/103045524/21656 Group Owner: openembedded-core+ow...@lists.openembedded.org Unsubscribe: https://lists.openembedded.org/g/openembedded-core/unsub [arch...@mail-archive.com] -=-=-=-=-=-=-=-=-=-=-=-
Re: [OE-core][PATCH v2] gdb/systemd: enable minidebuginfo support conditionally
On Tue, 2023-12-05 at 14:37 +0100, Etienne Cordonnier via lists.openembedded.org wrote: > From: Etienne Cordonnier > > Enabling minidebuginfo is not useful if gdb and systemd-coredump > are unable to parse it. > > In order to parse it, gdb needs xz support. Systemd needs coredump enabled, as > well as elfutil enabled as well (systemd-coredump loads libdw which is part > of elfutils using dlopen). > > Signed-off-by: Etienne Cordonnier > --- > meta/classes-global/package.bbclass | 2 +- > meta/lib/oe/package.py| 2 +- > meta/lib/oeqa/runtime/cases/systemd.py| 21 +++ > meta/lib/oeqa/selftest/cases/minidebuginfo.py | 2 +- > meta/recipes-core/systemd/systemd_254.4.bb| 1 + > .../elfutils/elfutils_0.189.bb| 4 +++- > meta/recipes-devtools/gdb/gdb-common.inc | 4 +++- > 7 files changed, 31 insertions(+), 5 deletions(-) I merged this as I think it did improve things but adding a test change to poky to enable it hasn't quite worked as I hoped. I had to put a constraint around the test to ensure it only runs on systemd images: https://git.openembedded.org/openembedded-core/commit/?h=master-next=9c069e00a0867de11a6069b99a07d2c775848c10 and with that applied I then had this failure: https://autobuilder.yoctoproject.org/typhoon/#/builders/101/builds/7000/steps/14/logs/stdio I can queue the first patch but I'm not sure about the failure above. Any ideas? Cheers, Richard -=-=-=-=-=-=-=-=-=-=-=- Links: You receive all messages sent to this group. View/Reply Online (#191989): https://lists.openembedded.org/g/openembedded-core/message/191989 Mute This Topic: https://lists.openembedded.org/mt/102991294/21656 Group Owner: openembedded-core+ow...@lists.openembedded.org Unsubscribe: https://lists.openembedded.org/g/openembedded-core/unsub [arch...@mail-archive.com] -=-=-=-=-=-=-=-=-=-=-=-
[OE-core] [PATCH 4/6] recipetool: add python_maturin support
Add the new python_maturin PEP-517 backend Add selftest for 'pydantic-core' pypi package. [YOCTO #15312] Signed-off-by: Tim Orling --- meta/lib/oeqa/selftest/cases/recipetool.py| 34 +++ .../lib/recipetool/create_buildsys_python.py | 1 + 2 files changed, 35 insertions(+) diff --git a/meta/lib/oeqa/selftest/cases/recipetool.py b/meta/lib/oeqa/selftest/cases/recipetool.py index 55cbba9ca74..ddcacaa73c7 100644 --- a/meta/lib/oeqa/selftest/cases/recipetool.py +++ b/meta/lib/oeqa/selftest/cases/recipetool.py @@ -611,6 +611,40 @@ class RecipetoolCreateTests(RecipetoolBase): self._test_recipe_contents(recipefile, checkvars, inherits) +def test_recipetool_create_python3_pep517_maturin(self): +# This test require python 3.11 or above for the tomllib module +# or tomli module to be installed +try: +import tomllib +except ImportError: +try: +import tomli +except ImportError: +self.skipTest('Test requires python 3.11 or above for tomllib module or tomli module') + +# Test creating python3 package from tarball (using maturin class) +temprecipe = os.path.join(self.tempdir, 'recipe') +os.makedirs(temprecipe) +pn = 'pydantic-core' +pv = '2.14.5' +recipefile = os.path.join(temprecipe, 'python3-%s_%s.bb' % (pn, pv)) +srcuri = 'https://files.pythonhosted.org/packages/64/26/cffb93fe9c6b5a91c497f37fae14a4b073ecbc47fc36a9979c7aa888b245/pydantic_core-%s.tar.gz' % pv +result = runCmd('recipetool create -o %s %s' % (temprecipe, srcuri)) +self.assertTrue(os.path.isfile(recipefile)) +checkvars = {} +checkvars['HOMEPAGE'] = 'https://github.com/pydantic/pydantic-core' +checkvars['LICENSE'] = set(['MIT']) +checkvars['LIC_FILES_CHKSUM'] = 'file://LICENSE;md5=ab599c188b4a314d2856b3a55030c75c' +checkvars['SRC_URI'] = 'https://files.pythonhosted.org/packages/64/26/cffb93fe9c6b5a91c497f37fae14a4b073ecbc47fc36a9979c7aa888b245/pydantic_core-${PV}.tar.gz' +checkvars['SRC_URI[md5sum]'] = '1eb13c211147496c1c9484ff7f8ac438' +checkvars['SRC_URI[sha1sum]'] = '0803a731aa793f3eaf4d52f656d7300408ca0b36' +checkvars['SRC_URI[sha256sum]'] = '6d30226dfc816dd0fdf120cae611dd2215117e4f9b124af8c60ab9093b6e8e71' +checkvars['SRC_URI[sha384sum]'] = 'cca6d9f0ba72ff92e16aaf3d6c628b8df33bdf244cc39c9d59cff9d541f35d4e87ec136e60e4b040ad73c5c69b27cec6' +checkvars['SRC_URI[sha512sum]'] = 'e6c3081dfa58d9b59f8c33dfe80712d732ac3048a2f8240f9a0f5448d9bfc83e222c1e08b8bb49779b84f685c3bec3060cc935c113a818b1ab8aa955f3df2238' +inherits = ['python_maturin'] + +self._test_recipe_contents(recipefile, checkvars, inherits) + def test_recipetool_create_github_tarball(self): # Basic test to ensure github URL mangling doesn't apply to release tarballs temprecipe = os.path.join(self.tempdir, 'recipe') diff --git a/scripts/lib/recipetool/create_buildsys_python.py b/scripts/lib/recipetool/create_buildsys_python.py index 9312e4abf13..9bebb3061b1 100644 --- a/scripts/lib/recipetool/create_buildsys_python.py +++ b/scripts/lib/recipetool/create_buildsys_python.py @@ -668,6 +668,7 @@ class PythonPyprojectTomlRecipeHandler(PythonRecipeHandler): "poetry.core.masonry.api": "python_poetry_core", "flit_core.buildapi": "python_flit_core", "hatchling.build": "python_hatchling", +"maturin": "python_maturin", } # setuptools.build_meta and flit declare project metadata into the "project" section of pyproject.toml -- 2.34.1 -=-=-=-=-=-=-=-=-=-=-=- Links: You receive all messages sent to this group. View/Reply Online (#191985): https://lists.openembedded.org/g/openembedded-core/message/191985 Mute This Topic: https://lists.openembedded.org/mt/103045101/21656 Group Owner: openembedded-core+ow...@lists.openembedded.org Unsubscribe: https://lists.openembedded.org/g/openembedded-core/unsub [arch...@mail-archive.com] -=-=-=-=-=-=-=-=-=-=-=-
[OE-core] [PATCH 6/6] python3-maturin: add sdk (testsdk) test case
We expect 'maturin' will be used in SDKs, so it makes sense to also test it in the testsdk environment. To run this test case, you can add the following to local.conf: TOOLCHAIN_HOST_TASK:append = " nativesdk-python3-maturin" And the build and test the SDK: bitbake -c populate_sdk core-image-full-cmdline bitbake -c testsdk core-image-full-cmdline You can substitute a different image recipe for "core-image-full-cmdline" [YOCTO #15312] Signed-off-by: Tim Orling --- meta/lib/oeqa/sdk/cases/maturin.py | 33 ++ 1 file changed, 33 insertions(+) create mode 100644 meta/lib/oeqa/sdk/cases/maturin.py diff --git a/meta/lib/oeqa/sdk/cases/maturin.py b/meta/lib/oeqa/sdk/cases/maturin.py new file mode 100644 index 000..14245bc36e5 --- /dev/null +++ b/meta/lib/oeqa/sdk/cases/maturin.py @@ -0,0 +1,33 @@ +# +# Copyright OpenEmbedded Contributors +# +# SPDX-License-Identifier: MIT +# + +import unittest +from oeqa.sdk.case import OESDKTestCase + +from oeqa.utils.subprocesstweak import errors_have_output + +errors_have_output() + + +class MaturinTest(OESDKTestCase): +def setUp(self): +if not ( +self.tc.hasHostPackage("nativesdk-python3-maturin") +or self.tc.hasHostPackage("python3-maturin-native") +): +raise unittest.SkipTest("No python3-maturin package in the SDK") + +def test_maturin_list_python(self): +py_major = self._run("python3 -c 'import sys; print(sys.version_info.major)'") +py_minor = self._run("python3 -c 'import sys; print(sys.version_info.minor)'") +python_version = "%s.%s" % (py_major.strip(), py_minor.strip()) +cmd = "maturin list-python" +output = self._run(cmd) +self.assertRegex(output, r"^ 1 python interpreter found:\n") +self.assertRegex( +output, +r" - CPython %s (.+)/usr/bin/python%s$" % (python_version, python_version), +) -- 2.34.1 -=-=-=-=-=-=-=-=-=-=-=- Links: You receive all messages sent to this group. View/Reply Online (#191987): https://lists.openembedded.org/g/openembedded-core/message/191987 Mute This Topic: https://lists.openembedded.org/mt/103045103/21656 Group Owner: openembedded-core+ow...@lists.openembedded.org Unsubscribe: https://lists.openembedded.org/g/openembedded-core/unsub [arch...@mail-archive.com] -=-=-=-=-=-=-=-=-=-=-=-
[OE-core] [PATCH 5/6] oe-selfest: add maturn runtime (testimage) test
Basic smoke test for maturin to test the 'maturin list-python' case. [YOCTO #15312] Signed-off-by: Tim Orling --- meta/lib/oeqa/runtime/cases/maturin.py | 23 +++ 1 file changed, 23 insertions(+) create mode 100644 meta/lib/oeqa/runtime/cases/maturin.py diff --git a/meta/lib/oeqa/runtime/cases/maturin.py b/meta/lib/oeqa/runtime/cases/maturin.py new file mode 100644 index 000..b9a3b4acbcd --- /dev/null +++ b/meta/lib/oeqa/runtime/cases/maturin.py @@ -0,0 +1,23 @@ +# +# Copyright OpenEmbedded Contributors +# +# SPDX-License-Identifier: MIT +# + +import os + +from oeqa.runtime.case import OERuntimeTestCase +from oeqa.core.decorator.depends import OETestDepends +from oeqa.runtime.decorator.package import OEHasPackage + +class MaturinTest(OERuntimeTestCase): +@OETestDepends(['ssh.SSHTest.test_ssh', 'python.PythonTest.test_python3']) +@OEHasPackage(['python3-maturin']) +def test_maturin_list_python(self): +status, output = self.target.run("maturin list-python") +self.assertEqual(status, 0) +_, py_major = self.target.run("python3 -c 'import sys; print(sys.version_info.major)'") +_, py_minor = self.target.run("python3 -c 'import sys; print(sys.version_info.minor)'") +python_version = "%s.%s" % (py_major, py_minor) +self.assertEqual(output, " 1 python interpreter found:\n" + " - CPython %s at /usr/bin/python%s" % (python_version, python_version)) -- 2.34.1 -=-=-=-=-=-=-=-=-=-=-=- Links: You receive all messages sent to this group. View/Reply Online (#191986): https://lists.openembedded.org/g/openembedded-core/message/191986 Mute This Topic: https://lists.openembedded.org/mt/103045102/21656 Group Owner: openembedded-core+ow...@lists.openembedded.org Unsubscribe: https://lists.openembedded.org/g/openembedded-core/unsub [arch...@mail-archive.com] -=-=-=-=-=-=-=-=-=-=-=-
[OE-core] [PATCH 3/6] classes-recipe: add python_maturin.bbclass
maturin is a replacement for setuptools_rust and another "backend" for building python wheels. [YOCTO #15312] Signed-off-by: Tim Orling --- meta/classes-recipe/python_maturin.bbclass | 17 + 1 file changed, 17 insertions(+) create mode 100644 meta/classes-recipe/python_maturin.bbclass diff --git a/meta/classes-recipe/python_maturin.bbclass b/meta/classes-recipe/python_maturin.bbclass new file mode 100644 index 000..c39d6c6e37d --- /dev/null +++ b/meta/classes-recipe/python_maturin.bbclass @@ -0,0 +1,17 @@ +# +# Copyright OpenEmbedded Contributors +# +# SPDX-License-Identifier: MIT +# + +inherit python_pyo3 python_setuptools_build_meta + +DEPENDS += "python3-maturin-native" + +python_maturin_do_configure() { +python_pyo3_do_configure +cargo_common_do_configure +python_pep517_do_configure +} + +EXPORT_FUNCTIONS do_configure -- 2.34.1 -=-=-=-=-=-=-=-=-=-=-=- Links: You receive all messages sent to this group. View/Reply Online (#191984): https://lists.openembedded.org/g/openembedded-core/message/191984 Mute This Topic: https://lists.openembedded.org/mt/103045100/21656 Group Owner: openembedded-core+ow...@lists.openembedded.org Unsubscribe: https://lists.openembedded.org/g/openembedded-core/unsub [arch...@mail-archive.com] -=-=-=-=-=-=-=-=-=-=-=-
[OE-core] [PATCH 2/6] python3-maturin: add v1.3.2
Build and publish crates with pyo3, rust-cpython, cffi and uniffi bindings as well as rust binaries as python packages. This project is meant as a zero configuration replacement for setuptools-rust and milksnake. It supports building wheels for python 3.7+ on windows, linux, mac and freebsd, can upload them to pypi and has basic pypy and graalpy support. https://github.com/pyo3/maturin [YOCTO #15312] Signed-off-by: Tim Orling --- meta/conf/distro/include/maintainers.inc | 1 + .../python/python3-maturin-crates.inc | 572 ++ .../python/python3-maturin_1.3.2.bb | 40 ++ 3 files changed, 613 insertions(+) create mode 100644 meta/recipes-devtools/python/python3-maturin-crates.inc create mode 100644 meta/recipes-devtools/python/python3-maturin_1.3.2.bb diff --git a/meta/conf/distro/include/maintainers.inc b/meta/conf/distro/include/maintainers.inc index 2c59db56ac6..8fe1efd3288 100644 --- a/meta/conf/distro/include/maintainers.inc +++ b/meta/conf/distro/include/maintainers.inc @@ -653,6 +653,7 @@ RECIPE_MAINTAINER:pn-python3-magic = "Joshua Watt " RECIPE_MAINTAINER:pn-python3-mako = "Trevor Gamblin " RECIPE_MAINTAINER:pn-python3-markdown = "Alexander Kanavin " RECIPE_MAINTAINER:pn-python3-markupsafe = "Richard Purdie " +RECIPE_MAINTAINER:pn-python3-maturin = "Tim Orling " RECIPE_MAINTAINER:pn-python3-more-itertools = "Tim Orling " RECIPE_MAINTAINER:pn-python3-ndg-httpsclient = "Tim Orling " RECIPE_MAINTAINER:pn-python3-numpy = "Trevor Gamblin " diff --git a/meta/recipes-devtools/python/python3-maturin-crates.inc b/meta/recipes-devtools/python/python3-maturin-crates.inc new file mode 100644 index 000..2b6949ee496 --- /dev/null +++ b/meta/recipes-devtools/python/python3-maturin-crates.inc @@ -0,0 +1,572 @@ +# Autogenerated with 'bitbake -c update_crates python3-maturin' + +# from Cargo.lock +SRC_URI += " \ +crate://crates.io/adler/1.0.2 \ +crate://crates.io/ahash/0.7.7 \ +crate://crates.io/aho-corasick/0.7.20 \ +crate://crates.io/anstream/0.3.2 \ +crate://crates.io/anstyle/1.0.1 \ +crate://crates.io/anstyle-parse/0.2.1 \ +crate://crates.io/anstyle-query/1.0.0 \ +crate://crates.io/anstyle-wincon/1.0.2 \ +crate://crates.io/anyhow/1.0.75 \ +crate://crates.io/autocfg/1.1.0 \ +crate://crates.io/base64/0.13.1 \ +crate://crates.io/base64/0.21.2 \ +crate://crates.io/bitflags/1.3.2 \ +crate://crates.io/block-buffer/0.10.4 \ +crate://crates.io/bstr/1.6.0 \ +crate://crates.io/byteorder/1.4.3 \ +crate://crates.io/bytes/1.4.0 \ +crate://crates.io/bytesize/1.2.0 \ +crate://crates.io/bzip2/0.4.4 \ +crate://crates.io/bzip2-sys/0.1.11+1.0.8 \ +crate://crates.io/cab/0.4.1 \ +crate://crates.io/camino/1.1.6 \ +crate://crates.io/cargo-config2/0.1.9 \ +crate://crates.io/cargo-options/0.6.0 \ +crate://crates.io/cargo-platform/0.1.3 \ +crate://crates.io/cargo-xwin/0.14.8 \ +crate://crates.io/cargo-zigbuild/0.17.5 \ +crate://crates.io/cargo_metadata/0.18.0 \ +crate://crates.io/cbindgen/0.26.0 \ +crate://crates.io/cc/1.0.82 \ +crate://crates.io/cfb/0.7.3 \ +crate://crates.io/cfg-expr/0.15.4 \ +crate://crates.io/cfg-if/1.0.0 \ +crate://crates.io/charset/0.1.3 \ +crate://crates.io/chumsky/0.9.2 \ +crate://crates.io/clap/4.1.14 \ +crate://crates.io/clap_builder/4.1.14 \ +crate://crates.io/clap_complete/4.2.3 \ +crate://crates.io/clap_complete_command/0.5.1 \ +crate://crates.io/clap_complete_fig/4.2.0 \ +crate://crates.io/clap_complete_nushell/0.1.11 \ +crate://crates.io/clap_derive/4.1.14 \ +crate://crates.io/clap_lex/0.4.1 \ +crate://crates.io/cli-table/0.4.7 \ +crate://crates.io/colorchoice/1.0.0 \ +crate://crates.io/configparser/3.0.2 \ +crate://crates.io/console/0.15.7 \ +crate://crates.io/content_inspector/0.2.4 \ +crate://crates.io/core-foundation/0.9.3 \ +crate://crates.io/core-foundation-sys/0.8.4 \ +crate://crates.io/cpufeatures/0.2.9 \ +crate://crates.io/crc32fast/1.3.2 \ +crate://crates.io/crossbeam-channel/0.5.8 \ +crate://crates.io/crossbeam-deque/0.8.3 \ +crate://crates.io/crossbeam-epoch/0.9.15 \ +crate://crates.io/crossbeam-utils/0.8.16 \ +crate://crates.io/crypto-common/0.1.6 \ +crate://crates.io/data-encoding/2.4.0 \ +crate://crates.io/dialoguer/0.11.0 \ +crate://crates.io/diff/0.1.13 \ +crate://crates.io/digest/0.10.7 \ +crate://crates.io/dirs/5.0.1 \ +crate://crates.io/dirs-sys/0.4.1 \ +crate://crates.io/dissimilar/1.0.7 \ +crate://crates.io/dunce/1.0.4 \ +crate://crates.io/either/1.9.0 \ +crate://crates.io/encode_unicode/0.3.6 \ +crate://crates.io/encoding_rs/0.8.32 \ +crate://crates.io/errno/0.3.2 \ +crate://crates.io/errno-dragonfly/0.1.2 \ +crate://crates.io/expect-test/1.4.1 \ +crate://crates.io/fastrand/1.9.0 \ +crate://crates.io/fat-macho/0.4.7 \ +
[OE-core] [PATCH 1/6] python3-setuptools-rust: BBCLASSEXTEND + nativesdk
We would like to build python3-maturin for nativesdk use and nativesdk-python3-setuptools-rust is a dependency. Signed-off-by: Tim Orling --- meta/recipes-devtools/python/python3-setuptools-rust_1.8.1.bb | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/meta/recipes-devtools/python/python3-setuptools-rust_1.8.1.bb b/meta/recipes-devtools/python/python3-setuptools-rust_1.8.1.bb index db5c6c449c3..a91ee23ca0c 100644 --- a/meta/recipes-devtools/python/python3-setuptools-rust_1.8.1.bb +++ b/meta/recipes-devtools/python/python3-setuptools-rust_1.8.1.bb @@ -33,4 +33,4 @@ RDEPENDS:${PN} += " \ python3-wheel \ " -BBCLASSEXTEND = "native" +BBCLASSEXTEND = "native nativesdk" -- 2.34.1 -=-=-=-=-=-=-=-=-=-=-=- Links: You receive all messages sent to this group. View/Reply Online (#191982): https://lists.openembedded.org/g/openembedded-core/message/191982 Mute This Topic: https://lists.openembedded.org/mt/103045097/21656 Group Owner: openembedded-core+ow...@lists.openembedded.org Unsubscribe: https://lists.openembedded.org/g/openembedded-core/unsub [arch...@mail-archive.com] -=-=-=-=-=-=-=-=-=-=-=-
[OE-core] [PATCH 0/6] Add 'maturin' python backend support
We are increasingly seeing Rust extensions for Python added in the ecosystem. The current best practices approach has moved from using 'setuptools-rust' to using 'maturin'. * Add python3-maturin, including 'native' and 'nativesdk' support. * Add a 'python_maturin' bbclass for the PEP-517 backend. * Add recipetool support for the 'maturin' PEP-517 backend. * Add a very basic 'maturin list-python' smoke test added to oeqa for both 'runtime' (-c testimage) and 'sdk' (-c testsdk). The following changes since commit 70ad9b9b309575134834757468cb32c9e3b87448: bitbake: hashserv: sqlite: Ensure sync propagates to database connections (2023-12-04 22:36:09 +) are available in the Git repository at: https://git.yoctoproject.org/poky-contrib timo/maturin_1.3.2 https://git.yoctoproject.org/poky-contrib/log/?h=timo/maturin_1.3.2 Tim Orling (6): python3-setuptools-rust: BBCLASSEXTEND + nativesdk python3-maturin: add v1.3.2 classes-recipe: add python_maturin.bbclass recipetool: add python_maturin support oe-selfest: add maturn runtime (testimage) test python3-maturin: add sdk (testsdk) test case meta/classes-recipe/python_maturin.bbclass| 17 + meta/conf/distro/include/maintainers.inc | 1 + meta/lib/oeqa/runtime/cases/maturin.py| 23 + meta/lib/oeqa/sdk/cases/maturin.py| 33 + meta/lib/oeqa/selftest/cases/recipetool.py| 34 ++ .../python/python3-maturin-crates.inc | 572 ++ .../python/python3-maturin_1.3.2.bb | 40 ++ .../python/python3-setuptools-rust_1.8.1.bb | 2 +- .../lib/recipetool/create_buildsys_python.py | 1 + 9 files changed, 722 insertions(+), 1 deletion(-) create mode 100644 meta/classes-recipe/python_maturin.bbclass create mode 100644 meta/lib/oeqa/runtime/cases/maturin.py create mode 100644 meta/lib/oeqa/sdk/cases/maturin.py create mode 100644 meta/recipes-devtools/python/python3-maturin-crates.inc create mode 100644 meta/recipes-devtools/python/python3-maturin_1.3.2.bb -- 2.34.1 -=-=-=-=-=-=-=-=-=-=-=- Links: You receive all messages sent to this group. View/Reply Online (#191981): https://lists.openembedded.org/g/openembedded-core/message/191981 Mute This Topic: https://lists.openembedded.org/mt/103045095/21656 Group Owner: openembedded-core+ow...@lists.openembedded.org Unsubscribe: https://lists.openembedded.org/g/openembedded-core/unsub [arch...@mail-archive.com] -=-=-=-=-=-=-=-=-=-=-=-
[OE-core] Patchtest results for [PATCH] tcl: skip timing-dependent tests in run-ptest
Thank you for your submission. Patchtest identified one or more issues with the patch. Please see the log below for more information: --- Testing patch /home/patchtest/share/mboxes/tcl-skip-timing-dependent-tests-in-run-ptest.patch FAIL: test bugzilla entry format: Bugzilla issue ID is not correctly formatted - specify it with format: "[YOCTO #]" (test_mbox.TestMbox.test_bugzilla_entry_format) PASS: test Signed-off-by presence (test_mbox.TestMbox.test_signed_off_by_presence) PASS: test author valid (test_mbox.TestMbox.test_author_valid) PASS: test commit message presence (test_mbox.TestMbox.test_commit_message_presence) PASS: test max line length (test_metadata.TestMetadata.test_max_line_length) PASS: test mbox format (test_mbox.TestMbox.test_mbox_format) PASS: test non-AUH upgrade (test_mbox.TestMbox.test_non_auh_upgrade) PASS: test shortlog format (test_mbox.TestMbox.test_shortlog_format) PASS: test shortlog length (test_mbox.TestMbox.test_shortlog_length) SKIP: pretest pylint: No python related patches, skipping test (test_python_pylint.PyLint.pretest_pylint) SKIP: pretest src uri left files: No modified recipes, skipping pretest (test_metadata.TestMetadata.pretest_src_uri_left_files) SKIP: test CVE tag format: No new CVE patches introduced (test_patch.TestPatch.test_cve_tag_format) SKIP: test Signed-off-by presence: No new CVE patches introduced (test_patch.TestPatch.test_signed_off_by_presence) SKIP: test Upstream-Status presence: No new CVE patches introduced (test_patch.TestPatch.test_upstream_status_presence_format) SKIP: test lic files chksum modified not mentioned: No modified recipes, skipping test (test_metadata.TestMetadata.test_lic_files_chksum_modified_not_mentioned) SKIP: test lic files chksum presence: No added recipes, skipping test (test_metadata.TestMetadata.test_lic_files_chksum_presence) SKIP: test license presence: No added recipes, skipping test (test_metadata.TestMetadata.test_license_presence) SKIP: test pylint: No python related patches, skipping test (test_python_pylint.PyLint.test_pylint) SKIP: test series merge on head: Merge test is disabled for now (test_mbox.TestMbox.test_series_merge_on_head) SKIP: test src uri left files: No modified recipes, skipping pretest (test_metadata.TestMetadata.test_src_uri_left_files) SKIP: test summary presence: No added recipes, skipping test (test_metadata.TestMetadata.test_summary_presence) SKIP: test target mailing list: Series merged, no reason to check other mailing lists (test_mbox.TestMbox.test_target_mailing_list) --- Please address the issues identified and submit a new revision of the patch, or alternatively, reply to this email with an explanation of why the patch should be accepted. If you believe these results are due to an error in patchtest, please submit a bug at https://bugzilla.yoctoproject.org/ (use the 'Patchtest' category under 'Yocto Project Subprojects'). For more information on specific failures, see: https://wiki.yoctoproject.org/wiki/Patchtest. Thank you! -=-=-=-=-=-=-=-=-=-=-=- Links: You receive all messages sent to this group. View/Reply Online (#191980): https://lists.openembedded.org/g/openembedded-core/message/191980 Mute This Topic: https://lists.openembedded.org/mt/103044616/21656 Group Owner: openembedded-core+ow...@lists.openembedded.org Unsubscribe: https://lists.openembedded.org/g/openembedded-core/unsub [arch...@mail-archive.com] -=-=-=-=-=-=-=-=-=-=-=-
Re: [OE-Core][PATCH 2/3] cargo: Move CARGO_MANIFEST_PATH/CARGO_SRC_DIR to cargo_common
On Thu, 2023-12-07 at 13:39 +, Alex Kiernan wrote: > cargo_common_do_configure uses CARGO_MANIFEST_PATH (which depends on > CARGO_SRC_DIR), but their definition was in cargo.bbclass. > > Match the other variables here and change to default values, rather > than weak defaults. FWIW "single value" class variables tend to work much better as ??= (which I'd call default value) since than it doesn't matter if the recipe setting comes before or after the inherit and the inherit position in the recipe doesn't matter. I'd call ?= a weak assignment or weak default. Thanks for working on cleaning some of these things up. I got so far with it originally and then ran out of time (and too frustrated with the long build/test cycles!). Cheers, Richard > > Signed-off-by: Alex Kiernan > --- > > meta/classes-recipe/cargo.bbclass| 7 --- > meta/classes-recipe/cargo_common.bbclass | 7 +++ > 2 files changed, 7 insertions(+), 7 deletions(-) > > diff --git a/meta/classes-recipe/cargo.bbclass > b/meta/classes-recipe/cargo.bbclass > index 96a74e2ef1ec..0829a58dd90f 100644 > --- a/meta/classes-recipe/cargo.bbclass > +++ b/meta/classes-recipe/cargo.bbclass > @@ -30,13 +30,6 @@ B = "${WORKDIR}/build" > # where the issue occured > export RUST_BACKTRACE = "1" > > -# The directory of the Cargo.toml relative to the root directory, per default > -# assume there's a Cargo.toml directly in the root directory > -CARGO_SRC_DIR ??= "" > - > -# The actual path to the Cargo.toml > -CARGO_MANIFEST_PATH ??= "${S}/${CARGO_SRC_DIR}/Cargo.toml" > - > RUSTFLAGS ??= "" > BUILD_MODE = "${@['--release', ''][d.getVar('DEBUG_BUILD') == '1']}" > # --frozen flag will prevent network access (which is required since only > diff --git a/meta/classes-recipe/cargo_common.bbclass > b/meta/classes-recipe/cargo_common.bbclass > index bf298e96c745..c330c122a9d3 100644 > --- a/meta/classes-recipe/cargo_common.bbclass > +++ b/meta/classes-recipe/cargo_common.bbclass > @@ -33,6 +33,13 @@ CARGO_DISABLE_BITBAKE_VENDORING ?= "0" > # Used by libstd-rs to point to the vendor dir included in rustc src > CARGO_VENDORING_DIRECTORY ?= "${CARGO_HOME}/bitbake" > > +# The directory of the Cargo.toml relative to the root directory, per default > +# assume there's a Cargo.toml directly in the root directory > +CARGO_SRC_DIR ?= "" > + > +# The actual path to the Cargo.toml > +CARGO_MANIFEST_PATH ?= "${S}/${CARGO_SRC_DIR}/Cargo.toml" > + > CARGO_RUST_TARGET_CCLD ?= "${RUST_TARGET_CCLD}" > cargo_common_do_configure () { > mkdir -p ${CARGO_HOME}/bitbake > > -=-=-=-=-=-=-=-=-=-=-=- Links: You receive all messages sent to this group. View/Reply Online (#191979): https://lists.openembedded.org/g/openembedded-core/message/191979 Mute This Topic: https://lists.openembedded.org/mt/103034028/21656 Group Owner: openembedded-core+ow...@lists.openembedded.org Unsubscribe: https://lists.openembedded.org/g/openembedded-core/unsub [arch...@mail-archive.com] -=-=-=-=-=-=-=-=-=-=-=-
[OE-core] [kirkstone][PATCH] externalsrc: Ensure SRCREV is processed before accessing SRC_URI
Call bb.fetch.get_srcrev() before accessing SRC_URI. Without this new bb.fetch.get_srcrev() call, SRC_URI might be accessed before SRCREV had a chance to be processed. In master, this is fixed by https://git.yoctoproject.org/poky/commit/?id=62afa02d01794376efab75623f42e7e08af08526 However, this commit is not suited for backport since it is quite invasive. The part of the commit that fix the bug is: --- a/meta/classes/externalsrc.bbclass +++ b/meta/classes/externalsrc.bbclass @@ -63,6 +63,7 @@ python () { else: d.setVar('B', '${WORKDIR}/${BPN}-${PV}') +bb.fetch.get_hashvalue(d) local_srcuri = [] fetch = bb.fetch2.Fetch((d.getVar('SRC_URI') or '').split(), d) for url in fetch.urls: NB: bb.fetch.get_hashvalue() does not exist in kirkstone but is equivalent to bb.fetch.get_srcrev(). Fixes [YOCTO #14918] Signed-off-by: Yoann Congal Suggested-by: Chris Wyse --- Richard, Steve: This is the commit we discussed at today's bug triage. --- meta/classes/externalsrc.bbclass | 3 +++ 1 file changed, 3 insertions(+) diff --git a/meta/classes/externalsrc.bbclass b/meta/classes/externalsrc.bbclass index 97d7379d9f..eb6afca4ab 100644 --- a/meta/classes/externalsrc.bbclass +++ b/meta/classes/externalsrc.bbclass @@ -62,6 +62,9 @@ python () { else: d.setVar('B', '${WORKDIR}/${BPN}-${PV}') +# Ensure SRCREV has been processed before accessing SRC_URI +bb.fetch.get_srcrev(d) + local_srcuri = [] fetch = bb.fetch2.Fetch((d.getVar('SRC_URI') or '').split(), d) for url in fetch.urls: -- 2.30.2 -=-=-=-=-=-=-=-=-=-=-=- Links: You receive all messages sent to this group. View/Reply Online (#191978): https://lists.openembedded.org/g/openembedded-core/message/191978 Mute This Topic: https://lists.openembedded.org/mt/103044376/21656 Group Owner: openembedded-core+ow...@lists.openembedded.org Unsubscribe: https://lists.openembedded.org/g/openembedded-core/unsub [arch...@mail-archive.com] -=-=-=-=-=-=-=-=-=-=-=-
[OE-core] [PATCH] tcl: skip timing-dependent tests in run-ptest
From: Ross Burton There are several tests in the test suite which are very dependent on timing and fail on a loaded host system, so skip them. [ YOCTO #14825 #14882 #15081 ] Signed-off-by: Ross Burton --- meta/recipes-devtools/tcltk/tcl/run-ptest | 6 +- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/meta/recipes-devtools/tcltk/tcl/run-ptest b/meta/recipes-devtools/tcltk/tcl/run-ptest index 5b9127784ed..51e1e4aa7b7 100644 --- a/meta/recipes-devtools/tcltk/tcl/run-ptest +++ b/meta/recipes-devtools/tcltk/tcl/run-ptest @@ -3,7 +3,11 @@ # clock.test needs a timezone to be set export TZ="Europe/London" export TCL_LIBRARY=library -SKIPPED_TESTS= + +# Some tests are overly strict with timings and fail on loaded systems. +# See bugs #14825 #14882 #15081. +SKIPPED_TESTS='cmdMZ-6.6 exit-1.* socket-* socket_inet-*' + for i in `ls tests/*.test | awk -F/ '{print $2}'`; do ./tcltest tests/all.tcl -file $i -skip "$SKIPPED_TESTS" >$i.log 2>&1 grep -q -F -e "Files with failing tests:" -e "Test files exiting with errors:" $i.log -- 2.34.1 -=-=-=-=-=-=-=-=-=-=-=- Links: You receive all messages sent to this group. View/Reply Online (#191977): https://lists.openembedded.org/g/openembedded-core/message/191977 Mute This Topic: https://lists.openembedded.org/mt/103044329/21656 Group Owner: openembedded-core+ow...@lists.openembedded.org Unsubscribe: https://lists.openembedded.org/g/openembedded-core/unsub [arch...@mail-archive.com] -=-=-=-=-=-=-=-=-=-=-=-
[OE-core] [PATCH 4/4] oe-selftest: add tests for C and C++ build tools
Add new file for C and C++ build tools. The initial implemmentation contains a class for CMake and one for Meson. At least these first tests for the qemu-usermode share most of the code. That's why there is only one c_ccp.py file and not for example a cmake.py and a meson.py file. Signed-off-by: Adrian Freihofer --- meta/lib/oeqa/selftest/cases/c_cpp.py | 60 +++ 1 file changed, 60 insertions(+) create mode 100644 meta/lib/oeqa/selftest/cases/c_cpp.py diff --git a/meta/lib/oeqa/selftest/cases/c_cpp.py b/meta/lib/oeqa/selftest/cases/c_cpp.py new file mode 100644 index 000..9a70ce29f56 --- /dev/null +++ b/meta/lib/oeqa/selftest/cases/c_cpp.py @@ -0,0 +1,60 @@ +# +# Copyright OpenEmbedded Contributors +# +# SPDX-License-Identifier: MIT +# + +from oeqa.selftest.case import OESelftestTestCase +from oeqa.core.decorator.data import skipIfNotQemuUsermode +from oeqa.utils.commands import bitbake + + +class CCppTests(OESelftestTestCase): + +@skipIfNotQemuUsermode() +def _qemu_usermode(self, recipe_name): +self.add_command_to_tearDown("bitbake -c clean %s" % recipe_name) +bitbake("%s -c run_tests" % recipe_name) + +@skipIfNotQemuUsermode() +def _qemu_usermode_failing(self, recipe_name): +config = 'PACKAGECONFIG:pn-%s = "failing_test"' % recipe_name +self.write_config(config) +self.add_command_to_tearDown("bitbake -c clean %s" % recipe_name) +result = bitbake("%s -c run_tests" % recipe_name, ignore_status=True) +self.assertNotEqual(0, result.status, "command: %s is expected to fail but passed, status: %s, output: %s, error: %s" % ( +result.command, result.status, result.output, result.error)) + + +class CMakeTests(CCppTests): +def test_cmake_qemu(self): +"""Test for cmake-qemu.bbclass good case + +compile the cmake-example and verify the CTests pass in qemu-user. +qemu-user is configured by CMAKE_CROSSCOMPILING_EMULATOR. +""" +self._qemu_usermode("cmake-example") + +def test_cmake_qemu_failing(self): +"""Test for cmake-qemu.bbclass bad case + +Break the comparison in the test code and verify the CTests do not pass. +""" +self._qemu_usermode_failing("cmake-example") + + +class MesonTests(CCppTests): +def test_meson_qemu(self): +"""Test the qemu-user feature of the meson.bbclass good case + +compile the meson-example and verify the Unit Test pass in qemu-user. +qemu-user is configured by meson's exe_wrapper option. +""" +self._qemu_usermode("meson-example") + +def test_meson_qemu_failing(self): +"""Test the qemu-user feature of the meson.bbclass bad case + +Break the comparison in the test code and verify the Unit Test does not pass in qemu-user. +""" +self._qemu_usermode_failing("meson-example") -- 2.43.0 -=-=-=-=-=-=-=-=-=-=-=- Links: You receive all messages sent to this group. View/Reply Online (#191976): https://lists.openembedded.org/g/openembedded-core/message/191976 Mute This Topic: https://lists.openembedded.org/mt/103042535/21656 Group Owner: openembedded-core+ow...@lists.openembedded.org Unsubscribe: https://lists.openembedded.org/g/openembedded-core/unsub [arch...@mail-archive.com] -=-=-=-=-=-=-=-=-=-=-=-
[OE-core] [PATCH 3/4] oeqa/core/decorator: add skip if not qemu-usermode
Add a decorator to skip tests which require the qemu-usermode machine feature. Signed-off-by: Adrian Freihofer --- meta/lib/oeqa/core/decorator/data.py | 10 ++ 1 file changed, 10 insertions(+) diff --git a/meta/lib/oeqa/core/decorator/data.py b/meta/lib/oeqa/core/decorator/data.py index de881e097ab..5444b2cb751 100644 --- a/meta/lib/oeqa/core/decorator/data.py +++ b/meta/lib/oeqa/core/decorator/data.py @@ -185,6 +185,16 @@ class skipIfNotQemu(OETestDecorator): if not self.case.td.get('MACHINE', '').startswith('qemu'): self.case.skipTest('Test only runs on qemu machines') +@registerDecorator +class skipIfNotQemuUsermode(OETestDecorator): +""" +Skip test if MACHINE_FEATURES does not contain qemu-usermode +""" +def setUpDecorator(self): +self.logger.debug("Checking if MACHINE_FEATURES does not contain qemu-usermode") +if 'qemu-usermode' not in self.case.td.get('MACHINE_FEATURES', '').split(): +self.case.skipTest('Test requires qemu-usermode in MACHINE_FEATURES') + @registerDecorator class skipIfQemu(OETestDecorator): """ -- 2.43.0 -=-=-=-=-=-=-=-=-=-=-=- Links: You receive all messages sent to this group. View/Reply Online (#191975): https://lists.openembedded.org/g/openembedded-core/message/191975 Mute This Topic: https://lists.openembedded.org/mt/103042534/21656 Group Owner: openembedded-core+ow...@lists.openembedded.org Unsubscribe: https://lists.openembedded.org/g/openembedded-core/unsub [arch...@mail-archive.com] -=-=-=-=-=-=-=-=-=-=-=-
[OE-core] [PATCH 2/4] oe-selftest: add a cpp-example recipe
This simple C++ project supports compilation with CMake and Meson. (Autotool support could be added later on.) It's supposed to be used with oe-selftest. An artificial project has several advantages over compiling a normal CMake or Meson based project for testing purposes: - It is much faster because it can be kept minimalistic - It can cover multiple odd corner cases - No one will change it in an unpredictable way - It can support multiple build tools with only one C++ codebase Signed-off-by: Adrian Freihofer --- meta-selftest/recipes-test/cpp/.gitignore | 1 + .../recipes-test/cpp/cmake-example.bb | 25 .../recipes-test/cpp/cmake-example/run-ptest | 10 +++ .../recipes-test/cpp/cpp-example.inc | 24 .../recipes-test/cpp/files/CMakeLists.txt | 61 +++ .../cpp/files/cpp-example-lib.cpp | 33 ++ .../cpp/files/cpp-example-lib.hpp | 21 +++ .../recipes-test/cpp/files/cpp-example.cpp| 18 ++ .../recipes-test/cpp/files/meson.build| 38 .../recipes-test/cpp/files/meson.options | 3 + .../cpp/files/test-cpp-example.cpp| 25 .../recipes-test/cpp/meson-example.bb | 27 .../recipes-test/cpp/meson-example/run-ptest | 10 +++ 13 files changed, 296 insertions(+) create mode 100644 meta-selftest/recipes-test/cpp/.gitignore create mode 100644 meta-selftest/recipes-test/cpp/cmake-example.bb create mode 100644 meta-selftest/recipes-test/cpp/cmake-example/run-ptest create mode 100644 meta-selftest/recipes-test/cpp/cpp-example.inc create mode 100644 meta-selftest/recipes-test/cpp/files/CMakeLists.txt create mode 100644 meta-selftest/recipes-test/cpp/files/cpp-example-lib.cpp create mode 100644 meta-selftest/recipes-test/cpp/files/cpp-example-lib.hpp create mode 100644 meta-selftest/recipes-test/cpp/files/cpp-example.cpp create mode 100644 meta-selftest/recipes-test/cpp/files/meson.build create mode 100644 meta-selftest/recipes-test/cpp/files/meson.options create mode 100644 meta-selftest/recipes-test/cpp/files/test-cpp-example.cpp create mode 100644 meta-selftest/recipes-test/cpp/meson-example.bb create mode 100644 meta-selftest/recipes-test/cpp/meson-example/run-ptest diff --git a/meta-selftest/recipes-test/cpp/.gitignore b/meta-selftest/recipes-test/cpp/.gitignore new file mode 100644 index 000..30d388a12b7 --- /dev/null +++ b/meta-selftest/recipes-test/cpp/.gitignore @@ -0,0 +1 @@ +build* \ No newline at end of file diff --git a/meta-selftest/recipes-test/cpp/cmake-example.bb b/meta-selftest/recipes-test/cpp/cmake-example.bb new file mode 100644 index 000..aecfcf780a3 --- /dev/null +++ b/meta-selftest/recipes-test/cpp/cmake-example.bb @@ -0,0 +1,25 @@ +# +# Copyright OpenEmbedded Contributors +# +# SPDX-License-Identifier: MIT +# + +SUMMARY = "A C++ example compiled with cmake." + +require cpp-example.inc + +SRC_URI += "file://CMakeLists.txt" + +inherit cmake-qemu + +PACKAGECONFIG[failing_test] = "-DFAILING_TEST=ON" + +FILES:${PN}-ptest += "${bindir}/test-cmake-example" + +do_run_tests () { +bbnote ${DESTDIR:+DESTDIR=${DESTDIR} }${CMAKE_VERBOSE} cmake --build '${B}' --target test -- ${EXTRA_OECMAKE_BUILD} +eval ${DESTDIR:+DESTDIR=${DESTDIR} }${CMAKE_VERBOSE} cmake --build '${B}' --target test -- ${EXTRA_OECMAKE_BUILD} +} +do_run_tests[doc] = "Run cmake --target=test using qemu-user" + +addtask do_run_tests after do_compile diff --git a/meta-selftest/recipes-test/cpp/cmake-example/run-ptest b/meta-selftest/recipes-test/cpp/cmake-example/run-ptest new file mode 100644 index 000..94b620a1984 --- /dev/null +++ b/meta-selftest/recipes-test/cpp/cmake-example/run-ptest @@ -0,0 +1,10 @@ +#!/bin/sh +# +# Copyright OpenEmbedded Contributors +# +# SPDX-License-Identifier: MIT +# + +test-cmake-example + +# Note: run-ptests exits with exit value from test-cmake-example diff --git a/meta-selftest/recipes-test/cpp/cpp-example.inc b/meta-selftest/recipes-test/cpp/cpp-example.inc new file mode 100644 index 000..ad374be9d08 --- /dev/null +++ b/meta-selftest/recipes-test/cpp/cpp-example.inc @@ -0,0 +1,24 @@ +# +# Copyright OpenEmbedded Contributors +# +# SPDX-License-Identifier: MIT +# + +LICENSE = "MIT" +LIC_FILES_CHKSUM = "file://${COMMON_LICENSE_DIR}/MIT;md5=0835ade698e0bcf8506ecda2f7b4f302" + +DEPENDS += "json-c" + +PV = "1.0" + +SRC_URI = "\ +file://cpp-example.cpp \ +file://cpp-example-lib.hpp \ +file://cpp-example-lib.cpp \ +file://test-cpp-example.cpp \ +file://run-ptest \ +" + +S = "${WORKDIR}" + +inherit ptest diff --git a/meta-selftest/recipes-test/cpp/files/CMakeLists.txt b/meta-selftest/recipes-test/cpp/files/CMakeLists.txt new file mode 100644 index 000..6fa6917d89b --- /dev/null +++ b/meta-selftest/recipes-test/cpp/files/CMakeLists.txt @@ -0,0 +1,61 @@ +# +# Copyright OpenEmbedded Contributors +# +# SPDX-License-Identifier: MIT +# + +cmake_minimum_required(VERSION
[OE-core] [PATCH 1/4] cmake-qemu.bbclass: make it more usable
Make the cmake-qemu.bbclass more usable: - Drop the CMAKE_EXEWRAPPER_ENABLED variable (which does not make much sense without the second commit of the original patch series). - Inherit qemu to make the cmake-qemu a drop in replacement for cmake. Signed-off-by: Adrian Freihofer --- meta/classes-recipe/cmake-qemu.bbclass | 20 1 file changed, 12 insertions(+), 8 deletions(-) diff --git a/meta/classes-recipe/cmake-qemu.bbclass b/meta/classes-recipe/cmake-qemu.bbclass index 76b748f3406..46a89e2827b 100644 --- a/meta/classes-recipe/cmake-qemu.bbclass +++ b/meta/classes-recipe/cmake-qemu.bbclass @@ -5,18 +5,22 @@ # # Not all platforms are supported by Qemu. Using qemu-user therefore # involves a certain risk, which is also the reason why this feature -# is not activated by default. +# is not part of the main cmake class by default. +# +# One use case is the execution of cross-compiled unit tests with CTest +# on the build machine. If CMAKE_EXEWRAPPER_ENABLED is configured, +# cmake --build --target test +# works transparently with qemu-user. If the cmake project is developed +# with this use case in mind this works very nicely also out of an IDE +# configured to use cmake-native for cross compiling. -inherit qemu +inherit qemu cmake -CMAKE_EXEWRAPPER_ENABLED:class-native = "False" -CMAKE_EXEWRAPPER_ENABLED:class-nativesdk = "False" -CMAKE_EXEWRAPPER_ENABLED ?= "${@bb.utils.contains('MACHINE_FEATURES', 'qemu-usermode', 'True', 'False', d)}" -DEPENDS:append = "${@' qemu-native' if d.getVar('CMAKE_EXEWRAPPER_ENABLED') == 'True' else ''}" +DEPENDS:append:class-target = "${@' qemu-native' if bb.utils.contains('MACHINE_FEATURES', 'qemu-usermode', True, False, d) else ''}" cmake_do_generate_toolchain_file:append:class-target() { -if [ "${CMAKE_EXEWRAPPER_ENABLED}" = "True" ]; then -# Write out a qemu wrapper that will be used as exe_wrapper so that camake +if [ "${@bb.utils.contains('MACHINE_FEATURES', 'qemu-usermode', 'True', 'False', d)}" ]; then +# Write out a qemu wrapper that will be used as exe_wrapper so that cmake # can run target helper binaries through that. This also allows to execute ctest. qemu_binary="${@qemu_wrapper_cmdline(d, '${STAGING_DIR_HOST}', ['${STAGING_DIR_HOST}/${libdir}','${STAGING_DIR_HOST}/${base_libdir}'])}" echo "#!/bin/sh" > "${WORKDIR}/cmake-qemuwrapper" -- 2.43.0 -=-=-=-=-=-=-=-=-=-=-=- Links: You receive all messages sent to this group. View/Reply Online (#191973): https://lists.openembedded.org/g/openembedded-core/message/191973 Mute This Topic: https://lists.openembedded.org/mt/103042531/21656 Group Owner: openembedded-core+ow...@lists.openembedded.org Unsubscribe: https://lists.openembedded.org/g/openembedded-core/unsub [arch...@mail-archive.com] -=-=-=-=-=-=-=-=-=-=-=-
[OE-core] [PATCHv3 7/9] recipetool: create: Only include the expected SRC_URI checksums
Rather than including all SRC_URI checksums, include the ones that are expected. These are the same as are output if no checksums are included when building the recipe. Signed-off-by: Peter Kjellerstedt --- This is based on abelloni/master-next. meta/lib/oeqa/selftest/cases/recipetool.py | 2 -- scripts/lib/recipetool/create.py | 4 +++- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/meta/lib/oeqa/selftest/cases/recipetool.py b/meta/lib/oeqa/selftest/cases/recipetool.py index 20dd41f492..08da029e6e 100644 --- a/meta/lib/oeqa/selftest/cases/recipetool.py +++ b/meta/lib/oeqa/selftest/cases/recipetool.py @@ -349,7 +349,6 @@ class RecipetoolCreateTests(RecipetoolBase): checkvars['LICENSE'] = 'GPL-2.0-only' checkvars['LIC_FILES_CHKSUM'] = 'file://COPYING;md5=b234ee4d69f5fce4486a80fdaf4a4263' checkvars['SRC_URI'] = 'https://github.com/logrotate/logrotate/releases/download/${PV}/logrotate-${PV}.tar.xz' -checkvars['SRC_URI[md5sum]'] = 'a560c57fac87c45b2fc17406cdf79288' checkvars['SRC_URI[sha256sum]'] = '2e6a401cac9024db2288297e3be1a8ab60e7401ba8e91225218aaf4a27e82a07' self._test_recipe_contents(recipefile, checkvars, []) @@ -407,7 +406,6 @@ class RecipetoolCreateTests(RecipetoolBase): checkvars = {} checkvars['LICENSE'] = set(['LGPL-2.1-only', 'MPL-1.1-only']) checkvars['SRC_URI'] = 'http://taglib.github.io/releases/taglib-${PV}.tar.gz' -checkvars['SRC_URI[md5sum]'] = 'cee7be0ccfc892fa433d6c837df9522a' checkvars['SRC_URI[sha256sum]'] = 'b6d1a5a610aae6ff39d93de5efd0fdc787aa9e9dc1e7026fa4c961b26563526b' checkvars['DEPENDS'] = set(['boost', 'zlib']) inherits = ['cmake'] diff --git a/scripts/lib/recipetool/create.py b/scripts/lib/recipetool/create.py index 6e15326c55..d2997cc242 100644 --- a/scripts/lib/recipetool/create.py +++ b/scripts/lib/recipetool/create.py @@ -706,8 +706,10 @@ def create_recipe(args): if not srcuri: lines_before.append('# No information for SRC_URI yet (only an external source tree was specified)') lines_before.append('SRC_URI = "%s"' % srcuri) +shown_checksums = ["%ssum" % s for s in bb.fetch2.SHOWN_CHECKSUM_LIST] for key, value in sorted(checksums.items()): -lines_before.append('SRC_URI[%s] = "%s"' % (key, value)) +if key in shown_checksums: +lines_before.append('SRC_URI[%s] = "%s"' % (key, value)) if srcuri and supports_srcrev(srcuri): lines_before.append('') lines_before.append('# Modify these as desired') -=-=-=-=-=-=-=-=-=-=-=- Links: You receive all messages sent to this group. View/Reply Online (#191970): https://lists.openembedded.org/g/openembedded-core/message/191970 Mute This Topic: https://lists.openembedded.org/mt/103038991/21656 Group Owner: openembedded-core+ow...@lists.openembedded.org Unsubscribe: https://lists.openembedded.org/g/openembedded-core/unsub [arch...@mail-archive.com] -=-=-=-=-=-=-=-=-=-=-=-
Re: [OE-core] [PATCH 2/4] python3-qemu-qmp: Add recipe
This will also need a maintainer entry in: https://git.openembedded.org/openembedded-core/tree/meta/conf/distro/include/maintainers.inc On Thu, Dec 7, 2023 at 6:36 AM Eilís 'pidge' Ní Fhlannagáin < pi...@baylibre.com> wrote: > From: Ross Burton > > Add a recipe for python QEMU Monitor Protocol. This will be needed for > qemu screendumps for qemu screendump testing. > > Signed-off-by: Ross Burton > Signed-off-by: Eilís 'pidge' Ní Fhlannagáin > --- > .../python/python3-qemu-qmp_0.0.2.bb | 14 ++ > 1 file changed, 14 insertions(+) > create mode 100644 meta/recipes-devtools/python/python3-qemu-qmp_0.0.2.bb > > diff --git a/meta/recipes-devtools/python/python3-qemu-qmp_0.0.2.bb > b/meta/recipes-devtools/python/python3-qemu-qmp_0.0.2.bb > new file mode 100644 > index 000..faa0cc69738 > --- /dev/null > +++ b/meta/recipes-devtools/python/python3-qemu-qmp_0.0.2.bb > @@ -0,0 +1,14 @@ > +SUMMARY = "asyncio library for communicating with QEMU Monitor Protocol > (QMP) servers" > +LICENSE = "LGPLv2+ & GPLv2" > +LIC_FILES_CHKSUM = "file://LICENSE;md5=4cf66a4984120007c9881cc871cf49db \ > + > file://LICENSE_GPL2;md5=441c28d2cf86e15a37fa47e15a72fbac" > + > +SRC_URI[sha256sum] = > "c918e9e3ae09abdf70c7ece67637a93ac4583d940bbf48d24ff77987f74f1b8b" > + > +inherit pypi python_setuptools_build_meta > + > +PYPI_PACKAGE = "qemu.qmp" > + > +DEPENDS += "python3-setuptools-scm-native" > + > +BBCLASSEXTEND = "native nativesdk" > -- > 2.34.1 > > > > > -=-=-=-=-=-=-=-=-=-=-=- Links: You receive all messages sent to this group. View/Reply Online (#191969): https://lists.openembedded.org/g/openembedded-core/message/191969 Mute This Topic: https://lists.openembedded.org/mt/103035077/21656 Group Owner: openembedded-core+ow...@lists.openembedded.org Unsubscribe: https://lists.openembedded.org/g/openembedded-core/unsub [arch...@mail-archive.com] -=-=-=-=-=-=-=-=-=-=-=-
Re: [OE-core] [kirkstone][PATCH] gstreamer1.0-plugins-base: enable glx/opengl support
On Thu, 2023-12-07 at 05:07 -1000, Steve Sakoman wrote: > On Tue, Dec 5, 2023 at 11:13 PM Claus Stovgaard > wrote: > > > > From: Alexander Kanavin > > > > This is required by latest webkit when built with x11 support. > > Is this an issue for the version of webkit in kirkstone? i.e. is it > currently broken? > > Steve I should properly update the message, though as it was a backport from master, I kept the commit message. The issue in kirkstone is more general. An example - if I have a distro without wayland / vulkan, but have opengl / x11 enabled. And then look in the log from " bitbake -c configure gstreamer1.0- plugins-base" and search for gl_api you will find. "-Dgl_api=gles2 -Dgl_platform=egl -Dgl_winsys=egl,x11 -Dalsa=enabled" And when running configure for gstreamer1.0-plugins-good you find. gstreamer1.0-plugins-good/1.20.7-r0/temp $ grep OpenGL log.do_configure Message: GStreamer OpenGL window systems: egl x11 Message: GStreamer OpenGL platforms: egl Message: GStreamer OpenGL apis: gles2 Notice the lag of glx / opengl support. After this change and running the same plugins-base / plugins-good configuration you see. "-Dgl_api=opengl,gles2 -Dgl_platform=egl,glx -Dgl_winsys=egl,x11 - Dalsa=enabled" and for good plugins. gstreamer1.0-plugins-good/1.20.7-r0/temp $ grep OpenGL log.do_configure Message: GStreamer OpenGL window systems: egl x11 Message: GStreamer OpenGL platforms: egl glx Message: GStreamer OpenGL apis: gles2 gl Notice we now have gl api and glx platform. This is an issue when having application using qmlgl plugin as an example. In short it fixes so gstreamer1.0 follow the DISTRO_fEATURES, and make it possible to have x11 support in plugins using glx/gl features like qmlgl plugin Hope it make it clear why I see it as a bug needing fixed in kirkstone. Regards Claus -=-=-=-=-=-=-=-=-=-=-=- Links: You receive all messages sent to this group. View/Reply Online (#191968): https://lists.openembedded.org/g/openembedded-core/message/191968 Mute This Topic: https://lists.openembedded.org/mt/103009798/21656 Group Owner: openembedded-core+ow...@lists.openembedded.org Unsubscribe: https://lists.openembedded.org/g/openembedded-core/unsub [arch...@mail-archive.com] -=-=-=-=-=-=-=-=-=-=-=-
Re: [OE-core] [PATCHv2 7/9] recipetool: create: Only include the expected SRC_URI checksums
Hello, This one doesn't apply and I've skippedit, can you rebase? I've applied all the other ones On 06/12/2023 21:55:29+0100, Peter Kjellerstedt wrote: > Rather than including all SRC_URI checksums, include the ones that are > expected. These are the same as are output if no checksums are included > when building the recipe. > > Signed-off-by: Peter Kjellerstedt > --- > meta/lib/oeqa/selftest/cases/recipetool.py | 19 --- > scripts/lib/recipetool/create.py | 4 +++- > 2 files changed, 3 insertions(+), 20 deletions(-) > > diff --git a/meta/lib/oeqa/selftest/cases/recipetool.py > b/meta/lib/oeqa/selftest/cases/recipetool.py > index 3a05343210..910bf0b4f6 100644 > --- a/meta/lib/oeqa/selftest/cases/recipetool.py > +++ b/meta/lib/oeqa/selftest/cases/recipetool.py > @@ -349,7 +349,6 @@ class RecipetoolCreateTests(RecipetoolBase): > checkvars['LICENSE'] = 'GPL-2.0-only' > checkvars['LIC_FILES_CHKSUM'] = > 'file://COPYING;md5=b234ee4d69f5fce4486a80fdaf4a4263' > checkvars['SRC_URI'] = > 'https://github.com/logrotate/logrotate/releases/download/${PV}/logrotate-${PV}.tar.xz' > -checkvars['SRC_URI[md5sum]'] = 'a560c57fac87c45b2fc17406cdf79288' > checkvars['SRC_URI[sha256sum]'] = > '2e6a401cac9024db2288297e3be1a8ab60e7401ba8e91225218aaf4a27e82a07' > self._test_recipe_contents(recipefile, checkvars, []) > > @@ -407,7 +406,6 @@ class RecipetoolCreateTests(RecipetoolBase): > checkvars = {} > checkvars['LICENSE'] = set(['LGPL-2.1-only', 'MPL-1.1-only']) > checkvars['SRC_URI'] = > 'http://taglib.github.io/releases/taglib-${PV}.tar.gz' > -checkvars['SRC_URI[md5sum]'] = 'cee7be0ccfc892fa433d6c837df9522a' > checkvars['SRC_URI[sha256sum]'] = > 'b6d1a5a610aae6ff39d93de5efd0fdc787aa9e9dc1e7026fa4c961b26563526b' > checkvars['DEPENDS'] = set(['boost', 'zlib']) > inherits = ['cmake'] > @@ -470,7 +468,6 @@ class RecipetoolCreateTests(RecipetoolBase): > checkvars['LICENSE'] = set(['MIT']) > checkvars['LIC_FILES_CHKSUM'] = > 'file://LICENSE;md5=16a934f165e8c3245f241e77d401bb88' > checkvars['SRC_URI'] = > 'https://files.pythonhosted.org/packages/84/30/80932401906eaf787f2e9bd86dc458f1d2e75b064b4c187341f29516945c/python-magic-${PV}.tar.gz' > -checkvars['SRC_URI[md5sum]'] = 'e384c95a47218f66c6501cd6dd45ff59' > checkvars['SRC_URI[sha256sum]'] = > 'f3765c0f582d2dfc72c15f3b5a82aecfae9498bd29ca840d72f37d7bd38bfcd5' > inherits = ['setuptools3'] > self._test_recipe_contents(recipefile, checkvars, inherits) > @@ -500,11 +497,7 @@ class RecipetoolCreateTests(RecipetoolBase): > checkvars['LICENSE'] = set(['BSD-3-Clause']) > checkvars['LIC_FILES_CHKSUM'] = > 'file://LICENSE;md5=702b1ef12cf66832a88f24c8f2ee9c19' > checkvars['SRC_URI'] = > 'https://files.pythonhosted.org/packages/a1/fb/f95560c6a5d4469d9c49e24cf1b5d4d21ffab5608251c6020a965fb7791c/webcolors-${PV}.tar.gz' > -checkvars['SRC_URI[md5sum]'] = 'c9be30c5b0cf1cad32e4cbacbb2229e9' > -checkvars['SRC_URI[sha1sum]'] = > 'c90b84fb65eed9b4c9dea7f08c657bfac0e820a5' > checkvars['SRC_URI[sha256sum]'] = > 'c225b674c83fa923be93d235330ce0300373d02885cef23238813b0d5668304a' > -checkvars['SRC_URI[sha384sum]'] = > '45652af349660f19f68d01361dd5bda287789e5ea63608f52a8cea526ac04465614db2ea236103fb8456b1fcaea96ed7' > -checkvars['SRC_URI[sha512sum]'] = > '074aaf135ac6b0025b88b731d1d6dfa4c539b4fff7195658cc58a4326bb9f0449a231685d312b4a1ec48ca535a838bfa5c680787fe0e61473a2a092c448937d0' > inherits = ['python_setuptools_build_meta'] > > self._test_recipe_contents(recipefile, checkvars, inherits) > @@ -534,11 +527,7 @@ class RecipetoolCreateTests(RecipetoolBase): > checkvars['LICENSE'] = set(['MIT']) > checkvars['LIC_FILES_CHKSUM'] = > 'file://LICENSE;md5=aab31f2ef7ba214a5a341eaa47a7f367' > checkvars['SRC_URI'] = > 'https://files.pythonhosted.org/packages/b9/f3/ef59cee614d5e0accf6fd0cbba025b93b272e626ca89fb70a3e9187c5d15/iso8601-${PV}.tar.gz' > -checkvars['SRC_URI[md5sum]'] = '6e33910eba87066b3be7fcf3d59d16b5' > -checkvars['SRC_URI[sha1sum]'] = > 'efd225b2c9fa7d9e4a1ec6ad94f3295cee982e61' > checkvars['SRC_URI[sha256sum]'] = > '6b1d3829ee8921c4301998c909f7829fa9ed3cbdac0d3b16af2d743aed1ba8df' > -checkvars['SRC_URI[sha384sum]'] = > '255002433fe65c19adfd6b91494271b613cb25ef6a35ac77436de1e03d60cc07bf89fd716451b917f1435e4384860ef6' > -checkvars['SRC_URI[sha512sum]'] = > 'db57ab2a25ef91e3bc479c8539d27e853cf1fbf60986820b8999ae15d7e566425a1e0cfba47d0f3b23aa703db0576db368e6c110ba2a2f46c9a34e8ee3611fb7' > inherits = ['python_poetry_core'] > > self._test_recipe_contents(recipefile, checkvars, inherits) > @@ -568,11 +557,7 @@ class RecipetoolCreateTests(RecipetoolBase): > checkvars['LICENSE'] = set(['PSF-2.0']) >
Re: [OE-core] [kirkstone][PATCH 2/4] base-passwd: Add PW_SUBDIR
On Thu, 2023-12-07 at 15:05 +, Peter Kjellerstedt wrote: > > -Original Message- > > From: Joakim Tjernlund > > Sent: den 7 december 2023 09:48 > > To: openembedded-core@lists.openembedded.org; Peter Kjellerstedt > > > > Subject: Re: [OE-core] [kirkstone][PATCH 2/4] base-passwd: Add PW_SUBDIR > > > > On Wed, 2023-12-06 at 20:21 +, Peter Kjellerstedt wrote: > > > Since I've seen Richard's reply and his reluctance to merge this, > > > this is mostly technical. > > > > I know but I don't understand what "batter ways" to do this is, I have > > tested symlinks/--prefix/--root and bind mounting the passwd/shadow > > files and none of then work. Using overlaysfs is an inferior solution to > > me that makes the whole /etc writeable, may break when RFS underneath is > > upgraded and I am unsure how resilient overlayfs is in case of power > > failure. What else is there ? > > For what it is worth, we use overlayfs on /etc in all of our products, > and AFAIK have not had any problems with it. Our product upgrade solution > is of course aware of the fact and takes care when upgrading to migrate > all relevant changes in a controlled way. Thanks, this indicates that overlayfs is somewhat resilient against power cuts. My other concerns are still valid I think, exposing /etc as RW can be a security risk and having to take special care when updating RO RFS underneath overlayfs. Is that really better than my proposal ? //Jocke > > //Peter > > > > > > > I would use either PW_DIR = "${sysconfdir}/pwdb" or PW_DIR:append = > > > "/pwdb". > > > Using "/etc" (and other hardcoded paths) should be avoided wherever > > > possible. > > > > Thanks, will tru there out. > > > > Jocke > > > > > > > > //Peter > > > > > > > -Original Message- > > > > From: Joakim Tjernlund > > > > Sent: den 29 november 2023 12:11 > > > > To: openembedded-core@lists.openembedded.org; Peter Kjellerstedt > > > > > > > > Subject: Re: [OE-core] [kirkstone][PATCH 2/4] base-passwd: Add > > PW_SUBDIR > > > > > > > > Hi Peter :) > > > > > > > > All good comments, will fix accordingly. Not sure how PW_DIR ?= > > > > "${sysconfdir}" will work though. > > > > > > > > How do you envision one should set PW_DIR in distro .conf or > > layer.conf? > > > > Just PW_DIR = "/etc/pwdb" or PW_DIR = "${sysconfdir}/pwdb" ? > > > > > > > > Jocke > > > > > > > > On Sun, 2023-11-26 at 21:21 +, Peter Kjellerstedt wrote: > > > > > > -Original Message- > > > > > > From: openembedded-core@lists.openembedded.org > > > c...@lists.openembedded.org> On Behalf Of Joakim Tjernlund via > > > > lists.openembedded.org > > > > > > Sent: den 24 november 2023 15:11 > > > > > > To: openembedded-core@lists.openembedded.org > > > > > > Cc: Joakim Tjernlund > > > > > > Subject: [OE-core] [kirkstone][PATCH 2/4] base-passwd: Add > > PW_SUBDIR > > > > > > > > > > > > Add support for creating passwd files in a /etc subdir > > > > > > Set PW_SUBIR to pwdb to get passwd files in /etc/pwdb > > > > > > > > > > > > Signed-off-by: Joakim Tjernlund > > > > > > --- > > > > > > .../base-passwd/base-passwd_3.5.29.bb | 24 -- > > > > > > - > > > > > > 1 file changed, 16 insertions(+), 8 deletions(-) > > > > > > > > > > > > diff --git a/meta/recipes-core/base-passwd/base-passwd_3.5.29.bb > > > > b/meta/recipes-core/base-passwd/base-passwd_3.5.29.bb > > > > > > index ef7792ae49..e453be0763 100644 > > > > > > --- a/meta/recipes-core/base-passwd/base-passwd_3.5.29.bb > > > > > > +++ b/meta/recipes-core/base-passwd/base-passwd_3.5.29.bb > > > > > > @@ -20,6 +20,9 @@ SRC_URI = > > > > "https://launchpad.net/debian/+archive/primary/+files/${BPN}_${PV}.tar > > > > > > SRC_URI[md5sum] = "6beccac48083fe8ae5048acd062e5421" > > > > > > SRC_URI[sha256sum] = > > > > "f0b66388b2c8e49c15692439d2bee63bcdd4bbbf7a782c7f64accc55986b6a36" > > > > > > > > > > > > +#Set PW_SUBDIR to pwdb to get passwd files in /etc/pwdb > > > > > > +PW_SUBDIR ?= "" > > > > > > + > > > > > > > > > > Rather than defining a subdirectory, I would recommend defining the > > full > > > > > path, e.g.: > > > > > > > > > > PW_DIR ?= "${sysconfdir}" > > > > > > > > > > This avoids generating a lot of "//" in the middle of paths for the > > > > majority > > > > > of us who do not use a subdirectory for the password files. > > > > > > > > > > > # the package is taken from launchpad; that source is static and > > goes > > > > stale > > > > > > # so we check the latest upstream from a directory that does get > > > > updated > > > > > > UPSTREAM_CHECK_URI = "${DEBIAN_MIRROR}/main/b/base-passwd/" > > > > > > @@ -50,10 +53,11 @@ basepasswd_sysroot_postinst() { > > > > > > #!/bin/sh > > > > > > > > > > > > # Install passwd.master and group.master to sysconfdir > > > > > > -install -d -m 755 ${STAGING_DIR_TARGET}${sysconfdir} > > > > > > +install -d -m 755 ${STAGING_DIR_TARGET}${sysconfdir}/${PW_SUBDIR} > > > > > > for i in passwd group; do > > > > > > install -p -m 644
Re: [OE-core] [kirkstone][PATCH] gstreamer1.0-plugins-base: enable glx/opengl support
On Tue, Dec 5, 2023 at 11:13 PM Claus Stovgaard wrote: > > From: Alexander Kanavin > > This is required by latest webkit when built with x11 support. Is this an issue for the version of webkit in kirkstone? i.e. is it currently broken? Steve > > (From OE-Core rev: 024edebf6f722ae4d05411be348730d9eeb3bd7c) > > Signed-off-by: Alexander Kanavin > Signed-off-by: Richard Purdie > Signed-off-by: Claus Stovgaard > --- > .../gstreamer/gstreamer1.0-plugins-base_1.20.7.bb | 6 -- > 1 file changed, 4 insertions(+), 2 deletions(-) > > diff --git > a/meta/recipes-multimedia/gstreamer/gstreamer1.0-plugins-base_1.20.7.bb > b/meta/recipes-multimedia/gstreamer/gstreamer1.0-plugins-base_1.20.7.bb > index 8822c6a905..8dfa70aea3 100644 > --- a/meta/recipes-multimedia/gstreamer/gstreamer1.0-plugins-base_1.20.7.bb > +++ b/meta/recipes-multimedia/gstreamer/gstreamer1.0-plugins-base_1.20.7.bb > @@ -21,7 +21,8 @@ inherit gobject-introspection > > # opengl packageconfig factored out to make it easy for distros > # and BSP layers to choose OpenGL APIs/platforms/window systems > -PACKAGECONFIG_GL ?= "${@bb.utils.contains('DISTRO_FEATURES', 'opengl', > 'gles2 egl', '', d)}" > +PACKAGECONFIG_X11 = "${@bb.utils.contains('DISTRO_FEATURES', 'x11', 'opengl > glx', '', d)}" > +PACKAGECONFIG_GL ?= "${@bb.utils.contains('DISTRO_FEATURES', 'opengl', > 'gles2 egl ${PACKAGECONFIG_X11}', '', d)}" > > PACKAGECONFIG ??= " \ > ${GSTREAMER_ORC} \ > @@ -32,7 +33,7 @@ PACKAGECONFIG ??= " \ > " > > OPENGL_APIS = 'opengl gles2' > -OPENGL_PLATFORMS = 'egl' > +OPENGL_PLATFORMS = 'egl glx' > > X11DEPENDS = "virtual/libx11 libsm libxrender libxv" > X11ENABLEOPTS = "-Dx11=enabled -Dxvideo=enabled -Dxshm=enabled" > @@ -61,6 +62,7 @@ PACKAGECONFIG[gles2]= ",,virtual/libgles2" > > # OpenGL platform packageconfigs > PACKAGECONFIG[egl] = ",,virtual/egl" > +PACKAGECONFIG[glx] = ",,virtual/libgl" > > # OpenGL window systems (except for X11) > PACKAGECONFIG[gbm] = ",,virtual/libgbm libgudev libdrm" > -- > 2.41.0 > > > > -=-=-=-=-=-=-=-=-=-=-=- Links: You receive all messages sent to this group. View/Reply Online (#191965): https://lists.openembedded.org/g/openembedded-core/message/191965 Mute This Topic: https://lists.openembedded.org/mt/103009798/21656 Group Owner: openembedded-core+ow...@lists.openembedded.org Unsubscribe: https://lists.openembedded.org/g/openembedded-core/unsub [arch...@mail-archive.com] -=-=-=-=-=-=-=-=-=-=-=-
Re: [OE-core] [kirkstone][PATCH 2/4] base-passwd: Add PW_SUBDIR
> -Original Message- > From: Joakim Tjernlund > Sent: den 7 december 2023 09:48 > To: openembedded-core@lists.openembedded.org; Peter Kjellerstedt > > Subject: Re: [OE-core] [kirkstone][PATCH 2/4] base-passwd: Add PW_SUBDIR > > On Wed, 2023-12-06 at 20:21 +, Peter Kjellerstedt wrote: > > Since I've seen Richard's reply and his reluctance to merge this, > > this is mostly technical. > > I know but I don't understand what "batter ways" to do this is, I have > tested symlinks/--prefix/--root and bind mounting the passwd/shadow > files and none of then work. Using overlaysfs is an inferior solution to > me that makes the whole /etc writeable, may break when RFS underneath is > upgraded and I am unsure how resilient overlayfs is in case of power > failure. What else is there ? For what it is worth, we use overlayfs on /etc in all of our products, and AFAIK have not had any problems with it. Our product upgrade solution is of course aware of the fact and takes care when upgrading to migrate all relevant changes in a controlled way. //Peter > > > > I would use either PW_DIR = "${sysconfdir}/pwdb" or PW_DIR:append = "/pwdb". > > Using "/etc" (and other hardcoded paths) should be avoided wherever > > possible. > > Thanks, will tru there out. > > Jocke > > > > > //Peter > > > > > -Original Message- > > > From: Joakim Tjernlund > > > Sent: den 29 november 2023 12:11 > > > To: openembedded-core@lists.openembedded.org; Peter Kjellerstedt > > > > > > Subject: Re: [OE-core] [kirkstone][PATCH 2/4] base-passwd: Add > PW_SUBDIR > > > > > > Hi Peter :) > > > > > > All good comments, will fix accordingly. Not sure how PW_DIR ?= > > > "${sysconfdir}" will work though. > > > > > > How do you envision one should set PW_DIR in distro .conf or > layer.conf? > > > Just PW_DIR = "/etc/pwdb" or PW_DIR = "${sysconfdir}/pwdb" ? > > > > > > Jocke > > > > > > On Sun, 2023-11-26 at 21:21 +, Peter Kjellerstedt wrote: > > > > > -Original Message- > > > > > From: openembedded-core@lists.openembedded.org > > c...@lists.openembedded.org> On Behalf Of Joakim Tjernlund via > > > lists.openembedded.org > > > > > Sent: den 24 november 2023 15:11 > > > > > To: openembedded-core@lists.openembedded.org > > > > > Cc: Joakim Tjernlund > > > > > Subject: [OE-core] [kirkstone][PATCH 2/4] base-passwd: Add > PW_SUBDIR > > > > > > > > > > Add support for creating passwd files in a /etc subdir > > > > > Set PW_SUBIR to pwdb to get passwd files in /etc/pwdb > > > > > > > > > > Signed-off-by: Joakim Tjernlund > > > > > --- > > > > > .../base-passwd/base-passwd_3.5.29.bb | 24 -- > > > > - > > > > > 1 file changed, 16 insertions(+), 8 deletions(-) > > > > > > > > > > diff --git a/meta/recipes-core/base-passwd/base-passwd_3.5.29.bb > > > b/meta/recipes-core/base-passwd/base-passwd_3.5.29.bb > > > > > index ef7792ae49..e453be0763 100644 > > > > > --- a/meta/recipes-core/base-passwd/base-passwd_3.5.29.bb > > > > > +++ b/meta/recipes-core/base-passwd/base-passwd_3.5.29.bb > > > > > @@ -20,6 +20,9 @@ SRC_URI = > > > "https://launchpad.net/debian/+archive/primary/+files/${BPN}_${PV}.tar > > > > > SRC_URI[md5sum] = "6beccac48083fe8ae5048acd062e5421" > > > > > SRC_URI[sha256sum] = > > > "f0b66388b2c8e49c15692439d2bee63bcdd4bbbf7a782c7f64accc55986b6a36" > > > > > > > > > > +#Set PW_SUBDIR to pwdb to get passwd files in /etc/pwdb > > > > > +PW_SUBDIR ?= "" > > > > > + > > > > > > > > Rather than defining a subdirectory, I would recommend defining the > full > > > > path, e.g.: > > > > > > > > PW_DIR ?= "${sysconfdir}" > > > > > > > > This avoids generating a lot of "//" in the middle of paths for the > > > majority > > > > of us who do not use a subdirectory for the password files. > > > > > > > > > # the package is taken from launchpad; that source is static and > goes > > > stale > > > > > # so we check the latest upstream from a directory that does get > > > updated > > > > > UPSTREAM_CHECK_URI = "${DEBIAN_MIRROR}/main/b/base-passwd/" > > > > > @@ -50,10 +53,11 @@ basepasswd_sysroot_postinst() { > > > > > #!/bin/sh > > > > > > > > > > # Install passwd.master and group.master to sysconfdir > > > > > -install -d -m 755 ${STAGING_DIR_TARGET}${sysconfdir} > > > > > +install -d -m 755 ${STAGING_DIR_TARGET}${sysconfdir}/${PW_SUBDIR} > > > > > for i in passwd group; do > > > > > install -p -m 644 ${STAGING_DIR_TARGET}${datadir}/base- > > > passwd/\$i.master \ > > > > > - ${STAGING_DIR_TARGET}${sysconfdir}/\$i > > > > > + ${STAGING_DIR_TARGET}${sysconfdir}/${PW_SUBDIR}/\$i > > > > > + [ -n "${PW_SUBDIR}" ] && ln -fs ${PW_SUBDIR}/\$i > > > ${STAGING_DIR_TARGET}${sysconfdir}/\$i > > > > > > > > I generally recommended to use `[ ! ... ] || ...` instead of `[ ... > ] && > > > ...`: > > > > > > > > [ -z "${PW_SUBDIR}" ] || ln -fs ${PW_SUBDIR}/\$i > > > ${STAGING_DIR_TARGET}${sysconfdir}/\$i > > > > > > > > Or, assuming my recommendation above is followed: > > >
Re: [OE-core] [PATCH] wic/DirectPlugin: don't update fstab if --no-fstab-update
Hello, This causes the following failure: 2023-12-07 02:54:18,682 - oe-selftest - INFO - == 2023-12-07 02:54:18,682 - oe-selftest - INFO - FAIL: wic.Wic.test_no_fstab_update (subunit.RemotedTestCase) 2023-12-07 02:54:18,682 - oe-selftest - INFO - -- 2023-12-07 02:54:18,682 - oe-selftest - INFO - testtools.testresult.real._StringException: Traceback (most recent call last): File "/home/pokybuild/yocto-worker/oe-selftest-centos/build/meta/lib/oeqa/selftest/cases/wic.py", line 768, in test_no_fstab_update self.assertNotEqual(bf_fstab_md5sum, part_fstab_md5sum[0]) File "/home/pokybuild/yocto-worker/oe-selftest-centos/build/buildtools/sysroots/x86_64-pokysdk-linux/usr/lib/python3.11/unittest/case.py", line 882, in assertNotEqual raise self.failureException(msg) AssertionError: 'af3c087d6c9131735c8d1f270a226892' == 'af3c087d6c9131735c8d1f270a226892' https://autobuilder.yoctoproject.org/typhoon/#/builders/79/builds/6151/steps/15/logs/stdio https://autobuilder.yoctoproject.org/typhoon/#/builders/87/builds/6166/steps/14/logs/stdio https://autobuilder.yoctoproject.org/typhoon/#/builders/127/builds/2551/steps/15/logs/stdio https://autobuilder.yoctoproject.org/typhoon/#/builders/86/builds/6156/steps/14/logs/stdio https://autobuilder.yoctoproject.org/typhoon/#/builders/80/builds/6101/steps/14/logs/stdio On 06/12/2023 19:33:02+0100, Jörg Sommer via lists.openembedded.org wrote: > From: Jörg Sommer > > The function `update_fstab` should not touch the fstab for partitions with > `--no-fstab-update`. > > Signed-off-by: Jörg Sommer > --- > scripts/lib/wic/plugins/imager/direct.py | 2 +- > 1 file changed, 1 insertion(+), 1 deletion(-) > > diff --git a/scripts/lib/wic/plugins/imager/direct.py > b/scripts/lib/wic/plugins/imager/direct.py > index 9b619e41c1..013aa4255f 100644 > --- a/scripts/lib/wic/plugins/imager/direct.py > +++ b/scripts/lib/wic/plugins/imager/direct.py > @@ -116,7 +116,7 @@ class DirectPlugin(ImagerPlugin): > > updated = False > for part in self.parts: > -if not part.realnum or not part.mountpoint \ > +if not part.realnum or not part.mountpoint or > part.no_fstab_update \ > or part.mountpoint == "/" or not > (part.mountpoint.startswith('/') or part.mountpoint == "swap"): > continue > > -- > 2.34.1 > > > > -- Alexandre Belloni, co-owner and COO, Bootlin Embedded Linux and Kernel engineering https://bootlin.com -=-=-=-=-=-=-=-=-=-=-=- Links: You receive all messages sent to this group. View/Reply Online (#191963): https://lists.openembedded.org/g/openembedded-core/message/191963 Mute This Topic: https://lists.openembedded.org/mt/103018986/21656 Group Owner: openembedded-core+ow...@lists.openembedded.org Unsubscribe: https://lists.openembedded.org/g/openembedded-core/unsub [arch...@mail-archive.com] -=-=-=-=-=-=-=-=-=-=-=-
[OE-core] [PATCH 4/4] login.py: Proof of concept for screenshot testcases
This takes the work rburton did on image screenshot testing and expands it. The two caveats here: 1. We expect ImageMagick as a host tool for the time being. There is a question as to do we bring ImageMagick into core for this or do we require meta-oe for these tests. 2. Right now this only works for qemux86-64. Some standardization of screensize/resolution needs to happen with runqemu params for other machines. This test takes a screendump of a qemu image (for now, just core-image-sato for qemux86-64), and compares it to an image we have on record. Some normalisation of the different qemu configs need to happen to be able to support all machines. Example, the qemuarm64 screen size is much larger than the qemux86-64. The image we have on record contains a blanked out clock. We do the same blanking out process for the screenshot, so the images should have zero differences. If they do, we fail. Signed-off-by: Eilís 'pidge' Ní Fhlannagáin Co-authored-by: Ross Burton Co-authored-by: Eilís 'pidge' Ní Fhlannagáin --- .../core-image-sato-qemux86-64.png| Bin 0 -> 46986 bytes meta/lib/oeqa/runtime/cases/login.py | 39 ++ 2 files changed, 39 insertions(+) create mode 100644 meta/files/image-tests/core-image-sato-qemux86-64.png create mode 100644 meta/lib/oeqa/runtime/cases/login.py diff --git a/meta/files/image-tests/core-image-sato-qemux86-64.png b/meta/files/image-tests/core-image-sato-qemux86-64.png new file mode 100644 index ..5a3e46169dca6d118c003d29a59c59588cee7463 GIT binary patch literal 46986 zcmbTdb8w_x*FM^@ZDS_3CYspx#I|kQnAo;$+sULSw(SWf{Ppub@AuEC`p&7}sjjZ> z-o5L-_geSDwXU^yq@uh85oDcxe z5RdR?2nG60YAmTN2LO0c0ssLa0Kf}qDBuJDaAgJn|wmo^${J$055@={x8TXd@X3 zQNZUvul$~}B+yKNl$J#}Xdp4%nT0kCh(zolzt_w!VSs^D>MNA0la$II}g*jel zE`j~c3_f6vmzmhKIe>zOG+vgHyXt?^lqU-#%$oyNq<+pxD#rVFTIk}lSG)pGS{ zBYkhyAEGaFL{e3$HGujMsDR3qK~<4P>t%UNv5H2bTSrHillj2HL2^QQs;I(*loY9> zUiwse)CNN!rE+4D<$5WDulExL4NZm6E5$!TMv6LdNyq}ed)xppdb9f1T&-CU zAp$t8m-p^HJI?N^gw!-zU1-8Ane(>+tgNi~e}unMQvPa^Kw|=hBrgEG$ z!jjRr*lI!`gA5b|46%>T@=KbTQJyc=n65wCW(%BwFJzT+SZx1SG-;J<@O;ZmoAuV% zYfAsIQ8|JJ`YI1?wFpvzZ+0dZVY6NrKL{0<-fQHf9j(H z*~h1*zI>w$yO+=vR5n6~P~Z;T>~dqXAJ9py(+IT0*YUc=RZdjFZ}$K1(=$9%17Hf* z`|W%6X0iXgTyIN3`xwlFxL9e(@qKNCg$`=xv&(lJE?jcKk^@@(ArezkRFssH+TC!T z8#;7JOkGP(Wzf3$MMcu!HDk5bVmY^Jp0hc>ne-q1DI>w45FhLe1Q(Z;?caJRs-+k( zM=YOHaB`+KH?!+7s*7+o~;P=^>yEzQK_G3V-bxusxyOeVKLZjsxcAjOJ`?p z`_AcF2^JR@GynNrVDsuiH>FOW_FqGb*CzuyhtKUuB9DW#ZaM;c-tpP4aze|fOk zZjI%=YUd*do5#Qct*Ii>3k?uFKsuGiWWJYtz0&2*B$%?*Tp|Du4PkP*9=?5TuNbKX zt3*dOe`P+RZ{w%zjE;f6+Ujc^{2=omvzK~+3>Ko4{0>lq&(H~4t_3sMw>9B_Pk zS`^6s;k2G7B`a%lQo4lTiVcthn*2%>lYRGte|@~JQ@*K!t(zO0US(6l3@s=_8rii- zpQn)!hO0Q|kxxUYn_DLJP5h76(D8WPE{2cqfwj84es8xDZkHPqH)umra#Cd9zNJ2| zXgu0%O_SUoCC-1%X#Qp!5fx>1Vz!*g0~ZixSnsmRN-3W^J`fCJP5%~HBed>sAfV!x z9#w0Ni04Dw=_gtQRNaWviV7+3Fr#~-$lK5A)157L|a5vR>B!X`{4kxmiT#=M= zne$!V?st7zf>$pO2cA7Hwo5TBzOO8QdS4?V>OL3VU-$9>Ly3uH`>iP&6~rIg#gRz2qyQkPe*k%HI!Crl)cN5;oXC}BD| zIZ4XPAN2=9h>D3dINzI1fBH)M=<$mk$L;-zW+Hc=!QWsrW4?~0;(D(ryAkEI^X`i( zca@GKDfONEeO;F5ObufgiEbXJ)f+-VJpMpH$6Fd;0msfXi_<)X> z`7BLB_n@qnQk`sX(=>i}#}k#+(!%HF=JvUt;nYYKOQMvEh>N4-;|v#d$JCOg zub@laXP`G4=6lN5^G2F!wKcvBfk*mVJb%_+Xz5Hj)- zOAz-G${Ym!ibCA48QEG}Umk%cFiXlL(D$5P59$4MWq7@{*}jpx$A8jEBt6P12OdZ& zm_Wp11LFbk)OEMshm^=Q$$QVb==Y>i@Ftvts?tsFZ)LyH*`nhIp()SnIdEe;N zd)K1(^Tc?8(fUm zEZueM!ecdoeSdwT;^ob{_+4r9mSG0bO-xK2))Igbku>)H?VuRa*o2apm?*4f z8NJDf@)1Dd-ybiSkd-H+C$yz>9sjS@Wd16Zv{dDkPSy3X3!Zw)Auhq zP9S^B`z-L`io0rP;No@v$33Dty{VF053Axk@gqpg-^Zn96bjwzwuaSreid2b zQ@QhIG|hfTD4~VBVSWn)XnL~|)EfUABFT-0BhcQMZ98q(uOHB{u*ACV#S?oh&|q@C z!)74l2T~FTKaOTjdY!4Ny4-dX2Z9MYS6d2a!ShkUWi@>IH7o{Lspf4< z^uzwZZxjQ_wQ#|kZR7l6ROz!}cl^TLs4yUol}xva$OT=}Q5
[OE-core] [PATCH 3/4] runqemu: add qmp socket support
From: Ross Burton Add support for qmp sockets and defaults to unix:qmp.sock if unspecified Signed-off-by: Ross Burton Signed-off-by: Eilís 'pidge' Ní Fhlannagáin --- scripts/runqemu | 11 +++ 1 file changed, 11 insertions(+) diff --git a/scripts/runqemu b/scripts/runqemu index 18aeb7f5f0c..6a5a6451daf 100755 --- a/scripts/runqemu +++ b/scripts/runqemu @@ -84,6 +84,7 @@ of the following environment variables (in any order): publicvnc - enable a VNC server open to all hosts audio - enable audio guestagent - enable guest agent communication +qmp= - create a QMP socket (defaults to unix:qmp.sock if unspecified) [*/]ovmf* - OVMF firmware file or base name for booting with UEFI tcpserial= - specify tcp serial port number qemuparams= - specify custom parameters to QEMU @@ -221,6 +222,7 @@ class BaseConfig(object): self.cleaned = False # Files to cleanup after run self.cleanup_files = [] +self.qmp = None self.guest_agent = False self.guest_agent_sockpath = '/tmp/qga.sock' @@ -536,6 +538,10 @@ to your build configuration. self.qemu_opt_script += ' -vnc :0' elif arg == 'guestagent': self.guest_agent = True +elif arg == "qmp": +self.qmp = "unix:qmp.sock" +elif arg.startswith("qmp="): +self.qmp = arg[len('qmp='):] elif arg.startswith('guestagent-sockpath='): self.guest_agent_sockpath = '%s' % arg[len('guestagent-sockpath='):] elif arg.startswith('tcpserial='): @@ -1406,6 +1412,10 @@ to your build configuration. self.qemu_opt += ' -device virtio-serial ' self.qemu_opt += ' -device virtserialport,chardev=qga0,name=org.qemu.guest_agent.0 ' +def setup_qmp(self): +if self.qmp: +self.qemu_opt += " -qmp %s,server,nowait" % self.qmp + def setup_vga(self): if self.nographic == True: if self.sdl == True: @@ -1547,6 +1557,7 @@ to your build configuration. self.qemu_opt += " -snapshot" self.setup_guest_agent() +self.setup_qmp() self.setup_serial() self.setup_vga() -- 2.34.1 -=-=-=-=-=-=-=-=-=-=-=- Links: You receive all messages sent to this group. View/Reply Online (#191961): https://lists.openembedded.org/g/openembedded-core/message/191961 Mute This Topic: https://lists.openembedded.org/mt/103035078/21656 Group Owner: openembedded-core+ow...@lists.openembedded.org Unsubscribe: https://lists.openembedded.org/g/openembedded-core/unsub [arch...@mail-archive.com] -=-=-=-=-=-=-=-=-=-=-=-
[OE-core] [PATCH 0/4] Image screenshot testing proof of concept
This patch series is based off of earlier work from Ross Burton to enable QMP based screenshot testing. Eilís 'pidge' Ní Fhlannagáin (1): login.py: Proof of concept for screenshot testcases Ross Burton (3): qemurunner: remove unused import python3-qemu-qmp: Add recipe runqemu: add qmp socket support .../core-image-sato-qemux86-64.png| Bin 0 -> 46986 bytes meta/lib/oeqa/runtime/cases/login.py | 39 ++ meta/lib/oeqa/utils/qemurunner.py | 1 - .../python/python3-qemu-qmp_0.0.2.bb | 14 +++ scripts/runqemu | 11 + 5 files changed, 64 insertions(+), 1 deletion(-) create mode 100644 meta/files/image-tests/core-image-sato-qemux86-64.png create mode 100644 meta/lib/oeqa/runtime/cases/login.py create mode 100644 meta/recipes-devtools/python/python3-qemu-qmp_0.0.2.bb -- 2.34.1 -=-=-=-=-=-=-=-=-=-=-=- Links: You receive all messages sent to this group. View/Reply Online (#191958): https://lists.openembedded.org/g/openembedded-core/message/191958 Mute This Topic: https://lists.openembedded.org/mt/103035075/21656 Group Owner: openembedded-core+ow...@lists.openembedded.org Unsubscribe: https://lists.openembedded.org/g/openembedded-core/unsub [arch...@mail-archive.com] -=-=-=-=-=-=-=-=-=-=-=-
[OE-core] [PATCH 1/4] qemurunner: remove unused import
From: Ross Burton Removes unused logging import Signed-off-by: Ross Burton Signed-off-by: Eilís 'pidge' Ní Fhlannagáin --- meta/lib/oeqa/utils/qemurunner.py | 1 - 1 file changed, 1 deletion(-) diff --git a/meta/lib/oeqa/utils/qemurunner.py b/meta/lib/oeqa/utils/qemurunner.py index 29fe2719762..ee367078000 100644 --- a/meta/lib/oeqa/utils/qemurunner.py +++ b/meta/lib/oeqa/utils/qemurunner.py @@ -19,7 +19,6 @@ import errno import string import threading import codecs -import logging import tempfile from collections import defaultdict import importlib -- 2.34.1 -=-=-=-=-=-=-=-=-=-=-=- Links: You receive all messages sent to this group. View/Reply Online (#191959): https://lists.openembedded.org/g/openembedded-core/message/191959 Mute This Topic: https://lists.openembedded.org/mt/103035076/21656 Group Owner: openembedded-core+ow...@lists.openembedded.org Unsubscribe: https://lists.openembedded.org/g/openembedded-core/unsub [arch...@mail-archive.com] -=-=-=-=-=-=-=-=-=-=-=-
[OE-core] [PATCH 2/4] python3-qemu-qmp: Add recipe
From: Ross Burton Add a recipe for python QEMU Monitor Protocol. This will be needed for qemu screendumps for qemu screendump testing. Signed-off-by: Ross Burton Signed-off-by: Eilís 'pidge' Ní Fhlannagáin --- .../python/python3-qemu-qmp_0.0.2.bb | 14 ++ 1 file changed, 14 insertions(+) create mode 100644 meta/recipes-devtools/python/python3-qemu-qmp_0.0.2.bb diff --git a/meta/recipes-devtools/python/python3-qemu-qmp_0.0.2.bb b/meta/recipes-devtools/python/python3-qemu-qmp_0.0.2.bb new file mode 100644 index 000..faa0cc69738 --- /dev/null +++ b/meta/recipes-devtools/python/python3-qemu-qmp_0.0.2.bb @@ -0,0 +1,14 @@ +SUMMARY = "asyncio library for communicating with QEMU Monitor Protocol (QMP) servers" +LICENSE = "LGPLv2+ & GPLv2" +LIC_FILES_CHKSUM = "file://LICENSE;md5=4cf66a4984120007c9881cc871cf49db \ +file://LICENSE_GPL2;md5=441c28d2cf86e15a37fa47e15a72fbac" + +SRC_URI[sha256sum] = "c918e9e3ae09abdf70c7ece67637a93ac4583d940bbf48d24ff77987f74f1b8b" + +inherit pypi python_setuptools_build_meta + +PYPI_PACKAGE = "qemu.qmp" + +DEPENDS += "python3-setuptools-scm-native" + +BBCLASSEXTEND = "native nativesdk" -- 2.34.1 -=-=-=-=-=-=-=-=-=-=-=- Links: You receive all messages sent to this group. View/Reply Online (#191960): https://lists.openembedded.org/g/openembedded-core/message/191960 Mute This Topic: https://lists.openembedded.org/mt/103035077/21656 Group Owner: openembedded-core+ow...@lists.openembedded.org Unsubscribe: https://lists.openembedded.org/g/openembedded-core/unsub [arch...@mail-archive.com] -=-=-=-=-=-=-=-=-=-=-=-
[OE-core] [PATCH] subports: Use _GNU_SOURCE
[YOCTO #15074] The syncfs probe in ports/unix/subports was failing if the compiler does not support implicit function declarations. syncfs is protected and requires _GNU_SOURCE, so the answer here is to pull it in. Signed-off-by: Eilís 'pidge' Ní Fhlannagáin --- .../pseudo/files/syncfs-probe.patch | 44 +++ meta/recipes-devtools/pseudo/pseudo_git.bb| 1 + 2 files changed, 45 insertions(+) create mode 100644 meta/recipes-devtools/pseudo/files/syncfs-probe.patch diff --git a/meta/recipes-devtools/pseudo/files/syncfs-probe.patch b/meta/recipes-devtools/pseudo/files/syncfs-probe.patch new file mode 100644 index 000..23f01673e3c --- /dev/null +++ b/meta/recipes-devtools/pseudo/files/syncfs-probe.patch @@ -0,0 +1,44 @@ +From e38b1fec2eb4a5dcefafdab7f1a240966f3632f1 Mon Sep 17 00:00:00 2001 +From: =?UTF-8?q?Eil=C3=ADs=20=27pidge=27=20N=C3=AD=20Fhlannag=C3=A1in?= + +Date: Wed, 6 Dec 2023 13:00:29 + +Subject: [PATCH] subports: Add _GNU_SOURCE +MIME-Version: 1.0 +Content-Type: text/plain; charset=UTF-8 +Content-Transfer-Encoding: 8bit + +[YOCTO #15074] + +The syncfs probe in ports/unix/subports was failing if the compiler does not +support implicit function declarations. syncfs is protected and requires +_GNU_SOURCE, so the answer here is to pull it in. + +Signed-off-by: Eilís 'pidge' Ní Fhlannagáin + +--- +Upstream-Status: Pending + + ports/unix/subports | 2 ++ + 1 file changed, 2 insertions(+) + +diff --git a/ports/unix/subports b/ports/unix/subports +index e41b036..bd5a2f6 100755 +--- a/ports/unix/subports b/ports/unix/subports +@@ -1,11 +1,13 @@ + #!/bin/sh + cat > dummy.c < + int main(void) { + syncfs(0); + return 0; + } + EOF ++ + if ${CC} -o dummy dummy.c > /dev/null 2>&1; then + echo "unix/syncfs" + fi +-- +2.34.1 + diff --git a/meta/recipes-devtools/pseudo/pseudo_git.bb b/meta/recipes-devtools/pseudo/pseudo_git.bb index 4a894ebdd0b..3ffbc311b74 100644 --- a/meta/recipes-devtools/pseudo/pseudo_git.bb +++ b/meta/recipes-devtools/pseudo/pseudo_git.bb @@ -2,6 +2,7 @@ require pseudo.inc SRC_URI = "git://git.yoctoproject.org/pseudo;branch=master;protocol=https \ file://0001-configure-Prune-PIE-flags.patch \ + file://syncfs-probe.patch \ file://glibc238.patch \ file://fallback-passwd \ file://fallback-group \ -- 2.34.1 -=-=-=-=-=-=-=-=-=-=-=- Links: You receive all messages sent to this group. View/Reply Online (#191957): https://lists.openembedded.org/g/openembedded-core/message/191957 Mute This Topic: https://lists.openembedded.org/mt/103034986/21656 Group Owner: openembedded-core+ow...@lists.openembedded.org Unsubscribe: https://lists.openembedded.org/g/openembedded-core/unsub [arch...@mail-archive.com] -=-=-=-=-=-=-=-=-=-=-=-
[OE-Core][PATCH 3/3] cargo: Add CARGO_LOCK_PATH for path to Cargo.lock
When building a workspace enabled project, the Cargo.lock is found at the root of the project, not alongside the Cargo.toml. Expose CARGO_LOCK_PATH so it can be explicitly configured. Signed-off-by: Alex Kiernan --- meta/classes-recipe/cargo_common.bbclass | 6 -- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/meta/classes-recipe/cargo_common.bbclass b/meta/classes-recipe/cargo_common.bbclass index c330c122a9d3..a236628664c8 100644 --- a/meta/classes-recipe/cargo_common.bbclass +++ b/meta/classes-recipe/cargo_common.bbclass @@ -40,6 +40,9 @@ CARGO_SRC_DIR ?= "" # The actual path to the Cargo.toml CARGO_MANIFEST_PATH ?= "${S}/${CARGO_SRC_DIR}/Cargo.toml" +# Path to Cargo.lock +CARGO_LOCK_PATH ?= "${@ os.path.join(os.path.dirname(d.getVar('CARGO_MANIFEST_PATH', True)), 'Cargo.lock')}" + CARGO_RUST_TARGET_CCLD ?= "${RUST_TARGET_CCLD}" cargo_common_do_configure () { mkdir -p ${CARGO_HOME}/bitbake @@ -168,8 +171,7 @@ python cargo_common_do_patch_paths() { # here is better than letting cargo tell (in case the file is missing) # "Cargo.lock should be modified but --frozen was given" -manifest_path = d.getVar("CARGO_MANIFEST_PATH", True) -lockfile = os.path.join(os.path.dirname(manifest_path), "Cargo.lock") +lockfile = d.getVar("CARGO_LOCK_PATH", True) if not os.path.exists(lockfile): bb.fatal(f"{lockfile} file doesn't exist") -- 2.39.0 -=-=-=-=-=-=-=-=-=-=-=- Links: You receive all messages sent to this group. View/Reply Online (#191956): https://lists.openembedded.org/g/openembedded-core/message/191956 Mute This Topic: https://lists.openembedded.org/mt/103034030/21656 Group Owner: openembedded-core+ow...@lists.openembedded.org Unsubscribe: https://lists.openembedded.org/g/openembedded-core/unsub [arch...@mail-archive.com] -=-=-=-=-=-=-=-=-=-=-=-
[OE-Core][PATCH 2/3] cargo: Move CARGO_MANIFEST_PATH/CARGO_SRC_DIR to cargo_common
cargo_common_do_configure uses CARGO_MANIFEST_PATH (which depends on CARGO_SRC_DIR), but their definition was in cargo.bbclass. Match the other variables here and change to default values, rather than weak defaults. Signed-off-by: Alex Kiernan --- meta/classes-recipe/cargo.bbclass| 7 --- meta/classes-recipe/cargo_common.bbclass | 7 +++ 2 files changed, 7 insertions(+), 7 deletions(-) diff --git a/meta/classes-recipe/cargo.bbclass b/meta/classes-recipe/cargo.bbclass index 96a74e2ef1ec..0829a58dd90f 100644 --- a/meta/classes-recipe/cargo.bbclass +++ b/meta/classes-recipe/cargo.bbclass @@ -30,13 +30,6 @@ B = "${WORKDIR}/build" # where the issue occured export RUST_BACKTRACE = "1" -# The directory of the Cargo.toml relative to the root directory, per default -# assume there's a Cargo.toml directly in the root directory -CARGO_SRC_DIR ??= "" - -# The actual path to the Cargo.toml -CARGO_MANIFEST_PATH ??= "${S}/${CARGO_SRC_DIR}/Cargo.toml" - RUSTFLAGS ??= "" BUILD_MODE = "${@['--release', ''][d.getVar('DEBUG_BUILD') == '1']}" # --frozen flag will prevent network access (which is required since only diff --git a/meta/classes-recipe/cargo_common.bbclass b/meta/classes-recipe/cargo_common.bbclass index bf298e96c745..c330c122a9d3 100644 --- a/meta/classes-recipe/cargo_common.bbclass +++ b/meta/classes-recipe/cargo_common.bbclass @@ -33,6 +33,13 @@ CARGO_DISABLE_BITBAKE_VENDORING ?= "0" # Used by libstd-rs to point to the vendor dir included in rustc src CARGO_VENDORING_DIRECTORY ?= "${CARGO_HOME}/bitbake" +# The directory of the Cargo.toml relative to the root directory, per default +# assume there's a Cargo.toml directly in the root directory +CARGO_SRC_DIR ?= "" + +# The actual path to the Cargo.toml +CARGO_MANIFEST_PATH ?= "${S}/${CARGO_SRC_DIR}/Cargo.toml" + CARGO_RUST_TARGET_CCLD ?= "${RUST_TARGET_CCLD}" cargo_common_do_configure () { mkdir -p ${CARGO_HOME}/bitbake -- 2.39.0 -=-=-=-=-=-=-=-=-=-=-=- Links: You receive all messages sent to this group. View/Reply Online (#191955): https://lists.openembedded.org/g/openembedded-core/message/191955 Mute This Topic: https://lists.openembedded.org/mt/103034028/21656 Group Owner: openembedded-core+ow...@lists.openembedded.org Unsubscribe: https://lists.openembedded.org/g/openembedded-core/unsub [arch...@mail-archive.com] -=-=-=-=-=-=-=-=-=-=-=-
[OE-Core][PATCH 1/3] cargo: Rename MANIFEST_PATH -> CARGO_MANIFEST_PATH
This variable is a piece of recipe configurable interface, scope it with the class name to make that clear. Signed-off-by: Alex Kiernan --- meta/classes-recipe/cargo.bbclass| 4 ++-- meta/classes-recipe/cargo_common.bbclass | 2 +- meta/classes-recipe/ptest-cargo.bbclass | 2 +- 3 files changed, 4 insertions(+), 4 deletions(-) diff --git a/meta/classes-recipe/cargo.bbclass b/meta/classes-recipe/cargo.bbclass index 8c0b92df8d33..96a74e2ef1ec 100644 --- a/meta/classes-recipe/cargo.bbclass +++ b/meta/classes-recipe/cargo.bbclass @@ -35,7 +35,7 @@ export RUST_BACKTRACE = "1" CARGO_SRC_DIR ??= "" # The actual path to the Cargo.toml -MANIFEST_PATH ??= "${S}/${CARGO_SRC_DIR}/Cargo.toml" +CARGO_MANIFEST_PATH ??= "${S}/${CARGO_SRC_DIR}/Cargo.toml" RUSTFLAGS ??= "" BUILD_MODE = "${@['--release', ''][d.getVar('DEBUG_BUILD') == '1']}" @@ -44,7 +44,7 @@ BUILD_MODE = "${@['--release', ''][d.getVar('DEBUG_BUILD') == '1']}" # and will require an up to date Cargo.lock file. # This force the package being built to already ship a Cargo.lock, in the end # this is what we want, at least, for reproducibility of the build. -CARGO_BUILD_FLAGS = "-v --frozen --target ${RUST_HOST_SYS} ${BUILD_MODE} --manifest-path=${MANIFEST_PATH}" +CARGO_BUILD_FLAGS = "-v --frozen --target ${RUST_HOST_SYS} ${BUILD_MODE} --manifest-path=${CARGO_MANIFEST_PATH}" # This is based on the content of CARGO_BUILD_FLAGS and generally will need to # change if CARGO_BUILD_FLAGS changes. diff --git a/meta/classes-recipe/cargo_common.bbclass b/meta/classes-recipe/cargo_common.bbclass index b732a1bd9538..bf298e96c745 100644 --- a/meta/classes-recipe/cargo_common.bbclass +++ b/meta/classes-recipe/cargo_common.bbclass @@ -161,7 +161,7 @@ python cargo_common_do_patch_paths() { # here is better than letting cargo tell (in case the file is missing) # "Cargo.lock should be modified but --frozen was given" -manifest_path = d.getVar("MANIFEST_PATH", True) +manifest_path = d.getVar("CARGO_MANIFEST_PATH", True) lockfile = os.path.join(os.path.dirname(manifest_path), "Cargo.lock") if not os.path.exists(lockfile): bb.fatal(f"{lockfile} file doesn't exist") diff --git a/meta/classes-recipe/ptest-cargo.bbclass b/meta/classes-recipe/ptest-cargo.bbclass index ff57be852508..c46df362bfee 100644 --- a/meta/classes-recipe/ptest-cargo.bbclass +++ b/meta/classes-recipe/ptest-cargo.bbclass @@ -15,7 +15,7 @@ python do_compile_ptest_cargo() { cargo = bb.utils.which(d.getVar("PATH"), d.getVar("CARGO", True)) cargo_build_flags = d.getVar("CARGO_BUILD_FLAGS", True) rust_flags = d.getVar("RUSTFLAGS", True) -manifest_path = d.getVar("MANIFEST_PATH", True) +manifest_path = d.getVar("CARGO_MANIFEST_PATH", True) project_manifest_path = os.path.normpath(manifest_path) manifest_dir = os.path.dirname(manifest_path) -- 2.39.0 -=-=-=-=-=-=-=-=-=-=-=- Links: You receive all messages sent to this group. View/Reply Online (#191954): https://lists.openembedded.org/g/openembedded-core/message/191954 Mute This Topic: https://lists.openembedded.org/mt/103034027/21656 Group Owner: openembedded-core+ow...@lists.openembedded.org Unsubscribe: https://lists.openembedded.org/g/openembedded-core/unsub [arch...@mail-archive.com] -=-=-=-=-=-=-=-=-=-=-=-
Re: [OE-core] [PATCH 1/3] useradd: Fix issues with useradd dependencies
On Thu, 2023-12-07 at 13:58 +0100, Alexander Kanavin wrote: > On Thu, 7 Dec 2023 at 13:45, Eilís 'pidge' Ní Fhlannagáin > wrote: > > -USERADDSETSCENEDEPS:class-target = > > "${MLPREFIX}base-passwd:do_populate_sysroot_setscene > > pseudo-native:do_populate_sysroot_setscene > > shadow-native:do_populate_sysroot_setscene > > ${MLPREFIX}shadow-sysroot:do_populate_sysroot_setscene" > > +USERADDSETSCENEDEPS:class-target = > > "${MLPREFIX}base-passwd:do_populate_sysroot_setscene > > pseudo-native:do_populate_sysroot_setscene > > shadow-native:do_populate_sysroot_setscene > > ${MLPREFIX}shadow-sysroot:do_populate_sysroot_setscene ${@' > > '.join(['%s:do_populate_sysroot_setscene' % pkg for pkg in > > d.getVar("USERADD_DEPENDS").split()])}" > > I'd like to clarify: do all these recent fixes mean that we can also > add dynamic library dependencies of shadow-native into this list (it > becomes an issue with latest versions of shadow currently not in > oe-core)? > > Specifically, this commit > > https://git.yoctoproject.org/poky-contrib/commit/?h=akanavin/package-version-updates=9fdbe321fa53785cc35bd1bb4054366383ef20e5 > > doing > > -USERADDSETSCENEDEPS:class-target = > "${MLPREFIX}base-passwd:do_populate_sysroot_setscene > pseudo-native:do_populate_sysroot_setscene > shadow-native:do_populate_sysroot_setscene > ${MLPREFIX}shadow-sysroot:do_populate_sysroot_setscene" > +USERADDSETSCENEDEPS:class-target = > "${MLPREFIX}base-passwd:do_populate_sysroot_setscene \ > + pseudo-native:do_populate_sysroot_setscene \ > + shadow-native:do_populate_sysroot_setscene \ > + attr-native:do_populate_sysroot_setscene \ > + libbsd-native:do_populate_sysroot_setscene \ > + libmd-native:do_populate_sysroot_setscene \ > + ${MLPREFIX}shadow-sysroot:do_populate_sysroot_setscene" > > has been rejected by RP with the suggestion that shadow should be > linked statically, but now I'm not sure if the argument still holds. After my recent change, we could in theory do this as bitbake might be able to make it work. It does run the risk of circular dependencies and these setscene inter-task dependencies are *horrible* in general from an sstate perspective though as my other comments about these dependencies leading to poor behaviour still stand. To be clear about what you're saying above, you're saying that if any of those native dependencies are missing, we cannot use/install the sstate object. We have to defer installing that sstate until all the others are downloaded and available too. My preference is still to statically link shadow to avoid this pretty horrible side effect. Cheers, Richard -=-=-=-=-=-=-=-=-=-=-=- Links: You receive all messages sent to this group. View/Reply Online (#191953): https://lists.openembedded.org/g/openembedded-core/message/191953 Mute This Topic: https://lists.openembedded.org/mt/103033148/21656 Group Owner: openembedded-core+ow...@lists.openembedded.org Unsubscribe: https://lists.openembedded.org/g/openembedded-core/unsub [arch...@mail-archive.com] -=-=-=-=-=-=-=-=-=-=-=-
Re: [OE-core] [PATCH 1/3] useradd: Fix issues with useradd dependencies
On Thu, 7 Dec 2023 at 13:45, Eilís 'pidge' Ní Fhlannagáin wrote: > -USERADDSETSCENEDEPS:class-target = > "${MLPREFIX}base-passwd:do_populate_sysroot_setscene > pseudo-native:do_populate_sysroot_setscene > shadow-native:do_populate_sysroot_setscene > ${MLPREFIX}shadow-sysroot:do_populate_sysroot_setscene" > +USERADDSETSCENEDEPS:class-target = > "${MLPREFIX}base-passwd:do_populate_sysroot_setscene > pseudo-native:do_populate_sysroot_setscene > shadow-native:do_populate_sysroot_setscene > ${MLPREFIX}shadow-sysroot:do_populate_sysroot_setscene ${@' > '.join(['%s:do_populate_sysroot_setscene' % pkg for pkg in > d.getVar("USERADD_DEPENDS").split()])}" I'd like to clarify: do all these recent fixes mean that we can also add dynamic library dependencies of shadow-native into this list (it becomes an issue with latest versions of shadow currently not in oe-core)? Specifically, this commit https://git.yoctoproject.org/poky-contrib/commit/?h=akanavin/package-version-updates=9fdbe321fa53785cc35bd1bb4054366383ef20e5 doing -USERADDSETSCENEDEPS:class-target = "${MLPREFIX}base-passwd:do_populate_sysroot_setscene pseudo-native:do_populate_sysroot_setscene shadow-native:do_populate_sysroot_setscene ${MLPREFIX}shadow-sysroot:do_populate_sysroot_setscene" +USERADDSETSCENEDEPS:class-target = "${MLPREFIX}base-passwd:do_populate_sysroot_setscene \ + pseudo-native:do_populate_sysroot_setscene \ + shadow-native:do_populate_sysroot_setscene \ + attr-native:do_populate_sysroot_setscene \ + libbsd-native:do_populate_sysroot_setscene \ + libmd-native:do_populate_sysroot_setscene \ + ${MLPREFIX}shadow-sysroot:do_populate_sysroot_setscene" has been rejected by RP with the suggestion that shadow should be linked statically, but now I'm not sure if the argument still holds. Alex -=-=-=-=-=-=-=-=-=-=-=- Links: You receive all messages sent to this group. View/Reply Online (#191952): https://lists.openembedded.org/g/openembedded-core/message/191952 Mute This Topic: https://lists.openembedded.org/mt/103033148/21656 Group Owner: openembedded-core+ow...@lists.openembedded.org Unsubscribe: https://lists.openembedded.org/g/openembedded-core/unsub [arch...@mail-archive.com] -=-=-=-=-=-=-=-=-=-=-=-
[OE-core] [PATCH 1/3] useradd: Fix issues with useradd dependencies
If recipe A requires the useradd actions of recipe B we need to ensure that recipe B is part of the recipe A dependancy chain. In order to do that, we introduce USERADD_DEPENDS. This makes sure that the do_populate_sysroot_setscene of recipe B exists for recipe A in case of a missing TMPDIR. This requires changes made in runqueue.py by RP. This commit along with the runqueue fixes effects: Bug 13419 - recipes that add users to groups cannot rely on other recipes creating those groups (when population from sstate happens) Bug 13904 - do_prepare_recipe_sysroot: postinst-useradd-* does not run in order of dependency and sometimes fails Bug 13279 - Make sure users/groups exist for package_write_* tasks Bug 15084 - For some reason using of same user in two recipes does not work properly I've included the start of self-testing for useradd by adding tests for 13419 (which ends up testing 13904, 13279, 15084 by virtue of them all having the same root cause) I've also added (and disabled), a test for 14961 - addtask between do_populate_sysroot and do_package breaks useradd class. A fix is still needed for this, but that fix is a better error message that stops people from doing this. Signed-off-by: Eilís 'pidge' Ní Fhlannagáin --- .../selftest-users/creategroup1.bb| 32 ++ .../selftest-users/creategroup2.bb| 33 +++ .../selftest-users/useraddbadtask.bb | 20 +++ meta/classes/useradd.bbclass | 4 ++- .../lib/oeqa/selftest/cases/usergrouptests.py | 26 +++ 5 files changed, 114 insertions(+), 1 deletion(-) create mode 100644 meta-selftest/recipes-test/selftest-users/creategroup1.bb create mode 100644 meta-selftest/recipes-test/selftest-users/creategroup2.bb create mode 100644 meta-selftest/recipes-test/selftest-users/useraddbadtask.bb create mode 100644 meta/lib/oeqa/selftest/cases/usergrouptests.py diff --git a/meta-selftest/recipes-test/selftest-users/creategroup1.bb b/meta-selftest/recipes-test/selftest-users/creategroup1.bb new file mode 100644 index 000..ebbbfaa83d3 --- /dev/null +++ b/meta-selftest/recipes-test/selftest-users/creategroup1.bb @@ -0,0 +1,32 @@ +SUMMARY = "creategroup pt 1" +LIC_FILES_CHKSUM = "file://${COMMON_LICENSE_DIR}/MIT;md5=0835ade698e0bcf8506ecda2f7b4f302" + +LICENSE = "MIT" + +DEPENDS = "coreutils-native" + +S = "${WORKDIR}" + +inherit useradd allarch + +USERADD_PACKAGES = "${PN}" +USERADD_PARAM:${PN} = "-u --gid grouptest gt1" +GROUPADD_PARAM:${PN} = "-r grouptest" + +TESTDIR = "${D}${sysconfdir}/creategroup" + +do_install() { + install -d ${TESTDIR} + install -d ${TESTDIR}/dir + touch${TESTDIR}/file + ln -s ./file ${TESTDIR}/symlink + install -d ${TESTDIR}/fifotest + mkfifo ${TESTDIR}/fifotest/fifo + + chowngt1:grouptest ${TESTDIR}/file + chown -R gt1:grouptest ${TESTDIR}/dir + chown -h gt1:grouptest ${TESTDIR}/symlink + chown -R gt1:grouptest ${TESTDIR}/fifotest +} + +FILES:${PN} = "${sysconfdir}/creategroup/*" diff --git a/meta-selftest/recipes-test/selftest-users/creategroup2.bb b/meta-selftest/recipes-test/selftest-users/creategroup2.bb new file mode 100644 index 000..ef697f09b4d --- /dev/null +++ b/meta-selftest/recipes-test/selftest-users/creategroup2.bb @@ -0,0 +1,33 @@ +SUMMARY = "creategroup pt 2" +LIC_FILES_CHKSUM = "file://${COMMON_LICENSE_DIR}/MIT;md5=0835ade698e0bcf8506ecda2f7b4f302" + +LICENSE = "MIT" + +DEPENDS = "coreutils-native" +USERADD_DEPENDS = "creategroup1" + +S = "${WORKDIR}" + +inherit useradd allarch + +USERADD_PACKAGES = "${PN}" +USERADD_PARAM:${PN} = "-u 5556 --gid grouptest gt2" + +TESTDIR = "${D}${sysconfdir}/creategroup" + +do_install() { + install -d ${TESTDIR} + install -d ${TESTDIR}/dir + touch${TESTDIR}/file + ln -s ./file ${TESTDIR}/symlink + install -d ${TESTDIR}/fifotest + mkfifo ${TESTDIR}/fifotest/fifo + + chowngt2:grouptest ${TESTDIR}/file + chown -R gt2:grouptest ${TESTDIR}/dir + chown -h gt2:grouptest ${TESTDIR}/symlink + chown -R gt2:grouptest ${TESTDIR}/fifotest +} + +FILES:${PN} = "${sysconfdir}/creategroup/*" + diff --git a/meta-selftest/recipes-test/selftest-users/useraddbadtask.bb b/meta-selftest/recipes-test/selftest-users/useraddbadtask.bb new file mode 100644 index 000..99e04a80b34 --- /dev/null +++ b/meta-selftest/recipes-test/selftest-users/useraddbadtask.bb @@ -0,0 +1,20 @@ +SUMMARY = "UserAddBadTask" +LIC_FILES_CHKSUM = "file://${COMMON_LICENSE_DIR}/MIT;md5=0835ade698e0bcf8506ecda2f7b4f302" + +LICENSE = "MIT" + +DEPENDS:append = "coreutils-native" + +S = "${WORKDIR}" + +inherit useradd allarch + +USERADD_PACKAGES = "${PN}" +USERADD_PARAM:${PN} = "-u --gid groupaddtask useraddtask" +GROUPADD_PARAM:${PN} = "-r groupaddtask" + +do_badthingshappen() { + echo "foo" +} + +addtask badthingshappen after
[OE-core] [PATCH 3/3] variables.rst: Add USERADD_DEPENDS
Adding USERADD_DEPENDS to the variables document Signed-off-by: Eilís 'pidge' Ní Fhlannagáin --- documentation/ref-manual/variables.rst | 15 +++ 1 file changed, 15 insertions(+) diff --git a/documentation/ref-manual/variables.rst b/documentation/ref-manual/variables.rst index b394d310990..9ec0ce4b4ca 100644 --- a/documentation/ref-manual/variables.rst +++ b/documentation/ref-manual/variables.rst @@ -9736,6 +9736,21 @@ system and gives an overview of their function and contents. ``meta-poky/conf/templates/default/local.conf.sample`` in the :term:`Source Directory`. + :term:`USERADD_DEPENDS` + Lists a recipe's USERADD dependencies. These are dependencies on + other recipes whose create users and groups via useradd.bbclass and are + needed by the recipe at build time. This variable is now required for + recipes that rely on other recipes for part of their useradd. + + As an example, consider a recipe ``foo``. Recipe ``bar`` creates a group + that foo requires for it's useradd tasks. In order to ensure that the + useradd tasks exist for foo, we add the the following assignment:: + + $USERADD_DEPENDS = "bar" + + The practical effect of this assignment is that bar's sysroot_setscene is + added to :term:`USERADDSETSCENEDEPS` variable. + :term:`USERADD_ERROR_DYNAMIC` If set to ``error``, forces the OpenEmbedded build system to produce an error if the user identification (``uid``) and group -- 2.34.1 -=-=-=-=-=-=-=-=-=-=-=- Links: You receive all messages sent to this group. View/Reply Online (#191951): https://lists.openembedded.org/g/openembedded-core/message/191951 Mute This Topic: https://lists.openembedded.org/mt/103033150/21656 Group Owner: openembedded-core+ow...@lists.openembedded.org Unsubscribe: https://lists.openembedded.org/g/openembedded-core/unsub [arch...@mail-archive.com] -=-=-=-=-=-=-=-=-=-=-=-
[OE-core] [PATCH 0/3] useradd fixes, tests and documentation
This patch series fixes and/or tests for some issues in useradd dependencies. It adds a new variable "USERADD_DEPENDS" that is required now for recipes that have dependencies on other recipes useradd. Fixes/Tests: Bug 13419 - recipes that add users to groups cannot rely on other recipes creating those groups (when population from sstate happens) Bug 13904 - do_prepare_recipe_sysroot: postinst-useradd-* does not run in order of dependency and sometimes fails Bug 13279 - Make sure users/groups exist for package_write_* tasks Bug 15084 - For some reason using of same user in two recipes does not work properly Tests: Bug 14961 - addtask between do_populate_sysroot and do_package breaks useradd class Documentation for useradd is also included. Eilís 'pidge' Ní Fhlannagáin (3): useradd: Fix issues with useradd dependencies usergrouptests.py: Add test for switching between static-ids variables.rst: Add USERADD_DEPENDS documentation/ref-manual/variables.rst| 15 + .../selftest-users/creategroup1.bb| 32 +++ .../selftest-users/creategroup2.bb| 33 +++ .../selftest-users/useraddbadtask.bb | 20 +++ meta/classes/useradd.bbclass | 4 +- .../lib/oeqa/selftest/cases/usergrouptests.py | 55 +++ 6 files changed, 158 insertions(+), 1 deletion(-) create mode 100644 meta-selftest/recipes-test/selftest-users/creategroup1.bb create mode 100644 meta-selftest/recipes-test/selftest-users/creategroup2.bb create mode 100644 meta-selftest/recipes-test/selftest-users/useraddbadtask.bb create mode 100644 meta/lib/oeqa/selftest/cases/usergrouptests.py -- 2.34.1 -=-=-=-=-=-=-=-=-=-=-=- Links: You receive all messages sent to this group. View/Reply Online (#191948): https://lists.openembedded.org/g/openembedded-core/message/191948 Mute This Topic: https://lists.openembedded.org/mt/103033147/21656 Group Owner: openembedded-core+ow...@lists.openembedded.org Unsubscribe: https://lists.openembedded.org/g/openembedded-core/unsub [arch...@mail-archive.com] -=-=-=-=-=-=-=-=-=-=-=-
[OE-core] [PATCH 2/3] usergrouptests.py: Add test for switching between static-ids
This test is related to https://bugzilla.yoctoproject.org/show_bug.cgi?id=12107 At the moment it doesn't seem to be able to actually replicate this issue in the bug, which tells me it's likely fixed. Signed-off-by: Eilís 'pidge' Ní Fhlannagáin --- .../lib/oeqa/selftest/cases/usergrouptests.py | 45 +++ 1 file changed, 37 insertions(+), 8 deletions(-) diff --git a/meta/lib/oeqa/selftest/cases/usergrouptests.py b/meta/lib/oeqa/selftest/cases/usergrouptests.py index a63fce54dc9..c74b5678d00 100644 --- a/meta/lib/oeqa/selftest/cases/usergrouptests.py +++ b/meta/lib/oeqa/selftest/cases/usergrouptests.py @@ -5,11 +5,15 @@ # from oeqa.selftest.case import OESelftestTestCase -from oeqa.utils.commands import bitbake, get_bb_var -import bb.utils +from oeqa.utils.commands import bitbake, get_bb_var, get_test_layer import os class UserGroupTests(OESelftestTestCase): +def _test_add_task_between_p_sysroot_and_package(self): +self.logger.info("Building useraddbadtask") +# This is expected to fail due to bug #14961 +self.assertTrue(bitbake(' useraddbadtask -C fetch')) + def test_group_from_dep_package(self): self.logger.info("Building creategroup2") bitbake(' creategroup2 creategroup1') @@ -17,10 +21,35 @@ class UserGroupTests(OESelftestTestCase): self.logger.info("Packaging creategroup2") self.assertTrue(bitbake(' creategroup2 -c package')) -def _test_add_task_between_p_sysroot_and_package(self): -self.logger.info("Cleaning sstate for useraddbadtask") -#bitbake(' useraddbadtask -f -c cleansstate') -self.logger.info("Building useraddbadtask") -# This is expected to fail due to bug #14961 -self.assertTrue(bitbake(' useraddbadtask -C fetch')) +def test_static_useradd_from_dynamic(self): +metaselftestpath = get_test_layer() +self.logger.info("Building core-image-minimal to generate passwd/group file") +bitbake(' core-image-minimal') +self.logger.info("Setting up useradd-staticids") +repropassdir = os.path.join(metaselftestpath, "conf/include") +os.makedirs(repropassdir) +etcdir=os.path.join(os.path.join(os.path.join(get_bb_var("TMPDIR"), "work"), \ + os.path.join(get_bb_var("MACHINE").replace("-","_")+"-poky-linux", "core-image-minimal/1.0/rootfs/etc"))) +import shutil +shutil.copy(os.path.join(etcdir, "passwd"), os.path.join(repropassdir, "reproducable-passwd")) +shutil.copy(os.path.join(etcdir, "group"), os.path.join(repropassdir, "reproducable-group")) +# Copy the original local.conf +shutil.copyfile(os.path.join(os.environ.get('BUILDDIR'), 'conf/local.conf'), os.path.join(os.environ.get('BUILDDIR'), 'conf/local.conf.orig')) + +self.write_config("USERADDEXTENSION = \"useradd-staticids\"") +self.write_config("USERADD_ERROR_DYNAMIC ??= \"error\"") +self.write_config("USERADD_UID_TABLES += \"conf/include/reproducible-passwd\"") +self.write_config("USERADD_GID_TABLES += \"conf/include/reproducible-group\"") +self.logger.info("Rebuild with staticids") +bitbake(' core-image-minimal') +shutil.copyfile(os.path.join(os.environ.get('BUILDDIR'), 'conf/local.conf.orig'), os.path.join(os.environ.get('BUILDDIR'), 'conf/local.conf')) +self.logger.info("Rebuild without staticids") +bitbake(' core-image-minimal') +self.write_config("USERADDEXTENSION = \"useradd-staticids\"") +self.write_config("USERADD_ERROR_DYNAMIC ??= \"error\"") +self.write_config("USERADD_UID_TABLES += \"files/static-passwd\"") +self.write_config("USERADD_GID_TABLES += \"files/static-group\"") +self.logger.info("Rebuild with other staticids") +self.assertTrue(bitbake(' core-image-minimal')) + -- 2.34.1 -=-=-=-=-=-=-=-=-=-=-=- Links: You receive all messages sent to this group. View/Reply Online (#191950): https://lists.openembedded.org/g/openembedded-core/message/191950 Mute This Topic: https://lists.openembedded.org/mt/103033149/21656 Group Owner: openembedded-core+ow...@lists.openembedded.org Unsubscribe: https://lists.openembedded.org/g/openembedded-core/unsub [arch...@mail-archive.com] -=-=-=-=-=-=-=-=-=-=-=-
Re: [OE-core][mickledore][PATCH 1/1] python3-cryptography: fix CVE-2023-49083
Hi, Le 07/12/2023 à 12:58, Narpat Mali via lists.openembedded.org a écrit : > From: Narpat Mali > > cryptography is a package designed to expose cryptographic primitives > and recipes to Python developers. Calling `load_pem_pkcs7_certificates` > or `load_der_pkcs7_certificates` could lead to a NULL-pointer dereference > and segfault. Exploitation of this vulnerability poses a serious risk of > Denial of Service (DoS) for any application attempting to deserialize a > PKCS7 blob/certificate. The consequences extend to potential disruptions > in system availability and stability. This vulnerability has been patched > in version 41.0.6. > > References: > https://nvd.nist.gov/vuln/detail/CVE-2023-49083 > https://security-tracker.debian.org/tracker/CVE-2023-49083 > > Signed-off-by: Narpat Mali FYI, this is a patch for mickledore branch but this branch is EOL (End-of-life). See : https://wiki.yoctoproject.org/wiki/Stable_Release_and_LTS#LTS_.E2.80.9CMixin.E2.80.9D_repositories https://wiki.yoctoproject.org/wiki/Releases Regards, -- Yoann Congal Smile ECS - Tech Expert -=-=-=-=-=-=-=-=-=-=-=- Links: You receive all messages sent to this group. View/Reply Online (#191947): https://lists.openembedded.org/g/openembedded-core/message/191947 Mute This Topic: https://lists.openembedded.org/mt/103032561/21656 Group Owner: openembedded-core+ow...@lists.openembedded.org Unsubscribe: https://lists.openembedded.org/g/openembedded-core/unsub [arch...@mail-archive.com] -=-=-=-=-=-=-=-=-=-=-=-
Re: [OE-core] [PATCH v4] openssh: Add PACKAGECONFIG option to customize sshd mode
On Thu, Dec 7, 2023 at 2:10 AM Yu, Mingli wrote: > > Hi Alex, > > Thanks for your suggestion! > > Both sshd.socket and sshd.service belong to openssh-sshd package, so using > SYSTEMD_AUTO_ENABLE can't enable one of them, it just can enable both or > disable both. > Yes, it would need changes to support per-service presets, which I suspect would be generally useful. > Thanks, > > From: Alex Kiernan > Sent: Wednesday, December 6, 2023 18:37 > To: Yu, Mingli > Cc: openembedded-core@lists.openembedded.org > > Subject: Re: [OE-core] [PATCH v4] openssh: Add PACKAGECONFIG option to > customize sshd mode > > CAUTION: This email comes from a non Wind River email account! > Do not click links or open attachments unless you recognize the sender and > know the content is safe. > > On Wed, Dec 6, 2023 at 8:56 AM Yu, Mingli wrote: > > > > From: Mingli Yu > > > > Add systemd-sshd-socket-mode PACKAGECONFIG option to choose sshd.socket > > and systemd-sshd-service-mode PACKAGECONFIG option to choose installing > > sshd.service. > > > > The systemd-sshd-socket-mode PACKAGECONFIG option is enabled by default > > and user can customize the above two PACKAGECONFIG option to choose the > > sshd mode. > > > > Signed-off-by: Mingli Yu > > --- > > Changed in v3: > > rebase based on > > https://lore.kernel.org/all/20231201140947.792594-1-xiangyu.c...@eng.windriver.com/ > > > > Changed in v4: > > make it possible to install both sshd.socket and sshd.service > > I'm wondering if we should make SYSTEMD_AUTO_ENABLE settable per > service, so you could then install both and manage which one is active > with a preset. > > > .../openssh/openssh_9.5p1.bb | 25 ++- > > 1 file changed, 19 insertions(+), 6 deletions(-) > > > > diff --git a/meta/recipes-connectivity/openssh/openssh_9.5p1.bb > > b/meta/recipes-connectivity/openssh/openssh_9.5p1.bb > > index 2c1c821ea9..58dd030c64 100644 > > --- a/meta/recipes-connectivity/openssh/openssh_9.5p1.bb > > +++ b/meta/recipes-connectivity/openssh/openssh_9.5p1.bb > > @@ -50,16 +50,20 @@ INITSCRIPT_NAME:${PN}-sshd = "sshd" > > INITSCRIPT_PARAMS:${PN}-sshd = "defaults 9" > > > > SYSTEMD_PACKAGES = "${PN}-sshd" > > -SYSTEMD_SERVICE:${PN}-sshd = "sshd.socket sshd.service" > > +SYSTEMD_SERVICE:${PN}-sshd = > > "${@bb.utils.contains('PACKAGECONFIG','systemd-sshd-socket-mode','sshd.socket', > > '', d)} > > ${@bb.utils.contains('PACKAGECONFIG','systemd-sshd-service-mode','sshd.service', > > '', d)}" > > > > inherit autotools-brokensep ptest pkgconfig > > > > -PACKAGECONFIG ??= "${@bb.utils.filter('DISTRO_FEATURES', 'systemd', d)}" > > +# systemd-sshd-socket-mode means sshd.socket and systemd-sshd-service-mode > > +# corresponding to sshd.service > > +PACKAGECONFIG ??= "${@bb.utils.filter('DISTRO_FEATURES', 'systemd', d)} > > systemd-sshd-socket-mode" > > PACKAGECONFIG[kerberos] = "--with-kerberos5,--without-kerberos5,krb5" > > PACKAGECONFIG[ldns] = "--with-ldns,--without-ldns,ldns" > > PACKAGECONFIG[libedit] = "--with-libedit,--without-libedit,libedit" > > PACKAGECONFIG[manpages] = "--with-mantype=man,--with-mantype=cat" > > PACKAGECONFIG[systemd] = "--with-systemd,--without-systemd,systemd" > > +PACKAGECONFIG[systemd-sshd-socket-mode] = "" > > +PACKAGECONFIG[systemd-sshd-service-mode] = "" > > > > EXTRA_AUTORECONF += "--exclude=aclocal" > > > > @@ -124,15 +128,24 @@ do_install:append () { > > echo "HostKey /var/run/ssh/ssh_host_ed25519_key" >> > > ${D}${sysconfdir}/ssh/sshd_config_readonly > > > > install -d ${D}${systemd_system_unitdir} > > - install -c -m 0644 ${WORKDIR}/sshd.socket > > ${D}${systemd_system_unitdir} > > - install -c -m 0644 ${WORKDIR}/sshd.service > > ${D}${systemd_system_unitdir} > > - install -c -m 0644 ${WORKDIR}/sshd@.service > > ${D}${systemd_system_unitdir} > > + if > > ${@bb.utils.contains('PACKAGECONFIG','systemd-sshd-socket-mode','true','false',d)}; > > then > > + install -c -m 0644 ${WORKDIR}/sshd.socket > > ${D}${systemd_system_unitdir} > > + install -c -m 0644 ${WORKDIR}/sshd@.service > > ${D}${systemd_system_unitdir} > > + sed -i -e 's,@BASE_BINDIR@,${base_bindir},g' \ > > + -e 's,@SBINDIR@,${sbindir},g' \ > > + -e 's,@BINDIR@,${bindir},g' \ > > + -e 's,@LIBEXECDIR@,${libexecdir}/${BPN},g' \ > > +${D}${systemd_system_unitdir}/sshd.socket > > + fi > > + if > > ${@bb.utils.contains('PACKAGECONFIG','systemd-sshd-service-mode','true','false',d)}; > > then > > + install -c -m 0644 ${WORKDIR}/sshd.service > > ${D}${systemd_system_unitdir} > > + fi > > install -c -m 0644 ${WORKDIR}/sshdgenkeys.service > > ${D}${systemd_system_unitdir} > > sed -i -e 's,@BASE_BINDIR@,${base_bindir},g' \ > > -e 's,@SBINDIR@,${sbindir},g' \ > > -e 's,@BINDIR@,${bindir},g' \ > >
[OE-core][mickledore][PATCH 1/1] python3-cryptography: fix CVE-2023-49083
From: Narpat Mali cryptography is a package designed to expose cryptographic primitives and recipes to Python developers. Calling `load_pem_pkcs7_certificates` or `load_der_pkcs7_certificates` could lead to a NULL-pointer dereference and segfault. Exploitation of this vulnerability poses a serious risk of Denial of Service (DoS) for any application attempting to deserialize a PKCS7 blob/certificate. The consequences extend to potential disruptions in system availability and stability. This vulnerability has been patched in version 41.0.6. References: https://nvd.nist.gov/vuln/detail/CVE-2023-49083 https://security-tracker.debian.org/tracker/CVE-2023-49083 Signed-off-by: Narpat Mali --- .../python3-cryptography/CVE-2023-49083.patch | 53 +++ .../python/python3-cryptography_39.0.2.bb | 1 + 2 files changed, 54 insertions(+) create mode 100644 meta/recipes-devtools/python/python3-cryptography/CVE-2023-49083.patch diff --git a/meta/recipes-devtools/python/python3-cryptography/CVE-2023-49083.patch b/meta/recipes-devtools/python/python3-cryptography/CVE-2023-49083.patch new file mode 100644 index 00..3870529ecc --- /dev/null +++ b/meta/recipes-devtools/python/python3-cryptography/CVE-2023-49083.patch @@ -0,0 +1,53 @@ +From df089065abde07b9b293c10f4d5c96cd99a1 Mon Sep 17 00:00:00 2001 +From: Alex Gaynor +Date: Thu, 7 Dec 2023 09:33:46 + +Subject: [PATCH] Fixed crash when loading a PKCS#7 bundle with no certificates + (#9926) + +CVE: CVE-2023-49083 + +Upstream-Status: Backport [https://github.com/pyca/cryptography/commit/1e7b4d074e14c4e694d3ce69ad6754a6039fd6ff] + +Signed-off-by: Narpat Mali +--- + src/cryptography/hazmat/backends/openssl/backend.py | 5 - + tests/hazmat/primitives/test_pkcs7.py | 6 ++ + 2 files changed, 10 insertions(+), 1 deletion(-) + +diff --git a/src/cryptography/hazmat/backends/openssl/backend.py b/src/cryptography/hazmat/backends/openssl/backend.py +index 48f4265..7b949be 100644 +--- a/src/cryptography/hazmat/backends/openssl/backend.py b/src/cryptography/hazmat/backends/openssl/backend.py +@@ -2466,9 +2466,12 @@ class Backend: + _Reasons.UNSUPPORTED_SERIALIZATION, + ) + ++certs: list[x509.Certificate] = [] ++if p7.d.sign == self._ffi.NULL: ++return certs ++ + sk_x509 = p7.d.sign.cert + num = self._lib.sk_X509_num(sk_x509) +-certs = [] + for i in range(num): + x509 = self._lib.sk_X509_value(sk_x509, i) + self.openssl_assert(x509 != self._ffi.NULL) +diff --git a/tests/hazmat/primitives/test_pkcs7.py b/tests/hazmat/primitives/test_pkcs7.py +index d879563..36ce031 100644 +--- a/tests/hazmat/primitives/test_pkcs7.py b/tests/hazmat/primitives/test_pkcs7.py +@@ -89,6 +89,12 @@ class TestPKCS7Loading: + mode="rb", + ) + ++def test_load_pkcs7_empty_certificates(self): ++der = b"\x30\x0B\x06\x09\x2A\x86\x48\x86\xF7\x0D\x01\x07\x02" ++ ++certificates = pkcs7.load_der_pkcs7_certificates(der) ++assert certificates == [] ++ + + # We have no public verification API and won't be adding one until we get + # some requirements from users so this function exists to give us basic +-- +2.40.0 diff --git a/meta/recipes-devtools/python/python3-cryptography_39.0.2.bb b/meta/recipes-devtools/python/python3-cryptography_39.0.2.bb index 449e3ba1bc..b54c7e1719 100644 --- a/meta/recipes-devtools/python/python3-cryptography_39.0.2.bb +++ b/meta/recipes-devtools/python/python3-cryptography_39.0.2.bb @@ -16,6 +16,7 @@ SRC_URI += "\ file://0001-pyproject.toml-remove-benchmark-disable-option.patch \ file://check-memfree.py \ file://run-ptest \ +file://CVE-2023-49083.patch \ " require ${BPN}-crates.inc -- 2.40.0 -=-=-=-=-=-=-=-=-=-=-=- Links: You receive all messages sent to this group. View/Reply Online (#191945): https://lists.openembedded.org/g/openembedded-core/message/191945 Mute This Topic: https://lists.openembedded.org/mt/103032561/21656 Group Owner: openembedded-core+ow...@lists.openembedded.org Unsubscribe: https://lists.openembedded.org/g/openembedded-core/unsub [arch...@mail-archive.com] -=-=-=-=-=-=-=-=-=-=-=-
[OE-core] [PATCH 2/2] go: upgrade 1.21.0 -> 1.21.5
Upgrade to latest 1.21.x release [1]: $ git --no-pager log --oneline go1.21.0..go1.21.5 6018ad99a4 (tag: go1.21.5) [release-branch.go1.21] go1.21.5 ec8c526e4b [release-branch.go1.21] net/http: limit chunked data overhead f7a79cb5fc [release-branch.go1.21] cmd/compile: fix findIndVar so it does not match disjointed loop headers 3684d19c20 [release-branch.go1.21] runtime: call enableMetadataHugePages and its callees on the systemstack 9e43850a32 [release-branch.go1.21] crypto/rand,runtime: switch RtlGenRandom for ProcessPrng 8caf4bb3e7 [release-branch.go1.21] path/filepath: consider \\?\c: as a volume on Windows 23c943e529 [release-branch.go1.21] cmd/go/internal/vcs: error out if the requested repo does not support a secure protocol 4952f41180 [release-branch.go1.21] cmd/go: allow 'go mod download' to switch toolchains if called with explicit arguments f26fa05522 [release-branch.go1.21] os: report IO_REPARSE_TAG_DEDUP files as regular in Stat and Lstat 8ae493b5b8 [release-branch.go1.21] internal/poll: add SPLICE_F_NONBLOCK flag for splice to avoid inconsistency with O_NONBLOCK b9f245b8d3 [release-branch.go1.21] cmd/compile: ensure pointer arithmetic happens after the nil check caacf3a09a [release-branch.go1.21] cmd/compile: handle constant pointer offsets in dead store elimination 1e91861f67 [release-branch.go1.21] syscall: copy rlimit.go's build constraint to rlimit_test.go ed817f1c40 (tag: go1.21.4) [release-branch.go1.21] go1.21.4 9e933c189c [release-branch.go1.21] path/filepath: fix various issues in parsing Windows paths 434af8537e [release-branch.go1.21] net/http: pull http2 underflow fix from x/net/http2 7b04d81cbc [release-branch.go1.21] runtime/cgo: avoid taking the address of crosscall2 in code f9a31cda3c [release-branch.go1.21] cmd/compile/internal/typecheck: fix closure field naming 64b6c48107 [release-branch.go1.21] go/types, types2: don't use generics ef6993f327 [release-branch.go1.21] runtime: don't eagerly collapse hugepages bae01521f3 [release-branch.go1.21] go/types, types2: don't implicitly modify an argument function's type 236c07c049 [release-branch.go1.21] cmd/link: split text sections for arm 32-bit 9465990e0e [release-branch.go1.21] all: tidy dependency versioning after release 883f062fc0 (tag: go1.21.3) [release-branch.go1.21] go1.21.3 24ae2d9272 [release-branch.go1.21] net/http: regenerate h2_bundle.go 26b5783b72 (tag: go1.21.2) [release-branch.go1.21] go1.21.2 2ddfc04d12 [release-branch.go1.21] cmd/compile: use absolute file name in isCgo check a15ef1bb0f [release-branch.go1.21] cmd/compile: absorb InvertFlags into Noov comparisons 41d71a5afa [release-branch.go1.21] cmd/compile: reset memcombine correctly between basic blocks 0b6b0a275a [release-branch.go1.21] runtime: always lock OS thread in debugcall cd671a1180 [release-branch.go1.21] runtime: increase g0 stack size in non-cgo case fc57cc31a0 [release-branch.go1.21] cmd/link: suppress -bind_at_load deprecation warning for ld-prime 9bec49cf52 [release-branch.go1.21] cmd/link: disable DWARF by default in c-shared mode on darwin 3ef4f939c3 [release-branch.go1.21] cmd/link: force old Apple linker in plugin mode 556e9c36ba [release-branch.go1.21] cmd/link: avoid deadcode of global map vars for programs using plugins b64dc5f499 [release-branch.go1.21] cmd/go: in TestScript/gotoolchain_path, remove the user's PATH cd66ca0636 [release-branch.go1.21] runtime/metrics: fix /gc/scan/* metrics d7a0626806 [release-branch.go1.21] runtime: ignore SPWrite on innermost traceback frame 2c1e5b05fe (tag: go1.21.1) [release-branch.go1.21] go1.21.1 bbd043ff0d [release-branch.go1.21] html/template: properly handle special tags within the script context b0e1d3ea26 [release-branch.go1.21] html/template: support HTML-like comments in script contexts d25a935574 [release-branch.go1.21] cmd/go: reject toolchain directives containing path separators e3ba569c78 [release-branch.go1.21] net/http: revert "support streaming POST content in wasm" 8dc6ad1c61 [release-branch.go1.21] runtime: restore caller's frame pointer when recovering from panic 06df3292a8 [release-branch.go1.21] runtime: avoid MADV_HUGEPAGE for heap memory b120517ffd [release-branch.go1.21] go/types, types2: remove order dependency in inference involving channels 0a9582163c [release-branch.go1.21] cmd/go: retry ETXTBSY errors when running test binaries 91a4e74b98 [release-branch.go1.21] crypto/tls: QUIC: fix panics when processing post-handshake messages 6385a6fb18 [release-branch.go1.21] cmd/go: find GOROOT using os.Executable when installed to GOROOT/bin/GOOS_GOARCH 2d07bb86f0 [release-branch.go1.21] encoding/xml: overriding by empty namespace when no new name declaration 745b81b6e6 [release-branch.go1.21] encoding/gob: prevent panic from index out of range in Decoder.typeString 13339c75b8 [release-branch.go1.21] runtime: fix maps.Clone bug when cloning a map mid-grow 2977709875 [release-branch.go1.21] context: fix synchronization in
Re: [OE-core] [kirkstone][PATCH 2/4] base-passwd: Add PW_SUBDIR
On Wed, 2023-12-06 at 20:21 +, Peter Kjellerstedt wrote: > Since I've seen Richard's reply and his reluctance to merge this, > this is mostly technical. I know but I don't understand what "batter ways" to do this is, I have tested symlinks/--prefix/--root and bind mounting the passwd/shadow files and none of then work. Using overlaysfs is an inferior solution to me that makes the whole /etc writeable, may break when RFS underneath is upgraded and I am unsure how resilient overlayfs is in case of power failure. What else is there ? > > I would use either PW_DIR = "${sysconfdir}/pwdb" or PW_DIR:append = "/pwdb". > Using "/etc" (and other hardcoded paths) should be avoided wherever > possible. Thanks, will tru there out. Jocke > > //Peter > > > -Original Message- > > From: Joakim Tjernlund > > Sent: den 29 november 2023 12:11 > > To: openembedded-core@lists.openembedded.org; Peter Kjellerstedt > > > > Subject: Re: [OE-core] [kirkstone][PATCH 2/4] base-passwd: Add PW_SUBDIR > > > > Hi Peter :) > > > > All good comments, will fix accordingly. Not sure how PW_DIR ?= > > "${sysconfdir}" will work though. > > > > How do you envision one should set PW_DIR in distro .conf or layer.conf? > > Just PW_DIR = "/etc/pwdb" or PW_DIR = "${sysconfdir}/pwdb" ? > > > > Jocke > > > > On Sun, 2023-11-26 at 21:21 +, Peter Kjellerstedt wrote: > > > > -Original Message- > > > > From: openembedded-core@lists.openembedded.org > c...@lists.openembedded.org> On Behalf Of Joakim Tjernlund via > > lists.openembedded.org > > > > Sent: den 24 november 2023 15:11 > > > > To: openembedded-core@lists.openembedded.org > > > > Cc: Joakim Tjernlund > > > > Subject: [OE-core] [kirkstone][PATCH 2/4] base-passwd: Add PW_SUBDIR > > > > > > > > Add support for creating passwd files in a /etc subdir > > > > Set PW_SUBIR to pwdb to get passwd files in /etc/pwdb > > > > > > > > Signed-off-by: Joakim Tjernlund > > > > --- > > > > .../base-passwd/base-passwd_3.5.29.bb | 24 -- > > - > > > > 1 file changed, 16 insertions(+), 8 deletions(-) > > > > > > > > diff --git a/meta/recipes-core/base-passwd/base-passwd_3.5.29.bb > > b/meta/recipes-core/base-passwd/base-passwd_3.5.29.bb > > > > index ef7792ae49..e453be0763 100644 > > > > --- a/meta/recipes-core/base-passwd/base-passwd_3.5.29.bb > > > > +++ b/meta/recipes-core/base-passwd/base-passwd_3.5.29.bb > > > > @@ -20,6 +20,9 @@ SRC_URI = > > "https://launchpad.net/debian/+archive/primary/+files/${BPN}_${PV}.tar > > > > SRC_URI[md5sum] = "6beccac48083fe8ae5048acd062e5421" > > > > SRC_URI[sha256sum] = > > "f0b66388b2c8e49c15692439d2bee63bcdd4bbbf7a782c7f64accc55986b6a36" > > > > > > > > +#Set PW_SUBDIR to pwdb to get passwd files in /etc/pwdb > > > > +PW_SUBDIR ?= "" > > > > + > > > > > > Rather than defining a subdirectory, I would recommend defining the full > > > path, e.g.: > > > > > > PW_DIR ?= "${sysconfdir}" > > > > > > This avoids generating a lot of "//" in the middle of paths for the > > majority > > > of us who do not use a subdirectory for the password files. > > > > > > > # the package is taken from launchpad; that source is static and goes > > stale > > > > # so we check the latest upstream from a directory that does get > > updated > > > > UPSTREAM_CHECK_URI = "${DEBIAN_MIRROR}/main/b/base-passwd/" > > > > @@ -50,10 +53,11 @@ basepasswd_sysroot_postinst() { > > > > #!/bin/sh > > > > > > > > # Install passwd.master and group.master to sysconfdir > > > > -install -d -m 755 ${STAGING_DIR_TARGET}${sysconfdir} > > > > +install -d -m 755 ${STAGING_DIR_TARGET}${sysconfdir}/${PW_SUBDIR} > > > > for i in passwd group; do > > > > install -p -m 644 ${STAGING_DIR_TARGET}${datadir}/base- > > passwd/\$i.master \ > > > > - ${STAGING_DIR_TARGET}${sysconfdir}/\$i > > > > + ${STAGING_DIR_TARGET}${sysconfdir}/${PW_SUBDIR}/\$i > > > > + [ -n "${PW_SUBDIR}" ] && ln -fs ${PW_SUBDIR}/\$i > > ${STAGING_DIR_TARGET}${sysconfdir}/\$i > > > > > > I generally recommended to use `[ ! ... ] || ...` instead of `[ ... ] && > > ...`: > > > > > > [ -z "${PW_SUBDIR}" ] || ln -fs ${PW_SUBDIR}/\$i > > ${STAGING_DIR_TARGET}${sysconfdir}/\$i > > > > > > Or, assuming my recommendation above is followed: > > > > > > [ "${PW_DIR}" = "${sysconfdir}" ] || > > > ln -fsr ${STAGING_DIR_TARGET}${PW_DIR}/\$i > > ${STAGING_DIR_TARGET}${sysconfdir}/\$i > > > > > > The reason is that the return status ($?) of `[ ... ] && ...` is 1 if > > the > > > test fails, while it is 0 for `[ ! ... ] || ...` when the test succeeds. > > > > > > > done > > > > > > > > # Run any useradd postinsts > > > > @@ -89,15 +93,19 @@ python populate_packages:prepend() { > > > > f.close() > > > > > > > > preinst = """#!/bin/sh > > > > -mkdir -p $D${sysconfdir} > > > > -if [ ! -e $D${sysconfdir}/passwd ]; then > > > > -\tcat << 'EOF' > $D${sysconfdir}/passwd > > > > +mkdir -p $D${sysconfdir}/${PW_SUBDIR} > > > > +if [ ! -e