Re: [OE-core] [PATCH 2/2] base.bbclass/blacklist.bbclass: remove doc item when d.getVarFlags()
On Wednesday 12 August 2015 10:45:29 Otavio Salvador wrote: On Tue, Aug 11, 2015 at 11:13 PM, Robert Yang liezhi.y...@windriver.com wrote: On 08/11/2015 08:45 PM, Otavio Salvador wrote: On Thu, Jul 30, 2015 at 12:18 PM, Robert Yang liezhi.y...@windriver.com wrote: The FOO[doc] is set in meta/conf/documentation.conf, we need remove it from d.getVarFlags()'s return dict when it causes many loops. Signed-off-by: Robert Yang liezhi.y...@windriver.com It seems your commit log is incomplete or so as I couldn't understand why this is need. Also as Andre says, we ought to not break existing layer without a very strong reason and if needed, changing documentation.conf instead of this seems more adequate. The code in base.bbclass is: (no remove PACKAGECONFIG[doc]) pkgconfigflags = d.getVarFlags(PACKAGECONFIG) or {} if pkgconfigflags: foo And documentation.conf: PACKAGECONFIG[doc] = This variable provides a means of enabling or disabling features of a recipe on a per-recipe basis. This will make if pkgconfigflags: always be true and cause many unneeded loops since there is always PACKAGECONFIG[doc]. Remove PACKAGECONFIG[doc] or comment it sounds good to me. So documentation.conf needs change. I'm not sure I'm particularly happy with this. Whilst its actual practical use is relatively recent (i.e. Toaster), documentation.conf and the doc varflag predate PACKAGECONFIG by quite some time. The fact that one layer has gone and used it is unfortunate but not unfixable. Cheers, Paul -- Paul Eggleton Intel Open Source Technology Centre -- ___ Openembedded-core mailing list Openembedded-core@lists.openembedded.org http://lists.openembedded.org/mailman/listinfo/openembedded-core
Re: [OE-core] [PATCH 2/2] base.bbclass/blacklist.bbclass: remove doc item when d.getVarFlags()
On Wed, Aug 12, 2015 at 11:04 AM, Paul Eggleton paul.eggle...@linux.intel.com wrote: On Wednesday 12 August 2015 10:45:29 Otavio Salvador wrote: On Tue, Aug 11, 2015 at 11:13 PM, Robert Yang liezhi.y...@windriver.com wrote: On 08/11/2015 08:45 PM, Otavio Salvador wrote: On Thu, Jul 30, 2015 at 12:18 PM, Robert Yang liezhi.y...@windriver.com wrote: The FOO[doc] is set in meta/conf/documentation.conf, we need remove it from d.getVarFlags()'s return dict when it causes many loops. Signed-off-by: Robert Yang liezhi.y...@windriver.com It seems your commit log is incomplete or so as I couldn't understand why this is need. Also as Andre says, we ought to not break existing layer without a very strong reason and if needed, changing documentation.conf instead of this seems more adequate. The code in base.bbclass is: (no remove PACKAGECONFIG[doc]) pkgconfigflags = d.getVarFlags(PACKAGECONFIG) or {} if pkgconfigflags: foo And documentation.conf: PACKAGECONFIG[doc] = This variable provides a means of enabling or disabling features of a recipe on a per-recipe basis. This will make if pkgconfigflags: always be true and cause many unneeded loops since there is always PACKAGECONFIG[doc]. Remove PACKAGECONFIG[doc] or comment it sounds good to me. So documentation.conf needs change. I'm not sure I'm particularly happy with this. Whilst its actual practical use is relatively recent (i.e. Toaster), documentation.conf and the doc varflag predate PACKAGECONFIG by quite some time. The fact that one layer has gone and used it is unfortunate but not unfixable. I understand but this kind of magic keyword is misleading and confusing for users. -- Otavio Salvador O.S. Systems http://www.ossystems.com.brhttp://code.ossystems.com.br Mobile: +55 (53) 9981-7854Mobile: +1 (347) 903-9750 -- ___ Openembedded-core mailing list Openembedded-core@lists.openembedded.org http://lists.openembedded.org/mailman/listinfo/openembedded-core
Re: [OE-core] [PATCH 2/2] base.bbclass/blacklist.bbclass: remove doc item when d.getVarFlags()
On Tue, Aug 11, 2015 at 11:13 PM, Robert Yang liezhi.y...@windriver.com wrote: On 08/11/2015 08:45 PM, Otavio Salvador wrote: On Thu, Jul 30, 2015 at 12:18 PM, Robert Yang liezhi.y...@windriver.com wrote: The FOO[doc] is set in meta/conf/documentation.conf, we need remove it from d.getVarFlags()'s return dict when it causes many loops. Signed-off-by: Robert Yang liezhi.y...@windriver.com It seems your commit log is incomplete or so as I couldn't understand why this is need. Also as Andre says, we ought to not break existing layer without a very strong reason and if needed, changing documentation.conf instead of this seems more adequate. The code in base.bbclass is: (no remove PACKAGECONFIG[doc]) pkgconfigflags = d.getVarFlags(PACKAGECONFIG) or {} if pkgconfigflags: foo And documentation.conf: PACKAGECONFIG[doc] = This variable provides a means of enabling or disabling features of a recipe on a per-recipe basis. This will make if pkgconfigflags: always be true and cause many unneeded loops since there is always PACKAGECONFIG[doc]. Remove PACKAGECONFIG[doc] or comment it sounds good to me. So documentation.conf needs change. -- Otavio Salvador O.S. Systems http://www.ossystems.com.brhttp://code.ossystems.com.br Mobile: +55 (53) 9981-7854Mobile: +1 (347) 903-9750 -- ___ Openembedded-core mailing list Openembedded-core@lists.openembedded.org http://lists.openembedded.org/mailman/listinfo/openembedded-core
Re: [OE-core] [PATCH 2/2] base.bbclass/blacklist.bbclass: remove doc item when d.getVarFlags()
On Thu, Jul 30, 2015 at 12:18 PM, Robert Yang liezhi.y...@windriver.com wrote: The FOO[doc] is set in meta/conf/documentation.conf, we need remove it from d.getVarFlags()'s return dict when it causes many loops. Signed-off-by: Robert Yang liezhi.y...@windriver.com It seems your commit log is incomplete or so as I couldn't understand why this is need. Also as Andre says, we ought to not break existing layer without a very strong reason and if needed, changing documentation.conf instead of this seems more adequate. -- Otavio Salvador O.S. Systems http://www.ossystems.com.brhttp://code.ossystems.com.br Mobile: +55 (53) 9981-7854Mobile: +1 (347) 903-9750 -- ___ Openembedded-core mailing list Openembedded-core@lists.openembedded.org http://lists.openembedded.org/mailman/listinfo/openembedded-core
Re: [OE-core] [PATCH 2/2] base.bbclass/blacklist.bbclass: remove doc item when d.getVarFlags()
On 11 August 2015 at 03:17, Robert Yang liezhi.y...@windriver.com wrote: I'm afraid that there isn't any other way to fix the issue (many unneeded loops caused by PACKAGECONFIG[doc] which is set by documentation.conf), maybe you can change 'doc' to such as 'docs' in other layers ? Otavio is right - the commit doesn't explain what the problem is, and forcibly deleting PACKAGECONFIG[doc] options is very aggressive without good reason. Ross -- ___ Openembedded-core mailing list Openembedded-core@lists.openembedded.org http://lists.openembedded.org/mailman/listinfo/openembedded-core
Re: [OE-core] [PATCH 2/2] base.bbclass/blacklist.bbclass: remove doc item when d.getVarFlags()
On 08/11/2015 08:45 PM, Otavio Salvador wrote: On Thu, Jul 30, 2015 at 12:18 PM, Robert Yang liezhi.y...@windriver.com wrote: The FOO[doc] is set in meta/conf/documentation.conf, we need remove it from d.getVarFlags()'s return dict when it causes many loops. Signed-off-by: Robert Yang liezhi.y...@windriver.com It seems your commit log is incomplete or so as I couldn't understand why this is need. Also as Andre says, we ought to not break existing layer without a very strong reason and if needed, changing documentation.conf instead of this seems more adequate. The code in base.bbclass is: (no remove PACKAGECONFIG[doc]) pkgconfigflags = d.getVarFlags(PACKAGECONFIG) or {} if pkgconfigflags: foo And documentation.conf: PACKAGECONFIG[doc] = This variable provides a means of enabling or disabling features of a recipe on a per-recipe basis. This will make if pkgconfigflags: always be true and cause many unneeded loops since there is always PACKAGECONFIG[doc]. Remove PACKAGECONFIG[doc] or comment it sounds good to me. // Robert -- ___ Openembedded-core mailing list Openembedded-core@lists.openembedded.org http://lists.openembedded.org/mailman/listinfo/openembedded-core
Re: [OE-core] [PATCH 2/2] base.bbclass/blacklist.bbclass: remove doc item when d.getVarFlags()
On Thu, Jul 30, 2015 at 8:18 AM, Robert Yang liezhi.y...@windriver.com wrote: The FOO[doc] is set in meta/conf/documentation.conf, we need remove it from d.getVarFlags()'s return dict when it causes many loops. Signed-off-by: Robert Yang liezhi.y...@windriver.com --- meta/classes/base.bbclass |2 ++ meta/classes/blacklist.bbclass |2 ++ 2 files changed, 4 insertions(+) diff --git a/meta/classes/base.bbclass b/meta/classes/base.bbclass index b7e22ad..9e33f44 100644 --- a/meta/classes/base.bbclass +++ b/meta/classes/base.bbclass @@ -336,6 +336,8 @@ python () { # PACKAGECONFIG ??= default options # PACKAGECONFIG[foo] = --enable-foo,--disable-foo,foo_depends,foo_runtime_depends pkgconfigflags = d.getVarFlags(PACKAGECONFIG) or {} +# Remove PACKAGECONFIG[doc] +pkgconfigflags.pop('doc', None) This change breaks recipes which try to use 'doc' as a PACKAGECONFIG option. Nothing in oe-core tries to do that, but there are recipes in other layers which do (e.g. efl in meta-oe and lxc in meta-virtualization). Could this change we reworked somehow to allow 'doc' to continue to be used as a PACKAGECONFIG option (as it is in fido)? if pkgconfigflags: pkgconfig = (d.getVar('PACKAGECONFIG', True) or ).split() pn = d.getVar(PN, True) diff --git a/meta/classes/blacklist.bbclass b/meta/classes/blacklist.bbclass index a0141a8..39b3f82 100644 --- a/meta/classes/blacklist.bbclass +++ b/meta/classes/blacklist.bbclass @@ -28,6 +28,8 @@ python blacklist_multilib_eventhandler() { prefixes.append(eext[1]) blacklists = e.data.getVarFlags('PNBLACKLIST') or {} +# Remove PNBLACKLIST[doc] +blacklists.pop('doc', None) for pkg, reason in blacklists.items(): if pkg.endswith((-native, -crosssdk)) or pkg.startswith((nativesdk-, virtual/nativesdk-)) or 'cross-canadian' in pkg: continue -- 1.7.9.5 -- ___ Openembedded-core mailing list Openembedded-core@lists.openembedded.org http://lists.openembedded.org/mailman/listinfo/openembedded-core -- ___ Openembedded-core mailing list Openembedded-core@lists.openembedded.org http://lists.openembedded.org/mailman/listinfo/openembedded-core
Re: [OE-core] [PATCH 2/2] base.bbclass/blacklist.bbclass: remove doc item when d.getVarFlags()
On 08/11/2015 10:00 AM, Andre McCurdy wrote: On Thu, Jul 30, 2015 at 8:18 AM, Robert Yang liezhi.y...@windriver.com wrote: The FOO[doc] is set in meta/conf/documentation.conf, we need remove it from d.getVarFlags()'s return dict when it causes many loops. Signed-off-by: Robert Yang liezhi.y...@windriver.com --- meta/classes/base.bbclass |2 ++ meta/classes/blacklist.bbclass |2 ++ 2 files changed, 4 insertions(+) diff --git a/meta/classes/base.bbclass b/meta/classes/base.bbclass index b7e22ad..9e33f44 100644 --- a/meta/classes/base.bbclass +++ b/meta/classes/base.bbclass @@ -336,6 +336,8 @@ python () { # PACKAGECONFIG ??= default options # PACKAGECONFIG[foo] = --enable-foo,--disable-foo,foo_depends,foo_runtime_depends pkgconfigflags = d.getVarFlags(PACKAGECONFIG) or {} +# Remove PACKAGECONFIG[doc] +pkgconfigflags.pop('doc', None) This change breaks recipes which try to use 'doc' as a PACKAGECONFIG option. Nothing in oe-core tries to do that, but there are recipes in other layers which do (e.g. efl in meta-oe and lxc in meta-virtualization). Could this change we reworked somehow to allow 'doc' to continue to be used as a PACKAGECONFIG option (as it is in fido)? Hi Andre, I'm afraid that there isn't any other way to fix the issue (many unneeded loops caused by PACKAGECONFIG[doc] which is set by documentation.conf), maybe you can change 'doc' to such as 'docs' in other layers ? // Robert if pkgconfigflags: pkgconfig = (d.getVar('PACKAGECONFIG', True) or ).split() pn = d.getVar(PN, True) diff --git a/meta/classes/blacklist.bbclass b/meta/classes/blacklist.bbclass index a0141a8..39b3f82 100644 --- a/meta/classes/blacklist.bbclass +++ b/meta/classes/blacklist.bbclass @@ -28,6 +28,8 @@ python blacklist_multilib_eventhandler() { prefixes.append(eext[1]) blacklists = e.data.getVarFlags('PNBLACKLIST') or {} +# Remove PNBLACKLIST[doc] +blacklists.pop('doc', None) for pkg, reason in blacklists.items(): if pkg.endswith((-native, -crosssdk)) or pkg.startswith((nativesdk-, virtual/nativesdk-)) or 'cross-canadian' in pkg: continue -- 1.7.9.5 -- ___ Openembedded-core mailing list Openembedded-core@lists.openembedded.org http://lists.openembedded.org/mailman/listinfo/openembedded-core -- ___ Openembedded-core mailing list Openembedded-core@lists.openembedded.org http://lists.openembedded.org/mailman/listinfo/openembedded-core