[OE-core] [PATCH] insane: configure option checking
Ross Burton
ross.burton at intel.com
Thu Sep 5 13:55:21 UTC 2013
Signed-off-by: Ross Burton <ross.burton at intel.com>
---
meta/classes/insane.bbclass | 19 +++++++++++++++++++
1 file changed, 19 insertions(+)
diff --git a/meta/classes/insane.bbclass b/meta/classes/insane.bbclass
index 524cdca..9809cba 100644
--- a/meta/classes/insane.bbclass
+++ b/meta/classes/insane.bbclass
@@ -919,6 +919,25 @@ Missing inherit gettext?""" % (gt, config))
if not package_qa_check_license(workdir, d):
bb.fatal("Licensing Error: LIC_FILES_CHKSUM does not match, please fix")
+ ###########################################################################
+ # Check unrecognised configure options (with a white list)
+ ###########################################################################
+ if bb.data.inherits_class("autotools", d):
+ bb.note("Checking configure output for unrecognised options")
+ try:
+ flag = "WARNING: unrecognized options:"
+ log = os.path.join(d.getVar('B', True), 'config.log')
+ output = subprocess.check_output(['grep', '-F', flag, log])
+ options = set(map(lambda s: s.strip(' ,'), output.partition(flag)[2].split()))
+ whitelist = {'--enable-nls', '--disable-nls', '--disable-silent-rules', '--disable-dependency-tracking', '--with-libtool-sysroot'}
+ # TODO: allow additions per-recipe?
+ options -= whitelist
+ if options:
+ pn = d.getVar('PN', True)
+ error_msg = pn + ": configure was passed unrecognised options: " + " ".join(options)
+ package_qa_handle_error("unknown-configure-option", error_msg, d)
+ except subprocess.CalledProcessError:
+ pass
}
# The Staging Func, to check all staging
#addtask qa_staging after do_populate_sysroot before do_build
--
1.7.10.4
More information about the Openembedded-core
mailing list