summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorChristian Heimes <christian@python.org>2021-11-26 18:05:16 +0200
committerGitHub <noreply@github.com>2021-11-26 17:05:16 +0100
commit765b2a3ad2e8abf9a06d5e9b3802b575ec115d76 (patch)
treec8175db8241f35ee5fd46e9dc1fc65d050937334
parent8caceb7a474bf32cddfd25fba25b531ff65f4365 (diff)
downloadcpython-git-765b2a3ad2e8abf9a06d5e9b3802b575ec115d76.tar.gz
bpo-45886: Fix OOT build when srcdir has frozen module headers (GH-29793)
The presence of frozen module headers in srcdir interfers with OOT build. Make considers headers in srcdir up to date, but later builds do not use VPATH to locate files. make clean now removes the headers, too. Also remove stale ``_bootstrap_python`` from .gitignore.
-rw-r--r--.gitignore1
-rw-r--r--Makefile.pre.in9
2 files changed, 6 insertions, 4 deletions
diff --git a/.gitignore b/.gitignore
index cfd3163cd1..0363244bda 100644
--- a/.gitignore
+++ b/.gitignore
@@ -60,7 +60,6 @@ Lib/distutils/command/*.pdb
Lib/lib2to3/*.pickle
Lib/test/data/*
!Lib/test/data/README
-/_bootstrap_python
/Makefile
/Makefile.pre
Mac/Makefile
diff --git a/Makefile.pre.in b/Makefile.pre.in
index 75d3bce946..fc8ab99bab 100644
--- a/Makefile.pre.in
+++ b/Makefile.pre.in
@@ -587,7 +587,10 @@ build_all: check-clean-src $(BUILDPYTHON) oldsharedmods sharedmods gdbhooks \
# Check that the source is clean when building out of source.
check-clean-src:
- @if test -n "$(VPATH)" -a -f "$(srcdir)/Programs/python.o"; then \
+ @if test -n "$(VPATH)" -a \( \
+ -f "$(srcdir)/Programs/python.o" \
+ -o -f "$(srcdir)\Python/frozen_modules/importlib._bootstrap.h" \
+ \); then \
echo "Error: The source directory ($(srcdir)) is not clean" ; \
echo "Building Python out of the source tree (in $(abs_builddir)) requires a clean source tree ($(abs_srcdir))" ; \
echo "Try to run: make -C \"$(srcdir)\" clean" ; \
@@ -2293,6 +2296,8 @@ clean-retain-profile: pycremoval
-rm -f Lib/lib2to3/*Grammar*.pickle
-rm -f Programs/_testembed Programs/_freeze_module
-rm -f Python/deepfreeze/*.[co]
+ -rm -f Python/frozen_modules/*.h
+ -rm -f Python/frozen_modules/MANIFEST
-find build -type f -a ! -name '*.gc??' -exec rm -f {} ';'
-rm -f Include/pydtrace_probes.h
-rm -f profile-gen-stamp
@@ -2330,8 +2335,6 @@ distclean: clobber
Modules/Setup.stdlib Modules/ld_so_aix Modules/python.exp Misc/python.pc \
Misc/python-embed.pc Misc/python-config.sh
-rm -f python*-gdb.py
- -rm -f Python/frozen_modules/*.h
- -rm -f Python/frozen_modules/MANIFEST
# Issue #28258: set LC_ALL to avoid issues with Estonian locale.
# Expansion is performed here by shell (spawned by make) itself before
# arguments are passed to find. So LC_ALL=C must be set as a separate