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

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


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

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

commit 31d1054e8eee7a0368f1ba2ad2634891536ff566
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