1#!/bin/sh 2# Copyright (C) 2010-2021 Free Software Foundation, Inc. 3# 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. 8# 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. 13# 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/>. 16 17# Check that the user can control default mode of silent-rules 18# from config.site, and that this default can be overridden from 19# either the ./configure or make command line. 20 21. test-init.sh 22 23cat >> configure.ac <<'EOF' 24# This line will be edited later to force silent-rules default. 25AC_OUTPUT 26EOF 27 28cat > Makefile.am <<'EOF' 29.PHONY: test-silent test-nosilent 30test-silent: 31 test x'$(AM_DEFAULT_VERBOSITY)' = x'0' 32test-nosilent: 33 test x'$(AM_DEFAULT_VERBOSITY)' = x'1' 34EOF 35 36unset enable_silent_rules 37 38: 'No explicit default in configure.ac, enable by default in config.site' 39 40$ACLOCAL 41$AUTOCONF 42$AUTOMAKE --add-missing 43echo "enable_silent_rules=\${enable_silent_rules-yes}" > config.site 44CONFIG_SITE=./config.site ./configure 45$MAKE test-silent 46$MAKE distclean 47# Command line should win over default values in config.site. 48CONFIG_SITE=./config.site ./configure --disable-silent-rules 49$MAKE test-nosilent 50$MAKE distclean 51 52: 'Disable by default in configure.ac, enable by default in config.site' 53 54sed 's/.*silent-rules default.*/AM_SILENT_RULES([no])/' configure.ac > t 55diff t configure.ac && fatal_ "editing configure.ac" 56mv -f t configure.ac 57$ACLOCAL 58$AUTOCONF 59$AUTOMAKE --add-missing 60echo "enable_silent_rules=\${enable_silent_rules-yes}" > config.site 61CONFIG_SITE=./config.site ./configure 62$MAKE test-silent 63# Command line should win over default values in config.site. 64$MAKE distclean 65CONFIG_SITE=./config.site ./configure --disable-silent-rules 66$MAKE test-nosilent 67$MAKE distclean 68 69: 'Enable by default in configure.ac, disable by default in config.site' 70 71sed 's/.*AM_SILENT_RULES.*/AM_SILENT_RULES([yes])/' configure.ac > t 72diff t configure.ac && fatal_ "editing configure.ac" 73mv -f t configure.ac 74$ACLOCAL 75$AUTOCONF 76$AUTOMAKE --add-missing 77echo "enable_silent_rules=\${enable_silent_rules-no}" > config.site 78CONFIG_SITE=./config.site ./configure 79$MAKE test-nosilent 80$MAKE distclean 81# Command line should win over default values in config.site. 82CONFIG_SITE=./config.site ./configure --enable-silent-rules 83$MAKE test-silent 84$MAKE distclean 85 86: 87