From: Martin Liska Date: Fri, 22 Jul 2022 09:26:08 +0000 (+0200) Subject: Allow space in git commit-mklog args X-Git-Tag: basepoints/gcc-14~5409 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=18ef76d3a1701c4dd7ab38ebda5c374b6bc13041;p=thirdparty%2Fgcc.git Allow space in git commit-mklog args contrib/ChangeLog: * git-commit-mklog.py: Do not parse -b argument. Pass mklog_args as json environment variable. * mklog.py: Parse GCC_MKLOG_ARGS and append it to sys.argv. * prepare-commit-msg: Do not append GCC_MKLOG_ARGS to args. --- diff --git a/contrib/git-commit-mklog.py b/contrib/git-commit-mklog.py index eda3fc4a892..c7e90c8262f 100755 --- a/contrib/git-commit-mklog.py +++ b/contrib/git-commit-mklog.py @@ -24,6 +24,7 @@ # to mklog.py script. import argparse +import json import os import subprocess @@ -32,8 +33,7 @@ if __name__ == '__main__': myenv = os.environ.copy() parser = argparse.ArgumentParser(description='git-commit-mklog wrapped') - parser.add_argument('-b', '--pr-numbers', action='store', - type=lambda arg: arg.split(','), nargs='?', + parser.add_argument('-b', '--pr-numbers', help='Add the specified PRs (comma separated)') parser.add_argument('-p', '--fill-up-bug-titles', action='store_true', help='Download title of mentioned PRs') @@ -44,12 +44,13 @@ if __name__ == '__main__': myenv['GCC_FORCE_MKLOG'] = '1' mklog_args = [] if args.pr_numbers: - mklog_args.append(f'-b {",".join(args.pr_numbers)}') + mklog_args += ['-b', args.pr_numbers] if args.fill_up_bug_titles: mklog_args.append('-p') if mklog_args: - myenv['GCC_MKLOG_ARGS'] = ' '.join(mklog_args) + # wrap mklog arguments with JSON + myenv['GCC_MKLOG_ARGS'] = json.dumps(mklog_args) if args.co: for author in args.co.split(','): diff --git a/contrib/mklog.py b/contrib/mklog.py index 8693767a7f6..91c0dcd8864 100755 --- a/contrib/mklog.py +++ b/contrib/mklog.py @@ -28,6 +28,7 @@ import argparse import datetime +import json import os import re import subprocess @@ -332,6 +333,10 @@ def skip_line_in_changelog(line): if __name__ == '__main__': + extra_args = os.getenv('GCC_MKLOG_ARGS') + if extra_args: + sys.argv += json.loads(extra_args) + parser = argparse.ArgumentParser(description=help_message) parser.add_argument('input', nargs='?', help='Patch file (or missing, read standard input)') diff --git a/contrib/prepare-commit-msg b/contrib/prepare-commit-msg index 5da878458cd..969847df6f4 100755 --- a/contrib/prepare-commit-msg +++ b/contrib/prepare-commit-msg @@ -78,4 +78,4 @@ else tee="cat" fi -git $cmd | $tee | git gcc-mklog $GCC_MKLOG_ARGS -c "$COMMIT_MSG_FILE" +git $cmd | $tee | git gcc-mklog -c "$COMMIT_MSG_FILE"