summaryrefslogtreecommitdiffstats
path: root/meta/lib/oe/sstatesig.py
diff options
context:
space:
mode:
authorRichard Purdie <richard.purdie@linuxfoundation.org>2014-08-19 13:38:34 +0100
committerRichard Purdie <richard.purdie@linuxfoundation.org>2014-08-25 08:57:44 +0100
commitc490ba0a93be2cbf81392683a663899cca8a3670 (patch)
treeb3c9c1c09b2fbafc099874585d3e89f57696ab69 /meta/lib/oe/sstatesig.py
parent9e213ddea23f577528e8ca8b752b29ca9593efa6 (diff)
downloadpoky-c490ba0a93be2cbf81392683a663899cca8a3670.tar.gz
sstatesig: Only squash dependencies for allarch packagegroups
The idea of squashing packagegroup dependencies was to avoid allarch packages rebuilding upon tune/arch changes. Now that the allarch class inclusion is conditional, we can narrow down the packagegroup squashing to be specifically applied to allarch recipes. (From OE-Core rev: bd8018792155ae842952432900c8431feeaffe30) Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Diffstat (limited to 'meta/lib/oe/sstatesig.py')
-rw-r--r--meta/lib/oe/sstatesig.py7
1 files changed, 5 insertions, 2 deletions
diff --git a/meta/lib/oe/sstatesig.py b/meta/lib/oe/sstatesig.py
index d58147f78f..4188873c20 100644
--- a/meta/lib/oe/sstatesig.py
+++ b/meta/lib/oe/sstatesig.py
@@ -14,6 +14,9 @@ def sstate_rundepfilter(siggen, fn, recipename, task, dep, depname, dataCache):
14 def isPackageGroup(fn): 14 def isPackageGroup(fn):
15 inherits = " ".join(dataCache.inherits[fn]) 15 inherits = " ".join(dataCache.inherits[fn])
16 return "/packagegroup.bbclass" in inherits 16 return "/packagegroup.bbclass" in inherits
17 def isAllArch(fn):
18 inherits = " ".join(dataCache.inherits[fn])
19 return "/allarch.bbclass" in inherits
17 def isImage(fn): 20 def isImage(fn):
18 return "/image.bbclass" in " ".join(dataCache.inherits[fn]) 21 return "/image.bbclass" in " ".join(dataCache.inherits[fn])
19 22
@@ -36,8 +39,8 @@ def sstate_rundepfilter(siggen, fn, recipename, task, dep, depname, dataCache):
36 39
37 # Only target packages beyond here 40 # Only target packages beyond here
38 41
39 # packagegroups are assumed to have well behaved names which don't change between architecures/tunes 42 # allarch packagegroups are assumed to have well behaved names which don't change between architecures/tunes
40 if isPackageGroup(fn): 43 if isPackageGroup(fn) and isAllArch(fn):
41 return False 44 return False
42 45
43 # Exclude well defined machine specific configurations which don't change ABI 46 # Exclude well defined machine specific configurations which don't change ABI