disable ASDLGEN if hg won't work, or if python is not installed.

This change makes configure check for
- the existence of a hg repository
- the hg executable itself
- the python executable

Running $(srcdir)/Parser/asdl_c.py (i.e. ASDLGEN) will fail if any of
the above prerequisites is missing, so we now disable it instead.

closes #12225
This commit is contained in:
Ralf Schmitt 2011-05-31 17:10:03 -05:00
parent ac4e5abc78
commit 069456267e
2 changed files with 16 additions and 1 deletions

View File

@ -274,7 +274,7 @@ AST_ASDL= $(srcdir)/Parser/Python.asdl
ASDLGEN_FILES= $(srcdir)/Parser/asdl.py $(srcdir)/Parser/asdl_c.py
# XXX Note that a build now requires Python exist before the build starts
ASDLGEN= $(srcdir)/Parser/asdl_c.py
ASDLGEN= @DISABLE_ASDLGEN@ $(srcdir)/Parser/asdl_c.py
##########################################################################
# Python

View File

@ -832,7 +832,13 @@ fi
AC_SUBST(HGVERSION)
AC_SUBST(HGTAG)
AC_SUBST(HGBRANCH)
if test -e $srcdir/.hg/00changelog.i
then
AC_CHECK_PROG(HAS_HG, hg, found, not-found)
else
HAS_HG=no-repository
fi
if test $HAS_HG = found
then
HGVERSION="hg id -i \$(srcdir)"
@ -844,6 +850,15 @@ else
HGBRANCH=""
fi
AC_SUBST(DISABLE_ASDLGEN)
DISABLE_ASDLGEN=""
AC_CHECK_PROG(HAS_PYTHON, python, found, not-found)
if test $HAS_HG != found -o $HAS_PYTHON != found
then
DISABLE_ASDLGEN="@echo hg: $HAS_HG, python: $HAS_PYTHON! cannot run \$(srcdir)/Parser/asdl_c.py #"
fi
case $MACHDEP in
bsdos*|hp*|HP*)
# install -d does not work on BSDI or HP-UX