2002-09-19 Alexandre Duret-Lutz <duret_g@epita.fr>
+ * automake.in (require_variables): Search variable definitions
+ in any condition implied by $cond.
+ * tests/cond25.test: New file.
+ * tests/Makefile.am (TESTS): Add cond25.test.
+ Reported by Pavel Roskin.
+
* tests/subobj9.test: Skip this test on configure errors.
2002-09-18 Alexandre Duret-Lutz <duret_g@epita.fr>
my $res = 0;
$reason .= ' but ' unless $reason eq '';
+ VARIABLE:
foreach my $var (@vars)
{
# Nothing to do if the variable exists. The $configure_vars test
# needed for strange variables like AMDEPBACKSLASH or ANSI2KNR
# that are AC_SUBST'ed but never macro_define'd.
- next if ((exists $var_value{$var} && exists $var_value{$var}{$cond})
- || exists $configure_vars{$var});
+ next VARIABLE
+ if ((exists $var_value{$var} && exists $var_value{$var}{$cond})
+ || exists $configure_vars{$var});
+
+ # If the variable exists but was not defined in $cond,
+ # look for any definition implied by $cond.
+ if (exists $var_value{$var})
+ {
+ for my $vcond (keys %{$var_value{$var}})
+ {
+ next VARIABLE
+ if (conditional_true_when ($vcond, $cond));
+ }
+ }
++$res;
--- /dev/null
+#!/bin/sh
+# Copyright (C) 2002 Free Software Foundation, Inc.
+#
+# This file is part of GNU Automake.
+#
+# GNU Automake 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.
+#
+# GNU Automake 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 autoconf; see the file COPYING. If not, write to
+# the Free Software Foundation, Inc., 59 Temple Place - Suite 330,
+# Boston, MA 02111-1307, USA.
+
+# Check that conditional primaries can use non-conditional directories.
+# From Pavel Roskin.
+
+. ./defs
+
+set -e
+
+cat >>configure.in << 'EOF'
+AM_CONDITIONAL([USE_FOO], [true])
+AC_PROG_CC
+EOF
+
+cat >Makefile.am << 'EOF'
+if USE_FOO
+foo_PROGRAMS = foo
+endif
+
+foodir = $(libdir)/foo
+foo_SOURCES = foo.c
+EOF
+
+$ACLOCAL
+$AUTOMAKE