diff options
author | Laurentiu Palcu <laurentiu.palcu@intel.com> | 2014-02-03 13:33:07 +0200 |
---|---|---|
committer | Richard Purdie <richard.purdie@linuxfoundation.org> | 2014-02-09 10:01:38 +0000 |
commit | 095bb006c3dbbfbdfa05f13d8d7b50e2a5ab2af0 (patch) | |
tree | ab86def4170d8a2d78712b898a2844ba61db0296 /bitbake | |
parent | 5232ba83fda1b9c0f275e51037e4a51aaf4094ea (diff) | |
download | ast2050-yocto-poky-095bb006c3dbbfbdfa05f13d8d7b50e2a5ab2af0.zip ast2050-yocto-poky-095bb006c3dbbfbdfa05f13d8d7b50e2a5ab2af0.tar.gz |
bitbake: bitbake: build.py: create separate function for shell trap creation code
Currently, the shell trap code was created in exec_func_shell(). Split
the function so that we can create the code separately.
Also, some whitespaces were automatically deleted by my editor. Since
this is not necessarily a bad thing, leave these changes too.
(Bitbake rev: c712e622d20c61a07c9c172b60e9dc6beae14197)
Signed-off-by: Laurentiu Palcu <laurentiu.palcu@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Diffstat (limited to 'bitbake')
-rw-r--r-- | bitbake/lib/bb/build.py | 37 |
1 files changed, 20 insertions, 17 deletions
diff --git a/bitbake/lib/bb/build.py b/bitbake/lib/bb/build.py index 3aa6375..692b91e 100644 --- a/bitbake/lib/bb/build.py +++ b/bitbake/lib/bb/build.py @@ -254,19 +254,8 @@ def exec_func_python(func, d, runfile, cwd=None): except OSError: pass -def exec_func_shell(func, d, runfile, cwd=None): - """Execute a shell function from the metadata - - Note on directory behavior. The 'dirs' varflag should contain a list - of the directories you need created prior to execution. The last - item in the list is where we will chdir/cd to. - """ - - # Don't let the emitted shell script override PWD - d.delVarFlag('PWD', 'export') - - with open(runfile, 'w') as script: - script.write('''#!/bin/sh\n +def shell_trap_code(): + return '''#!/bin/sh\n # Emit a useful diagnostic if something fails: bb_exit_handler() { ret=$? @@ -282,7 +271,21 @@ bb_exit_handler() { } trap 'bb_exit_handler' 0 set -e -''') +''' + +def exec_func_shell(func, d, runfile, cwd=None): + """Execute a shell function from the metadata + + Note on directory behavior. The 'dirs' varflag should contain a list + of the directories you need created prior to execution. The last + item in the list is where we will chdir/cd to. + """ + + # Don't let the emitted shell script override PWD + d.delVarFlag('PWD', 'export') + + with open(runfile, 'w') as script: + script.write(shell_trap_code()) bb.data.emit_func(func, script, d) @@ -473,12 +476,12 @@ def _exec_task(fn, task, d, quieterr): return 0 def exec_task(fn, task, d, profile = False): - try: + try: quieterr = False if d.getVarFlag(task, "quieterrors") is not None: quieterr = True - if profile: + if profile: profname = "profile-%s.log" % (d.getVar("PN", True) + "-" + task) try: import cProfile as profile @@ -576,7 +579,7 @@ def make_stamp(task, d, file_name = None): if name.endswith('.taint'): continue os.unlink(name) - + stamp = stamp_internal(task, d, file_name) # Remove the file and recreate to force timestamp # change on broken NFS filesystems |