Skip to content

Commit 300d315

Browse files
authored
[3.9] gh-112160: Add 'regen-configure' make target (#112164)
Add 'regen-configure' make target
1 parent 08b640e commit 300d315

File tree

2 files changed

+17
-1
lines changed

2 files changed

+17
-1
lines changed

.github/workflows/build.yml

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -93,8 +93,12 @@ jobs:
9393
grep "aclocal 1.16.3" aclocal.m4
9494
grep -q "runstatedir" configure
9595
grep -q "PKG_PROG_PKG_CONFIG" aclocal.m4
96+
- name: Configure CPython
97+
run: |
98+
# Build Python with the libpython dynamic library
99+
./configure --config-cache --with-pydebug --enable-shared
96100
- name: Regenerate autoconf files
97-
run: docker run --rm -v $(pwd):/src quay.io/tiran/cpython_autoconf:269
101+
run: make regen-configure
98102
- name: Build CPython
99103
run: |
100104
./configure --with-pydebug

Makefile.pre.in

Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1815,6 +1815,18 @@ autoconf:
18151815
# Regenerate pyconfig.h.in from configure.ac using autoheader
18161816
(cd $(srcdir); autoheader -Wall)
18171817

1818+
# See https://github.com/tiran/cpython_autoconf container
1819+
.PHONY: regen-configure
1820+
regen-configure:
1821+
@if command -v podman >/dev/null; then RUNTIME="podman"; else RUNTIME="docker"; fi; \
1822+
if ! command -v $$RUNTIME; then echo "$@ needs either Podman or Docker container runtime." >&2; exit 1; fi; \
1823+
if command -v selinuxenabled >/dev/null && selinuxenabled; then OPT=":Z"; fi; \
1824+
# Manifest corresponds with tag '269' \
1825+
CPYTHON_AUTOCONF_MANIFEST="sha256:f370fee95eefa3d57b00488bce4911635411fa83e2d293ced8cf8a3674ead939" \
1826+
CMD="$$RUNTIME run --rm --pull=missing -v $(abs_srcdir):/src$$OPT quay.io/tiran/cpython_autoconf@$$CPYTHON_AUTOCONF_MANIFEST"; \
1827+
echo $$CMD; \
1828+
$$CMD || exit $?
1829+
18181830
# Create a tags file for vi
18191831
tags::
18201832
ctags -w $(srcdir)/Include/*.h $(srcdir)/Include/cpython/*.h $(srcdir)/Include/internal/*.h

0 commit comments

Comments
 (0)