[gnome-continuous-yocto/gnomeostree-3.28-rocko: 488/8267] devtool: upgrade: handle upgrading recipes with a versioned inc file



commit ab227452c79eda9a30c1461a2b611b2453e0c650
Author: Paul Eggleton <paul eggleton linux intel com>
Date:   Tue May 24 16:18:50 2016 +1200

    devtool: upgrade: handle upgrading recipes with a versioned inc file
    
    The gdb recipe in OE-Core has an inc file with the version in it;
    since the inc file is pulled in with a "require ${PV}.inc", when
    upgrading the recipe we need to also rename the inc file it will fail to
    parse and the upgrade itself will fail.
    
    Fixes [YOCTO #9574].
    
    (From OE-Core rev: 3c623aac9333d20a62475279c72b6b6ec3d7dd6b)
    
    Signed-off-by: Paul Eggleton <paul eggleton linux intel com>
    Signed-off-by: Richard Purdie <richard purdie linuxfoundation org>

 scripts/lib/devtool/upgrade.py |    8 ++++++++
 1 files changed, 8 insertions(+), 0 deletions(-)
---
diff --git a/scripts/lib/devtool/upgrade.py b/scripts/lib/devtool/upgrade.py
index a085f78..e34234a 100644
--- a/scripts/lib/devtool/upgrade.py
+++ b/scripts/lib/devtool/upgrade.py
@@ -77,11 +77,19 @@ def _recipe_contains(rd, var):
 
 def _rename_recipe_dirs(oldpv, newpv, path):
     for root, dirs, files in os.walk(path):
+        # Rename directories with the version in their name
         for olddir in dirs:
             if olddir.find(oldpv) != -1:
                 newdir = olddir.replace(oldpv, newpv)
                 if olddir != newdir:
                     shutil.move(os.path.join(path, olddir), os.path.join(path, newdir))
+        # Rename any inc files with the version in their name (unusual, but possible)
+        for oldfile in files:
+            if oldfile.endswith('.inc'):
+                if oldfile.find(oldpv) != -1:
+                    newfile = oldfile.replace(oldpv, newpv)
+                    if oldfile != newfile:
+                        os.rename(os.path.join(path, oldfile), os.path.join(path, newfile))
 
 def _rename_recipe_file(oldrecipe, bpn, oldpv, newpv, path):
     oldrecipe = os.path.basename(oldrecipe)


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