Re: warning from AC_LANG_PROGRAM(Fortran 77)

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

 



Hello,

On Wed, Mar 02, 2005 at 12:41:51AM -0500, John W. Eaton wrote:
> | AC_LANG_PUSH(Fortran 77)
> | AC_TRY_LINK([],[],[])
> | AC_LANG_POP(Fortran 77)
...
> | devzero:449> autoconf foo.in > foo.out
> | foo.in:4: warning: AC_LANG_PROGRAM(Fortran): ignoring PROLOGUE: []
> | autoconf/lang.m4:224: AC_LANG_SOURCE is expanded from...

> | The INCLUDES argument ($1) of AC_TRY_LINK is empty, so I don't think I

Yes, but because AC_TRY_LINK double-quotes it's argument, it becomes "[]",
ie. a nonempty argument consisting of a pair of quotes.  This pair of
quotes is removed only at the end of the expansion.

>  m4_define([AC_LANG_PROGRAM(Fortran 77)],
> -[m4_ifval([$1],
> +[m4_ifval($1,
>         [m4_warn([syntax], [$0: ignoring PROLOGUE: $1])])dnl

No, this is wrong solution.  You could use

m4_if([$1], [], [],
      [$1], [[]], [],
      [m4_warn([syntax], [$0: ignoring PROLOGUE: $1])])dnl

to catch both cases.  Bot that's not the way to go.

The root of all evil is the obsolete AC_TRY_LINK macro.
Use the newer macros, which don't double-quote:

AC_LINK_IFELSE([AC_LANG_PROGRAM([], [])],
	       [ACTION-IF-TRUE], [ACTION-IF-FALSE])

HTH,
	Stepan Kasal


_______________________________________________
Autoconf mailing list
Autoconf@xxxxxxx
http://lists.gnu.org/mailman/listinfo/autoconf

[Index of Archives]     [GCC Help]     [Kernel Discussion]     [RPM Discussion]     [Red Hat Development]     [Yosemite News]     [Linux USB]     [Samba]

  Powered by Linux