summaryrefslogtreecommitdiffstats
path: root/meta/classes/sanity.bbclass
diff options
context:
space:
mode:
Diffstat (limited to 'meta/classes/sanity.bbclass')
-rw-r--r--meta/classes/sanity.bbclass16
1 files changed, 13 insertions, 3 deletions
diff --git a/meta/classes/sanity.bbclass b/meta/classes/sanity.bbclass
index 0c2fa04bcc..97556949e8 100644
--- a/meta/classes/sanity.bbclass
+++ b/meta/classes/sanity.bbclass
@@ -4,7 +4,16 @@
4 4
5SANITY_REQUIRED_UTILITIES ?= "patch diffstat texi2html makeinfo svn bzip2 tar gzip gawk chrpath wget cpio" 5SANITY_REQUIRED_UTILITIES ?= "patch diffstat texi2html makeinfo svn bzip2 tar gzip gawk chrpath wget cpio"
6 6
7def raise_sanity_error(msg): 7def raise_sanity_error(msg, d):
8 if d.getVar("SANITY_USE_EVENTS", True) == "1":
9 # FIXME: handle when BitBake version is too old to support bb.event.SanityCheckFailed
10 # We can just fire the event directly once the minimum version is bumped beyond 1.15.1
11 try:
12 bb.event.fire(bb.event.SanityCheckFailed(msg), d)
13 return
14 except AttributeError:
15 pass
16
8 bb.fatal(""" OE-core's config sanity checker detected a potential misconfiguration. 17 bb.fatal(""" OE-core's config sanity checker detected a potential misconfiguration.
9 Either fix the cause of this error or at your own risk disable the checker (see sanity.conf). 18 Either fix the cause of this error or at your own risk disable the checker (see sanity.conf).
10 Following is the list of potential problems / advisories: 19 Following is the list of potential problems / advisories:
@@ -219,7 +228,7 @@ def check_sanity(sanity_data):
219 return 228 return
220 229
221 if 0 == os.getuid(): 230 if 0 == os.getuid():
222 raise_sanity_error("Do not use Bitbake as root.") 231 raise_sanity_error("Do not use Bitbake as root.", sanity_data)
223 232
224 messages = "" 233 messages = ""
225 234
@@ -449,7 +458,7 @@ def check_sanity(sanity_data):
449 messages = messages + "Error, you have a space in your COREBASE directory path. Please move the installation to a directory which doesn't include a space." 458 messages = messages + "Error, you have a space in your COREBASE directory path. Please move the installation to a directory which doesn't include a space."
450 459
451 if messages != "": 460 if messages != "":
452 raise_sanity_error(messages) 461 raise_sanity_error(messages, sanity_data)
453 462
454# Create a copy of the datastore and finalise it to ensure appends and 463# Create a copy of the datastore and finalise it to ensure appends and
455# overrides are set - the datastore has yet to be finalised at ConfigParsed 464# overrides are set - the datastore has yet to be finalised at ConfigParsed
@@ -465,6 +474,7 @@ python check_sanity_eventhandler() {
465 check_sanity(sanity_data) 474 check_sanity(sanity_data)
466 elif bb.event.getName(e) == "SanityCheck": 475 elif bb.event.getName(e) == "SanityCheck":
467 sanity_data = copy_data(e) 476 sanity_data = copy_data(e)
477 sanity_data.setVar("SANITY_USE_EVENTS", "1")
468 check_sanity(sanity_data) 478 check_sanity(sanity_data)
469 bb.event.fire(bb.event.SanityCheckPassed(), e.data) 479 bb.event.fire(bb.event.SanityCheckPassed(), e.data)
470 480