[gnome-continuous-yocto/gnomeostree-3.28-rocko: 7046/8267] sstate: Improve SSTATE_SKIP_CREATION



commit 0fcf2247b372bb6267e3a6b2598ce552012cd391
Author: Richard Purdie <richard purdie linuxfoundation org>
Date:   Sun Jul 30 16:01:09 2017 +0100

    sstate: Improve SSTATE_SKIP_CREATION
    
    Currently, dummy archives are created for skipped sstate tasks. We relied
    on these never being installed (the setscene task is missing) however this
    leads to odd behaviour as for example the setscene stamps are never looked
    at.
    
    Rather than trying to continue with the two separate behaviours, really
    skip package creation. We do need the file manipulation steps to install files
    under sstate control from a manifest perspective so we only skip at the final
    creation step.
    
    (From OE-Core rev: 1e95fc5419a131a5e4091b8ff01639de99284399)
    
    Signed-off-by: Richard Purdie <richard purdie linuxfoundation org>

 meta/classes/sstate.bbclass |   10 ++++------
 1 files changed, 4 insertions(+), 6 deletions(-)
---
diff --git a/meta/classes/sstate.bbclass b/meta/classes/sstate.bbclass
index f446c3d..6af0d38 100644
--- a/meta/classes/sstate.bbclass
+++ b/meta/classes/sstate.bbclass
@@ -346,8 +346,6 @@ def sstate_installpkgdir(ss, d):
         oe.path.remove(dir)
 
     for state in ss['dirs']:
-        if d.getVar('SSTATE_SKIP_CREATION') == '1':
-            continue
         prepdir(state[1])
         os.rename(sstateinst + state[0], state[1])
     sstate_install(ss, d)
@@ -596,8 +594,6 @@ def sstate_package(ss, d):
     for state in ss['dirs']:
         if not os.path.exists(state[1]):
             continue
-        if d.getVar('SSTATE_SKIP_CREATION') == '1':
-            continue
         srcbase = state[0].rstrip("/").rsplit('/', 1)[0]
         # Find and error for absolute symlinks. We could attempt to relocate but its not
         # clear where the symlink is relative to in this context. We could add that markup
@@ -625,6 +621,10 @@ def sstate_package(ss, d):
 
     d.setVar('SSTATE_BUILDDIR', sstatebuild)
     d.setVar('SSTATE_PKG', sstatepkg)
+    d.setVar('SSTATE_INSTDIR', sstatebuild)
+
+    if d.getVar('SSTATE_SKIP_CREATION') == '1':
+        return
 
     for f in (d.getVar('SSTATECREATEFUNCS') or '').split() + \
              ['sstate_create_package', 'sstate_sign_package'] + \
@@ -634,8 +634,6 @@ def sstate_package(ss, d):
 
     bb.siggen.dump_this_task(sstatepkg + ".siginfo", d)
 
-    d.setVar('SSTATE_INSTDIR', sstatebuild)
-
     return
 
 def pstaging_fetch(sstatefetch, sstatepkg, d):


[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]