From: Mariano Lopez Date: Mon, 29 Jun 2015 07:20:10 +0000 (+0000) Subject: sanity.bbclass: Check if /tmp is writable X-Git-Tag: lucaceresoli/bug-15201-perf-libtraceevent-missing~29887 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=10c7cf0683494ea1bf2cc6de9b121abf2a04b253;p=thirdparty%2Fopenembedded%2Fopenembedded-core-contrib.git sanity.bbclass: Check if /tmp is writable If /tmp can't be written, bitbake gaves an unrelated error. This checks if /tmp can be written in every build. [YOCTO #7922] Signed-off-by: Mariano Lopez Signed-off-by: Ross Burton --- diff --git a/meta/classes/sanity.bbclass b/meta/classes/sanity.bbclass index 2855941a7ba..7a580da755d 100644 --- a/meta/classes/sanity.bbclass +++ b/meta/classes/sanity.bbclass @@ -704,6 +704,19 @@ def check_sanity_everybuild(status, d): if "." in paths or "./" in paths or "" in paths: status.addresult("PATH contains '.', './' or '' (empty element), which will break the build, please remove this.\nParsed PATH is " + str(paths) + "\n") + # Check if /tmp is writable + from string import ascii_letters + from random import choice + filename = "bb_writetest.%s" % os.getpid() + testfile = os.path.join("/tmp", filename) + try: + f = open(testfile, "w") + f.write("".join(choice(ascii_letters) for x in range(1024))) + f.close() + os.remove(testfile) + except: + status.addresult("Failed to write into /tmp. Please verify your filesystem.") + # Check that the DISTRO is valid, if set # need to take into account DISTRO renaming DISTRO distro = d.getVar('DISTRO', True)