]> git.ipfire.org Git - thirdparty/pdns.git/blobdiff - configure.in
some more exception correctness
[thirdparty/pdns.git] / configure.in
index 4d9ef5dd319c8ab0b0ee325a03a7a5d545ced078..b30a8f287832c2150186102998781ce37c619b8e 100644 (file)
@@ -1,6 +1,6 @@
 dnl intro
 AC_INIT(pdns/receiver.cc)
-AM_INIT_AUTOMAKE(pdns, 2.9.21-svn)
+AM_INIT_AUTOMAKE(pdns, 2.9.22-snapshot)
 AC_CANONICAL_HOST
 AM_CONFIG_HEADER(config.h)
 AC_C_BIGENDIAN 
@@ -34,7 +34,7 @@ AC_CHECK_FUNCS(gethostname gettimeofday mkdir mktime select socket strerror)
 
 # Check for libdl
 
-LIBS=-lz
+LIBS="$LIBS -lz"
 
 my_save_LIBS="$LIBS"
 LIBS=""
@@ -59,9 +59,14 @@ LIBS=$ac_save_LIBS
 
 DYNLINKFLAGS=""
 THREADFLAGS=""
-enable_nedmalloc="no"
 
 case "$host_os" in
+solaris2.10)
+       AC_DEFINE(HAVE_IPV6,1,[If the host operating system understands IPv6])
+       LIBS="-lposix4 -lresolv -lnsl -lsocket -lpthread -lrt $LIBS"
+       CXXFLAGS="-D_REENTRANT $CXXFLAGS"
+       ;;
+
 solaris2.8 | solaris2.9 ) 
        AC_DEFINE(NEED_POSIX_TYPEDEF,,[If POSIX typedefs need to be defined])
        AC_DEFINE(NEED_INET_NTOP_PROTO,,[If your OS is so broken that it needs an additional prototype])
@@ -88,10 +93,6 @@ openbsd*)
        LDFLAGS="-lc_r $LDFLAGS"
        CXXFLAGS="-pthread $CXXFLAGS"
        ;;
-freebsd*)
-       AM_CONDITIONAL(NEDMALLOC, true)
-       enable_nedmalloc="yes"
-       ;;
 *)
        AC_DEFINE(HAVE_IPV6,1,[If the host operating system understands IPv6])
        DYNLINKFLAGS="-rdynamic"
@@ -179,7 +180,7 @@ AC_ARG_ENABLE(gcc-skip-locking,
 
 AC_MSG_CHECKING(whether we will be building the recursor)
 AC_ARG_ENABLE(recursor, 
- [  --enable-recursor  If we should build the server],
+ [  --enable-recursor  If we should build the recursor],
        enable_recursor=$enableval,
        enable_recursor=no )
 
@@ -192,9 +193,13 @@ AC_MSG_CHECKING(whether we should use nedmalloc allocator)
 AC_ARG_ENABLE(nedmalloc, 
  [  --enable-nedmalloc If we should use nedmalloc],
        enable_nedmalloc=$enableval,
-       
+       if echo $host_os | grep -i freebsd > /dev/null
+       then
+               enable_nedmalloc=yes
+       else
+               enable_nedmalloc=no
+       fi
         )
-
 AC_MSG_RESULT($enable_nedmalloc)
 
 AM_CONDITIONAL(NEDMALLOC,test x"$enable_nedmalloc" = "xyes")
@@ -215,9 +220,42 @@ do
                gsqlite )
                        needsqlite=yes
                ;;
+               gsqlite3 )
+                       needsqlite3=yes
+               ;;
                pdns )
                        needmysql=yes
                ;;
