Does deb/rpm packaging already have this feature? Alex
On Mon, 11 Jan 2021 at 13:45, Michael Ho <michael...@bmw.de> wrote: > From: Michael Ho <michael...@bmw.de> > > Switch do_populate_sdk for the ipk package manager to use a separate target > opkg config file and separate the lockfiles restricting do_rootfs and > do_populate_sdk from running in parallel. > > This way if an image recipe includes a dependency to do_populate_sdk by > default then it will run in parallel to do_rootfs saving time compared to > the > sequential execution. > > Signed-off-by: Michael Ho <michael...@bmw.de> > --- > meta/classes/package_ipk.bbclass | 1 + > meta/classes/rootfs_ipk.bbclass | 4 ++-- > meta/lib/oe/package_manager/ipk/sdk.py | 6 ++++++ > 3 files changed, 9 insertions(+), 2 deletions(-) > > diff --git a/meta/classes/package_ipk.bbclass > b/meta/classes/package_ipk.bbclass > index 79cb36c..d31dba0 100644 > --- a/meta/classes/package_ipk.bbclass > +++ b/meta/classes/package_ipk.bbclass > @@ -4,6 +4,7 @@ IMAGE_PKGTYPE ?= "ipk" > > IPKGCONF_TARGET = "${WORKDIR}/opkg.conf" > IPKGCONF_SDK = "${WORKDIR}/opkg-sdk.conf" > +IPKGCONF_SDK_TARGET = "${WORKDIR}/opkg-sdk-target.conf" > > PKGWRITEDIRIPK = "${WORKDIR}/deploy-ipks" > > diff --git a/meta/classes/rootfs_ipk.bbclass > b/meta/classes/rootfs_ipk.bbclass > index f1e0219..245c256 100644 > --- a/meta/classes/rootfs_ipk.bbclass > +++ b/meta/classes/rootfs_ipk.bbclass > @@ -14,8 +14,8 @@ do_rootfs[recrdeptask] += "do_package_write_ipk > do_package_qa" > do_rootfs[vardeps] += "PACKAGE_FEED_URIS PACKAGE_FEED_BASE_PATHS > PACKAGE_FEED_ARCHS" > > do_rootfs[lockfiles] += "${WORKDIR}/ipk.lock" > -do_populate_sdk[lockfiles] += "${WORKDIR}/ipk.lock" > -do_populate_sdk_ext[lockfiles] += "${WORKDIR}/ipk.lock" > +do_populate_sdk[lockfiles] += "${WORKDIR}/sdk-ipk.lock" > +do_populate_sdk_ext[lockfiles] += "${WORKDIR}/sdk-ipk.lock" > > OPKG_PREPROCESS_COMMANDS = "" > > diff --git a/meta/lib/oe/package_manager/ipk/sdk.py > b/meta/lib/oe/package_manager/ipk/sdk.py > index 37af034..e2ca415 100644 > --- a/meta/lib/oe/package_manager/ipk/sdk.py > +++ b/meta/lib/oe/package_manager/ipk/sdk.py > @@ -14,6 +14,12 @@ class PkgSdk(Sdk): > def __init__(self, d, manifest_dir=None): > super(PkgSdk, self).__init__(d, manifest_dir) > > + # In sdk_list_installed_packages the call to opkg is hardcoded to > + # always use IPKGCONF_TARGET and there's no exposed API to change > this > + # so simply override IPKGCONF_TARGET to use this separated config > file. > + ipkgconf_sdk_target = d.getVar("IPKGCONF_SDK_TARGET") > + d.setVar("IPKGCONF_TARGET", ipkgconf_sdk_target) > + > self.target_conf = self.d.getVar("IPKGCONF_TARGET") > self.host_conf = self.d.getVar("IPKGCONF_SDK") > > -- > 2.7.4 > > > > >
-=-=-=-=-=-=-=-=-=-=-=- Links: You receive all messages sent to this group. View/Reply Online (#146590): https://lists.openembedded.org/g/openembedded-core/message/146590 Mute This Topic: https://lists.openembedded.org/mt/79594382/21656 Group Owner: openembedded-core+ow...@lists.openembedded.org Unsubscribe: https://lists.openembedded.org/g/openembedded-core/unsub [arch...@mail-archive.com] -=-=-=-=-=-=-=-=-=-=-=-