Hash :
7a7fc565
Author :
Date :
2011-05-23T21:53:44
testsuite: require C compiler explicitly in tests needing it The list of the test scripts which needed a C compiler but failed to require it explicitly has been found by running: $ am_explicit_skips=yes CC=false make check and looking for tests that reported FAIL instead of SKIP. After the present change, all those previously failing tests either pass or get correctly skipped. * tests/aclocal4.test ($required): Add `cc'. * tests/ansi.test: Likewise. * tests/ansi10.test: Likewise. * tests/ansi3.test: Likewise. * tests/ansi3b.test: Likewise. * tests/ansi5.test: Likewise. * tests/ansi6.test: Likewise. * tests/ansi7.test: Likewise. * tests/ansi9.test: Likewise. * tests/backcompat6.test: Likewise. * tests/canon7.test: Likewise. * tests/check5.test: Likewise. * tests/check7.test: Likewise. * tests/check8.test: Likewise. * tests/cond4.test: Likewise. * tests/cond11.test: Likewise. * tests/cond16.test: Likewise. * tests/cond18.test: Likewise. * tests/cond19.test: Likewise. * tests/cond22.test: Likewise. * tests/cond30.test: Likewise. * tests/cond31.test: Likewise. * tests/cond32.test: Likewise. * tests/cond34.test: Likewise. * tests/cond35.test: Likewise. * tests/cond39.test: Likewise. * tests/condd.test: Likewise. * tests/cygnus-dependency-tracking.test: Likewise. * tests/depcomp2.test: Likewise. * tests/depcomp6.test: Likewise. * tests/depcomp7.test: Likewise. * tests/depcomp8a.test: Likewise. * tests/depcomp8b.test: Likewise. * tests/depdist.test: Likewise. * tests/depend2.test: Likewise. * tests/depend5.test: Likewise. * tests/distcleancheck.test: Likewise. * tests/distname.test: Likewise. * tests/exeext.test: Likewise. * tests/exeext4.test: Likewise. * tests/extradep.test: Likewise. * tests/extradep2.test: Likewise. * tests/gnits2.test: Likewise. * tests/gnits3.test: Likewise. * tests/instdir-ltlib.test: Likewise. * tests/instdir-prog.test: Likewise. * tests/instfail.test: Likewise. * tests/instfail-libtool.test: Likewise. * tests/lex3.test: Likewise. * tests/lex5.test: Likewise. * tests/lexvpath.test: Likewise. * tests/lex-subobj-nodep.test: Likewise. * tests/lflags.test: Likewise. * tests/libobj-basic.test: Likewise. * tests/libobj2.test: Likewise. * tests/libobj7.test: Likewise. * tests/libobj10.test: Likewise. * tests/libobj16a.test: Likewise. * tests/libobj16b.test: Likewise. * tests/libobj17.test: Likewise. * tests/libobj19.test: Likewise. * tests/libtool2.test: Likewise. * tests/libtool3.test: Likewise. * tests/libtool7.test: Likewise. * tests/libtool9.test: Likewise. * tests/libtoo10.test: Likewise. * tests/libtoo11.test: Likewise. * tests/ltcond.test: Likewise. * tests/ltcond2.test: Likewise. * tests/ltconv.test: Likewise. * tests/ltinit.test: Likewise. * tests/ltlibsrc.test: Likewise. * tests/ltorder.test: Likewise. * tests/nobase.test: Likewise. * tests/nobase-libtool.test: Likewise. * tests/mmodely.test: Likewise. * tests/parallel-tests5.test: Likewise. * tests/parallel-tests-suffix-prog.test: Likewise. * tests/parallel-tests-ext-driver-prog.test: Likewise. * tests/posixsubst-ldadd.test: Likewise. * tests/posixsubst-libraries.test: Likewise. * tests/posixsubst-ltlibraries.test: Likewise. * tests/posixsubst-programs.test: Likewise. * tests/posixsubst-sources.test: Likewise. * tests/pr87.test: Likewise. * tests/pr204.test: Likewise. * tests/pr224.test: Likewise. * tests/pr300-lib.test: Likewise. * tests/pr300-ltlib.test: Likewise. * tests/pr300-prog.test: Likewise. * tests/pr401.test: Likewise. * tests/pr401b.test: Likewise. * tests/pr401c.test: Likewise. * tests/remake-gnulib-add-acsubst.test: Likewise. * tests/remake-gnulib-add-header.test: Likewise. * tests/regex.test: Likewise. * tests/repeated-options.test: Likewise. * tests/silent.test: Likewise. * tests/silent3.test: Likewise. * tests/silent9.test: Likewise. * tests/silent-lex-generic.test: Likewise. * tests/silent-many-generic.test: Likewise. * tests/silent-yacc-generic.test: Likewise. * tests/specflg7.test: Likewise. * tests/specflg9.test: Likewise. * tests/specflg10.test: Likewise. * tests/stdinc.test: Likewise. * tests/strip.test: Likewise. * tests/strip2.test: Likewise. * tests/strip3.test: Likewise. * tests/subdirbuiltsources.test: Likewise. * tests/subobj3.test: Likewise. * tests/subobj6.test: Likewise. * tests/subobj11a.test: Likewise. * tests/subpkg.test: Likewise. * tests/subst2.test: Likewise. * tests/subst3.test: Likewise. * tests/substref.test: Likewise. * tests/substre2.test: Likewise. * tests/suffix5.test: Likewise. * tests/suffix8.test: Likewise. * tests/suffix10.test: Likewise. * tests/suffix11.test: Likewise. * tests/suffix12.test: Likewise. * tests/suffix13.test: Likewise. * tests/target-cflags.test: Likewise. * tests/transform.test: Likewise. * tests/transform2.test: Likewise. * tests/yacc-basic.test: Likewise. * tests/yacc-d-basic.test: Likewise. * tests/yacc-clean.test: Likewise. * tests/yacc-dist-nobuild.test: Likewise. * tests/yacc-nodist.test: Likewise. * tests/yaccvpath.test: Likewise. * tests/yacc-d-vpath.test: Likewise. * tests/yacc4.test: Likewise. * tests/yacc7.test: Likewise. * tests/yacc8.test: Likewise. * tests/yaccdry.test: Likewise. * tests/yflags-cmdline-override.test: Likewise. * tests/yflags-force-override.test: Likewise. * tests/python-virtualenv.test: Likewise. Also, improve skip messages. * tests/subobj5.test ($required): Add `cc'. (Makefile.am): Set `AUTOMAKE_OPTIONS' to `subdir-objects', and add new checking rules `test-build' and `test-distdir'. Extend the test by building and examining the distdir, the program, and the object files. * tests/postproc.test ($required): Add `cc'. Avoid the explicit `|| Exit $?' after call to configure, which is now either redundant (e.g., when `am_explicit_skips' is unset), or counter-productive (e.g., when `am_explicit_skips' is set to "yes"). * tests/pr243.test: Likewise. * tests/pr266.test: Likewise. * tests/pr220.test: Simplify so that it doesn't require a C compiler anymore. * tests/subdir5.test: Likewise. * tests/subdir8.test: Likewise. * tests/lflags.test: Likewise. * tests/yflags.test: Likewise. * tests/yflags-force-conditional.test: Likewise. * tests/lflags2.test: Simplify so that it doesn't require a C++ compiler anymore. * tests/yflags2.test: Likewise. * tests/autohdrdry.test (configure.in): Remove unneeded call to `AC_PROG_CC'. * tests/pr287.test: Likewise. * tests/check6.test: Likewise. * tests/cond21.test: Likewise, plus some cosmetic adjustments. * tests/upc.test: Skip if configure fails with status `77'. * tests/upc3.test: Likewise. * tests/vala4.test: Likewise. * tests/nostdinc.test: Likewise. Also, make grepping checks on `Makefile.in'. Update heading comments. * tests/compile5.test: When we must skip, skip explicitly, and with a meaningful message. * tests/instspc-tests.sh: When running in "test-build" or "test-install" mode (as determined by the value of variable `$instspc_action'), require `cc'. Adjust comments. * tests/depmod-tests.sh: Likewise.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72
#! /bin/sh
# Copyright (C) 1997, 1998, 2000, 2001, 2002, 2010, 2011 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 for multiple replacement functions.
required=cc
. ./defs || Exit 1
cat >> configure.in << 'END'
AC_PROG_CC
AC_PROG_RANLIB
# `am__dummy_function' is there to ensure that at least one function is
# replaced, to avoid creating an empty archive which can cause problems
# with e.g. Solaris ar.
AC_REPLACE_FUNCS([basename dirname am__dummy_function])
AC_OUTPUT
END
cat > Makefile.am << 'END'
noinst_LIBRARIES = libtu.a
libtu_a_SOURCES =
libtu_a_LIBADD = @LIBOBJS@
check-local: test1 test2 test3
.PHONY: test1 test2 test3
test1: all
$(AR) tv libtu.a
test2:
@echo DIST_COMMON = $(DIST_COMMON)
echo ' ' $(DIST_COMMON) ' ' | grep '[ /]basename\.c '
echo ' ' $(DIST_COMMON) ' ' | grep '[ /]dirname\.c '
echo ' ' $(DIST_COMMON) ' ' | grep '[ /]am__dummy_function\.c '
test3: distdir
test -f $(distdir)/basename.c
test -f $(distdir)/dirname.c
test -f $(distdir)/am__dummy_function.c
END
cat > basename.c <<'END'
extern int dummy1;
END
cat > dirname.c <<'END'
extern int dummy2;
END
cat > am__dummy_function.c <<'END'
extern int dummy3;
END
$ACLOCAL
$AUTOCONF
$AUTOMAKE
./configure
$MAKE
$MAKE check
$MAKE distcheck
: