diff options
author | Robert Yang <liezhi.yang@windriver.com> | 2015-07-30 08:18:09 -0700 |
---|---|---|
committer | Richard Purdie <richard.purdie@linuxfoundation.org> | 2015-08-01 22:24:15 +0100 |
commit | 1df8af4248250b9bdbde3b15a00933cf49dd1356 (patch) | |
tree | d0745e10843c38b9c1e385b0156360a5dcd733d5 /meta/classes | |
parent | 6087a04cb8c5356e782628683bec4f2ef6ec1909 (diff) | |
download | poky-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.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 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 | " |
35 | ERROR_QA ?= "dev-so debug-deps dev-deps debug-files arch pkgconfig la \ | 36 | ERROR_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 | ||
1144 | python do_qa_unpack() { | 1155 | python do_qa_unpack() { |