summaryrefslogtreecommitdiffstats
path: root/meta/classes
diff options
context:
space:
mode:
authorRobert Yang <liezhi.yang@windriver.com>2015-07-30 08:18:09 -0700
committerRichard Purdie <richard.purdie@linuxfoundation.org>2015-08-01 22:24:15 +0100
commit1df8af4248250b9bdbde3b15a00933cf49dd1356 (patch)
treed0745e10843c38b9c1e385b0156360a5dcd733d5 /meta/classes
parent6087a04cb8c5356e782628683bec4f2ef6ec1909 (diff)
downloadpoky-1df8af4248250b9bdbde3b15a00933cf49dd1356.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] (From OE-Core rev: 0a64dfcdb9f5a37771f881895be230392c4d0aff) Signed-off-by: Robert Yang <liezhi.yang@windriver.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Diffstat (limited to 'meta/classes')
-rw-r--r--meta/classes/base.bbclass4
-rw-r--r--meta/classes/insane.bbclass11
2 files changed, 11 insertions, 4 deletions
diff --git a/meta/classes/base.bbclass b/meta/classes/base.bbclass
index 531b0e72c0..f0780011bd 100644
--- a/meta/classes/base.bbclass
+++ b/meta/classes/base.bbclass
@@ -353,10 +353,6 @@ python () {
353 pkgconfig = (d.getVar('PACKAGECONFIG', True) or "").split() 353 pkgconfig = (d.getVar('PACKAGECONFIG', True) or "").split()
354 pn = d.getVar("PN", True) 354 pn = d.getVar("PN", True)
355 355
356 for pconfig in pkgconfig:
357 if pconfig not in pkgconfigflags:
358 bb.warn("%s: invalid PACKAGECONFIG: %s" % (pn, pconfig))
359
360 mlprefix = d.getVar("MLPREFIX", True) 356 mlprefix = d.getVar("MLPREFIX", True)
361 357
362 def expandFilter(appends, extension, prefix): 358 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 \
31 installed-vs-shipped compile-host-path install-host-path \ 31 installed-vs-shipped compile-host-path install-host-path \
32 pn-overrides infodir build-deps file-rdeps \ 32 pn-overrides infodir build-deps file-rdeps \
33 unknown-configure-option symlink-to-sysroot multilib \ 33 unknown-configure-option symlink-to-sysroot multilib \
34 invalid-pkgconfig \
34 " 35 "
35ERROR_QA ?= "dev-so debug-deps dev-deps debug-files arch pkgconfig la \ 36ERROR_QA ?= "dev-so debug-deps dev-deps debug-files arch pkgconfig la \
36 perms dep-cmp pkgvarcheck perm-config perm-line perm-link \ 37 perms dep-cmp pkgvarcheck perm-config perm-line perm-link \
@@ -1139,6 +1140,16 @@ Missing inherit gettext?""" % (gt, config))
1139 package_qa_handle_error("unknown-configure-option", error_msg, d) 1140 package_qa_handle_error("unknown-configure-option", error_msg, d)
1140 except subprocess.CalledProcessError: 1141 except subprocess.CalledProcessError:
1141 pass 1142 pass
1143
1144 # Check invalid PACKAGECONFIG
1145 pkgconfig = (d.getVar("PACKAGECONFIG", True) or "").split()
1146 if pkgconfig:
1147 pkgconfigflags = d.getVarFlags("PACKAGECONFIG") or {}
1148 for pconfig in pkgconfig:
1149 if pconfig not in pkgconfigflags:
1150 pn = d.getVar('PN', True)
1151 error_msg = "%s: invalid PACKAGECONFIG: %s" % (pn, pconfig)
1152 package_qa_handle_error("invalid-pkgconfig", error_msg, d)
1142} 1153}
1143 1154
1144python do_qa_unpack() { 1155python do_qa_unpack() {