+               ldap)
+                       AC_CHECK_HEADERS([ldap.h], , [AC_MSG_ERROR([ldap header (ldap.h) not found])])
+                       AC_CHECK_HEADERS([lber.h], , [AC_MSG_ERROR([ldap header (lber.h) not found])])
+                       AC_SUBST([LIBLDAP])
+                       AC_CHECK_LIB(
+                               [ldap_r], [ldap_set_option],
+                               [AC_DEFINE([HAVE_LIBLDAP_R], 1, [Have -lldap_r]) LIBLDAP="ldap_r"],
+                               [AC_CHECK_LIB(
+                                       [ldap], [ldap_set_option],
+                                       [AC_DEFINE([HAVE_LIBLDAP], 1, [Have -lldap]) LIBLDAP="ldap"],
+                                       [AC_MSG_ERROR([ldap library (libldap) not found])]
+                               )]
+                       )
+                       AC_CHECK_LIB(
+                               [$LIBLDAP], [ldap_initialize],
+                               [AC_DEFINE([HAVE_LDAP_INITIALIZE], 1, [Define to 1 if you have ldap_initialize])]
+                       )
+                       AC_CHECK_LIB(
+                               [$LIBLDAP], [ldap_sasl_bind],
+                               [AC_DEFINE([HAVE_LDAP_SASL_BIND], 1, [Define to 1 if you have ldap_sasl_bind])]
+                       )
+               ;;
+               opendbx)
+                       AC_CHECK_HEADERS([odbx.h], , [AC_MSG_ERROR([opendbx header (odbx.h) not found])])
+                       AC_SUBST([LIBOPENDBX])
+                       AC_CHECK_LIB(
+                               [opendbx], [odbx_init],
+                               [AC_DEFINE([HAVE_LIBOPENDBX], 1, [Have -lopendbx]) LIBOPENDBX="opendbx"]
+                       )
+               ;;
        esac
 done
 
@@ -228,8 +266,11 @@ then
            [  --with-mysql=<path>     root directory path of MySQL installation],
            [MYSQL_lib_check="$withval/lib/mysql $with_mysql/lib"
        MYSQL_inc_check="$withval/include/mysql"],
-           [MYSQL_lib_check="/usr/local/mysql/lib/mysql /usr/local/lib/mysql /opt/mysql/lib/mysql /usr/lib/mysql /usr/local/mysql/lib /usr/local/lib /opt/mysql/lib /usr/lib"
-       MYSQL_inc_check="/usr/local/mysql/include/mysql /usr/local/include/mysql /opt/mysql/include/mysql /opt/mysql/include /usr/include/mysql"])
+           [MYSQL_lib_check="/usr/local/mysql/lib/mysql /usr/local/lib/mysql /opt/mysql/lib/mysql \
+               /usr/lib/mysql /usr/local/mysql/lib /usr/local/lib /opt/mysql/lib /usr/lib \
+               /usr/sfw/lib/"
+       MYSQL_inc_check="/usr/local/mysql/include/mysql /usr/local/include/mysql \
+               /opt/mysql/include/mysql /opt/mysql/include /usr/include/mysql /usr/sfw/include/mysql"])
                AC_ARG_WITH(mysql-lib,
            [  --with-mysql-lib=<path> directory path of MySQL library installation],
            [MYSQL_lib_check="$withval/lib/mysql $withval/mysql $withval"])
@@ -291,7 +332,7 @@ then
            [PGSQL_lib_check="$withval/lib/pgsql $with_pgsql/lib"
        PGSQL_inc_check="$withval/include/pgsql"],
            [PGSQL_lib_check="/usr/local/pgsql/lib/pgsql /usr/local/lib/pgsql /opt/pgsql/lib/pgsql /usr/lib/pgsql /usr/local/pgsql/lib /usr/local/lib /opt/pgsql/lib /usr/lib"
-       PGSQL_inc_check="/usr/local/pgsql/include/pgsql /usr/local/include/postgresql/ /usr/local/include /opt/pgsql/include/pgsql /opt/pgsql/include /usr/include/pgsql/ /usr/include/postgresql"])
+       PGSQL_inc_check="/usr/local/pgsql/include/pgsql /usr/include /usr/local/include/postgresql/ /usr/local/include /opt/pgsql/include/pgsql /opt/pgsql/include /usr/include/pgsql/ /usr/include/postgresql"])
                AC_ARG_WITH(pgsql-lib,
            [  --with-pgsql-lib=<path> directory path of PgSQL library installation],
            [PGSQL_lib_check="$withval/lib/pgsql $withval/pgsql $withval"])
