Issue #22359: Disable running cross-compiled _freeze_importlib and pgen

Patch by Xavier de Gaye.
This commit is contained in:
Martin Panter 2016-04-23 00:58:44 +00:00
parent 19620c57d7
commit 1046d5c653
4 changed files with 27 additions and 7 deletions

View file

@ -221,6 +221,7 @@ LIBOBJS= @LIBOBJS@
PYTHON= python$(EXE)
BUILDPYTHON= python$(BUILDEXE)
cross_compiling=@cross_compiling@
PYTHON_FOR_BUILD=@PYTHON_FOR_BUILD@
_PYTHON_HOST_PLATFORM=@_PYTHON_HOST_PLATFORM@
BUILD_GNU_TYPE= @build@
@ -718,12 +719,16 @@ Programs/_freeze_importlib: Programs/_freeze_importlib.o $(LIBRARY_OBJS_OMIT_FRO
$(LINKCC) $(PY_LDFLAGS) -o $@ Programs/_freeze_importlib.o $(LIBRARY_OBJS_OMIT_FROZEN) $(LIBS) $(MODLIBS) $(SYSLIBS) $(LDLAST)
Python/importlib_external.h: $(srcdir)/Lib/importlib/_bootstrap_external.py Programs/_freeze_importlib
./Programs/_freeze_importlib \
$(srcdir)/Lib/importlib/_bootstrap_external.py Python/importlib_external.h
if test "$(cross_compiling)" != "yes"; then \
./Programs/_freeze_importlib \
$(srcdir)/Lib/importlib/_bootstrap_external.py Python/importlib_external.h; \
fi
Python/importlib.h: $(srcdir)/Lib/importlib/_bootstrap.py Programs/_freeze_importlib
./Programs/_freeze_importlib \
$(srcdir)/Lib/importlib/_bootstrap.py Python/importlib.h
if test "$(cross_compiling)" != "yes"; then \
./Programs/_freeze_importlib \
$(srcdir)/Lib/importlib/_bootstrap.py Python/importlib.h; \
fi
############################################################################
@ -784,10 +789,18 @@ Python/sysmodule.o: $(srcdir)/Python/sysmodule.c Makefile
$(IO_OBJS): $(IO_H)
$(GRAMMAR_H): $(GRAMMAR_INPUT) $(PGEN)
@$(MKDIR_P) Include
$(PGEN) $(GRAMMAR_INPUT) $(GRAMMAR_H) $(GRAMMAR_C)
@$(MKDIR_P) Include
if test "$(cross_compiling)" != "yes"; then \
$(PGEN) $(GRAMMAR_INPUT) $(GRAMMAR_H) $(GRAMMAR_C); \
else \
cp $(srcdir)/Include/graminit.h $(GRAMMAR_H); \
fi
$(GRAMMAR_C): $(GRAMMAR_H)
touch $(GRAMMAR_C)
if test "$(cross_compiling)" != "yes"; then \
touch $(GRAMMAR_C); \
else \
cp $(srcdir)/Python/graminit.c $(GRAMMAR_C); \
fi
$(PGEN): $(PGENOBJS)
$(CC) $(OPT) $(PY_LDFLAGS) $(PGENOBJS) $(LIBS) -o $(PGEN)

View file

@ -404,6 +404,11 @@ Tests
Build
-----
- Issue #22359: Disable the rules for running _freeze_importlib and pgen when
cross-compiling. The output of these programs is normally saved with the
source code anyway, and is still regenerated when doing a native build.
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.

1
configure vendored
View file

@ -751,6 +751,7 @@ build_os
build_vendor
build_cpu
build
cross_compiling
HAS_HG
HGBRANCH
HGTAG

View file

@ -49,6 +49,7 @@ fi
AC_CONFIG_SRCDIR([Include/object.h])
AC_CONFIG_HEADER(pyconfig.h)
AC_SUBST(cross_compiling)
AC_CANONICAL_HOST
AC_SUBST(build)
AC_SUBST(host)