Openembedded Core Discussions
 help / color / mirror / Atom feed
* [PATCH] sstatesig.py: Move package exclusion list to the layer config
@ 2012-02-23 10:17 Richard Purdie
  2012-02-23 10:46 ` Otavio Salvador
  0 siblings, 1 reply; 3+ messages in thread
From: Richard Purdie @ 2012-02-23 10:17 UTC (permalink / raw)
  To: openembedded-core

Its desireable for other layers to be able to append to the list of packages
with 'safe ABI's which are excluded from the sstate signatures.

I can't emphasise enough how careful you need to be with this list, anything
excluded here needs to be things which don't change interface and are consistent
between different machines.

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
---
diff --git a/meta/conf/layer.conf b/meta/conf/layer.conf
index ad95405..c0c2930 100644
--- a/meta/conf/layer.conf
+++ b/meta/conf/layer.conf
@@ -18,3 +18,4 @@ PATH := "${PATH}:${COREBASE}/scripts"
 
 QEMUIMAGETESTS := "${COREBASE}/scripts/qemuimage-tests"
 
+SIGGEN_EXCLUDERECIPES_ABISAFE = "sysvinit-inittab shadow-securetty opkg-config-base netbase formfactor xserver-xf86-config pointercal base-files"
diff --git a/meta/lib/oe/sstatesig.py b/meta/lib/oe/sstatesig.py
index 5a64882..7b80c18 100644
--- a/meta/lib/oe/sstatesig.py
+++ b/meta/lib/oe/sstatesig.py
@@ -1,6 +1,6 @@
 import bb.siggen
 
-def sstate_rundepfilter(fn, recipename, task, dep, depname, dataCache):
+def sstate_rundepfilter(siggen, fn, recipename, task, dep, depname, dataCache):
     # Return True if we should keep the dependency, False to drop it
     def isNative(x):
         return x.endswith("-native")
@@ -30,7 +30,7 @@ def sstate_rundepfilter(fn, recipename, task, dep, depname, dataCache):
         return False
 
     # Exclude well defined machine specific configurations which don't change ABI
-    if depname in ['sysvinit-inittab', 'shadow-securetty', 'opkg-config-base', 'netbase', 'formfactor', 'xserver-xf86-config', 'pointercal', 'base-files']:
+    if depname in siggen.abisaferecipes:
         return False
 
     # Kernel modules are well namespaced. We don't want to depend on the kernel's checksum
@@ -50,16 +50,18 @@ def sstate_rundepfilter(fn, recipename, task, dep, depname, dataCache):
 class SignatureGeneratorOEBasic(bb.siggen.SignatureGeneratorBasic):
     name = "OEBasic"
     def init_rundepcheck(self, data):
+        self.abisaferecipes = (data.getVar("SIGGEN_EXCLUDERECIPES_ABISAFE", True) or "").split()
         pass
     def rundep_check(self, fn, recipename, task, dep, depname, dataCache = None):
-        return sstate_rundepfilter(fn, recipename, task, dep, depname, dataCache)
+        return sstate_rundepfilter(self, fn, recipename, task, dep, depname, dataCache)
 
 class SignatureGeneratorOEBasicHash(bb.siggen.SignatureGeneratorBasicHash):
     name = "OEBasicHash"
     def init_rundepcheck(self, data):
+        self.abisaferecipes = (data.getVar("SIGGEN_EXCLUDERECIPES_ABISAFE", True) or "").split()
         pass
     def rundep_check(self, fn, recipename, task, dep, depname, dataCache = None):
-        return sstate_rundepfilter(fn, recipename, task, dep, depname, dataCache)
+        return sstate_rundepfilter(self, fn, recipename, task, dep, depname, dataCache)
 
 # Insert these classes into siggen's namespace so it can see and select them
 bb.siggen.SignatureGeneratorOEBasic = SignatureGeneratorOEBasic





^ permalink raw reply related	[flat|nested] 3+ messages in thread

* Re: [PATCH] sstatesig.py: Move package exclusion list to the layer config
  2012-02-23 10:17 [PATCH] sstatesig.py: Move package exclusion list to the layer config Richard Purdie
@ 2012-02-23 10:46 ` Otavio Salvador
  2012-02-24  0:15   ` Richard Purdie
  0 siblings, 1 reply; 3+ messages in thread
From: Otavio Salvador @ 2012-02-23 10:46 UTC (permalink / raw)
  To: Patches and discussions about the oe-core layer

On Thu, Feb 23, 2012 at 08:17, Richard Purdie
<richard.purdie@linuxfoundation.org> wrote:
> +SIGGEN_EXCLUDERECIPES_ABISAFE = "sysvinit-inittab shadow-securetty opkg-config-base netbase formfactor xserver-xf86-config pointercal base-files"

I would prefer one package per line here so it is easier to read a
diff changing this, in future.

-- 
Otavio Salvador                             O.S. Systems
E-mail: otavio@ossystems.com.br  http://www.ossystems.com.br
Mobile: +55 53 9981-7854              http://projetos.ossystems.com.br



^ permalink raw reply	[flat|nested] 3+ messages in thread

* Re: [PATCH] sstatesig.py: Move package exclusion list to the layer config
  2012-02-23 10:46 ` Otavio Salvador
@ 2012-02-24  0:15   ` Richard Purdie
  0 siblings, 0 replies; 3+ messages in thread
From: Richard Purdie @ 2012-02-24  0:15 UTC (permalink / raw)
  To: Patches and discussions about the oe-core layer

On Thu, 2012-02-23 at 08:46 -0200, Otavio Salvador wrote:
> On Thu, Feb 23, 2012 at 08:17, Richard Purdie
> <richard.purdie@linuxfoundation.org> wrote:
> > +SIGGEN_EXCLUDERECIPES_ABISAFE = "sysvinit-inittab shadow-securetty opkg-config-base netbase formfactor xserver-xf86-config pointercal base-files"
> 
> I would prefer one package per line here so it is easier to read a
> diff changing this, in future.

I'd meant to change this but when it came around to dealing with the
patches, I forgot, sorry :(.

We can change it as a subsequent patch...

Cheers,

Richard





^ permalink raw reply	[flat|nested] 3+ messages in thread

end of thread, other threads:[~2012-02-24  0:23 UTC | newest]

Thread overview: 3+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2012-02-23 10:17 [PATCH] sstatesig.py: Move package exclusion list to the layer config Richard Purdie
2012-02-23 10:46 ` Otavio Salvador
2012-02-24  0:15   ` Richard Purdie

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox