# configure.in - input to autoconf # # 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 # the Free Software Foundation; either version 2, or (at your option) # any later version. # # This program is distributed in the hope that it will be useful, # but WITHOUT ANY WARRANTY; without even the implied warranty of # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # GNU General Public License for more details. # # You should have received a copy of the GNU General Public License # along with this program; if not, write to the Free Software Foundation, # Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. 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([ #include #include #include ],[ INADDR_LOOPBACK; ], adns_cv_decl_inaddrloopback=yes, adns_cv_decl_inaddrloopback=no)]) if test "$adns_cv_decl_inaddrloopback" = yes; then AC_MSG_RESULT(found) else AC_MSG_RESULT([not in standard headers, urgh...]) AC_CHECK_HEADER(rpc/types.h,[ AC_DEFINE(HAVEUSE_RPCTYPES_H) ],[ AC_MSG_ERROR([cannot find INADDR_LOOPBACK or rpc/types.h]) ]) fi ADNS_C_GETFUNC(inet_aton,resolv,[ LIBS="-lresolv $LIBS"; AC_MSG_WARN([inet_aton is in libresolv, urgh. Must use -lresolv.]) ]) 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) AC_SUBST(MKSHLIB_3) AC_SUBST(SHLIBFORLINK) AC_SUBST(SHLIBFILE) AC_SUBST(SHLIBSONAME) SHLIBFORLINK='libadns.so' SHLIBSONAME='$(SHLIBFORLINK).$(MAJOR)' SHLIBFILE='$(SHLIBSONAME).$(MINOR)' SHLIBCC='$(CC) $(CFLAGS) -fpic' MKSHLIB_1='$(CC) $(LDFLAGS) -shared -Wl,-soname=$(SHLIBSONAME) -o' MKSHLIB_2='' MKSHLIB_3='-lc' AC_OUTPUT( settings.make Makefile src/Makefile client/Makefile dynamic/Makefile regress/Makefile )