On 3 Jul 2000, Akim Demaille wrote:
>
> | Here is the input from configure.in.
> |
> | AC_CHECK_FUNC(BSDgettimeofday, AC_DEFINE(HAVE_BSDGETTIMEOFDAY),
> | AC_CHECK_FUNC(gettimeofday, , AC_DEFINE(NO_GETTOD)))
> | AC_MSG_CHECKING([for gettimeofday declaration])
> | AC_EGREP_HEADER(gettimeofday, sys/time.h, AC_MSG_RESULT(present), [
> | AC_MSG_RESULT(missing)
> | AC_DEFINE(GETTOD_NOT_DECLARED)
> | ])
>
> This is indecent from you Mo, exhibiting all these poor macros naked
> on a public list! You could have left their quotes on :)
>
> AC_CHECK_FUNC(BSDgettimeofday,
> [AC_DEFINE(HAVE_BSDGETTIMEOFDAY)],
> [AC_CHECK_FUNC(gettimeofday, ,
> [AC_DEFINE(NO_GETTOD)])])
>
> In fact, this might be enough to catch the problem. A common trap
> when under quoting is that the (&*£$ syntax of sh) the right parens of
> case statements are understood by m4 [1]. I don't know if there are
> some above, but in that case the result is a stupid configure.
>
> I tell you my friend, the path to felicity is paved with quotes :)
I took your advice and put a bunch of []s around macros
in other macros and that seemed to fix the problem.
Only problem is, now I get this warning when I run autoconf.
mo(~/project/tcl/unix)% autoconf
configure.in:154: warning: AC_STRUCT_ST_BLKSIZE:
your code should no longer depend upon `HAVE_ST_BLKSIZE', but
`HAVE_STRUCT_STAT_ST_BLKSIZE'. Remove this AC_WARNING and
the `AC_DEFINE' when you adjust the code.
Here is the bit it seems to be talking about:
#--------------------------------------------------------------------
# Some systems (e.g., IRIX 4.0.5) lack the st_blksize field
# in struct stat. But we might be able to use fstatfs instead.
#--------------------------------------------------------------------
AC_STRUCT_ST_BLKSIZE
AC_CHECK_FUNC(fstatfs, , [AC_DEFINE(NO_FSTATFS)])
I am not sure how to fix this, and ideas?
thanks
Mo DeJong
Red Hat Inc