diff options
author | Dongxiao Xu <dongxiao.xu@intel.com> | 2011-01-18 16:18:18 +0800 |
---|---|---|
committer | Richard Purdie <richard.purdie@linuxfoundation.org> | 2011-01-18 12:50:04 +0000 |
commit | 80cf3e405c923ed95dd09936739e816dbdd92299 (patch) | |
tree | 62082943bf06a2df18722b911bf93dea05e43bfe /bitbake/lib/bb/build.py | |
parent | 740ea68258282c459b66bbed550e6347fb8e83a3 (diff) | |
download | poky-80cf3e405c923ed95dd09936739e816dbdd92299.tar.gz |
bitbake: Introduce stamp-extra-info task flag into stamp filenames
For certain tasks, we need additional information in build stamp file
other than the task name and file name. stamp-extra-info is introduced as
a task flag which is appended to the stamp file name.
[Code simplifcations/tweaks from Richard]
Signed-off-by: Dongxiao Xu <dongxiao.xu@intel.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 | 12 |
1 files changed, 9 insertions, 3 deletions
diff --git a/bitbake/lib/bb/build.py b/bitbake/lib/bb/build.py index 722639f3bb..e723c7ea85 100644 --- a/bitbake/lib/bb/build.py +++ b/bitbake/lib/bb/build.py | |||
@@ -386,14 +386,16 @@ def stamp_internal(taskname, d, file_name): | |||
386 | """ | 386 | """ |
387 | if file_name: | 387 | if file_name: |
388 | stamp = d.stamp[file_name] | 388 | stamp = d.stamp[file_name] |
389 | extrainfo = d.stamp_extrainfo[file_name].get(taskname) or "" | ||
389 | else: | 390 | else: |
390 | stamp = d.getVar('STAMP', True) | 391 | stamp = d.getVar('STAMP', True) |
391 | file_name = d.getVar('BB_FILENAME', True) | 392 | file_name = d.getVar('BB_FILENAME', True) |
393 | extrainfo = d.getVarFlag(taskname, 'stamp-extra-info', True) or "" | ||
392 | 394 | ||
393 | if not stamp: | 395 | if not stamp: |
394 | return | 396 | return |
395 | 397 | ||
396 | stamp = bb.parse.siggen.stampfile(stamp, file_name, taskname) | 398 | stamp = bb.parse.siggen.stampfile(stamp, file_name, taskname, extrainfo) |
397 | 399 | ||
398 | bb.utils.mkdirhier(os.path.dirname(stamp)) | 400 | bb.utils.mkdirhier(os.path.dirname(stamp)) |
399 | 401 | ||
@@ -420,8 +422,12 @@ def del_stamp(task, d, file_name = None): | |||
420 | stamp = stamp_internal(task, d, file_name) | 422 | stamp = stamp_internal(task, d, file_name) |
421 | bb.utils.remove(stamp) | 423 | bb.utils.remove(stamp) |
422 | 424 | ||
423 | def stampfile(taskname, d): | 425 | def stampfile(taskname, d, file_name = None): |
424 | return stamp_internal(taskname, d, None) | 426 | """ |
427 | Return the stamp for a given task | ||
428 | (d can be a data dict or dataCache) | ||
429 | """ | ||
430 | return stamp_internal(taskname, d, file_name) | ||
425 | 431 | ||
426 | def add_tasks(tasklist, d): | 432 | def add_tasks(tasklist, d): |
427 | task_deps = data.getVar('_task_deps', d) | 433 | task_deps = data.getVar('_task_deps', d) |