X-Git-Url: http://www.chiark.greenend.org.uk/ucgi/~ian/git?a=blobdiff_plain;f=configure.ac;h=674ed3642da6ef96a0e5cd27b171fef83af451fa;hb=49b56eafcd147185c28848a7c04e31a32c49a82e;hp=8f8fab3e4c76a46ddee9a01c1e6c066d19274834;hpb=6522f1c523c246d62441d717936704d7a7f1e979;p=secnet.git diff --git a/configure.ac b/configure.ac index 8f8fab3..674ed36 100644 --- a/configure.ac +++ b/configure.ac @@ -25,7 +25,7 @@ AC_INIT(secnet,0.1.18+,secnet@chiark.greenend.org.uk) AC_CONFIG_SRCDIR(secnet.c) AC_CONFIG_HEADER(config.h) -SUBDIRMK_SUBDIRS([test-example mtest stest]) +SUBDIRMK_SUBDIRS([test-example mtest stest base91s]) AC_PREREQ(2.50) AC_REVISION($Id: configure.in,v 1.4 2002/09/09 22:05:02 steve Exp $) @@ -40,11 +40,30 @@ if test "x$FINK" != x; then LDFLAGS="-L$finkdir/lib ${LDFLAGS}" fi +# This is quite unpleasant. It turns out that most header checking +# macros call AC_INCLUDES_DEFAULT. By default AC_INCLUDES_DEFAULT +# implies AC_HEADER_STDC and a bunch of conditional includes. But +# these header checks are obsolete as the documentation for +# AC_HEADER_STDC says. Instead, define AC_INCLUDES_DEFAULT ourselves. +# The list of headers below is the list from `(autoconf) Default +# Includes' (filtered by hand for the modern ones rather than the +# fallbacks). We must include $1 because AC_INCLUDES_DEFAULT is +# called with an argument giving the check-specific haders. +m4_define([AC_INCLUDES_DEFAULT],[ + # include + # include + # include + # include + # include + # include + # include + # include +$1 +]) + AC_PROG_MAKE_SET AC_PROG_CC AC_PROG_INSTALL -AC_STDC_HEADERS -AC_CHECK_HEADERS([stdint.h inttypes.h]) AC_CHECK_HEADERS([net/if.h net/route.h]) AC_CHECK_HEADERS([sys/socket.h]) AC_CHECK_HEADERS([linux/if_tun.h], [], [], @@ -54,11 +73,6 @@ AC_CHECK_HEADERS([linux/if_tun.h], [], [], ]) AC_CHECK_HEADERS([stropts.h sys/sockio.h net/if_tun.h]) AC_C_BIGENDIAN -AC_CHECK_SIZEOF(unsigned long long) -AC_CHECK_SIZEOF(unsigned long) -AC_CHECK_SIZEOF(unsigned int) -AC_CHECK_SIZEOF(unsigned short) -AC_CHECK_SIZEOF(unsigned char) AC_PROG_CC_NO_WRITEABLE_STRINGS(WRITESTRINGS) AC_ARG_ENABLE(hacky-parallel, @@ -86,6 +100,8 @@ SECNET_C_GETFUNC(inet_aton,resolv) AC_CHECK_LIB(adns,adns_init) REQUIRE_HEADER([adns.h]) +AC_CHECK_FUNCS([fmemopen funopen]) + AC_MSG_NOTICE([Checking requirements for IPv6 support...]) enable_ipv6=true m4_define(NO_IPV6,[enable_ipv6=false]) @@ -114,53 +130,6 @@ AH_BOTTOM([ /* These used to be in config.h.bot, but are now in configure.in. */ -#ifdef HAVE_INTTYPES_H -#include -#else -#ifdef HAVE_STDINT_H -#include -#else -#if SIZEOF_UNSIGNED_LONG_LONG==8 -typedef unsigned long long uint64_t; -typedef long long int64_t; -#elif SIZEOF_UNSIGNED_LONG==8 -typedef unsigned long uint64_t; -typedef long int64_t; -#else -#error I do not know what to use for a uint64_t. -#endif - -/* Give us an unsigned 32-bit data type. */ -#if SIZEOF_UNSIGNED_LONG==4 -typedef unsigned long uint32_t; -typedef long int32_t; -#elif SIZEOF_UNSIGNED_INT==4 -typedef unsigned int uint32_t; -typedef int int32_t; -#else -#error I do not know what to use for a uint32_t. -#endif - -/* An unsigned 16-bit data type. */ -#if SIZEOF_UNSIGNED_INT==2 -typedef unsigned int uint16_t; -typedef int int16_t; -#elif SIZEOF_UNSIGNED_SHORT==2 -typedef unsigned short uint16_t; -typedef short int16_t; -#else -#error I do not know what to use for a uint16_t. -#endif - -/* An unsigned 8-bit data type */ -#if SIZEOF_UNSIGNED_CHAR==1 -typedef unsigned char uint8_t; -#else -#error I do not know what to use for a uint8_t. -#endif -#endif -#endif - #ifdef __GNUC__ #define NORETURN(_x) void _x __attribute__ ((noreturn)) #define FORMAT(_a,_b,_c) __attribute__ ((format (_a,_b,_c)))