diff options
Diffstat (limited to 'tests')
-rw-r--r-- | tests/list-of-tests.mk | 1 | ||||
-rwxr-xr-x | tests/python-pr10995.test | 60 | ||||
-rwxr-xr-x | tests/python.test | 11 |
3 files changed, 70 insertions, 2 deletions
diff --git a/tests/list-of-tests.mk b/tests/list-of-tests.mk index 7665db137..70fc8c875 100644 --- a/tests/list-of-tests.mk +++ b/tests/list-of-tests.mk @@ -845,6 +845,7 @@ python12.test \ python-dist.test \ python-vars.test \ python-virtualenv.test \ +python-pr10995.test \ recurs.test \ recurs2.test \ remake.test \ diff --git a/tests/python-pr10995.test b/tests/python-pr10995.test new file mode 100755 index 000000000..1b94cf931 --- /dev/null +++ b/tests/python-pr10995.test @@ -0,0 +1,60 @@ +#! /bin/sh +# Copyright (C) 2012 Free Software Foundation, Inc. +# +# This program is free software; you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation; either version 2, or (at your option) +# any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program. If not, see <http://www.gnu.org/licenses/>. + +# Test automake bug#10995: am__py_compile doesn't get correctly defined +# when there a 'noinst_PYTHON' declaration precedes a 'foo_PYTHON' +# declaration. + +required=python +. ./defs || Exit 1 + +set -e + +cat >>configure.in <<'EOF' +AM_PATH_PYTHON +AC_OUTPUT +EOF + +cat > Makefile.am <<'END' +yesinstdir = $(prefix)/py +noinst_PYTHON = no.py +yesinst_PYTHON = yes.py +disttest: distdir + test -f $(distdir)/no.py + test -f $(distdir)/yes.py +END + +echo 'def foo(): return 1' > yes.py +# no.py shouldn't be byte-compiled, so lets make it syntactically invalid. +echo 'if' > no.py + +$ACLOCAL +$AUTOCONF +$AUTOMAKE --add-missing +test -f py-compile + +inst=`pwd`/inst + +./configure --prefix="$inst" +$MAKE install +test -f "$inst/py/yes.py" +test -f "$inst/py/yes.pyc" +test ! -f "$inst/py/no.py" +test ! -f "$inst/py/no.pyc" + +$MAKE disttest + +: diff --git a/tests/python.test b/tests/python.test index 2200d639f..de8c0bbfb 100755 --- a/tests/python.test +++ b/tests/python.test @@ -32,6 +32,12 @@ mydir = ${prefix} my_PYTHON = d.py END +# For automake bug#10995. +cat > Makefile3.am << 'END' +noinst_PYTHON = un.py +python_PYTHON = in.py +END + $ACLOCAL AUTOMAKE_fails @@ -42,10 +48,11 @@ grep '^py_compile *=' Makefile.in test -f py-compile $AUTOMAKE Makefile2 +$AUTOMAKE Makefile3 -grep "py" Makefile.in Makefile2.in # For debugging. +grep "py" Makefile.in Makefile2.in Makefile3.in # For debugging. -for f in Makefile.in Makefile2.in; do +for f in Makefile.in Makefile2.in Makefile3.in; do test `grep -c '^py_compile =' $f` -eq 1 test `grep -c '^am__py_compile =' $f` -eq 1 done |