+ * Add list of tested platforms in INSTALL file.
[adns] / configure.in
CommitLineData
11b35193 1# configure.in - input to autoconf
2#
d942707d 3# This file is
1674b672 4# Copyright (C) 1997-2000 Ian Jackson <ian@davenant.greenend.org.uk>
11b35193 5#
d942707d 6# It is part of adns, which is
3d5cde09 7# Copyright (C) 1997-2000 Ian Jackson <ian@davenant.greenend.org.uk>
d942707d 8# Copyright (C) 1999 Tony Finch <dot@dotat.at>
9#
11b35193 10# This program is free software; you can redistribute it and/or modify
11# it under the terms of the GNU General Public License as published by
12# the Free Software Foundation; either version 2, or (at your option)
13# any later version.
14#
15# This program is distributed in the hope that it will be useful,
16# but WITHOUT ANY WARRANTY; without even the implied warranty of
17# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
18# GNU General Public License for more details.
19#
20# You should have received a copy of the GNU General Public License
21# along with this program; if not, write to the Free Software Foundation,
22# Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
23
24AC_INIT(src/adns.h)
25AC_CONFIG_HEADER(src/config.h)
48337073 26
27AC_MSG_CHECKING(whether you requested dynamic linking)
28AC_SUBST(ENABLE_DYNAMIC)
29AC_ARG_ENABLE(dynamic,
30[ --disable-dynamic use static linking
31 --enable-dynamic[=elf] create and use ELF dynamic library (default)],
32[ case "$enableval" in
33 elf|yes)
34 ENABLE_DYNAMIC=elf
35 AC_MSG_RESULT([yes (ELF)])
36 ;;
37 no) ENABLE_DYNAMIC=no
38 AC_MSG_RESULT(no)
39 ;;
40 *) AC_MSG_ERROR(
41["invalid value $enableval for --enable-dynamic, try yes or elf"])
42 ;;
43 esac
44],[
45 ENABLE_DYNAMIC=yes
46 AC_MSG_RESULT([yes, by default])
47])
48
11b35193 49AC_PROG_CC
04e7fb4d 50AC_PROG_CPP
9579019a 51AC_PROG_RANLIB
a0c76eee 52AC_PROG_INSTALL
8b5269f2 53
620c146d 54AC_CHECK_FUNCS(poll)
8b5269f2 55ADNS_C_GETFUNC(socket,socket)
56ADNS_C_GETFUNC(inet_ntoa,nsl)
57
9a09fa18 58PROGS_IF_TSEARCH=adnsresfilter
59AC_SUBST(PROGS_HAVE_TSEARCH)
60AC_CHECK_FUNC(tsearch,[
61 PROGS_HAVE_TSEARCH=$PROGS_IF_TSEARCH
62],[
63 PROGS_HAVE_TSEARCH='';
64 AC_MSG_WARN([tsearch missing - not building client program(s) $PROGS_IF_TSEARCH])
65])
66
04e7fb4d 67AC_MSG_CHECKING(for INADDR_LOOPBACK)
68AC_CACHE_VAL(adns_cv_decl_inaddrloopback,[
69 AC_TRY_COMPILE([
70#include <sys/socket.h>
71#include <netinet/in.h>
72#include <arpa/inet.h>
73 ],[
74 INADDR_LOOPBACK;
75 ],
76 adns_cv_decl_inaddrloopback=yes,
77 adns_cv_decl_inaddrloopback=no)])
78if test "$adns_cv_decl_inaddrloopback" = yes; then
79 AC_MSG_RESULT(found)
80else
81 AC_MSG_RESULT([not in standard headers, urgh...])
82 AC_CHECK_HEADER(rpc/types.h,[
83 AC_DEFINE(HAVEUSE_RPCTYPES_H)
84 ],[
85 AC_MSG_ERROR([cannot find INADDR_LOOPBACK or rpc/types.h])
86 ])
87fi
88
8b5269f2 89ADNS_C_GETFUNC(inet_aton,resolv,[
90 LIBS="-lresolv $LIBS";
91 AC_MSG_WARN([inet_aton is in libresolv, urgh. Must use -lresolv.])
92])
93
11b35193 94ADNS_C_GCCATTRIB
95
96AC_SUBST(WARNS)
97
98if test "${GCC-no}" = yes; then
99 WARNS="-Wall -Wmissing-prototypes -Wwrite-strings -Wstrict-prototypes -Wcast-qual -Wpointer-arith"
100else
101 WARNS=
102fi
103
104AC_SUBST(SHLIBCC)
105AC_SUBST(MKSHLIB_1)
106AC_SUBST(MKSHLIB_2)
107AC_SUBST(MKSHLIB_3)
9310ea4d 108
109AC_SUBST(SHLIBFORLINK)
11b35193 110AC_SUBST(SHLIBFILE)
111AC_SUBST(SHLIBSONAME)
112
9310ea4d 113SHLIBFORLINK='libadns.so'
114SHLIBSONAME='$(SHLIBFORLINK).$(MAJOR)'
115SHLIBFILE='$(SHLIBSONAME).$(MINOR)'
11b35193 116
696e536a 117SHLIBCC='$(CC) $(CFLAGS) -fpic'
118MKSHLIB_1='$(CC) $(LDFLAGS) -shared -Wl,-soname=$(SHLIBSONAME) -o'
119MKSHLIB_2=''
120MKSHLIB_3='-lc'
121
9579019a 122AC_OUTPUT(
123 settings.make Makefile
124 src/Makefile client/Makefile dynamic/Makefile regress/Makefile
125)