]> git.ipfire.org Git - thirdparty/openembedded/openembedded-core-contrib.git/commitdiff
sstate/sstatesig: Add populate_lic to list of arch invariant sstate tasks
authorRichard Purdie <richard.purdie@linuxfoundation.org>
Fri, 20 Dec 2013 12:08:56 +0000 (12:08 +0000)
committerRichard Purdie <richard.purdie@linuxfoundation.org>
Fri, 20 Dec 2013 12:25:25 +0000 (12:25 +0000)
Like fetch, unpack and patch, populate_lic doesn't vary between different
archs so we should mark it as such. This means better sstate cache reuse
with fewer duplicate files as well as less confusing sstate debugging.

sstatesig also needs to account for the fact BPN is used for sstate files
in these cases.

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
meta/classes/sstate.bbclass
meta/lib/oe/sstatesig.py

index 324d1c1b4998d6bbb010d6915849ec293ab18a1d..377af202a41e7bec9cba013e72014b9898e6a3a6 100644 (file)
@@ -103,6 +103,10 @@ def sstate_state_fromvars(d, task = None):
     if not name or len(inputs) != len(outputs):
         bb.fatal("sstate variables not setup correctly?!")
 
+    if name == "populate_lic":
+        d.setVar("SSTATE_PKGSPEC", "${SSTATE_SWSPEC}")
+        d.setVar("SSTATE_EXTRAPATH", "")
+
     ss = sstate_init(name, task, d)
     for i in range(len(inputs)):
         sstate_add(ss, inputs[i], outputs[i], d)
@@ -603,7 +607,7 @@ def sstate_checkhashes(sq_fn, sq_task, sq_hash, sq_hashfn, d):
 
         tname = sq_task[task][3:]
 
-        if tname in ["fetch", "unpack", "patch"] and splithashfn[2]:
+        if tname in ["fetch", "unpack", "patch", "populate_lic"] and splithashfn[2]:
             spec = splithashfn[2]
             extrapath = ""
 
@@ -749,7 +753,7 @@ python sstate_eventhandler() {
         taskname = d.getVar("BB_RUNTASK", True)[3:]
         spec = d.getVar('SSTATE_PKGSPEC', True)
         swspec = d.getVar('SSTATE_SWSPEC', True)
-        if taskname in ["fetch", "unpack", "patch"] and swspec:
+        if taskname in ["fetch", "unpack", "patch", "populate_lic"] and swspec:
             d.setVar("SSTATE_PKGSPEC", "${SSTATE_SWSPEC}")
             d.setVar("SSTATE_EXTRAPATH", "")
         sstatepkg = d.getVar('SSTATE_PKG', True)
index 68e53f661c798f861e09a5f7001dae8b28cedad2..3011f16a77f7705f04054ac21b1b1d814ec41f8f 100644 (file)
@@ -103,6 +103,9 @@ def find_siginfo(pn, taskname, taskhashlist, d):
         if key.startswith('virtual:native:'):
             pn = pn + '-native'
 
+    if taskname in ['do_fetch', 'do_unpack', 'do_patch', 'do_populate_lic']:
+        pn.replace("-native", "")
+
     filedates = {}
 
     # First search in stamps dir