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
+ - name: Configure CPython
run: |
# Build Python with the libpython dynamic library
./configure --with-pydebug --enable-shared
+ - name: Regenerate autoconf files with container image
+ run: make regen-configure
+ - name: Build CPython
+ run: |
make -j4 regen-all
make regen-stdlib-module-names
- name: Check for changes
regen-pegen-metaparser regen-pegen regen-test-frozenmain \
regen-global-objects
@echo
- @echo "Note: make regen-stdlib-module-names and make autoconf should be run manually"
+ @echo "Note: make regen-stdlib-module-names and make regen-configure should be run manually"
############################################################################
# Special rules for object files
# Regenerate configure and pyconfig.h.in
.PHONY: autoconf
autoconf:
- # Regenerate the configure script from configure.ac using autoconf
- (cd $(srcdir); autoconf -Wall)
- # Regenerate pyconfig.h.in from configure.ac using autoheader
- (cd $(srcdir); autoheader -Wall)
+ (cd $(srcdir); autoreconf -ivf -Werror)
+
+.PHONY: regen-configure
+regen-configure:
+ @if command -v podman >/dev/null; then RUNTIME="podman"; else RUNTIME="docker"; fi; \
+ if ! command -v $$RUNTIME; then echo "$@ needs either Podman or Docker container runtime." >&2; exit 1; fi; \
+ if command -v selinuxenabled >/dev/null && selinuxenabled; then OPT=":Z"; fi; \
+ CMD="$$RUNTIME run --rm --pull=always -v $(abs_srcdir):/src$$OPT quay.io/tiran/cpython_autoconf:269"; \
+ echo $$CMD; \
+ $$CMD || exit $?
# Create a tags file for vi
tags::