X-Git-Url: http://www.chiark.greenend.org.uk/ucgi/~ianmdlvl/git?p=adns.git;a=blobdiff_plain;f=configure.in;h=3e72caddfba00b64c231acb34a0fea257dd0f22c;hp=12b2d18c859698fc7a521fe00de0d3c5004e830e;hb=382b81f736a471aafd75661b08e795ffc7521f92;hpb=696e536a50045e6b9252b200c749247205771d16;ds=sidebyside diff --git a/configure.in b/configure.in index 12b2d18..3e72cad 100644 --- a/configure.in +++ b/configure.in @@ -1,11 +1,10 @@ # configure.in - input to autoconf # -# This file is -# Copyright (C) 1997-1999 Ian Jackson -# -# It is part of adns, which is -# Copyright (C) 1997-1999 Ian Jackson -# Copyright (C) 1999 Tony Finch +# This file is part of adns, which is +# Copyright (C) 1997-2000,2003,2006 Ian Jackson +# Copyright (C) 1999-2000,2003,2006 Tony Finch +# Copyright (C) 1991 Massachusetts Institute of Technology +# (See the file INSTALL for full details.) # # This program is free software; you can redistribute it and/or modify # it under the terms of the GNU General Public License as published by @@ -23,14 +22,62 @@ AC_INIT(src/adns.h) AC_CONFIG_HEADER(src/config.h) + +dnl DPKG_CACHED_TRY_COMPILE(,,,,,) +define([DPKG_CACHED_TRY_COMPILE],[ + AC_MSG_CHECKING($1) + AC_CACHE_VAL($2,[ + AC_TRY_COMPILE([$3],[$4],[$2=yes],[$2=no]) + ]) + if test "x$$2" = xyes; then + true + $5 + else + true + $6 + fi +]) + +AC_MSG_CHECKING(whether you requested dynamic linking) +AC_SUBST(ENABLE_DYNAMIC) +AC_ARG_ENABLE(dynamic, +[ --disable-dynamic use static linking + --enable-dynamic[=elf] create and use ELF dynamic library (default)], +[ case "$enableval" in + elf|yes) + ENABLE_DYNAMIC=elf + AC_MSG_RESULT([yes (ELF)]) + ;; + no) ENABLE_DYNAMIC=no + AC_MSG_RESULT(no) + ;; + *) AC_MSG_ERROR( +["invalid value $enableval for --enable-dynamic, try yes or elf"]) + ;; + esac +],[ + ENABLE_DYNAMIC=elf + AC_MSG_RESULT([yes, by default]) +]) + AC_PROG_CC AC_PROG_CPP AC_PROG_RANLIB +AC_PROG_INSTALL AC_CHECK_FUNCS(poll) ADNS_C_GETFUNC(socket,socket) ADNS_C_GETFUNC(inet_ntoa,nsl) +PROGS_IF_TSEARCH=adnsresfilter +AC_SUBST(PROGS_HAVE_TSEARCH) +AC_CHECK_FUNC(tsearch,[ + PROGS_HAVE_TSEARCH=$PROGS_IF_TSEARCH +],[ + PROGS_HAVE_TSEARCH=''; + AC_MSG_WARN([tsearch missing - not building client program(s) $PROGS_IF_TSEARCH]) +]) + AC_MSG_CHECKING(for INADDR_LOOPBACK) AC_CACHE_VAL(adns_cv_decl_inaddrloopback,[ AC_TRY_COMPILE([ @@ -58,16 +105,30 @@ ADNS_C_GETFUNC(inet_aton,resolv,[ AC_MSG_WARN([inet_aton is in libresolv, urgh. Must use -lresolv.]) ]) -ADNS_C_GCCATTRIB +DPKG_CACHED_TRY_COMPILE(inlines,dpkg_cv_c_inline,, + [} inline int foo (int x) {], + AC_MSG_RESULT(yes) + AC_DEFINE(HAVE_INLINE), + AC_MSG_RESULT(no)) AC_SUBST(WARNS) if test "${GCC-no}" = yes; then WARNS="-Wall -Wmissing-prototypes -Wwrite-strings -Wstrict-prototypes -Wcast-qual -Wpointer-arith" + saved_cflags="$CFLAGS" + CFLAGS="$CFLAGS -Wno-pointer-sign" + DPKG_CACHED_TRY_COMPILE(-Wno-pointer-sign,adns_cv_c_wnoptrsign,, + [], + AC_MSG_RESULT(yes) + WARNS="$WARNS -Wno-pointer-sign", + AC_MSG_RESULT(no)) + CFLAGS="$saved_cflags" else WARNS= fi +ADNS_C_GCCATTRIB + AC_SUBST(SHLIBCC) AC_SUBST(MKSHLIB_1) AC_SUBST(MKSHLIB_2)