* [PATCH 0/3] A few GUI related patches, including a bug fix
@ 2011-02-25 19:13 Joshua Lock
2011-02-25 19:13 ` [PATCH 1/3] base.bbclass: enable INCOMPATIBLE_LICENSE to match slight variations Joshua Lock
` (2 more replies)
0 siblings, 3 replies; 7+ messages in thread
From: Joshua Lock @ 2011-02-25 19:13 UTC (permalink / raw)
To: poky
From: Joshua Lock <josh@linux.intel.com>
This series tries to sneak in an extra feature before the freeze, the ability
to disable GPLv3 recipes in hob.
Furthermore I've fixed a bug whereby you'd see two progress dialogs when
changing machine.
Pull URL: git://git.pokylinux.org/poky-contrib.git
Branch: josh/gui
Browse: http://git.pokylinux.org/cgit.cgi/poky-contrib/log/?h=josh/gui
Thanks,
Joshua Lock <josh@linux.intel.com>
---
Joshua Lock (3):
base.bbclass: enable INCOMPATIBLE_LICENSE to match slight variations
bitbake/hob: only show one progress dialog when changing machine
bitbake/hob: add checkbox to disable GPLv3 recipes
bitbake/lib/bb/ui/crumbs/hobeventhandler.py | 14 ++++++++-
bitbake/lib/bb/ui/hob.py | 42 ++++++++++++++++++++++++--
meta/classes/base.bbclass | 9 +++++-
3 files changed, 59 insertions(+), 6 deletions(-)
--
1.7.4
^ permalink raw reply [flat|nested] 7+ messages in thread* [PATCH 1/3] base.bbclass: enable INCOMPATIBLE_LICENSE to match slight variations 2011-02-25 19:13 [PATCH 0/3] A few GUI related patches, including a bug fix Joshua Lock @ 2011-02-25 19:13 ` Joshua Lock 2011-02-25 20:26 ` Mark Hatle 2011-02-25 19:13 ` [PATCH 2/3] bitbake/hob: only show one progress dialog when changing machine Joshua Lock 2011-02-25 19:14 ` [PATCH 3/3] bitbake/hob: add checkbox to disable GPLv3 recipes Joshua Lock 2 siblings, 1 reply; 7+ messages in thread From: Joshua Lock @ 2011-02-25 19:13 UTC (permalink / raw) To: poky From: Joshua Lock <josh@linux.intel.com> Add a greedy any-character match to INCOMPATIBLE_LICENSE so that we can match different permutations of that license, i.e. if INCOMPATIBLE_LICENSE is set to GPLv3 we should also match GPLv3+ Signed-off-by: Joshua Lock <josh@linux.intel.com> --- meta/classes/base.bbclass | 9 ++++++++- 1 files changed, 8 insertions(+), 1 deletions(-) diff --git a/meta/classes/base.bbclass b/meta/classes/base.bbclass index a674f52..3ff11d3 100644 --- a/meta/classes/base.bbclass +++ b/meta/classes/base.bbclass @@ -345,7 +345,14 @@ python () { raise bb.parse.SkipPackage("incompatible with machine %s" % this_machine) - dont_want_license = bb.data.getVar('INCOMPATIBLE_LICENSE', d, 1) + dont_want_license = bb.data.getVar('INCOMPATIBLE_LICENSE', d, True) + # If dont_want_license is set add a greedy any-character match + # to it (if not already set) so that we can match permutations + # of that license. i.e. if dont_want_license is set to GPLv3 we + # also want to match GPLv3+ + if dont_want_license and not dont_want_license.endswith('.+'): + dont_want_license = dont_want_license + '.+' + if dont_want_license and not pn.endswith("-native") and not pn.endswith("-cross") and not pn.endswith("-cross-initial") and not pn.endswith("-cross-intermediate"): hosttools_whitelist = (bb.data.getVar('HOSTTOOLS_WHITELIST_%s' % dont_want_license, d, 1) or "").split() lgplv2_whitelist = (bb.data.getVar('LGPLv2_WHITELIST_%s' % dont_want_license, d, 1) or "").split() -- 1.7.4 ^ permalink raw reply related [flat|nested] 7+ messages in thread
* Re: [PATCH 1/3] base.bbclass: enable INCOMPATIBLE_LICENSE to match slight variations 2011-02-25 19:13 ` [PATCH 1/3] base.bbclass: enable INCOMPATIBLE_LICENSE to match slight variations Joshua Lock @ 2011-02-25 20:26 ` Mark Hatle 2011-02-25 21:27 ` Joshua Lock 0 siblings, 1 reply; 7+ messages in thread From: Mark Hatle @ 2011-02-25 20:26 UTC (permalink / raw) To: Joshua Lock; +Cc: poky Only thing I would be concerned with in this patch is a license of "GPLv3 w/ exception" (I'm not sure how we address that, but there are cases where things are GPLv3, but the exception may allow someone to use the component where they would not normally allow for GPLv3.) I'm not exactly sure the best way to handle this... --Mark On 2/25/11 1:13 PM, Joshua Lock wrote: > From: Joshua Lock <josh@linux.intel.com> > > Add a greedy any-character match to INCOMPATIBLE_LICENSE so that we can match > different permutations of that license, i.e. if INCOMPATIBLE_LICENSE is set > to GPLv3 we should also match GPLv3+ > > Signed-off-by: Joshua Lock <josh@linux.intel.com> > --- > meta/classes/base.bbclass | 9 ++++++++- > 1 files changed, 8 insertions(+), 1 deletions(-) > > diff --git a/meta/classes/base.bbclass b/meta/classes/base.bbclass > index a674f52..3ff11d3 100644 > --- a/meta/classes/base.bbclass > +++ b/meta/classes/base.bbclass > @@ -345,7 +345,14 @@ python () { > raise bb.parse.SkipPackage("incompatible with machine %s" % this_machine) > > > - dont_want_license = bb.data.getVar('INCOMPATIBLE_LICENSE', d, 1) > + dont_want_license = bb.data.getVar('INCOMPATIBLE_LICENSE', d, True) > + # If dont_want_license is set add a greedy any-character match > + # to it (if not already set) so that we can match permutations > + # of that license. i.e. if dont_want_license is set to GPLv3 we > + # also want to match GPLv3+ > + if dont_want_license and not dont_want_license.endswith('.+'): > + dont_want_license = dont_want_license + '.+' > + > if dont_want_license and not pn.endswith("-native") and not pn.endswith("-cross") and not pn.endswith("-cross-initial") and not pn.endswith("-cross-intermediate"): > hosttools_whitelist = (bb.data.getVar('HOSTTOOLS_WHITELIST_%s' % dont_want_license, d, 1) or "").split() > lgplv2_whitelist = (bb.data.getVar('LGPLv2_WHITELIST_%s' % dont_want_license, d, 1) or "").split() ^ permalink raw reply [flat|nested] 7+ messages in thread
* Re: [PATCH 1/3] base.bbclass: enable INCOMPATIBLE_LICENSE to match slight variations 2011-02-25 20:26 ` Mark Hatle @ 2011-02-25 21:27 ` Joshua Lock 2011-02-25 21:31 ` Saul Wold 0 siblings, 1 reply; 7+ messages in thread From: Joshua Lock @ 2011-02-25 21:27 UTC (permalink / raw) To: poky On Fri, 2011-02-25 at 14:26 -0600, Mark Hatle wrote: > Only thing I would be concerned with in this patch is a license of "GPLv3 w/ > exception" (I'm not sure how we address that, but there are cases where things > are GPLv3, but the exception may allow someone to use the component where they > would not normally allow for GPLv3.) I'm not exactly sure the best way to > handle this... Hmm, fair point - I hadn't thought of that. I can't think of a better way to do this that doesn't involve implementing a fragile test, in which case we'd probably best ignore this and patch three from this series. Cheers, Joshua > > --Mark > > On 2/25/11 1:13 PM, Joshua Lock wrote: > > From: Joshua Lock <josh@linux.intel.com> > > > > Add a greedy any-character match to INCOMPATIBLE_LICENSE so that we can match > > different permutations of that license, i.e. if INCOMPATIBLE_LICENSE is set > > to GPLv3 we should also match GPLv3+ > > > > Signed-off-by: Joshua Lock <josh@linux.intel.com> > > --- > > meta/classes/base.bbclass | 9 ++++++++- > > 1 files changed, 8 insertions(+), 1 deletions(-) > > > > diff --git a/meta/classes/base.bbclass b/meta/classes/base.bbclass > > index a674f52..3ff11d3 100644 > > --- a/meta/classes/base.bbclass > > +++ b/meta/classes/base.bbclass > > @@ -345,7 +345,14 @@ python () { > > raise bb.parse.SkipPackage("incompatible with machine %s" % this_machine) > > > > > > - dont_want_license = bb.data.getVar('INCOMPATIBLE_LICENSE', d, 1) > > + dont_want_license = bb.data.getVar('INCOMPATIBLE_LICENSE', d, True) > > + # If dont_want_license is set add a greedy any-character match > > + # to it (if not already set) so that we can match permutations > > + # of that license. i.e. if dont_want_license is set to GPLv3 we > > + # also want to match GPLv3+ > > + if dont_want_license and not dont_want_license.endswith('.+'): > > + dont_want_license = dont_want_license + '.+' > > + > > if dont_want_license and not pn.endswith("-native") and not pn.endswith("-cross") and not pn.endswith("-cross-initial") and not pn.endswith("-cross-intermediate"): > > hosttools_whitelist = (bb.data.getVar('HOSTTOOLS_WHITELIST_%s' % dont_want_license, d, 1) or "").split() > > lgplv2_whitelist = (bb.data.getVar('LGPLv2_WHITELIST_%s' % dont_want_license, d, 1) or "").split() > > _______________________________________________ > poky mailing list > poky@yoctoproject.org > https://lists.yoctoproject.org/listinfo/poky -- Joshua Lock Intel Open Source Technology Centre ^ permalink raw reply [flat|nested] 7+ messages in thread
* Re: [PATCH 1/3] base.bbclass: enable INCOMPATIBLE_LICENSE to match slight variations 2011-02-25 21:27 ` Joshua Lock @ 2011-02-25 21:31 ` Saul Wold 0 siblings, 0 replies; 7+ messages in thread From: Saul Wold @ 2011-02-25 21:31 UTC (permalink / raw) To: Joshua Lock; +Cc: poky On 02/25/2011 01:27 PM, Joshua Lock wrote: > On Fri, 2011-02-25 at 14:26 -0600, Mark Hatle wrote: >> Only thing I would be concerned with in this patch is a license of "GPLv3 w/ >> exception" (I'm not sure how we address that, but there are cases where things >> are GPLv3, but the exception may allow someone to use the component where they >> would not normally allow for GPLv3.) I'm not exactly sure the best way to >> handle this... > > Hmm, fair point - I hadn't thought of that. > > I can't think of a better way to do this that doesn't involve > implementing a fragile test, in which case we'd probably best ignore > this and patch three from this series. > I was also looking at this, and wondering if it was appropriate, so you only want me to pull patch 2 of this set? Patch 3 is still sort of appropriate, that's what I set for my testing right now. But as Mark points out it's far from perfect and right now I am having failures building without GPLv3! Sau! > Cheers, > Joshua >> >> --Mark >> >> On 2/25/11 1:13 PM, Joshua Lock wrote: >>> From: Joshua Lock<josh@linux.intel.com> >>> >>> Add a greedy any-character match to INCOMPATIBLE_LICENSE so that we can match >>> different permutations of that license, i.e. if INCOMPATIBLE_LICENSE is set >>> to GPLv3 we should also match GPLv3+ >>> >>> Signed-off-by: Joshua Lock<josh@linux.intel.com> >>> --- >>> meta/classes/base.bbclass | 9 ++++++++- >>> 1 files changed, 8 insertions(+), 1 deletions(-) >>> >>> diff --git a/meta/classes/base.bbclass b/meta/classes/base.bbclass >>> index a674f52..3ff11d3 100644 >>> --- a/meta/classes/base.bbclass >>> +++ b/meta/classes/base.bbclass >>> @@ -345,7 +345,14 @@ python () { >>> raise bb.parse.SkipPackage("incompatible with machine %s" % this_machine) >>> >>> >>> - dont_want_license = bb.data.getVar('INCOMPATIBLE_LICENSE', d, 1) >>> + dont_want_license = bb.data.getVar('INCOMPATIBLE_LICENSE', d, True) >>> + # If dont_want_license is set add a greedy any-character match >>> + # to it (if not already set) so that we can match permutations >>> + # of that license. i.e. if dont_want_license is set to GPLv3 we >>> + # also want to match GPLv3+ >>> + if dont_want_license and not dont_want_license.endswith('.+'): >>> + dont_want_license = dont_want_license + '.+' >>> + >>> if dont_want_license and not pn.endswith("-native") and not pn.endswith("-cross") and not pn.endswith("-cross-initial") and not pn.endswith("-cross-intermediate"): >>> hosttools_whitelist = (bb.data.getVar('HOSTTOOLS_WHITELIST_%s' % dont_want_license, d, 1) or "").split() >>> lgplv2_whitelist = (bb.data.getVar('LGPLv2_WHITELIST_%s' % dont_want_license, d, 1) or "").split() >> >> _______________________________________________ >> poky mailing list >> poky@yoctoproject.org >> https://lists.yoctoproject.org/listinfo/poky > ^ permalink raw reply [flat|nested] 7+ messages in thread
* [PATCH 2/3] bitbake/hob: only show one progress dialog when changing machine 2011-02-25 19:13 [PATCH 0/3] A few GUI related patches, including a bug fix Joshua Lock 2011-02-25 19:13 ` [PATCH 1/3] base.bbclass: enable INCOMPATIBLE_LICENSE to match slight variations Joshua Lock @ 2011-02-25 19:13 ` Joshua Lock 2011-02-25 19:14 ` [PATCH 3/3] bitbake/hob: add checkbox to disable GPLv3 recipes Joshua Lock 2 siblings, 0 replies; 7+ messages in thread From: Joshua Lock @ 2011-02-25 19:13 UTC (permalink / raw) To: poky From: Joshua Lock <josh@linux.intel.com> Remove a spurious signal emission which resulted in two progress dialogs being shown after changing the machine. Signed-off-by: Joshua Lock <josh@linux.intel.com> --- bitbake/lib/bb/ui/crumbs/hobeventhandler.py | 1 - 1 files changed, 0 insertions(+), 1 deletions(-) diff --git a/bitbake/lib/bb/ui/crumbs/hobeventhandler.py b/bitbake/lib/bb/ui/crumbs/hobeventhandler.py index 699354c..84f3043 100644 --- a/bitbake/lib/bb/ui/crumbs/hobeventhandler.py +++ b/bitbake/lib/bb/ui/crumbs/hobeventhandler.py @@ -123,7 +123,6 @@ class HobHandler(gobject.GObject): def set_machine(self, machine): self.server.runCommand(["setVariable", "MACHINE", machine]) self.current_command = "findConfigFilesMachine" - self.emit("generating-data") self.run_next_command() def set_distro(self, distro): -- 1.7.4 ^ permalink raw reply related [flat|nested] 7+ messages in thread
* [PATCH 3/3] bitbake/hob: add checkbox to disable GPLv3 recipes 2011-02-25 19:13 [PATCH 0/3] A few GUI related patches, including a bug fix Joshua Lock 2011-02-25 19:13 ` [PATCH 1/3] base.bbclass: enable INCOMPATIBLE_LICENSE to match slight variations Joshua Lock 2011-02-25 19:13 ` [PATCH 2/3] bitbake/hob: only show one progress dialog when changing machine Joshua Lock @ 2011-02-25 19:14 ` Joshua Lock 2 siblings, 0 replies; 7+ messages in thread From: Joshua Lock @ 2011-02-25 19:14 UTC (permalink / raw) To: poky From: Joshua Lock <josh@linux.intel.com> Signed-off-by: Joshua Lock <josh@linux.intel.com> --- bitbake/lib/bb/ui/crumbs/hobeventhandler.py | 13 ++++++++ bitbake/lib/bb/ui/hob.py | 42 ++++++++++++++++++++++++-- 2 files changed, 51 insertions(+), 4 deletions(-) diff --git a/bitbake/lib/bb/ui/crumbs/hobeventhandler.py b/bitbake/lib/bb/ui/crumbs/hobeventhandler.py index 84f3043..08cf89f 100644 --- a/bitbake/lib/bb/ui/crumbs/hobeventhandler.py +++ b/bitbake/lib/bb/ui/crumbs/hobeventhandler.py @@ -50,6 +50,7 @@ class HobHandler(gobject.GObject): self.server = server self.current_command = None self.building = False + self.gplv3_excluded = False self.command_map = { "findConfigFilesDistro" : ("findConfigFiles", "MACHINE", "findConfigFilesMachine"), @@ -135,3 +136,15 @@ class HobHandler(gobject.GObject): def cancel_build(self): # Note: this may not be the right way to stop an in-progress build self.server.runCommand(["stateStop"]) + + def toggle_gplv3(self, excluded): + if self.gplv3_excluded != excluded: + self.gplv3_excluded = excluded + if excluded: + self.server.runCommand(["setVariable", "INCOMPATIBLE_LICENSE", "GPLv3"]) + else: + self.server.runCommand(["setVariable", "INCOMPATIBLE_LICENSE", ""]) + + # Refresh packages list + self.current_command = "findConfigFilesMachine" + self.run_next_command() diff --git a/bitbake/lib/bb/ui/hob.py b/bitbake/lib/bb/ui/hob.py index 5278881..47fb949 100644 --- a/bitbake/lib/bb/ui/hob.py +++ b/bitbake/lib/bb/ui/hob.py @@ -176,7 +176,41 @@ class MainWindow (gtk.Window): return + def include_gplv3_cb(self, toggle): + excluded = toggle.get_active() + self.handler.toggle_gplv3(excluded) + def advanced_expander_cb(self, expander, param): + if expander.get_expanded(): + vbox = gtk.VBox(False, 6) + vbox.show() + expander.add(vbox) + label = gtk.Label() + label.set_markup("<b>Policy</b>") + label.show() + frame = gtk.Frame() + frame.set_label_widget(label) + frame.set_shadow_type(gtk.SHADOW_NONE) + frame.show() + vbox.pack_start(frame) + pbox = gtk.VBox(False, 6) + pbox.show() + frame.add(pbox) + hbox = gtk.HBox(False, 6) + hbox.show() + pbox.pack_start(hbox, expand=False, fill=False, padding=6) + # Exclude GPLv3 + check = gtk.CheckButton("Exclude GPLv3 packages") + check.set_tooltip_text("Check this box to prevent GPLv3 packages from being included in your image") + check.show() + check.connect("toggled", self.include_gplv3_cb) + hbox.pack_start(check, expand=False, fill=False, padding=6) + hbox = gtk.HBox(False, 6) + hbox.show() + pbox.pack_start(hbox, expand=False, fill=False) + else: + expander.remove(expander.child) + return def images(self): @@ -490,10 +524,10 @@ class MainWindow (gtk.Window): con.show() vbox.pack_start(con, expand=True, fill=True) - #advanced = gtk.Expander(label="Advanced") - #advanced.connect("notify::expanded", self.advanced_expander_cb) - #advanced.show() - #vbox.pack_start(advanced, expand=False, fill=False) + advanced = gtk.Expander(label="Advanced") + advanced.connect("notify::expanded", self.advanced_expander_cb) + advanced.show() + vbox.pack_start(advanced, expand=False, fill=False) hbox = gtk.HBox() hbox.show() -- 1.7.4 ^ permalink raw reply related [flat|nested] 7+ messages in thread
end of thread, other threads:[~2011-02-25 21:31 UTC | newest] Thread overview: 7+ messages (download: mbox.gz follow: Atom feed -- links below jump to the message on this page -- 2011-02-25 19:13 [PATCH 0/3] A few GUI related patches, including a bug fix Joshua Lock 2011-02-25 19:13 ` [PATCH 1/3] base.bbclass: enable INCOMPATIBLE_LICENSE to match slight variations Joshua Lock 2011-02-25 20:26 ` Mark Hatle 2011-02-25 21:27 ` Joshua Lock 2011-02-25 21:31 ` Saul Wold 2011-02-25 19:13 ` [PATCH 2/3] bitbake/hob: only show one progress dialog when changing machine Joshua Lock 2011-02-25 19:14 ` [PATCH 3/3] bitbake/hob: add checkbox to disable GPLv3 recipes Joshua Lock
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.