1
0
mirror of git://git.gnupg.org/gnupg.git synced 2024-06-08 23:37:47 +02:00

* ldap.m4: If we don't find ldap or winldap, try for mozldap.

This commit is contained in:
David Shaw 2007-07-27 15:48:35 +00:00
parent 3b9eca640b
commit 73f9238d93
2 changed files with 53 additions and 25 deletions

View File

@ -1,3 +1,7 @@
2007-07-27 David Shaw <dshaw@jabberwocky.com>
* ldap.m4: If we don't find ldap or winldap, try for mozldap.
2007-01-16 David Shaw <dshaw@jabberwocky.com>
* libcurl.m4: Check for curl_easy_escape() and

View File

@ -1,5 +1,5 @@
dnl Check for LDAP
dnl Copyright (C) 2005 Free Software Foundation, Inc.
dnl Copyright (C) 2005, 2007 Free Software Foundation, Inc.
dnl
dnl This file is free software, distributed under the terms of the GNU
dnl General Public License. As a special exception to the GNU General
@ -33,10 +33,11 @@ if test x$_ldap_with != xno ; then
CPPFLAGS="${LDAP_CPPFLAGS} ${CPPFLAGS}"
_ldap_save_ldflags=$LDFLAGS
LDFLAGS="${LDAP_LDFLAGS} ${LDFLAGS}"
_ldap_save_libs=$LIBS
for MY_LDAPLIBS in ${LDAPLIBS+"$LDAPLIBS"} "-lldap" "-lldap -llber" "-lldap -llber -lresolv" "-lwldap32"; do
_ldap_save_libs=$LIBS
LIBS="$MY_LDAPLIBS $1 $LIBS"
LIBS="$MY_LDAPLIBS $1 $_ldap_save_libs"
AC_MSG_CHECKING([whether LDAP via \"$MY_LDAPLIBS\" is present and sane])
AC_TRY_LINK([
@ -59,39 +60,62 @@ if test x$_ldap_with != xno ; then
fi
if test "$gnupg_cv_func_ldaplber_init" = yes ; then
AC_DEFINE(NEED_LBER_H,1,[Define if the LDAP library requires including lber.h before ldap.h])
AC_DEFINE(NEED_LBER_H,1,
[Define if the LDAP library requires including lber.h before ldap.h])
fi
if test "$gnupg_cv_func_ldap_init" = yes || \
test "$gnupg_cv_func_ldaplber_init" = yes ; then
LDAPLIBS="$LDAP_LDFLAGS $MY_LDAPLIBS"
GPGKEYS_LDAP="gpgkeys_ldap$EXEEXT"
AC_CHECK_FUNCS(ldap_get_option ldap_set_option ldap_start_tls_s)
if test "$ac_cv_func_ldap_get_option" != yes ; then
AC_MSG_CHECKING([whether LDAP supports ld_errno])
AC_TRY_LINK([#include <ldap.h>],[LDAP *ldap; ldap->ld_errno;],
[gnupg_cv_func_ldap_ld_errno=yes],
[gnupg_cv_func_ldap_ld_errno=no])
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
break
fi
LIBS=$_ldap_save_libs
if test "$GPGKEYS_LDAP" != "" ; then break; fi
done
if test "$GPGKEYS_LDAP" = "" ; then
# It didn't work, so try for mozldap. We only do this via
# pkg-config due to a really impressive dependency list.
AC_PATH_PROG([_pkg_config],[pkg-config])
if test x$_pkg_config != x ; then
AC_MSG_CHECKING([for mozldap])
LDAPLIBS=`$_pkg_config --libs mozldap 2>/dev/null`
LDAP_CPPFLAGS=`$_pkg_config --cflags mozldap 2>/dev/null`
if test x"$LDAPLIBS" = x && test x"$LDAP_CPPFLAGS" = x; then
AC_MSG_RESULT([no])
else
AC_MSG_RESULT([yes])
LIBS="$LDAPLIBS"
GPGKEYS_LDAP="gpgkeys_ldap$EXEEXT"
CPPFLAGS="${LDAP_CPPFLAGS} ${CPPFLAGS}"
AC_CHECK_HEADERS([ldap_ssl.h],,,[#include <ldap.h>])
fi
fi
fi
if test "$GPGKEYS_LDAP" != "" ; then
# Whichever library we ended up with, check for some features...
AC_CHECK_FUNCS(ldap_get_option ldap_set_option ldap_start_tls_s)
if test "$ac_cv_func_ldap_get_option" != yes ; then
AC_MSG_CHECKING([whether LDAP supports ld_errno])
AC_TRY_LINK([#include <ldap.h>],[LDAP *ldap; ldap->ld_errno;],
[gnupg_cv_func_ldap_ld_errno=yes],
[gnupg_cv_func_ldap_ld_errno=no])
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
CPPFLAGS=$_ldap_save_cppflags
LDFLAGS=$_ldap_save_ldflags
AC_SUBST(GPGKEYS_LDAP)
AC_SUBST(LDAPLIBS)
AC_SUBST(LDAP_CPPFLAGS)
CPPFLAGS=$_ldap_save_cppflags
LDFLAGS=$_ldap_save_ldflags
fi
])dnl