And changelog :)
[gnupg.git] / configure.ac
index c052e16..8299346 100644 (file)
@@ -22,10 +22,11 @@ dnlAC_REVISION($Revision$)dnl
 
 AC_PREREQ(2.52)
 
-# Please enter the version number here and set development_version to
-# yes if the minor number is odd or you feel that the default check 
-# for a development version is not sufficient.
-AC_INIT(gnupg, 1.1.92, bug-gnupg@gnu.org)
+# Remember to change the version number immediately *after* a release.
+# Set development_version to yes if the minor number is odd or you
+# feel that the default check for a development version is not
+# sufficient.
+AC_INIT(gnupg, 1.3, bug-gnupg@gnu.org)
 development_version=yes
 
 ALL_LINGUAS="ca cs da de eo el es et fr gl id it ja nl pl pt_BR pt sv tr"
@@ -134,14 +135,13 @@ if test "$use_m_guard" = yes ; then
     AC_DEFINE(M_GUARD,1,[Define to use the (obsolete) malloc guarding feature])
 fi
 
-AC_MSG_CHECKING([whether to enable experimental TIGER digest support])
-AC_ARG_ENABLE(tiger,
-    [  --enable-tiger          enable experimental TIGER digest support],
-    use_tiger=$enableval, use_tiger=no)
-AC_MSG_RESULT($use_tiger)
-if test "$use_tiger" = yes ; then
-    AC_SUBST(TIGER_O,tiger.o)
-    AC_DEFINE(USE_TIGER,1,[Define to include experimental TIGER digest support])
+AC_MSG_CHECKING([whether to enable old-style TIGER digest support])
+AC_ARG_ENABLE(old-tiger,
+    [  --enable-old-tiger      enable old-style TIGER digest support],
+    old_tiger=$enableval, old_tiger=no)
+AC_MSG_RESULT($old_tiger)
+if test "$old_tiger" = yes ; then
+    AC_DEFINE(USE_OLD_TIGER,1,[Define to use the old fake OID for TIGER digest support])
 fi
 
 AC_MSG_CHECKING([whether to enable external program execution])
@@ -193,15 +193,14 @@ if test "$use_exec" = yes ; then
         try_ldap=$enableval, try_ldap=yes)
     AC_MSG_RESULT($try_ldap)
 
-    AC_MSG_CHECKING([whether experimental external hkp keyserver support is requested])
-    AC_ARG_ENABLE(external-hkp,
-    [  --enable-external-hkp   enable experimental external HKP keyserver interface],
-        try_hkp=$enableval, try_hkp=no)
+    AC_MSG_CHECKING([whether HKP keyserver support is requested])
+    AC_ARG_ENABLE(hkp,
+    [  --disable-hkp           disable HKP keyserver interface],
+        try_hkp=$enableval, try_hkp=yes)
     AC_MSG_RESULT($try_hkp)
 
     if test "$try_hkp" = yes ; then
-      GPGKEYS_HKP="gpgkeys_hkp"
-      AC_DEFINE(USE_EXTERNAL_HKP,1,[define to use the experimental external HKP keyserver interface])
+      AC_SUBST(GPGKEYS_HKP,"gpgkeys_hkp")
     fi
 
     AC_MSG_CHECKING([whether email keyserver support is requested])
@@ -355,15 +354,17 @@ AC_CHECK_FUNC(setsockopt, , AC_CHECK_LIB(socket, setsockopt,
        [NETLIBS="-lsocket $NETLIBS"]))
 
 # Try and link a LDAP test program to weed out unusable LDAP
-# libraries.  -lldap -llber [-lresolv] is for OpenLDAP.  -lldapssl41
-# is for Mozilla LDAP.
+# libraries.  -lldap [-llber [-lresolv]] is for OpenLDAP.  OpenLDAP in
+# general is terrible with creating weird dependencies.  If all else
+# fails, the user can play guess-the-dependency by using something
+# like LDAPLIBS="-lfoo" ./configure
 
 if test "$try_ldap" = yes ; then
-  for LDAPLIBS in "-lldap -llber -lresolv" "-lldap -llber" "-lldapssl41"; do
+  for MY_LDAPLIBS in ${LDAPLIBS+"$LDAPLIBS"} "-lldap" "-lldap -llber" "-lldap -llber -lresolv"; do
     _ldap_save_libs=$LIBS
-    LIBS="$LDAPLIBS $NETLIBS $LIBS"
+    LIBS="$MY_LDAPLIBS $NETLIBS $LIBS"
 
-    AC_MSG_CHECKING([whether LDAP via \"$LDAPLIBS\" is present and sane])
+    AC_MSG_CHECKING([whether LDAP via \"$MY_LDAPLIBS\" is present and sane])
     AC_TRY_LINK([#include <ldap.h>],[ldap_open("foobar",1234);],
                 [gnupg_cv_func_ldap_init=yes],[gnupg_cv_func_ldap_init=no])
     AC_MSG_RESULT([$gnupg_cv_func_ldap_init])
@@ -382,7 +383,48 @@ if test "$try_ldap" = yes ; then
 
     if test "$gnupg_cv_func_ldap_init" = yes || \
        test "$gnupg_cv_func_ldaplber_init" = yes ; then
+       LDAPLIBS=$MY_LDAPLIBS
        GPGKEYS_LDAP="gpgkeys_ldap"
+
+       AC_MSG_CHECKING([whether LDAP supports ldap_get_option])
+
+       if test "$gnupg_cv_func_ldap_init" = yes ; then
+         AC_TRY_LINK([#include <ldap.h>],
+            [ldap_get_option((void *)0,0,(void *)0);],
+            [gnupg_cv_func_ldap_get_option=yes],
+            [gnupg_cv_func_ldap_get_option=no])
+       else
+         AC_TRY_LINK([#include <lber.h>
+#include <ldap.h>],[ldap_get_option((void *)0,0,(void *)0);],
+            [gnupg_cv_func_ldap_get_option=yes],
+            [gnupg_cv_func_ldap_get_option=no])
+       fi
+
+       AC_MSG_RESULT([$gnupg_cv_func_ldap_get_option])
+
+       if test "$gnupg_cv_func_ldap_get_option" = yes ; then
+          AC_DEFINE(HAVE_LDAP_GET_OPTION,1,[Define if the LDAP library has ldap_get_option])
+       else
+          AC_MSG_CHECKING([whether LDAP supports ld_errno])
+
+         if test "$gnupg_cv_func_ldap_init" = yes ; then
+           AC_TRY_COMPILE([#include <ldap.h>],
+              [LDAP *ldap; ldap->ld_errno;],
+              [gnupg_cv_func_ldap_ld_errno=yes],
+              [gnupg_cv_func_ldap_ld_errno=no])
+          else
+           AC_TRY_LINK([#include <lber.h>
+#include <ldap.h>],[LDAP *ldap; ldap->ld_errno;],
+              [gnupg_cv_func_ldap_ld_errno=yes],
+              [gnupg_cv_func_ldap_ld_errno=no])
+          fi
+
+          AC_MSG_RESULT([$gnupg_cv_func_ldap_ld_errno])
+
+         if test "$gnupg_cv_func_ldap_ld_errno" = yes ; then
+            AC_DEFINE(HAVE_LDAP_LD_ERRNO,1,[Define if the LDAP library supports ld_errno])
+          fi
+       fi
     fi
 
     LIBS=$_ldap_save_libs
@@ -415,7 +457,6 @@ if test "$try_mailto" = yes ; then
 fi
 
 AC_SUBST(GPGKEYS_MAILTO)
-AC_SUBST(GPGKEYS_HKP)
 
 case "${target}" in
     *-*-mingw32*)
@@ -658,15 +699,16 @@ if test "$use_static_rnd" = default; then
                 :
                 ;;
             *)
-                random_modules="rndunix"
+                random_modules="rndlinux rndegd rndunix"
+                AC_DEFINE(USE_ALL_RANDOM_MODULES, 1, 
+                          [Allow to select random modules at runtime.])
                 ;;
          esac
      fi
 else
   if test "$use_static_rnd" = auto; then
      random_modules="rndlinux rndegd rndunix"
-     AC_DEFINE(USE_ALL_RANDOM_MODULES, 1, 
-                  [Allow to select random modules at runtime.])
+     AC_DEFINE(USE_ALL_RANDOM_MODULES, 1)
   else
      random_modules="rnd$use_static_rnd";
   fi
@@ -690,6 +732,8 @@ for rndmod in $random_modules "" ; do
     rndegd)
          AC_DEFINE(USE_RNDEGD,1, 
                   [Defined if the EGD based RNG should be used.])
+         EGDLIBS=$NETLIBS
+         AC_SUBST(EGDLIBS)
          ;;
     rndw32)
          AC_DEFINE(USE_RNDW32,1,