bitbake: runqueue: Ensure pseudo executes from the correct place (use the right datastore with multiconfig)

The location of the fakeroot command and the various environmental values need
to be taken from the right multiconfig datastore, not the shared one. This
patch ensures the right one is used for cases like a split TMPDIR.

[YOCTO #10344]

(Bitbake rev: c241f16670cada2cdf45ecddb4961e16edb83486)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
This commit is contained in:
Richard Purdie 2016-12-20 20:51:02 +00:00
parent 86f91f680a
commit 30259219ca

View File

@ -997,8 +997,9 @@ class RunQueue:
magic = "decafbadbad"
if fakeroot:
magic = magic + "beef"
fakerootcmd = self.cfgData.getVar("FAKEROOTCMD", True)
fakerootenv = (self.cfgData.getVar("FAKEROOTBASEENV", True) or "").split()
mcdata = self.cooker.databuilder.mcdata[mc]
fakerootcmd = mcdata.getVar("FAKEROOTCMD", True)
fakerootenv = (mcdata.getVar("FAKEROOTBASEENV", True) or "").split()
env = os.environ.copy()
for key, value in (var.split('=') for var in fakerootenv):
env[key] = value