* Re: [OE-core] [PATCH v4] qemu: Add qemu-common package
[not found] <177296216FD9611D.22245@lists.openembedded.org>
@ 2023-07-27 5:26 ` Yu, Mingli
2023-08-14 9:19 ` Yu, Mingli
1 sibling, 0 replies; 5+ messages in thread
From: Yu, Mingli @ 2023-07-27 5:26 UTC (permalink / raw)
To: Yu, Mingli, openembedded-core, alexandre.belloni
Ping.
Thanks,
On 7/17/23 15:11, 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>
> ---
>
> v3->v4: remove the added native-sdk dependency.
>
> meta/recipes-devtools/qemu/qemu.inc | 23 ++++++++++++-----------
> meta/recipes-devtools/qemu/qemu_8.0.3.bb | 2 +-
> 2 files changed, 13 insertions(+), 12 deletions(-)
>
> diff --git a/meta/recipes-devtools/qemu/qemu.inc b/meta/recipes-devtools/qemu/qemu.inc
> index 16581db69d..76560f454d 100644
> --- a/meta/recipes-devtools/qemu/qemu.inc
> +++ b/meta/recipes-devtools/qemu/qemu.inc
> @@ -225,15 +225,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-.*"
>
> @@ -241,15 +244,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.3.bb b/meta/recipes-devtools/qemu/qemu_8.0.3.bb
> index 42e133967e..5d3c47c3b0 100644
> --- a/meta/recipes-devtools/qemu/qemu_8.0.3.bb
> +++ b/meta/recipes-devtools/qemu/qemu_8.0.3.bb
> @@ -8,7 +8,7 @@ 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"
>
> 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)}"
>
>
>
> -=-=-=-=-=-=-=-=-=-=-=-
> Links: You receive all messages sent to this group.
> View/Reply Online (#184432): https://lists.openembedded.org/g/openembedded-core/message/184432
> Mute This Topic: https://lists.openembedded.org/mt/100190357/3618448
> Group Owner: openembedded-core+owner@lists.openembedded.org
> Unsubscribe: https://lists.openembedded.org/g/openembedded-core/unsub [mingli.yu@eng.windriver.com]
> -=-=-=-=-=-=-=-=-=-=-=-
>
^ permalink raw reply [flat|nested] 5+ messages in thread
* Re: [OE-core] [PATCH v4] qemu: Add qemu-common package
[not found] <177296216FD9611D.22245@lists.openembedded.org>
2023-07-27 5:26 ` [OE-core] [PATCH v4] qemu: Add qemu-common package Yu, Mingli
@ 2023-08-14 9:19 ` Yu, Mingli
2023-08-14 9:25 ` Richard Purdie
1 sibling, 1 reply; 5+ messages in thread
From: Yu, Mingli @ 2023-08-14 9:19 UTC (permalink / raw)
To: Yu, Mingli, openembedded-core, alexandre.belloni, Richard Purdie
Ping.
Thanks,
On 7/17/23 15:11, 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>
> ---
>
> v3->v4: remove the added native-sdk dependency.
>
> meta/recipes-devtools/qemu/qemu.inc | 23 ++++++++++++-----------
> meta/recipes-devtools/qemu/qemu_8.0.3.bb | 2 +-
> 2 files changed, 13 insertions(+), 12 deletions(-)
>
> diff --git a/meta/recipes-devtools/qemu/qemu.inc b/meta/recipes-devtools/qemu/qemu.inc
> index 16581db69d..76560f454d 100644
> --- a/meta/recipes-devtools/qemu/qemu.inc
> +++ b/meta/recipes-devtools/qemu/qemu.inc
> @@ -225,15 +225,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-.*"
>
> @@ -241,15 +244,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.3.bb b/meta/recipes-devtools/qemu/qemu_8.0.3.bb
> index 42e133967e..5d3c47c3b0 100644
> --- a/meta/recipes-devtools/qemu/qemu_8.0.3.bb
> +++ b/meta/recipes-devtools/qemu/qemu_8.0.3.bb
> @@ -8,7 +8,7 @@ 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"
>
> 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)}"
>
>
>
> -=-=-=-=-=-=-=-=-=-=-=-
> Links: You receive all messages sent to this group.
> View/Reply Online (#184432): https://lists.openembedded.org/g/openembedded-core/message/184432
> Mute This Topic: https://lists.openembedded.org/mt/100190357/3618448
> Group Owner: openembedded-core+owner@lists.openembedded.org
> Unsubscribe: https://lists.openembedded.org/g/openembedded-core/unsub [mingli.yu@eng.windriver.com]
> -=-=-=-=-=-=-=-=-=-=-=-
>
^ permalink raw reply [flat|nested] 5+ messages in thread
* Re: [OE-core] [PATCH v4] qemu: Add qemu-common package
2023-08-14 9:19 ` Yu, Mingli
@ 2023-08-14 9:25 ` Richard Purdie
2023-08-14 9:46 ` Yu, Mingli
0 siblings, 1 reply; 5+ messages in thread
From: Richard Purdie @ 2023-08-14 9:25 UTC (permalink / raw)
To: Yu, Mingli, Yu, Mingli, openembedded-core, alexandre.belloni
On Mon, 2023-08-14 at 17:19 +0800, Yu, Mingli wrote:
> Ping.
https://lists.openembedded.org/g/openembedded-core/message/184574
"""
So why not just add:
RRECOMMENDS:${PN} += "${PN}-system-all ${PN}-user-all"
as I think we've then covered all the options we need?
"""
I still haven't seen an answer to this?
I don't like the fact we've messed this packaging around multiple times
and still don't seem clear on the problem(s) we're solving.
Cheers,
Richard
>
> Thanks,
>
> On 7/17/23 15:11, 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>
> > ---
> >
> > v3->v4: remove the added native-sdk dependency.
> >
> > meta/recipes-devtools/qemu/qemu.inc | 23 ++++++++++++-----------
> > meta/recipes-devtools/qemu/qemu_8.0.3.bb | 2 +-
> > 2 files changed, 13 insertions(+), 12 deletions(-)
> >
> > diff --git a/meta/recipes-devtools/qemu/qemu.inc b/meta/recipes-devtools/qemu/qemu.inc
> > index 16581db69d..76560f454d 100644
> > --- a/meta/recipes-devtools/qemu/qemu.inc
> > +++ b/meta/recipes-devtools/qemu/qemu.inc
> > @@ -225,15 +225,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-.*"
> >
> > @@ -241,15 +244,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.3.bb b/meta/recipes-devtools/qemu/qemu_8.0.3.bb
> > index 42e133967e..5d3c47c3b0 100644
> > --- a/meta/recipes-devtools/qemu/qemu_8.0.3.bb
> > +++ b/meta/recipes-devtools/qemu/qemu_8.0.3.bb
> > @@ -8,7 +8,7 @@ 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"
> >
> > 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)}"
> >
> >
> >
> > -=-=-=-=-=-=-=-=-=-=-=-
> > Links: You receive all messages sent to this group.
> > View/Reply Online (#184432): https://lists.openembedded.org/g/openembedded-core/message/184432
> > Mute This Topic: https://lists.openembedded.org/mt/100190357/3618448
> > Group Owner: openembedded-core+owner@lists.openembedded.org
> > Unsubscribe: https://lists.openembedded.org/g/openembedded-core/unsub [mingli.yu@eng.windriver.com]
> > -=-=-=-=-=-=-=-=-=-=-=-
> >
>
^ permalink raw reply [flat|nested] 5+ messages in thread
* Re: [OE-core] [PATCH v4] qemu: Add qemu-common package
2023-08-14 9:25 ` Richard Purdie
@ 2023-08-14 9:46 ` Yu, Mingli
2023-08-14 10:18 ` Richard Purdie
0 siblings, 1 reply; 5+ messages in thread
From: Yu, Mingli @ 2023-08-14 9:46 UTC (permalink / raw)
To: Richard Purdie, Yu, Mingli, openembedded-core, alexandre.belloni
Hi Richard,
On 8/14/23 17:25, Richard Purdie wrote:
> CAUTION: This email comes from a non Wind River email account!
> Do not click links or open attachments unless you recognize the sender and know the content is safe.
>
> On Mon, 2023-08-14 at 17:19 +0800, Yu, Mingli wrote:
>> Ping.
>
> https://lists.openembedded.org/g/openembedded-core/message/184574
>
> """
> So why not just add:
>
> RRECOMMENDS:${PN} += "${PN}-system-all ${PN}-user-all"
>
> as I think we've then covered all the options we need?
> """
>
> I still haven't seen an answer to this?
Sorry for noise, have ever answered this question in another thread
"[PATCH v3] qemu: Add qemu-common package".
If just add RRECOMMENDS:${PN} += "${PN}-system-all ${PN}-user-all" by
default, then how about the user who want only install
qemu-system-aarch64-7.2.0-r0.corei7_64.rpm still install all qemu
binaries as qemu-system-aarch64 rdepends on qemu which RRECOMMENDS
qemu-system-all and
qemu-user-all(https://git.openembedded.org/openembedded-core/commit/?id=893846ead7ee54d53e9076150cd655e0c8bca5db).
So it's better make qemu as meta package to keep backward compatibility
for user who install qemu can install all qemu binaries as before and
also can meet the need for user who want just install qemu arm64
emulation rpm such as
qemu-system-aarch64-7.2.0-r0.corei7_64.rpm(https://patchwork.yoctoproject.org/project/oe-core/patch/20230717071114.2734859-1-mingli.yu@eng.windriver.com/)
via adding IMAGE_INSTALL:append = " qemu-system-aarch64" into
conf/local.conf.
Thanks,
>
> I don't like the fact we've messed this packaging around multiple times
> and still don't seem clear on the problem(s) we're solving.
>
> Cheers,
>
> Richard
>
>
>>
>> Thanks,
>>
>> On 7/17/23 15:11, 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>
>>> ---
>>>
>>> v3->v4: remove the added native-sdk dependency.
>>>
>>> meta/recipes-devtools/qemu/qemu.inc | 23 ++++++++++++-----------
>>> meta/recipes-devtools/qemu/qemu_8.0.3.bb | 2 +-
>>> 2 files changed, 13 insertions(+), 12 deletions(-)
>>>
>>> diff --git a/meta/recipes-devtools/qemu/qemu.inc b/meta/recipes-devtools/qemu/qemu.inc
>>> index 16581db69d..76560f454d 100644
>>> --- a/meta/recipes-devtools/qemu/qemu.inc
>>> +++ b/meta/recipes-devtools/qemu/qemu.inc
>>> @@ -225,15 +225,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-.*"
>>>
>>> @@ -241,15 +244,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.3.bb b/meta/recipes-devtools/qemu/qemu_8.0.3.bb
>>> index 42e133967e..5d3c47c3b0 100644
>>> --- a/meta/recipes-devtools/qemu/qemu_8.0.3.bb
>>> +++ b/meta/recipes-devtools/qemu/qemu_8.0.3.bb
>>> @@ -8,7 +8,7 @@ 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"
>>>
>>> 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)}"
>>>
>>>
>>>
>>> -=-=-=-=-=-=-=-=-=-=-=-
>>> Links: You receive all messages sent to this group.
>>> View/Reply Online (#184432): https://lists.openembedded.org/g/openembedded-core/message/184432
>>> Mute This Topic: https://lists.openembedded.org/mt/100190357/3618448
>>> Group Owner: openembedded-core+owner@lists.openembedded.org
>>> Unsubscribe: https://lists.openembedded.org/g/openembedded-core/unsub [mingli.yu@eng.windriver.com]
>>> -=-=-=-=-=-=-=-=-=-=-=-
>>>
>>
>
^ permalink raw reply [flat|nested] 5+ messages in thread
* Re: [OE-core] [PATCH v4] qemu: Add qemu-common package
2023-08-14 9:46 ` Yu, Mingli
@ 2023-08-14 10:18 ` Richard Purdie
0 siblings, 0 replies; 5+ messages in thread
From: Richard Purdie @ 2023-08-14 10:18 UTC (permalink / raw)
To: Yu, Mingli, openembedded-core, alexandre.belloni
On Mon, 2023-08-14 at 17:46 +0800, Yu, Mingli wrote:
> Hi Richard,
>
> On 8/14/23 17:25, Richard Purdie wrote:
> > CAUTION: This email comes from a non Wind River email account!
> > Do not click links or open attachments unless you recognize the sender and know the content is safe.
> >
> > On Mon, 2023-08-14 at 17:19 +0800, Yu, Mingli wrote:
> > > Ping.
> >
> > https://lists.openembedded.org/g/openembedded-core/message/184574
> >
> > """
> > So why not just add:
> >
> > RRECOMMENDS:${PN} += "${PN}-system-all ${PN}-user-all"
> >
> > as I think we've then covered all the options we need?
> > """
> >
> > I still haven't seen an answer to this?
>
> Sorry for noise, have ever answered this question in another thread
> "[PATCH v3] qemu: Add qemu-common package".
>
> If just add RRECOMMENDS:${PN} += "${PN}-system-all ${PN}-user-all" by
> default, then how about the user who want only install
> qemu-system-aarch64-7.2.0-r0.corei7_64.rpm still install all qemu
> binaries as qemu-system-aarch64 rdepends on qemu which RRECOMMENDS
> qemu-system-all and
> qemu-user-all(https://git.openembedded.org/openembedded-core/commit/?id=893846ead7ee54d53e9076150cd655e0c8bca5db).
>
> So it's better make qemu as meta package to keep backward compatibility
> for user who install qemu can install all qemu binaries as before and
> also can meet the need for user who want just install qemu arm64
> emulation rpm such as
> qemu-system-aarch64-7.2.0-r0.corei7_64.rpm(https://patchwork.yoctoproject.org/project/oe-core/patch/20230717071114.2734859-1-mingli.yu@eng.windriver.com/)
> via adding IMAGE_INSTALL:append = " qemu-system-aarch64" into
> conf/local.conf.
Sorry, I'd missed that reply in the midst of the different emails and
it does help explain things thanks.
I don't like the amount of churn we've had in qemu packaging but this
does look like what we'll need to do to resolve the issue you've
mentioned above. I'll queue it for testing.
Cheers,
Richard
^ permalink raw reply [flat|nested] 5+ messages in thread
end of thread, other threads:[~2023-08-14 10:18 UTC | newest]
Thread overview: 5+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
[not found] <177296216FD9611D.22245@lists.openembedded.org>
2023-07-27 5:26 ` [OE-core] [PATCH v4] qemu: Add qemu-common package Yu, Mingli
2023-08-14 9:19 ` Yu, Mingli
2023-08-14 9:25 ` Richard Purdie
2023-08-14 9:46 ` Yu, Mingli
2023-08-14 10:18 ` Richard Purdie
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.