[Python-checkins] [3.10] bpo-44035: Check autoconf files thoroughly (GH-29935) (GH-29937)

tiran webhook-mailer at python.org
Mon Dec 6 07:47:51 EST 2021


https://github.com/python/cpython/commit/1528d249a5f8492801d09755f402618688337006
commit: 1528d249a5f8492801d09755f402618688337006
branch: 3.10
author: Miss Islington (bot) <31488909+miss-islington at users.noreply.github.com>
committer: tiran <christian at python.org>
date: 2021-12-06T13:47:42+01:00
summary:

[3.10] bpo-44035: Check autoconf files thoroughly (GH-29935) (GH-29937)

Co-authored-by: Christian Heimes <christian at python.org>

files:
A Misc/NEWS.d/next/Build/2021-12-06-09-31-27.bpo-44035.BiO4XC.rst
M .github/workflows/build.yml
M .gitignore

diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml
index 01b75aedafed5..c91fcc6d05fdb 100644
--- a/.github/workflows/build.yml
+++ b/.github/workflows/build.yml
@@ -85,6 +85,18 @@ jobs:
       - uses: actions/setup-python at v2
       - name: Install Dependencies
         run: sudo ./.github/workflows/posix-deps-apt.sh
+      - name: Add ccache to PATH
+        run: echo "PATH=/usr/lib/ccache:$PATH" >> $GITHUB_ENV
+      - name: Configure ccache action
+        uses: hendrikmuhs/ccache-action at v1
+      - name: Check Autoconf version 2.69 and aclocal 1.16.3
+        run: |
+          grep "Generated by GNU Autoconf 2.69" configure
+          grep "aclocal 1.16.3" aclocal.m4
+          grep -q "runstatedir" configure
+          grep -q "PKG_PROG_PKG_CONFIG" aclocal.m4
+      - name: Regenerate autoconf files
+        run: docker run --rm -v $(pwd):/src quay.io/tiran/cpython_autoconf:269
       - name: Build CPython
         run: |
           # Build Python with the libpython dynamic library
@@ -95,9 +107,10 @@ jobs:
         run: |
           changes=$(git status --porcelain)
           # Check for changes in regenerated files
-          if ! test -z "$changes"
-          then
-            echo "Generated files not up to date. Perhaps you forgot to run make regen-all or build.bat --regen ;)"
+          if test -n "$changes"; then
+            echo "Generated files not up to date."
+            echo "Perhaps you forgot to run make regen-all or build.bat --regen. ;)"
+            echo "configure files must be regenerated with a specific, unpatched version of autoconf."
             echo "$changes"
             exit 1
           fi
@@ -105,10 +118,6 @@ jobs:
         run: make smelly
       - name: Check limited ABI symbols
         run: make check-limited-abi
-      - name: Check Autoconf version 2.69
-        run: |
-          grep "Generated by GNU Autoconf 2.69" configure
-          grep "PKG_PROG_PKG_CONFIG" aclocal.m4
 
   build_win32:
     name: 'Windows (x86)'
diff --git a/.gitignore b/.gitignore
index 19b4214a9aea0..09d08c8050cb2 100644
--- a/.gitignore
+++ b/.gitignore
@@ -112,6 +112,8 @@ Tools/unicode/data/
 /config.log
 /config.status
 /config.status.lineno
+# hendrikmuhs/ccache-action at v1
+/.ccache
 /platform
 /profile-clean-stamp
 /profile-run-stamp
diff --git a/Misc/NEWS.d/next/Build/2021-12-06-09-31-27.bpo-44035.BiO4XC.rst b/Misc/NEWS.d/next/Build/2021-12-06-09-31-27.bpo-44035.BiO4XC.rst
new file mode 100644
index 0000000000000..7530587b73d14
--- /dev/null
+++ b/Misc/NEWS.d/next/Build/2021-12-06-09-31-27.bpo-44035.BiO4XC.rst
@@ -0,0 +1,2 @@
+CI now verifies that autoconf files have been regenerated with a current and
+unpatched autoconf package.



More information about the Python-checkins mailing list