summaryrefslogtreecommitdiffstats
path: root/meta
diff options
context:
space:
mode:
authorDexuan Cui <dexuan.cui@intel.com>2011-01-20 17:01:49 +0800
committerRichard Purdie <richard.purdie@linuxfoundation.org>2011-01-25 10:59:17 +0000
commit46395d4856d11fc135872f8904ce92aa26eec984 (patch)
tree7d3157229c7a74ac4a68b0428534defd8fa0abeb /meta
parent7109712a25762a530e7385bc796c3b9ff0836303 (diff)
downloadpoky-46395d4856d11fc135872f8904ce92aa26eec984.tar.gz
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>
Diffstat (limited to 'meta')
-rw-r--r--meta/classes/sstate.bbclass24
1 files changed, 0 insertions, 24 deletions
diff --git a/meta/classes/sstate.bbclass b/meta/classes/sstate.bbclass
index adadbcffc7..38f2bb99e6 100644
--- a/meta/classes/sstate.bbclass
+++ b/meta/classes/sstate.bbclass
@@ -90,30 +90,6 @@ def sstate_install(ss, d):
90 if os.access(manifest, os.R_OK): 90 if os.access(manifest, os.R_OK):
91 bb.fatal("Package already staged (%s)?!" % manifest) 91 bb.fatal("Package already staged (%s)?!" % manifest)
92 92
93 def checkmanifest(pn, task):
94 return os.access(bb.data.expand("${SSTATE_MANFILEBASE}%s.%s" % (pn, task), d), os.R_OK)
95
96 skipinst = False
97 pn = d.getVar("PN", True)
98 if pn == "gcc-cross-initial":
99 if checkmanifest("gcc-cross", "populate-sysroot"):
100 skipinst = True
101 if checkmanifest("gcc-cross-intermediate", "populate-sysroot"):
102 skipinst = True
103 elif pn == "gcc-cross-intermediate":
104 if checkmanifest("gcc-cross", "populate-sysroot"):
105 skipinst = True
106 elif pn == "glibc-initial":
107 if checkmanifest("glibc", "populate-sysroot"):
108 skipinst = True
109 elif pn == "eglibc-initial":
110 if checkmanifest("eglibc", "populate-sysroot"):
111 skipinst = True
112
113 if skipinst:
114 bb.note("Not staging %s.%s as sysroot already contains better functionality" % (pn, ss['name']))
115 return
116
117 locks = [] 93 locks = []
118 for lock in ss['lockfiles']: 94 for lock in ss['lockfiles']:
119 locks.append(bb.utils.lockfile(lock)) 95 locks.append(bb.utils.lockfile(lock))