* 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.