public inbox for openembedded-core@lists.openembedded.org
 help / color / mirror / Atom feed
* [PATCH v7 0/7] rpm: 4.20.1 -> 6.0.1
@ 2026-03-01 12:25 liezhi.yang
  2026-03-01 12:25 ` [PATCH v7 1/7] package_rpm.bbclass: Drop external dependency generator to support rpm 6 liezhi.yang
                   ` (7 more replies)
  0 siblings, 8 replies; 20+ messages in thread
From: liezhi.yang @ 2026-03-01 12:25 UTC (permalink / raw)
  To: openembedded-core; +Cc: alex.kanavin, mathieu.dubois-briand

From: Robert Yang <liezhi.yang@windriver.com>

* V7:
  - Add 0001-scripts-pkgconfigdeps.sh-Use-pkg-config-from-PATH.patch:
    To fix "bitbake core-image-sato -cpopulate_sdk" error on Ubuntu 24.04 when
    pkg-config is installed on host, now the host contamination has been fixed,
    and the patch has been submitted to upstream:
    https://github.com/rpm-software-management/rpm/pull/4127

* V6
  - Fix -cpopulate_sdk error when DISTRO = "poky"

* V5
  - Fix RP's comments: Don't hardcode libc6 into package_rpm.bbclass
  - Use SKIP_LDCONFIG_POSTINST_FRAGMENT:${PN} to fix the loop dependencies
    between /bin/sh and libc.so. 

* V4
  - Fix loop dependencies issues for libc6 and busybox
  - Fix issues for can't find pkg-config files (.pc) on qemux86-64.

* V3
  - Fix Alexender's comments
    a) Suppot rpm 6
    b) Move rpm-setup-autosign to rpm-build
    c) Remove -DLIBELF_FOUND=False

  - Fix build for nativesdk-rpm

  - Drop patch for createrepo-c since it has been upgraded (rev:
    804a238c8a4e86c2bcfb2192d54cb861d5fd32a6)

* V1 & V2
  - Initial version

The following changes since commit b8e48562ba273051bcf8cbc62be742ef42a1e622:

  alsa-lib: patch CVE-2026-25068 (2026-02-23 18:02:43 +0000)

are available in the Git repository at:

  https://github.com/robertlinux/yocto rbt/rpm
  https://github.com/robertlinux/yocto/tree/rbt/rpm

for you to fetch changes up to ab5c811380aac927b0fca3cf4f00952af4e6d8f5:

  rpm: 4.20.1 -> 6.0.1 (2026-03-01 12:18:43 +0000)

----------------------------------------------------------------

Robert Yang (7):
  package_rpm.bbclass: Drop external dependency generator to support rpm
    6
  package_rpm.bbclass: Define _lib and _libdir for rpmbuild
  lib/oe/package.py: Don't add ldconfig_postinst_fragment for glibc or
    musl
  glib/python3/acl: Add pkgconfig to RDEPENDS
  lib/oe/package.py: Don't redirect stderr
  target-sdk-provides-dummy: Add pkg-config to DUMMYPROVIDES
  rpm: 4.20.1 -> 6.0.1

 meta/classes-global/package_rpm.bbclass       | 87 ++-----------------
 meta/lib/oe/package.py                        |  5 +-
 meta/recipes-core/glib-2.0/glib.inc           |  2 +-
 meta/recipes-core/glibc/glibc-package.inc     |  5 ++
 .../meta/nativesdk-sdk-provides-dummy.bb      |  1 +
 .../meta/target-sdk-provides-dummy.bb         |  1 +
 meta/recipes-core/musl/musl_git.bb            |  5 ++
 .../recipes-devtools/python/python3_3.14.3.bb |  2 +
 ...olor-setting-for-mips64_n32-binaries.patch | 21 +++--
 ...akeLists.txt-Fix-checking-for-CFLAGS.patch | 46 ----------
 ...et-libdir-to-CMAKE_INSTALL_FULL_LIBD.patch | 50 -----------
 ...satisfiable-dependency-when-building.patch | 17 ++--
 ...lib-rpm-as-the-installation-path-for.patch | 23 ++---
 ...1-Do-not-read-config-files-from-HOME.patch | 17 ++--
 ...-PATH-environment-variable-before-ru.patch | 15 ++--
 ...lling-execute-package-scriptlets-wit.patch | 11 +--
 ...not-insert-payloadflags-into-.rpm-me.patch | 17 ++--
 ....c-fix-file-conflicts-for-MIPS64-N32.patch | 17 ++--
 ...kgverify_level-to-digest-as-RCPM-4.2.patch | 34 ++++++++
 ...nfigdeps.sh-Use-pkg-config-from-PATH.patch | 42 +++++++++
 ...ools-elfdeps.cc-Remove-format-module.patch | 37 ++++++++
 ...prefixing-etc-from-RPM_ETCCONFIGDIR-.patch | 25 +++---
 ...avoid-using-GLOB_BRACE-if-undefined-.patch | 13 +--
 ...ge-logging-level-around-scriptlets-t.patch | 13 +--
 .../rpm/{rpm_4.20.1.bb => rpm_6.0.1.bb}       | 15 ++--
 meta/recipes-support/attr/acl_2.3.2.bb        |  2 +
 26 files changed, 252 insertions(+), 271 deletions(-)
 delete mode 100644 meta/recipes-devtools/rpm/files/0001-CMakeLists.txt-Fix-checking-for-CFLAGS.patch
 delete mode 100644 meta/recipes-devtools/rpm/files/0001-CMakeLists.txt-set-libdir-to-CMAKE_INSTALL_FULL_LIBD.patch
 create mode 100644 meta/recipes-devtools/rpm/files/0001-macros.in-Set-_pkgverify_level-to-digest-as-RCPM-4.2.patch
 create mode 100644 meta/recipes-devtools/rpm/files/0001-scripts-pkgconfigdeps.sh-Use-pkg-config-from-PATH.patch
 create mode 100644 meta/recipes-devtools/rpm/files/0001-tools-elfdeps.cc-Remove-format-module.patch
 rename meta/recipes-devtools/rpm/{rpm_4.20.1.bb => rpm_6.0.1.bb} (94%)

-- 
2.49.1



^ permalink raw reply	[flat|nested] 20+ messages in thread

* [PATCH v7 1/7] package_rpm.bbclass: Drop external dependency generator to support rpm 6
  2026-03-01 12:25 [PATCH v7 0/7] rpm: 4.20.1 -> 6.0.1 liezhi.yang
@ 2026-03-01 12:25 ` liezhi.yang
  2026-03-02 10:57   ` [OE-core] " Richard Purdie
  2026-03-01 12:25 ` [PATCH v7 2/7] package_rpm.bbclass: Define _lib and _libdir for rpmbuild liezhi.yang
                   ` (6 subsequent siblings)
  7 siblings, 1 reply; 20+ messages in thread
From: liezhi.yang @ 2026-03-01 12:25 UTC (permalink / raw)
  To: openembedded-core; +Cc: alex.kanavin, mathieu.dubois-briand

From: Robert Yang <liezhi.yang@windriver.com>

The rpm 6 doesn't support external dependency generator. Oe-core used it for
per file dependency which was saved into pn.requires and pn.provides, but that
hasn't been used any more since 2012 (rev:
be40f6d0bb80274366af00461112af65687a4de8), and there were no complains or
updates in the past 13 years, so just drop it to support rpm 6.

Signed-off-by: Robert Yang <liezhi.yang@windriver.com>
---
 meta/classes-global/package_rpm.bbclass | 84 +------------------------
 1 file changed, 3 insertions(+), 81 deletions(-)

diff --git a/meta/classes-global/package_rpm.bbclass b/meta/classes-global/package_rpm.bbclass
index f383ed140e..bb3b8f830a 100644
--- a/meta/classes-global/package_rpm.bbclass
+++ b/meta/classes-global/package_rpm.bbclass
@@ -14,10 +14,6 @@ RPMBUILD_COMPMODE ?= "${@'w%dT%d.zstdio' % (int(d.getVar('ZSTD_COMPRESSION_LEVEL
 
 PKGWRITEDIRRPM = "${WORKDIR}/deploy-rpms"
 
-# Maintaining the perfile dependencies has significant overhead when writing the
-# packages. When set, this value merges them for efficiency.
-MERGEPERFILEDEPS = "1"
-
 # Filter dependencies based on a provided function.
 def filter_deps(var, f):
     import collections
@@ -36,67 +32,6 @@ def filter_nativesdk_deps(srcname, var):
         var = filter_deps(var, lambda dep: not dep.startswith('/') and dep != 'perl' and not dep.startswith('perl('))
     return var
 
