diff options
Diffstat (limited to 'tools')
-rwxr-xr-x | tools/moveconfig.py | 55 |
1 files changed, 41 insertions, 14 deletions
diff --git a/tools/moveconfig.py b/tools/moveconfig.py index 5576b574a8f..87e2bb23243 100755 --- a/tools/moveconfig.py +++ b/tools/moveconfig.py @@ -122,6 +122,10 @@ Available options Surround each portion of the log with escape sequences to display it in color on the terminal. + -C, --commit + Create a git commit with the changes when the operation is complete. A + standard commit message is used which may need to be edited. + -d, --defconfigs Specify a file containing a list of defconfigs to move @@ -162,6 +166,10 @@ Available options -v, --verbose Show any build errors as boards are built + -y, --yes + Instead of prompting, automatically go ahead with all operations. This + includes cleaning up headers and CONFIG_SYS_EXTRA_OPTIONS. + To see the complete list of supported options, run $ tools/moveconfig.py -h @@ -481,14 +489,15 @@ def cleanup_headers(configs, options): configs: A list of CONFIGs to remove. options: option flags. """ - while True: - choice = raw_input('Clean up headers? [y/n]: ').lower() - print choice - if choice == 'y' or choice == 'n': - break + if not options.yes: + while True: + choice = raw_input('Clean up headers? [y/n]: ').lower() + print choice + if choice == 'y' or choice == 'n': + break - if choice == 'n': - return + if choice == 'n': + return patterns = [] for config in configs: @@ -560,14 +569,16 @@ def cleanup_extra_options(configs, options): configs: A list of CONFIGs to remove. options: option flags. """ - while True: - choice = raw_input('Clean up CONFIG_SYS_EXTRA_OPTIONS? [y/n]: ').lower() - print choice - if choice == 'y' or choice == 'n': - break + if not options.yes: + while True: + choice = (raw_input('Clean up CONFIG_SYS_EXTRA_OPTIONS? [y/n]: '). + lower()) + print choice + if choice == 'y' or choice == 'n': + break - if choice == 'n': - return + if choice == 'n': + return configs = [ config[len('CONFIG_'):] for config in configs ] @@ -1233,6 +1244,8 @@ def main(): # Add options here parser.add_option('-c', '--color', action='store_true', default=False, help='display the log in color') + parser.add_option('-C', '--commit', action='store_true', default=False, + help='Create a git commit for the operation') parser.add_option('-d', '--defconfigs', type='string', help='a file containing a list of defconfigs to move') parser.add_option('-n', '--dry-run', action='store_true', default=False, @@ -1251,6 +1264,8 @@ def main(): help='the number of jobs to run simultaneously') parser.add_option('-r', '--git-ref', type='string', help='the git ref to clone for building the autoconf.mk') + parser.add_option('-y', '--yes', action='store_true', default=False, + help="respond 'yes' to any prompts") parser.add_option('-v', '--verbose', action='store_true', default=False, help='show any build errors as boards are built') parser.usage += ' CONFIG ...' @@ -1276,5 +1291,17 @@ def main(): cleanup_headers(configs, options) cleanup_extra_options(configs, options) + if options.commit: + subprocess.call(['git', 'add', '-u']) + if configs: + msg = 'Convert %s %sto Kconfig' % (configs[0], + 'et al ' if len(configs) > 1 else '') + msg += ('\n\nThis converts the following to Kconfig:\n %s\n' % + '\n '.join(configs)) + else: + msg = 'configs: Resync with savedefconfig' + msg += '\n\nRsync all defconfig files using moveconfig.py' + subprocess.call(['git', 'commit', '-s', '-m', msg]) + if __name__ == '__main__': main() |