diff options
Diffstat (limited to 'bitbake')
-rw-r--r-- | bitbake/lib/bb/build.py | 8 |
1 files changed, 8 insertions, 0 deletions
diff --git a/bitbake/lib/bb/build.py b/bitbake/lib/bb/build.py index f41898ec14..1c015fe9a3 100644 --- a/bitbake/lib/bb/build.py +++ b/bitbake/lib/bb/build.py | |||
@@ -97,11 +97,19 @@ def exec_func(func, d, dirs = None): | |||
97 | if adir and os.access(adir, os.F_OK): | 97 | if adir and os.access(adir, os.F_OK): |
98 | os.chdir(adir) | 98 | os.chdir(adir) |
99 | 99 | ||
100 | locks = [] | ||
101 | lockfiles = (data.expand(data.getVarFlag(func, 'lockfiles', d), d) or "").split() | ||
102 | for lock in lockfiles: | ||
103 | locks.append(bb.utils.lockfile(lock)) | ||
104 | |||
100 | if data.getVarFlag(func, "python", d): | 105 | if data.getVarFlag(func, "python", d): |
101 | exec_func_python(func, d) | 106 | exec_func_python(func, d) |
102 | else: | 107 | else: |
103 | exec_func_shell(func, d) | 108 | exec_func_shell(func, d) |
104 | 109 | ||
110 | for lock in locks: | ||
111 | bb.utils.unlockfile(lock) | ||
112 | |||
105 | if os.path.exists(prevdir): | 113 | if os.path.exists(prevdir): |
106 | os.chdir(prevdir) | 114 | os.chdir(prevdir) |
107 | 115 | ||