All of lore.kernel.org
 help / color / mirror / Atom feed
* [RFC 0/3] Add wildcards to SIGGEN_EXCLUDE_SAFE_RECIPE_DEPS
@ 2018-02-27 22:47 Joshua Watt
  2018-02-27 22:47 ` [RFC 1/3] sstatesig: Add recipe wildcard Joshua Watt
                   ` (3 more replies)
  0 siblings, 4 replies; 6+ messages in thread
From: Joshua Watt @ 2018-02-27 22:47 UTC (permalink / raw)
  To: openembedded-core

Wildcard support in SIGGEN_EXCLUDE_SAFE_RECIPE_DEPS allows the native
tools that were in a hardcoded list to be specified in layer.conf with
the other exclusions.

Joshua Watt (3):
  sstatesig: Add recipe wildcard
  ref-manual: Update documentation for SIGGEN_EXCLUDE_SAFE_RECIPE_DEPS
  sstatesig: Move hardcoded native tools

 documentation/ref-manual/ref-variables.xml | 18 ++++++++++++++++++
 meta/conf/layer.conf                       |  5 +++++
 meta/lib/oe/sstatesig.py                   |  9 ++++-----
 3 files changed, 27 insertions(+), 5 deletions(-)

-- 
2.14.3



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

* [RFC 1/3] sstatesig: Add recipe wildcard
  2018-02-27 22:47 [RFC 0/3] Add wildcards to SIGGEN_EXCLUDE_SAFE_RECIPE_DEPS Joshua Watt
@ 2018-02-27 22:47 ` Joshua Watt
  2018-02-27 22:47 ` [RFC 2/3] ref-manual: Update SIGGEN_EXCLUDE_SAFE_RECIPE_DEPS Joshua Watt
                   ` (2 subsequent siblings)
  3 siblings, 0 replies; 6+ messages in thread
From: Joshua Watt @ 2018-02-27 22:47 UTC (permalink / raw)
  To: openembedded-core

The special string "*" on the left hand side of the dependency
specification matches all recipes except the one on the right hand side.

Signed-off-by: Joshua Watt <JPEWhacker@gmail.com>
---
 meta/lib/oe/sstatesig.py | 4 ++++
 1 file changed, 4 insertions(+)

diff --git a/meta/lib/oe/sstatesig.py b/meta/lib/oe/sstatesig.py
index 6be9d32133a..418c1ca3cc7 100644
--- a/meta/lib/oe/sstatesig.py
+++ b/meta/lib/oe/sstatesig.py
@@ -37,6 +37,10 @@ def sstate_rundepfilter(siggen, fn, recipename, task, dep, depname, dataCache):
     if "%s->%s" % (recipename, depname) in siggen.saferecipedeps:
         return False
 
+    # Check for special wildcard
+    if "*->%s" % depname in siggen.saferecipedeps and recipename != depname:
+        return False
+
     # Don't change native/cross/nativesdk recipe dependencies any further
     if isNative(recipename) or isCross(recipename) or isNativeSDK(recipename):
         return True
-- 
2.14.3



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

* [RFC 2/3] ref-manual: Update SIGGEN_EXCLUDE_SAFE_RECIPE_DEPS
  2018-02-27 22:47 [RFC 0/3] Add wildcards to SIGGEN_EXCLUDE_SAFE_RECIPE_DEPS Joshua Watt
  2018-02-27 22:47 ` [RFC 1/3] sstatesig: Add recipe wildcard Joshua Watt
