maint: Update HACKING
[automake.git] / t / tests-environment-backcompat.sh
blob5ad3f1942b71abbd1ad2e01119839baa00b3f0f7
1 #! /bin/sh
2 # Copyright (C) 2011-2017 Free Software Foundation, Inc.
4 # This program is free software; you can redistribute it and/or modify
5 # it under the terms of the GNU General Public License as published by
6 # the Free Software Foundation; either version 2, or (at your option)
7 # any later version.
9 # This program is distributed in the hope that it will be useful,
10 # but WITHOUT ANY WARRANTY; without even the implied warranty of
11 # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
12 # GNU General Public License for more details.
14 # You should have received a copy of the GNU General Public License
15 # along with this program. If not, see <https://www.gnu.org/licenses/>.
17 # With old serial testsuite driver, TESTS_ENVIRONMENT can be used to
18 # define the "test runner", i.e. the program that the test scripts must
19 # be run by (with the parallel test harness one should use LOG_COMPILER
20 # for this). The behaviour tested here is also documented in the manual.
22 am_serial_tests=yes
23 . test-init.sh
25 cat >> configure.ac <<END
26 AC_SUBST([PERL], ['$PERL'])
27 AC_OUTPUT
28 END
30 cat > Makefile.am << 'END'
31 TESTS_ENVIRONMENT = $(PERL) -Mstrict -w
32 TESTS = foo.pl bar.pl baz.pl
33 XFAIL_TESTS = baz.pl
34 EXTRA_DIST = $(TESTS)
35 END
37 echo 'exit (0);' > foo.pl
38 echo 'exit (0);' > bar.pl
40 cat > baz.pl << 'END'
41 # With "use strict" enacted, this will cause an error, since the
42 # variable '$x' is not declared with 'my' nor specified with an
43 # explicit package name.
44 $x = 0;
45 exit ($x);
46 END
48 chmod a+x *.pl
50 $ACLOCAL
51 $AUTOCONF
52 $AUTOMAKE -a
54 ./configure
56 $MAKE check
57 $MAKE distcheck