sstate.bbclass: allow each step of toolchain bootstrap processes to do populate_sysroot independently
Some steps (like gcc-cross-initial, gcc-cross-intermediate and eglibc-initial) will install to new locations to avoid file overwriting. Signed-off-by: Dexuan Cui <dexuan.cui@intel.com>
This commit is contained in:
parent
7109712a25
commit
46395d4856
|
@ -90,30 +90,6 @@ def sstate_install(ss, d):
|
|||
if os.access(manifest, os.R_OK):
|
||||
bb.fatal("Package already staged (%s)?!" % manifest)
|
||||
|
||||
def checkmanifest(pn, task):
|
||||
return os.access(bb.data.expand("${SSTATE_MANFILEBASE}%s.%s" % (pn, task), d), os.R_OK)
|
||||
|
||||
skipinst = False
|
||||
pn = d.getVar("PN", True)
|
||||
if pn == "gcc-cross-initial":
|
||||
if checkmanifest("gcc-cross", "populate-sysroot"):
|
||||
skipinst = True
|
||||
if checkmanifest("gcc-cross-intermediate", "populate-sysroot"):
|
||||
skipinst = True
|
||||
elif pn == "gcc-cross-intermediate":
|
||||
if checkmanifest("gcc-cross", "populate-sysroot"):
|
||||
skipinst = True
|
||||
elif pn == "glibc-initial":
|
||||
if checkmanifest("glibc", "populate-sysroot"):
|
||||
skipinst = True
|
||||
elif pn == "eglibc-initial":
|
||||
if checkmanifest("eglibc", "populate-sysroot"):
|
||||
skipinst = True
|
||||
|
||||
if skipinst:
|
||||
bb.note("Not staging %s.%s as sysroot already contains better functionality" % (pn, ss['name']))
|
||||
return
|
||||
|
||||
locks = []
|
||||
for lock in ss['lockfiles']:
|
||||
locks.append(bb.utils.lockfile(lock))
|
||||
|
|
Loading…
Reference in New Issue