Make use of gcry_kdf_derive.
[gnupg.git] / configure.ac
index f79ff53..ab40c6f 100644 (file)
@@ -43,13 +43,13 @@ development_version=no
 NEED_GPG_ERROR_VERSION=1.8
 
 NEED_LIBGCRYPT_API=1
-NEED_LIBGCRYPT_VERSION=1.4.6
+NEED_LIBGCRYPT_VERSION=1.5.0
 
 NEED_LIBASSUAN_API=2
 NEED_LIBASSUAN_VERSION=2.0.0
 
 NEED_KSBA_API=1
-NEED_KSBA_VERSION=1.1.0
+NEED_KSBA_VERSION=1.2.0
 
 
 PACKAGE=$PACKAGE_NAME
@@ -742,38 +742,20 @@ AM_PATH_GPG_ERROR("$NEED_GPG_ERROR_VERSION",
 AM_PATH_LIBGCRYPT("$NEED_LIBGCRYPT_API:$NEED_LIBGCRYPT_VERSION",
         have_libgcrypt=yes,have_libgcrypt=no)
 
-# fixme:  We can remove the next two checks if we require libgcrypt 1.5.
-AC_CACHE_CHECK([whether Libgcrypt support ECDH], gnupg_cv_gcry_pk_ecdh,
-               [ _gnupg_gcry_save_cflags=$CFLAGS
-                 CFLAGS="$CFLAGS $LIBGCRYPT_CFLAGS"
-                 AC_TRY_COMPILE(
-                   [#include <gcrypt.h>],
-                   [ return GCRY_PK_ECDH; ],
-                   gnupg_cv_gcry_pk_ecdh=yes,
-                   gnupg_cv_gcry_pk_ecdh=no)
-                 CFLAGS=$_gnupg_gcry_save_cflags])
-if test "$gnupg_cv_gcry_pk_ecdh" = yes; then
-  AC_DEFINE([HAVE_GCRY_PK_ECDH], 1,
-            [Define if gcrypt.h has the enum value for ECDH.])
-fi
-
-AC_CACHE_CHECK([whether Libgcrypt has gcry_pk_get_curve],
-                gnupg_cv_gcry_pk_get_curve,
+# FIxme: Remove this test after libgcrypt 1.5.0 has been released.
+AC_CACHE_CHECK([whether Libgcrypt has gcry_kdf_derive],
+                gnupg_cv_gcry_kdf_derive,
                [ _gnupg_gcry_save_cflags=$CFLAGS
                  _gnupg_gcry_save_libs=$LIBS
                  CFLAGS="$CFLAGS $LIBGCRYPT_CFLAGS"
                  LIBS="$LIBS $LIBGCRYPT_LIBS"
                  AC_TRY_LINK(
                    [#include <gcrypt.h>],
-                   [ return gcry_pk_get_curve (NULL, 0, NULL); ],
-                   gnupg_cv_gcry_pk_get_curve=yes,
-                   gnupg_cv_gcry_pk_get_curve=no)
+                   [ return gcry_kdf_derive (NULL,0,0,0,NULL,0,0,0,NULL); ],
+                   gnupg_cv_gcry_kdf_derive=yes,
+                   gnupg_cv_gcry_kdf_derive=no)
                  LIBS=$_gnupg_gcry_save_libs
                  CFLAGS=$_gnupg_gcry_save_cflags])
-if test "$gnupg_cv_gcry_pk_get_curve" = yes; then
-  AC_DEFINE([HAVE_GCRY_PK_GET_CURVE], 1,
-            [Define if gcrypt.h has gcry_pk_get_curve.])
-fi
 
 
 #
@@ -1172,7 +1154,7 @@ fi
 AC_MSG_NOTICE([checking for header files])
 AC_HEADER_STDC
 AC_CHECK_HEADERS([string.h unistd.h langinfo.h termio.h locale.h getopt.h \
-                  pty.h pwd.h inttypes.h signal.h])
+                  pty.h utmp.h pwd.h inttypes.h signal.h])
 AC_HEADER_TIME
 
 
@@ -1636,9 +1618,18 @@ if test "$have_libgcrypt" = "no"; then
 ***
 *** You need libgcrypt to build this program.
 **  This library is for example available at
-***   ftp://ftp.gnupg.org/gcrypt/libgcrypt/
+***   ftp://ftp.gnupg.org/gcrypt/alpha/libgcrypt/
 *** (at least version $NEED_LIBGCRYPT_VERSION using API $NEED_LIBGCRYPT_API is required.)
 ***]])
+elif test "$gnupg_cv_gcry_kdf_derive" = no; then
+   die=yes
+   AC_MSG_NOTICE([[
+***
+*** Libgcrypt 1.5.0 has not yet been released and thus the API
+*** is a bit in a flux.  Your version misses the function
+***        gcry_kdf_derive
+*** You need to install a newer Libgcrypt version.
+***]])
 fi
 if test "$have_libassuan" = "no"; then
    die=yes