[U-Boot] [PATCH 19/21] tools: moveconfig: report when defconfig is	updated
    Masahiro Yamada 
    yamada.masahiro at socionext.com
       
    Thu May 19 08:52:07 CEST 2016
    
    
  
There are various factors that determine if the given defconfig is
updated, and it is probably what users are more interested in.
Show the log when the defconfig is updated.  Also, copy the file
only when the file content was really updated to avoid changing
the time stamp needlessly.
Signed-off-by: Masahiro Yamada <yamada.masahiro at socionext.com>
---
 tools/moveconfig.py | 14 +++++++++++---
 1 file changed, 11 insertions(+), 3 deletions(-)
diff --git a/tools/moveconfig.py b/tools/moveconfig.py
index 9c73b30..65cc5b3 100755
--- a/tools/moveconfig.py
+++ b/tools/moveconfig.py
@@ -172,6 +172,7 @@ To see the complete list of supported options, run
 
 """
 
+import filecmp
 import fnmatch
 import multiprocessing
 import optparse
@@ -717,9 +718,16 @@ class Slot:
 
         if self.state == STATE_SAVEDEFCONFIG:
             self.log += self.parser.check_defconfig()
-            if not self.options.dry_run:
-                shutil.move(os.path.join(self.build_dir, 'defconfig'),
-                            os.path.join('configs', self.defconfig))
+            orig_defconfig = os.path.join('configs', self.defconfig)
+            new_defconfig = os.path.join(self.build_dir, 'defconfig')
+            updated = not filecmp.cmp(orig_defconfig, new_defconfig)
+
+            if updated:
+                self.log += color_text(self.options.color, COLOR_LIGHT_GREEN,
+                                       "defconfig was updated.\n")
+
+            if not self.options.dry_run and updated:
+                shutil.move(new_defconfig, orig_defconfig)
             self.finish(True)
             return True
 
-- 
1.9.1
    
    
More information about the U-Boot
mailing list