]> code.ossystems Code Review - openembedded-core.git/commitdiff
externalsrc: No single-task lock if S != B
authorDouglas Royds <douglas.royds@taitradio.com>
Tue, 13 Oct 2020 00:48:56 +0000 (13:48 +1300)
committerRichard Purdie <richard.purdie@linuxfoundation.org>
Sat, 17 Oct 2020 11:33:30 +0000 (12:33 +0100)
Allow different recipes to build things from the one external source tree in
parallel, but only if the build is happening outside the source tree.

Signed-off-by: Douglas Royds <douglas.royds@taitradio.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
meta/classes/externalsrc.bbclass

index d2001299876aaf5ffd0e8bbf9d0c771fc8287a7f..dd09395788e0a9ab28b34ca48b307123ca27c2ac 100644 (file)
@@ -85,7 +85,7 @@ python () {
             if task.endswith("_setscene"):
                 # sstate is never going to work for external source trees, disable it
                 bb.build.deltask(task, d)
-            else:
+            elif os.path.realpath(d.getVar('S')) == os.path.realpath(d.getVar('B')):
                 # Since configure will likely touch ${S}, ensure only we lock so one task has access at a time
                 d.appendVarFlag(task, "lockfiles", " ${S}/singletask.lock")