diff mbox series

[V3,1/5] classes/recipes: remove unnecessary qemu inherit and use qemuwrapper-cross

Message ID 20250414053503.1180029-1-Qi.Chen@windriver.com
State Accepted, archived
Commit 6f3ce94f4c03e7b26f1fcdf78ea969f57717ec56
Headers show
Series [V3,1/5] classes/recipes: remove unnecessary qemu inherit and use qemuwrapper-cross | expand

Commit Message

ChenQi April 14, 2025, 5:34 a.m. UTC
From: Chen Qi <Qi.Chen@windriver.com>

These classes/recipes inherit qemu.bbclass but do not use anything from it.
What they use is qemuwrapper-cross, which is needed at do_rootfs time and
needs to be pulled-in by PACKAGE_WRITE_DEPS.

Signed-off-by: Chen Qi <Qi.Chen@windriver.com>
---
 meta/classes-recipe/fontcache.bbclass           | 3 +--
 meta/classes-recipe/gio-module-cache.bbclass    | 3 +--
 meta/classes-recipe/gtk-immodules-cache.bbclass | 4 +---
 meta/classes-recipe/manpages.bbclass            | 2 +-
 meta/classes-recipe/pixbufcache.bbclass         | 5 +----
 meta/recipes-core/systemd/systemd_257.5.bb      | 5 +++--
 meta/recipes-core/udev/eudev_3.2.14.bb          | 4 ++--
 7 files changed, 10 insertions(+), 16 deletions(-)

Comments

Richard Purdie April 16, 2025, 4:55 p.m. UTC | #1
On Sun, 2025-04-13 at 22:34 -0700, Chen Qi via lists.openembedded.org wrote:
> From: Chen Qi <Qi.Chen@windriver.com>
> 
> These classes/recipes inherit qemu.bbclass but do not use anything from it.
> What they use is qemuwrapper-cross, which is needed at do_rootfs time and
> needs to be pulled-in by PACKAGE_WRITE_DEPS.
> 
> Signed-off-by: Chen Qi <Qi.Chen@windriver.com>
> ---
>  meta/classes-recipe/fontcache.bbclass           | 3 +--
>  meta/classes-recipe/gio-module-cache.bbclass    | 3 +--
>  meta/classes-recipe/gtk-immodules-cache.bbclass | 4 +---
>  meta/classes-recipe/manpages.bbclass            | 2 +-
>  meta/classes-recipe/pixbufcache.bbclass         | 5 +----
>  meta/recipes-core/systemd/systemd_257.5.bb      | 5 +++--
>  meta/recipes-core/udev/eudev_3.2.14.bb          | 4 ++--
>  7 files changed, 10 insertions(+), 16 deletions(-)
> 
> diff --git a/meta/classes-recipe/fontcache.bbclass b/meta/classes-recipe/fontcache.bbclass
> index 6f4978369d..deadcd2fbb 100644
> --- a/meta/classes-recipe/fontcache.bbclass
> +++ b/meta/classes-recipe/fontcache.bbclass
> @@ -9,8 +9,7 @@
>  # packages.
>  #
>  
> -PACKAGE_WRITE_DEPS += "qemu-native"
> -inherit qemu
> +PACKAGE_WRITE_DEPS += "qemuwrapper-cross"
>  
>  FONT_PACKAGES ??= "${PN}"
>  FONT_PACKAGES:class-native = ""
> diff --git a/meta/classes-recipe/gio-module-cache.bbclass b/meta/classes-recipe/gio-module-cache.bbclass
> index d12e03c4a0..3714678c7c 100644
> --- a/meta/classes-recipe/gio-module-cache.bbclass
> +++ b/meta/classes-recipe/gio-module-cache.bbclass
> @@ -4,8 +4,7 @@
>  # SPDX-License-Identifier: MIT
>  #
>  
> -PACKAGE_WRITE_DEPS += "qemu-native"
> -inherit qemu
> +PACKAGE_WRITE_DEPS += "qemuwrapper-cross"
>  
>  GIO_MODULE_PACKAGES ??= "${PN}"
>  
> diff --git a/meta/classes-recipe/gtk-immodules-cache.bbclass b/meta/classes-recipe/gtk-immodules-cache.bbclass
> index 8fbe1dd1fb..585838c105 100644
> --- a/meta/classes-recipe/gtk-immodules-cache.bbclass
> +++ b/meta/classes-recipe/gtk-immodules-cache.bbclass
> @@ -8,9 +8,7 @@
>  #
>  # Usage: Set GTKIMMODULES_PACKAGES to the packages that needs to update the inputmethod modules
>  
> -PACKAGE_WRITE_DEPS += "qemu-native"
> -
> -inherit qemu
> +PACKAGE_WRITE_DEPS += "qemuwrapper-cross"
>  
>  GTKIMMODULES_PACKAGES ?= "${PN}"
>  
> diff --git a/meta/classes-recipe/manpages.bbclass b/meta/classes-recipe/manpages.bbclass
> index e9ca2f895b..f3d034b046 100644
> --- a/meta/classes-recipe/manpages.bbclass
> +++ b/meta/classes-recipe/manpages.bbclass
> @@ -10,7 +10,7 @@
>  # by default.
>  PACKAGECONFIG:append:class-target = " ${@bb.utils.contains('DISTRO_FEATURES', 'api-documentation', 'manpages', '', d)}"
>  
> -inherit qemu
> +PACKAGE_WRITE_DEPS += "${@bb.utils.contains('DISTRO_FEATURES', 'api-documentation', 'qemuwrapper-cross', '', d)}"
>  
>  # usually manual files are packaged to ${PN}-doc except man-pages
>  MAN_PKG ?= "${PN}-doc"
> diff --git a/meta/classes-recipe/pixbufcache.bbclass b/meta/classes-recipe/pixbufcache.bbclass
> index 107e38885e..c32673df55 100644
> --- a/meta/classes-recipe/pixbufcache.bbclass
> +++ b/meta/classes-recipe/pixbufcache.bbclass
> @@ -9,12 +9,9 @@
>  # packages.
>  #
>  
> -DEPENDS:append:class-target = " qemu-native"
> -inherit qemu
> -
>  PIXBUF_PACKAGES ??= "${PN}"
>  
> -PACKAGE_WRITE_DEPS += "qemu-native gdk-pixbuf-native"
> +PACKAGE_WRITE_DEPS += "qemuwrapper-cross gdk-pixbuf-native"
>  
>  pixbufcache_common() {
>  if [ "x$D" != "x" ]; then
> diff --git a/meta/recipes-core/systemd/systemd_257.5.bb b/meta/recipes-core/systemd/systemd_257.5.bb
> index 24aad11c0a..0f0c846db6 100644
> --- a/meta/recipes-core/systemd/systemd_257.5.bb
> +++ b/meta/recipes-core/systemd/systemd_257.5.bb
> @@ -8,7 +8,7 @@ DEPENDS = "gperf-native libcap util-linux python3-jinja2-native"
>  
>  SECTION = "base/shell"
>  
> -inherit useradd pkgconfig meson perlnative update-rc.d update-alternatives qemu systemd gettext bash-completion manpages features_check mime
> +inherit useradd pkgconfig meson perlnative update-rc.d update-alternatives systemd gettext bash-completion manpages features_check mime
>  
>  # unmerged-usr support is deprecated upstream, taints the system and will be
>  # removed in the near future. Fail the build if it is not enabled.
> @@ -932,7 +932,8 @@ pkg_prerm:${PN}:libc-glibc () {
>  	fi
>  }
>  
> -PACKAGE_WRITE_DEPS += "qemu-native"
> +PACKAGE_WRITE_DEPS += "qemuwrapper-cross"
> +
>  pkg_postinst:udev-hwdb () {
>  	if test -n "$D"; then
>  		$INTERCEPT_DIR/postinst_intercept update_udev_hwdb ${PKG} mlprefix=${MLPREFIX} binprefix=${MLPREFIX} \
> diff --git a/meta/recipes-core/udev/eudev_3.2.14.bb b/meta/recipes-core/udev/eudev_3.2.14.bb
> index b3e7d092c5..a2d222e655 100644
> --- a/meta/recipes-core/udev/eudev_3.2.14.bb
> +++ b/meta/recipes-core/udev/eudev_3.2.14.bb
> @@ -20,7 +20,7 @@ SRC_URI[sha256sum] = "8da4319102f24abbf7fff5ce9c416af848df163b29590e666d334cc192
>  
>  GITHUB_BASE_URI = "https://github.com/eudev-project/eudev/releases"
>  
> -inherit autotools update-rc.d qemu pkgconfig features_check manpages github-releases
> +inherit autotools update-rc.d pkgconfig features_check manpages github-releases
>  
>  CONFLICT_DISTRO_FEATURES = "systemd"
>  
> @@ -77,7 +77,7 @@ RDEPENDS:${PN} += "kmod"
>  RPROVIDES:${PN} = "hotplug udev"
>  RPROVIDES:${PN}-hwdb += "udev-hwdb"
>  
> -PACKAGE_WRITE_DEPS += "qemu-native"
> +PACKAGE_WRITE_DEPS += "qemuwrapper-cross"
>  pkg_postinst:${PN}-hwdb () {
>  	if test -n "$D"; then
>  		$INTERCEPT_DIR/postinst_intercept update_udev_hwdb ${PKG} mlprefix=${MLPREFIX} binprefix=${MLPREFIX}
> 


Something in this series is still causing allarch variable dependency
problems, as can be seen running "oe-selftest -r
sstatetests.SStateHashSameSigs2.test_sstate_allarch_samesigs -j 1".

https://autobuilder.yoctoproject.org/valkyrie/#/builders/48/builds/1308

I'm seeing bitbake-diffsigs output of:

basehash changed from dfc2d35677a0412cc783f8b35f24dc6722d84be9f2cddff1adc2ae81dbf707c6 to 723f58407e0fcfae4450cee918fcbe3a8aebe3721eca0de8cf7a48ae4d150171
List of dependencies for variable QEMU_OPTIONS changed from 'frozenset({'QEMU_EXTRAOPTIONS:tune-cortexa15t2hf-neon', 'TUNE_PKGARCH', 'OLDEST_KERNEL'})' to 'frozenset({'TUNE_PKGARCH', 'OLDEST_KERNEL', 'QEMU_EXTRAOPTIONS:tune-core2-64'})'
changed items: frozenset({'QEMU_EXTRAOPTIONS:tune-cortexa15t2hf-neon', 'QEMU_EXTRAOPTIONS:tune-core2-64'})
List of dependencies for variable TUNE_PKGARCH changed from 'frozenset({'ARMPKGSFX_THUMB', 'ARMPKGSFX_FPU', 'ARMPKGSFX_ENDIAN', 'ARMPKGARCH', 'ARMPKGSFX_EABI', 'ARMPKGSFX_DSP'})' to 'frozenset({'TUNE_PKGARCH:tune-core2-64', 'DEFAULTTUNE'})'
changed items: frozenset({'ARMPKGSFX_THUMB', 'ARMPKGSFX_FPU', 'TUNE_PKGARCH:tune-core2-64', 'DEFAULTTUNE', 'ARMPKGSFX_ENDIAN', 'ARMPKGARCH', 'ARMPKGSFX_EABI', 'ARMPKGSFX_DSP'})
Dependency on variable QEMU_EXTRAOPTIONS:tune-core2-64 was added
Dependency on variable TUNE_PKGARCH:tune-core2-64 was added
Dependency on Variable ARMPKGARCH was removed
Dependency on Variable ARMPKGARCH:tune-cortexa15thf-neon was removed
Dependency on Variable ARMPKGSFX_DSP was removed
Dependency on Variable ARMPKGSFX_EABI was removed
Dependency on Variable ARMPKGSFX_ENDIAN was removed
Dependency on Variable ARMPKGSFX_FPU was removed
Dependency on Variable ARMPKGSFX_THUMB was removed
Dependency on Variable ARM_INSTRUCTION_SET was removed
Dependency on Variable ARM_M_OPT was removed
Dependency on Variable ARM_THUMB_OPT was removed
Dependency on Variable ARM_THUMB_SUFFIX was removed
Dependency on Variable QEMU_EXTRAOPTIONS:tune-cortexa15t2hf-neon was removed
Dependency on Variable TUNE_CCARGS_MFLOAT was removed
Dependency on Variable TUNE_CCARGS_MFPU was removed
Dependency on Variable TUNE_FEATURES was removed
Dependency on Variable TUNE_FEATURES:tune-cortexa15 was removed
Dependency on Variable TUNE_FEATURES:tune-cortexa15-neon was removed
Dependency on Variable TUNE_FEATURES:tune-cortexa15t-neon was removed
Dependency on Variable TUNE_FEATURES:tune-cortexa15thf-neon was removed
Variable DEFAULTTUNE value changed from 'cortexa15thf-neon' to 'core2-64'
Variable OLDEST_KERNEL value changed from '3.3.0' to '5.15'
Variable TUNE_PKGARCH value changed from '${ARMPKGARCH}${ARMPKGSFX_THUMB}${ARMPKGSFX_DSP}${ARMPKGSFX_EABI}${ARMPKGSFX_ENDIAN}${ARMPKGSFX_FPU}' to '${TUNE_PKGARCH:tune-${DEFAULTTUNE}}'

for "bitbake-diffsigs ../build-st-1070764/tmp-sstatesamehash*/stamps/all-poky-linux/wayland-protocols/1.42.do_write_configsigdata.*".

Cheers,

Richard
ChenQi April 17, 2025, 2:26 a.m. UTC | #2
Got it. I'll look into the problem ASAP.

Regards,
Qi

-----Original Message-----
From: Richard Purdie <richard.purdie@linuxfoundation.org> 
Sent: Thursday, April 17, 2025 12:56 AM
To: Chen, Qi <Qi.Chen@windriver.com>; openembedded-core@lists.openembedded.org
Subject: Re: [OE-core][PATCH V3 1/5] classes/recipes: remove unnecessary qemu inherit and use qemuwrapper-cross

On Sun, 2025-04-13 at 22:34 -0700, Chen Qi via lists.openembedded.org wrote:
> From: Chen Qi <Qi.Chen@windriver.com>
> 
> These classes/recipes inherit qemu.bbclass but do not use anything from it.
> What they use is qemuwrapper-cross, which is needed at do_rootfs time 
> and needs to be pulled-in by PACKAGE_WRITE_DEPS.
> 
> Signed-off-by: Chen Qi <Qi.Chen@windriver.com>
> ---
>  meta/classes-recipe/fontcache.bbclass           | 3 +--
>  meta/classes-recipe/gio-module-cache.bbclass    | 3 +--
>  meta/classes-recipe/gtk-immodules-cache.bbclass | 4 +---
>  meta/classes-recipe/manpages.bbclass            | 2 +-
>  meta/classes-recipe/pixbufcache.bbclass         | 5 +----
>  meta/recipes-core/systemd/systemd_257.5.bb      | 5 +++--
>  meta/recipes-core/udev/eudev_3.2.14.bb          | 4 ++--
>  7 files changed, 10 insertions(+), 16 deletions(-)
> 
> diff --git a/meta/classes-recipe/fontcache.bbclass 
> b/meta/classes-recipe/fontcache.bbclass
> index 6f4978369d..deadcd2fbb 100644
> --- a/meta/classes-recipe/fontcache.bbclass
> +++ b/meta/classes-recipe/fontcache.bbclass
> @@ -9,8 +9,7 @@
>  # packages.
>  #
>  
> -PACKAGE_WRITE_DEPS += "qemu-native"
> -inherit qemu
> +PACKAGE_WRITE_DEPS += "qemuwrapper-cross"
>  
>  FONT_PACKAGES ??= "${PN}"
>  FONT_PACKAGES:class-native = ""
> diff --git a/meta/classes-recipe/gio-module-cache.bbclass 
> b/meta/classes-recipe/gio-module-cache.bbclass
> index d12e03c4a0..3714678c7c 100644
> --- a/meta/classes-recipe/gio-module-cache.bbclass
> +++ b/meta/classes-recipe/gio-module-cache.bbclass
> @@ -4,8 +4,7 @@
>  # SPDX-License-Identifier: MIT
>  #
>  
> -PACKAGE_WRITE_DEPS += "qemu-native"
> -inherit qemu
> +PACKAGE_WRITE_DEPS += "qemuwrapper-cross"
>  
>  GIO_MODULE_PACKAGES ??= "${PN}"
>  
> diff --git a/meta/classes-recipe/gtk-immodules-cache.bbclass 
> b/meta/classes-recipe/gtk-immodules-cache.bbclass
> index 8fbe1dd1fb..585838c105 100644
> --- a/meta/classes-recipe/gtk-immodules-cache.bbclass
> +++ b/meta/classes-recipe/gtk-immodules-cache.bbclass
> @@ -8,9 +8,7 @@
>  #
>  # Usage: Set GTKIMMODULES_PACKAGES to the packages that needs to 
> update the inputmethod modules
>  
> -PACKAGE_WRITE_DEPS += "qemu-native"
> -
> -inherit qemu
> +PACKAGE_WRITE_DEPS += "qemuwrapper-cross"
>  
>  GTKIMMODULES_PACKAGES ?= "${PN}"
>  
> diff --git a/meta/classes-recipe/manpages.bbclass 
> b/meta/classes-recipe/manpages.bbclass
> index e9ca2f895b..f3d034b046 100644
> --- a/meta/classes-recipe/manpages.bbclass
> +++ b/meta/classes-recipe/manpages.bbclass
> @@ -10,7 +10,7 @@
>  # by default.
>  PACKAGECONFIG:append:class-target = " ${@bb.utils.contains('DISTRO_FEATURES', 'api-documentation', 'manpages', '', d)}"
>  
> -inherit qemu
> +PACKAGE_WRITE_DEPS += "${@bb.utils.contains('DISTRO_FEATURES', 'api-documentation', 'qemuwrapper-cross', '', d)}"
>  
>  # usually manual files are packaged to ${PN}-doc except man-pages
>  MAN_PKG ?= "${PN}-doc"
> diff --git a/meta/classes-recipe/pixbufcache.bbclass 
> b/meta/classes-recipe/pixbufcache.bbclass
> index 107e38885e..c32673df55 100644
> --- a/meta/classes-recipe/pixbufcache.bbclass
> +++ b/meta/classes-recipe/pixbufcache.bbclass
> @@ -9,12 +9,9 @@
>  # packages.
>  #
>  
> -DEPENDS:append:class-target = " qemu-native"
> -inherit qemu
> -
>  PIXBUF_PACKAGES ??= "${PN}"
>  
> -PACKAGE_WRITE_DEPS += "qemu-native gdk-pixbuf-native"
> +PACKAGE_WRITE_DEPS += "qemuwrapper-cross gdk-pixbuf-native"
>  
>  pixbufcache_common() {
>  if [ "x$D" != "x" ]; then
> diff --git a/meta/recipes-core/systemd/systemd_257.5.bb 
> b/meta/recipes-core/systemd/systemd_257.5.bb
> index 24aad11c0a..0f0c846db6 100644
> --- a/meta/recipes-core/systemd/systemd_257.5.bb
> +++ b/meta/recipes-core/systemd/systemd_257.5.bb
> @@ -8,7 +8,7 @@ DEPENDS = "gperf-native libcap util-linux python3-jinja2-native"
>  
>  SECTION = "base/shell"
>  
> -inherit useradd pkgconfig meson perlnative update-rc.d 
> update-alternatives qemu systemd gettext bash-completion manpages 
> features_check mime
> +inherit useradd pkgconfig meson perlnative update-rc.d 
> +update-alternatives systemd gettext bash-completion manpages 
> +features_check mime
>  
>  # unmerged-usr support is deprecated upstream, taints the system and 
> will be
>  # removed in the near future. Fail the build if it is not enabled.
> @@ -932,7 +932,8 @@ pkg_prerm:${PN}:libc-glibc () {
>  	fi
>  }
>  
> -PACKAGE_WRITE_DEPS += "qemu-native"
> +PACKAGE_WRITE_DEPS += "qemuwrapper-cross"
> +
>  pkg_postinst:udev-hwdb () {
>  	if test -n "$D"; then
>  		$INTERCEPT_DIR/postinst_intercept update_udev_hwdb ${PKG} 
> mlprefix=${MLPREFIX} binprefix=${MLPREFIX} \ diff --git 
> a/meta/recipes-core/udev/eudev_3.2.14.bb 
> b/meta/recipes-core/udev/eudev_3.2.14.bb
> index b3e7d092c5..a2d222e655 100644
> --- a/meta/recipes-core/udev/eudev_3.2.14.bb
> +++ b/meta/recipes-core/udev/eudev_3.2.14.bb
> @@ -20,7 +20,7 @@ SRC_URI[sha256sum] = 
> "8da4319102f24abbf7fff5ce9c416af848df163b29590e666d334cc192
>  
>  GITHUB_BASE_URI = "https://github.com/eudev-project/eudev/releases"
>  
> -inherit autotools update-rc.d qemu pkgconfig features_check manpages 
> github-releases
> +inherit autotools update-rc.d pkgconfig features_check manpages 
> +github-releases
>  
>  CONFLICT_DISTRO_FEATURES = "systemd"
>  
> @@ -77,7 +77,7 @@ RDEPENDS:${PN} += "kmod"
>  RPROVIDES:${PN} = "hotplug udev"
>  RPROVIDES:${PN}-hwdb += "udev-hwdb"
>  
> -PACKAGE_WRITE_DEPS += "qemu-native"
> +PACKAGE_WRITE_DEPS += "qemuwrapper-cross"
>  pkg_postinst:${PN}-hwdb () {
>  	if test -n "$D"; then
>  		$INTERCEPT_DIR/postinst_intercept update_udev_hwdb ${PKG} 
> mlprefix=${MLPREFIX} binprefix=${MLPREFIX}
> 


Something in this series is still causing allarch variable dependency problems, as can be seen running "oe-selftest -r sstatetests.SStateHashSameSigs2.test_sstate_allarch_samesigs -j 1".

https://autobuilder.yoctoproject.org/valkyrie/#/builders/48/builds/1308

I'm seeing bitbake-diffsigs output of:

basehash changed from dfc2d35677a0412cc783f8b35f24dc6722d84be9f2cddff1adc2ae81dbf707c6 to 723f58407e0fcfae4450cee918fcbe3a8aebe3721eca0de8cf7a48ae4d150171
List of dependencies for variable QEMU_OPTIONS changed from 'frozenset({'QEMU_EXTRAOPTIONS:tune-cortexa15t2hf-neon', 'TUNE_PKGARCH', 'OLDEST_KERNEL'})' to 'frozenset({'TUNE_PKGARCH', 'OLDEST_KERNEL', 'QEMU_EXTRAOPTIONS:tune-core2-64'})'
changed items: frozenset({'QEMU_EXTRAOPTIONS:tune-cortexa15t2hf-neon', 'QEMU_EXTRAOPTIONS:tune-core2-64'})
List of dependencies for variable TUNE_PKGARCH changed from 'frozenset({'ARMPKGSFX_THUMB', 'ARMPKGSFX_FPU', 'ARMPKGSFX_ENDIAN', 'ARMPKGARCH', 'ARMPKGSFX_EABI', 'ARMPKGSFX_DSP'})' to 'frozenset({'TUNE_PKGARCH:tune-core2-64', 'DEFAULTTUNE'})'
changed items: frozenset({'ARMPKGSFX_THUMB', 'ARMPKGSFX_FPU', 'TUNE_PKGARCH:tune-core2-64', 'DEFAULTTUNE', 'ARMPKGSFX_ENDIAN', 'ARMPKGARCH', 'ARMPKGSFX_EABI', 'ARMPKGSFX_DSP'}) Dependency on variable QEMU_EXTRAOPTIONS:tune-core2-64 was added Dependency on variable TUNE_PKGARCH:tune-core2-64 was added Dependency on Variable ARMPKGARCH was removed Dependency on Variable ARMPKGARCH:tune-cortexa15thf-neon was removed Dependency on Variable ARMPKGSFX_DSP was removed Dependency on Variable ARMPKGSFX_EABI was removed Dependency on Variable ARMPKGSFX_ENDIAN was removed Dependency on Variable ARMPKGSFX_FPU was removed Dependency on Variable ARMPKGSFX_THUMB was removed Dependency on Variable ARM_INSTRUCTION_SET was removed Dependency on Variable ARM_M_OPT was removed Dependency on Variable ARM_THUMB_OPT was removed Dependency on Variable ARM_THUMB_SUFFIX was removed Dependency on Variable QEMU_EXTRAOPTIONS:tune-cortexa15t2hf-neon was removed Dependency on Variable TUNE_CCARGS_MFLOAT was removed Dependency on Variable TUNE_CCARGS_MFPU was removed Dependency on Variable TUNE_FEATURES was removed Dependency on Variable TUNE_FEATURES:tune-cortexa15 was removed Dependency on Variable TUNE_FEATURES:tune-cortexa15-neon was removed Dependency on Variable TUNE_FEATURES:tune-cortexa15t-neon was removed Dependency on Variable TUNE_FEATURES:tune-cortexa15thf-neon was removed Variable DEFAULTTUNE value changed from 'cortexa15thf-neon' to 'core2-64'
Variable OLDEST_KERNEL value changed from '3.3.0' to '5.15'
Variable TUNE_PKGARCH value changed from '${ARMPKGARCH}${ARMPKGSFX_THUMB}${ARMPKGSFX_DSP}${ARMPKGSFX_EABI}${ARMPKGSFX_ENDIAN}${ARMPKGSFX_FPU}' to '${TUNE_PKGARCH:tune-${DEFAULTTUNE}}'

for "bitbake-diffsigs ../build-st-1070764/tmp-sstatesamehash*/stamps/all-poky-linux/wayland-protocols/1.42.do_write_configsigdata.*".

Cheers,

Richard
Richard Purdie April 17, 2025, 10:11 a.m. UTC | #3
On Thu, 2025-04-17 at 02:26 +0000, Chen, Qi wrote:
> Got it. I'll look into the problem ASAP.

I did look into it a bit and the issue seems to be that fontcache
recipes are allarch but can call into qemu to run fc-cache. An allarch
recipe can't depend on qemuwrapper-cross since that is target specific.

I guess we may need to exclude the dependency in layer.conf.

Cheers,

Richard
ChenQi April 20, 2025, 4:09 a.m. UTC | #4
Thanks a lot Richard!

I've used your suggestion to fix the qemuwrapper-cross dependency issue (e.g., cantarell-fonts) in Patch 1/5.
I've also fixed the meson + allarch issue (e.g., wayland-protocols) in Patch 5/5.

The V4 patchset has been sent out. It has been tested against world build + 'oe-selftest -r sstatetests'.

Regards,
Qi

-----Original Message-----
From: Richard Purdie <richard.purdie@linuxfoundation.org> 
Sent: Thursday, April 17, 2025 6:11 PM
To: Chen, Qi <Qi.Chen@windriver.com>; openembedded-core@lists.openembedded.org
Subject: Re: [OE-core][PATCH V3 1/5] classes/recipes: remove unnecessary qemu inherit and use qemuwrapper-cross

On Thu, 2025-04-17 at 02:26 +0000, Chen, Qi wrote:
> Got it. I'll look into the problem ASAP.

I did look into it a bit and the issue seems to be that fontcache recipes are allarch but can call into qemu to run fc-cache. An allarch recipe can't depend on qemuwrapper-cross since that is target specific.

I guess we may need to exclude the dependency in layer.conf.

Cheers,

Richard
diff mbox series

Patch

diff --git a/meta/classes-recipe/fontcache.bbclass b/meta/classes-recipe/fontcache.bbclass
index 6f4978369d..deadcd2fbb 100644
--- a/meta/classes-recipe/fontcache.bbclass
+++ b/meta/classes-recipe/fontcache.bbclass
@@ -9,8 +9,7 @@ 
 # packages.
 #
 
-PACKAGE_WRITE_DEPS += "qemu-native"
-inherit qemu
+PACKAGE_WRITE_DEPS += "qemuwrapper-cross"
 
 FONT_PACKAGES ??= "${PN}"
 FONT_PACKAGES:class-native = ""
diff --git a/meta/classes-recipe/gio-module-cache.bbclass b/meta/classes-recipe/gio-module-cache.bbclass
index d12e03c4a0..3714678c7c 100644
--- a/meta/classes-recipe/gio-module-cache.bbclass
+++ b/meta/classes-recipe/gio-module-cache.bbclass
@@ -4,8 +4,7 @@ 
 # SPDX-License-Identifier: MIT
 #
 
-PACKAGE_WRITE_DEPS += "qemu-native"
-inherit qemu
+PACKAGE_WRITE_DEPS += "qemuwrapper-cross"
 
 GIO_MODULE_PACKAGES ??= "${PN}"
 
diff --git a/meta/classes-recipe/gtk-immodules-cache.bbclass b/meta/classes-recipe/gtk-immodules-cache.bbclass
index 8fbe1dd1fb..585838c105 100644
--- a/meta/classes-recipe/gtk-immodules-cache.bbclass
+++ b/meta/classes-recipe/gtk-immodules-cache.bbclass
@@ -8,9 +8,7 @@ 
 #
 # Usage: Set GTKIMMODULES_PACKAGES to the packages that needs to update the inputmethod modules
 
-PACKAGE_WRITE_DEPS += "qemu-native"
-
-inherit qemu
+PACKAGE_WRITE_DEPS += "qemuwrapper-cross"
 
 GTKIMMODULES_PACKAGES ?= "${PN}"
 
diff --git a/meta/classes-recipe/manpages.bbclass b/meta/classes-recipe/manpages.bbclass
index e9ca2f895b..f3d034b046 100644
--- a/meta/classes-recipe/manpages.bbclass
+++ b/meta/classes-recipe/manpages.bbclass
@@ -10,7 +10,7 @@ 
 # by default.
 PACKAGECONFIG:append:class-target = " ${@bb.utils.contains('DISTRO_FEATURES', 'api-documentation', 'manpages', '', d)}"
 
-inherit qemu
+PACKAGE_WRITE_DEPS += "${@bb.utils.contains('DISTRO_FEATURES', 'api-documentation', 'qemuwrapper-cross', '', d)}"
 
 # usually manual files are packaged to ${PN}-doc except man-pages
 MAN_PKG ?= "${PN}-doc"
diff --git a/meta/classes-recipe/pixbufcache.bbclass b/meta/classes-recipe/pixbufcache.bbclass
index 107e38885e..c32673df55 100644
--- a/meta/classes-recipe/pixbufcache.bbclass
+++ b/meta/classes-recipe/pixbufcache.bbclass
@@ -9,12 +9,9 @@ 
 # packages.
 #
 
-DEPENDS:append:class-target = " qemu-native"
-inherit qemu
-
 PIXBUF_PACKAGES ??= "${PN}"
 
-PACKAGE_WRITE_DEPS += "qemu-native gdk-pixbuf-native"
+PACKAGE_WRITE_DEPS += "qemuwrapper-cross gdk-pixbuf-native"
 
 pixbufcache_common() {
 if [ "x$D" != "x" ]; then
diff --git a/meta/recipes-core/systemd/systemd_257.5.bb b/meta/recipes-core/systemd/systemd_257.5.bb
index 24aad11c0a..0f0c846db6 100644
--- a/meta/recipes-core/systemd/systemd_257.5.bb
+++ b/meta/recipes-core/systemd/systemd_257.5.bb
@@ -8,7 +8,7 @@  DEPENDS = "gperf-native libcap util-linux python3-jinja2-native"
 
 SECTION = "base/shell"
 
-inherit useradd pkgconfig meson perlnative update-rc.d update-alternatives qemu systemd gettext bash-completion manpages features_check mime
+inherit useradd pkgconfig meson perlnative update-rc.d update-alternatives systemd gettext bash-completion manpages features_check mime
 
 # unmerged-usr support is deprecated upstream, taints the system and will be
 # removed in the near future. Fail the build if it is not enabled.
@@ -932,7 +932,8 @@  pkg_prerm:${PN}:libc-glibc () {
 	fi
 }
 
-PACKAGE_WRITE_DEPS += "qemu-native"
+PACKAGE_WRITE_DEPS += "qemuwrapper-cross"
+
 pkg_postinst:udev-hwdb () {
 	if test -n "$D"; then
 		$INTERCEPT_DIR/postinst_intercept update_udev_hwdb ${PKG} mlprefix=${MLPREFIX} binprefix=${MLPREFIX} \
diff --git a/meta/recipes-core/udev/eudev_3.2.14.bb b/meta/recipes-core/udev/eudev_3.2.14.bb
index b3e7d092c5..a2d222e655 100644
--- a/meta/recipes-core/udev/eudev_3.2.14.bb
+++ b/meta/recipes-core/udev/eudev_3.2.14.bb
@@ -20,7 +20,7 @@  SRC_URI[sha256sum] = "8da4319102f24abbf7fff5ce9c416af848df163b29590e666d334cc192
 
 GITHUB_BASE_URI = "https://github.com/eudev-project/eudev/releases"
 
-inherit autotools update-rc.d qemu pkgconfig features_check manpages github-releases
+inherit autotools update-rc.d pkgconfig features_check manpages github-releases
 
 CONFLICT_DISTRO_FEATURES = "systemd"
 
@@ -77,7 +77,7 @@  RDEPENDS:${PN} += "kmod"
 RPROVIDES:${PN} = "hotplug udev"
 RPROVIDES:${PN}-hwdb += "udev-hwdb"
 
-PACKAGE_WRITE_DEPS += "qemu-native"
+PACKAGE_WRITE_DEPS += "qemuwrapper-cross"
 pkg_postinst:${PN}-hwdb () {
 	if test -n "$D"; then
 		$INTERCEPT_DIR/postinst_intercept update_udev_hwdb ${PKG} mlprefix=${MLPREFIX} binprefix=${MLPREFIX}