From patchwork Thu Jan 22 15:34:34 2026 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Ross Burton X-Patchwork-Id: 79409 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org Received: from aws-us-west-2-korg-lkml-1.web.codeaurora.org (localhost.localdomain [127.0.0.1]) by smtp.lore.kernel.org (Postfix) with ESMTP id 29EA7D3EE7F for ; Thu, 22 Jan 2026 15:34:50 +0000 (UTC) Received: from foss.arm.com (foss.arm.com [217.140.110.172]) by mx.groups.io with SMTP id smtpd.msgproc02-g2.39961.1769096084451875572 for ; Thu, 22 Jan 2026 07:34:44 -0800 Authentication-Results: mx.groups.io; dkim=none (message not signed); spf=pass (domain: arm.com, ip: 217.140.110.172, mailfrom: ross.burton@arm.com) Received: from usa-sjc-imap-foss1.foss.arm.com (unknown [10.121.207.14]) by usa-sjc-mx-foss1.foss.arm.com (Postfix) with ESMTP id 781C71476 for ; Thu, 22 Jan 2026 07:34:37 -0800 (PST) Received: from cesw-amp-gbt-1s-m12830-04.lab.cambridge.arm.com (usa-sjc-imap-foss1.foss.arm.com [10.121.207.14]) by usa-sjc-imap-foss1.foss.arm.com (Postfix) with ESMTPA id ACF223F632 for ; Thu, 22 Jan 2026 07:34:43 -0800 (PST) From: Ross Burton To: openembedded-core@lists.openembedded.org Subject: [PATCH 1/5] perl: provide pod2man Date: Thu, 22 Jan 2026 15:34:34 +0000 Message-ID: <20260122153438.1546221-1-ross.burton@arm.com> X-Mailer: git-send-email 2.43.0 MIME-Version: 1.0 List-Id: X-Webhook-Received: from 45-33-107-173.ip.linodeusercontent.com [45.33.107.173] by aws-us-west-2-korg-lkml-1.web.codeaurora.org with HTTPS for ; Thu, 22 Jan 2026 15:34:50 -0000 X-Groupsio-URL: https://lists.openembedded.org/g/openembedded-core/message/229848 Many recipes uses pod2man to generate manpages from an almost human-readable source format, which is part of the perl recipe. This means that we have recipes that don't install manpages, or more accurately don't install manpages if built from clean but _do_ if they are a rebuild (because do_package -> rpm-native -> perl-native means the sysroot now has pod2man in). The obvious fix here is to DEPEND on perl-native but that an often look like a redundant dependency that can be removed as removing it doesn't cause problems (I'm fairly confident I'm responsible for patches like this). So, add a PROVIDES of pod2man to perl, so that recipes can DEPEND on pod2man-native and this dependency is both obvious as to it's purpose and easily removed if the manpages change source format. Signed-off-by: Ross Burton --- meta/recipes-devtools/perl/perl_5.40.2.bb | 2 ++ 1 file changed, 2 insertions(+) diff --git a/meta/recipes-devtools/perl/perl_5.40.2.bb b/meta/recipes-devtools/perl/perl_5.40.2.bb index a78d2ed0be..2225dc202b 100644 --- a/meta/recipes-devtools/perl/perl_5.40.2.bb +++ b/meta/recipes-devtools/perl/perl_5.40.2.bb @@ -34,6 +34,8 @@ DEPENDS += "perlcross-native zlib virtual/crypt" # make 4.1 has race issues with the double-colon usage of MakeMaker, see #14096 DEPENDS += "make-native" +PROVIDES = "pod2man" + PERL_LIB_VER = "${@'.'.join(d.getVar('PV').split('.')[0:2])}.0" PACKAGECONFIG ??= "gdbm" From patchwork Thu Jan 22 15:34:35 2026 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Ross Burton X-Patchwork-Id: 79410 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org Received: from aws-us-west-2-korg-lkml-1.web.codeaurora.org (localhost.localdomain [127.0.0.1]) by smtp.lore.kernel.org (Postfix) with ESMTP id 35DD2D3EE82 for ; Thu, 22 Jan 2026 15:34:50 +0000 (UTC) Received: from foss.arm.com (foss.arm.com [217.140.110.172]) by mx.groups.io with SMTP id smtpd.msgproc02-g2.39964.1769096085138001592 for ; Thu, 22 Jan 2026 07:34:45 -0800 Authentication-Results: mx.groups.io; dkim=none (message not signed); spf=pass (domain: arm.com, ip: 217.140.110.172, mailfrom: ross.burton@arm.com) Received: from usa-sjc-imap-foss1.foss.arm.com (unknown [10.121.207.14]) by usa-sjc-mx-foss1.foss.arm.com (Postfix) with ESMTP id 268E91515 for ; Thu, 22 Jan 2026 07:34:38 -0800 (PST) Received: from cesw-amp-gbt-1s-m12830-04.lab.cambridge.arm.com (usa-sjc-imap-foss1.foss.arm.com [10.121.207.14]) by usa-sjc-imap-foss1.foss.arm.com (Postfix) with ESMTPA id 53AE73F632 for ; Thu, 22 Jan 2026 07:34:44 -0800 (PST) From: Ross Burton To: openembedded-core@lists.openembedded.org Subject: [PATCH 2/5] ffmpeg: ensure manpage generation is deterministic Date: Thu, 22 Jan 2026 15:34:35 +0000 Message-ID: <20260122153438.1546221-2-ross.burton@arm.com> X-Mailer: git-send-email 2.43.0 In-Reply-To: <20260122153438.1546221-1-ross.burton@arm.com> References: <20260122153438.1546221-1-ross.burton@arm.com> MIME-Version: 1.0 List-Id: X-Webhook-Received: from 45-33-107-173.ip.linodeusercontent.com [45.33.107.173] by aws-us-west-2-korg-lkml-1.web.codeaurora.org with HTTPS for ; Thu, 22 Jan 2026 15:34:50 -0000 X-Groupsio-URL: https://lists.openembedded.org/g/openembedded-core/message/229849 Add pod2man-native to DEPENDS to ensure that pod2man is always available and manpage generation is deterministic. Signed-off-by: Ross Burton --- meta/recipes-multimedia/ffmpeg/ffmpeg_8.0.1.bb | 1 + 1 file changed, 1 insertion(+) diff --git a/meta/recipes-multimedia/ffmpeg/ffmpeg_8.0.1.bb b/meta/recipes-multimedia/ffmpeg/ffmpeg_8.0.1.bb index 5ae985efb5..d7afdd14f3 100644 --- a/meta/recipes-multimedia/ffmpeg/ffmpeg_8.0.1.bb +++ b/meta/recipes-multimedia/ffmpeg/ffmpeg_8.0.1.bb @@ -38,6 +38,7 @@ ARM_INSTRUCTION_SET:armv6 = "arm" # Should be API compatible with libav (which was a fork of ffmpeg) PROVIDES = "libav" +DEPENDS = "pod2man-native" DEPENDS:append:x86 = " nasm-native" DEPENDS:append:x86-64 = " nasm-native" From patchwork Thu Jan 22 15:34:36 2026 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Ross Burton X-Patchwork-Id: 79412 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org Received: from aws-us-west-2-korg-lkml-1.web.codeaurora.org (localhost.localdomain [127.0.0.1]) by smtp.lore.kernel.org (Postfix) with ESMTP id 4318AD3EE84 for ; Thu, 22 Jan 2026 15:34:50 +0000 (UTC) Received: from foss.arm.com (foss.arm.com [217.140.110.172]) by mx.groups.io with SMTP id smtpd.msgproc01-g2.40252.1769096085874814948 for ; Thu, 22 Jan 2026 07:34:46 -0800 Authentication-Results: mx.groups.io; dkim=none (message not signed); spf=pass (domain: arm.com, ip: 217.140.110.172, mailfrom: ross.burton@arm.com) Received: from usa-sjc-imap-foss1.foss.arm.com (unknown [10.121.207.14]) by usa-sjc-mx-foss1.foss.arm.com (Postfix) with ESMTP id C4BD91476 for ; Thu, 22 Jan 2026 07:34:38 -0800 (PST) Received: from cesw-amp-gbt-1s-m12830-04.lab.cambridge.arm.com (usa-sjc-imap-foss1.foss.arm.com [10.121.207.14]) by usa-sjc-imap-foss1.foss.arm.com (Postfix) with ESMTPA id 0410A3F632 for ; Thu, 22 Jan 2026 07:34:44 -0800 (PST) From: Ross Burton To: openembedded-core@lists.openembedded.org Subject: [PATCH 3/5] wget: merge .bb/.inc Date: Thu, 22 Jan 2026 15:34:36 +0000 Message-ID: <20260122153438.1546221-3-ross.burton@arm.com> X-Mailer: git-send-email 2.43.0 In-Reply-To: <20260122153438.1546221-1-ross.burton@arm.com> References: <20260122153438.1546221-1-ross.burton@arm.com> MIME-Version: 1.0 List-Id: X-Webhook-Received: from 45-33-107-173.ip.linodeusercontent.com [45.33.107.173] by aws-us-west-2-korg-lkml-1.web.codeaurora.org with HTTPS for ; Thu, 22 Jan 2026 15:34:50 -0000 X-Groupsio-URL: https://lists.openembedded.org/g/openembedded-core/message/229850 There's just a single recipe file that uses the .inc, so merge them. Signed-off-by: Ross Burton --- meta/recipes-extended/wget/wget.inc | 41 ---------------------- meta/recipes-extended/wget/wget_1.25.0.bb | 42 ++++++++++++++++++++++- 2 files changed, 41 insertions(+), 42 deletions(-) delete mode 100644 meta/recipes-extended/wget/wget.inc diff --git a/meta/recipes-extended/wget/wget.inc b/meta/recipes-extended/wget/wget.inc deleted file mode 100644 index 13cf879067..0000000000 --- a/meta/recipes-extended/wget/wget.inc +++ /dev/null @@ -1,41 +0,0 @@ -SUMMARY = "Console URL download utility supporting HTTP, FTP, etc" -DESCRIPTION = "Wget is a network utility to retrieve files from the web using \ -HTTP(S) and FTP, the two most widely used internet protocols. It works \ -non-interactively, so it will work in the background, after having logged off. \ -The program supports recursive retrieval of web-authoring pages as well as \ -FTP sites" -HOMEPAGE = "https://www.gnu.org/software/wget/" -SECTION = "console/network" -LICENSE = "GPL-3.0-only" -LIC_FILES_CHKSUM = "file://COPYING;md5=6f65012d1daf98cb09b386cfb68df26b" - -inherit autotools gettext texinfo update-alternatives pkgconfig - -DEPENDS += "autoconf-archive-native" - -EXTRA_OECONF = "--without-libgnutls-prefix --without-libssl-prefix \ - --disable-rpath" - -EXTRA_OEMAKE += 'TOOLCHAIN_OPTIONS="${TOOLCHAIN_OPTIONS}" \ - DEBUG_PREFIX_MAP="${DEBUG_PREFIX_MAP}"' - -ALTERNATIVE:${PN} = "wget" -ALTERNATIVE:${PN}:class-nativesdk = "" -ALTERNATIVE_PRIORITY = "100" - -RRECOMMENDS:${PN} += "ca-certificates" - -BBCLASSEXTEND = "nativesdk" - -PACKAGECONFIG ??= "gnutls pcre2 zlib \ - ${@bb.utils.filter('DISTRO_FEATURES', 'ipv6', d)}" -PACKAGECONFIG[ares] = "--with-cares,--without-cares,c-ares" -PACKAGECONFIG[gnutls] = "--with-ssl=gnutls,,gnutls" -PACKAGECONFIG[ipv6] = "--enable-ipv6,--disable-ipv6," -PACKAGECONFIG[iri] = "--enable-iri,--disable-iri,libidn2" -PACKAGECONFIG[libpsl] = "--with-libpsl,--without-libpsl,libpsl" -PACKAGECONFIG[libuuid] = "--with-libuuid,--without-libuuid,util-linux" -PACKAGECONFIG[openssl] = "--with-ssl=openssl,,openssl" -PACKAGECONFIG[pcre] = "--enable-pcre,--disable-pcre,libpcre" -PACKAGECONFIG[pcre2] = "--enable-pcre2,--disable-pcre2,libpcre2" -PACKAGECONFIG[zlib] = "--with-zlib,--without-zlib,zlib" diff --git a/meta/recipes-extended/wget/wget_1.25.0.bb b/meta/recipes-extended/wget/wget_1.25.0.bb index 93fefc9092..87ccdeade2 100644 --- a/meta/recipes-extended/wget/wget_1.25.0.bb +++ b/meta/recipes-extended/wget/wget_1.25.0.bb @@ -1,7 +1,47 @@ +SUMMARY = "Console URL download utility supporting HTTP, FTP, etc" +DESCRIPTION = "Wget is a network utility to retrieve files from the web using \ +HTTP(S) and FTP, the two most widely used internet protocols. It works \ +non-interactively, so it will work in the background, after having logged off. \ +The program supports recursive retrieval of web-authoring pages as well as \ +FTP sites" +HOMEPAGE = "https://www.gnu.org/software/wget/" +SECTION = "console/network" +LICENSE = "GPL-3.0-only" +LIC_FILES_CHKSUM = "file://COPYING;md5=6f65012d1daf98cb09b386cfb68df26b" + +inherit autotools gettext texinfo update-alternatives pkgconfig + +DEPENDS += "autoconf-archive-native" + SRC_URI = "${GNU_MIRROR}/wget/wget-${PV}.tar.gz \ file://0002-improve-reproducibility.patch \ " SRC_URI[sha256sum] = "766e48423e79359ea31e41db9e5c289675947a7fcf2efdcedb726ac9d0da3784" -require wget.inc +EXTRA_OECONF = "--without-libgnutls-prefix --without-libssl-prefix \ + --disable-rpath" + +EXTRA_OEMAKE += 'TOOLCHAIN_OPTIONS="${TOOLCHAIN_OPTIONS}" \ + DEBUG_PREFIX_MAP="${DEBUG_PREFIX_MAP}"' + +PACKAGECONFIG ??= "gnutls pcre2 zlib \ + ${@bb.utils.filter('DISTRO_FEATURES', 'ipv6', d)}" +PACKAGECONFIG[ares] = "--with-cares,--without-cares,c-ares" +PACKAGECONFIG[gnutls] = "--with-ssl=gnutls,,gnutls" +PACKAGECONFIG[ipv6] = "--enable-ipv6,--disable-ipv6," +PACKAGECONFIG[iri] = "--enable-iri,--disable-iri,libidn2" +PACKAGECONFIG[libpsl] = "--with-libpsl,--without-libpsl,libpsl" +PACKAGECONFIG[libuuid] = "--with-libuuid,--without-libuuid,util-linux" +PACKAGECONFIG[openssl] = "--with-ssl=openssl,,openssl" +PACKAGECONFIG[pcre] = "--enable-pcre,--disable-pcre,libpcre" +PACKAGECONFIG[pcre2] = "--enable-pcre2,--disable-pcre2,libpcre2" +PACKAGECONFIG[zlib] = "--with-zlib,--without-zlib,zlib" + +ALTERNATIVE:${PN} = "wget" +ALTERNATIVE:${PN}:class-nativesdk = "" +ALTERNATIVE_PRIORITY = "100" + +RRECOMMENDS:${PN} += "ca-certificates" + +BBCLASSEXTEND = "nativesdk" From patchwork Thu Jan 22 15:34:37 2026 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Ross Burton X-Patchwork-Id: 79411 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org Received: from aws-us-west-2-korg-lkml-1.web.codeaurora.org (localhost.localdomain [127.0.0.1]) by smtp.lore.kernel.org (Postfix) with ESMTP id 2918DD3EE77 for ; Thu, 22 Jan 2026 15:34:50 +0000 (UTC) Received: from foss.arm.com (foss.arm.com [217.140.110.172]) by mx.groups.io with SMTP id smtpd.msgproc01-g2.40253.1769096086421554616 for ; Thu, 22 Jan 2026 07:34:46 -0800 Authentication-Results: mx.groups.io; dkim=none (message not signed); spf=pass (domain: arm.com, ip: 217.140.110.172, mailfrom: ross.burton@arm.com) Received: from usa-sjc-imap-foss1.foss.arm.com (unknown [10.121.207.14]) by usa-sjc-mx-foss1.foss.arm.com (Postfix) with ESMTP id 71D361515 for ; Thu, 22 Jan 2026 07:34:39 -0800 (PST) Received: from cesw-amp-gbt-1s-m12830-04.lab.cambridge.arm.com (usa-sjc-imap-foss1.foss.arm.com [10.121.207.14]) by usa-sjc-imap-foss1.foss.arm.com (Postfix) with ESMTPA id 9F0163F632 for ; Thu, 22 Jan 2026 07:34:45 -0800 (PST) From: Ross Burton To: openembedded-core@lists.openembedded.org Subject: [PATCH 4/5] wget: ensure manpage generation is deterministic Date: Thu, 22 Jan 2026 15:34:37 +0000 Message-ID: <20260122153438.1546221-4-ross.burton@arm.com> X-Mailer: git-send-email 2.43.0 In-Reply-To: <20260122153438.1546221-1-ross.burton@arm.com> References: <20260122153438.1546221-1-ross.burton@arm.com> MIME-Version: 1.0 List-Id: X-Webhook-Received: from 45-33-107-173.ip.linodeusercontent.com [45.33.107.173] by aws-us-west-2-korg-lkml-1.web.codeaurora.org with HTTPS for ; Thu, 22 Jan 2026 15:34:50 -0000 X-Groupsio-URL: https://lists.openembedded.org/g/openembedded-core/message/229851 Add pod2man-native to DEPENDS to ensure that pod2man is always available and manpage generation is deterministic. Signed-off-by: Ross Burton --- meta/recipes-extended/wget/wget_1.25.0.bb | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/meta/recipes-extended/wget/wget_1.25.0.bb b/meta/recipes-extended/wget/wget_1.25.0.bb index 87ccdeade2..f0d3458462 100644 --- a/meta/recipes-extended/wget/wget_1.25.0.bb +++ b/meta/recipes-extended/wget/wget_1.25.0.bb @@ -11,7 +11,7 @@ LIC_FILES_CHKSUM = "file://COPYING;md5=6f65012d1daf98cb09b386cfb68df26b" inherit autotools gettext texinfo update-alternatives pkgconfig -DEPENDS += "autoconf-archive-native" +DEPENDS += "autoconf-archive-native pod2man-native" SRC_URI = "${GNU_MIRROR}/wget/wget-${PV}.tar.gz \ file://0002-improve-reproducibility.patch \ From patchwork Thu Jan 22 15:34:38 2026 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Ross Burton X-Patchwork-Id: 79408 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org Received: from aws-us-west-2-korg-lkml-1.web.codeaurora.org (localhost.localdomain [127.0.0.1]) by smtp.lore.kernel.org (Postfix) with ESMTP id 2826CD3EE7C for ; Thu, 22 Jan 2026 15:34:50 +0000 (UTC) Received: from foss.arm.com (foss.arm.com [217.140.110.172]) by mx.groups.io with SMTP id smtpd.msgproc02-g2.39966.1769096087032292534 for ; Thu, 22 Jan 2026 07:34:47 -0800 Authentication-Results: mx.groups.io; dkim=none (message not signed); spf=pass (domain: arm.com, ip: 217.140.110.172, mailfrom: ross.burton@arm.com) Received: from usa-sjc-imap-foss1.foss.arm.com (unknown [10.121.207.14]) by usa-sjc-mx-foss1.foss.arm.com (Postfix) with ESMTP id 238911476 for ; Thu, 22 Jan 2026 07:34:40 -0800 (PST) Received: from cesw-amp-gbt-1s-m12830-04.lab.cambridge.arm.com (usa-sjc-imap-foss1.foss.arm.com [10.121.207.14]) by usa-sjc-imap-foss1.foss.arm.com (Postfix) with ESMTPA id 4EB503F632 for ; Thu, 22 Jan 2026 07:34:46 -0800 (PST) From: Ross Burton To: openembedded-core@lists.openembedded.org Subject: [PATCH 5/5] gpgme: ensure manpage generation is deterministic Date: Thu, 22 Jan 2026 15:34:38 +0000 Message-ID: <20260122153438.1546221-5-ross.burton@arm.com> X-Mailer: git-send-email 2.43.0 In-Reply-To: <20260122153438.1546221-1-ross.burton@arm.com> References: <20260122153438.1546221-1-ross.burton@arm.com> MIME-Version: 1.0 List-Id: X-Webhook-Received: from 45-33-107-173.ip.linodeusercontent.com [45.33.107.173] by aws-us-west-2-korg-lkml-1.web.codeaurora.org with HTTPS for ; Thu, 22 Jan 2026 15:34:50 -0000 X-Groupsio-URL: https://lists.openembedded.org/g/openembedded-core/message/229852 In a similar way to the previous commits with pod2man, gpgme will not generate manpages on a clean build but will on rebuilds due to do_package -> rpm-native -> ... -> libgpg-error-native, where the libgpg-error-native recipe provides the yat2m tool. To ensure that we generate manpages deterministicly, depend on this recipe. Signed-off-by: Ross Burton --- meta/recipes-support/gpgme/gpgme_2.0.1.bb | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/meta/recipes-support/gpgme/gpgme_2.0.1.bb b/meta/recipes-support/gpgme/gpgme_2.0.1.bb index 364147fad5..ae20f785e6 100644 --- a/meta/recipes-support/gpgme/gpgme_2.0.1.bb +++ b/meta/recipes-support/gpgme/gpgme_2.0.1.bb @@ -26,7 +26,7 @@ SRC_URI = "${GNUPG_MIRROR}/gpgme/${BP}.tar.bz2 \ SRC_URI[sha256sum] = "821ab0695c842eab51752a81980c92b0410c7eadd04103f791d5d2a526784966" -DEPENDS = "libgpg-error libassuan" +DEPENDS = "libgpg-error-native libgpg-error libassuan" RRECOMMENDS:${PN} += "${PN}-tool"