* [PATCH] image-buildinfo: drop more verbose build configuration
@ 2018-09-28 9:48 Andreas Müller
2018-09-29 14:17 ` Richard Purdie
0 siblings, 1 reply; 3+ messages in thread
From: Andreas Müller @ 2018-09-28 9:48 UTC (permalink / raw)
To: openembedded-core
* before DISTRO and DISTRO_VERSION were written only - this is not enough to
get a complete picture in which environmet an image was build. Now same
information as displayed on console is written.
* code fragment was based on bass.bbclass
Signed-off-by: Andreas Müller <schnitzeltony@gmail.com>
---
I know timing is not the best - we are already feature freezed. But I
think it is an enhancement worth to have an exception...
meta/classes/image-buildinfo.bbclass | 28 ++++++++++++----------------
1 file changed, 12 insertions(+), 16 deletions(-)
diff --git a/meta/classes/image-buildinfo.bbclass b/meta/classes/image-buildinfo.bbclass
index 213fb9cf9b..fbb3188040 100644
--- a/meta/classes/image-buildinfo.bbclass
+++ b/meta/classes/image-buildinfo.bbclass
@@ -15,18 +15,6 @@ IMAGE_BUILDINFO_VARS ?= "DISTRO DISTRO_VERSION"
# Desired location of the output file in the image.
IMAGE_BUILDINFO_FILE ??= "${sysconfdir}/build"
-# From buildhistory.bbclass
-def image_buildinfo_outputvars(vars, listvars, d):
- vars = vars.split()
- listvars = listvars.split()
- ret = ""
- for var in vars:
- value = d.getVar(var) or ""
- if (d.getVarFlag(var, 'type') == "list"):
- value = oe.utils.squashspaces(value)
- ret += "%s = %s\n" % (var, value)
- return ret.rstrip('\n')
-
# Gets git branch's status (clean or dirty)
def get_layer_git_status(path):
import subprocess
@@ -57,10 +45,18 @@ def buildinfo_target(d):
# Get context
if d.getVar('BB_WORKERCONTEXT') != '1':
return ""
- # Single and list variables to be read
- vars = (d.getVar("IMAGE_BUILDINFO_VARS") or "")
- listvars = (d.getVar("IMAGE_BUILDINFO_LVARS") or "")
- return image_buildinfo_outputvars(vars, listvars, d)
+ # taken from base.bbclass
+ localdata = bb.data.createCopy(d)
+ statuslines = []
+ g = globals()
+ func = 'buildcfg_vars'
+ if func not in g:
+ bb.warn("Build configuration function '%s' does not exist" % func)
+ else:
+ flines = g[func](localdata)
+ if flines:
+ statuslines.extend(flines)
+ return ('\n%s\n' % '\n'.join(statuslines))
# Write build information to target filesystem
python buildinfo () {
--
2.14.4
^ permalink raw reply related [flat|nested] 3+ messages in thread* Re: [PATCH] image-buildinfo: drop more verbose build configuration
2018-09-28 9:48 [PATCH] image-buildinfo: drop more verbose build configuration Andreas Müller
@ 2018-09-29 14:17 ` Richard Purdie
2018-11-07 22:24 ` Andreas Müller
0 siblings, 1 reply; 3+ messages in thread
From: Richard Purdie @ 2018-09-29 14:17 UTC (permalink / raw)
To: Andreas Müller, openembedded-core
On Fri, 2018-09-28 at 11:48 +0200, Andreas Müller wrote:
> * before DISTRO and DISTRO_VERSION were written only - this is not
> enough to
> get a complete picture in which environmet an image was build. Now
> same
> information as displayed on console is written.
> * code fragment was based on bass.bbclass
>
> Signed-off-by: Andreas Müller <schnitzeltony@gmail.com>
> ---
>
> I know timing is not the best - we are already feature freezed. But I
> think it is an enhancement worth to have an exception...
It sounds good from the commit message but anyone IMAGE_BUILDINFO_VARS
or IMAGE_BUILDINFO_LVARS is going to find a significant change in
behaviour? At the point past feature freeze I'm not sure we can do
that...
Cheers,
Richard
> meta/classes/image-buildinfo.bbclass | 28 ++++++++++++------------
> ----
> 1 file changed, 12 insertions(+), 16 deletions(-)
>
> diff --git a/meta/classes/image-buildinfo.bbclass
> b/meta/classes/image-buildinfo.bbclass
> index 213fb9cf9b..fbb3188040 100644
> --- a/meta/classes/image-buildinfo.bbclass
> +++ b/meta/classes/image-buildinfo.bbclass
> @@ -15,18 +15,6 @@ IMAGE_BUILDINFO_VARS ?= "DISTRO DISTRO_VERSION"
> # Desired location of the output file in the image.
> IMAGE_BUILDINFO_FILE ??= "${sysconfdir}/build"
>
> -# From buildhistory.bbclass
> -def image_buildinfo_outputvars(vars, listvars, d):
> - vars = vars.split()
> - listvars = listvars.split()
> - ret = ""
> - for var in vars:
> - value = d.getVar(var) or ""
> - if (d.getVarFlag(var, 'type') == "list"):
> - value = oe.utils.squashspaces(value)
> - ret += "%s = %s\n" % (var, value)
> - return ret.rstrip('\n')
> -
> # Gets git branch's status (clean or dirty)
> def get_layer_git_status(path):
> import subprocess
> @@ -57,10 +45,18 @@ def buildinfo_target(d):
> # Get context
> if d.getVar('BB_WORKERCONTEXT') != '1':
> return ""
> - # Single and list variables to be read
> - vars = (d.getVar("IMAGE_BUILDINFO_VARS") or "")
> - listvars = (d.getVar("IMAGE_BUILDINFO_LVARS") or "")
> - return image_buildinfo_outputvars(vars, listvars, d)
> + # taken from base.bbclass
> + localdata = bb.data.createCopy(d)
> + statuslines = []
> + g = globals()
> + func = 'buildcfg_vars'
> + if func not in g:
> + bb.warn("Build configuration function '%s' does not
> exist" % func)
> + else:
> + flines = g[func](localdata)
> + if flines:
> + statuslines.extend(flines)
> + return ('\n%s\n' % '\n'.join(statuslines))
>
> # Write build information to target filesystem
> python buildinfo () {
> --
> 2.14.4
>
^ permalink raw reply [flat|nested] 3+ messages in thread* Re: [PATCH] image-buildinfo: drop more verbose build configuration
2018-09-29 14:17 ` Richard Purdie
@ 2018-11-07 22:24 ` Andreas Müller
0 siblings, 0 replies; 3+ messages in thread
From: Andreas Müller @ 2018-11-07 22:24 UTC (permalink / raw)
To: Richard Purdie; +Cc: Patches and discussions about the oe-core layer
On Sat, Sep 29, 2018 at 4:17 PM Richard Purdie
<richard.purdie@linuxfoundation.org> wrote:
>
> On Fri, 2018-09-28 at 11:48 +0200, Andreas Müller wrote:
> > * before DISTRO and DISTRO_VERSION were written only - this is not
> > enough to
> > get a complete picture in which environmet an image was build. Now
> > same
> > information as displayed on console is written.
> > * code fragment was based on bass.bbclass
> >
> > Signed-off-by: Andreas Müller <schnitzeltony@gmail.com>
> > ---
> >
> > I know timing is not the best - we are already feature freezed. But I
> > think it is an enhancement worth to have an exception...
>
> It sounds good from the commit message but anyone IMAGE_BUILDINFO_VARS
> or IMAGE_BUILDINFO_LVARS is going to find a significant change in
> behaviour? At the point past feature freeze I'm not sure we can do
> that...
>
> Cheers,
>
> Richard
>
> > meta/classes/image-buildinfo.bbclass | 28 ++++++++++++------------
> > ----
> > 1 file changed, 12 insertions(+), 16 deletions(-)
> >
> > diff --git a/meta/classes/image-buildinfo.bbclass
> > b/meta/classes/image-buildinfo.bbclass
> > index 213fb9cf9b..fbb3188040 100644
> > --- a/meta/classes/image-buildinfo.bbclass
> > +++ b/meta/classes/image-buildinfo.bbclass
> > @@ -15,18 +15,6 @@ IMAGE_BUILDINFO_VARS ?= "DISTRO DISTRO_VERSION"
> > # Desired location of the output file in the image.
> > IMAGE_BUILDINFO_FILE ??= "${sysconfdir}/build"
> >
> > -# From buildhistory.bbclass
> > -def image_buildinfo_outputvars(vars, listvars, d):
> > - vars = vars.split()
> > - listvars = listvars.split()
> > - ret = ""
> > - for var in vars:
> > - value = d.getVar(var) or ""
> > - if (d.getVarFlag(var, 'type') == "list"):
> > - value = oe.utils.squashspaces(value)
> > - ret += "%s = %s\n" % (var, value)
> > - return ret.rstrip('\n')
> > -
> > # Gets git branch's status (clean or dirty)
> > def get_layer_git_status(path):
> > import subprocess
> > @@ -57,10 +45,18 @@ def buildinfo_target(d):
> > # Get context
> > if d.getVar('BB_WORKERCONTEXT') != '1':
> > return ""
> > - # Single and list variables to be read
> > - vars = (d.getVar("IMAGE_BUILDINFO_VARS") or "")
> > - listvars = (d.getVar("IMAGE_BUILDINFO_LVARS") or "")
> > - return image_buildinfo_outputvars(vars, listvars, d)
> > + # taken from base.bbclass
> > + localdata = bb.data.createCopy(d)
> > + statuslines = []
> > + g = globals()
> > + func = 'buildcfg_vars'
> > + if func not in g:
> > + bb.warn("Build configuration function '%s' does not
> > exist" % func)
> > + else:
> > + flines = g[func](localdata)
> > + if flines:
> > + statuslines.extend(flines)
> > + return ('\n%s\n' % '\n'.join(statuslines))
> >
> > # Write build information to target filesystem
> > python buildinfo () {
> > --
> > 2.14.4
> >
Is this something for time after feature freeze?
Andreas
^ permalink raw reply [flat|nested] 3+ messages in thread
end of thread, other threads:[~2018-11-07 22:24 UTC | newest]
Thread overview: 3+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2018-09-28 9:48 [PATCH] image-buildinfo: drop more verbose build configuration Andreas Müller
2018-09-29 14:17 ` Richard Purdie
2018-11-07 22:24 ` Andreas Müller
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox