>>> "Volker" == Volker Boerchers <[EMAIL PROTECTED]> writes:
Volker> Hi, Volker> i experienced an error in witch AM_CONDITIONAL is involved. My Volker> configure.in contains the following lines [...] Volker> AM_CONDITIONAL([SWIG_PYTHON], [test x$enable_swig_python = xyes]) Volker> After updating my swig installation (www.swig.org) the Volker> following error occured (I'm using automake 1.5 and Volker> 1.7.6, autoconf 2.52 and 2.57): [...] Volker> ./configure: line 2901: syntax error near unexpected token `"(c' Volker> ./configure: line 2901: ` echo $ECHO_N "(cached) $ECHO_C" >&6' [...] Volker> It took a long time until I realized what went wrong: swig installs a Volker> m4 file that defines a macro 'SWIG_PYTHON' too. So actually the Volker> problem is not really an automake problem... Thanks for the detailed report. I'm installing the following fix on HEAD and branch-1-8. 2004-05-17 Alexandre Duret-Lutz <[EMAIL PROTECTED]> * m4/cond.m4 (AM_CONDITIONAL): Double-quote diagnostic. * tests/condd.test: Define a macro with the same name as a conditional. * tests/pr220.test: Modernize, and make sure the diagnostics contains the macro name. Report from Volker Boerchers. Index: THANKS =================================================================== RCS file: /cvs/automake/automake/THANKS,v retrieving revision 1.252 diff -u -r1.252 THANKS --- THANKS 15 May 2004 21:01:03 -0000 1.252 +++ THANKS 17 May 2004 20:16:12 -0000 @@ -252,6 +252,7 @@ Ulrich Drepper [EMAIL PROTECTED] Václav Haisman [EMAIL PROTECTED] Vadim Zeitlin [EMAIL PROTECTED] +Volker Boerchers [EMAIL PROTECTED] Werner John [EMAIL PROTECTED] Werner Koch [EMAIL PROTECTED] William S Fulton [EMAIL PROTECTED] Index: m4/cond.m4 =================================================================== RCS file: /cvs/automake/automake/m4/cond.m4,v retrieving revision 1.11 diff -u -r1.11 cond.m4 --- m4/cond.m4 24 Aug 2003 19:56:07 -0000 1.11 +++ m4/cond.m4 17 May 2004 20:16:19 -0000 @@ -1,6 +1,6 @@ # AM_CONDITIONAL -*- Autoconf -*- -# Copyright (C) 1997, 2000, 2001, 2003 Free Software Foundation, Inc. +# Copyright (C) 1997, 2000, 2001, 2003, 2004 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 @@ -37,6 +37,6 @@ fi AC_CONFIG_COMMANDS_PRE( [if test -z "${$1_TRUE}" && test -z "${$1_FALSE}"; then - AC_MSG_ERROR([conditional "$1" was never defined. -Usually this means the macro was only invoked conditionally.]) + AC_MSG_ERROR([[conditional "$1" was never defined. +Usually this means the macro was only invoked conditionally.]]) fi])]) Index: tests/condd.test =================================================================== RCS file: /cvs/automake/automake/tests/condd.test,v retrieving revision 1.5 diff -u -r1.5 condd.test --- tests/condd.test 14 Nov 2003 21:25:58 -0000 1.5 +++ tests/condd.test 17 May 2004 20:16:19 -0000 @@ -1,5 +1,5 @@ #! /bin/sh -# Copyright (C) 2001, 2002 Free Software Foundation, Inc. +# Copyright (C) 2001, 2002, 2004 Free Software Foundation, Inc. # # This file is part of GNU Automake. # @@ -26,7 +26,10 @@ cat >> configure.in << 'END' AC_PROG_CC -AM_CONDITIONAL(COND1, false) +dnl Define a macro with the same name as the conditional to exhibit +dnl any underquotted bug. +AC_DEFUN([COND1], ["some'meaningless;characters`]) +AM_CONDITIONAL([COND1], false) AC_CONFIG_FILES([foo/Makefile]) AC_CONFIG_FILES([bar/Makefile]) AC_OUTPUT @@ -65,6 +68,7 @@ $ACLOCAL $AUTOCONF +grep "meaningless;characters" configure && exit 1 $AUTOMAKE ./configure $MAKE test Index: tests/pr220.test =================================================================== RCS file: /cvs/automake/automake/tests/pr220.test,v retrieving revision 1.6 diff -u -r1.6 pr220.test --- tests/pr220.test 14 Nov 2003 21:25:59 -0000 1.6 +++ tests/pr220.test 17 May 2004 20:16:19 -0000 @@ -1,5 +1,5 @@ #! /bin/sh -# Copyright (C) 2001, 2002 Free Software Foundation, Inc. +# Copyright (C) 2001, 2002, 2004 Free Software Foundation, Inc. # # This file is part of GNU Automake. # @@ -23,6 +23,8 @@ required=gcc . ./defs || exit 1 +set -e + cat >main.c <<EOF int main() { return 0; } EOF @@ -36,9 +38,7 @@ main_SOURCES = main.c $(NEVER_DEFINED) EOF -cat > configure.in << 'EOF' -AC_INIT(main.c) -AM_INIT_AUTOMAKE(test_am, 1.0) +cat >> configure.in << 'EOF' AC_PROG_CC AC_ARG_ENABLE(foo, [ --enable-foo Enable foo], @@ -48,18 +48,17 @@ AM_CONDITIONAL(NEVER_TRUE, false) fi ]) -AC_OUTPUT(Makefile) +AC_OUTPUT EOF -touch README NEWS AUTHORS ChangeLog - mkdir build -$ACLOCAL \ - && $AUTOCONF \ - && $AUTOMAKE -a || exit 1 +$ACLOCAL +$AUTOCONF +$AUTOMAKE -a cd build # configure should fail since we've done something invalid. -../configure && exit 1 -exit 0 +../configure 2>stderr && exit 1 +cat stderr +grep NEVER_TRUE stderr -- Alexandre Duret-Lutz