autoconf-patches
[Top][All Lists]
Advanced

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

Re: preparation for expand-before-require warning


From: Ralf Wildenhues
Subject: Re: preparation for expand-before-require warning
Date: Wed, 21 Jan 2009 19:30:43 +0100
User-agent: Mutt/1.5.18 (2008-05-17)

Hi Eric,

* Eric Blake wrote on Wed, Jan 21, 2009 at 05:32:21PM CET:
> Here's what I'm pushing.  I took the liberty in adding a FAQ node to the 
> manual, since I'm sure that we will start getting questions about the new 
> warning.

> address@hidden expanded before required
> +Older versions of Autoconf silently built files with incorrect ordering
> +between dependent macros if an outer macro first expanded, then later
> +indirectly required, an inner macro.  Starting with Autoconf 2.64, this
> +situation no longer generates out-of-order code, but results in
> +duplicate output and a diagnosis of a syntax warning:

Libtool uses an idiom that is now warned about.  For example, in
libltdl/m4/libtool.m4, it warns about

m4_defun([_LT_PROG_CXX],
[
pushdef([AC_MSG_ERROR], [_lt_caught_CXX_error=yes])
AC_PROG_CXX
if test -n "$CXX" && ( test "X$CXX" != "Xno" &&
    ( (test "X$CXX" = "Xg++" && `g++ -v >/dev/null 2>&1` ) ||
    (test "X$CXX" != "Xg++"))) ; then
  AC_PROG_CXXCPP
else
  _lt_caught_CXX_error=yes
fi
popdef([AC_MSG_ERROR])
])# _LT_PROG_CXX


The Autoconf macro AC_PROG_CXXCPP requires AC_PROG_CXX.  The pushdef
exists to avoid AC_PROG_CXX from stopping the configure script when no
C++ compiler can be found.

I fail to see so far why this should be a bug to be fixed in Libtool.
Also, please note that this code should remain compatible to older
Autoconf versions for some time.

Thanks,
Ralf




reply via email to

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