@@ -405,6 +446,65 @@ then
 #       LIBS="$LIBS -lsqlite"
 fi
 
+if test "$needsqlite3"
+then
+        AC_ARG_WITH(sqlite3,
+            [  --with-sqlite3=<path>     root directory path of SQLite3 installation],
+            [SQLITE3_lib_check="$withval/lib/sqlite3 $with_sqlite3/lib"
+             SQLITE3_inc_check="$withval/include/sqlite3"],
+            [SQLITE3_lib_check="/usr/local/sqlite3/lib/sqlite3 /usr/local/lib/sqlite3 /usr/lib/sqlite3 /usr/local/sqlite3/lib /usr/local/lib /opt/sqlite3/lib /usr/lib"
+             SQLITE3_inc_check="/usr/local/sqlite3/include/sqlite3 /usr/local/include/sqlite3/ /usr/local/include /opt/sqlite3/include/sqlite3 /opt/sqlite3/include /usr/include/ /usr/include/sqlite3"])
+        AC_ARG_WITH(sqlite3-lib,
+            [  --with-sqlite3-lib=<path> directory path of SQLite3 library installation],
+            [SQLITE3_lib_check="$withval/lib/sqlite3 $withval/sqlite3 $withval"])
+        AC_ARG_WITH(sqlite3-includes,
+            [  --with-sqlite3-includes=<path> directory path of SQLite3 header installation],
+            [SQLITE3_inc_check="$withval/include/sqlite3 $withval/sqlite3 $withval"])
+        AC_MSG_CHECKING([for SQLite3 library directory])
+        SQLITE3_libdir=
+        for m in $SQLITE3_lib_check; do
+                if test -d "$m" && \
+                   (test -f "$m/libsqlite3.so" || test -f "$m/libsqlite3.a")
+                then
+                        SQLITE3_libdir=$m
+                        break
+                fi
+        done
+                if test -z "$SQLITE3_libdir"; then
+                AC_MSG_ERROR([Didn't find the sqlite3 library dir in '$SQLITE3_lib_check'])
+        fi
+        case "$SQLITE3_libdir" in
+           /usr/lib ) SQLITE3_lib="" ;;
+          /* ) SQLITE3_lib="-L$SQLITE3_libdir -Wl,-rpath,$SQLITE3_libdir"
+               LDFLAGS="$SQLITE3_lib $LDFLAGS"
+               ;;
+          * )  AC_MSG_ERROR([The SQLite3 library directory ($SQLITE3_libdir) must be an absolute path.]) ;;
+        esac
+
+        AC_SUBST(SQLITE3_lib)
+        AC_MSG_RESULT([$SQLITE3_libdir])
+        AC_MSG_CHECKING([for SQLite3 include directory])
+        SQLITE3_incdir=
+        for m in $SQLITE3_inc_check; do
+                if test -d "$m" && test -f "$m/sqlite3.h"
+                then
+                        SQLITE3_incdir=$m
+                        break
+                fi
+        done
+                if test -z "$SQLITE3_incdir"; then
+                AC_MSG_ERROR([Didn't find the SQLite3 include dir in '$SQLITE3_inc_check'])
+        fi
+        case "$SQLITE3_incdir" in
+          /* ) ;;
+          * )  AC_MSG_ERROR([The SQLite3 include directory ($SQLITE3_incdir) must be an absolute path.]) ;;
+        esac
+        AC_SUBST(SQLITE3_incdir)
+        AC_MSG_RESULT([$SQLITE3_incdir])
+
+#       LIBS="$LIBS -lsqlite3"
+fi
+
 
 for a in $modules
 do
@@ -434,4 +534,5 @@ modules/geobackend/Makefile modules/opendbxbackend/Makefile \
 modules/pipebackend/Makefile modules/oraclebackend/Makefile \
 modules/xdbbackend/Makefile modules/odbcbackend/Makefile \
 modules/gpgsqlbackend/Makefile modules/ldapbackend/Makefile 
-modules/gsqlitebackend/Makefile modules/goraclebackend/Makefile )
+modules/gsqlitebackend/Makefile modules/gsqlite3backend/Makefile
+modules/goraclebackend/Makefile )