[Python-checkins] bpo-45886: Fix OOT build when srcdir has frozen module headers (GH-29793)
tiran
webhook-mailer at python.org
Fri Nov 26 11:05:25 EST 2021
https://github.com/python/cpython/commit/765b2a3ad2e8abf9a06d5e9b3802b575ec115d76
commit: 765b2a3ad2e8abf9a06d5e9b3802b575ec115d76
branch: main
author: Christian Heimes <christian at python.org>
committer: tiran <christian at python.org>
date: 2021-11-26T17:05:16+01:00
summary:
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.
files:
M .gitignore
M Makefile.pre.in
diff --git a/.gitignore b/.gitignore
index cfd3163cd1818..0363244bdaf63 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 75d3bce946f42..fc8ab99babcdb 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
More information about the Python-checkins
mailing list