]> git.ipfire.org Git - thirdparty/squid.git/commitdiff
AC_CHECK_SYSTYPE, a custom macro extending AC_CHECK_TYPE to look in a more
authorhno <>
Sat, 20 Apr 2002 16:50:49 +0000 (16:50 +0000)
committerhno <>
Sat, 20 Apr 2002 16:50:49 +0000 (16:50 +0000)
suitable set of system headers (same list as AC_CHECK_SIZEOF_SYSTYPE)

acinclude.m4
configure.in

index 589fc0cd88c2d350607e599610c5c44bc6935bef..349c57e6de054db5ac8b62b3c79b6326c9b5c397 100644 (file)
@@ -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 <sys/types.h>, <stddef.h> and <stdlib.h>)
 
 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 <stdio.h>
+#if STDC_HEADERS
+#include <stdlib.h>
+#include <stddef.h>
+#endif
 #if HAVE_INTTYPES_H
 #include <inttypes.h>
 #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 <sys/types.h>
+#if STDC_HEADERS
+#include <stdlib.h>
+#include <stddef.h>
+#endif
+#if HAVE_INTTYPES_H
+#include <inttypes.h>
+#endif
+#if HAVE_SYS_TYPES_H
+#include <sys/types.h>
+#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
+])
+
index 80de528f71562189fea58082fbc366b1629dd2da..ca47a195c4c73daf36598512c70fa4f77c8207a5 100644 (file)
@@ -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)