diff options
author | Robert Yang <liezhi.yang@windriver.com> | 2015-07-30 01:07:44 -0700 |
---|---|---|
committer | Robert Yang <liezhi.yang@windriver.com> | 2015-07-30 08:16:09 -0700 |
commit | 5a438f9c9891d850808a0ca91d545d34291ff23d (patch) | |
tree | 9ebd6b35d485e41e017a24a0d165dd632e23c856 | |
parent | 27d068d05239c26a3848eb101571acab54635e37 (diff) | |
download | openembedded-core-contrib-5a438f9c9891d850808a0ca91d545d34291ff23d.tar.gz |
base.bbclass: move invalid PACKAGECONFIG checking to insane.bbclass
There was a problem when check invalid PACKAGECONFIG in the anonymous
function (when parsing), for example, there are two versions of a
recipe:
foo_1.0.bb
foo_2.0.bb
While foo_2.0.bb has a "PACKAGECONFIG[item] = 'x,y,z'", but foo_1.0.bb
doesn't, if we set PACKAGECONFIG_pn-foo = "item" in a conf file, we
would get the warning about invalid PACKAGECONFIG for foo_1.0.bb. Delay
the checking to build time will fix the problem.
[YOCTO #8065]
Signed-off-by: Robert Yang <liezhi.yang@windriver.com>
-rw-r--r-- | meta/classes/base.bbclass | 4 | ||||
-rw-r--r-- | meta/classes/insane.bbclass | 11 |
2 files changed, 11 insertions, 4 deletions
diff --git a/meta/classes/base.bbclass b/meta/classes/base.bbclass index e0f1053164..b7e22ad0db 100644 --- a/meta/classes/base.bbclass +++ b/meta/classes/base.bbclass @@ -340,10 +340,6 @@ python () { pkgconfig = (d.getVar('PACKAGECONFIG', True) or "").split() pn = d.getVar("PN", True) - for pconfig in pkgconfig: - if pconfig not in pkgconfigflags: - bb.warn("%s: invalid PACKAGECONFIG: %s" % (pn, pconfig)) - mlprefix = d.getVar("MLPREFIX", True) def expandFilter(appends, extension, prefix): diff --git a/meta/classes/insane.bbclass b/meta/classes/insane.bbclass index fc3d5fffde..9c05c862a1 100644 --- a/meta/classes/insane.bbclass +++ b/meta/classes/insane.bbclass @@ -31,6 +31,7 @@ WARN_QA ?= "ldflags useless-rpaths rpaths staticdev libdir xorg-driver-abi \ installed-vs-shipped compile-host-path install-host-path \ pn-overrides infodir build-deps file-rdeps \ unknown-configure-option symlink-to-sysroot multilib \ + invalid-pkgconfig \ " ERROR_QA ?= "dev-so debug-deps dev-deps debug-files arch pkgconfig la \ perms dep-cmp pkgvarcheck perm-config perm-line perm-link \ @@ -1139,6 +1140,16 @@ Missing inherit gettext?""" % (gt, config)) package_qa_handle_error("unknown-configure-option", error_msg, d) except subprocess.CalledProcessError: pass + + # Check invalid PACKAGECONFIG + pkgconfig = (d.getVar("PACKAGECONFIG", True) or "").split() + if pkgconfig: + pkgconfigflags = d.getVarFlags("PACKAGECONFIG") or {} + for pconfig in pkgconfig: + if pconfig not in pkgconfigflags: + pn = d.getVar('PN', True) + error_msg = "%s: invalid PACKAGECONFIG: %s" % (pn, pconfig) + package_qa_handle_error("invalid-pkgconfig", error_msg, d) } python do_qa_unpack() { |