mirror of
https://salsa.debian.org/freeipa-team/freeipa.git
synced 2025-02-25 18:55:28 -06:00
Always detect openldap and mozldap at the same time
Slapi plugins must use mozldap because 389 ds is compiled against that. ipa_kpasswd, instead, should be linked against openldap. So always make sure both are available.
This commit is contained in:
parent
68604a7982
commit
ceb91a3f71
@ -135,11 +135,9 @@ fi
|
||||
AC_SUBST(KRB5_LIBS)
|
||||
|
||||
dnl ---------------------------------------------------------------------------
|
||||
dnl - Check for Mozilla LDAP or OpenLDAP SDK
|
||||
dnl - Check for Mozilla LDAP *and* OpenLDAP SDK
|
||||
dnl ---------------------------------------------------------------------------
|
||||
|
||||
AC_ARG_WITH(openldap, [ --with-openldap Use OpenLDAP])
|
||||
|
||||
dnl The mozldap libraries are always needed because ipa-slapi-plugins/dna/
|
||||
dnl will not build against OpenLDAP.
|
||||
SAVE_CPPFLAGS=$CPPFLAGS
|
||||
@ -160,47 +158,39 @@ if test "x$ac_cv_header_mozldap_ldap_h" = "xno" ; then
|
||||
fi
|
||||
PKG_CHECK_MODULES(MOZLDAP, mozldap > 6)
|
||||
|
||||
if test x$with_openldap = xyes; then
|
||||
AC_CHECK_LIB(ldap, ldap_search, with_ldap=yes)
|
||||
dnl Check for other libraries we need to link with to get the main routines.
|
||||
test "$with_ldap" != "yes" && { AC_CHECK_LIB(ldap, ldap_open, [with_ldap=yes with_ldap_lber=yes], , -llber) }
|
||||
test "$with_ldap" != "yes" && { AC_CHECK_LIB(ldap, ldap_open, [with_ldap=yes with_ldap_lber=yes with_ldap_krb=yes], , -llber -lkrb) }
|
||||
test "$with_ldap" != "yes" && { AC_CHECK_LIB(ldap, ldap_open, [with_ldap=yes with_ldap_lber=yes with_ldap_krb=yes with_ldap_des=yes], , -llber -lkrb -ldes) }
|
||||
dnl Recently, we need -lber even though the main routines are elsewhere,
|
||||
dnl because otherwise be get link errors w.r.t. ber_pvt_opt_on. So just
|
||||
dnl check for that (it's a variable not a fun but that doesn't seem to
|
||||
dnl matter in these checks) and stick in -lber if so. Can't hurt (even to
|
||||
dnl stick it in always shouldn't hurt, I don't think) ... #### Someone who
|
||||
dnl #### understands LDAP needs to fix this properly.
|
||||
test "$with_ldap_lber" != "yes" && { AC_CHECK_LIB(lber, ber_pvt_opt_on, with_ldap_lber=yes) }
|
||||
|
||||
if test "$with_ldap" = "yes"; then
|
||||
if test "$with_ldap_des" = "yes" ; then
|
||||
LDAP_LIBS="${LDAP_LIBS} -ldes"
|
||||
fi
|
||||
if test "$with_ldap_krb" = "yes" ; then
|
||||
LDAP_LIBS="${LDAP_LIBS} -lkrb"
|
||||
fi
|
||||
if test "$with_ldap_lber" = "yes" ; then
|
||||
LDAP_LIBS="${LDAP_LIBS} -llber"
|
||||
fi
|
||||
LDAP_LIBS="${LDAP_LIBS} -lldap"
|
||||
else
|
||||
AC_MSG_ERROR([OpenLDAP not found])
|
||||
fi
|
||||
|
||||
AC_SUBST(LDAP_LIBS)
|
||||
AC_CHECK_LIB(ldap, ldap_search, with_ldap=yes)
|
||||
dnl Check for other libraries we need to link with to get the main routines.
|
||||
test "$with_ldap" != "yes" && { AC_CHECK_LIB(ldap, ldap_open, [with_ldap=yes with_ldap_lber=yes], , -llber) }
|
||||
test "$with_ldap" != "yes" && { AC_CHECK_LIB(ldap, ldap_open, [with_ldap=yes with_ldap_lber=yes with_ldap_krb=yes], , -llber -lkrb) }
|
||||
test "$with_ldap" != "yes" && { AC_CHECK_LIB(ldap, ldap_open, [with_ldap=yes with_ldap_lber=yes with_ldap_krb=yes with_ldap_des=yes], , -llber -lkrb -ldes) }
|
||||
dnl Recently, we need -lber even though the main routines are elsewhere,
|
||||
dnl because otherwise be get link errors w.r.t. ber_pvt_opt_on. So just
|
||||
dnl check for that (it's a variable not a fun but that doesn't seem to
|
||||
dnl matter in these checks) and stick in -lber if so. Can't hurt (even to
|
||||
dnl stick it in always shouldn't hurt, I don't think) ... #### Someone who
|
||||
dnl #### understands LDAP needs to fix this properly.
|
||||
test "$with_ldap_lber" != "yes" && { AC_CHECK_LIB(lber, ber_pvt_opt_on, with_ldap_lber=yes) }
|
||||
|
||||
LDAP_CFLAGS="${LDAP_CFLAGS} -DWITH_OPENLDAP"
|
||||
AC_SUBST(LDAP_CFLAGS)
|
||||
if test "$with_ldap" = "yes"; then
|
||||
if test "$with_ldap_des" = "yes" ; then
|
||||
OPENLDAP_LIBS="${OPENLDAP_LIBS} -ldes"
|
||||
fi
|
||||
if test "$with_ldap_krb" = "yes" ; then
|
||||
OPENLDAP_LIBS="${OPENLDAP_LIBS} -lkrb"
|
||||
fi
|
||||
if test "$with_ldap_lber" = "yes" ; then
|
||||
OPENLDAP_LIBS="${OPENLDAP_LIBS} -llber"
|
||||
fi
|
||||
OPENLDAP_LIBS="${OPENLDAP_LIBS} -lldap"
|
||||
else
|
||||
LDAP_LIBS="${MOZLDAP_LIBS}"
|
||||
AC_SUBST(LDAP_LIBS)
|
||||
|
||||
LDAP_CFLAGS="${LDAP_CFLAGS} -DWITH_MOZLDAP"
|
||||
AC_SUBST(LDAP_CFLAGS)
|
||||
AC_MSG_ERROR([OpenLDAP not found])
|
||||
fi
|
||||
|
||||
AC_SUBST(OPENLDAP_LIBS)
|
||||
|
||||
OPENLDAP_CFLAGS="${OPENLDAP_CFLAGS} -DWITH_OPENLDAP"
|
||||
AC_SUBST(OPENLDAP_CFLAGS)
|
||||
|
||||
dnl ---------------------------------------------------------------------------
|
||||
dnl - Check for OpenSSL Crypto library
|
||||
dnl ---------------------------------------------------------------------------
|
||||
@ -310,7 +300,7 @@ echo "
|
||||
source code location: ${srcdir}
|
||||
compiler: ${CC}
|
||||
cflags: ${CFLAGS}
|
||||
LDAP libs: ${LDAP_LIBS}
|
||||
LDAP libs: ${OPENLDAP_LIBS}
|
||||
KRB5 libs: ${KRB5_LIBS}
|
||||
OpenSSL libs: ${SSL_LIBS}
|
||||
Maintainer mode: ${USE_MAINTAINER_MODE}
|
||||
|
@ -8,7 +8,7 @@ INCLUDES = \
|
||||
-DLIBDIR=\""$(libdir)"\" \
|
||||
-DLIBEXECDIR=\""$(libexecdir)"\" \
|
||||
-DDATADIR=\""$(datadir)"\" \
|
||||
$(LDAP_CFLAGS) \
|
||||
$(OPENLDAP_CFLAGS) \
|
||||
$(KRB5_CFLAGS) \
|
||||
$(WARN_CFLAGS) \
|
||||
$(NULL)
|
||||
@ -22,7 +22,7 @@ ipa_kpasswd_SOURCES = \
|
||||
$(NULL)
|
||||
|
||||
ipa_kpasswd_LDADD = \
|
||||
$(LDAP_LIBS) \
|
||||
$(OPENLDAP_LIBS) \
|
||||
$(KRB5_LIBS) \
|
||||
$(NULL)
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user