From a189ec4ae74022fddfb5e1b13c4747bb891e3c6b Mon Sep 17 00:00:00 2001 From: Richard Purdie Date: Wed, 8 May 2013 18:16:00 +0100 Subject: [PATCH] bitbake: utils: Improve better_compile error message Similarly to the better_exec improvements, improve the compile failure messages to be more user readable. (Bitbake rev: 9bc92d0210e13e4cc98727f6c9ec2f47c2221e77) Signed-off-by: Richard Purdie --- bitbake/lib/bb/utils.py | 16 +++++++++------- 1 file changed, 9 insertions(+), 7 deletions(-) diff --git a/bitbake/lib/bb/utils.py b/bitbake/lib/bb/utils.py index 9d7a32fb25..462eb689b9 100644 --- a/bitbake/lib/bb/utils.py +++ b/bitbake/lib/bb/utils.py @@ -255,18 +255,20 @@ def better_compile(text, file, realfile, mode = "exec"): try: return compile(text, file, mode) except Exception as e: + error = [] # split the text into lines again body = text.split('\n') - logger.error("Error in compiling python function in %s", realfile) - logger.error(str(e)) + error.append("Error in compiling python function in %s:\n" % realfile) if e.lineno: - logger.error("The lines leading to this error were:") - logger.error("\t%d:%s:'%s'", e.lineno, e.__class__.__name__, body[e.lineno-1]) - logger.error("\n".join(_print_trace(body, e.lineno))) + error.append("The code lines resulting in this error were:") + error.extend(_print_trace(body, e.lineno)) else: - logger.error("The function causing this error was:") + error.append("The function causing this error was:") for line in body: - logger.error(line) + error.append(line) + error.append("%s: %s" % (e.__class__.__name__, str(e))) + + logger.error("\n".join(error)) e = bb.BBHandledException(e) raise e