diff options
| author | Mark Hatle <mark.hatle@windriver.com> | 2012-05-23 10:45:09 -0500 |
|---|---|---|
| committer | Richard Purdie <richard.purdie@linuxfoundation.org> | 2012-05-23 18:15:23 +0100 |
| commit | c9e38aed29bf072d83079867c37f3169a7005fce (patch) | |
| tree | 975b6e3eaadc53055bd10c04fca6019691335033 /bitbake/lib/bb/build.py | |
| parent | 094742bed2fc01d55f572da946fcfa7a48521401 (diff) | |
| download | poky-c9e38aed29bf072d83079867c37f3169a7005fce.tar.gz | |
build.py: Add a log to capture task execution order
The new log.task_order contains an ordered list of the tasks as they
were executed in any given recipe. The format of the lines is
<task> <pid>: <log file>
(Bitbake rev: 8662b43dcbd6e38a5b2ab9d6529af1fb08c146bf)
Signed-off-by: Mark Hatle <mark.hatle@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Diffstat (limited to 'bitbake/lib/bb/build.py')
| -rw-r--r-- | bitbake/lib/bb/build.py | 16 |
1 files changed, 15 insertions, 1 deletions
diff --git a/bitbake/lib/bb/build.py b/bitbake/lib/bb/build.py index 95f1dcfcb7..4f06b15943 100644 --- a/bitbake/lib/bb/build.py +++ b/bitbake/lib/bb/build.py | |||
| @@ -290,8 +290,22 @@ def _exec_task(fn, task, d, quieterr): | |||
| 290 | bb.fatal("T variable not set, unable to build") | 290 | bb.fatal("T variable not set, unable to build") |
| 291 | 291 | ||
| 292 | bb.utils.mkdirhier(tempdir) | 292 | bb.utils.mkdirhier(tempdir) |
| 293 | loglink = os.path.join(tempdir, 'log.{0}'.format(task)) | 293 | |
| 294 | # Determine the logfile to generate | ||
| 294 | logbase = 'log.{0}.{1}'.format(task, os.getpid()) | 295 | logbase = 'log.{0}.{1}'.format(task, os.getpid()) |
| 296 | |||
| 297 | # Document the order of the tasks... | ||
| 298 | logorder = os.path.join(tempdir, 'log.task_order') | ||
| 299 | try: | ||
| 300 | logorderfile = file(logorder, 'a') | ||
| 301 | except OSError: | ||
| 302 | logger.exception("Opening log file '%s'", logorder) | ||
| 303 | pass | ||
| 304 | logorderfile.write('{0} ({1}): {2}\n'.format(task, os.getpid(), logbase)) | ||
| 305 | logorderfile.close() | ||
| 306 | |||
| 307 | # Setup the courtesy link to the logfn | ||
| 308 | loglink = os.path.join(tempdir, 'log.{0}'.format(task)) | ||
| 295 | logfn = os.path.join(tempdir, logbase) | 309 | logfn = os.path.join(tempdir, logbase) |
| 296 | if loglink: | 310 | if loglink: |
| 297 | bb.utils.remove(loglink) | 311 | bb.utils.remove(loglink) |