@ 2018-02-27 22:47 ` Joshua Watt
  2018-02-27 22:47 ` [RFC 3/3] sstatesig: Move hardcoded native tools Joshua Watt
  2018-02-28 14:14 ` [RFC 0/3] Add wildcards to SIGGEN_EXCLUDE_SAFE_RECIPE_DEPS Richard Purdie
  3 siblings, 0 replies; 6+ messages in thread
From: Joshua Watt @ 2018-02-27 22:47 UTC (permalink / raw)
  To: openembedded-core

Describes the new wildcard syntax in the documentation

Signed-off-by: Joshua Watt <JPEWhacker@gmail.com>
---
 documentation/ref-manual/ref-variables.xml | 18 ++++++++++++++++++
 1 file changed, 18 insertions(+)

diff --git a/documentation/ref-manual/ref-variables.xml b/documentation/ref-manual/ref-variables.xml
index 137a556d929..c5db057174b 100644
--- a/documentation/ref-manual/ref-variables.xml
+++ b/documentation/ref-manual/ref-variables.xml
@@ -12635,6 +12635,24 @@ recipes-graphics/xorg-font/font-alias_1.0.3.bb:PR = "${INC_PR}.3"
                     <filename>mplayer2</filename>.
                 </para>
 
+                <para>
+                    The special token <filename>"*"</filename> may be used on
+                    the left hand side of the dependency, which has the special
+                    meaning "all other recipes, except the one on the right hand
+                    side.
+                    For example:
+                    <literallayout class='monospaced'>
+    SIGGEN_EXCLUDE_SAFE_RECIPE_DEPS += "*->quilt-native"
+                    </literallayout>
+                </para>
+
+                <para>
+                    In this example, all recipes except
+                    <filename>quilt-native</filename> will ignore task
+                    signatures from the <filename>quilt-native</filename> recipe
+                    when determining their task signatures.
+                </para>
+
                 <para>
                     Use of this variable is one mechanism to remove dependencies
                     that affect task signatures and thus force rebuilds when a
-- 
2.14.3



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

* [RFC 3/3] sstatesig: Move hardcoded native tools
  2018-02-27 22:47 [RFC 0/3] Add wildcards to SIGGEN_EXCLUDE_SAFE_RECIPE_DEPS Joshua Watt
  2018-02-27 22:47 ` [RFC 1/3] sstatesig: Add recipe wildcard Joshua Watt
  2018-02-27 22:47 ` [RFC 2/3] ref-manual: Update SIGGEN_EXCLUDE_SAFE_RECIPE_DEPS Joshua Watt
@ 2018-02-27 22:47 ` Joshua Watt
  2018-02-28 14:14 ` [RFC 0/3] Add wildcards to SIGGEN_EXCLUDE_SAFE_RECIPE_DEPS Richard Purdie
  3 siblings, 0 replies; 6+ messages in thread
From: Joshua Watt @ 2018-02-27 22:47 UTC (permalink / raw)
  To: openembedded-core

Now that SIGGEN_EXCLUDE_SAFE_RECIPE_DEPS supports the wildcard syntax,
these exclusions no longer need to be hardcoded

Signed-off-by: Joshua Watt <JPEWhacker@gmail.com>
---
 meta/conf/layer.conf     | 5 +++++
 meta/lib/oe/sstatesig.py | 5 -----
 2 files changed, 5 insertions(+), 5 deletions(-)

diff --git a/meta/conf/layer.conf b/meta/conf/layer.conf
index 67820588d37..df67716a2f1 100644
--- a/meta/conf/layer.conf
+++ b/meta/conf/layer.conf
@@ -44,6 +44,11 @@ SIGGEN_EXCLUDERECIPES_ABISAFE += " \
 "
 
 SIGGEN_EXCLUDE_SAFE_RECIPE_DEPS += " \
+  *->quilt-native \
+  *->subversion-native \
+  *->git-native \
+  *->ccache-native \
+  *->icecc-create-env-native \
   gcc-cross-${TARGET_ARCH}->virtual/${TARGET_PREFIX}libc-for-gcc \
   gcc-cross-${TARGET_ARCH}->linux-libc-headers \
   ppp-dialin->ppp \
diff --git a/meta/lib/oe/sstatesig.py b/meta/lib/oe/sstatesig.py
index 418c1ca3cc7..e1871b347cc 100644
--- a/meta/lib/oe/sstatesig.py
+++ b/meta/lib/oe/sstatesig.py
@@ -28,11 +28,6 @@ def sstate_rundepfilter(siggen, fn, recipename, task, dep, depname, dataCache):
             return False
         return True
 
-    # Quilt (patch application) changing isn't likely to affect anything
-    excludelist = ['quilt-native', 'subversion-native', 'git-native', 'ccache-native', 'icecc-create-env-native']
-    if depname in excludelist and recipename != depname:
-        return False
-
     # Exclude well defined recipe->dependency
     if "%s->%s" % (recipename, depname) in siggen.saferecipedeps:
         return False
-- 
2.14.3



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

* Re: [RFC 0/3] Add wildcards to SIGGEN_EXCLUDE_SAFE_RECIPE_DEPS
  2018-02-27 22:47 [RFC 0/3] Add wildcards to SIGGEN_EXCLUDE_SAFE_RECIPE_DEPS Joshua Watt
                   ` (2 preceding siblings ...)
  2018-02-27 22:47 ` [RFC 3/3] sstatesig: Move hardcoded native tools Joshua Watt
@ 2018-02-28 14:14 ` Richard Purdie
  2018-02-28 14:43   ` Joshua Watt
  3 siblings, 1 reply; 6+ messages in thread
From: Richard Purdie @ 2018-02-28 14:14 UTC (permalink / raw)
  To: Joshua Watt, openembedded-core

On Tue, 2018-02-27 at 16:47 -0600, Joshua Watt wrote:
> Wildcard support in SIGGEN_EXCLUDE_SAFE_RECIPE_DEPS allows the native
> tools that were in a hardcoded list to be specified in layer.conf
> with
> the other exclusions.

I was always reluctant to add wildcard support to this but it does make
sense. It worked out ok in the testing I gave it. As we're at feature
freeze, this would have to go in ASAP.

Cheers,

Richard


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

* Re: [RFC 0/3] Add wildcards to SIGGEN_EXCLUDE_SAFE_RECIPE_DEPS
  2018-02-28 14:14 ` [RFC 0/3] Add wildcards to SIGGEN_EXCLUDE_SAFE_RECIPE_DEPS Richard Purdie
