autoconf-patches
[Top][All Lists]
Advanced

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

Re: conftest.c should #include confdefs.h


From: Ralf Wildenhues
Subject: Re: conftest.c should #include confdefs.h
Date: Wed, 7 Sep 2005 16:32:09 +0200
User-agent: Mutt/1.4.1i

Hi Stepan,

* Stepan Kasal wrote on Wed, Sep 07, 2005 at 03:34:04PM CEST:
> 
> currently, conftest.c contains a copy of confdefs.h.
> This feature was introduced by Akim in 2002, see
> http://lists.gnu.org/archive/html/autoconf-patches/2002-10/msg00072.html
> 
> The reasoning mentions "better logs", not problems with #include.
> 
> But the comment above the definition of AC_LANG_SOURCE(C) at that time
> mentioned that
>       # This sometimes fails to find confdefs.h, for some reason.
> (By mistake, the comment is still there.)
> But as I said, this was not the reason for avoiding #include.

For reference, I'll augment this with some history digging:
This line was seemingly first introduced in Autoconf in acgeneral.m4:
AC_TRY_LINK in revision 1.98 on 1994-08-25.  The cvs commit entry is
simply
| rework diversions and substitutions

and the patch hunk that introduces it is:

| @@ -1150,6 +1140,8 @@
|  AC_DEFUN(AC_TRY_LINK,
|  [dnl We use return because because C++ requires a prototype for exit.
|  cat > conftest.${ac_ext} <<EOF
| +dnl This sometimes fails to find confdefs.h, for some reason.
| +dnl [#]line __LINE__ "[$]0"
|  #line __LINE__ "configure"
|  #include "confdefs.h"
|  [$1]

This makes it seem that the dnl'ed line is the cause for the failure.
And indeed, there is more evidence supporting this assumption: later
on, in lib/autoconf/c.m4 in revision 1.175 on 2003-03-16, this patch is added:
http://lists.gnu.org/archive/html/autoconf-patches/2003-03/msg00013.html

for the __LINE__ related bug.  It removes the commented-out, "buggy"
line but not the comment that went along with it.

> So I suggest the following optimization.
> OK to commit?

Not my decision.  :)

Cheers,
Ralf




reply via email to

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