Hi Mathieu,

On 1/27/26 20:27, Mathieu Dubois-Briand wrote:
On Fri Jan 23, 2026 at 7:13 AM CET, Robert Yang via lists.openembedded.org 
wrote:
From: Robert Yang <[email protected]>

* 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

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

* Add the following 2 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

* 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 <[email protected]>
---

Hi Robert,

Thanks for your patch.

Some tests are failing after this upgrade, you can see them with
"bitbake core-image-full-cmdline:do_testimage":

AssertionError: 1 != 0 : dnf 
--repofrompath=oe-testimage-repo-qemux86_64,http://192.168.7.1:41395/qemux86_64 
--repofrompath=oe-testimage-repo-noarch,http://192.168.7.1:41395/noarch 
--repofrompath=oe-testimage-repo-x86_64_x32,http://192.168.7.1:41395/x86_64_x32 
--nogpgcheck install --installroot=/home/root/chroot/test -v -y 
--rpmverbosity=debug busybox
...
%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
%post(busybox-1.37.0-r0.x86_64_x32): waitpid(624) rc 624 status 7f00
warning: %post(busybox-1.37.0-r0.x86_64_x32) scriptlet failed, exit status 127

Error in POSTIN scriptlet in rpm package busybox
   Installing       : libc6-2.42+git0+453e6b8dba-r1.x86_64_x32               3/4

I found the root cause, 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 for a fresh rootfs.

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 lib6 since there is no /bin/sh or ldconfig when
libc6 is not ready, so we can just remove libc6's postin to fix the problem.

I will send a V4 for it if no objections.

// Robert


https://autobuilder.yoctoproject.org/valkyrie/#/builders/11/builds/3059
https://autobuilder.yoctoproject.org/valkyrie/#/builders/4/builds/3107
https://autobuilder.yoctoproject.org/valkyrie/#/builders/16/builds/3127
https://autobuilder.yoctoproject.org/valkyrie/#/builders/19/builds/3100

Can you have a look at these tests?

Thanks,
Mathieu


-=-=-=-=-=-=-=-=-=-=-=-
Links: You receive all messages sent to this group.
View/Reply Online (#230351): 
https://lists.openembedded.org/g/openembedded-core/message/230351
Mute This Topic: https://lists.openembedded.org/mt/117414102/21656
Group Owner: [email protected]
Unsubscribe: https://lists.openembedded.org/g/openembedded-core/unsub 
[[email protected]]
-=-=-=-=-=-=-=-=-=-=-=-

Reply via email to