#!/bin/sh # Copyright (C) 2009, 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 . # Check user extensibility of silent-rules mode. . ./defs || Exit 1 set -e cat >>configure.in <<'EOF' AM_SILENT_RULES AC_OUTPUT EOF cat > Makefile.am <<'EOF' my_verbose = $(my_verbose_$(V)) my_verbose_ = $(my_verbose_$(AM_DEFAULT_VERBOSITY)) my_verbose_0 = @echo GEN $@; all-local: foo foo: foo.in $(my_verbose)cp $(srcdir)/foo.in $@ EXTRA_DIST = foo.in CLEANFILES = foo EOF : >foo.in $ACLOCAL $AUTOMAKE --add-missing $AUTOCONF ./configure --enable-silent-rules $MAKE >stdout || { cat stdout; Exit 1; } cat stdout grep '^ *GEN foo *$' stdout grep 'cp ' stdout && Exit 1 $MAKE clean $MAKE V=1 >stdout || { cat stdout; Exit 1; } cat stdout grep 'GEN ' stdout && Exit 1 grep 'cp \.*/foo\.in foo' stdout $MAKE distclean ./configure --disable-silent-rules $MAKE >stdout || { cat stdout; Exit 1; } cat stdout grep 'GEN ' stdout && Exit 1 grep 'cp \.*/foo\.in foo' stdout $MAKE clean $MAKE V=0 >stdout || { cat stdout; Exit 1; } cat stdout grep '^ *GEN foo *$' stdout grep 'cp ' stdout && Exit 1 $MAKE distclean $sleep # Things should also work with -Wall in AM_INIT_AUTOMAKE. cat > configure.in <<'END' AC_INIT([silent6], [1.0]) AM_INIT_AUTOMAKE([-Wall]) AC_CONFIG_FILES([Makefile]) END $ACLOCAL AUTOMAKE_fails $AUTOMAKE -Wno-error # AM_SILENT_RULES should turn off the warning $sleep echo 'AM_SILENT_RULES' >> configure.in $ACLOCAL $AUTOMAKE grep 'AM_V_GEN' Makefile.in $AUTOMAKE --force -Wno-all -Wportability grep 'AM_V_GEN' Makefile.in # The `silent-rules' option to AM_INIT_AUTOMAKE should work likewise. $sleep cat > configure.in <<'END' AC_INIT([silent6], [1.0]) AM_INIT_AUTOMAKE([silent-rules]) AC_CONFIG_FILES([Makefile]) END $ACLOCAL $AUTOMAKE grep 'AM_V_GEN' Makefile.in $AUTOMAKE --force -Wno-all -Wportability grep 'AM_V_GEN' Makefile.in :