Hello Patrick,
I'm going to answer only one of your minor comments now.
(Please be patient as far as your main suggestion goes.)
On Mon, May 28, 2007 at 05:45:46PM +0100, Patrick Welche wrote:
> Also, AC_TYPE_SIZE_T does not claim to define HAVE_SIZE_T, (as it
> uses _AC_CHECK_TYPE_OLD) - would defining HAVE_SIZE_T be considered
> an improvement?
I think the current situation is consistent with other AC_CHECK_*
macros. The ``AC_CHECK_FOO'' does not define ``HAVE_something'', while
``AC_CHECK_FOOS'' does (AC_CHECK_FUNC vs AC_CHECK_FUNCS,
AC_CHECK_HEADER vs AC_CHECK_HEADERS, etc.).
I guess this distinction might be used this way:
- first you call e.g. AC_CHECK_FUNC([some], ...) to see whether the
function exists,
- then you do more checks to see if it is good enough for your
purposes,
- then you AC_DEFINE([HAVE_SOME], [Working version of func some().])
I'm not sure how often is this pattern is used. In any case, this
shows that we cannot define HAVE_* in the ``AC_CHECK_FOO'' macros,
because of backward compatibility.
Similarly, we might consider modifying all the particular AC_TYPE_*
macros to use AC_CHECK_TYPES, to get the corresponding HAVe_*
defined. But again, this would present a (small) backward
incompatibility, and I'm afraid that the added value is not high
enough to justify it.
Back to AC_TYPE_SIZE_T: the reason is that it calls AC_CHECK_TYPE, no
matter whether it is new or old version. But you may call
AC_CHECK_TYPES([size_t])
just after AC_TYPE_SIZE_T to get HAVE_SIZE_T for cheap.
HTH,
Stepan Kasal
_______________________________________________
Autoconf mailing list
[email protected]
http://lists.gnu.org/mailman/listinfo/autoconf