gcc-changelog: fix deduction for root ChangeLog
authorMartin Liska <mliska@suse.cz>
Tue, 9 Jun 2020 08:01:05 +0000 (10:01 +0200)
committerMartin Liska <mliska@suse.cz>
Tue, 9 Jun 2020 08:01:52 +0000 (10:01 +0200)
contrib/ChangeLog:

* gcc-changelog/git_commit.py: Fix ChangeLog regex in order to
match the top-level ChangeLog.
* gcc-changelog/test_email.py: Add test.
* gcc-changelog/test_patches.txt: Likewise.

contrib/gcc-changelog/git_commit.py
contrib/gcc-changelog/test_email.py
contrib/gcc-changelog/test_patches.txt

index 069900d7cbff6375a64de18885a66f03a3664b16..f85d4c83c63f772072519e681903164a477c9fd3 100755 (executable)
@@ -150,7 +150,7 @@ misc_files = [
 author_line_regex = \
         re.compile(r'^(?P<datetime>\d{4}-\d{2}-\d{2})\ {2}(?P<name>.*  <.*>)')
 additional_author_regex = re.compile(r'^\t(?P<spaces>\ *)?(?P<name>.*  <.*>)')
-changelog_regex = re.compile(r'^(?:[fF]or +)?([a-z0-9+-/]*)/ChangeLog:?')
+changelog_regex = re.compile(r'^(?:[fF]or +)?([a-z0-9+-/]*)ChangeLog:?')
 pr_regex = re.compile(r'\tPR (?P<component>[a-z+-]+\/)?([0-9]+)$')
 dr_regex = re.compile(r'\tDR ([0-9]+)$')
 star_prefix_regex = re.compile(r'\t\*(?P<spaces>\ *)(?P<content>.*)')
@@ -359,7 +359,8 @@ class GitCommit:
                                          % LINE_LIMIT, line))
             m = changelog_regex.match(line)
             if m:
-                last_entry = ChangeLogEntry(m.group(1), self.top_level_authors,
+                last_entry = ChangeLogEntry(m.group(1).rstrip('/'),
+                                            self.top_level_authors,
                                             self.top_level_prs)
                 self.changelog_entries.append(last_entry)
             elif self.find_changelog_location(line):
index 7e8140c915f2961cb5e590e4f153ebfe7e4f39ab..04ddad3f100578e92b4e1ed0d1d3b6bd8b507ba9 100755 (executable)
@@ -331,3 +331,8 @@ class TestGccChangelog(unittest.TestCase):
         assert len(email.errors) == 1
         msg = 'changed file not mentioned in a ChangeLog'
         assert email.errors[0].message == msg
+
+    def test_not_deduce(self):
+        email = self.from_patch_glob('0001-configure.patch')
+        assert not email.errors
+        assert len(email.changelog_entries) == 2
index 5d9b62d26373cd587e44e88476ab174c382f3081..15fe0df1ccc0ad2b13e5a42999a78888b48d249b 100644 (file)
@@ -3058,4 +3058,72 @@ index 967e5f5f348..95d21b5bf9f 100644
 +
 -- 
 2.25.4
+=== 0001-configure.patch ===
+From dbe341cf6a77bb28c5fdf8b32dcb0ff1c2a27348 Mon Sep 17 00:00:00 2001
+From: Martin Liska <mliska@suse.cz>
+Date: Tue, 9 Jun 2020 09:39:36 +0200
+Subject: [PATCH] c++: Fix --disable-bootstrap with older g++.
+
+Previously I had AX_CXX_COMPILE_STDCXX in the gcc directory configure, which
+added -std=c++11 to CXX if needed, but then CXX is overridden from the
+toplevel directory, so it didn't have the desired effect.  Fixed by moving
+the check to the toplevel.  Currently it is only used when building GCC
+without bootstrapping; other packages that share the toplevel directory
+can adjust the condition if they also want to require C++11 support.
 
+ChangeLog:
+
+       * configure.ac: Check AX_CXX_COMPILE_STDCXX if not bootstrapping.
+       * configure: Regenerate.
+
+gcc/ChangeLog:
+
+       * aclocal.m4: Remove ax_cxx_compile_stdcxx.m4.
+       * configure.ac: Remove AX_CXX_COMPILE_STDCXX.
+       * configure: Regenerate.
+
+---
+ configure        | 999 ++++++++++++++++++++++++++++++++++++++++++++++-
+ configure.ac     |   6 +-
+ gcc/aclocal.m4   |   1 -
+ gcc/configure    | 997 +---------------------------------------------
+ gcc/configure.ac |   2 -
+ 5 files changed, 1004 insertions(+), 1001 deletions(-)
+
+diff --git a/configure b/configure
+index b7897446c70..a0c5aca9e8d 100755
+--- a/configure
++++ b/configure
+@@ -1 +1,2 @@
++
+diff --git a/configure.ac b/configure.ac
+index 59bd92a3e53..1a53ed418e4 100644
+--- a/configure.ac
++++ b/configure.ac
+@@ -1 +1,2 @@
++
+diff --git a/gcc/aclocal.m4 b/gcc/aclocal.m4
+index e93c1535063..1737d59d1cb 100644
+--- a/gcc/aclocal.m4
++++ b/gcc/aclocal.m4
+@@ -1 +1,2 @@
++
+diff --git a/gcc/configure b/gcc/configure
+index 46850710424..629c7c7e153 100755
+--- a/gcc/configure
++++ b/gcc/configure
+@@ -1 +1,2 @@
++
+diff --git a/gcc/configure.ac b/gcc/configure.ac
+index 60d83c30771..9e7efd13ecc 100644
+--- a/gcc/configure.ac
++++ b/gcc/configure.ac
+@@ -1 +1,2 @@
++
+-- 
+2.26.2