From 62b344802d3cf577bb00f9142ba1b1112b6808c8 Mon Sep 17 00:00:00 2001 From: hno <> Date: Sat, 20 Apr 2002 16:50:49 +0000 Subject: [PATCH] AC_CHECK_SYSTYPE, a custom macro extending AC_CHECK_TYPE to look in a more suitable set of system headers (same list as AC_CHECK_SIZEOF_SYSTYPE) --- acinclude.m4 | 33 +++++++++++++++++++++++++++++++++ configure.in | 38 +++++++++++++++++++------------------- 2 files changed, 52 insertions(+), 19 deletions(-) diff --git a/acinclude.m4 b/acinclude.m4 index 589fc0cd88..349c57e6de 100644 --- a/acinclude.m4 +++ b/acinclude.m4 @@ -1,6 +1,10 @@ dnl AC_CHECK_SIZEOF_SYSTYPE is as the standard AC_CHECK_SIZEOF macro dnl but also capable of checking the size of system defined types, not dnl only compiler defined types. +dnl +dnl AC_CHECK_SYSTYPE is the same thing but replacing AC_CHECK_TYPE +dnl However AC_CHECK_TYPE is not by far as limited as AC_CHECK_SIZEOF +dnl (it at least makes use of , and ) dnl AC_CHECK_SIZEOF_SYSTYPE(TYPE [, CROSS-SIZE]) AC_DEFUN(AC_CHECK_SIZEOF_SYSTYPE, @@ -13,6 +17,10 @@ changequote([, ])dnl AC_MSG_CHECKING(size of $1) AC_CACHE_VAL(AC_CV_NAME, [AC_TRY_RUN([#include +#if STDC_HEADERS +#include +#include +#endif #if HAVE_INTTYPES_H #include #endif @@ -32,3 +40,28 @@ undefine([AC_TYPE_NAME])dnl undefine([AC_CV_NAME])dnl ]) +dnl AC_CHECK_SYSTYPE(TYPE, DEFAULT) +AC_DEFUN(AC_CHECK_SYSTYPE, +[AC_REQUIRE([AC_HEADER_STDC])dnl +AC_MSG_CHECKING(for $1) +AC_CACHE_VAL(ac_cv_type_$1, +[AC_EGREP_CPP(dnl +changequote(<<,>>)dnl +<<(^|[^a-zA-Z_0-9])$1[^a-zA-Z_0-9]>>dnl +changequote([,]), [#include +#if STDC_HEADERS +#include +#include +#endif +#if HAVE_INTTYPES_H +#include +#endif +#if HAVE_SYS_TYPES_H +#include +#endif], ac_cv_type_$1=yes, ac_cv_type_$1=no)])dnl +AC_MSG_RESULT($ac_cv_type_$1) +if test $ac_cv_type_$1 = no; then + AC_DEFINE($1, $2) +fi +]) + diff --git a/configure.in b/configure.in index 80de528f71..ca47a195c4 100644 --- a/configure.in +++ b/configure.in @@ -3,7 +3,7 @@ dnl Configuration input file for Squid dnl dnl Duane Wessels, wessels@nlanr.net, February 1996 (autoconf v2.9) dnl -dnl $Id: configure.in,v 1.266 2002/04/13 23:07:47 hno Exp $ +dnl $Id: configure.in,v 1.267 2002/04/20 10:50:49 hno Exp $ dnl dnl dnl @@ -11,7 +11,7 @@ AC_INIT(src/main.c) AC_CONFIG_AUX_DIR(cfgaux) AM_INIT_AUTOMAKE(squid, 2.6-DEVEL) AM_CONFIG_HEADER(include/autoconf.h) -AC_REVISION($Revision: 1.266 $)dnl +AC_REVISION($Revision: 1.267 $)dnl AC_PREFIX_DEFAULT(/usr/local/squid) AM_MAINTAINER_MODE @@ -1336,49 +1336,49 @@ AC_CHECK_SIZEOF_SYSTYPE(u_int64_t) dnl int16_t if test "x$ac_cv_sizeof_short" = "x2"; then - AC_CHECK_TYPE(int16_t,short) + AC_CHECK_SYSTYPE(int16_t,short) elif test "x$ac_cv_sizeof_int" = "x2"; then - AC_CHECK_TYPE(int16_t,int) + AC_CHECK_SYSTYPE(int16_t,int) fi dnl u_int16t_t if test "x$ac_cv_sizeof_uint16_t" = "x2"; then - AC_CHECK_TYPE(u_int16_t,uint16_t) + AC_CHECK_SYSTYPE(u_int16_t,uint16_t) elif test "x$ac_cv_sizeof_short" = "x2"; then - AC_CHECK_TYPE(u_int16_t,unsigned short) + AC_CHECK_SYSTYPE(u_int16_t,unsigned short) elif test "x$ac_cv_sizeof_int" = "x2"; then - AC_CHECK_TYPE(u_int16_t,unsigned int) + AC_CHECK_SYSTYPE(u_int16_t,unsigned int) fi dnl int32_t if test "x$ac_cv_sizeof_int" = "x4"; then - AC_CHECK_TYPE(int32_t,int) + AC_CHECK_SYSTYPE(int32_t,int) elif "x$ac_cv_sizeof_long" = "x4"; then - AC_CHECK_TYPE(int32_t,long) + AC_CHECK_SYSTYPE(int32_t,long) fi dnl u_int32_t if test "x$ac_cv_sizeof_uint32_t" = "x4"; then - AC_CHECK_TYPE(u_int32_t,uint32_t) + AC_CHECK_SYSTYPE(u_int32_t,uint32_t) elif test "x$ac_cv_sizeof_int" = "x4"; then - AC_CHECK_TYPE(u_int32_t,unsigned int) + AC_CHECK_SYSTYPE(u_int32_t,unsigned int) elif test "x$ac_cv_sizeof_long" = "x4"; then - AC_CHECK_TYPE(u_int32_t,unsigned long) + AC_CHECK_SYSTYPE(u_int32_t,unsigned long) fi dnl int64_t if test "x$ac_cv_sizeof_long" = "x8"; then - AC_CHECK_TYPE(int64_t,long) + AC_CHECK_SYSTYPE(int64_t,long) elif test "x$ac_cv_sizeof_long_long" = "x8"; then - AC_CHECK_TYPE(int64_t,long long) + AC_CHECK_SYSTYPE(int64_t,long long) elif test "x$ac_cv_sizeof___int64" = "x8"; then - AC_CHECK_TYPE(int64_t,__int64) + AC_CHECK_SYSTYPE(int64_t,__int64) fi dnl u_int64_t if test "x$ac_cv_sizeof_uint64_t" = "x8"; then - AC_CHECK_TYPE(u_int64_t,uint64_t) + AC_CHECK_SYSTYPE(u_int64_t,uint64_t) elif test "x$ac_cv_sizeof_long" = "x8"; then - AC_CHECK_TYPE(u_int64_t,unsigned long) + AC_CHECK_SYSTYPE(u_int64_t,unsigned long) elif test "x$ac_cv_sizeof_long_long" = "x8"; then - AC_CHECK_TYPE(u_int64_t,unsigned long long) + AC_CHECK_SYSTYPE(u_int64_t,unsigned long long) elif test "x$ac_cv_sizeof___int64" = "x8"; then - AC_CHECK_TYPE(int64_t,unsigned __int64) + AC_CHECK_SYSTYPE(int64_t,unsigned __int64) fi AC_CHECK_TYPE(pid_t, int) -- 2.47.3