summaryrefslogtreecommitdiff
path: root/bitbake
diff options
context:
space:
mode:
authorRichard Purdie <rpurdie@linux.intel.com>2010-08-19 23:26:46 +0100
committerRichard Purdie <rpurdie@linux.intel.com>2010-08-19 23:27:08 +0100
commit6e3a3816d5ba4b074f3c119437660fc72efe9fdc (patch)
tree6e2c5afe4b55df0a846e9be241651b55c5d4cf97 /bitbake
parentf070ee959c8eb4d49f820ec46f22be221b46485a (diff)
downloadopenembedded-core-6e3a3816d5ba4b074f3c119437660fc72efe9fdc.tar.gz
openembedded-core-6e3a3816d5ba4b074f3c119437660fc72efe9fdc.tar.bz2
openembedded-core-6e3a3816d5ba4b074f3c119437660fc72efe9fdc.tar.xz
openembedded-core-6e3a3816d5ba4b074f3c119437660fc72efe9fdc.zip
bitbake/utils.py: Give useful debug information when no lineno information is available
Signed-off-by: Richard Purdie <rpurdie@linux.intel.com>
Diffstat (limited to 'bitbake')
-rw-r--r--bitbake/lib/bb/utils.py17
1 files changed, 10 insertions, 7 deletions
diff --git a/bitbake/lib/bb/utils.py b/bitbake/lib/bb/utils.py
index 569aa6a8c..1778a1e2e 100644
--- a/bitbake/lib/bb/utils.py
+++ b/bitbake/lib/bb/utils.py
@@ -310,13 +310,16 @@ def better_compile(text, file, realfile, mode = "exec"):
# split the text into lines again
body = text.split('\n')
bb.msg.error(bb.msg.domain.Util, "Error in compiling python function in: %s" % (realfile))
- bb.msg.error(bb.msg.domain.Util, "The lines leading to this error were:")
- bb.msg.error(bb.msg.domain.Util, "\t%d:%s:'%s'" % (e.lineno, e.__class__.__name__, body[e.lineno-1]))
-
- _print_trace(body, e.lineno)
-
- # exit now
- sys.exit(1)
+ bb.msg.error(bb.msg.domain.Util, str(e))
+ if e.lineno:
+ bb.msg.error(bb.msg.domain.Util, "The lines leading to this error were:")
+ bb.msg.error(bb.msg.domain.Util, "\t%d:%s:'%s'" % (e.lineno, e.__class__.__name__, body[e.lineno-1]))
+ _print_trace(body, e.lineno)
+ else:
+ bb.msg.error(bb.msg.domain.Util, "The function causing this error was:")
+ for line in body:
+ bb.msg.error(bb.msg.domain.Util, line)
+ raise
def better_exec(code, context, text, realfile):
"""