From 5325a34e24bae573c5788dc29f1878b77c702a6c Mon Sep 17 00:00:00 2001 From: guy Date: Wed, 20 Apr 2005 09:46:42 +0000 Subject: [PATCH] From Albert Chin: 1. On AIX, AC_LBL_C_INLINE detected the compiler supported the inline keyword which is wrong. AC_C_INLINE from autoconf-2.59 worked. 2. AC_CHECK_TYPE from autoconf-2.5x is no longer broken. Replaced AC_LBL_CHECK_TYPE with it, mainly to use for Tru64 UNIX where some of the u_int#_t types are defined. 3. Tru64 UNIX 4.0D doesn't support %llx; however, it does support %lx. 4. Added to interface.h for int#_t types on Tru64 UNIX 4.0D (required for missing/snprintf.c). 5. Reworked includes in tcpdump-stdinc.h for int#_t types. --- acconfig.h | 14 -- aclocal.m4 | 83 +------ config.h.in | 44 ++-- configure | 612 ++++++++++++++++++++++++++++++++--------------- configure.in | 76 ++++-- interface.h | 6 +- tcpdump-stdinc.h | 11 +- 7 files changed, 516 insertions(+), 330 deletions(-) diff --git a/acconfig.h b/acconfig.h index 4a743b8b..2f462e1b 100644 --- a/acconfig.h +++ b/acconfig.h @@ -20,9 +20,6 @@ /* define if your struct __res_state has the nsort member */ #undef HAVE_NEW_RES_STATE -/* define if defines PRI[doxu]64 macros */ -#undef INTTYPES_H_DEFINES_FORMATS - /* * define if struct ether_header.ether_dhost is a struct with ether_addr_octet */ @@ -106,17 +103,6 @@ /* AIX hack. */ #undef _SUN -/* Workaround for missing sized types */ -/* XXX this should move to the more standard uint*_t */ -#undef int8_t -#undef int16_t -#undef int32_t -#undef int64_t -#undef u_int8_t -#undef u_int16_t -#undef u_int32_t -#undef u_int64_t - /* Workaround for missing 64-bit formats */ #undef PRId64 #undef PRIo64 diff --git a/aclocal.m4 b/aclocal.m4 index ab7857b6..d63b2023 100644 --- a/aclocal.m4 +++ b/aclocal.m4 @@ -1,4 +1,4 @@ -dnl @(#) $Header: /tcpdump/master/tcpdump/aclocal.m4,v 1.106 2005-03-27 03:31:01 guy Exp $ (LBL) +dnl @(#) $Header: /tcpdump/master/tcpdump/aclocal.m4,v 1.106.2.1 2005-04-20 09:46:43 guy Exp $ (LBL) dnl dnl Copyright (c) 1995, 1996, 1997, 1998 dnl The Regents of the University of California. All rights reserved. @@ -157,57 +157,6 @@ AC_DEFUN(AC_LBL_C_INIT, fi ]) -# -# Try compiling a sample of the type of code that appears in -# gencode.c with "inline", "__inline__", and "__inline". -# -# Autoconf's AC_C_INLINE, at least in autoconf 2.13, isn't good enough, -# as it just tests whether a function returning "int" can be inlined; -# at least some versions of HP's C compiler can inline that, but can't -# inline a function that returns a struct pointer. -# -# Make sure we use the V_CCOPT flags, because some of those might -# disable inlining. -# -AC_DEFUN(AC_LBL_C_INLINE, - [AC_MSG_CHECKING(for inline) - save_CFLAGS="$CFLAGS" - CFLAGS="$V_CCOPT" - AC_CACHE_VAL(ac_cv_lbl_inline, [ - ac_cv_lbl_inline="" - ac_lbl_cc_inline=no - for ac_lbl_inline in inline __inline__ __inline - do - AC_TRY_COMPILE( - [#define inline $ac_lbl_inline - static inline struct iltest *foo(void); - struct iltest { - int iltest1; - int iltest2; - }; - - static inline struct iltest * - foo() - { - static struct iltest xxx; - - return &xxx; - }],,ac_lbl_cc_inline=yes,) - if test "$ac_lbl_cc_inline" = yes ; then - break; - fi - done - if test "$ac_lbl_cc_inline" = yes ; then - ac_cv_lbl_inline=$ac_lbl_inline - fi]) - CFLAGS="$save_CFLAGS" - if test ! -z "$ac_cv_lbl_inline" ; then - AC_MSG_RESULT($ac_cv_lbl_inline) - else - AC_MSG_RESULT(no) - fi - AC_DEFINE_UNQUOTED(inline, $ac_cv_lbl_inline, [Define as token for inline if inlining supported])]) - dnl dnl Use pfopen.c if available and pfopen() not in standard libraries dnl Require libpcap @@ -562,36 +511,6 @@ AC_DEFUN(AC_LBL_HAVE_RUN_PATH, AC_MSG_RESULT($ac_cv_lbl_have_run_path) ]) -dnl -dnl Due to the stupid way it's implemented, AC_CHECK_TYPE is nearly useless. -dnl -dnl usage: -dnl -dnl AC_LBL_CHECK_TYPE -dnl -dnl results: -dnl -dnl int32_t (defined) -dnl u_int32_t (defined) -dnl -AC_DEFUN(AC_LBL_CHECK_TYPE, - [AC_MSG_CHECKING(for $1 using $CC) - AC_CACHE_VAL(ac_cv_lbl_have_$1, - AC_TRY_COMPILE([ -# include "confdefs.h" -# include -# if STDC_HEADERS -# include -# include -# endif], - [$1 i], - ac_cv_lbl_have_$1=yes, - ac_cv_lbl_have_$1=no)) - AC_MSG_RESULT($ac_cv_lbl_have_$1) - if test $ac_cv_lbl_have_$1 = no ; then - AC_DEFINE($1, $2) - fi]) - dnl dnl Check whether a given format can be used to print 64-bit integers dnl diff --git a/config.h.in b/config.h.in index a02d6b7b..5d23fa9d 100644 --- a/config.h.in +++ b/config.h.in @@ -20,9 +20,6 @@ /* define if your struct __res_state has the nsort member */ #undef HAVE_NEW_RES_STATE -/* define if defines PRI[doxu]64 macros */ -#undef INTTYPES_H_DEFINES_FORMATS - /* * define if struct ether_header.ether_dhost is a struct with ether_addr_octet */ @@ -106,17 +103,6 @@ /* AIX hack. */ #undef _SUN -/* Workaround for missing sized types */ -/* XXX this should move to the more standard uint*_t */ -#undef int8_t -#undef int16_t -#undef int32_t -#undef int64_t -#undef u_int8_t -#undef u_int16_t -#undef u_int32_t -#undef u_int64_t - /* Workaround for missing 64-bit formats */ #undef PRId64 #undef PRIo64 @@ -261,6 +247,9 @@ /* Define to 1 if you have the `strsep' function. */ #undef HAVE_STRSEP +/* Define to 1 if you have the header file. */ +#undef HAVE_SYS_BITYPES_H + /* Define to 1 if you have the header file. */ #undef HAVE_SYS_STAT_H @@ -324,5 +313,30 @@ /* Define to 1 if you can safely include both and . */ #undef TIME_WITH_SYS_TIME -/* Define as token for inline if inlining supported */ +/* Define as `__inline' if that's what the C compiler calls it, or to nothing + if it is not supported. */ #undef inline + +/* Define to `short' if int16_t not defined. */ +#undef int16_t + +/* Define to `int' if int32_t not defined. */ +#undef int32_t + +/* Define to `long long' if int64_t not defined. */ +#undef int64_t + +/* Define to `signed char' if int8_t not defined. */ +#undef int8_t + +/* Define to `unsigned short' if u_int16_t not defined. */ +#undef u_int16_t + +/* Define to `unsigned int' if u_int32_t not defined. */ +#undef u_int32_t + +/* Define to `unsigned long long' if u_int64_t not defined. */ +#undef u_int64_t + +/* Define to `unsigned char' if u_int8_t not defined. */ +#undef u_int8_t diff --git a/configure b/configure index 3af07450..56b87c50 100755 --- a/configure +++ b/configure @@ -1,5 +1,5 @@ #! /bin/sh -# From configure.in Revision: 1.188 . +# From configure.in Revision: 1.188.2.1 . # Guess values for system-dependent variables and create Makefiles. # Generated by GNU Autoconf 2.57. # @@ -2503,44 +2503,24 @@ _ACEOF echo "$as_me:$LINENO: checking for inline" >&5 echo $ECHO_N "checking for inline... $ECHO_C" >&6 - save_CFLAGS="$CFLAGS" - CFLAGS="$V_CCOPT" - if test "${ac_cv_lbl_inline+set}" = set; then +if test "${ac_cv_c_inline+set}" = set; then echo $ECHO_N "(cached) $ECHO_C" >&6 else - - ac_cv_lbl_inline="" - ac_lbl_cc_inline=no - for ac_lbl_inline in inline __inline__ __inline - do - cat >conftest.$ac_ext <<_ACEOF + ac_cv_c_inline=no +for ac_kw in inline __inline__ __inline; do + cat >conftest.$ac_ext <<_ACEOF #line $LINENO "configure" /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ -#define inline $ac_lbl_inline - static inline struct iltest *foo(void); - struct iltest { - int iltest1; - int iltest2; - }; - - static inline struct iltest * - foo() - { - static struct iltest xxx; - - return &xxx; - } -int -main () -{ +#ifndef __cplusplus +typedef int foo_t; +static $ac_kw foo_t static_foo () {return 0; } +$ac_kw foo_t foo () {return 0; } +#endif - ; - return 0; -} _ACEOF rm -f conftest.$ac_objext if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 @@ -2554,34 +2534,30 @@ if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; }; then - ac_lbl_cc_inline=yes + ac_cv_c_inline=$ac_kw; break else echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 fi rm -f conftest.$ac_objext conftest.$ac_ext - if test "$ac_lbl_cc_inline" = yes ; then - break; - fi - done - if test "$ac_lbl_cc_inline" = yes ; then - ac_cv_lbl_inline=$ac_lbl_inline - fi -fi - - CFLAGS="$save_CFLAGS" - if test ! -z "$ac_cv_lbl_inline" ; then - echo "$as_me:$LINENO: result: $ac_cv_lbl_inline" >&5 -echo "${ECHO_T}$ac_cv_lbl_inline" >&6 - else - echo "$as_me:$LINENO: result: no" >&5 -echo "${ECHO_T}no" >&6 - fi +done -cat >>confdefs.h <<_ACEOF -#define inline $ac_cv_lbl_inline +fi +echo "$as_me:$LINENO: result: $ac_cv_c_inline" >&5 +echo "${ECHO_T}$ac_cv_c_inline" >&6 +case $ac_cv_c_inline in + inline | yes) ;; + no) +cat >>confdefs.h <<\_ACEOF +#define inline _ACEOF + ;; + *) cat >>confdefs.h <<_ACEOF +#define inline $ac_cv_c_inline +_ACEOF + ;; +esac echo "$as_me:$LINENO: checking for __attribute__" >&5 @@ -9899,29 +9875,169 @@ if test -f /dev/bpf0 ; then V_GROUP=bpf fi -echo "$as_me:$LINENO: checking for int8_t using $CC" >&5 -echo $ECHO_N "checking for int8_t using $CC... $ECHO_C" >&6 - if test "${ac_cv_lbl_have_int8_t+set}" = set; then + +for ac_header in sys/bitypes.h +do +as_ac_Header=`echo "ac_cv_header_$ac_header" | $as_tr_sh` +if eval "test \"\${$as_ac_Header+set}\" = set"; then + echo "$as_me:$LINENO: checking for $ac_header" >&5 +echo $ECHO_N "checking for $ac_header... $ECHO_C" >&6 +if eval "test \"\${$as_ac_Header+set}\" = set"; then echo $ECHO_N "(cached) $ECHO_C" >&6 +fi +echo "$as_me:$LINENO: result: `eval echo '${'$as_ac_Header'}'`" >&5 +echo "${ECHO_T}`eval echo '${'$as_ac_Header'}'`" >&6 else - cat >conftest.$ac_ext <<_ACEOF + # Is the header compilable? +echo "$as_me:$LINENO: checking $ac_header usability" >&5 +echo $ECHO_N "checking $ac_header usability... $ECHO_C" >&6 +cat >conftest.$ac_ext <<_ACEOF #line $LINENO "configure" /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ +$ac_includes_default +#include <$ac_header> +_ACEOF +rm -f conftest.$ac_objext +if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 + (eval $ac_compile) 2>&5 + ac_status=$? + echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); } && + { ac_try='test -s conftest.$ac_objext' + { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 + (eval $ac_try) 2>&5 + ac_status=$? + echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); }; }; then + ac_header_compiler=yes +else + echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 -# include "confdefs.h" -# include -# if STDC_HEADERS -# include -# include -# endif +ac_header_compiler=no +fi +rm -f conftest.$ac_objext conftest.$ac_ext +echo "$as_me:$LINENO: result: $ac_header_compiler" >&5 +echo "${ECHO_T}$ac_header_compiler" >&6 + +# Is the header present? +echo "$as_me:$LINENO: checking $ac_header presence" >&5 +echo $ECHO_N "checking $ac_header presence... $ECHO_C" >&6 +cat >conftest.$ac_ext <<_ACEOF +#line $LINENO "configure" +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ +#include <$ac_header> +_ACEOF +if { (eval echo "$as_me:$LINENO: \"$ac_cpp conftest.$ac_ext\"") >&5 + (eval $ac_cpp conftest.$ac_ext) 2>conftest.er1 + ac_status=$? + grep -v '^ *+' conftest.er1 >conftest.err + rm -f conftest.er1 + cat conftest.err >&5 + echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); } >/dev/null; then + if test -s conftest.err; then + ac_cpp_err=$ac_c_preproc_warn_flag + else + ac_cpp_err= + fi +else + ac_cpp_err=yes +fi +if test -z "$ac_cpp_err"; then + ac_header_preproc=yes +else + echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + + ac_header_preproc=no +fi +rm -f conftest.err conftest.$ac_ext +echo "$as_me:$LINENO: result: $ac_header_preproc" >&5 +echo "${ECHO_T}$ac_header_preproc" >&6 + +# So? What about this header? +case $ac_header_compiler:$ac_header_preproc in + yes:no ) + { echo "$as_me:$LINENO: WARNING: $ac_header: accepted by the compiler, rejected by the preprocessor!" >&5 +echo "$as_me: WARNING: $ac_header: accepted by the compiler, rejected by the preprocessor!" >&2;} + { echo "$as_me:$LINENO: WARNING: $ac_header: proceeding with the preprocessor's result" >&5 +echo "$as_me: WARNING: $ac_header: proceeding with the preprocessor's result" >&2;} + ( + cat <<\_ASBOX +## ------------------------------------ ## +## Report this to bug-autoconf@gnu.org. ## +## ------------------------------------ ## +_ASBOX + ) | + sed "s/^/$as_me: WARNING: /" >&2 + ;; + no:yes ) + { echo "$as_me:$LINENO: WARNING: $ac_header: present but cannot be compiled" >&5 +echo "$as_me: WARNING: $ac_header: present but cannot be compiled" >&2;} + { echo "$as_me:$LINENO: WARNING: $ac_header: check for missing prerequisite headers?" >&5 +echo "$as_me: WARNING: $ac_header: check for missing prerequisite headers?" >&2;} + { echo "$as_me:$LINENO: WARNING: $ac_header: proceeding with the preprocessor's result" >&5 +echo "$as_me: WARNING: $ac_header: proceeding with the preprocessor's result" >&2;} + ( + cat <<\_ASBOX +## ------------------------------------ ## +## Report this to bug-autoconf@gnu.org. ## +## ------------------------------------ ## +_ASBOX + ) | + sed "s/^/$as_me: WARNING: /" >&2 + ;; +esac +echo "$as_me:$LINENO: checking for $ac_header" >&5 +echo $ECHO_N "checking for $ac_header... $ECHO_C" >&6 +if eval "test \"\${$as_ac_Header+set}\" = set"; then + echo $ECHO_N "(cached) $ECHO_C" >&6 +else + eval "$as_ac_Header=$ac_header_preproc" +fi +echo "$as_me:$LINENO: result: `eval echo '${'$as_ac_Header'}'`" >&5 +echo "${ECHO_T}`eval echo '${'$as_ac_Header'}'`" >&6 + +fi +if test `eval echo '${'$as_ac_Header'}'` = yes; then + cat >>confdefs.h <<_ACEOF +#define `echo "HAVE_$ac_header" | $as_tr_cpp` 1 +_ACEOF + +fi + +done + + +echo "$as_me:$LINENO: checking for int8_t" >&5 +echo $ECHO_N "checking for int8_t... $ECHO_C" >&6 +if test "${ac_cv_type_int8_t+set}" = set; then + echo $ECHO_N "(cached) $ECHO_C" >&6 +else + cat >conftest.$ac_ext <<_ACEOF +#line $LINENO "configure" +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ +$ac_includes_default int main () { -int8_t i +if ((int8_t *) 0) + return 0; +if (sizeof (int8_t)) + return 0; ; return 0; } @@ -9938,27 +10054,30 @@ if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; }; then - ac_cv_lbl_have_int8_t=yes + ac_cv_type_int8_t=yes else echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 -ac_cv_lbl_have_int8_t=no +ac_cv_type_int8_t=no fi rm -f conftest.$ac_objext conftest.$ac_ext fi +echo "$as_me:$LINENO: result: $ac_cv_type_int8_t" >&5 +echo "${ECHO_T}$ac_cv_type_int8_t" >&6 +if test $ac_cv_type_int8_t = yes; then + : +else - echo "$as_me:$LINENO: result: $ac_cv_lbl_have_int8_t" >&5 -echo "${ECHO_T}$ac_cv_lbl_have_int8_t" >&6 - if test $ac_cv_lbl_have_int8_t = no ; then - cat >>confdefs.h <<\_ACEOF +cat >>confdefs.h <<\_ACEOF #define int8_t signed char _ACEOF - fi -echo "$as_me:$LINENO: checking for u_int8_t using $CC" >&5 -echo $ECHO_N "checking for u_int8_t using $CC... $ECHO_C" >&6 - if test "${ac_cv_lbl_have_u_int8_t+set}" = set; then +fi + +echo "$as_me:$LINENO: checking for u_int8_t" >&5 +echo $ECHO_N "checking for u_int8_t... $ECHO_C" >&6 +if test "${ac_cv_type_u_int8_t+set}" = set; then echo $ECHO_N "(cached) $ECHO_C" >&6 else cat >conftest.$ac_ext <<_ACEOF @@ -9968,17 +10087,18 @@ _ACEOF cat confdefs.h >>conftest.$ac_ext cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ +$ac_includes_default +#ifdef HAVE_SYS_BITYPES_H +#include +#endif -# include "confdefs.h" -# include -# if STDC_HEADERS -# include -# include -# endif int main () { -u_int8_t i +if ((u_int8_t *) 0) + return 0; +if (sizeof (u_int8_t)) + return 0; ; return 0; } @@ -9995,27 +10115,30 @@ if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; }; then - ac_cv_lbl_have_u_int8_t=yes + ac_cv_type_u_int8_t=yes else echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 -ac_cv_lbl_have_u_int8_t=no +ac_cv_type_u_int8_t=no fi rm -f conftest.$ac_objext conftest.$ac_ext fi +echo "$as_me:$LINENO: result: $ac_cv_type_u_int8_t" >&5 +echo "${ECHO_T}$ac_cv_type_u_int8_t" >&6 +if test $ac_cv_type_u_int8_t = yes; then + : +else - echo "$as_me:$LINENO: result: $ac_cv_lbl_have_u_int8_t" >&5 -echo "${ECHO_T}$ac_cv_lbl_have_u_int8_t" >&6 - if test $ac_cv_lbl_have_u_int8_t = no ; then - cat >>confdefs.h <<\_ACEOF -#define u_int8_t u_char +cat >>confdefs.h <<\_ACEOF +#define u_int8_t unsigned char _ACEOF - fi -echo "$as_me:$LINENO: checking for int16_t using $CC" >&5 -echo $ECHO_N "checking for int16_t using $CC... $ECHO_C" >&6 - if test "${ac_cv_lbl_have_int16_t+set}" = set; then +fi + +echo "$as_me:$LINENO: checking for int16_t" >&5 +echo $ECHO_N "checking for int16_t... $ECHO_C" >&6 +if test "${ac_cv_type_int16_t+set}" = set; then echo $ECHO_N "(cached) $ECHO_C" >&6 else cat >conftest.$ac_ext <<_ACEOF @@ -10025,17 +10148,14 @@ _ACEOF cat confdefs.h >>conftest.$ac_ext cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ - -# include "confdefs.h" -# include -# if STDC_HEADERS -# include -# include -# endif +$ac_includes_default int main () { -int16_t i +if ((int16_t *) 0) + return 0; +if (sizeof (int16_t)) + return 0; ; return 0; } @@ -10052,27 +10172,30 @@ if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; }; then - ac_cv_lbl_have_int16_t=yes + ac_cv_type_int16_t=yes else echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 -ac_cv_lbl_have_int16_t=no +ac_cv_type_int16_t=no fi rm -f conftest.$ac_objext conftest.$ac_ext fi +echo "$as_me:$LINENO: result: $ac_cv_type_int16_t" >&5 +echo "${ECHO_T}$ac_cv_type_int16_t" >&6 +if test $ac_cv_type_int16_t = yes; then + : +else - echo "$as_me:$LINENO: result: $ac_cv_lbl_have_int16_t" >&5 -echo "${ECHO_T}$ac_cv_lbl_have_int16_t" >&6 - if test $ac_cv_lbl_have_int16_t = no ; then - cat >>confdefs.h <<\_ACEOF +cat >>confdefs.h <<\_ACEOF #define int16_t short _ACEOF - fi -echo "$as_me:$LINENO: checking for u_int16_t using $CC" >&5 -echo $ECHO_N "checking for u_int16_t using $CC... $ECHO_C" >&6 - if test "${ac_cv_lbl_have_u_int16_t+set}" = set; then +fi + +echo "$as_me:$LINENO: checking for u_int16_t" >&5 +echo $ECHO_N "checking for u_int16_t... $ECHO_C" >&6 +if test "${ac_cv_type_u_int16_t+set}" = set; then echo $ECHO_N "(cached) $ECHO_C" >&6 else cat >conftest.$ac_ext <<_ACEOF @@ -10082,17 +10205,18 @@ _ACEOF cat confdefs.h >>conftest.$ac_ext cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ +$ac_includes_default +#ifdef HAVE_SYS_BITYPES_H +#include +#endif -# include "confdefs.h" -# include -# if STDC_HEADERS -# include -# include -# endif int main () { -u_int16_t i +if ((u_int16_t *) 0) + return 0; +if (sizeof (u_int16_t)) + return 0; ; return 0; } @@ -10109,27 +10233,30 @@ if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; }; then - ac_cv_lbl_have_u_int16_t=yes + ac_cv_type_u_int16_t=yes else echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 -ac_cv_lbl_have_u_int16_t=no +ac_cv_type_u_int16_t=no fi rm -f conftest.$ac_objext conftest.$ac_ext fi +echo "$as_me:$LINENO: result: $ac_cv_type_u_int16_t" >&5 +echo "${ECHO_T}$ac_cv_type_u_int16_t" >&6 +if test $ac_cv_type_u_int16_t = yes; then + : +else - echo "$as_me:$LINENO: result: $ac_cv_lbl_have_u_int16_t" >&5 -echo "${ECHO_T}$ac_cv_lbl_have_u_int16_t" >&6 - if test $ac_cv_lbl_have_u_int16_t = no ; then - cat >>confdefs.h <<\_ACEOF -#define u_int16_t u_short +cat >>confdefs.h <<\_ACEOF +#define u_int16_t unsigned short _ACEOF - fi -echo "$as_me:$LINENO: checking for int32_t using $CC" >&5 -echo $ECHO_N "checking for int32_t using $CC... $ECHO_C" >&6 - if test "${ac_cv_lbl_have_int32_t+set}" = set; then +fi + +echo "$as_me:$LINENO: checking for int32_t" >&5 +echo $ECHO_N "checking for int32_t... $ECHO_C" >&6 +if test "${ac_cv_type_int32_t+set}" = set; then echo $ECHO_N "(cached) $ECHO_C" >&6 else cat >conftest.$ac_ext <<_ACEOF @@ -10139,17 +10266,14 @@ _ACEOF cat confdefs.h >>conftest.$ac_ext cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ - -# include "confdefs.h" -# include -# if STDC_HEADERS -# include -# include -# endif +$ac_includes_default int main () { -int32_t i +if ((int32_t *) 0) + return 0; +if (sizeof (int32_t)) + return 0; ; return 0; } @@ -10166,27 +10290,30 @@ if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; }; then - ac_cv_lbl_have_int32_t=yes + ac_cv_type_int32_t=yes else echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 -ac_cv_lbl_have_int32_t=no +ac_cv_type_int32_t=no fi rm -f conftest.$ac_objext conftest.$ac_ext fi +echo "$as_me:$LINENO: result: $ac_cv_type_int32_t" >&5 +echo "${ECHO_T}$ac_cv_type_int32_t" >&6 +if test $ac_cv_type_int32_t = yes; then + : +else - echo "$as_me:$LINENO: result: $ac_cv_lbl_have_int32_t" >&5 -echo "${ECHO_T}$ac_cv_lbl_have_int32_t" >&6 - if test $ac_cv_lbl_have_int32_t = no ; then - cat >>confdefs.h <<\_ACEOF +cat >>confdefs.h <<\_ACEOF #define int32_t int _ACEOF - fi -echo "$as_me:$LINENO: checking for u_int32_t using $CC" >&5 -echo $ECHO_N "checking for u_int32_t using $CC... $ECHO_C" >&6 - if test "${ac_cv_lbl_have_u_int32_t+set}" = set; then +fi + +echo "$as_me:$LINENO: checking for u_int32_t" >&5 +echo $ECHO_N "checking for u_int32_t... $ECHO_C" >&6 +if test "${ac_cv_type_u_int32_t+set}" = set; then echo $ECHO_N "(cached) $ECHO_C" >&6 else cat >conftest.$ac_ext <<_ACEOF @@ -10196,17 +10323,18 @@ _ACEOF cat confdefs.h >>conftest.$ac_ext cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ +$ac_includes_default +#ifdef HAVE_SYS_BITYPES_H +#include +#endif -# include "confdefs.h" -# include -# if STDC_HEADERS -# include -# include -# endif int main () { -u_int32_t i +if ((u_int32_t *) 0) + return 0; +if (sizeof (u_int32_t)) + return 0; ; return 0; } @@ -10223,27 +10351,30 @@ if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; }; then - ac_cv_lbl_have_u_int32_t=yes + ac_cv_type_u_int32_t=yes else echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 -ac_cv_lbl_have_u_int32_t=no +ac_cv_type_u_int32_t=no fi rm -f conftest.$ac_objext conftest.$ac_ext fi +echo "$as_me:$LINENO: result: $ac_cv_type_u_int32_t" >&5 +echo "${ECHO_T}$ac_cv_type_u_int32_t" >&6 +if test $ac_cv_type_u_int32_t = yes; then + : +else - echo "$as_me:$LINENO: result: $ac_cv_lbl_have_u_int32_t" >&5 -echo "${ECHO_T}$ac_cv_lbl_have_u_int32_t" >&6 - if test $ac_cv_lbl_have_u_int32_t = no ; then - cat >>confdefs.h <<\_ACEOF -#define u_int32_t u_int +cat >>confdefs.h <<\_ACEOF +#define u_int32_t unsigned int _ACEOF - fi -echo "$as_me:$LINENO: checking for int64_t using $CC" >&5 -echo $ECHO_N "checking for int64_t using $CC... $ECHO_C" >&6 - if test "${ac_cv_lbl_have_int64_t+set}" = set; then +fi + +echo "$as_me:$LINENO: checking for int64_t" >&5 +echo $ECHO_N "checking for int64_t... $ECHO_C" >&6 +if test "${ac_cv_type_int64_t+set}" = set; then echo $ECHO_N "(cached) $ECHO_C" >&6 else cat >conftest.$ac_ext <<_ACEOF @@ -10253,17 +10384,14 @@ _ACEOF cat confdefs.h >>conftest.$ac_ext cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ - -# include "confdefs.h" -# include -# if STDC_HEADERS -# include -# include -# endif +$ac_includes_default int main () { -int64_t i +if ((int64_t *) 0) + return 0; +if (sizeof (int64_t)) + return 0; ; return 0; } @@ -10280,27 +10408,30 @@ if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; }; then - ac_cv_lbl_have_int64_t=yes + ac_cv_type_int64_t=yes else echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 -ac_cv_lbl_have_int64_t=no +ac_cv_type_int64_t=no fi rm -f conftest.$ac_objext conftest.$ac_ext fi +echo "$as_me:$LINENO: result: $ac_cv_type_int64_t" >&5 +echo "${ECHO_T}$ac_cv_type_int64_t" >&6 +if test $ac_cv_type_int64_t = yes; then + : +else - echo "$as_me:$LINENO: result: $ac_cv_lbl_have_int64_t" >&5 -echo "${ECHO_T}$ac_cv_lbl_have_int64_t" >&6 - if test $ac_cv_lbl_have_int64_t = no ; then - cat >>confdefs.h <<\_ACEOF +cat >>confdefs.h <<\_ACEOF #define int64_t long long _ACEOF - fi -echo "$as_me:$LINENO: checking for u_int64_t using $CC" >&5 -echo $ECHO_N "checking for u_int64_t using $CC... $ECHO_C" >&6 - if test "${ac_cv_lbl_have_u_int64_t+set}" = set; then +fi + +echo "$as_me:$LINENO: checking for u_int64_t" >&5 +echo $ECHO_N "checking for u_int64_t... $ECHO_C" >&6 +if test "${ac_cv_type_u_int64_t+set}" = set; then echo $ECHO_N "(cached) $ECHO_C" >&6 else cat >conftest.$ac_ext <<_ACEOF @@ -10310,17 +10441,18 @@ _ACEOF cat confdefs.h >>conftest.$ac_ext cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ +$ac_includes_default +#ifdef HAVE_SYS_BITYPES_H +#include +#endif -# include "confdefs.h" -# include -# if STDC_HEADERS -# include -# include -# endif int main () { -u_int64_t i +if ((u_int64_t *) 0) + return 0; +if (sizeof (u_int64_t)) + return 0; ; return 0; } @@ -10337,24 +10469,27 @@ if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; }; then - ac_cv_lbl_have_u_int64_t=yes + ac_cv_type_u_int64_t=yes else echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 -ac_cv_lbl_have_u_int64_t=no +ac_cv_type_u_int64_t=no fi rm -f conftest.$ac_objext conftest.$ac_ext fi +echo "$as_me:$LINENO: result: $ac_cv_type_u_int64_t" >&5 +echo "${ECHO_T}$ac_cv_type_u_int64_t" >&6 +if test $ac_cv_type_u_int64_t = yes; then + : +else - echo "$as_me:$LINENO: result: $ac_cv_lbl_have_u_int64_t" >&5 -echo "${ECHO_T}$ac_cv_lbl_have_u_int64_t" >&6 - if test $ac_cv_lbl_have_u_int64_t = no ; then - cat >>confdefs.h <<\_ACEOF +cat >>confdefs.h <<\_ACEOF #define u_int64_t unsigned long long _ACEOF - fi +fi + # # We can't just check for - some systems have one that @@ -10515,6 +10650,9 @@ cat >>conftest.$ac_ext <<_ACEOF #include #include #include + #ifdef HAVE_SYS_BITYPES_H + #include + #endif main() { @@ -10567,12 +10705,86 @@ fi done -if test "$ac_lbl_inttypes_h_defines_formats" = yes; then - cat >>confdefs.h <<\_ACEOF -#define INTTYPES_H_DEFINES_FORMATS 1 +if test "$ac_lbl_inttypes_h_defines_formats" = no; then + + echo "$as_me:$LINENO: checking whether %lx can be used to format 64-bit integers" >&5 +echo $ECHO_N "checking whether %lx can be used to format 64-bit integers... $ECHO_C" >&6 + if test "$cross_compiling" = yes; then + { { echo "$as_me:$LINENO: error: cannot run test program while cross compiling +See \`config.log' for more details." >&5 +echo "$as_me: error: cannot run test program while cross compiling +See \`config.log' for more details." >&2;} + { (exit 1); exit 1; }; } +else + cat >conftest.$ac_ext <<_ACEOF + + #line $LINENO "configure" +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ + +# ifdef HAVE_INTTYPES_H + #include +# endif + #include + #include + + main() + { + u_int64_t t = 1; + char strbuf[16+1]; + sprintf(strbuf, "%016lx", t << 32); + if (strcmp(strbuf, "0000000100000000") == 0) + exit(0); + else + exit(1); + } + + +_ACEOF +rm -f conftest$ac_exeext +if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5 + (eval $ac_link) 2>&5 + ac_status=$? + echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); } && { ac_try='./conftest$ac_exeext' + { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 + (eval $ac_try) 2>&5 + ac_status=$? + echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); }; }; then + + cat >>confdefs.h <<\_ACEOF +#define PRId64 "ld" +_ACEOF + + cat >>confdefs.h <<\_ACEOF +#define PRIo64 "lo" +_ACEOF + + cat >>confdefs.h <<\_ACEOF +#define PRIx64 "lx" _ACEOF + cat >>confdefs.h <<\_ACEOF +#define PRIu64 "lu" +_ACEOF + + echo "$as_me:$LINENO: result: yes" >&5 +echo "${ECHO_T}yes" >&6 + else + echo "$as_me: program exited with status $ac_status" >&5 +echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + +( exit $ac_status ) + + echo "$as_me:$LINENO: result: no" >&5 +echo "${ECHO_T}no" >&6 + echo "$as_me:$LINENO: checking whether %llx can be used to format 64-bit integers" >&5 echo $ECHO_N "checking whether %llx can be used to format 64-bit integers... $ECHO_C" >&6 @@ -10810,7 +11022,7 @@ sed 's/^/| /' conftest.$ac_ext >&5 echo "$as_me:$LINENO: result: no" >&5 echo "${ECHO_T}no" >&6 - { { echo "$as_me:$LINENO: error: neither %llx nor %Lx nor %qx worked on a 64-bit integer" >&5 + { { echo "$as_me:$LINENO: error: neither %llx nor %Lx nor %qx worked on a 64-bit integer" >&5 echo "$as_me: error: neither %llx nor %Lx nor %qx worked on a 64-bit integer" >&2;} { (exit 1); exit 1; }; } @@ -10827,6 +11039,12 @@ fi +fi +rm -f core core.* *.core gmon.out bb.out conftest$ac_exeext conftest.$ac_objext conftest.$ac_ext +fi + + + fi rm -f core core.* *.core gmon.out bb.out conftest$ac_exeext conftest.$ac_objext conftest.$ac_ext fi diff --git a/configure.in b/configure.in index f5f4afed..c9243f8e 100644 --- a/configure.in +++ b/configure.in @@ -1,4 +1,4 @@ -dnl @(#) $Header: /tcpdump/master/tcpdump/configure.in,v 1.188 2005-03-27 23:16:08 guy Exp $ (LBL) +dnl @(#) $Header: /tcpdump/master/tcpdump/configure.in,v 1.188.2.1 2005-04-20 09:46:44 guy Exp $ (LBL) dnl dnl Copyright (c) 1994, 1995, 1996, 1997 dnl The Regents of the University of California. All rights reserved. @@ -6,14 +6,14 @@ dnl dnl Process this file with autoconf to produce a configure script. dnl -AC_REVISION($Revision: 1.188 $) +AC_REVISION($Revision: 1.188.2.1 $) AC_PREREQ(2.50) AC_INIT(tcpdump.c) AC_CANONICAL_HOST AC_LBL_C_INIT(V_CCOPT, V_INCLS) -AC_LBL_C_INLINE +AC_C_INLINE AC_C___ATTRIBUTE__ AC_CHECK_HEADERS(fcntl.h rpc/rpcent.h netdnet/dnetdb.h) AC_CHECK_HEADERS(netinet/if_ether.h, , , [#include @@ -761,14 +761,48 @@ if test -f /dev/bpf0 ; then V_GROUP=bpf fi -AC_LBL_CHECK_TYPE(int8_t, signed char) -AC_LBL_CHECK_TYPE(u_int8_t, u_char) -AC_LBL_CHECK_TYPE(int16_t, short) -AC_LBL_CHECK_TYPE(u_int16_t, u_short) -AC_LBL_CHECK_TYPE(int32_t, int) -AC_LBL_CHECK_TYPE(u_int32_t, u_int) -AC_LBL_CHECK_TYPE(int64_t, long long) -AC_LBL_CHECK_TYPE(u_int64_t, unsigned long long) +AC_CHECK_HEADERS(sys/bitypes.h) + +AC_CHECK_TYPE([int8_t], , + [AC_DEFINE([int8_t], [signed char], + [Define to `signed char' if int8_t not defined.])]) +AC_CHECK_TYPE([u_int8_t], , + [AC_DEFINE([u_int8_t], [unsigned char], + [Define to `unsigned char' if u_int8_t not defined.])], + [AC_INCLUDES_DEFAULT +#ifdef HAVE_SYS_BITYPES_H +#include +#endif]) +AC_CHECK_TYPE([int16_t], , + [AC_DEFINE([int16_t], [short], + [Define to `short' if int16_t not defined.])]) +AC_CHECK_TYPE([u_int16_t], , + [AC_DEFINE([u_int16_t], [unsigned short], + [Define to `unsigned short' if u_int16_t not defined.])], + [AC_INCLUDES_DEFAULT +#ifdef HAVE_SYS_BITYPES_H +#include +#endif]) +AC_CHECK_TYPE([int32_t], , + [AC_DEFINE([int32_t], [int], + [Define to `int' if int32_t not defined.])]) +AC_CHECK_TYPE([u_int32_t], , + [AC_DEFINE([u_int32_t], [unsigned int], + [Define to `unsigned int' if u_int32_t not defined.])], + [AC_INCLUDES_DEFAULT +#ifdef HAVE_SYS_BITYPES_H +#include +#endif]) +AC_CHECK_TYPE([int64_t], , + [AC_DEFINE([int64_t], [long long], + [Define to `long long' if int64_t not defined.])]) +AC_CHECK_TYPE([u_int64_t], , + [AC_DEFINE([u_int64_t], [unsigned long long], + [Define to `unsigned long long' if u_int64_t not defined.])], + [AC_INCLUDES_DEFAULT +#ifdef HAVE_SYS_BITYPES_H +#include +#endif]) # # We can't just check for - some systems have one that @@ -787,6 +821,9 @@ AC_CHECK_HEADERS(inttypes.h, #include #include #include + #ifdef HAVE_SYS_BITYPES_H + #include + #endif main() { @@ -813,16 +850,17 @@ AC_CHECK_HEADERS(inttypes.h, # ac_lbl_inttypes_h_defines_formats=no ]) -if test "$ac_lbl_inttypes_h_defines_formats" = yes; then - AC_DEFINE(INTTYPES_H_DEFINES_FORMATS) -else - AC_LBL_CHECK_64BIT_FORMAT(ll, +if test "$ac_lbl_inttypes_h_defines_formats" = no; then + AC_LBL_CHECK_64BIT_FORMAT(l, [ - AC_LBL_CHECK_64BIT_FORMAT(L, - [ - AC_LBL_CHECK_64BIT_FORMAT(q, + AC_LBL_CHECK_64BIT_FORMAT(ll, + [ + AC_LBL_CHECK_64BIT_FORMAT(L, [ - AC_MSG_ERROR([neither %llx nor %Lx nor %qx worked on a 64-bit integer]) + AC_LBL_CHECK_64BIT_FORMAT(q, + [ + AC_MSG_ERROR([neither %llx nor %Lx nor %qx worked on a 64-bit integer]) + ]) ]) ]) ]) diff --git a/interface.h b/interface.h index cfca5276..52c91c39 100644 --- a/interface.h +++ b/interface.h @@ -18,7 +18,7 @@ * WARRANTIES, INCLUDING, WITHOUT LIMITATION, THE IMPLIED WARRANTIES OF * MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. * - * @(#) $Header: /tcpdump/master/tcpdump/interface.h,v 1.244.2.1 2005-04-19 20:33:37 guy Exp $ (LBL) + * @(#) $Header: /tcpdump/master/tcpdump/interface.h,v 1.244.2.2 2005-04-20 09:46:44 guy Exp $ (LBL) */ #ifndef tcpdump_interface_h @@ -36,6 +36,10 @@ #include +#if HAVE_STDINT_H +#include +#endif + #if !defined(HAVE_SNPRINTF) int snprintf(char *, size_t, const char *, ...) __attribute__((format(printf, 3, 4))); diff --git a/tcpdump-stdinc.h b/tcpdump-stdinc.h index 4256d596..d35161c4 100644 --- a/tcpdump-stdinc.h +++ b/tcpdump-stdinc.h @@ -29,7 +29,7 @@ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. * * - * @(#) $Header: /tcpdump/master/tcpdump/tcpdump-stdinc.h,v 1.12 2005-03-27 01:35:45 guy Exp $ (LBL) + * @(#) $Header: /tcpdump/master/tcpdump/tcpdump-stdinc.h,v 1.12.2.1 2005-04-20 09:46:45 guy Exp $ (LBL) */ /* @@ -89,8 +89,15 @@ typedef char* caddr_t; #include #include #include -#ifdef INTTYPES_H_DEFINES_FORMATS +#if HAVE_INTTYPES_H #include +#else +#if HAVE_STDINT_H +#include +#endif +#endif +#ifdef HAVE_SYS_BITYPES_H +#include #endif #include #include /* concession to AIX */ -- 2.39.5