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