public inbox for openembedded-core@lists.openembedded.org
 help / color / mirror / Atom feed
From: Alexandre Belloni <alexandre.belloni@bootlin.com>
To: "Yu, Mingli" <mingli.yu@eng.windriver.com>
Cc: openembedded-core@lists.openembedded.org, Ross.Burton@arm.com
Subject: Re: [OE-core] [PATCH v3] qemu: Add qemu-common package
Date: Sun, 16 Jul 2023 13:47:41 +0200	[thread overview]
Message-ID: <2023071611474165f97b23@mail.local> (raw)
In-Reply-To: <20230710103218.3834001-1-mingli.yu@eng.windriver.com>

Hello,

This causes the following meta-mingw error on the AB:

https://autobuilder.yoctoproject.org/typhoon/#/builders/89/builds/7501/steps/12/logs/stdio

This is due to the added native-sdk dependency.

On 10/07/2023 18:32:18+0800, Yu, Mingli wrote:
> From: Mingli Yu <mingli.yu@windriver.com>
> 
> We split the qemu package [1] to add support to make user can install
> one qemu arch emulation rpm to ease the concerns who care much about
> the rpm size in embedded device.
> 
> But for the user who only install the qemu-*.rpm can't do anything
> except they install the qemu emulation rpm like qemu-system-x86-64-*.rpm
> explicitly.
> 
> So add qemu-common package to package all thing into qemu-common when
> not split the package, and package only the basic into qemu-common and
> other arch related to each qemu arch emulation rpm when split the package
> to fix the backward compatibility.
> 
> qenu-*.rpm which is meta package rdepends on qemu-common and the available
> qemu arch emulation rpm like qemu-system-x86-64-*.rpm and etc.
> 
> [1] https://git.openembedded.org/openembedded-core/commit/?id=893846ead7ee54d53e9076150cd655e0c8bca5db
> 
> Signed-off-by: Mingli Yu <mingli.yu@windriver.com>
> ---
>  meta/recipes-devtools/qemu/qemu.inc      | 23 ++++++++++++-----------
>  meta/recipes-devtools/qemu/qemu_8.0.0.bb |  3 ++-
>  2 files changed, 14 insertions(+), 12 deletions(-)
> 
> diff --git a/meta/recipes-devtools/qemu/qemu.inc b/meta/recipes-devtools/qemu/qemu.inc
> index a5bdeef66d..94624163d0 100644
> --- a/meta/recipes-devtools/qemu/qemu.inc
> +++ b/meta/recipes-devtools/qemu/qemu.inc
> @@ -226,15 +226,18 @@ PACKAGECONFIG[brlapi] = "--enable-brlapi,--disable-brlapi"
>  PACKAGECONFIG[jack] = "--enable-jack,--disable-jack,jack,"
>  PACKAGECONFIG[debuginfo] = "--enable-libdw,--disable-libdw,elfutils"
>  
> -INSANE_SKIP:${PN} = "arch"
> +INSANE_SKIP:${PN}-common = "arch"
>  
>  FILES:${PN} += "${datadir}/icons"
>  
>  # For user who want to install all arch packages
> -PACKAGES =+ "${PN}-system-all ${PN}-user-all"
> +PACKAGES =+ "${PN}-common"
> +RDEPENDS:${PN} += "${PN}-common"
>  
> -ALLOW_EMPTY:${PN}-system-all = "1"
> -ALLOW_EMPTY:${PN}-user-all = "1"
> +ALLOW_EMPTY:${PN} = "1"
> +FILES:${PN} = ""
> +
> +FILES:${PN}-common = "${bindir}/* ${includedir}/* ${libexecdir}/* ${datadir}/* ${localstatedir}"
>  
>  PACKAGES_DYNAMIC += "^${PN}-user-.*  ^${PN}-system-.*"
>  
> @@ -242,15 +245,13 @@ PACKAGESPLITFUNCS =+ "split_qemu_packages"
>  
>  python split_qemu_packages () {
>      archdir = d.expand('${bindir}/')
> -    syspackages = do_split_packages(d, archdir, r'^qemu-system-(.*)$', '${PN}-system-%s', 'QEMU full system emulation binaries(%s)' , prepend=True)
> -    if syspackages:
> -        d.setVar('RDEPENDS:' + d.getVar('PN') + '-system-all', ' '.join(syspackages))
> +    subpackages = do_split_packages(d, archdir, r'^qemu-system-(.*)$', '${PN}-system-%s', 'QEMU full system emulation binaries(%s)' , prepend=True, extra_depends='${PN}-common')
>  
> -    userpackages = do_split_packages(d, archdir, r'^qemu-((?!system|edid|ga|img|io|nbd|pr-helper|storage-daemon).*)$', '${PN}-user-%s', 'QEMU full user emulation binaries(%s)' , prepend=True)
> -    if userpackages:
> -        d.setVar('RDEPENDS:' + d.getVar('PN') + '-user-all', ' '.join(userpackages))
> +    subpackages += do_split_packages(d, archdir, r'^qemu-((?!system|edid|ga|img|io|nbd|pr-helper|storage-daemon).*)$', '${PN}-user-%s', 'QEMU full user emulation binaries(%s)' , prepend=True, extra_depends='${PN}-common')
> +    if subpackages:
> +        d.appendVar('RDEPENDS:' + d.getVar('PN'), ' ' + ' '.join(subpackages))
>      mipspackage = d.getVar('PN') + "-user-mips"
> -    if mipspackage in ' '.join(userpackages):
> +    if mipspackage in ' '.join(subpackages):
>          d.appendVar('RDEPENDS:' + mipspackage, ' ' + d.getVar("MLPREFIX") + 'bash')
>  }
>  
> diff --git a/meta/recipes-devtools/qemu/qemu_8.0.0.bb b/meta/recipes-devtools/qemu/qemu_8.0.0.bb
> index 42e133967e..412c2bc7f0 100644
> --- a/meta/recipes-devtools/qemu/qemu_8.0.0.bb
> +++ b/meta/recipes-devtools/qemu/qemu_8.0.0.bb
> @@ -8,7 +8,8 @@ DEPENDS:append:libc-musl = " libucontext"
>  
>  CFLAGS += "${@bb.utils.contains('DISTRO_FEATURES', 'x11', '', '-DEGL_NO_X11=1', d)}"
>  
> -RDEPENDS:${PN}:class-target += "bash"
> +RDEPENDS:${PN}-common:class-target += "bash"
> +RDEPENDS:${PN}-common:class-nativesdk += "bash"
>  
>  EXTRA_OECONF:append:class-target = " --target-list=${@get_qemu_target_list(d)}"
>  EXTRA_OECONF:append:class-target:mipsarcho32 = "${@bb.utils.contains('BBEXTENDCURR', 'multilib', ' --disable-capstone', '', d)}"
> -- 
> 2.25.1
> 

