diff mbox series

qemu: Install the default qemu emulation rpm

Message ID 20230615081705.96399-1-mingli.yu@eng.windriver.com
State New
Headers show
Series qemu: Install the default qemu emulation rpm | expand

Commit Message

mingli.yu@eng.windriver.com June 15, 2023, 8:17 a.m. UTC
From: Mingli Yu <mingli.yu@windriver.com>

The qemu rpm can be split or not via customize PACKAGESPLITFUNCS and
there is no specific qemu emulation rpm installed when we choose split
the qemu rpms now.

To gurantee the basic usage, install the qemu emulation rpm which
corresponding to the target arch by default when split the qemu rpm.

Signed-off-by: Mingli Yu <mingli.yu@windriver.com>
---
 meta/recipes-devtools/qemu/qemu.inc | 3 +++
 1 file changed, 3 insertions(+)

Comments

Richard Purdie June 26, 2023, 10:28 a.m. UTC | #1
On Thu, 2023-06-15 at 16:17 +0800, Yu, Mingli wrote:
> From: Mingli Yu <mingli.yu@windriver.com>
> 
> The qemu rpm can be split or not via customize PACKAGESPLITFUNCS and
> there is no specific qemu emulation rpm installed when we choose split
> the qemu rpms now.
> 
> To gurantee the basic usage, install the qemu emulation rpm which
> corresponding to the target arch by default when split the qemu rpm.
> 
> Signed-off-by: Mingli Yu <mingli.yu@windriver.com>
> ---
>  meta/recipes-devtools/qemu/qemu.inc | 3 +++
>  1 file changed, 3 insertions(+)
> 
> diff --git a/meta/recipes-devtools/qemu/qemu.inc b/meta/recipes-devtools/qemu/qemu.inc
> index 7d39f0a25d..c9df43a5a2 100644
> --- a/meta/recipes-devtools/qemu/qemu.inc
> +++ b/meta/recipes-devtools/qemu/qemu.inc
> @@ -248,6 +248,9 @@ python split_qemu_packages () {
>      mipspackage = d.getVar('PN') + "-user-mips"
>      if mipspackage in ' '.join(userpackages):
>          d.appendVar('RDEPENDS:' + mipspackage, ' ' + d.getVar("MLPREFIX") + 'bash')
> +
> +    targetarch = "${@'i386' if d.getVar('TARGET_ARCH') in ['x86', 'i486', 'i586', 'i686'] else d.getVar('TARGET_ARCH').replace('_', '-')}"
> +    d.appendVar('RRECOMMENDS:' + d.getVar('PN'), ' ' + d.getVar('PN') + '-user-' + targetarch + ' ' + d.getVar('PN') + '-system-' + targetarch)
>  }
>  
>  # Put the guest agent in a separate package

I did originally say that I thought the qemu package should pull in all
of the sub packages to maintain compatibility. I'm not sure having it
pick the host architecture like this is a great idea and certainly it
changes the default behaviour again.

I'd much rather than picked a design then implementing it than keeping
changing behaviour like this :(.

I'm not seeing many other opinions though.

Cheers,

Richard
diff mbox series

Patch

diff --git a/meta/recipes-devtools/qemu/qemu.inc b/meta/recipes-devtools/qemu/qemu.inc
index 7d39f0a25d..c9df43a5a2 100644
--- a/meta/recipes-devtools/qemu/qemu.inc
+++ b/meta/recipes-devtools/qemu/qemu.inc
@@ -248,6 +248,9 @@  python split_qemu_packages () {
     mipspackage = d.getVar('PN') + "-user-mips"
     if mipspackage in ' '.join(userpackages):
         d.appendVar('RDEPENDS:' + mipspackage, ' ' + d.getVar("MLPREFIX") + 'bash')
+
+    targetarch = "${@'i386' if d.getVar('TARGET_ARCH') in ['x86', 'i486', 'i586', 'i686'] else d.getVar('TARGET_ARCH').replace('_', '-')}"
+    d.appendVar('RRECOMMENDS:' + d.getVar('PN'), ' ' + d.getVar('PN') + '-user-' + targetarch + ' ' + d.getVar('PN') + '-system-' + targetarch)
 }
 
 # Put the guest agent in a separate package