~zulcss/samba/server-dailies-3.4

« back to all changes in this revision

Viewing changes to source4/lib/ldb/ldap.m4

  • Committer: Chuck Short
  • Date: 2010-09-28 20:38:39 UTC
  • Revision ID: zulcss@ubuntu.com-20100928203839-pgjulytsi9ue63x1
Initial version

Show diffs side-by-side

added added

removed removed

Lines of Context:
 
1
########################################################
 
2
# Compile with LDAP support?
 
3
 
 
4
LDAP_LIBS=""
 
5
with_ldap_support=auto
 
6
AC_MSG_CHECKING([for LDAP support])
 
7
 
 
8
AC_ARG_WITH(ldap,
 
9
AS_HELP_STRING([--with-ldap],[LDAP backend support (default=yes)]),
 
10
[ case "$withval" in
 
11
    yes|no)
 
12
        with_ldap_support=$withval
 
13
        ;;
 
14
  esac ])
 
15
 
 
16
AC_MSG_RESULT($with_ldap_support)
 
17
 
 
18
if test x"$with_ldap_support" != x"no"; then
 
19
 
 
20
  ##################################################################
 
21
  # first test for ldap.h and lber.h
 
22
  # (ldap.h is required for this test)
 
23
  AC_CHECK_HEADERS(ldap.h lber.h)
 
24
  
 
25
  if test x"$ac_cv_header_ldap_h" != x"yes"; then
 
26
        if test x"$with_ldap_support" = x"yes"; then
 
27
         AC_MSG_ERROR(ldap.h is needed for LDAP support)
 
28
        else
 
29
         AC_MSG_WARN(ldap.h is needed for LDAP support)
 
30
        fi
 
31
        
 
32
        with_ldap_support=no
 
33
  fi
 
34
fi
 
35
 
 
36
if test x"$with_ldap_support" != x"no"; then
 
37
  ac_save_LIBS=$LIBS
 
38
 
 
39
  ##################################################################
 
40
  # we might need the lber lib on some systems. To avoid link errors
 
41
  # this test must be before the libldap test
 
42
  AC_CHECK_LIB_EXT(lber, LDAP_LIBS, ber_scanf)
 
43
 
 
44
  ########################################################
 
45
  # now see if we can find the ldap libs in standard paths
 
46
  AC_CHECK_LIB_EXT(ldap, LDAP_LIBS, ldap_init)
 
47
 
 
48
  AC_CHECK_FUNC_EXT(ldap_domain2hostlist,$LDAP_LIBS)
 
49
  
 
50
  ########################################################
 
51
  # If we have LDAP, does it's rebind procedure take 2 or 3 arguments?
 
52
  # Check found in pam_ldap 145.
 
53
  AC_CHECK_FUNC_EXT(ldap_set_rebind_proc,$LDAP_LIBS)
 
54
 
 
55
  LIBS="$LIBS $LDAP_LIBS"
 
56
  AC_CACHE_CHECK(whether ldap_set_rebind_proc takes 3 arguments, smb_ldap_cv_ldap_set_rebind_proc, [
 
57
    AC_TRY_COMPILE([
 
58
        #include <lber.h>
 
59
        #include <ldap.h>], 
 
60
        [ldap_set_rebind_proc(0, 0, 0);], 
 
61
        [smb_ldap_cv_ldap_set_rebind_proc=3], 
 
62
        [smb_ldap_cv_ldap_set_rebind_proc=2]
 
63
    ) 
 
64
  ])
 
65
  
 
66
  AC_DEFINE_UNQUOTED(LDAP_SET_REBIND_PROC_ARGS, $smb_ldap_cv_ldap_set_rebind_proc, [Number of arguments to ldap_set_rebind_proc])
 
67
 
 
68
  AC_CHECK_FUNC_EXT(ldap_initialize,$LDAP_LIBS) 
 
69
  
 
70
  if test x"$ac_cv_lib_ext_ldap_ldap_init" = x"yes" -a x"$ac_cv_func_ext_ldap_domain2hostlist" = x"yes"; then
 
71
    AC_DEFINE(HAVE_LDAP,1,[Whether ldap is available])
 
72
    AC_DEFINE(HAVE_LDB_LDAP,1,[Whether ldb_ldap is available])
 
73
    with_ldap_support=yes
 
74
    AC_MSG_CHECKING(whether LDAP support is used)
 
75
    AC_MSG_RESULT(yes)
 
76
    SMB_ENABLE(LDAP,YES)
 
77
  else
 
78
    if test x"$with_ldap_support" = x"yes"; then
 
79
        AC_MSG_ERROR(libldap is needed for LDAP support)
 
80
    else
 
81
        AC_MSG_WARN(libldap is needed for LDAP support)
 
82
    fi
 
83
    
 
84
    LDAP_LIBS=""
 
85
    with_ldap_support=no
 
86
  fi
 
87
  LIBS=$ac_save_LIBS
 
88
fi
 
89
 
 
90
SMB_EXT_LIB(LDAP,[${LDAP_LIBS}],[${LDAP_CFLAGS}],[${LDAP_CPPFLAGS}],[${LDAP_LDFLAGS}])