> 
> -=-=-=-=-=-=-=-=-=-=-=-
> Links: You receive all messages sent to this group.
> View/Reply Online (#184068): https://lists.openembedded.org/g/openembedded-core/message/184068
> Mute This Topic: https://lists.openembedded.org/mt/100054994/3617179
> Group Owner: openembedded-core+owner@lists.openembedded.org
> Unsubscribe: https://lists.openembedded.org/g/openembedded-core/unsub [alexandre.belloni@bootlin.com]
> -=-=-=-=-=-=-=-=-=-=-=-
> 


-- 
Alexandre Belloni, co-owner and COO, Bootlin
Embedded Linux and Kernel engineering
https://bootlin.com


  parent reply	other threads:[~2023-07-16 11:47 UTC|newest]

Thread overview: 17+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2023-06-15  8:17 [PATCH] qemu: Install the default qemu emulation rpm mingli.yu
2023-06-26 10:28 ` [OE-core] " Richard Purdie
2023-06-27 10:56   ` [PATCH] qemu: Add qemu-common package mingli.yu
2023-07-06 11:36     ` [OE-core] " Ross Burton
2023-07-10  6:55       ` [PATCH v2] " mingli.yu
2023-07-10 10:32       ` [PATCH v3] " mingli.yu
2023-07-10 20:47         ` [OE-core] " Alexandre Belloni
2023-07-12  2:39           ` Yu, Mingli
2023-07-16 11:47         ` Alexandre Belloni [this message]
2023-07-17  7:10           ` Yu, Mingli
2023-07-17 12:46             ` Alexandre Belloni
2023-07-19  9:10               ` Yu, Mingli
2023-07-19  9:20                 ` Alexandre Belloni
2023-07-19  9:24                   ` Richard Purdie
2023-07-19  9:39                     ` Yu, Mingli
2023-07-19 10:08                       ` Richard Purdie
2023-07-20  2:39                         ` Yu, Mingli

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=2023071611474165f97b23@mail.local \
    --to=alexandre.belloni@bootlin.com \
    --cc=Ross.Burton@arm.com \
    --cc=mingli.yu@eng.windriver.com \
    --cc=openembedded-core@lists.openembedded.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox