[OE-core] [PATCH 1/2] base.bbclass: move invalid PACKAGECONFIG checking to insane.bbclass
Robert Yang
liezhi.yang at windriver.com
Thu Jul 30 15:18:09 UTC 2015
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 at windriver.com>
---
meta/classes/base.bbclass | 4 ----
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 e0f1053..b7e22ad 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 fc3d5ff..9c05c86 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() {
--
1.7.9.5
More information about the Openembedded-core
mailing list