[oe-commits] [openembedded-core] 35/36: staging: Fix a logic error which caused dependency removal

git at git.openembedded.org git at git.openembedded.org
Mon Sep 11 21:17:08 UTC 2017


This is an automated email from the git hooks/post-receive script.

rpurdie pushed a commit to branch pyro
in repository openembedded-core.

commit 3969c068bc9557b405a5ad61c10c402ec93bd932
Author: Richard Purdie <richard.purdie at linuxfoundation.org>
AuthorDate: Fri Sep 1 15:18:15 2017 +0100

    staging: Fix a logic error which caused dependency removal
    
    There was a logic error in the dependency cleanup code which meant
    it would remove dependencies which other tasks still depended upon.
    Fix the path names so the comparisions work as intended.
    
    This fixes dependencies accidentally disappearing from sysroots
    under certain reconfiguration situations.
    
    (From OE-Core rev: 1634fe5148b3501f2c1b75cf7fb704a2ef60424e)
    
    Signed-off-by: Richard Purdie <richard.purdie at linuxfoundation.org>
    (cherry picked from commit a6631eed6fc70b305e769998d6f22f345e37decc)
    Signed-off-by: Armin Kuster <akuster808 at gmail.com>
---
 meta/classes/staging.bbclass | 11 ++++++-----
 1 file changed, 6 insertions(+), 5 deletions(-)

diff --git a/meta/classes/staging.bbclass b/meta/classes/staging.bbclass
index 286d7b7..a90cf43 100644
--- a/meta/classes/staging.bbclass
+++ b/meta/classes/staging.bbclass
@@ -497,8 +497,8 @@ python extend_recipe_sysroot() {
             for l in f:
                 l = l.strip()
                 if l not in installed:
-                    l = depdir + "/" + l
-                    if not os.path.exists(l):
+                    fl = depdir + "/" + l
+                    if not os.path.exists(fl):
                         # Was likely already uninstalled
                         continue
                     potential.append(l)
@@ -514,11 +514,12 @@ python extend_recipe_sysroot() {
                         if l in potential:
                             potential.remove(l)
         for l in potential:
+            fl = depdir + "/" + l
             bb.note("Task %s no longer depends on %s, removing from sysroot" % (mytaskname, l))
-            lnk = os.readlink(l)
+            lnk = os.readlink(fl)
             sstate_clean_manifest(depdir + "/" + lnk, d, workdir)
-            os.unlink(l)
-            os.unlink(l + ".complete")
+            os.unlink(fl)
+            os.unlink(fl + ".complete")
 
     for dep in configuredeps:
         c = setscenedeps[dep][0]

-- 
To stop receiving notification emails like this one, please contact
the administrator of this repository.


More information about the Openembedded-commits mailing list