-# Construct per file dependencies file
-def write_rpm_perfiledata(srcname, d):
-    import oe.package
-    workdir = d.getVar('WORKDIR')
-    packages = d.getVar('PACKAGES')
-    pkgd = d.getVar('PKGD')
-
-    def dump_filerdeps(varname, outfile, d):
-        outfile.write("#!/usr/bin/env python3\n\n")
-        outfile.write("# Dependency table\n")
-        outfile.write('deps = {\n')
-        for pkg in packages.split():
-            dependsflist_key = 'FILE' + varname + 'FLIST' + ":" + pkg
-            dependsflist = (d.getVar(dependsflist_key) or "")
-            for dfile in dependsflist.split():
-                key = "FILE" + varname + ":" + dfile + ":" + pkg
-                deps = filter_nativesdk_deps(srcname, d.getVar(key) or "")
-                depends_dict = bb.utils.explode_dep_versions(deps)
-                file = oe.package.file_reverse_translate(dfile)
-                outfile.write('"' + pkgd + file + '" : "')
-                for dep in depends_dict:
-                    ver = depends_dict[dep]
-                    if dep and ver:
-                        ver = ver.replace("(", "")
-                        ver = ver.replace(")", "")
-                        outfile.write(dep + " " + ver + " ")
-                    else:
-                        outfile.write(dep + " ")
-                outfile.write('",\n')
-        outfile.write('}\n\n')
-        outfile.write("import sys\n")
-        outfile.write("while 1:\n")
-        outfile.write("\tline = sys.stdin.readline().strip()\n")
-        outfile.write("\tif not line:\n")
-        outfile.write("\t\tsys.exit(0)\n")
-        outfile.write("\tif line in deps:\n")
-        outfile.write("\t\tprint(deps[line] + '\\n')\n")
-
-    # OE-core dependencies a.k.a. RPM requires
-    outdepends = workdir + "/" + srcname + ".requires"
-
-    dependsfile = open(outdepends, 'w')
-
-    dump_filerdeps('RDEPENDS', dependsfile, d)
-
-    dependsfile.close()
-    os.chmod(outdepends, 0o755)
-
-    # OE-core / RPM Provides
-    outprovides = workdir + "/" + srcname + ".provides"
-
-    providesfile = open(outprovides, 'w')
-
-    dump_filerdeps('RPROVIDES', providesfile, d)
-
-    providesfile.close()
-    os.chmod(outprovides, 0o755)
-
-    return (outdepends, outprovides)
-
-
 python write_specfile () {
     import oe.packagedata
     import os,pwd,grp,stat
@@ -339,7 +274,6 @@ python write_specfile () {
     spec_files_top = []
     spec_files_bottom = []
 
-    perfiledeps = (d.getVar("MERGEPERFILEDEPS") or "0") == "0"
     extra_pkgdata = (d.getVar("RPM_EXTRA_PKGDATA") or "0") == "1"
 
     for pkg in packages.split():
@@ -393,10 +327,9 @@ python write_specfile () {
         splitrpostrm   = localdata.getVar('pkg_postrm')
 
 
-        if not perfiledeps:
-            # Add in summary of per file dependencies
-            splitrdepends = splitrdepends + " " + get_perfile('RDEPENDS', pkg, d)
-            splitrprovides = splitrprovides + " " + get_perfile('RPROVIDES', pkg, d)
+        # Add in summary of per file dependencies
+        splitrdepends = splitrdepends + " " + get_perfile('RDEPENDS', pkg, d)
+        splitrprovides = splitrprovides + " " + get_perfile('RPROVIDES', pkg, d)
 
         splitrdepends = filter_nativesdk_deps(srcname, splitrdepends)
 
@@ -665,10 +598,6 @@ python do_package_rpm () {
     d.setVar('OUTSPECFILE', outspecfile)
     bb.build.exec_func('write_specfile', d)
 
-    perfiledeps = (d.getVar("MERGEPERFILEDEPS") or "0") == "0"
-    if perfiledeps:
-        outdepends, outprovides = write_rpm_perfiledata(srcname, d)
-
     # Setup the rpmbuild arguments...
     rpmbuild = d.getVar('RPMBUILD')
     rpmbuild_compmode = d.getVar('RPMBUILD_COMPMODE')
@@ -693,7 +622,6 @@ python do_package_rpm () {
     cmd = cmd + " --define '_topdir " + workdir + "' --define '_rpmdir " + pkgwritedir + "'"
     cmd = cmd + " --define '_builddir " + d.getVar('B') + "'"
     cmd = cmd + " --define '_build_name_fmt %%{NAME}-%%{VERSION}-%%{RELEASE}.%%{ARCH}.rpm'"
-    cmd = cmd + " --define '_use_internal_dependency_generator 0'"
     cmd = cmd + " --define '_binaries_in_noarch_packages_terminate_build 0'"
     cmd = cmd + " --define '_build_id_links none'"
     cmd = cmd + " --define '_smp_ncpus_max 4'"
@@ -703,12 +631,6 @@ python do_package_rpm () {
     cmd = cmd + " --define 'use_source_date_epoch_as_buildtime 1'"
     cmd = cmd + " --define '_buildhost reproducible'"
     cmd = cmd + " --define '__font_provides %{nil}'"
-    if perfiledeps:
-        cmd = cmd + " --define '__find_requires " + outdepends + "'"
-        cmd = cmd + " --define '__find_provides " + outprovides + "'"
-    else:
-        cmd = cmd + " --define '__find_requires %{nil}'"
-        cmd = cmd + " --define '__find_provides %{nil}'"
     cmd = cmd + " --define '_unpackaged_files_terminate_build 0'"
     cmd = cmd + " --define 'debug_package %{nil}'"
     cmd = cmd + " --define '_tmppath " + workdir + "'"
-- 
2.49.1



^ permalink raw reply related	[flat|nested] 20+ messages in thread

* [PATCH v7 2/7] package_rpm.bbclass: Define _lib and _libdir for rpmbuild
  2026-03-01 12:25 [PATCH v7 0/7] rpm: 4.20.1 -> 6.0.1 liezhi.yang
  2026-03-01 12:25 ` [PATCH v7 1/7] package_rpm.bbclass: Drop external dependency generator to support rpm 6 liezhi.yang
@ 2026-03-01 12:25 ` liezhi.yang
  2026-03-01 12:26 ` [PATCH v7 3/7] lib/oe/package.py: Don't add ldconfig_postinst_fragment for glibc or musl liezhi.yang
                   ` (5 subsequent siblings)
  7 siblings, 0 replies; 20+ messages in thread
From: liezhi.yang @ 2026-03-01 12:25 UTC (permalink / raw)
  To: openembedded-core; +Cc: alex.kanavin, mathieu.dubois-briand

From: Robert Yang <liezhi.yang@windriver.com>

The rpmbuild is from rpm-native, the lib and _libdir may be
incorrect for target, for example:

* rpm 4.20.1:
  No pkg-config files can be found for qemux86-64 or qemuarm64

* rpm 6.0.1:
  - qemux86-64: The _lib is lib64, this is incorrect when multilib is not
                enabled, and _libdir is RECIPE_SYSROOT_NATIVE/usr/lib, this
                makes the pkg-config files can't be matched.

  - qemuarm64/qemux86: The _lib is lib64, this is incorrect, but _libdir is
               correct (/usr/lib), so the pkg-config files can be found,
               this also looks wild.

The rpmbuild is like cross build, define the values when run it can fix the
problems for rpm 6.0.1.

Signed-off-by: Robert Yang <liezhi.yang@windriver.com>
---
 meta/classes-global/package_rpm.bbclass | 2 ++
 1 file changed, 2 insertions(+)

diff --git a/meta/classes-global/package_rpm.bbclass b/meta/classes-global/package_rpm.bbclass
index bb3b8f830a..f4dd779a52 100644
--- a/meta/classes-global/package_rpm.bbclass
+++ b/meta/classes-global/package_rpm.bbclass
@@ -620,6 +620,8 @@ python do_package_rpm () {
     cmd = rpmbuild
     cmd = cmd + " --noclean --nodeps --short-circuit --target " + pkgarch + " --buildroot " + pkgd
     cmd = cmd + " --define '_topdir " + workdir + "' --define '_rpmdir " + pkgwritedir + "'"
+    cmd = cmd + " --define '_lib ${BASELIB}'"
+    cmd = cmd + " --define '_libdir ${libdir}'"
     cmd = cmd + " --define '_builddir " + d.getVar('B') + "'"
     cmd = cmd + " --define '_build_name_fmt %%{NAME}-%%{VERSION}-%%{RELEASE}.%%{ARCH}.rpm'"
     cmd = cmd + " --define '_binaries_in_noarch_packages_terminate_build 0'"
-- 
2.49.1



^ permalink raw reply related	[flat|nested] 20+ messages in thread

* [PATCH v7 3/7] lib/oe/package.py: Don't add ldconfig_postinst_fragment for glibc or musl
  2026-03-01 12:25 [PATCH v7 0/7] rpm: 4.20.1 -> 6.0.1 liezhi.yang
  2026-03-01 12:25 ` [PATCH v7 1/7] package_rpm.bbclass: Drop external dependency generator to support rpm 6 liezhi.yang
  2026-03-01 12:25 ` [PATCH v7 2/7] package_rpm.bbclass: Define _lib and _libdir for rpmbuild liezhi.yang
@ 2026-03-01 12:26 ` liezhi.yang
  2026-03-01 12:26 ` [PATCH v7 4/7] glib/python3/acl: Add pkgconfig to RDEPENDS liezhi.yang
                   ` (4 subsequent siblings)
  7 siblings, 0 replies; 20+ messages in thread
From: liezhi.yang @ 2026-03-01 12:26 UTC (permalink / raw)
  To: openembedded-core; +Cc: alex.kanavin, mathieu.dubois-briand

From: Robert Yang <liezhi.yang@windriver.com>

Fixed:
$ bitbake core-image-full-cmdline:do_testimage
%post(busybox-1.37.0-r0.x86_64_x32): execv(/bin/sh) pid 624
error: failed to exec scriptlet interpreter /bin/sh: No such file or directory

It is because busybox and libc6 depends on each other, busybox' elf files
depends on libc6, and libc6's postin depends on busybox' /bin/sh, the do_rootfs
works well is because dnf-native has set RPM_NO_CHROOT_FOR_SCRIPTS=1, but it
would be failed without it.

In rpm 4.20.1, it let the installed files' Requires win, so it installed
busybox firstly, but in rpm 6.0.1, it let the postin's Requires win since
postin would run immediately after the files are installed, this does make
sense, so it installed busybox (which provides /bin/sh required by libc6'
postin) firstly, then we got the errors. I couldn't find which commit made this
change because a lot of files and functions are refactored during 4.20.1 and
6.0.0 (not .1), I also tried bisect, but failed because a lot of do_patch or
do_configure/do_compile failures for each build.

For libc6's the postin is:

  #!/bin/sh
  if [ x"$D" = "x" ]; then
      if [ -x /sbin/ldconfig ]; then /sbin/ldconfig ; fi
  fi

This doesn't make sense for libc6 since there is no /bin/sh or ldconfig when
libc6 is not ready yet, so just not add ldconfig_postinst_fragment for glibc
to fix the problem.

And also remove the workarounds in oeqa/runtime/cases/dnf.py, they are not
needed any more since the loop dependency is fixed.

Similar to musl.

Signed-off-by: Robert Yang <liezhi.yang@windriver.com>
---
 meta/lib/oe/package.py                    | 3 ++-
 meta/recipes-core/glibc/glibc-package.inc | 5 +++++
 meta/recipes-core/musl/musl_git.bb        | 5 +++++
 3 files changed, 12 insertions(+), 1 deletion(-)

diff --git a/meta/lib/oe/package.py b/meta/lib/oe/package.py
index 279cd567b3..d389a9f43b 100644
--- a/meta/lib/oe/package.py
+++ b/meta/lib/oe/package.py
@@ -1824,7 +1824,8 @@ def process_shlibs(pkgfiles, d):
                     if s[0] not in shlib_provider:
                         shlib_provider[s[0]] = {}
                     shlib_provider[s[0]][s[1]] = (pkg, pkgver)
-        if needs_ldconfig:
+        if needs_ldconfig and \
+                not bb.utils.to_boolean(d.getVar('SKIP_LDCONFIG_POSTINST_FRAGMENT:%s' % pkg)):
             bb.debug(1, 'adding ldconfig call to postinst for %s' % pkg)
             postinst = d.getVar('pkg_postinst:%s' % pkg)
             if not postinst:
diff --git a/meta/recipes-core/glibc/glibc-package.inc b/meta/recipes-core/glibc/glibc-package.inc
index 21f2200d19..11a568f302 100644
--- a/meta/recipes-core/glibc/glibc-package.inc
+++ b/meta/recipes-core/glibc/glibc-package.inc
@@ -293,6 +293,11 @@ pkg_postinst:nscd () {
 		fi
 	fi
 }
+
+# Avoid loop dependencies between /bin/sh and libc.so.6
+SKIP_LDCONFIG_POSTINST_FRAGMENT:${PN} = "1"
+do_package[vardeps] += "SKIP_LDCONFIG_POSTINST_FRAGMENT:${PN}"
+
 CONFFILES:nscd = "${sysconfdir}/nscd.conf"
 
 SYSTEMD_PACKAGES = "nscd"
diff --git a/meta/recipes-core/musl/musl_git.bb b/meta/recipes-core/musl/musl_git.bb
index 3f5fa37fba..d4e1e9e9bf 100644
--- a/meta/recipes-core/musl/musl_git.bb
+++ b/meta/recipes-core/musl/musl_git.bb
@@ -81,4 +81,9 @@ LEAD_SONAME = "libc.so"
 INSANE_SKIP:${PN}-dev = "staticdev"
 INSANE_SKIP:${PN} = "libdir"
 
+# Avoid loop dependencies between /bin/sh and libc.so
+SKIP_LDCONFIG_POSTINST_FRAGMENT:${PN} = "1"
+do_package[vardeps] += "SKIP_LDCONFIG_POSTINST_FRAGMENT:${PN}"
+
 UPSTREAM_CHECK_COMMITS = "1"
+
-- 
2.49.1



^ permalink raw reply related	[flat|nested] 20+ messages in thread

* [PATCH v7 4/7] glib/python3/acl: Add pkgconfig to RDEPENDS
  2026-03-01 12:25 [PATCH v7 0/7] rpm: 4.20.1 -> 6.0.1 liezhi.yang
                   ` (2 preceding siblings ...)
  2026-03-01 12:26 ` [PATCH v7 3/7] lib/oe/package.py: Don't add ldconfig_postinst_fragment for glibc or musl liezhi.yang
@ 2026-03-01 12:26 ` liezhi.yang
  2026-03-01 12:26 ` [PATCH v7 5/7] lib/oe/package.py: Don't redirect stderr liezhi.yang
                   ` (3 subsequent siblings)
  7 siblings, 0 replies; 20+ messages in thread
From: liezhi.yang @ 2026-03-01 12:26 UTC (permalink / raw)
  To: openembedded-core; +Cc: alex.kanavin, mathieu.dubois-briand

From: Robert Yang <liezhi.yang@windriver.com>

Fixed issues like::
Error:
 Problem 1: package python3-ptest-3.14.2-r0.cortexa15t2hf_neon from oe-repo requires python3-dev, but none of the providers can be installed
  - conflicting requests
  - nothing provides /usr/bin/pkg-config needed by python3-dev-3.14.2-r0.cortexa15t2hf_neon from oe-repo
 Problem 2: package libglib-2.0-ptest-1:2.86.3-r0.cortexa15t2hf_neon from oe-repo requires glib-2.0-dev, but none of the providers can be installed
  - conflicting requests
  - nothing provides /usr/bin/pkg-config needed by libglib-2.0-dev-1:2.86.3-r0.cortexa15t2hf_neon from oe-repo
(try to add '--skip-broken' to skip uninstallable packages or '--setopt=optional_metadata_types=filelists' to load additional filelists metadata)

This is because the rpm 6.0.1 can find the pkg-config files (.pc)
provides/requires correctly now, the rpm 4.20.1 couldn't find that.

Signed-off-by: Robert Yang <liezhi.yang@windriver.com>
---
 meta/recipes-core/glib-2.0/glib.inc            | 2 +-
 meta/recipes-devtools/python/python3_3.14.3.bb | 2 ++
 meta/recipes-support/attr/acl_2.3.2.bb         | 2 ++
 3 files changed, 5 insertions(+), 1 deletion(-)

diff --git a/meta/recipes-core/glib-2.0/glib.inc b/meta/recipes-core/glib-2.0/glib.inc
index d1f25ef8f2..377c6a323d 100644
--- a/meta/recipes-core/glib-2.0/glib.inc
+++ b/meta/recipes-core/glib-2.0/glib.inc
@@ -159,7 +159,7 @@ CODEGEN_PYTHON_RDEPENDS:mingw32 = ""
 
 RDEPENDS:${PN}-codegen += "${CODEGEN_PYTHON_RDEPENDS}"
 
-RDEPENDS:${PN}-dev += "${PN}-utils"
+RDEPENDS:${PN}-dev += "${PN}-utils pkgconfig"
 
 RDEPENDS:${PN}-ptest += "\
             coreutils \
diff --git a/meta/recipes-devtools/python/python3_3.14.3.bb b/meta/recipes-devtools/python/python3_3.14.3.bb
index e475c6e042..a85ec3a9bd 100644
--- a/meta/recipes-devtools/python/python3_3.14.3.bb
+++ b/meta/recipes-devtools/python/python3_3.14.3.bb
@@ -494,6 +494,8 @@ RDEPENDS:${PN}-pydoc += "${PN}-io"
 RDEPENDS:${PN}-tests:append:class-target = " ${MLPREFIX}bash"
 RDEPENDS:${PN}-tests:append:class-nativesdk = " ${MLPREFIX}bash"
 
+RDEPENDS:{PN}-dev += "pkgconfig"
+
 # Python's tests contain large numbers of files we don't need in the recipe sysroots
 SYSROOT_PREPROCESS_FUNCS += " py3_sysroot_cleanup"
 py3_sysroot_cleanup () {
diff --git a/meta/recipes-support/attr/acl_2.3.2.bb b/meta/recipes-support/attr/acl_2.3.2.bb
index a405cc2692..1a6c9136e9 100644
--- a/meta/recipes-support/attr/acl_2.3.2.bb
+++ b/meta/recipes-support/attr/acl_2.3.2.bb
@@ -67,4 +67,6 @@ RDEPENDS:${PN}-ptest = "acl \
                         perl-module-posix \
                        "
 
+RDEPENDS:${PN}-dev = "pkgconfig"
+
 BBCLASSEXTEND = "native nativesdk"
-- 
2.49.1



^ permalink raw reply related	[flat|nested] 20+ messages in thread

* [PATCH v7 5/7] lib/oe/package.py: Don't redirect stderr
  2026-03-01 12:25 [PATCH v7 0/7] rpm: 4.20.1 -> 6.0.1 liezhi.yang
                   ` (3 preceding siblings ...)
  2026-03-01 12:26 ` [PATCH v7 4/7] glib/python3/acl: Add pkgconfig to RDEPENDS liezhi.yang
@ 2026-03-01 12:26 ` liezhi.yang
  2026-03-01 12:26 ` [PATCH v7 6/7] target-sdk-provides-dummy: Add pkg-config to DUMMYPROVIDES liezhi.yang
                   ` (2 subsequent siblings)
  7 siblings, 0 replies; 20+ messages in thread
From: liezhi.yang @ 2026-03-01 12:26 UTC (permalink / raw)
  To: openembedded-core; +Cc: alex.kanavin, mathieu.dubois-briand

From: Robert Yang <liezhi.yang@windriver.com>

This can make the debug easier.

Signed-off-by: Robert Yang <liezhi.yang@windriver.com>
---
 meta/lib/oe/package.py | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/meta/lib/oe/package.py b/meta/lib/oe/package.py
index d389a9f43b..f97eae104f 100644
--- a/meta/lib/oe/package.py
+++ b/meta/lib/oe/package.py
@@ -276,7 +276,7 @@ def filedeprunner(pkg, pkgfiles, rpmdeps, pkgdest):
 
         return provides, requires
 
-    output = subprocess.check_output(shlex.split(rpmdeps) + pkgfiles, stderr=subprocess.STDOUT).decode("utf-8")
+    output = subprocess.check_output(shlex.split(rpmdeps) + pkgfiles).decode("utf-8")
     provides, requires = process_deps(output, pkg, pkgdest, provides, requires)
 
     return (pkg, provides, requires)
-- 
2.49.1



^ permalink raw reply related	[flat|nested] 20+ messages in thread

* [PATCH v7 6/7] target-sdk-provides-dummy: Add pkg-config to DUMMYPROVIDES
  2026-03-01 12:25 [PATCH v7 0/7] rpm: 4.20.1 -> 6.0.1 liezhi.yang
                   ` (4 preceding siblings ...)
  2026-03-01 12:26 ` [PATCH v7 5/7] lib/oe/package.py: Don't redirect stderr liezhi.yang
@ 2026-03-01 12:26 ` liezhi.yang
  2026-03-01 12:26 ` [PATCH v7 7/7] rpm: 4.20.1 -> 6.0.1 liezhi.yang
  2026-03-02 10:47 ` [PATCH v7 0/7] " Mathieu Dubois-Briand
  7 siblings, 0 replies; 20+ messages in thread
From: liezhi.yang @ 2026-03-01 12:26 UTC (permalink / raw)
  To: openembedded-core; +Cc: alex.kanavin, mathieu.dubois-briand

From: Robert Yang <liezhi.yang@windriver.com>

The rpm package requires /usr/bin/pkg-config when it has .pc files.
Fixed:
1) target-sdk-provides-dummy.bb:
  - package acl-dev-2.3.2-r0.core2_64 from oe-repo requires /usr/bin/pkg-config, but none of the providers can be installed

2) nativesdk-sdk-provides-dummy.bb:
  - package nativesdk-wayland-dev-1.24.0-r0.x86_64_nativesdk from oe-repo requires /usr/bin/pkg-config, but none of the providers can be installed

Signed-off-by: Robert Yang <liezhi.yang@windriver.com>
---
 meta/recipes-core/meta/nativesdk-sdk-provides-dummy.bb | 1 +
 meta/recipes-core/meta/target-sdk-provides-dummy.bb    | 1 +
 2 files changed, 2 insertions(+)

diff --git a/meta/recipes-core/meta/nativesdk-sdk-provides-dummy.bb b/meta/recipes-core/meta/nativesdk-sdk-provides-dummy.bb
index 1d71f373a4..9fd8122d77 100644
--- a/meta/recipes-core/meta/nativesdk-sdk-provides-dummy.bb
+++ b/meta/recipes-core/meta/nativesdk-sdk-provides-dummy.bb
@@ -8,6 +8,7 @@ DUMMYPROVIDES = "\
     /bin/sh \
     /bin/bash \
     /usr/bin/env \
+    /usr/bin/pkg-config \
     libGL.so()(64bit) \
     libGL.so \
 "
diff --git a/meta/recipes-core/meta/target-sdk-provides-dummy.bb b/meta/recipes-core/meta/target-sdk-provides-dummy.bb
index 849407cca5..618016b315 100644
--- a/meta/recipes-core/meta/target-sdk-provides-dummy.bb
+++ b/meta/recipes-core/meta/target-sdk-provides-dummy.bb
@@ -52,6 +52,7 @@ DUMMYPROVIDES = "\
     /bin/bash \
     /usr/bin/env \
     /usr/bin/perl \
+    /usr/bin/pkg-config \
     libperl.so.5 \
     libperl.so.5()(64bit) \
 "
-- 
2.49.1



^ permalink raw reply related	[flat|nested] 20+ messages in thread

* [PATCH v7 7/7] rpm: 4.20.1 -> 6.0.1
  2026-03-01 12:25 [PATCH v7 0/7] rpm: 4.20.1 -> 6.0.1 liezhi.yang
                   ` (5 preceding siblings ...)
  2026-03-01 12:26 ` [PATCH v7 6/7] target-sdk-provides-dummy: Add pkg-config to DUMMYPROVIDES liezhi.yang
@ 2026-03-01 12:26 ` liezhi.yang
  2026-03-02 10:47 ` [PATCH v7 0/7] " Mathieu Dubois-Briand
  7 siblings, 0 replies; 20+ messages in thread
From: liezhi.yang @ 2026-03-01 12:26 UTC (permalink / raw)
  To: openembedded-core; +Cc: alex.kanavin, mathieu.dubois-briand

From: Robert Yang <liezhi.yang@windriver.com>

* Add a tag to SRC_URI so that there will be errors when only change the
  filename during upgrade it, as suggested by Alexander.

* Rebase the following patch:
  - 0001-Add-a-color-setting-for-mips64_n32-binaries.patch
  - 0001-Do-not-add-an-unsatisfiable-dependency-when-building.patch
  - 0001-Do-not-read-config-files-from-HOME.patch
  - 0001-Do-not-reset-the-PATH-environment-variable-before-ru.patch
  - 0001-When-cross-installing-execute-package-scriptlets-wit.patch
  - 0001-build-pack.c-do-not-insert-payloadflags-into-.rpm-me.patch
  - 0001-lib-transaction.c-fix-file-conflicts-for-MIPS64-N32.patch
  - 0002-Add-support-for-prefixing-etc-from-RPM_ETCCONFIGDIR-.patch
  - 0002-rpmio-rpmglob.c-avoid-using-GLOB_BRACE-if-undefined-.patch
  - 0016-rpmscript.c-change-logging-level-around-scriptlets-t.patch

* Updated 0001-Do-not-hardcode-lib-rpm-as-the-installation-path-for.patch
  Remove the changes for macros.in since it doesn't work for rpmbuild, rpmbuild
  is like cross build, will define the values in package_rpm.bbclass.

* Remove 0001-CMakeLists.txt-set-libdir-to-CMAKE_INSTALL_FULL_LIBD.patch, there
  are no such warnings in rpm 6.0.1.

* Remove backported patch 0001-CMakeLists.txt-Fix-checking-for-CFLAGS.patch

* Add the following patches:
  - 0001-tools-elfdeps.cc-Remove-format-module.patch
    There is no format until gcc 13.1, so remove the format module to make it
    work on hosts such as Ubuntu 22.04.

  - 0001-macros.in-Set-_pkgverify_level-to-digest-as-RCPM-4.2.patch
    Fixed:
    GPG check FAILED

  - 0001-scripts-pkgconfigdeps.sh-Use-pkg-config-from-PATH.patch
    To fix "bitbake core-image-sato -cpopulate_sdk" error on Ubuntu 24.04 when
    pkg-config is installed on host, now the host contamination has been fixed,
    and the patch has been submitted to upstream:
    https://github.com/rpm-software-management/rpm/pull/4127

* Add scdoc-native to DEPENDS to fix do_configure error for both native and
  target:
  Could not find SCDOC using the following names: scdoc

  Note, both target and native need scdoc-native, it is used for generating the
  manual, the man pages in *man/* are scdoc sources

* Add /etc/rpm to nativesdk-rpm to fix:
  ERROR: nativesdk-rpm-1_6.0.1-r0 do_package: QA Issue: nativesdk-rpm:
  Files/directories were installed but not shipped in any package:
  /etc
  /etc/rpm

* Test info:
  PACKAGE_CLASSES = "package_rpm"
  $ bitbake core-image-sato world
  $ bitbake core-image-sato -cpopulate_sdk

Signed-off-by: Robert Yang <liezhi.yang@windriver.com>
---
 meta/classes-global/package_rpm.bbclass       |  3 ++
 ...olor-setting-for-mips64_n32-binaries.patch | 21 ++++----
 ...akeLists.txt-Fix-checking-for-CFLAGS.patch | 46 -----------------
 ...et-libdir-to-CMAKE_INSTALL_FULL_LIBD.patch | 50 -------------------
 ...satisfiable-dependency-when-building.patch | 17 ++++---
 ...lib-rpm-as-the-installation-path-for.patch | 23 +++------
 ...1-Do-not-read-config-files-from-HOME.patch | 17 ++++---
 ...-PATH-environment-variable-before-ru.patch | 15 +++---
 ...lling-execute-package-scriptlets-wit.patch | 11 ++--
 ...not-insert-payloadflags-into-.rpm-me.patch | 17 ++++---
 ....c-fix-file-conflicts-for-MIPS64-N32.patch | 17 ++++---
 ...kgverify_level-to-digest-as-RCPM-4.2.patch | 34 +++++++++++++
 ...nfigdeps.sh-Use-pkg-config-from-PATH.patch | 42 ++++++++++++++++
 ...ools-elfdeps.cc-Remove-format-module.patch | 37 ++++++++++++++
 ...prefixing-etc-from-RPM_ETCCONFIGDIR-.patch | 25 ++++++----
 ...avoid-using-GLOB_BRACE-if-undefined-.patch | 13 +++--
 ...ge-logging-level-around-scriptlets-t.patch | 13 ++---
 .../rpm/{rpm_4.20.1.bb => rpm_6.0.1.bb}       | 15 +++---
 18 files changed, 228 insertions(+), 188 deletions(-)
 delete mode 100644 meta/recipes-devtools/rpm/files/0001-CMakeLists.txt-Fix-checking-for-CFLAGS.patch
 delete mode 100644 meta/recipes-devtools/rpm/files/0001-CMakeLists.txt-set-libdir-to-CMAKE_INSTALL_FULL_LIBD.patch
 create mode 100644 meta/recipes-devtools/rpm/files/0001-macros.in-Set-_pkgverify_level-to-digest-as-RCPM-4.2.patch
 create mode 100644 meta/recipes-devtools/rpm/files/0001-scripts-pkgconfigdeps.sh-Use-pkg-config-from-PATH.patch
 create mode 100644 meta/recipes-devtools/rpm/files/0001-tools-elfdeps.cc-Remove-format-module.patch
 rename meta/recipes-devtools/rpm/{rpm_4.20.1.bb => rpm_6.0.1.bb} (94%)

diff --git a/meta/classes-global/package_rpm.bbclass b/meta/classes-global/package_rpm.bbclass
index f4dd779a52..d9ed31db54 100644
--- a/meta/classes-global/package_rpm.bbclass
+++ b/meta/classes-global/package_rpm.bbclass
@@ -14,6 +14,9 @@ RPMBUILD_COMPMODE ?= "${@'w%dT%d.zstdio' % (int(d.getVar('ZSTD_COMPRESSION_LEVEL
 
 PKGWRITEDIRRPM = "${WORKDIR}/deploy-rpms"
 
+# The pkgconfig-native is required by rpm's pkgconfigdeps.sh
+PACKAGE_DEPENDS += "pkgconfig-native"
+
 # Filter dependencies based on a provided function.
 def filter_deps(var, f):
     import collections
diff --git a/meta/recipes-devtools/rpm/files/0001-Add-a-color-setting-for-mips64_n32-binaries.patch b/meta/recipes-devtools/rpm/files/0001-Add-a-color-setting-for-mips64_n32-binaries.patch
index 769d7b3409..1bba3c0306 100644
--- a/meta/recipes-devtools/rpm/files/0001-Add-a-color-setting-for-mips64_n32-binaries.patch
+++ b/meta/recipes-devtools/rpm/files/0001-Add-a-color-setting-for-mips64_n32-binaries.patch
@@ -5,16 +5,19 @@ Subject: [PATCH] Add a color setting for mips64_n32 binaries
 
 Upstream-Status: Inappropriate [oe-core specific]
 Signed-off-by: Alexander Kanavin <alex.kanavin@gmail.com>
+
+Rebased to 6.0.1
+Signed-off-by: Robert Yang <liezhi.yang@windriver.com>
 ---
- build/rpmfc.c | 4 ++++
+ build/rpmfc.cc | 4 ++++
  rpmrc.in      | 2 ++
  2 files changed, 6 insertions(+)
 
-diff --git a/build/rpmfc.c b/build/rpmfc.c
-index 86dd36d14..df421a23f 100644
---- a/build/rpmfc.c
-+++ b/build/rpmfc.c
-@@ -716,6 +716,7 @@ static int rpmfcHelper(rpmfc fc, int *fnx, int nfn, const char *proto,
+diff --git a/build/rpmfc.cc b/build/rpmfc.cc
+index 833e56fa8..d50a3407f 100644
+--- a/build/rpmfc.cc
++++ b/build/rpmfc.cc
+@@ -690,6 +690,7 @@ static int rpmfcHelper(rpmfc fc, int *fnx, int nfn, const char *proto,
  static const struct rpmfcTokens_s rpmfcTokens[] = {
    { "directory",		RPMFC_INCLUDE },
  
@@ -22,7 +25,7 @@ index 86dd36d14..df421a23f 100644
    { "ELF 32-bit",		RPMFC_ELF32|RPMFC_INCLUDE },
    { "ELF 64-bit",		RPMFC_ELF64|RPMFC_INCLUDE },
  
-@@ -1258,6 +1259,9 @@ static uint32_t getElfColor(const char *fn)
+@@ -1191,6 +1192,9 @@ static uint32_t getElfColor(const char *fn)
  		color = 0;
  		break;
  	    }
@@ -33,10 +36,10 @@ index 86dd36d14..df421a23f 100644
  	if (elf)
  	    elf_end(elf);
 diff --git a/rpmrc.in b/rpmrc.in
-index 8646a966b..7349fdfd3 100644
+index 8fd0d7ee1..4cc52ceb3 100644
 --- a/rpmrc.in
 +++ b/rpmrc.in
-@@ -142,6 +142,8 @@ archcolor: mipsr6el 1
+@@ -152,6 +152,8 @@ archcolor: mipsr6el 1
  archcolor: mips64r6 2
  archcolor: mips64r6el 2
  
diff --git a/meta/recipes-devtools/rpm/files/0001-CMakeLists.txt-Fix-checking-for-CFLAGS.patch b/meta/recipes-devtools/rpm/files/0001-CMakeLists.txt-Fix-checking-for-CFLAGS.patch
deleted file mode 100644
index 412e1c146d..0000000000
--- a/meta/recipes-devtools/rpm/files/0001-CMakeLists.txt-Fix-checking-for-CFLAGS.patch
+++ /dev/null
@@ -1,46 +0,0 @@
-From e14502834fe6a9c6c9a439401ac3d2c8fd979267 Mon Sep 17 00:00:00 2001
-From: Robert Yang <liezhi.yang@windriver.com>
-Date: Sun, 8 Jun 2025 00:36:38 -0700
-Subject: [PATCH] CMakeLists.txt: Improve checking for CFLAGS
-
-The previous log wasn't clear:
--- Performing Test found
--- Performing Test found - Success
--- Performing Test found
--- Performing Test found - Success
--- Performing Test found
--- Performing Test found - Failed
-
-Use a new var compiler-supports${flag} will make it more clear:
--- Performing Test compiler-supports-fno-strict-overflow
--- Performing Test compiler-supports-fno-strict-overflow - Success
--- Performing Test compiler-supports-fno-delete-null-pointer-checks
--- Performing Test compiler-supports-fno-delete-null-pointer-checks - Success
--- Performing Test compiler-supports-fhardened
--- Performing Test compiler-supports-fhardened - Failed
-
-Upstream-Status: Backport [https://github.com/rpm-software-management/rpm/commit/e14502834fe6a9c6c9a439401ac3d2c8fd979267]
-
-Signed-off-by: Robert Yang <liezhi.yang@windriver.com>
----
- CMakeLists.txt | 5 ++---
- 1 file changed, 2 insertions(+), 3 deletions(-)
-
-diff --git a/CMakeLists.txt b/CMakeLists.txt
-index 08e3e5274..f275c396b 100644
---- a/CMakeLists.txt
-+++ b/CMakeLists.txt
-@@ -416,11 +416,10 @@ endif()
- 
- # try to ensure some compiler sanity and hardening options where supported
- foreach (flag -fno-strict-overflow -fno-delete-null-pointer-checks -fhardened)
--	check_c_compiler_flag(${flag} found)
--	if (found)
-+	check_c_compiler_flag(${flag} compiler-supports${flag})
-+	if (compiler-supports${flag})
- 		add_compile_options(${flag})
- 	endif()
--	unset(found)
- endforeach()
- 
- # generated sources
diff --git a/meta/recipes-devtools/rpm/files/0001-CMakeLists.txt-set-libdir-to-CMAKE_INSTALL_FULL_LIBD.patch b/meta/recipes-devtools/rpm/files/0001-CMakeLists.txt-set-libdir-to-CMAKE_INSTALL_FULL_LIBD.patch
deleted file mode 100644
index 7db643871f..0000000000
--- a/meta/recipes-devtools/rpm/files/0001-CMakeLists.txt-set-libdir-to-CMAKE_INSTALL_FULL_LIBD.patch
+++ /dev/null
@@ -1,50 +0,0 @@
-From cb5355da9b47166253dbe5ab3215e433b55068d1 Mon Sep 17 00:00:00 2001
-From: Yi Zhao <yi.zhao@windriver.com>
-Date: Fri, 26 Jul 2024 17:18:30 +0800
-Subject: [PATCH] CMakeLists.txt: set libdir to ${CMAKE_INSTALL_FULL_LIBDIR} in
- macros
-
-There is a patch in oe-core[1] to avoid hardcoded paths in macros. It
-tries to use libdir to expand %_libdir in macros.in. However, in
-upstream commit[2], libdir for macros in CMakeLists.txt is set to
-${prefix}/=LIB=, which causes %_libdir to expand to ${prefix}/=LIB=
-instead of the correct path in the final macros.
-
-On target:
-$ rpm --showrc | grep _libdir
-[snip]
--13: _libdir    ${prefix}/=LIB=
-[snip]
-
-This also causes %__pkgconfig_path in fileattrs/pkgconfig.attr to become
-an invalid regular expression when building rpm packages. This results a
-warning in log.do_package_write_rpm in all packages:
-
-Warning: Ignoring invalid regular expression ^((${prefix}/=LIB=|usr/share)/pkgconfig/.*.pc|usr/bin/pkg-config)$
-
-Set libdir to ${CMAKE_INSTALL_FULL_LIBDIR} instead of ${prefix}/=LIB= to
-make sure it is expanded to the correct path in macros.
-
-[1] https://git.openembedded.org/openembedded-core/tree/meta/recipes-devtools/rpm/files/0001-Do-not-hardcode-lib-rpm-as-the-installation-path-for.patch
-[2] https://github.com/rpm-software-management/rpm/commit/d2abb7a48760418aacd7f17c8b64e39c25ca50c9
-
-Upstream-Status: Inappropriate [oe specific]
-
-Signed-off-by: Yi Zhao <yi.zhao@windriver.com>
----
- CMakeLists.txt | 2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
-diff --git a/CMakeLists.txt b/CMakeLists.txt
-index 08dabffd3..1b7661139 100644
---- a/CMakeLists.txt
-+++ b/CMakeLists.txt
-@@ -96,7 +96,7 @@ function(makemacros)
- 	set(sysconfdir "${CMAKE_INSTALL_FULL_SYSCONFDIR}")
- 	set(sharedstatedir "${CMAKE_INSTALL_FULL_SHAREDSTATEDIR}")
- 	set(localstatedir "${CMAKE_INSTALL_FULL_LOCALSTATEDIR}")
--	set(libdir "\${prefix}/=LIB=")
-+	set(libdir "${CMAKE_INSTALL_FULL_LIBDIR}")
- 	set(includedir "\${prefix}/${CMAKE_INSTALL_INCLUDEDIR}")
- 	set(oldincludedir "${CMAKE_INSTALL_FULL_OLDINCLUDEDIR}")
- 	set(infodir "\${prefix}/${CMAKE_INSTALL_INFODIR}")
diff --git a/meta/recipes-devtools/rpm/files/0001-Do-not-add-an-unsatisfiable-dependency-when-building.patch b/meta/recipes-devtools/rpm/files/0001-Do-not-add-an-unsatisfiable-dependency-when-building.patch
index 96a5e14999..ec35b938b0 100644
--- a/meta/recipes-devtools/rpm/files/0001-Do-not-add-an-unsatisfiable-dependency-when-building.patch
+++ b/meta/recipes-devtools/rpm/files/0001-Do-not-add-an-unsatisfiable-dependency-when-building.patch
@@ -9,16 +9,19 @@ hand produces rpms that way by design.
 
 Upstream-Status: Inappropriate [oe-core specific]
 Signed-off-by: Alexander Kanavin <alex.kanavin@gmail.com>
+
+Rebased to 6.0.1
+Signed-off-by: Robert Yang <liezhi.yang@windriver.com>
 ---
- build/pack.c | 4 ----
+ build/pack.cc | 4 ----
  1 file changed, 4 deletions(-)
 
-diff --git a/build/pack.c b/build/pack.c
-index eb9c7b3f1..fb1f1bed8 100644
---- a/build/pack.c
-+++ b/build/pack.c
-@@ -712,10 +712,6 @@ static rpmRC packageBinary(rpmSpec spec, Package pkg, const char *cookie, int ch
- 	headerPutBin(pkg->header, RPMTAG_SOURCEPKGID, spec->sourcePkgId,16);
+diff --git a/build/pack.cc b/build/pack.cc
+index 49c9d0a58..b1cda6d75 100644
+--- a/build/pack.cc
++++ b/build/pack.cc
+@@ -805,10 +805,6 @@ static rpmRC packageBinary(rpmSpec spec, Package pkg, const char *cookie, int ch
+ 	headerPutBin(pkg->header, RPMTAG_SOURCESIGMD5, spec->sourcePkgId,16);
      }
  
 -    if (cheating) {
diff --git a/meta/recipes-devtools/rpm/files/0001-Do-not-hardcode-lib-rpm-as-the-installation-path-for.patch b/meta/recipes-devtools/rpm/files/0001-Do-not-hardcode-lib-rpm-as-the-installation-path-for.patch
index 6a44f4f22d..e7eead1b76 100644
--- a/meta/recipes-devtools/rpm/files/0001-Do-not-hardcode-lib-rpm-as-the-installation-path-for.patch
+++ b/meta/recipes-devtools/rpm/files/0001-Do-not-hardcode-lib-rpm-as-the-installation-path-for.patch
@@ -6,10 +6,15 @@ Subject: [PATCH] Do not hardcode "lib/rpm" as the installation path for
 
 Upstream-Status: Denied [https://github.com/rpm-software-management/rpm/pull/263]
 Signed-off-by: Alexander Kanavin <alex.kanavin@gmail.com>
+
+Updated for rpm 6.0.1:
+Remove the changes for macros.in since it doesn't work for rpmbuild, rpmbuild
+is like cross build, will define the values in package_rpm.bbclass.
+
+Signed-off-by: Robert Yang <liezhi.yang@windriver.com>
 ---
  CMakeLists.txt | 2 +-
- macros.in      | 2 +-
- 2 files changed, 2 insertions(+), 2 deletions(-)
+ 1 files changed, 1 insertions(+), 1 deletions(-)
 
 diff --git a/CMakeLists.txt b/CMakeLists.txt
 index de0b578a6..9a3aba071 100644
@@ -23,17 +28,3 @@ index de0b578a6..9a3aba071 100644
 +set(RPM_CONFIGDIR "${CMAKE_INSTALL_PREFIX}/${CMAKE_INSTALL_LIBDIR}/rpm" CACHE PATH "rpm home")
  set(RPM_MACROSDIR "${RPM_CONFIGDIR}/macros.d")
  set(RPM_VENDOR "vendor" CACHE STRING "rpm vendor string")
- 
-diff --git a/macros.in b/macros.in
-index 4d3e8afdc..66e31320f 100644
---- a/macros.in
-+++ b/macros.in
-@@ -964,7 +964,7 @@ Supplements:   (%{name} = %{version}-%{release} and langpacks-%{1})\
- %_sharedstatedir	%{_var}/lib
- %_localstatedir		%{_prefix}/var
- %_lib			lib
--%_libdir		%{_exec_prefix}/%{_lib}
-+%_libdir		@libdir@
- %_includedir		%{_prefix}/include
- %_infodir		%{_datadir}/info
- %_mandir		%{_datadir}/man
diff --git a/meta/recipes-devtools/rpm/files/0001-Do-not-read-config-files-from-HOME.patch b/meta/recipes-devtools/rpm/files/0001-Do-not-read-config-files-from-HOME.patch
index bfc9a74b6c..3ac6cf796c 100644
--- a/meta/recipes-devtools/rpm/files/0001-Do-not-read-config-files-from-HOME.patch
+++ b/meta/recipes-devtools/rpm/files/0001-Do-not-read-config-files-from-HOME.patch
@@ -5,15 +5,18 @@ Subject: [PATCH] Do not read config files from $HOME
 
 Upstream-Status: Inappropriate [oe-core specific]
 Signed-off-by: Alexander Kanavin <alex.kanavin@gmail.com>
+
+Rebased to 6.0.1
+Signed-off-by: Robert Yang <liezhi.yang@windriver.com>
 ---
- lib/rpmrc.c | 6 ++----
+ lib/rpmrc.cc | 6 ++----
  1 file changed, 2 insertions(+), 4 deletions(-)
 
-diff --git a/lib/rpmrc.c b/lib/rpmrc.c
-index 5d778b8b7..dc8d42aeb 100644
---- a/lib/rpmrc.c
-+++ b/lib/rpmrc.c
-@@ -485,8 +485,7 @@ static void setDefaults(void)
+diff --git a/lib/rpmrc.cc b/lib/rpmrc.cc
+index 2b3baeddc..cea6f4bc5 100644
+--- a/lib/rpmrc.cc
++++ b/lib/rpmrc.cc
+@@ -390,8 +390,7 @@ static void setDefaults(void)
      if (!defrcfiles) {
  	defrcfiles = rstrscat(NULL, confdir, "/rpmrc", ":",
  				confdir, "/" RPM_VENDOR "/rpmrc", ":",
@@ -23,7 +26,7 @@ index 5d778b8b7..dc8d42aeb 100644
      }
  
      /* macrofiles may be pre-set from --macros */
-@@ -498,8 +497,7 @@ static void setDefaults(void)
+@@ -403,8 +402,7 @@ static void setDefaults(void)
  				confdir, "/" RPM_VENDOR "/macros", ":",
  				SYSCONFDIR "/rpm/macros.*", ":",
  				SYSCONFDIR "/rpm/macros", ":",
diff --git a/meta/recipes-devtools/rpm/files/0001-Do-not-reset-the-PATH-environment-variable-before-ru.patch b/meta/recipes-devtools/rpm/files/0001-Do-not-reset-the-PATH-environment-variable-before-ru.patch
index d3263896ef..bcc07c1e07 100644
--- a/meta/recipes-devtools/rpm/files/0001-Do-not-reset-the-PATH-environment-variable-before-ru.patch
+++ b/meta/recipes-devtools/rpm/files/0001-Do-not-reset-the-PATH-environment-variable-before-ru.patch
@@ -8,15 +8,18 @@ We add lots of native stuff into it and scriptlets rely on that.
 
 Upstream-Status: Inappropriate [oe-core specific]
 Signed-off-by: Alexander Kanavin <alex.kanavin@gmail.com>
+
+Rebased to 6.0.1
+Signed-off-by: Robert Yang <liezhi.yang@windriver.com>
 ---
- lib/rpmscript.c | 2 +-
+ lib/rpmscript.cc | 2 +-
  1 file changed, 1 insertion(+), 1 deletion(-)
 
-diff --git a/lib/rpmscript.c b/lib/rpmscript.c
-index 060fd8124..4dc6466a8 100644
---- a/lib/rpmscript.c
-+++ b/lib/rpmscript.c
-@@ -251,7 +251,7 @@ static void doScriptExec(ARGV_const_t argv, ARGV_const_t prefixes,
+diff --git a/lib/rpmscript.cc b/lib/rpmscript.cc
+index b75a62085..2d7a4c889 100644
+--- a/lib/rpmscript.cc
++++ b/lib/rpmscript.cc
+@@ -260,7 +260,7 @@ static void doScriptExec(ARGV_const_t argv, ARGV_const_t prefixes,
  	if (ipath && ipath[5] != '%')
  	    path = ipath;
  
diff --git a/meta/recipes-devtools/rpm/files/0001-When-cross-installing-execute-package-scriptlets-wit.patch b/meta/recipes-devtools/rpm/files/0001-When-cross-installing-execute-package-scriptlets-wit.patch
index b71156fe12..b7c68a90bc 100644
--- a/meta/recipes-devtools/rpm/files/0001-When-cross-installing-execute-package-scriptlets-wit.patch
+++ b/meta/recipes-devtools/rpm/files/0001-When-cross-installing-execute-package-scriptlets-wit.patch
@@ -26,15 +26,16 @@ Upstream-Status: Inappropriate [oe-core specific]
 Signed-off-by: Alexander Kanavin <alex.kanavin@gmail.com>
 
 Rebased to 4.20.1
+Rebased to 6.0.1
 Signed-off-by: Robert Yang <liezhi.yang@windriver.com>
 ---
- lib/rpmscript.c | 9 +++++++--
+ lib/rpmscript.cc | 9 +++++++--
  1 file changed, 7 insertions(+), 2 deletions(-)
 
-diff --git a/lib/rpmscript.c b/lib/rpmscript.c
-index eb14870b3..1785e8f30 100644
---- a/lib/rpmscript.c
-+++ b/lib/rpmscript.c
+diff --git a/lib/rpmscript.cc b/lib/rpmscript.cc
+index b75a62085..7d667b7f5 100644
+--- a/lib/rpmscript.cc
++++ b/lib/rpmscript.cc
 @@ -456,8 +456,7 @@ exit:
  	Fclose(out);	/* XXX dup'd STDOUT_FILENO */
  
diff --git a/meta/recipes-devtools/rpm/files/0001-build-pack.c-do-not-insert-payloadflags-into-.rpm-me.patch b/meta/recipes-devtools/rpm/files/0001-build-pack.c-do-not-insert-payloadflags-into-.rpm-me.patch
index 0c29e5543a..9de291b057 100644
--- a/meta/recipes-devtools/rpm/files/0001-build-pack.c-do-not-insert-payloadflags-into-.rpm-me.patch
+++ b/meta/recipes-devtools/rpm/files/0001-build-pack.c-do-not-insert-payloadflags-into-.rpm-me.patch
@@ -1,7 +1,7 @@
 From e688eb54fd54d65181e94b854b3568d99cbf3a24 Mon Sep 17 00:00:00 2001
 From: Alexander Kanavin <alex@linutronix.de>
 Date: Tue, 31 Aug 2021 10:37:05 +0200
-Subject: [PATCH] build/pack.c: do not insert payloadflags into .rpm metadata
+Subject: [PATCH] build/pack.cc: do not insert payloadflags into .rpm metadata
 
 The flags look like '19T56' where 19 is the compression level
 (deterministic), and 56 is the amount of threads (varies from one
@@ -9,15 +9,18 @@ host to the next and breaks reproducibility for .rpm).
 
 Upstream-Status: Inappropriate [oe-core specific]
 Signed-off-by: Alexander Kanavin <alex@linutronix.de>
+
+Rebased to 6.0.1
+Signed-off-by: Robert Yang <liezhi.yang@windriver.com>
 ---
- build/pack.c | 2 +-
+ build/pack.cc | 2 +-
  1 file changed, 1 insertion(+), 1 deletion(-)
 
-diff --git a/build/pack.c b/build/pack.c
-index fb1f1bed8..45885a6ac 100644
---- a/build/pack.c
-+++ b/build/pack.c
-@@ -330,7 +330,7 @@ static char *getIOFlags(Package pkg)
+diff --git a/build/pack.cc b/build/pack.cc
+index b1cda6d75..1425d27ba 100644
+--- a/build/pack.cc
++++ b/build/pack.cc
+@@ -338,7 +338,7 @@ static char *getIOFlags(Package pkg)
  	    headerPutString(pkg->header, RPMTAG_PAYLOADCOMPRESSOR, compr);
  	buf = xstrdup(rpmio_flags);
  	buf[s - rpmio_flags] = '\0';
diff --git a/meta/recipes-devtools/rpm/files/0001-lib-transaction.c-fix-file-conflicts-for-MIPS64-N32.patch b/meta/recipes-devtools/rpm/files/0001-lib-transaction.c-fix-file-conflicts-for-MIPS64-N32.patch
index 7d443ccc6c..b65a7ef81b 100644
--- a/meta/recipes-devtools/rpm/files/0001-lib-transaction.c-fix-file-conflicts-for-MIPS64-N32.patch
+++ b/meta/recipes-devtools/rpm/files/0001-lib-transaction.c-fix-file-conflicts-for-MIPS64-N32.patch
@@ -1,7 +1,7 @@
 From ad530868e37f09e9236c085d25a834304750704b Mon Sep 17 00:00:00 2001
 From: Changqing Li <changqing.li@windriver.com>
 Date: Thu, 7 May 2020 17:40:58 +0800
-Subject: [PATCH] lib/transaction.c: fix file conflicts for MIPS64 N32
+Subject: [PATCH] lib/transaction.cc: fix file conflicts for MIPS64 N32
 
 This patch is from:
 https://github.com/rpm-software-management/rpm/issues/193
@@ -27,15 +27,18 @@ Fixed by performing a 'last-in-wins' resolution when "neither is preferred".
 Upstream-Status: Submitted <https://github.com/rpm-software-management/rpm/issues/193>
 
 Signed-off-by: Changqing Li <changqing.li@windriver.com>
+
+Rebased to 6.0.1
+Signed-off-by: Robert Yang <liezhi.yang@windriver.com>
 ---
- lib/transaction.c | 13 ++++++++++++-
+ lib/transaction.cc | 13 ++++++++++++-
  1 file changed, 12 insertions(+), 1 deletion(-)
 
-diff --git a/lib/transaction.c b/lib/transaction.c
-index 5e4414d2a..b1c55bd44 100644
---- a/lib/transaction.c
-+++ b/lib/transaction.c
-@@ -400,7 +400,18 @@ static int handleColorConflict(rpmts ts,
+diff --git a/lib/transaction.cc b/lib/transaction.cc
+index de7cdabb2..697268733 100644
+--- a/lib/transaction.cc
++++ b/lib/transaction.cc
+@@ -375,7 +375,18 @@ static int handleColorConflict(rpmts ts,
  		    rpmfsSetAction(ofs, ofx, FA_CREATE);
  		rpmfsSetAction(fs, fx, FA_SKIPCOLOR);
  		rConflicts = 0;
diff --git a/meta/recipes-devtools/rpm/files/0001-macros.in-Set-_pkgverify_level-to-digest-as-RCPM-4.2.patch b/meta/recipes-devtools/rpm/files/0001-macros.in-Set-_pkgverify_level-to-digest-as-RCPM-4.2.patch
new file mode 100644
index 0000000000..682c57c1f0
--- /dev/null
+++ b/meta/recipes-devtools/rpm/files/0001-macros.in-Set-_pkgverify_level-to-digest-as-RCPM-4.2.patch
@@ -0,0 +1,34 @@
+From 1cb53934b83b794c319813106c9f12d75cce66d2 Mon Sep 17 00:00:00 2001
+From: Robert Yang <liezhi.yang@windriver.com>
+Date: Sun, 18 Jan 2026 19:24:42 -0800
+Subject: [PATCH] macros.in: Set _pkgverify_level to digest as RPM 4.20.1
+
+Fixed:
+$ bitbake core-image-minimal
+Package bash-5.3-r0.16.x86_64_v3.rpm is not signed
+GPG check FAILED
+
+Set _pkgverify_level to digest as RPM 4.20.1 can fix the problem.
+
+Upstream-Status: Inappropriate [oe-core specific]
+Signed-off-by: Robert Yang <liezhi.yang@windriver.com>
+---
+ macros.in | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/macros.in b/macros.in
+index 38066f00c..7fe00ad09 100644
+--- a/macros.in
++++ b/macros.in
+@@ -680,7 +680,7 @@ Supplements:   (%{name} = %{version}-%{release} and langpacks-%{1})\
+ # signature	require valid signature(s)
+ # digest	require valid digest(s)
+ # none		traditional rpm behavior, nothing required
+-%_pkgverify_level all
++%_pkgverify_level digest
+ 
+ # Disabler flags for package verification (similar to vsflags)
+ # Set to 0x0 for full compatibility with v4 packages.
+-- 
+2.49.0
+
diff --git a/meta/recipes-devtools/rpm/files/0001-scripts-pkgconfigdeps.sh-Use-pkg-config-from-PATH.patch b/meta/recipes-devtools/rpm/files/0001-scripts-pkgconfigdeps.sh-Use-pkg-config-from-PATH.patch
new file mode 100644
index 0000000000..62dad7df06
--- /dev/null
+++ b/meta/recipes-devtools/rpm/files/0001-scripts-pkgconfigdeps.sh-Use-pkg-config-from-PATH.patch
@@ -0,0 +1,42 @@
+From d1739be5b733277d681fbfe4c3447ddfb6c2e45a Mon Sep 17 00:00:00 2001
+From: Robert Yang <liezhi.yang@windriver.com>
+Date: Sat, 28 Feb 2026 02:14:19 -0500
+Subject: [PATCH] scripts/pkgconfigdeps.sh: Use pkg-config from PATH
+
+pkgconfig: Used for running during rpmbuild
+pkgconfig_requires: Used as 'Requires:' in the spec file.
+
+This can reduce host contaminations, and make it friendly to cross compile.
+
+Upstream-Status: Submitted [https://github.com/rpm-software-management/rpm/pull/4127]
+
+Signed-off-by: Robert Yang <liezhi.yang@windriver.com>
+---
+ scripts/pkgconfigdeps.sh | 5 +++--
+ 1 file changed, 3 insertions(+), 2 deletions(-)
+
+diff --git a/scripts/pkgconfigdeps.sh b/scripts/pkgconfigdeps.sh
+index ef4581856..c7fce4145 100755
+--- a/scripts/pkgconfigdeps.sh
++++ b/scripts/pkgconfigdeps.sh
+@@ -1,6 +1,7 @@
+ #!/bin/bash
+ 
+-pkgconfig=/usr/bin/pkg-config
++pkgconfig=$(which pkg-config)
++pkgconfig_requires=/usr/bin/pkg-config
+ test -x $pkgconfig || {
+     cat > /dev/null
+     exit 0
+@@ -44,7 +45,7 @@ case $1 in
+     case "${filename}" in
+     *.pc)
+ 	i="`expr $i + 1`"
+-	[ $i -eq 1 ] && echo "$pkgconfig"
++	[ $i -eq 1 ] && echo "$pkgconfig_requires"
+ 	DIR="`dirname ${filename}`"
+ 	export PKG_CONFIG_PATH="$DIR:$DIR/../../share/pkgconfig"
+ 	$pkgconfig --print-requires --print-requires-private "$filename" 2> /dev/null | while read n r v ; do
+-- 
+2.43.0
+
diff --git a/meta/recipes-devtools/rpm/files/0001-tools-elfdeps.cc-Remove-format-module.patch b/meta/recipes-devtools/rpm/files/0001-tools-elfdeps.cc-Remove-format-module.patch
new file mode 100644
index 0000000000..1863fcb7b8
--- /dev/null
+++ b/meta/recipes-devtools/rpm/files/0001-tools-elfdeps.cc-Remove-format-module.patch
@@ -0,0 +1,37 @@
+From 3536ef6bb74144cf9dce10200cd62c2ad9f7cae4 Mon Sep 17 00:00:00 2001
+From: Robert Yang <liezhi.yang@windriver.com>
+Date: Thu, 15 Jan 2026 19:36:17 -0800
+Subject: [PATCH] tools/elfdeps.cc: Remove format module
+
+There is no format until gcc 13.1, so remove the format module to make it work
+on hosts such as Ubuntu 22.04.
+
+Upstream-Status: Inappropriate [oe-core specific]
+Signed-off-by: Robert Yang <liezhi.yang@windriver.com>
+---
+ tools/elfdeps.cc | 3 +--
+ 1 file changed, 1 insertion(+), 2 deletions(-)
+
+diff --git a/tools/elfdeps.cc b/tools/elfdeps.cc
+index 17884b24e..33ff8d740 100644
+--- a/tools/elfdeps.cc
++++ b/tools/elfdeps.cc
+@@ -1,6 +1,5 @@
+ #include "system.h"
+ 
+-#include <format>
+ #include <string>
+ #include <vector>
+ 
+@@ -105,7 +104,7 @@ static void addSoDep(std::vector<std::string> & deps,
+     if (ver.empty() && marker.empty()) {
+ 	addDep(deps, soname);
+     } else {
+-	auto dep = std::format("{}({}){}", soname, ver, marker);
++	std::string dep = soname + "(" + ver + ")" + marker;
+ 	addDep(deps, dep);
+     }
+ }
+-- 
+2.49.0
+
diff --git a/meta/recipes-devtools/rpm/files/0002-Add-support-for-prefixing-etc-from-RPM_ETCCONFIGDIR-.patch b/meta/recipes-devtools/rpm/files/0002-Add-support-for-prefixing-etc-from-RPM_ETCCONFIGDIR-.patch
index 082fb343c2..758094f9e4 100644
--- a/meta/recipes-devtools/rpm/files/0002-Add-support-for-prefixing-etc-from-RPM_ETCCONFIGDIR-.patch
+++ b/meta/recipes-devtools/rpm/files/0002-Add-support-for-prefixing-etc-from-RPM_ETCCONFIGDIR-.patch
@@ -9,15 +9,18 @@ from target rootfs instead of its own native sysroot.
 
 Upstream-Status: Inappropriate [oe-core specific]
 Signed-off-by: Alexander Kanavin <alex.kanavin@gmail.com>
+
+Rebased to 6.0.1
+Signed-off-by: Robert Yang <liezhi.yang@windriver.com>
 ---
- lib/rpmrc.c | 18 +++++++++++++-----
+ lib/rpmrc.cc | 18 +++++++++++++-----
  1 file changed, 13 insertions(+), 5 deletions(-)
 
-diff --git a/lib/rpmrc.c b/lib/rpmrc.c
-index dc8d42aeb..3f2996850 100644
---- a/lib/rpmrc.c
-+++ b/lib/rpmrc.c
-@@ -481,11 +481,14 @@ static void setDefaults(void)
+diff --git a/lib/rpmrc.cc b/lib/rpmrc.cc
+index cea6f4bc5..e6cf21e1b 100644
+--- a/lib/rpmrc.cc
++++ b/lib/rpmrc.cc
+@@ -386,11 +386,14 @@ static void setDefaults(void)
  	    userrc = xstrdup(oldrc);
  	}
      }
@@ -33,7 +36,7 @@ index dc8d42aeb..3f2996850 100644
      }
  
      /* macrofiles may be pre-set from --macros */
-@@ -495,9 +498,9 @@ static void setDefaults(void)
+@@ -400,9 +403,9 @@ static void setDefaults(void)
  				confdir, "/platform/%{_target}/macros", ":",
  				confdir, "/fileattrs/*.attr", ":",
  				confdir, "/" RPM_VENDOR "/macros", ":",
@@ -46,7 +49,7 @@ index dc8d42aeb..3f2996850 100644
      }
  
      free(usermacros);
-@@ -1142,7 +1145,11 @@ static void read_auxv(void)
+@@ -1048,7 +1051,11 @@ static void read_auxv(void)
   */
  static void defaultMachine(rpmrcCtx ctx, const char ** arch, const char ** os)
  {
@@ -55,11 +58,11 @@ index dc8d42aeb..3f2996850 100644
 +    if (etcconfdir == NULL)
 +        etcconfdir = "";
 +
-+    const char * const platform_path = rstrscat(NULL, etcconfdir, SYSCONFDIR "/rpm/platform", NULL);
++    char * const platform_path = rstrscat(NULL, etcconfdir, SYSCONFDIR "/rpm/platform", NULL);
      static struct utsname un;
      char * chptr;
-     canonEntry canon;
-@@ -1462,6 +1469,7 @@ static void defaultMachine(rpmrcCtx ctx, const char ** arch, const char ** os)
+     int rc;
+@@ -1378,6 +1385,7 @@ static void defaultMachine(rpmrcCtx ctx, const char ** arch, const char ** os)
  
      if (arch) *arch = un.machine;
      if (os) *os = un.sysname;
diff --git a/meta/recipes-devtools/rpm/files/0002-rpmio-rpmglob.c-avoid-using-GLOB_BRACE-if-undefined-.patch b/meta/recipes-devtools/rpm/files/0002-rpmio-rpmglob.c-avoid-using-GLOB_BRACE-if-undefined-.patch
index 00fe19108e..751ef7b096 100644
--- a/meta/recipes-devtools/rpm/files/0002-rpmio-rpmglob.c-avoid-using-GLOB_BRACE-if-undefined-.patch
+++ b/meta/recipes-devtools/rpm/files/0002-rpmio-rpmglob.c-avoid-using-GLOB_BRACE-if-undefined-.patch
@@ -1,7 +1,7 @@
 From d8972ff7fa0a30e199144ba135223bf561874e01 Mon Sep 17 00:00:00 2001
 From: Alexander Kanavin <alex@linutronix.de>
 Date: Tue, 16 Jan 2024 09:59:26 +0100
-Subject: [PATCH] rpmio/rpmglob.c: avoid using GLOB_BRACE if undefined by C
+Subject: [PATCH] rpmio/rpmglob.cc: avoid using GLOB_BRACE if undefined by C
  library
 
 This addresses musl failures; if there is code out there relying on
@@ -11,14 +11,17 @@ This is unlikely to be trivially fixable upstream.
 
 Upstream-Status: Inappropriate [reported at https://github.com/rpm-software-management/rpm/issues/2844]
 Signed-off-by: Alexander Kanavin <alex@linutronix.de>
+
+Rebased to 6.0.1
+Signed-off-by: Robert Yang <liezhi.yang@windriver.com>
 ---
- rpmio/rpmglob.c | 6 ++++++
+ rpmio/rpmglob.cc | 6 ++++++
  1 file changed, 6 insertions(+)
 
-diff --git a/rpmio/rpmglob.c b/rpmio/rpmglob.c
+diff --git a/rpmio/rpmglob.cc b/rpmio/rpmglob.cc
 index eb439cad8..1eef0b851 100644
---- a/rpmio/rpmglob.c
-+++ b/rpmio/rpmglob.c
+--- a/rpmio/rpmglob.cc
++++ b/rpmio/rpmglob.cc
 @@ -33,6 +33,12 @@
  
  #include "debug.h"
diff --git a/meta/recipes-devtools/rpm/files/0016-rpmscript.c-change-logging-level-around-scriptlets-t.patch b/meta/recipes-devtools/rpm/files/0016-rpmscript.c-change-logging-level-around-scriptlets-t.patch
index bac2d6331c..28fb5f001b 100644
--- a/meta/recipes-devtools/rpm/files/0016-rpmscript.c-change-logging-level-around-scriptlets-t.patch
+++ b/meta/recipes-devtools/rpm/files/0016-rpmscript.c-change-logging-level-around-scriptlets-t.patch
@@ -1,7 +1,7 @@
 From 452b696ea3e1975ea30cf7a92678aa4b316e6300 Mon Sep 17 00:00:00 2001
 From: Alexander Kanavin <alex.kanavin@gmail.com>
 Date: Thu, 10 Jan 2019 18:14:18 +0100
-Subject: [PATCH] rpmscript.c: change logging level around scriptlets to INFO
+Subject: [PATCH] rpmscript.cc: change logging level around scriptlets to INFO
  from DEBUG
 
 That way we can debug scriptlet failures without writing lots of
@@ -11,15 +11,16 @@ Upstream-Status: Inappropriate [oe-core specific]
 Signed-off-by: Alexander Kanavin <alex.kanavin@gmail.com>
 
 Rebased to 4.20.1
+Rebased to 6.0.1
 Signed-off-by: Robert Yang <liezhi.yang@windriver.com>
 ---
- lib/rpmscript.c | 8 ++++----
+ lib/rpmscript.cc | 8 ++++----
  1 file changed, 4 insertions(+), 4 deletions(-)
 
-diff --git a/lib/rpmscript.c b/lib/rpmscript.c
-index e9f288ae0..f0c628708 100644
---- a/lib/rpmscript.c
-+++ b/lib/rpmscript.c
+diff --git a/lib/rpmscript.cc b/lib/rpmscript.cc
+index fe5fc9138..861fd8ca8 100644
+--- a/lib/rpmscript.cc
++++ b/lib/rpmscript.cc
 @@ -299,7 +299,7 @@ static char * writeScript(const char *cmd, const char *script)
      if (Ferror(fd))
  	goto exit;
diff --git a/meta/recipes-devtools/rpm/rpm_4.20.1.bb b/meta/recipes-devtools/rpm/rpm_6.0.1.bb
similarity index 94%
rename from meta/recipes-devtools/rpm/rpm_4.20.1.bb
rename to meta/recipes-devtools/rpm/rpm_6.0.1.bb
index ba967ec1fa..22fb7502d1 100644
--- a/meta/recipes-devtools/rpm/rpm_4.20.1.bb
+++ b/meta/recipes-devtools/rpm/rpm_6.0.1.bb
@@ -24,7 +24,7 @@ HOMEPAGE = "http://www.rpm.org"
 LICENSE = "GPL-2.0-only"
 LIC_FILES_CHKSUM = "file://COPYING;md5=066ecde17828e5c8911ec9eae8be78f4"
 
-SRC_URI = "git://github.com/rpm-software-management/rpm;branch=rpm-4.20.x;protocol=https \
+SRC_URI = "git://github.com/rpm-software-management/rpm;branch=${BPN}-6.0.x;tag=${BP}-release;protocol=https \
            file://0001-Do-not-add-an-unsatisfiable-dependency-when-building.patch \
            file://0001-Do-not-read-config-files-from-HOME.patch \
            file://0001-When-cross-installing-execute-package-scriptlets-wit.patch \
@@ -37,14 +37,15 @@ SRC_URI = "git://github.com/rpm-software-management/rpm;branch=rpm-4.20.x;protoc
            file://0001-build-pack.c-do-not-insert-payloadflags-into-.rpm-me.patch \
            file://0001-CMakeLists.txt-look-for-lua-with-pkg-config-rather-t.patch \
            file://0002-rpmio-rpmglob.c-avoid-using-GLOB_BRACE-if-undefined-.patch \
-           file://0001-CMakeLists.txt-set-libdir-to-CMAKE_INSTALL_FULL_LIBD.patch \
-           file://0001-CMakeLists.txt-Fix-checking-for-CFLAGS.patch \
+           file://0001-tools-elfdeps.cc-Remove-format-module.patch \
+           file://0001-macros.in-Set-_pkgverify_level-to-digest-as-RCPM-4.2.patch \
+           file://0001-scripts-pkgconfigdeps.sh-Use-pkg-config-from-PATH.patch \
            "
 
 PE = "1"
-SRCREV = "c8dc5ea575a2e9c1488036d12f4b75f6a5a49120"
+SRCREV = "58a917a6c5e24e9e8a01976c17d2eee06249b9b6"
 
-DEPENDS = "lua libgcrypt file popt xz bzip2 elfutils python3 sqlite3 zstd"
+DEPENDS = "lua libgcrypt file popt xz bzip2 elfutils python3 sqlite3 zstd scdoc-native"
 DEPENDS:append:class-native = " file-replacement-native bzip2-replacement-native"
 
 EXTRA_OECMAKE:append = " -D__CURL:FILEPATH=curl"
@@ -151,7 +152,8 @@ do_install:append () {
 
 FILES:${PN} += "${libdir}/rpm-plugins/*.so \
                "
-FILES:${PN}:append:class-nativesdk = " ${SDKPATHNATIVE}/environment-setup.d/rpm.sh"
+FILES:${PN}:append:class-nativesdk = " ${SDKPATHNATIVE}/environment-setup.d/rpm.sh \
+    /etc/rpm"
 
 FILES:${PN}-dev += "${libdir}/rpm-plugins/*.la \
                     "
@@ -178,6 +180,7 @@ FILES:${PN}-build = "\
     ${libdir}/rpm/mkinstalldirs \
     ${libdir}/rpm/macros.p* \
     ${libdir}/rpm/fileattrs/* \
+    ${libdir}/rpm/rpm-setup-autosign \
 "
 
 FILES:${PN}-sign = "\
-- 
2.49.1



^ permalink raw reply related	[flat|nested] 20+ messages in thread

* Re: [PATCH v7 0/7] rpm: 4.20.1 -> 6.0.1
  2026-03-01 12:25 [PATCH v7 0/7] rpm: 4.20.1 -> 6.0.1 liezhi.yang
                   ` (6 preceding siblings ...)
  2026-03-01 12:26 ` [PATCH v7 7/7] rpm: 4.20.1 -> 6.0.1 liezhi.yang
@ 2026-03-02 10:47 ` Mathieu Dubois-Briand
  7 siblings, 0 replies; 20+ messages in thread
From: Mathieu Dubois-Briand @ 2026-03-02 10:47 UTC (permalink / raw)
  To: liezhi.yang, openembedded-core; +Cc: alex.kanavin

On Sun Mar 1, 2026 at 1:25 PM CET, liezhi.yang wrote:
> From: Robert Yang <liezhi.yang@windriver.com>
>
> * V7:
>   - Add 0001-scripts-pkgconfigdeps.sh-Use-pkg-config-from-PATH.patch:
>     To fix "bitbake core-image-sato -cpopulate_sdk" error on Ubuntu 24.04 when
>     pkg-config is installed on host, now the host contamination has been fixed,
>     and the patch has been submitted to upstream:
>     https://github.com/rpm-software-management/rpm/pull/4127
>
> * V6
>   - Fix -cpopulate_sdk error when DISTRO = "poky"
>
> * V5
>   - Fix RP's comments: Don't hardcode libc6 into package_rpm.bbclass
>   - Use SKIP_LDCONFIG_POSTINST_FRAGMENT:${PN} to fix the loop dependencies
>     between /bin/sh and libc.so. 
>
> * V4
>   - Fix loop dependencies issues for libc6 and busybox
>   - Fix issues for can't find pkg-config files (.pc) on qemux86-64.
>
> * V3
>   - Fix Alexender's comments
>     a) Suppot rpm 6
>     b) Move rpm-setup-autosign to rpm-build
>     c) Remove -DLIBELF_FOUND=False
>
>   - Fix build for nativesdk-rpm
>
>   - Drop patch for createrepo-c since it has been upgraded (rev:
>     804a238c8a4e86c2bcfb2192d54cb861d5fd32a6)
>
> * V1 & V2
>   - Initial version
>

Hi Robert,

Thanks for the new version, but it looks like we still have some kind of
issue.

ERROR: core-image-sato-1.0-r0 do_populate_sdk: Could not invoke dnf. Command '/srv/pokybuild/yocto-worker/genericx86/build/build/tmp/work/genericx86-poky-linux/core-image-sato/1.0/recipe-sysroot-native/usr/bin/dnf -v --rpmverbosity=info -y ...
...
--> Starting dependency resolution
--> Finished dependency resolution
Error:
 Problem 1: conflicting requests
  - nothing provides pkgconfig(gtk+-3.0) needed by libfm-dev-1.3.2-r0.core2_32 from oe-repo
 Problem 2: conflicting requests
  - nothing provides pkgconfig(cairo) >= 1.10.0 needed by libharfbuzz-dev-12.3.2-r0.core2_32 from oe-repo
 Problem 3: conflicting requests
  - nothing provides pkgconfig(cairo) >= 1.18.0 needed by librsvg-2-dev-2.61.3-r0.core2_32 from oe-repo
  - nothing provides pkgconfig(cairo-gobject) >= 1.18.0 needed by librsvg-2-dev-2.61.3-r0.core2_32 from oe-repo
  - nothing provides pkgconfig(cairo-png) >= 1.18.0 needed by librsvg-2-dev-2.61.3-r0.core2_32 from oe-repo
  - nothing provides pkgconfig(pangocairo) >= 1.50.0 needed by librsvg-2-dev-2.61.3-r0.core2_32 from oe-repo
  - nothing provides pkgconfig(pangoft2) >= 1.50.0 needed by librsvg-2-dev-2.61.3-r0.core2_32 from oe-repo
 Problem 4: conflicting requests
  - nothing provides pkgconfig(gtk+-3.0) needed by matchbox-panel-2-dev-2.12-r0.core2_32 from oe-repo
 Problem 5: conflicting requests
  - nothing provides pkgconfig(cairo) >= 1.0 needed by vte-dev-0.82.2-r0.core2_32 from oe-repo
  - nothing provides pkgconfig(pango) >= 1.22.0 needed by vte-dev-0.82.2-r0.core2_32 from oe-repo
  - nothing provides pkgconfig(gtk+-3.0) >= 3.24.0 needed by vte-dev-0.82.2-r0.core2_32 from oe-repo
 Problem 6: package pango-dev-1.57.0-r0.core2_32 from oe-repo requires harfbuzz-dev, but none of the providers can be installed
  - conflicting requests
  - nothing provides pkgconfig(cairo) >= 1.10.0 needed by libharfbuzz-dev-12.3.2-r0.core2_32 from oe-repo
 Problem 7: package gtk+3-dev-3.24.51-r0.core2_32 from oe-repo requires pango-dev, but none of the providers can be installed
  - package pango-dev-1.57.0-r0.core2_32 from oe-repo requires harfbuzz-dev, but none of the providers can be installed
  - conflicting requests
  - nothing provides pkgconfig(cairo) >= 1.10.0 needed by libharfbuzz-dev-12.3.2-r0.core2_32 from oe-repo
(try to add '--skip-broken' to skip uninstallable packages)

https://autobuilder.yoctoproject.org/valkyrie/#/builders/19/builds/3281
https://autobuilder.yoctoproject.org/valkyrie/#/builders/36/builds/3277

ERROR: build-appliance-image-15.0.0-r0 do_rootfs: Could not invoke dnf. Command '/srv/pokybuild/yocto-worker/build-appliance/build/build/tmp/work/qemux86_64-poky-linux/build-appliance-image/15.0.0/recipe-sysroot-native/usr/bin/dnf -v --rpmverbosity=info -y -c /srv/pokybuild/yocto-worker/build-appliance/build/build/tmp/work/qemux86_64-poky-linux/build-appliance-image/15.0.0/rootfs/etc/dnf/dnf.conf --setopt=reposdir=/srv/pokybuild/yocto-worker/build-appliance/build/build/tmp/work/qemux86_64-poky-linux/build-appliance-image/15.0.0/rootfs/etc/yum.repos.d --installroot=/srv/pokybuild/yocto-worker/build-appliance/build/build/tmp/work/qemux86_64-poky-linux/build-appliance-image/15.0.0/rootfs --setopt=logdir=/srv/pokybuild/yocto-worker/build-appliance/build/build/tmp/work/qemux86_64-poky-linux/build-appliance-image/15.0.0/temp --repofrompath=oe-repo,/srv/pokybuild/yocto-worker/build-appliance/build/build/tmp/work/qemux86_64-poky-linux/build-appliance-image/15.0.0/oe-rootfs-repo --nogpgcheck install connman connman-plugin-ethernet dhcpcd dnf kernel-dev kernel-devsrc packagegroup-core-boot packagegroup-core-ssh-openssh packagegroup-core-x11-base packagegroup-self-hosted perl-misc psplash python3-pip rpm run-postinsts tzdata locale-base-c locale-base-en-us locale-base-en-gb' returned 1:
...
--> Starting dependency resolution
--> Finished dependency resolution
Error:
 Problem: package packagegroup-self-hosted-graphics-1.0-r0.x86_64_v3 from oe-repo requires libgl-dev, but none of the providers can be installed
  - package packagegroup-self-hosted-1.0-r0.x86_64_v3 from oe-repo requires packagegroup-self-hosted-graphics, but none of the providers can be installed
  - package libgl-mesa-dev-2:26.0.1-r0.x86_64_v3 from oe-repo requires libdrm-dev, but none of the providers can be installed
  - package libgl-mesa-dev-2:26.0.1-r0.x86_64_v3 from oe-repo requires pkgconfig(libdrm) >= 2.4.75, but none of the providers can be installed
  - conflicting requests
  - nothing provides pkgconfig(pciaccess) >= 0.10 needed by libdrm-dev-2.4.131-r0.x86_64_v3 from oe-repo
(try to add '--skip-broken' to skip uninstallable packages)

https://autobuilder.yoctoproject.org/valkyrie/#/builders/78/builds/3303

Can you have a look at these?
Thanks,
Mathieu

-- 
Mathieu Dubois-Briand, Bootlin
Embedded Linux and Kernel engineering
https://bootlin.com



^ permalink raw reply	[flat|nested] 20+ messages in thread

* Re: [OE-core] [PATCH v7 1/7] package_rpm.bbclass: Drop external dependency generator to support rpm 6
  2026-03-01 12:25 ` [PATCH v7 1/7] package_rpm.bbclass: Drop external dependency generator to support rpm 6 liezhi.yang
@ 2026-03-02 10:57   ` Richard Purdie
  2026-03-03  9:41     ` Robert Yang
  0 siblings, 1 reply; 20+ messages in thread
From: Richard Purdie @ 2026-03-02 10:57 UTC (permalink / raw)
  To: liezhi.yang, openembedded-core; +Cc: alex.kanavin, mathieu.dubois-briand

On Sun, 2026-03-01 at 04:25 -0800, Robert Yang via lists.openembedded.org wrote:
> From: Robert Yang <liezhi.yang@windriver.com>
> 
> The rpm 6 doesn't support external dependency generator. Oe-core used it for
> per file dependency which was saved into pn.requires and pn.provides, but that
> hasn't been used any more since 2012 (rev:
> be40f6d0bb80274366af00461112af65687a4de8), and there were no complains or
> updates in the past 13 years, so just drop it to support rpm 6.

This commit message is confusing. I think we need to be clear about the
following:

Is this file dependency information written into the existing rpms with
rpm 5?

After the changes, do we still have the file dependency information or
is this being removed?

I think you're saying there were no external users after 2012 but I'm
not even 100% sure about that.

Cheers,

Richard


^ permalink raw reply	[flat|nested] 20+ messages in thread

* Re: [OE-core] [PATCH v7 1/7] package_rpm.bbclass: Drop external dependency generator to support rpm 6
  2026-03-02 10:57   ` [OE-core] " Richard Purdie
@ 2026-03-03  9:41     ` Robert Yang
  2026-03-03 12:01       ` Robert Yang
  0 siblings, 1 reply; 20+ messages in thread
From: Robert Yang @ 2026-03-03  9:41 UTC (permalink / raw)
  To: Richard Purdie, openembedded-core
  Cc: alex.kanavin, mathieu.dubois-briand, Burton, Ross

Hi RP,

Thanks for the comments.

On 3/2/26 18:57, Richard Purdie wrote:
> On Sun, 2026-03-01 at 04:25 -0800, Robert Yang via lists.openembedded.org wrote:
>> From: Robert Yang <liezhi.yang@windriver.com>
>>
>> The rpm 6 doesn't support external dependency generator. Oe-core used it for
>> per file dependency which was saved into pn.requires and pn.provides, but that
>> hasn't been used any more since 2012 (rev:
>> be40f6d0bb80274366af00461112af65687a4de8), and there were no complains or
>> updates in the past 13 years, so just drop it to support rpm 6.
> 
> This commit message is confusing. I think we need to be clear about the
> following:
> 
> Is this file dependency information written into the existing rpms with
> rpm 5?

I think you mean rpm 4 here, no, it isn't:
* You disabled it by default since 2012 (rev: 
be40f6d0bb80274366af00461112af65687a4de8), and said:

     Since few people use the per file dependency information, this patch
     goes for the faster approach. It can be enabled if anyone needs it although
     I'd mention that its being used to us as this code may well go away in
     the future if nobody complains.

* And even if we enable it manually, these info are just used by rpmbuild, 
others shouldn't use it?

> 
> After the changes, do we still have the file dependency information or
> is this being removed?

Yes, we will still have the file dependency information generated by rpmbuild,
here are related code from rpm:

     /* If new-fangled dependency generation is disabled ... */
     if (!rpmExpandNumeric("%{?_use_internal_dependency_generator}")) {
     if (fc->rpmformat < 6) {
         /* ... then generate dependencies using %{__find_requires} et al. */
         rpmlog(RPMLOG_WARNING,
         _("Deprecated external dependency generator is used!\n"));
         rc = rpmfcApplyExternal(fc);
     } else {
         rpmlog(RPMLOG_ERR,
         _("External dependency generator is incompatible with v6 packages\n"));
         rc = RPMRC_FAIL;
     }
     } else {
     /* ... otherwise generate per-file dependencies */
     rc = rpmfcApplyInternal(fc);
     }

> 
> I think you're saying there were no external users after 2012 but I'm
> not even 100% sure about that.

These info are for rpmbuild, there shouldn't be external users? And we must drop
it to support rpm 6.

And now I can't reproduce the build errors from autobuilder, I suspect it is
because of host contamination issues, I tried to reproduce it on ubuntu
25.04 and debian v12, but can't reproduce them, it looks to me that cairo.pc's
provides (pkgconfig(cairo) = 1.18.4) wasn't generate in autobuilder, but I don't
  know why.

We didn't get such issues in rpm4 was because rpm/scripts/pkgconfigdeps.sh 
didn't work in Yocto in the past, now rpm6 makes it work, so we got so many
corner case issues, I've tried do as many tests I can, but still failed.

// Robert

 > > Cheers,
> 
> Richard



^ permalink raw reply	[flat|nested] 20+ messages in thread

* Re: [OE-core] [PATCH v7 1/7] package_rpm.bbclass: Drop external dependency generator to support rpm 6
  2026-03-03  9:41     ` Robert Yang
@ 2026-03-03 12:01       ` Robert Yang
  2026-03-04 17:52         ` Mathieu Dubois-Briand
  0 siblings, 1 reply; 20+ messages in thread
From: Robert Yang @ 2026-03-03 12:01 UTC (permalink / raw)
  To: Richard Purdie, mathieu.dubois-briand
  Cc: alex.kanavin, Ross Burton, openembedded-core

Hi Mathieu,

Correct Ross' email (I had planed to ask Ross for help about cairo, but used
the wrong email, now the issue has been fixed, thanks all the same).

And please see my reply below.

On 3/3/26 17:41, Robert Yang wrote:
> Hi RP,
> 
> Thanks for the comments.
> 
> On 3/2/26 18:57, Richard Purdie wrote:
>> On Sun, 2026-03-01 at 04:25 -0800, Robert Yang via lists.openembedded.org wrote:
>>> From: Robert Yang <liezhi.yang@windriver.com>
>>>
>>> The rpm 6 doesn't support external dependency generator. Oe-core used it for
>>> per file dependency which was saved into pn.requires and pn.provides, but that
>>> hasn't been used any more since 2012 (rev:
>>> be40f6d0bb80274366af00461112af65687a4de8), and there were no complains or
>>> updates in the past 13 years, so just drop it to support rpm 6.
>>
>> This commit message is confusing. I think we need to be clear about the
>> following:
>>
>> Is this file dependency information written into the existing rpms with
>> rpm 5?
> 
> I think you mean rpm 4 here, no, it isn't:
> * You disabled it by default since 2012 (rev: 
> be40f6d0bb80274366af00461112af65687a4de8), and said:
> 
>      Since few people use the per file dependency information, this patch
>      goes for the faster approach. It can be enabled if anyone needs it although
>      I'd mention that its being used to us as this code may well go away in
>      the future if nobody complains.
> 
> * And even if we enable it manually, these info are just used by rpmbuild, 
> others shouldn't use it?
> 
>>
>> After the changes, do we still have the file dependency information or
>> is this being removed?
> 
> Yes, we will still have the file dependency information generated by rpmbuild,
> here are related code from rpm:
> 
>      /* If new-fangled dependency generation is disabled ... */
>      if (!rpmExpandNumeric("%{?_use_internal_dependency_generator}")) {
>      if (fc->rpmformat < 6) {
>          /* ... then generate dependencies using %{__find_requires} et al. */
>          rpmlog(RPMLOG_WARNING,
>          _("Deprecated external dependency generator is used!\n"));
>          rc = rpmfcApplyExternal(fc);
>      } else {
>          rpmlog(RPMLOG_ERR,
>          _("External dependency generator is incompatible with v6 packages\n"));
>          rc = RPMRC_FAIL;
>      }
>      } else {
>      /* ... otherwise generate per-file dependencies */
>      rc = rpmfcApplyInternal(fc);
>      }
> 
>>
>> I think you're saying there were no external users after 2012 but I'm
>> not even 100% sure about that.
> 
> These info are for rpmbuild, there shouldn't be external users? And we must drop
> it to support rpm 6.
> 
> And now I can't reproduce the build errors from autobuilder, I suspect it is
> because of host contamination issues, I tried to reproduce it on ubuntu
> 25.04 and debian v12, but can't reproduce them, it looks to me that cairo.pc's
> provides (pkgconfig(cairo) = 1.18.4) wasn't generate in autobuilder, but I don't
>   know why.

I've figured out the root cause, it is because I had added pkgconfig-native to
PACKAGE_DEPENDS, it would fail when do_packagedata is from sstate cache, but
do_package_write_rpm is re-run (not from sstate-cache), here is the reproducer:
$ bitbake cairo -ccleansstate && bitbake cairo -cpackagedata && bitbake cairo 
-cclean && bitbake cairo -cpackage_write_rpm

$ rpm -qp --provides tmp/deploy/rpm/cortexa57/libcairo-dev-1.18.4-r0.cort
exa57.rpm
cairo-dev = 1.18.4
libcairo-dev = 1.18.4-r0

Then the "pkgconfig(cairo) = 1.18.4" is gone from the provides which is
incorrect. I should add pkgconfig-native as rpm-native:
  python () {
      if d.getVar('PACKAGES') != '':
          deps = ' rpm-native:do_populate_sysroot 
virtual/fakeroot-native:do_populate_sysroot'
+        # The pkgconfig-native is required by rpm's pkgconfigdeps.sh
+        deps += ' pkgconfig-native:do_populate_sysroot'
          d.appendVarFlag('do_package_write_rpm', 'depends', deps)
          d.setVarFlag('do_package_write_rpm', 'fakeroot', '1')


I've updated it in the pull (patch 7). @Mathieu, would you please help to
re-test it if RP has no objections on the external generator?

   https://github.com/robertlinux/yocto rbt/rpm
   https://github.com/robertlinux/yocto/tree/rbt/rpm

for you to fetch changes up to f8fa3090196bae3e12ad76f12f101722d84ca20a:

   rpm: 4.20.1 -> 6.0.1 (2026-03-03 11:29:07 +0000)

----------------------------------------------------------------

Robert Yang (7):
   package_rpm.bbclass: Drop external dependency generator to support rpm
     6
   package_rpm.bbclass: Define _lib and _libdir for rpmbuild
   lib/oe/package.py: Don't add ldconfig_postinst_fragment for glibc or
     musl
   glib/python3/acl: Add pkgconfig to RDEPENDS
   lib/oe/package.py: Don't redirect stderr
   target-sdk-provides-dummy: Add pkg-config to DUMMYPROVIDES
   rpm: 4.20.1 -> 6.0.1

// Robert

> 
> We didn't get such issues in rpm4 was because rpm/scripts/pkgconfigdeps.sh 
> didn't work in Yocto in the past, now rpm6 makes it work, so we got so many
> corner case issues, I've tried do as many tests I can, but still failed.
> 
> // Robert
> 
>  > > Cheers,
>>
>> Richard
> 



^ permalink raw reply	[flat|nested] 20+ messages in thread

* Re: [OE-core] [PATCH v7 1/7] package_rpm.bbclass: Drop external dependency generator to support rpm 6
  2026-03-03 12:01       ` Robert Yang
@ 2026-03-04 17:52         ` Mathieu Dubois-Briand
  2026-03-07 15:22           ` Robert Yang
  0 siblings, 1 reply; 20+ messages in thread
From: Mathieu Dubois-Briand @ 2026-03-04 17:52 UTC (permalink / raw)
  To: liezhi.yang, Richard Purdie; +Cc: alex.kanavin, Ross Burton, openembedded-core

On Tue Mar 3, 2026 at 1:01 PM CET, Robert Yang via lists.openembedded.org wrote:
> I've updated it in the pull (patch 7). @Mathieu, would you please help to
> re-test it if RP has no objections on the external generator?
>
>    https://github.com/robertlinux/yocto rbt/rpm
>    https://github.com/robertlinux/yocto/tree/rbt/rpm
>
> for you to fetch changes up to f8fa3090196bae3e12ad76f12f101722d84ca20a:
>
>    rpm: 4.20.1 -> 6.0.1 (2026-03-03 11:29:07 +0000)
>
> ----------------------------------------------------------------
>
> Robert Yang (7):
>    package_rpm.bbclass: Drop external dependency generator to support rpm
>      6
>    package_rpm.bbclass: Define _lib and _libdir for rpmbuild
>    lib/oe/package.py: Don't add ldconfig_postinst_fragment for glibc or
>      musl
>    glib/python3/acl: Add pkgconfig to RDEPENDS
>    lib/oe/package.py: Don't redirect stderr
>    target-sdk-provides-dummy: Add pkg-config to DUMMYPROVIDES
>    rpm: 4.20.1 -> 6.0.1
>
> // Robert

Hi Robert,

I did pick these commits.

We have some different errors now.

ERROR: core-image-sato-1.0-r0 do_rootfs: Could not invoke dnf. Command '/srv/pokybuild/yocto-worker/qa-extras2/build/build/tmp/work/qemux86_64-poky-linux/core-image-sato/1.0/recipe-sysroot-native/usr/bin/dnf -v --rpmverbosity=info -y -c /srv/pokybuild/yocto-worker/qa-extras2/build/build/tmp/work/qemux86_64-poky-linux/core-image-sato/1.0/rootfs/etc/dnf/dnf.conf --setopt=reposdir=/srv/pokybuild/yocto-worker/qa-extras2/build/build/tmp/work/qemux86_64-poky-linux/core-image-sato/1.0/rootfs/etc/yum.repos.d --installroot=/srv/pokybuild/yocto-worker/qa-extras2/build/build/tmp/work/qemux86_64-poky-linux/core-image-sato/1.0/rootfs --setopt=logdir=/srv/pokybuild/yocto-worker/qa-extras2/build/build/tmp/work/qemux86_64-poky-linux/core-image-sato/1.0/temp --repofrompath=oe-repo,/srv/pokybuild/yocto-worker/qa-extras2/build/build/tmp/work/qemux86_64-poky-linux/core-image-sato/1.0/oe-rootfs-repo --nogpgcheck install dnf packagegroup-base-extended packagegroup-core-boot packagegroup-core-ssh-dropbear packagegroup-core-x11-base packagegroup-core-x11-sato psplash rpm run-postinsts locale-base-c locale-base-en-us locale-base-en-gb' returned 1:
...
++ tr -d '[:space:]'
/var/tmp/rpm-tmp.U4iaJX: line 98: tr: command not found
+ test x '!=' x
++ echo --system --home /var/lib/dbus --no-create-home --shell /bin/false --user-group messagebus
++ tr -d '[:space:]'
/var/tmp/rpm-tmp.U4iaJX: line 114: tr: command not found
+ test x '!=' x
++ echo
++ tr -d '[:space:]'
/var/tmp/rpm-tmp.U4iaJX: line 130: tr: command not found
...

  Installing       : dbus-common-1.16.2-r0.x86_64_v3                    682/790Error: Cannot open file /srv/pokybuild/yocto-worker/qa-extras2/build/build/tmp/work/qemux86_64-poky-linux/core-image-sato/1.0/oe-rootfs-repo/rpm/x86_64_v3/dbus-1-1.16.2-r0.x86_64_v3.rpm: [Errno 2] No such file or directory: '/srv/pokybuild/yocto-worker/qa-extras2/build/build/tmp/work/qemux86_64-poky-linux/core-image-sato/1.0/oe-rootfs-repo/rpm/x86_64_v3/dbus-1-1.16.2-r0.x86_64_v3.rpm'
TypeError: 'NoneType' object cannot be interpreted as an integer
FATAL ERROR: python callback ??? failed, aborting!

https://autobuilder.yoctoproject.org/valkyrie/#/builders/26/builds/3271
https://autobuilder.yoctoproject.org/valkyrie/#/builders/40/builds/3276

I'm a bit surprise by tr errors here, as it looks a bit unrelated. There
is a small probability it's related to something else in my branch, but
this series is clearly the best candidate. I will keep you updated if it
finally looks related to something else.

I also got some more traditional "nothing provides" errors:

https://autobuilder.yoctoproject.org/valkyrie/#/builders/78/builds/3317
https://autobuilder.yoctoproject.org/valkyrie/#/builders/8/builds/3321

Can you have a look at these?

Thanks,
Mathieu

-- 
Mathieu Dubois-Briand, Bootlin
Embedded Linux and Kernel engineering
https://bootlin.com



^ permalink raw reply	[flat|nested] 20+ messages in thread

* Re: [OE-core] [PATCH v7 1/7] package_rpm.bbclass: Drop external dependency generator to support rpm 6
  2026-03-04 17:52         ` Mathieu Dubois-Briand
@ 2026-03-07 15:22           ` Robert Yang
  2026-03-09  7:04             ` Mathieu Dubois-Briand
  0 siblings, 1 reply; 20+ messages in thread
From: Robert Yang @ 2026-03-07 15:22 UTC (permalink / raw)
  To: Mathieu Dubois-Briand, Richard Purdie
  Cc: alex.kanavin, Ross Burton, openembedded-core

Hi Mathieu,

On 3/5/26 01:52, Mathieu Dubois-Briand wrote:
> On Tue Mar 3, 2026 at 1:01 PM CET, Robert Yang via lists.openembedded.org wrote:
>> I've updated it in the pull (patch 7). @Mathieu, would you please help to
>> re-test it if RP has no objections on the external generator?
>>
>>     https://github.com/robertlinux/yocto rbt/rpm
>>     https://github.com/robertlinux/yocto/tree/rbt/rpm
>>
>> for you to fetch changes up to f8fa3090196bae3e12ad76f12f101722d84ca20a:
>>
>>     rpm: 4.20.1 -> 6.0.1 (2026-03-03 11:29:07 +0000)
>>
>> ----------------------------------------------------------------
>>
>> Robert Yang (7):
>>     package_rpm.bbclass: Drop external dependency generator to support rpm
>>       6
>>     package_rpm.bbclass: Define _lib and _libdir for rpmbuild
>>     lib/oe/package.py: Don't add ldconfig_postinst_fragment for glibc or
>>       musl
>>     glib/python3/acl: Add pkgconfig to RDEPENDS
>>     lib/oe/package.py: Don't redirect stderr
>>     target-sdk-provides-dummy: Add pkg-config to DUMMYPROVIDES
>>     rpm: 4.20.1 -> 6.0.1
>>
>> // Robert
> 
> Hi Robert,
> 
> I did pick these commits.

Thank you very much for your great patience.

> 
> We have some different errors now.
> 
> ERROR: core-image-sato-1.0-r0 do_rootfs: Could not invoke dnf. Command '/srv/pokybuild/yocto-worker/qa-extras2/build/build/tmp/work/qemux86_64-poky-linux/core-image-sato/1.0/recipe-sysroot-native/usr/bin/dnf -v --rpmverbosity=info -y -c /srv/pokybuild/yocto-worker/qa-extras2/build/build/tmp/work/qemux86_64-poky-linux/core-image-sato/1.0/rootfs/etc/dnf/dnf.conf --setopt=reposdir=/srv/pokybuild/yocto-worker/qa-extras2/build/build/tmp/work/qemux86_64-poky-linux/core-image-sato/1.0/rootfs/etc/yum.repos.d --installroot=/srv/pokybuild/yocto-worker/qa-extras2/build/build/tmp/work/qemux86_64-poky-linux/core-image-sato/1.0/rootfs --setopt=logdir=/srv/pokybuild/yocto-worker/qa-extras2/build/build/tmp/work/qemux86_64-poky-linux/core-image-sato/1.0/temp --repofrompath=oe-repo,/srv/pokybuild/yocto-worker/qa-extras2/build/build/tmp/work/qemux86_64-poky-linux/core-image-sato/1.0/oe-rootfs-repo --nogpgcheck install dnf packagegroup-base-extended packagegroup-core-boot packagegroup-core-ssh-dropbear packagegroup-core-x11-base packagegroup-core-x11-sato psplash rpm run-postinsts locale-base-c locale-base-en-us locale-base-en-gb' returned 1:

It looks that something is wrong with the storage.

> ...
> ++ tr -d '[:space:]'
> /var/tmp/rpm-tmp.U4iaJX: line 98: tr: command not found
> + test x '!=' x
> ++ echo --system --home /var/lib/dbus --no-create-home --shell /bin/false --user-group messagebus
> ++ tr -d '[:space:]'
> /var/tmp/rpm-tmp.U4iaJX: line 114: tr: command not found
> + test x '!=' x
> ++ echo
> ++ tr -d '[:space:]'
> /var/tmp/rpm-tmp.U4iaJX: line 130: tr: command not found
> ...
> 
>    Installing       : dbus-common-1.16.2-r0.x86_64_v3                    682/790Error: Cannot open file /srv/pokybuild/yocto-worker/qa-extras2/build/build/tmp/work/qemux86_64-poky-linux/core-image-sato/1.0/oe-rootfs-repo/rpm/x86_64_v3/dbus-1-1.16.2-r0.x86_64_v3.rpm: [Errno 2] No such file or directory: '/srv/pokybuild/yocto-worker/qa-extras2/build/build/tmp/work/qemux86_64-poky-linux/core-image-sato/1.0/oe-rootfs-repo/rpm/x86_64_v3/dbus-1-1.16.2-r0.x86_64_v3.rpm'
> TypeError: 'NoneType' object cannot be interpreted as an integer
> FATAL ERROR: python callback ??? failed, aborting!
> 
> https://autobuilder.yoctoproject.org/valkyrie/#/builders/26/builds/3271
> https://autobuilder.yoctoproject.org/valkyrie/#/builders/40/builds/3276
> 
> I'm a bit surprise by tr errors here, as it looks a bit unrelated. There
> is a small probability it's related to something else in my branch, but
> this series is clearly the best candidate. I will keep you updated if it
> finally looks related to something else.
> 
> I also got some more traditional "nothing provides" errors:
> 
> https://autobuilder.yoctoproject.org/valkyrie/#/builders/78/builds/3317
> https://autobuilder.yoctoproject.org/valkyrie/#/builders/8/builds/3321
 > > Can you have a look at these?

For the above two errors, it is because the sstate cache had been polluted. I
moved pkgconfig-native from do_package to do_package_write_rpm, the
do_package_write_rpm still can be mirrored from the old (but bad) sstate-cache.
It woudl work when the old sstate cache are invalid. So I've sent a
gettext update patch:

[OE-core] [PATCH 0/1] gettext: 0.26 -> 1.0

It would make nearly all the sstate cache invalid, and re-built from sources,
then this should be fixed.

What I'm worried about is that gettext is very basic package, I hope it won't
cause more troubles. I've done world build on qemux86-64 and qemuarm64.

Other reipes' upgrading may also can make the sstate cache invalid.

// Robert

> 
> Thanks,
> Mathieu
> 


^ permalink raw reply	[flat|nested] 20+ messages in thread

* Re: [OE-core] [PATCH v7 1/7] package_rpm.bbclass: Drop external dependency generator to support rpm 6
  2026-03-07 15:22           ` Robert Yang
@ 2026-03-09  7:04             ` Mathieu Dubois-Briand
  2026-03-09  7:15               ` Mathieu Dubois-Briand
  2026-03-09  7:26               ` Robert Yang
  0 siblings, 2 replies; 20+ messages in thread
From: Mathieu Dubois-Briand @ 2026-03-09  7:04 UTC (permalink / raw)
  To: liezhi.yang, Richard Purdie; +Cc: alex.kanavin, Ross Burton, openembedded-core

On Sat Mar 7, 2026 at 4:22 PM CET, Robert Yang via lists.openembedded.org wrote:
> Hi Mathieu,
>
> On 3/5/26 01:52, Mathieu Dubois-Briand wrote:
>> On Tue Mar 3, 2026 at 1:01 PM CET, Robert Yang via lists.openembedded.org wrote:
>>> I've updated it in the pull (patch 7). @Mathieu, would you please help to
>>> re-test it if RP has no objections on the external generator?
>>>
>>>     https://github.com/robertlinux/yocto rbt/rpm
>>>     https://github.com/robertlinux/yocto/tree/rbt/rpm
>>>
>>> for you to fetch changes up to f8fa3090196bae3e12ad76f12f101722d84ca20a:
>>>
>>>     rpm: 4.20.1 -> 6.0.1 (2026-03-03 11:29:07 +0000)
>>>
>>> ----------------------------------------------------------------
>>>
>>> Robert Yang (7):
>>>     package_rpm.bbclass: Drop external dependency generator to support rpm
>>>       6
>>>     package_rpm.bbclass: Define _lib and _libdir for rpmbuild
>>>     lib/oe/package.py: Don't add ldconfig_postinst_fragment for glibc or
>>>       musl
>>>     glib/python3/acl: Add pkgconfig to RDEPENDS
>>>     lib/oe/package.py: Don't redirect stderr
>>>     target-sdk-provides-dummy: Add pkg-config to DUMMYPROVIDES
>>>     rpm: 4.20.1 -> 6.0.1
>>>
>>> // Robert
>> 
>> Hi Robert,
>> 
>> I did pick these commits.
>
> Thank you very much for your great patience.
>
>> 
>> We have some different errors now.
>> 
>> ERROR: core-image-sato-1.0-r0 do_rootfs: Could not invoke dnf. Command '/srv/pokybuild/yocto-worker/qa-extras2/build/build/tmp/work/qemux86_64-poky-linux/core-image-sato/1.0/recipe-sysroot-native/usr/bin/dnf -v --rpmverbosity=info -y -c /srv/pokybuild/yocto-worker/qa-extras2/build/build/tmp/work/qemux86_64-poky-linux/core-image-sato/1.0/rootfs/etc/dnf/dnf.conf --setopt=reposdir=/srv/pokybuild/yocto-worker/qa-extras2/build/build/tmp/work/qemux86_64-poky-linux/core-image-sato/1.0/rootfs/etc/yum.repos.d --installroot=/srv/pokybuild/yocto-worker/qa-extras2/build/build/tmp/work/qemux86_64-poky-linux/core-image-sato/1.0/rootfs --setopt=logdir=/srv/pokybuild/yocto-worker/qa-extras2/build/build/tmp/work/qemux86_64-poky-linux/core-image-sato/1.0/temp --repofrompath=oe-repo,/srv/pokybuild/yocto-worker/qa-extras2/build/build/tmp/work/qemux86_64-poky-linux/core-image-sato/1.0/oe-rootfs-repo --nogpgcheck install dnf packagegroup-base-extended packagegroup-core-boot packagegroup-core-ssh-dropbear packagegroup-core-x11-base packagegroup-core-x11-sato psplash rpm run-postinsts locale-base-c locale-base-en-us locale-base-en-gb' returned 1:
>
> It looks that something is wrong with the storage.
>
>> ...
>> ++ tr -d '[:space:]'
>> /var/tmp/rpm-tmp.U4iaJX: line 98: tr: command not found
>> + test x '!=' x
>> ++ echo --system --home /var/lib/dbus --no-create-home --shell /bin/false --user-group messagebus
>> ++ tr -d '[:space:]'
>> /var/tmp/rpm-tmp.U4iaJX: line 114: tr: command not found
>> + test x '!=' x
>> ++ echo
>> ++ tr -d '[:space:]'
>> /var/tmp/rpm-tmp.U4iaJX: line 130: tr: command not found
>> ...
>> 
>>    Installing       : dbus-common-1.16.2-r0.x86_64_v3                    682/790Error: Cannot open file /srv/pokybuild/yocto-worker/qa-extras2/build/build/tmp/work/qemux86_64-poky-linux/core-image-sato/1.0/oe-rootfs-repo/rpm/x86_64_v3/dbus-1-1.16.2-r0.x86_64_v3.rpm: [Errno 2] No such file or directory: '/srv/pokybuild/yocto-worker/qa-extras2/build/build/tmp/work/qemux86_64-poky-linux/core-image-sato/1.0/oe-rootfs-repo/rpm/x86_64_v3/dbus-1-1.16.2-r0.x86_64_v3.rpm'
>> TypeError: 'NoneType' object cannot be interpreted as an integer
>> FATAL ERROR: python callback ??? failed, aborting!
>> 
>> https://autobuilder.yoctoproject.org/valkyrie/#/builders/26/builds/3271
>> https://autobuilder.yoctoproject.org/valkyrie/#/builders/40/builds/3276
>> 
>> I'm a bit surprise by tr errors here, as it looks a bit unrelated. There
>> is a small probability it's related to something else in my branch, but
>> this series is clearly the best candidate. I will keep you updated if it
>> finally looks related to something else.
>> 
>> I also got some more traditional "nothing provides" errors:
>> 
>> https://autobuilder.yoctoproject.org/valkyrie/#/builders/78/builds/3317
>> https://autobuilder.yoctoproject.org/valkyrie/#/builders/8/builds/3321
>  > > Can you have a look at these?
>
> For the above two errors, it is because the sstate cache had been polluted. I
> moved pkgconfig-native from do_package to do_package_write_rpm, the
> do_package_write_rpm still can be mirrored from the old (but bad) sstate-cache.
> It woudl work when the old sstate cache are invalid. So I've sent a
> gettext update patch:
>
> [OE-core] [PATCH 0/1] gettext: 0.26 -> 1.0
>
> It would make nearly all the sstate cache invalid, and re-built from sources,
> then this should be fixed.
>
> What I'm worried about is that gettext is very basic package, I hope it won't
> cause more troubles. I've done world build on qemux86-64 and qemuarm64.
>
> Other reipes' upgrading may also can make the sstate cache invalid.
>
> // Robert
>

Hi Robert,

I ran a build, not with your gettext patch, but with the one from the
glibc upgrade by Hemanth. We still had similar errors.

Any opinion?

https://autobuilder.yoctoproject.org/valkyrie/#/builders/3/builds/3378
https://autobuilder.yoctoproject.org/valkyrie/#/builders/25/builds/3330
https://autobuilder.yoctoproject.org/valkyrie/#/builders/26/builds/3302
https://autobuilder.yoctoproject.org/valkyrie/#/builders/40/builds/3307

Thanks,
Mathieu

-- 
Mathieu Dubois-Briand, Bootlin
Embedded Linux and Kernel engineering
https://bootlin.com



^ permalink raw reply	[flat|nested] 20+ messages in thread

* Re: [OE-core] [PATCH v7 1/7] package_rpm.bbclass: Drop external dependency generator to support rpm 6
  2026-03-09  7:04             ` Mathieu Dubois-Briand
@ 2026-03-09  7:15               ` Mathieu Dubois-Briand
  2026-03-12 13:43                 ` Robert Yang
  2026-03-09  7:26               ` Robert Yang
  1 sibling, 1 reply; 20+ messages in thread
From: Mathieu Dubois-Briand @ 2026-03-09  7:15 UTC (permalink / raw)
  To: liezhi.yang, Richard Purdie; +Cc: alex.kanavin, Ross Burton, openembedded-core

On Mon Mar 9, 2026 at 8:04 AM CET, Mathieu Dubois-Briand wrote:
> Hi Robert,
>
> I ran a build, not with your gettext patch, but with the one from the
> glibc upgrade by Hemanth. We still had similar errors.
>
> Any opinion?
>
> https://autobuilder.yoctoproject.org/valkyrie/#/builders/3/builds/3378
> https://autobuilder.yoctoproject.org/valkyrie/#/builders/25/builds/3330
> https://autobuilder.yoctoproject.org/valkyrie/#/builders/26/builds/3302
> https://autobuilder.yoctoproject.org/valkyrie/#/builders/40/builds/3307
>
> Thanks,
> Mathieu

I also note a lot of selftest failures, that are probably related. Like
this one:

2026-03-08 19:02:19,088 - oe-selftest - INFO - debuginfod.Debuginfod.test_debuginfod_qemu (subunit.RemotedTestCase)
2026-03-08 19:02:19,088 - oe-selftest - INFO -  ... FAIL
...
[Sun Mar  8 18:59:18 2026] (1950649/1950690): cannot open archive from pipe /srv/pokybuild/yocto-worker/oe-selftest-armhost/build/build-st-1129110/tmp-debuginfod/work/cortexa57-poky-linux/xz/5.8.2/localpkgfeed/cortexa57/xz-locale-pt-5.8.2-r0.cortexa57.rpm
[Sun Mar  8 18:59:18 2026] (1950649/1950690): libarchive error: cannot open archive from pipe: Unrecognized archive format
[Sun Mar  8 18:59:18 2026] (1950649/1950690): exceptions encountered during archive scan
[Sun Mar  8 18:59:18 2026] (1950649/1950695): cannot open archive from pipe /srv/pokybuild/yocto-worker/oe-selftest-armhost/build/build-st-1129110/tmp-debuginfod/work/cortexa57-poky-linux/xz/5.8.2/localpkgfeed/cortexa57/bash-locale-sr-5.3-r0.cortexa57.rpm
[Sun Mar  8 18:59:18 2026] (1950649/1950690): cannot open archive from pipe /srv/pokybuild/yocto-worker/oe-selftest-armhost/build/build-st-1129110/tmp-debuginfod/work/cortexa57-poky-linux/xz/5.8.2/localpkgfeed/cortexa57/bash-locale-hr-5.3-r0.cortexa57.rpm
[Sun Mar  8 18:59:18 2026] (1950649/1950691): cannot open archive from pipe /srv/pokybuild/yocto-worker/oe-selftest-armhost/build/build-st-1129110/tmp-debuginfod/work/cortexa57-poky-linux/xz/5.8.2/localpkgfeed/cortexa57/xz-locale-nl-5.8.2-r0.cortexa57.rpm
[Sun Mar  8 18:59:18 2026] (1950649/1950691): libarchive error: cannot open archive from pipe: Unrecognized archive format
[Sun Mar  8 18:59:18 2026] (1950649/1950691): exceptions encountered during archive scan
[Sun Mar  8 18:59:18 2026] (1950649/1950688): cannot open archive from pipe /srv/pokybuild/yocto-worker/oe-selftest-armhost/build/build-st-1129110/tmp-debuginfod/work/cortexa57-poky-linux/xz/5.8.2/localpkgfeed/cortexa57/bash-locale-pt-br-5.3-r0.cortexa57.rpm
[Sun Mar  8 18:59:18 2026] (1950649/1950688): libarchive error: cannot open archive from pipe: Unrecognized archive format
[Sun Mar  8 18:59:18 2026] (1950649/1950690): libarchive error: cannot open archive from pipe: Unrecognized archive format
[Sun Mar  8 18:59:18 2026] (1950649/1950690): exceptions encountered during archive scan
[Sun Mar  8 18:59:18 2026] (1950649/1950694): cannot open archive from pipe /srv/pokybuild/yocto-worker/oe-selftest-armhost/build/build-st-1129110/tmp-debuginfod/work/cortexa57-poky-linux/xz/5.8.2/localpkgfeed/cortexa57/liblzma5-5.8.2-r0.cortexa57.rpm

https://autobuilder.yoctoproject.org/valkyrie/#/builders/48/builds/3254
https://autobuilder.yoctoproject.org/valkyrie/#/builders/35/builds/3362
https://autobuilder.yoctoproject.org/valkyrie/#/builders/23/builds/3482

Thanks,
Mathieu

-- 
Mathieu Dubois-Briand, Bootlin
Embedded Linux and Kernel engineering
https://bootlin.com



^ permalink raw reply	[flat|nested] 20+ messages in thread

* Re: [OE-core] [PATCH v7 1/7] package_rpm.bbclass: Drop external dependency generator to support rpm 6
  2026-03-09  7:04             ` Mathieu Dubois-Briand
  2026-03-09  7:15               ` Mathieu Dubois-Briand
@ 2026-03-09  7:26               ` Robert Yang
  2026-03-10 10:21                 ` Robert Yang
  1 sibling, 1 reply; 20+ messages in thread
From: Robert Yang @ 2026-03-09  7:26 UTC (permalink / raw)
  To: Mathieu Dubois-Briand, Richard Purdie
  Cc: alex.kanavin, Ross Burton, openembedded-core



On 3/9/26 15:04, Mathieu Dubois-Briand wrote:
> On Sat Mar 7, 2026 at 4:22 PM CET, Robert Yang via lists.openembedded.org wrote:
>> Hi Mathieu,
>>
>> On 3/5/26 01:52, Mathieu Dubois-Briand wrote:
>>> On Tue Mar 3, 2026 at 1:01 PM CET, Robert Yang via lists.openembedded.org wrote:
>>>> I've updated it in the pull (patch 7). @Mathieu, would you please help to
>>>> re-test it if RP has no objections on the external generator?
>>>>
>>>>      https://github.com/robertlinux/yocto rbt/rpm
>>>>      https://github.com/robertlinux/yocto/tree/rbt/rpm
>>>>
>>>> for you to fetch changes up to f8fa3090196bae3e12ad76f12f101722d84ca20a:
>>>>
>>>>      rpm: 4.20.1 -> 6.0.1 (2026-03-03 11:29:07 +0000)
>>>>
>>>> ----------------------------------------------------------------
>>>>
>>>> Robert Yang (7):
>>>>      package_rpm.bbclass: Drop external dependency generator to support rpm
>>>>        6
>>>>      package_rpm.bbclass: Define _lib and _libdir for rpmbuild
>>>>      lib/oe/package.py: Don't add ldconfig_postinst_fragment for glibc or
>>>>        musl
>>>>      glib/python3/acl: Add pkgconfig to RDEPENDS
>>>>      lib/oe/package.py: Don't redirect stderr
>>>>      target-sdk-provides-dummy: Add pkg-config to DUMMYPROVIDES
>>>>      rpm: 4.20.1 -> 6.0.1
>>>>
>>>> // Robert
>>>
>>> Hi Robert,
>>>
>>> I did pick these commits.
>>
>> Thank you very much for your great patience.
>>
>>>
>>> We have some different errors now.
>>>
>>> ERROR: core-image-sato-1.0-r0 do_rootfs: Could not invoke dnf. Command '/srv/pokybuild/yocto-worker/qa-extras2/build/build/tmp/work/qemux86_64-poky-linux/core-image-sato/1.0/recipe-sysroot-native/usr/bin/dnf -v --rpmverbosity=info -y -c /srv/pokybuild/yocto-worker/qa-extras2/build/build/tmp/work/qemux86_64-poky-linux/core-image-sato/1.0/rootfs/etc/dnf/dnf.conf --setopt=reposdir=/srv/pokybuild/yocto-worker/qa-extras2/build/build/tmp/work/qemux86_64-poky-linux/core-image-sato/1.0/rootfs/etc/yum.repos.d --installroot=/srv/pokybuild/yocto-worker/qa-extras2/build/build/tmp/work/qemux86_64-poky-linux/core-image-sato/1.0/rootfs --setopt=logdir=/srv/pokybuild/yocto-worker/qa-extras2/build/build/tmp/work/qemux86_64-poky-linux/core-image-sato/1.0/temp --repofrompath=oe-repo,/srv/pokybuild/yocto-worker/qa-extras2/build/build/tmp/work/qemux86_64-poky-linux/core-image-sato/1.0/oe-rootfs-repo --nogpgcheck install dnf packagegroup-base-extended packagegroup-core-boot packagegroup-core-ssh-dropbear packagegroup-core-x11-base packagegroup-core-x11-sato psplash rpm run-postinsts locale-base-c locale-base-en-us locale-base-en-gb' returned 1:
>>
>> It looks that something is wrong with the storage.
>>
>>> ...
>>> ++ tr -d '[:space:]'
>>> /var/tmp/rpm-tmp.U4iaJX: line 98: tr: command not found
>>> + test x '!=' x
>>> ++ echo --system --home /var/lib/dbus --no-create-home --shell /bin/false --user-group messagebus
>>> ++ tr -d '[:space:]'
>>> /var/tmp/rpm-tmp.U4iaJX: line 114: tr: command not found
>>> + test x '!=' x
>>> ++ echo
>>> ++ tr -d '[:space:]'
>>> /var/tmp/rpm-tmp.U4iaJX: line 130: tr: command not found
>>> ...
>>>
>>>     Installing       : dbus-common-1.16.2-r0.x86_64_v3                    682/790Error: Cannot open file /srv/pokybuild/yocto-worker/qa-extras2/build/build/tmp/work/qemux86_64-poky-linux/core-image-sato/1.0/oe-rootfs-repo/rpm/x86_64_v3/dbus-1-1.16.2-r0.x86_64_v3.rpm: [Errno 2] No such file or directory: '/srv/pokybuild/yocto-worker/qa-extras2/build/build/tmp/work/qemux86_64-poky-linux/core-image-sato/1.0/oe-rootfs-repo/rpm/x86_64_v3/dbus-1-1.16.2-r0.x86_64_v3.rpm'
>>> TypeError: 'NoneType' object cannot be interpreted as an integer
>>> FATAL ERROR: python callback ??? failed, aborting!
>>>
>>> https://autobuilder.yoctoproject.org/valkyrie/#/builders/26/builds/3271
>>> https://autobuilder.yoctoproject.org/valkyrie/#/builders/40/builds/3276
>>>
>>> I'm a bit surprise by tr errors here, as it looks a bit unrelated. There
>>> is a small probability it's related to something else in my branch, but
>>> this series is clearly the best candidate. I will keep you updated if it
>>> finally looks related to something else.
>>>
>>> I also got some more traditional "nothing provides" errors:
>>>
>>> https://autobuilder.yoctoproject.org/valkyrie/#/builders/78/builds/3317
>>> https://autobuilder.yoctoproject.org/valkyrie/#/builders/8/builds/3321
>>   > > Can you have a look at these?
>>
>> For the above two errors, it is because the sstate cache had been polluted. I
>> moved pkgconfig-native from do_package to do_package_write_rpm, the
>> do_package_write_rpm still can be mirrored from the old (but bad) sstate-cache.
>> It woudl work when the old sstate cache are invalid. So I've sent a
>> gettext update patch:
>>
>> [OE-core] [PATCH 0/1] gettext: 0.26 -> 1.0
>>
>> It would make nearly all the sstate cache invalid, and re-built from sources,
>> then this should be fixed.
>>
>> What I'm worried about is that gettext is very basic package, I hope it won't
>> cause more troubles. I've done world build on qemux86-64 and qemuarm64.
>>
>> Other reipes' upgrading may also can make the sstate cache invalid.
>>
>> // Robert
>>
> 
> Hi Robert,
> 
> I ran a build, not with your gettext patch, but with the one from the
> glibc upgrade by Hemanth. We still had similar errors.
> 
> Any opinion?

It seems that now the failed ones are related to 'tr ', at least, the pkgconfig 
issues are gone.

I will look into it, sorry about that.

// Robert

> 
> https://autobuilder.yoctoproject.org/valkyrie/#/builders/3/builds/3378
> https://autobuilder.yoctoproject.org/valkyrie/#/builders/25/builds/3330
> https://autobuilder.yoctoproject.org/valkyrie/#/builders/26/builds/3302
> https://autobuilder.yoctoproject.org/valkyrie/#/builders/40/builds/3307
> 
> Thanks,
> Mathieu
> 


^ permalink raw reply	[flat|nested] 20+ messages in thread

* Re: [OE-core] [PATCH v7 1/7] package_rpm.bbclass: Drop external dependency generator to support rpm 6
  2026-03-09  7:26               ` Robert Yang
@ 2026-03-10 10:21                 ` Robert Yang
  0 siblings, 0 replies; 20+ messages in thread
From: Robert Yang @ 2026-03-10 10:21 UTC (permalink / raw)
  To: Mathieu Dubois-Briand, Richard Purdie
  Cc: alex.kanavin, Ross Burton, openembedded-core



On 3/9/26 15:26, Robert Yang wrote:
> 
> 
> On 3/9/26 15:04, Mathieu Dubois-Briand wrote:
>> On Sat Mar 7, 2026 at 4:22 PM CET, Robert Yang via lists.openembedded.org wrote:
>>> Hi Mathieu,
>>>
>>> On 3/5/26 01:52, Mathieu Dubois-Briand wrote:
>>>> On Tue Mar 3, 2026 at 1:01 PM CET, Robert Yang via lists.openembedded.org 
>>>> wrote:
>>>>> I've updated it in the pull (patch 7). @Mathieu, would you please help to
>>>>> re-test it if RP has no objections on the external generator?
>>>>>
>>>>>      https://github.com/robertlinux/yocto rbt/rpm
>>>>>      https://github.com/robertlinux/yocto/tree/rbt/rpm
>>>>>
>>>>> for you to fetch changes up to f8fa3090196bae3e12ad76f12f101722d84ca20a:
>>>>>
>>>>>      rpm: 4.20.1 -> 6.0.1 (2026-03-03 11:29:07 +0000)
>>>>>
>>>>> ----------------------------------------------------------------
>>>>>
>>>>> Robert Yang (7):
>>>>>      package_rpm.bbclass: Drop external dependency generator to support rpm
>>>>>        6
>>>>>      package_rpm.bbclass: Define _lib and _libdir for rpmbuild
>>>>>      lib/oe/package.py: Don't add ldconfig_postinst_fragment for glibc or
>>>>>        musl
>>>>>      glib/python3/acl: Add pkgconfig to RDEPENDS
>>>>>      lib/oe/package.py: Don't redirect stderr
>>>>>      target-sdk-provides-dummy: Add pkg-config to DUMMYPROVIDES
>>>>>      rpm: 4.20.1 -> 6.0.1
>>>>>
>>>>> // Robert
>>>>
>>>> Hi Robert,
>>>>
>>>> I did pick these commits.
>>>
>>> Thank you very much for your great patience.
>>>
>>>>
>>>> We have some different errors now.
>>>>
>>>> ERROR: core-image-sato-1.0-r0 do_rootfs: Could not invoke dnf. Command '/ 
>>>> srv/pokybuild/yocto-worker/qa-extras2/build/build/tmp/work/qemux86_64-poky- 
>>>> linux/core-image-sato/1.0/recipe-sysroot-native/usr/bin/dnf -v -- 
>>>> rpmverbosity=info -y -c /srv/pokybuild/yocto-worker/qa-extras2/build/build/ 
>>>> tmp/work/qemux86_64-poky-linux/core-image-sato/1.0/rootfs/etc/dnf/dnf.conf 
>>>> --setopt=reposdir=/srv/pokybuild/yocto-worker/qa-extras2/build/build/tmp/ 
>>>> work/qemux86_64-poky-linux/core-image-sato/1.0/rootfs/etc/yum.repos.d -- 
>>>> installroot=/srv/pokybuild/yocto-worker/qa-extras2/build/build/tmp/work/ 
>>>> qemux86_64-poky-linux/core-image-sato/1.0/rootfs --setopt=logdir=/srv/ 
>>>> pokybuild/yocto-worker/qa-extras2/build/build/tmp/work/qemux86_64-poky- 
>>>> linux/core-image-sato/1.0/temp --repofrompath=oe-repo,/srv/pokybuild/yocto- 
>>>> worker/qa-extras2/build/build/tmp/work/qemux86_64-poky-linux/core-image- 
>>>> sato/1.0/oe-rootfs-repo --nogpgcheck install dnf packagegroup-base-extended 
>>>> packagegroup-core-boot packagegroup-core-ssh-dropbear packagegroup-core-x11- 
>>>> base packagegroup-core-x11-sato psplash rpm run-postinsts locale-base-c 
>>>> locale-base-en-us locale-base-en-gb' returned 1:
>>>
>>> It looks that something is wrong with the storage.
>>>
>>>> ...
>>>> ++ tr -d '[:space:]'
>>>> /var/tmp/rpm-tmp.U4iaJX: line 98: tr: command not found
>>>> + test x '!=' x
>>>> ++ echo --system --home /var/lib/dbus --no-create-home --shell /bin/false -- 
>>>> user-group messagebus
>>>> ++ tr -d '[:space:]'
>>>> /var/tmp/rpm-tmp.U4iaJX: line 114: tr: command not found
>>>> + test x '!=' x
>>>> ++ echo
>>>> ++ tr -d '[:space:]'
>>>> /var/tmp/rpm-tmp.U4iaJX: line 130: tr: command not found
>>>> ...
>>>>
>>>>     Installing       : dbus-common-1.16.2-r0.x86_64_v3                    
>>>> 682/790Error: Cannot open file /srv/pokybuild/yocto-worker/qa-extras2/build/ 
>>>> build/tmp/work/qemux86_64-poky-linux/core-image-sato/1.0/oe-rootfs-repo/rpm/ 
>>>> x86_64_v3/dbus-1-1.16.2-r0.x86_64_v3.rpm: [Errno 2] No such file or 
>>>> directory: '/srv/pokybuild/yocto-worker/qa-extras2/build/build/tmp/work/ 
>>>> qemux86_64-poky-linux/core-image-sato/1.0/oe-rootfs-repo/rpm/x86_64_v3/ 
>>>> dbus-1-1.16.2-r0.x86_64_v3.rpm'
>>>> TypeError: 'NoneType' object cannot be interpreted as an integer
>>>> FATAL ERROR: python callback ??? failed, aborting!
>>>>
>>>> https://autobuilder.yoctoproject.org/valkyrie/#/builders/26/builds/3271
>>>> https://autobuilder.yoctoproject.org/valkyrie/#/builders/40/builds/3276
>>>>
>>>> I'm a bit surprise by tr errors here, as it looks a bit unrelated. There
>>>> is a small probability it's related to something else in my branch, but
>>>> this series is clearly the best candidate. I will keep you updated if it
>>>> finally looks related to something else.
>>>>
>>>> I also got some more traditional "nothing provides" errors:
>>>>
>>>> https://autobuilder.yoctoproject.org/valkyrie/#/builders/78/builds/3317
>>>> https://autobuilder.yoctoproject.org/valkyrie/#/builders/8/builds/3321
>>>   > > Can you have a look at these?
>>>
>>> For the above two errors, it is because the sstate cache had been polluted. I
>>> moved pkgconfig-native from do_package to do_package_write_rpm, the
>>> do_package_write_rpm still can be mirrored from the old (but bad) sstate-cache.
>>> It woudl work when the old sstate cache are invalid. So I've sent a
>>> gettext update patch:
>>>
>>> [OE-core] [PATCH 0/1] gettext: 0.26 -> 1.0
>>>
>>> It would make nearly all the sstate cache invalid, and re-built from sources,
>>> then this should be fixed.
>>>
>>> What I'm worried about is that gettext is very basic package, I hope it won't
>>> cause more troubles. I've done world build on qemux86-64 and qemuarm64.
>>>
>>> Other reipes' upgrading may also can make the sstate cache invalid.
>>>
>>> // Robert
>>>
>>
>> Hi Robert,
>>
>> I ran a build, not with your gettext patch, but with the one from the
>> glibc upgrade by Hemanth. We still had similar errors.
>>
>> Any opinion?
> 
> It seems that now the failed ones are related to 'tr ', at least, the pkgconfig 
> issues are gone.
> 
> I will look into it, sorry about that.

It is failed to build with systemd, the rpm's sysuser creation doesn't work with
cross build, and we don't need rpm to create the users since we have
useradd.bbclass. The fix is:

diff --git a/meta/classes-global/package_rpm.bbclass 
b/meta/classes-global/package_rpm.bbclass
index 1b86cb52cd..e85644995a 100644
--- a/meta/classes-global/package_rpm.bbclass
+++ b/meta/classes-global/package_rpm.bbclass
@@ -636,6 +636,7 @@ python do_package_rpm () {
      cmd = cmd + " --define '_unpackaged_files_terminate_build 0'"
      cmd = cmd + " --define 'debug_package %{nil}'"
      cmd = cmd + " --define '_tmppath " + workdir + "'"
+    cmd = cmd + " --define '__sysusers_path %{nil}'"
      cmd = cmd + " --define '_use_weak_usergroup_deps 1'"
      cmd = cmd + " --define '_passwd_path " + "/completely/bogus/path" + "'"
      cmd = cmd + " --define '_group_path " + "/completely/bogus/path" + "'"


I will send a V8 after more testing.

// Robert

> 
> // Robert
> 
>>
>> https://autobuilder.yoctoproject.org/valkyrie/#/builders/3/builds/3378
>> https://autobuilder.yoctoproject.org/valkyrie/#/builders/25/builds/3330
>> https://autobuilder.yoctoproject.org/valkyrie/#/builders/26/builds/3302
>> https://autobuilder.yoctoproject.org/valkyrie/#/builders/40/builds/3307
>>
>> Thanks,
>> Mathieu
>>
> 



^ permalink raw reply related	[flat|nested] 20+ messages in thread

* Re: [OE-core] [PATCH v7 1/7] package_rpm.bbclass: Drop external dependency generator to support rpm 6
  2026-03-09  7:15               ` Mathieu Dubois-Briand
@ 2026-03-12 13:43                 ` Robert Yang
  2026-03-12 15:40                   ` Mathieu Dubois-Briand
  0 siblings, 1 reply; 20+ messages in thread
From: Robert Yang @ 2026-03-12 13:43 UTC (permalink / raw)
  To: Mathieu Dubois-Briand, Richard Purdie
  Cc: alex.kanavin, Ross Burton, openembedded-core



On 3/9/26 15:15, Mathieu Dubois-Briand wrote:
> On Mon Mar 9, 2026 at 8:04 AM CET, Mathieu Dubois-Briand wrote:
>> Hi Robert,
>>
>> I ran a build, not with your gettext patch, but with the one from the
>> glibc upgrade by Hemanth. We still had similar errors.
>>
>> Any opinion?
>>
>> https://autobuilder.yoctoproject.org/valkyrie/#/builders/3/builds/3378
>> https://autobuilder.yoctoproject.org/valkyrie/#/builders/25/builds/3330
>> https://autobuilder.yoctoproject.org/valkyrie/#/builders/26/builds/3302
>> https://autobuilder.yoctoproject.org/valkyrie/#/builders/40/builds/3307
>>
>> Thanks,
>> Mathieu
> 
> I also note a lot of selftest failures, that are probably related. Like
> this one:
> 
> 2026-03-08 19:02:19,088 - oe-selftest - INFO - debuginfod.Debuginfod.test_debuginfod_qemu (subunit.RemotedTestCase)
> 2026-03-08 19:02:19,088 - oe-selftest - INFO -  ... FAIL
> ...
> [Sun Mar  8 18:59:18 2026] (1950649/1950690): cannot open archive from pipe /srv/pokybuild/yocto-worker/oe-selftest-armhost/build/build-st-1129110/tmp-debuginfod/work/cortexa57-poky-linux/xz/5.8.2/localpkgfeed/cortexa57/xz-locale-pt-5.8.2-r0.cortexa57.rpm
> [Sun Mar  8 18:59:18 2026] (1950649/1950690): libarchive error: cannot open archive from pipe: Unrecognized archive format
> [Sun Mar  8 18:59:18 2026] (1950649/1950690): exceptions encountered during archive scan
> [Sun Mar  8 18:59:18 2026] (1950649/1950695): cannot open archive from pipe /srv/pokybuild/yocto-worker/oe-selftest-armhost/build/build-st-1129110/tmp-debuginfod/work/cortexa57-poky-linux/xz/5.8.2/localpkgfeed/cortexa57/bash-locale-sr-5.3-r0.cortexa57.rpm
> [Sun Mar  8 18:59:18 2026] (1950649/1950690): cannot open archive from pipe /srv/pokybuild/yocto-worker/oe-selftest-armhost/build/build-st-1129110/tmp-debuginfod/work/cortexa57-poky-linux/xz/5.8.2/localpkgfeed/cortexa57/bash-locale-hr-5.3-r0.cortexa57.rpm
> [Sun Mar  8 18:59:18 2026] (1950649/1950691): cannot open archive from pipe /srv/pokybuild/yocto-worker/oe-selftest-armhost/build/build-st-1129110/tmp-debuginfod/work/cortexa57-poky-linux/xz/5.8.2/localpkgfeed/cortexa57/xz-locale-nl-5.8.2-r0.cortexa57.rpm
> [Sun Mar  8 18:59:18 2026] (1950649/1950691): libarchive error: cannot open archive from pipe: Unrecognized archive format
> [Sun Mar  8 18:59:18 2026] (1950649/1950691): exceptions encountered during archive scan
> [Sun Mar  8 18:59:18 2026] (1950649/1950688): cannot open archive from pipe /srv/pokybuild/yocto-worker/oe-selftest-armhost/build/build-st-1129110/tmp-debuginfod/work/cortexa57-poky-linux/xz/5.8.2/localpkgfeed/cortexa57/bash-locale-pt-br-5.3-r0.cortexa57.rpm
> [Sun Mar  8 18:59:18 2026] (1950649/1950688): libarchive error: cannot open archive from pipe: Unrecognized archive format
> [Sun Mar  8 18:59:18 2026] (1950649/1950690): libarchive error: cannot open archive from pipe: Unrecognized archive format
> [Sun Mar  8 18:59:18 2026] (1950649/1950690): exceptions encountered during archive scan
> [Sun Mar  8 18:59:18 2026] (1950649/1950694): cannot open archive from pipe /srv/pokybuild/yocto-worker/oe-selftest-armhost/build/build-st-1129110/tmp-debuginfod/work/cortexa57-poky-linux/xz/5.8.2/localpkgfeed/cortexa57/liblzma5-5.8.2-r0.cortexa57.rpm
> 
> https://autobuilder.yoctoproject.org/valkyrie/#/builders/48/builds/3254
> https://autobuilder.yoctoproject.org/valkyrie/#/builders/35/builds/3362
> https://autobuilder.yoctoproject.org/valkyrie/#/builders/23/builds/3482

I've looked into these failures as well. 16 of them are related to the rpm 6,
I've taken a PULL from github/libarchive to fix them:

https://github.com/libarchive/libarchive/pull/2846

I will also take the libarchive upgrading in V8:
[OE-core] [PATCH] libarchive: upgrade 3.8.5 -> 3.8.6

Otherwise, there will be conflicts when you merge it.

And for the other failures such as:
ERROR: glib-2.0-1_2.86.4-r0 do_package_qa: QA Issue: glib-2.0-ptest rdepends on 
locale-base-c, but it isn't a build dependency? [build-deps]

I can reproduce them without rpm 6. I will leave them atm, and focus on rpm 6 
upgrading.

V8 is coming.

// Robert

> 
> Thanks,
> Mathieu
> 



^ permalink raw reply	[flat|nested] 20+ messages in thread

* Re: [OE-core] [PATCH v7 1/7] package_rpm.bbclass: Drop external dependency generator to support rpm 6
  2026-03-12 13:43                 ` Robert Yang
@ 2026-03-12 15:40                   ` Mathieu Dubois-Briand
  0 siblings, 0 replies; 20+ messages in thread
From: Mathieu Dubois-Briand @ 2026-03-12 15:40 UTC (permalink / raw)
  To: liezhi.yang, Richard Purdie; +Cc: alex.kanavin, Ross Burton, openembedded-core

Hi Robert,

On Thu Mar 12, 2026 at 2:43 PM CET, Robert Yang via lists.openembedded.org wrote:
>
> And for the other failures such as:
> ERROR: glib-2.0-1_2.86.4-r0 do_package_qa: QA Issue: glib-2.0-ptest rdepends on 
> locale-base-c, but it isn't a build dependency? [build-deps]
>
> I can reproduce them without rpm 6. I will leave them atm, and focus on rpm 6 
> upgrading.
>

Yes, sorry I should have told you: I also had the glibc upgrade patches,
so glib failures are probably not related to your series.

Thanks,
Mathieu

-- 
Mathieu Dubois-Briand, Bootlin
Embedded Linux and Kernel engineering
https://bootlin.com



^ permalink raw reply	[flat|nested] 20+ messages in thread

end of thread, other threads:[~2026-03-12 15:40 UTC | newest]

Thread overview: 20+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2026-03-01 12:25 [PATCH v7 0/7] rpm: 4.20.1 -> 6.0.1 liezhi.yang
2026-03-01 12:25 ` [PATCH v7 1/7] package_rpm.bbclass: Drop external dependency generator to support rpm 6 liezhi.yang
2026-03-02 10:57   ` [OE-core] " Richard Purdie
2026-03-03  9:41     ` Robert Yang
2026-03-03 12:01       ` Robert Yang
2026-03-04 17:52         ` Mathieu Dubois-Briand
2026-03-07 15:22           ` Robert Yang
2026-03-09  7:04             ` Mathieu Dubois-Briand
2026-03-09  7:15               ` Mathieu Dubois-Briand
2026-03-12 13:43                 ` Robert Yang
2026-03-12 15:40                   ` Mathieu Dubois-Briand
2026-03-09  7:26               ` Robert Yang
2026-03-10 10:21                 ` Robert Yang
2026-03-01 12:25 ` [PATCH v7 2/7] package_rpm.bbclass: Define _lib and _libdir for rpmbuild liezhi.yang
2026-03-01 12:26 ` [PATCH v7 3/7] lib/oe/package.py: Don't add ldconfig_postinst_fragment for glibc or musl liezhi.yang
2026-03-01 12:26 ` [PATCH v7 4/7] glib/python3/acl: Add pkgconfig to RDEPENDS liezhi.yang
2026-03-01 12:26 ` [PATCH v7 5/7] lib/oe/package.py: Don't redirect stderr liezhi.yang
2026-03-01 12:26 ` [PATCH v7 6/7] target-sdk-provides-dummy: Add pkg-config to DUMMYPROVIDES liezhi.yang
2026-03-01 12:26 ` [PATCH v7 7/7] rpm: 4.20.1 -> 6.0.1 liezhi.yang
2026-03-02 10:47 ` [PATCH v7 0/7] " Mathieu Dubois-Briand

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox