bug-autoconf
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: AC_BEFORE does not warn when it should


From: Gary V. Vaughan
Subject: Re: AC_BEFORE does not warn when it should
Date: Tue, 1 Jun 2010 10:39:56 +0700

Hi Bruno,

On 1 Jun 2010, at 04:36, Bruno Haible wrote:
> No warning. Now look at the definition of gl_LIBUNISTRING
> (in file m4/libunistring.m4): It starts with
> 
>  AC_BEFORE([gl_LIBUNISTRING], [gl_LIBUNISTRING_LIB_PREPARE])
>  # XXX gl_LIBUNISTRING starts here
> 
> And the definition of gl_LIBUNISTRING_LIB_PREPARE (in file
> m4/libunistring-base.m4): It starts with
> 
>  AC_BEFORE([gl_LIBUNISTRING], [gl_LIBUNISTRING_LIB_PREPARE])
>  # XXX gl_LIBUNISTRING_LIB_PREPARE starts here


If so, then you have the arguments reversed in the second case. From the 
Autoconf manual:

Macro: AC_BEFORE (this-macro-name, called-macro-name)
Make M4 print a warning message to the standard error output if 
called-macro-name has already been called. this-macro-name should be the name 
of the macro that is calling AC_BEFORE. The macro called-macro-name must have 
been defined using AC_DEFUN or else contain a call to AC_PROVIDE to indicate 
that it has been called.

The idiom I always use to avoid confusing the argument order is this:

AC_BEFORE([$0], [warn-if-this-macro-name-was-already-called])

Cheers,
-- 
Gary V. Vaughan (address@hidden)


reply via email to

[Prev in Thread] Current Thread [Next in Thread]