From: Masahiro Yamada Date: Thu, 19 May 2016 06:52:07 +0000 (+0900) Subject: tools: moveconfig: report when defconfig is updated X-Git-Tag: v2016.07-rc2~42^2~9 X-Git-Url: https://git.sur5r.net/?a=commitdiff_plain;h=c8e1b10d07b1dbbf3cbf882ac270476b964d05ff;p=u-boot tools: moveconfig: report when defconfig is updated 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 Reviewed-by: Joe Hershberger --- diff --git a/tools/moveconfig.py b/tools/moveconfig.py index 4881ec539b..a8531f1e51 100755 --- a/tools/moveconfig.py +++ b/tools/moveconfig.py @@ -147,6 +147,7 @@ To see the complete list of supported options, run """ +import filecmp import fnmatch import multiprocessing import optparse @@ -685,9 +686,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