Add gcc-backport and support git cherry pick.
* gcc-changelog/git_commit.py: Support cherry pick prefix. * gcc-changelog/test_email.py: Test it. * gcc-changelog/test_patches.txt: Add new patch. * gcc-git-customization.sh: Add gcc-backport.
This commit is contained in:
parent
4a88caf21a
commit
713890935d
5 changed files with 45 additions and 0 deletions
|
@ -1,3 +1,11 @@
|
|||
2020-05-20 Martin Liska <mliska@suse.cz>
|
||||
|
||||
* gcc-changelog/git_commit.py: Support cherry pick
|
||||
prefix.
|
||||
* gcc-changelog/test_email.py: Test it.
|
||||
* gcc-changelog/test_patches.txt: Add new patch.
|
||||
* gcc-git-customization.sh: Add gcc-backport.
|
||||
|
||||
2020-05-19 Martin Liska <mliska@suse.cz>
|
||||
|
||||
* mklog.py: Use REST API for bug title downloading.
|
||||
|
|
|
@ -150,6 +150,7 @@ star_prefix_regex = re.compile(r'\t\*(?P<spaces>\ *)(?P<content>.*)')
|
|||
LINE_LIMIT = 100
|
||||
TAB_WIDTH = 8
|
||||
CO_AUTHORED_BY_PREFIX = 'co-authored-by: '
|
||||
CHERRY_PICK_PREFIX = '(cherry picked from commit '
|
||||
|
||||
|
||||
class Error:
|
||||
|
@ -349,6 +350,8 @@ class GitCommit:
|
|||
author = self.format_git_author(name)
|
||||
self.co_authors.append(author)
|
||||
continue
|
||||
elif line.startswith(CHERRY_PICK_PREFIX):
|
||||
continue
|
||||
|
||||
# ChangeLog name will be deduced later
|
||||
if not last_entry:
|
||||
|
|
|
@ -258,3 +258,7 @@ class TestGccChangelog(unittest.TestCase):
|
|||
email = self.from_patch_glob('0020-IPA-Avoid')
|
||||
assert (email.errors[0].message
|
||||
== 'first line should start with a tab, asterisk and space')
|
||||
|
||||
def test_cherry_pick_format(self):
|
||||
email = self.from_patch_glob('0001-c-Alias.patch')
|
||||
assert not email.errors
|
||||
|
|
|
@ -2382,3 +2382,32 @@ index 00000000000..66c87d48694
|
|||
--
|
||||
2.26.1
|
||||
|
||||
=== 0001-c-Alias.patch ===
|
||||
From 3f1a149fc35cdba988464562e2fb824b10652d6b Mon Sep 17 00:00:00 2001
|
||||
From: Nathan Sidwell <nathan@acm.org>
|
||||
Date: Tue, 19 May 2020 13:29:19 -0700
|
||||
Subject: [PATCH] c++: Alias template instantiation template info
|
||||
|
||||
I discovered that the alias instantiation machinery would setup
|
||||
template_info, and then sometime later overwrite that with equivalent
|
||||
info. This broke modules, because the template info, once set, is
|
||||
logically immutable. Let's just not do that.
|
||||
|
||||
* pt.c (lookup_template_class_1): Do not reinit template_info of an
|
||||
alias here.
|
||||
|
||||
(cherry picked from commit 74744bb1f2847b5b9ce3e97e0fec9c23bb0e499f)
|
||||
---
|
||||
gcc/cp/pt.c | 17 +++++++++++++++--
|
||||
1 file changed, 15 insertions(+), 2 deletions(-)
|
||||
|
||||
diff --git a/gcc/cp/pt.c b/gcc/cp/pt.c
|
||||
index b8f03d18541..7230ac724ba 100644
|
||||
--- a/gcc/cp/pt.c
|
||||
+++ b/gcc/cp/pt.c
|
||||
@@ -1 +1,2 @@
|
||||
|
||||
+
|
||||
--
|
||||
2.26.2
|
||||
|
||||
|
|
|
@ -26,6 +26,7 @@ git config alias.gcc-descr \!"f() { if test \${1:-no} = --full; then c=\${2:-mas
|
|||
git config alias.gcc-undescr \!"f() { o=\$(git config --get gcc-config.upstream); r=\$(echo \$1 | sed -n 's,^r\\([0-9]\\+\\)-[0-9]\\+\$,\\1,p'); n=\$(echo \$1 | sed -n 's,^r[0-9]\\+-\\([0-9]\\+\\)\$,\\1,p'); test -z \$r && echo Invalid id \$1 && exit 1; h=\$(git rev-parse --verify --quiet \${o:-origin}/releases/gcc-\$r); test -z \$h && h=\$(git rev-parse --verify --quiet \${o:-origin}/master); p=\$(git describe --all --match 'basepoints/gcc-'\$r \$h | sed -n 's,^\\(tags/\\)\\?basepoints/gcc-[0-9]\\+-\\([0-9]\\+\\)-g[0-9a-f]*\$,\\2,p;s,^\\(tags/\\)\\?basepoints/gcc-[0-9]\\+\$,0,p'); git rev-parse --verify \$h~\$(expr \$p - \$n); }; f"
|
||||
|
||||
git config alias.gcc-verify '!f() { "`git rev-parse --show-toplevel`/contrib/gcc-changelog/git_check_commit.py" $@; } ; f'
|
||||
git config alias.gcc-backport '!f() { rev=$1; git cherry-pick -x $@; } ; f'
|
||||
|
||||
git config alias.gcc-mklog '!f() { "`git rev-parse --show-toplevel`/contrib/mklog.py" $@; } ; f'
|
||||
|
||||
|
|
Loading…
Add table
Reference in a new issue