Hello Richard, On Thu, 9 Jun 2022 12:37:28 +0100 "Richard Purdie" <richard.pur...@linuxfoundation.org> wrote:
> There is a load of duplicated git/layer/revision code which makes > most sesne as a python library, not bbclass code. Start to refactor as such. s/sesne/sense/ > > Signed-off-by: Richard Purdie <richard.pur...@linuxfoundation.org> > --- > meta/classes/base.bbclass | 9 +++--- > meta/classes/buildhistory.bbclass | 4 +-- > meta/classes/image-buildinfo.bbclass | 4 +-- > meta/classes/metadata_scm.bbclass | 43 ++-------------------------- > meta/lib/oe/buildcfg.py | 40 ++++++++++++++++++++++++++ > 5 files changed, 51 insertions(+), 49 deletions(-) > create mode 100644 meta/lib/oe/buildcfg.py > > diff --git a/meta/classes/base.bbclass b/meta/classes/base.bbclass > index bdb3ac33c67..f59e95fef06 100644 > --- a/meta/classes/base.bbclass > +++ b/meta/classes/base.bbclass > @@ -7,12 +7,11 @@ inherit staging > inherit mirrors > inherit utils > inherit utility-tasks > -inherit metadata_scm > inherit logging > > OE_EXTRA_IMPORTS ?= "" > > -OE_IMPORTS += "os sys time oe.path oe.utils oe.types oe.package > oe.packagegroup oe.sstatesig oe.lsb oe.cachedpath oe.license oe.qa > oe.reproducible oe.rust ${OE_EXTRA_IMPORTS}" > +OE_IMPORTS += "os sys time oe.path oe.utils oe.types oe.package > oe.packagegroup oe.sstatesig oe.lsb oe.cachedpath oe.license oe.qa > oe.reproducible oe.rust oe.buildcfg ${OE_EXTRA_IMPORTS}" > OE_IMPORTS[type] = "list" > > PACKAGECONFIG_CONFARGS ??= "" > @@ -35,6 +34,8 @@ def oe_import(d): > # We need the oe module name space early (before INHERITs get added) > OE_IMPORTED := "${@oe_import(d)}" > > +inherit metadata_scm > + > def lsb_distro_identifier(d): > adjust = d.getVar('LSB_DISTRO_ADJUST') > adjust_func = None > @@ -219,8 +220,8 @@ def get_source_date_epoch_value(d): > def get_layers_branch_rev(d): > layers = (d.getVar("BBLAYERS") or "").split() > layers_branch_rev = ["%-20s = \"%s:%s\"" % (os.path.basename(i), \ > - base_get_metadata_git_branch(i, None).strip(), \ > - base_get_metadata_git_revision(i, None)) \ > + oe.buildcfg.get_metadata_git_branch(i, None).strip(), \ > + oe.buildcfg.get_metadata_git_revision(i, None)) \ > for i in layers] > i = len(layers_branch_rev)-1 > p1 = layers_branch_rev[i].find("=") > diff --git a/meta/classes/buildhistory.bbclass > b/meta/classes/buildhistory.bbclass > index 4345ffc6939..f2493b3765a 100644 > --- a/meta/classes/buildhistory.bbclass > +++ b/meta/classes/buildhistory.bbclass > @@ -761,8 +761,8 @@ def buildhistory_get_metadata_revs(d): > # We want an easily machine-readable format here, so > get_layers_branch_rev isn't quite what we want > layers = (d.getVar("BBLAYERS") or "").split() > medadata_revs = ["%-17s = %s:%s%s" % (os.path.basename(i), \ > - base_get_metadata_git_branch(i, None).strip(), \ > - base_get_metadata_git_revision(i, None), \ > + oe.buildcfg.get_metadata_git_branch(i, None).strip(), \ > + oe.buildcfg.get_metadata_git_revision(i, None), \ > buildhistory_get_modified(i)) \ > for i in layers] > return '\n'.join(medadata_revs) > diff --git a/meta/classes/image-buildinfo.bbclass > b/meta/classes/image-buildinfo.bbclass > index 94c585d4cd9..25ca8d8fe6b 100644 > --- a/meta/classes/image-buildinfo.bbclass > +++ b/meta/classes/image-buildinfo.bbclass > @@ -46,8 +46,8 @@ def get_layer_git_status(path): > def get_layer_revs(d): > layers = (d.getVar("BBLAYERS") or "").split() > medadata_revs = ["%-17s = %s:%s %s" % (os.path.basename(i), \ > - base_get_metadata_git_branch(i, None).strip(), \ > - base_get_metadata_git_revision(i, None), \ > + oe.buildcfg.get_metadata_git_branch(i, None).strip(), \ > + oe.buildcfg.get_metadata_git_revision(i, None), \ > get_layer_git_status(i)) \ > for i in layers] > return '\n'.join(medadata_revs) > diff --git a/meta/classes/metadata_scm.bbclass > b/meta/classes/metadata_scm.bbclass > index 47cb969b8d8..f646b3159a4 100644 > --- a/meta/classes/metadata_scm.bbclass > +++ b/meta/classes/metadata_scm.bbclass > @@ -1,44 +1,5 @@ > -def base_detect_revision(d): > - path = base_get_scmbasepath(d) > - return base_get_metadata_git_revision(path, d) > > -def base_detect_branch(d): > - path = base_get_scmbasepath(d) > - return base_get_metadata_git_branch(path, d) This causes failures because there still a user of base_detect_branch() in meta/classes/report-error.bbclass NameError: name 'base_detect_branch' is not defined https://autobuilder.yoctoproject.org/typhoon/#/builders/113/builds/2527/steps/13/logs/stdio -- Luca Ceresoli, Bootlin Embedded Linux and Kernel engineering https://bootlin.com
-=-=-=-=-=-=-=-=-=-=-=- Links: You receive all messages sent to this group. View/Reply Online (#166806): https://lists.openembedded.org/g/openembedded-core/message/166806 Mute This Topic: https://lists.openembedded.org/mt/91643180/21656 Group Owner: openembedded-core+ow...@lists.openembedded.org Unsubscribe: https://lists.openembedded.org/g/openembedded-core/unsub [arch...@mail-archive.com] -=-=-=-=-=-=-=-=-=-=-=-