[prev in list] [next in list] [prev in thread] [next in thread] 

List:       autoconf-bug
Subject:    AC_BEFORE does not warn when it should
From:       Bruno Haible <bruno () clisp ! org>
Date:       2010-05-31 21:36:05
Message-ID: 201005312336.06854.bruno () clisp ! org
[Download RAW message or body]

Hi,

Here is a case where AC_BEFORE does not warn when it should.

How to reproduce (with autoconf 2.65):
  $ wget http://www.haible.de/bruno/gnu/autoconf-bug-20100601.tar.gz
  $ tar xvfz autoconf-bug-20100601.tar.gz
  $ cd autoconf-bug-20100601
  $ autoconf

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

Both macros are defined with AC_DEFUN. Neither one requires nor invokes any
other macro. In the final configure file, the "before" constraint is violated:

  $ grep -n 'starts here' configure
  12110:  # XXX gl_LIBUNISTRING_LIB_PREPARE starts here
  14551:  # XXX gl_LIBUNISTRING starts here

Yet autoconf has not warned. Why??

Bruno


[prev in list] [next in list] [prev in thread] [next in thread] 

Configure | About | News | Add a list | Sponsored by KoreLogic