Patchwork sstatesig: Move saferecipedeps handling to be earlier

login
register
mail settings
Submitter Richard Purdie
Date May 28, 2014, 4:38 p.m.
Message ID <1401295116.2607.51.camel@ted>
Download mbox | patch
Permalink /patch/72909/
State Accepted
Commit 963c8ea99d71fef027a60c2142f4785c64bbfb66
Headers show

Comments

Richard Purdie - May 28, 2014, 4:38 p.m.
We want to use the saferecipedeps handling code to allow gcc-cross-* to
work on multiple different tunes. Its currently in target only code
so it needs to be earlier to allow it to work on native-> target
dependencies.

This change has no effect on existing uses but makes gcc-cross become
shared as desired.

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Ross Burton - May 28, 2014, 5:35 p.m.
On 28 May 2014 17:38, Richard Purdie <richard.purdie@linuxfoundation.org> wrote:
> This change has no effect on existing uses but makes gcc-cross become
> shared as desired.

As the reporter of the problem to Richard I confirm that this fixes the problem.

Ross

Patch

diff --git a/meta/lib/oe/sstatesig.py b/meta/lib/oe/sstatesig.py
index 40f9974..acff2a0 100644
--- a/meta/lib/oe/sstatesig.py
+++ b/meta/lib/oe/sstatesig.py
@@ -26,6 +26,10 @@  def sstate_rundepfilter(siggen, fn, recipename, task, dep, depname, dataCache):
     if depname in excludelist and recipename != depname:
         return False
 
+    # Exclude well defined recipe->dependency
+    if "%s->%s" % (recipename, depname) in siggen.saferecipedeps:
+        return False
+
     # Don't change native/cross/nativesdk recipe dependencies any further
     if isNative(recipename) or isCross(recipename) or isNativeSDK(recipename):
         return True
@@ -40,10 +44,6 @@  def sstate_rundepfilter(siggen, fn, recipename, task, dep, depname, dataCache):
     if depname in siggen.abisaferecipes and not isImage(fn):
         return False
 
-    # Exclude well defined recipe->dependency
-    if "%s->%s" % (recipename, depname) in siggen.saferecipedeps:
-        return False
-
     # Kernel modules are well namespaced. We don't want to depend on the kernel's checksum
     # if we're just doing an RRECOMMENDS_xxx = "kernel-module-*", not least because the checksum
     # is machine specific.