[Python-checkins] cpython (3.5): Issue #27229: Fix in-tree cross-build rule, by Xavier de Gaye

martin.panter python-checkins at python.org
Mon Jun 6 20:45:36 EDT 2016


https://hg.python.org/cpython/rev/619f7a2aa40a
changeset:   101769:619f7a2aa40a
branch:      3.5
parent:      101758:f5fd646b265b
user:        Martin Panter <vadmium+py at gmail.com>
date:        Tue Jun 07 00:27:17 2016 +0000
summary:
  Issue #27229: Fix in-tree cross-build rule, by Xavier de Gaye

files:
  Makefile.pre.in |  7 +++++--
  Misc/NEWS       |  3 +++
  2 files changed, 8 insertions(+), 2 deletions(-)


diff --git a/Makefile.pre.in b/Makefile.pre.in
--- a/Makefile.pre.in
+++ b/Makefile.pre.in
@@ -793,13 +793,16 @@
 	if test "$(cross_compiling)" != "yes"; then \
 		$(PGEN) $(GRAMMAR_INPUT) $(GRAMMAR_H) $(GRAMMAR_C); \
 	else \
-		cp $(srcdir)/Include/graminit.h $(GRAMMAR_H); \
+		# Avoid copying the file onto itself for an in-tree build \
+		cp $(srcdir)/Include/graminit.h $(GRAMMAR_H).tmp; \
+		mv $(GRAMMAR_H).tmp $(GRAMMAR_H); \
 	fi
 $(GRAMMAR_C): $(GRAMMAR_H)
 	if test "$(cross_compiling)" != "yes"; then \
 		touch $(GRAMMAR_C); \
 	else \
-		cp $(srcdir)/Python/graminit.c $(GRAMMAR_C); \
+		cp $(srcdir)/Python/graminit.c $(GRAMMAR_C).tmp; \
+		mv $(GRAMMAR_C).tmp $(GRAMMAR_C); \
 	fi
 
 $(PGEN): $(PGENOBJS)
diff --git a/Misc/NEWS b/Misc/NEWS
--- a/Misc/NEWS
+++ b/Misc/NEWS
@@ -581,6 +581,9 @@
   source code anyway, and is still regenerated when doing a native build.
   Patch by Xavier de Gaye.
 
+- Issue #27229: Fix the cross-compiling pgen rule for in-tree builds.  Patch
+  by Xavier de Gaye.
+
 - Issue #21668: Link audioop, _datetime, _ctypes_test modules to libm,
   except on Mac OS X. Patch written by Xavier de Gaye.
 

-- 
Repository URL: https://hg.python.org/cpython


More information about the Python-checkins mailing list