Hash :
b3d9df07
Author :
Date :
2010-04-11T19:56:21
Fix per-Makefile.am setting of -Werror. Before this patch, 'AUTOMAKE_OPTIONS = -Werror' in one Makefile.am would carry over to other Makefile.am files treated afterwards by the same thread, causing inconsistent and unstable exit status values. * lib/Automake/Channels.pm (dup_channel_setup) (drop_channel_setup): Save and restore the setting of $warnings_are_errors. * tests/werror3.test: New test. * tests/Makefile.am: Adjust. * NEWS: Update. Signed-off-by: Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
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
#! /bin/sh
# Copyright (C) 2010 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/>.
# Make sure a per-Makefile.am -Werror setting is not carried over
# to another Makefile.am.
. ./defs || Exit 1
set -e
cat >>configure.in <<\END
AC_CONFIG_FILES([sub/Makefile])
AC_OUTPUT
END
mkdir sub
cat >sub/Makefile.am <<\END
AUTOMAKE_OPTIONS = -Werror
END
cat >Makefile.am <<\END
VAR = foo
VAR = bar
END
$ACLOCAL
# The issue would not manifest with threaded execution.
unset AUTOMAKE_JOBS || :
AUTOMAKE_run 0 -Wno-error
grep 'VAR multiply defined' stderr
AUTOMAKE_JOBS=2
export AUTOMAKE_JOBS
AUTOMAKE_run 0 -Wno-error
grep 'VAR multiply defined' stderr
: