[Python-checkins] cpython (2.7): Issue #27490: Do not build pgen when cross-compiling

martin.panter python-checkins at python.org
Thu Jul 28 00:20:02 EDT 2016


https://hg.python.org/cpython/rev/ec27886f675f
changeset:   102470:ec27886f675f
branch:      2.7
parent:      102462:7d692840c152
user:        Martin Panter <vadmium+py at gmail.com>
date:        Thu Jul 28 01:28:27 2016 +0000
summary:
  Issue #27490: Do not build pgen when cross-compiling

The dependendency on the $(PGEN) variable must only be
set when not cross-compiling. When cross-compiling,
$(PGEN) will not be used, so no need to build it.

Patch by Thomas Perl.

files:
  Makefile.pre.in |  2 +-
  Misc/ACKS       |  1 +
  Misc/NEWS       |  3 +++
  configure       |  6 +++++-
  configure.ac    |  3 +++
  5 files changed, 13 insertions(+), 2 deletions(-)


diff --git a/Makefile.pre.in b/Makefile.pre.in
--- a/Makefile.pre.in
+++ b/Makefile.pre.in
@@ -680,7 +680,7 @@
 
 Modules/pwdmodule.o: $(srcdir)/Modules/pwdmodule.c $(srcdir)/Modules/posixmodule.h
 
-$(GRAMMAR_H): $(GRAMMAR_INPUT) $(PGEN)
+$(GRAMMAR_H): $(GRAMMAR_INPUT) @PGEN_DEPENDENCY@
 	@$(MKDIR_P) Include
 	# Avoid copying the file onto itself for an in-tree build
 	if test "$(cross_compiling)" != "yes"; then \
diff --git a/Misc/ACKS b/Misc/ACKS
--- a/Misc/ACKS
+++ b/Misc/ACKS
@@ -1056,6 +1056,7 @@
 Bo Peng
 Santiago Peresón
 George Peristerakis
+Thomas Perl
 Mathieu Perreault
 Mark Perrego
 Trevor Perrin
diff --git a/Misc/NEWS b/Misc/NEWS
--- a/Misc/NEWS
+++ b/Misc/NEWS
@@ -90,6 +90,9 @@
 Build
 -----
 
+- Issue #27490: Do not build pgen when cross-compiling.  Patch by Thomas
+  Perl.
+
 - Issue #26930: Update Windows builds to use OpenSSL 1.0.2h.
 
 IDLE
diff --git a/configure b/configure
--- a/configure
+++ b/configure
@@ -735,6 +735,7 @@
 CONFIG_ARGS
 SOVERSION
 VERSION
+PGEN_DEPENDENCY
 PYTHON_FOR_BUILD
 host_os
 host_vendor
@@ -2924,11 +2925,14 @@
 $as_echo "$interp" >&6; }
 	PYTHON_FOR_BUILD='_PYTHON_PROJECT_BASE=$(abs_builddir) _PYTHON_HOST_PLATFORM=$(_PYTHON_HOST_PLATFORM) PYTHONPATH=$(shell test -f pybuilddir.txt && echo $(abs_builddir)/`cat pybuilddir.txt`:)$(srcdir)/Lib:$(srcdir)/Lib/$(PLATDIR) '$interp
     fi
+    PGEN_DEPENDENCY=''
 elif test "$cross_compiling" = maybe; then
     as_fn_error $? "Cross compiling required --host=HOST-TUPLE and --build=ARCH" "$LINENO" 5
 else
     PYTHON_FOR_BUILD='./$(BUILDPYTHON) -E'
-fi
+    PGEN_DEPENDENCY='$(PGEN)'
+fi
+
 
 
 
diff --git a/configure.ac b/configure.ac
--- a/configure.ac
+++ b/configure.ac
@@ -36,12 +36,15 @@
         AC_MSG_RESULT($interp)
 	PYTHON_FOR_BUILD='_PYTHON_PROJECT_BASE=$(abs_builddir) _PYTHON_HOST_PLATFORM=$(_PYTHON_HOST_PLATFORM) PYTHONPATH=$(shell test -f pybuilddir.txt && echo $(abs_builddir)/`cat pybuilddir.txt`:)$(srcdir)/Lib:$(srcdir)/Lib/$(PLATDIR) '$interp
     fi
+    PGEN_DEPENDENCY=''
 elif test "$cross_compiling" = maybe; then
     AC_MSG_ERROR([Cross compiling required --host=HOST-TUPLE and --build=ARCH])
 else
     PYTHON_FOR_BUILD='./$(BUILDPYTHON) -E'
+    PGEN_DEPENDENCY='$(PGEN)'
 fi
 AC_SUBST(PYTHON_FOR_BUILD)
+AC_SUBST(PGEN_DEPENDENCY)
 
 dnl Ensure that if prefix is specified, it does not end in a slash. If
 dnl it does, we get path names containing '//' which is both ugly and

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


More information about the Python-checkins mailing list