@ 2018-02-28 14:43   ` Joshua Watt
  0 siblings, 0 replies; 6+ messages in thread
From: Joshua Watt @ 2018-02-28 14:43 UTC (permalink / raw)
  To: Richard Purdie, openembedded-core

On Wed, 2018-02-28 at 14:14 +0000, Richard Purdie wrote:
> On Tue, 2018-02-27 at 16:47 -0600, Joshua Watt wrote:
> > Wildcard support in SIGGEN_EXCLUDE_SAFE_RECIPE_DEPS allows the
> > native
> > tools that were in a hardcoded list to be specified in layer.conf
> > with
> > the other exclusions.
> 
> I was always reluctant to add wildcard support to this but it does
> make
> sense. It worked out ok in the testing I gave it. As we're at feature
> freeze, this would have to go in ASAP.

I was more worried about http://lists.openembedded.org/pipermail/openem
bedded-core/2018-February/147901.html, which looked like it already
landed in master-next (886ffabca). I have no problem waiting for the
next development cycle on this, unless someone *really* wants it.

> 
> Cheers,
> 
> Richard


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

end of thread, other threads:[~2018-02-28 14:43 UTC | newest]

Thread overview: 6+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2018-02-27 22:47 [RFC 0/3] Add wildcards to SIGGEN_EXCLUDE_SAFE_RECIPE_DEPS Joshua Watt
2018-02-27 22:47 ` [RFC 1/3] sstatesig: Add recipe wildcard Joshua Watt
2018-02-27 22:47 ` [RFC 2/3] ref-manual: Update SIGGEN_EXCLUDE_SAFE_RECIPE_DEPS Joshua Watt
2018-02-27 22:47 ` [RFC 3/3] sstatesig: Move hardcoded native tools Joshua Watt
2018-02-28 14:14 ` [RFC 0/3] Add wildcards to SIGGEN_EXCLUDE_SAFE_RECIPE_DEPS Richard Purdie
2018-02-28 14:43   ` Joshua Watt

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.