]> git.sur5r.net Git - openldap/blobdiff - configure.in
Enhance OL_ARG_ENABLE for overridable defaults, trim some redundancy in
[openldap] / configure.in
index ab0f6dab644f31c9bacf449ee0e6a269510ea1d7..5204449f85c595e2addd835b07f32758a8ae0155 100644 (file)
@@ -28,15 +28,6 @@ dnl OpenLDAP Autoconf Macros
 builtin(include, build/openldap.m4)dnl
 dnl ================================================================
 
-# set unset (borrowed from autoconf 2.49c)
-if (OL_FOO=OL_FOO; unset OL_FOO) >/dev/null 2>&1; then
-  ol_unset=unset
-else
-  ol_unset=false
-fi
-# unset CDPATH
-$ol_unset CDPATH || test "${CDPATH+set}" != set || { CDPATH=:; export CDPATH; }
-
 AC_CONFIG_AUX_DIR(build)dnl
 
 eval `$ac_aux_dir/version.sh`
@@ -263,7 +254,7 @@ dnl ----------------------------------------------------------------
 
 dnl ----------------------------------------------------------------
 dnl SLAPD OPTIONS
-AC_ARG_WITH(xxslapdoptions,[
+AC_ARG_ENABLE(xxslapdoptions,[
 SLAPD (Standalone LDAP Daemon) Options:])
 OL_ARG_ENABLE(slapd,[  --enable-slapd    enable building slapd], yes)dnl
 OL_ARG_ENABLE(aci,[    --enable-aci      enable per-object ACIs (experimental)], no)dnl
@@ -285,92 +276,89 @@ dnl SLAPD Backend Options
 Backends="bdb dnssrv hdb ldap ldbm meta monitor null \
        passwd perl relay shell sql"
 
-AC_ARG_WITH(xxslapbackends,[
+AC_ARG_ENABLE(xxslapbackends,[
 SLAPD Backend Options:])
 
-OL_ARG_ENABLE(backends,[    --enable-backends    enable all available backends no|yes|mod],
+OL_ARG_ENABLE(backends,[    --enable-backends    enable all available backends],
        --, [no yes mod])dnl
-test -n "$ol_enable_backends" && ol_dflt_backends="$ol_enable_backends"
-OL_ARG_ENABLE(bdb,[    --enable-bdb      enable Berkeley DB backend no|yes|mod],
-       ${ol_dflt_backends-yes}, [no yes mod])dnl
-OL_ARG_ENABLE(dnssrv,[    --enable-dnssrv        enable dnssrv backend no|yes|mod],
-       ${ol_dflt_backends-no}, [no yes mod])dnl
-OL_ARG_ENABLE(hdb,[    --enable-hdb      enable Hierarchical DB backend no|yes|mod],
-       ${ol_dflt_backends-yes}, [no yes mod])dnl
-OL_ARG_ENABLE(ldap,[    --enable-ldap    enable ldap backend no|yes|mod],
-       ${ol_dflt_backends-no}, [no yes mod])dnl
-OL_ARG_ENABLE(ldbm,[    --enable-ldbm    enable ldbm backend no|yes|mod],
-       ${ol_dflt_backends-no}, [no yes mod])dnl
-OL_ARG_WITH(ldbm_api,[      --with-ldbm-api     with LDBM API auto|berkeley|bcompat|mdbm|gdbm],
+OL_ARG_ENABLE(bdb,[    --enable-bdb      enable Berkeley DB backend],
+       yes, [no yes mod], ol_enable_backends)dnl
+OL_ARG_ENABLE(dnssrv,[    --enable-dnssrv        enable dnssrv backend],
+       no, [no yes mod], ol_enable_backends)dnl
+OL_ARG_ENABLE(hdb,[    --enable-hdb      enable Hierarchical DB backend],
+       yes, [no yes mod], ol_enable_backends)dnl
+OL_ARG_ENABLE(ldap,[    --enable-ldap    enable ldap backend],
+       no, [no yes mod], ol_enable_backends)dnl
+OL_ARG_ENABLE(ldbm,[    --enable-ldbm    enable ldbm backend],
+       no, [no yes mod], ol_enable_backends)dnl
+OL_ARG_ENABLE(ldbm_api,[      --enable-ldbm-api   use LDBM API],
        auto, [auto berkeley bcompat mdbm gdbm])
-OL_ARG_WITH(ldbm_type,[      --with-ldbm-type    use LDBM type auto|btree|hash],
+OL_ARG_ENABLE(ldbm_type,[      --enable-ldbm-type  use LDBM type],
        auto, [auto btree hash])
-OL_ARG_ENABLE(meta,[    --enable-meta    enable metadirectory backend no|yes|mod],
-       ${ol_dflt_backends-no}, [no yes mod])dnl
-OL_ARG_ENABLE(monitor,[    --enable-monitor      enable monitor backend no|yes|mod],
-       ${ol_dflt_backends-yes}, [no yes mod])dnl
-OL_ARG_ENABLE(null,[    --enable-null    enable null backend no|yes|mod],
-       ${ol_dflt_backends-no}, [no yes mod])dnl
-OL_ARG_ENABLE(passwd,[    --enable-passwd        enable passwd backend no|yes|mod],
-       ${ol_dflt_backends-no}, [no yes mod])dnl
-OL_ARG_ENABLE(perl,[    --enable-perl    enable perl backend no|yes|mod],
-       ${ol_dflt_backends-no}, [no yes mod])dnl
-OL_ARG_ENABLE(relay,[    --enable-relay          enable relay backend no|yes|mod],
-       ${ol_dflt_backends-yes}, [no yes mod])dnl
-OL_ARG_ENABLE(shell,[    --enable-shell          enable shell backend no|yes|mod],
-       ${ol_dflt_backends-no}, [no yes mod])dnl
-OL_ARG_ENABLE(sql,[    --enable-sql      enable sql backend no|yes|mod],
-       ${ol_dflt_backends-no}, [no yes mod])dnl
+OL_ARG_ENABLE(meta,[    --enable-meta    enable metadirectory backend],
+       no, [no yes mod], ol_enable_backends)dnl
+OL_ARG_ENABLE(monitor,[    --enable-monitor      enable monitor backend],
+       yes, [no yes mod], ol_enable_backends)dnl
+OL_ARG_ENABLE(null,[    --enable-null    enable null backend],
+       no, [no yes mod], ol_enable_backends)dnl
+OL_ARG_ENABLE(passwd,[    --enable-passwd        enable passwd backend],
+       no, [no yes mod], ol_enable_backends)dnl
+OL_ARG_ENABLE(perl,[    --enable-perl    enable perl backend],
+       no, [no yes mod], ol_enable_backends)dnl
+OL_ARG_ENABLE(relay,[    --enable-relay          enable relay backend],
+       yes, [no yes mod], ol_enable_backends)dnl
+OL_ARG_ENABLE(shell,[    --enable-shell          enable shell backend],
+       no, [no yes mod], ol_enable_backends)dnl
+OL_ARG_ENABLE(sql,[    --enable-sql      enable sql backend],
+       no, [no yes mod], ol_enable_backends)dnl
 
 dnl ----------------------------------------------------------------
 dnl SLAPD Overlay Options
 Overlays="accesslog denyop dyngroup dynlist glue lastmod ppolicy proxycache \
        refint retcode rwm syncprov translucent unique"
 
-AC_ARG_WITH(xxslapoverlays,[
+AC_ARG_ENABLE(xxslapoverlays,[
 SLAPD Overlay Options:])
 
-OL_ARG_ENABLE(overlays,[    --enable-overlays    enable all available overlays no|yes|mod],
+OL_ARG_ENABLE(overlays,[    --enable-overlays    enable all available overlays],
        --, [no yes mod])dnl
-test -n "$ol_enable_overlays" && ol_dflt_overlays="$ol_enable_overlays"
-OL_ARG_ENABLE(accesslog,[    --enable-accesslog          In-Directory Access Logging overlay no|yes|mod],
-       ${ol_dflt_overlays-no}, [no yes mod])
-OL_ARG_ENABLE(denyop,[    --enable-denyop        Deny Operation overlay no|yes|mod],
-       ${ol_dflt_overlays-no}, [no yes mod])
-OL_ARG_ENABLE(dyngroup,[    --enable-dyngroup    Dynamic Group overlay no|yes|mod],
-       ${ol_dflt_overlays-no}, [no yes mod])
-OL_ARG_ENABLE(dynlist,[    --enable-dynlist      Dynamic List overlay no|yes|mod],
-       ${ol_dflt_overlays-no}, [no yes mod])
-OL_ARG_ENABLE(glue,[    --enable-glue    Backend Glue overlay no|yes|mod],
-       ${ol_dflt_overlays-yes}, [no yes mod])
-OL_ARG_ENABLE(lastmod,[    --enable-lastmod      Last Modification overlay no|yes|mod],
-       ${ol_dflt_overlays-no}, [no yes mod])
-OL_ARG_ENABLE(ppolicy,[    --enable-ppolicy      Password Policy overlay no|yes|mod],
-       ${ol_dflt_overlays-no}, [no yes mod])
-OL_ARG_ENABLE(proxycache,[    --enable-proxycache        Proxy Cache overlay no|yes|mod],
-       ${ol_dflt_overlays-no}, [no yes mod])
-OL_ARG_ENABLE(refint,[    --enable-refint        Referential Integrity overlay no|yes|mod],
-       ${ol_dflt_overlays-no}, [no yes mod])
-OL_ARG_ENABLE(retcode,[    --enable-retcode      Return Code testing overlay no|yes|mod],
-       ${ol_dflt_overlays-no}, [no yes mod])
-OL_ARG_ENABLE(rwm,[    --enable-rwm              Rewrite/Remap overlay no|yes|mod],
-       ${ol_dflt_overlays-no}, [no yes mod])
-OL_ARG_ENABLE(syncprov,[    --enable-syncprov    Syncrepl Provider overlay no|yes|mod],
-       ${ol_dflt_overlays-yes}, [no yes mod])
-OL_ARG_ENABLE(translucent,[    --enable-translucent  Translucent Proxy overlay no|yes|mod],
-       ${ol_dflt_overlays-no}, [no yes mod])
-OL_ARG_ENABLE(unique,[    --enable-unique       Attribute Uniqueness overlay no|yes|mod],
-       ${ol_dflt_overlays-no}, [no yes mod])
-
+OL_ARG_ENABLE(accesslog,[    --enable-accesslog          In-Directory Access Logging overlay],
+       no, [no yes mod], ol_enable_overlays)
+OL_ARG_ENABLE(denyop,[    --enable-denyop        Deny Operation overlay],
+       no, [no yes mod], ol_enable_overlays)
+OL_ARG_ENABLE(dyngroup,[    --enable-dyngroup    Dynamic Group overlay],
+       no, [no yes mod], ol_enable_overlays)
+OL_ARG_ENABLE(dynlist,[    --enable-dynlist      Dynamic List overlay],
+       no, [no yes mod], ol_enable_overlays)
+OL_ARG_ENABLE(glue,[    --enable-glue    Backend Glue overlay],
+       yes, [no yes mod], ol_enable_overlays)
+OL_ARG_ENABLE(lastmod,[    --enable-lastmod      Last Modification overlay],
+       no, [no yes mod], ol_enable_overlays)
+OL_ARG_ENABLE(ppolicy,[    --enable-ppolicy      Password Policy overlay],
+       no, [no yes mod], ol_enable_overlays)
+OL_ARG_ENABLE(proxycache,[    --enable-proxycache        Proxy Cache overlay],
+       no, [no yes mod], ol_enable_overlays)
+OL_ARG_ENABLE(refint,[    --enable-refint        Referential Integrity overlay],
+       no, [no yes mod], ol_enable_overlays)
+OL_ARG_ENABLE(retcode,[    --enable-retcode      Return Code testing overlay],
+       no, [no yes mod], ol_enable_overlays)
+OL_ARG_ENABLE(rwm,[    --enable-rwm              Rewrite/Remap overlay],
+       no, [no yes mod], ol_enable_overlays)
+OL_ARG_ENABLE(syncprov,[    --enable-syncprov    Syncrepl Provider overlay],
+       yes, [no yes mod], ol_enable_overlays)
+OL_ARG_ENABLE(translucent,[    --enable-translucent  Translucent Proxy overlay],
+       no, [no yes mod], ol_enable_overlays)
+OL_ARG_ENABLE(unique,[    --enable-unique       Attribute Uniqueness overlay],
+       no, [no yes mod], ol_enable_overlays)
 
 dnl ----------------------------------------------------------------
 dnl SLURPD OPTIONS
-AC_ARG_WITH(xxslurpdoptions,[
+AC_ARG_ENABLE(xxslurpdoptions,[
 SLURPD (Replication Daemon) Options:])
 OL_ARG_ENABLE(slurpd,[  --enable-slurpd          enable building slurpd], auto)dnl
 
 dnl ----------------------------------------------------------------
-AC_ARG_WITH(xxliboptions,[
+AC_ARG_ENABLE(xxliboptions,[
 Library Generation & Linking Options])
 AC_ENABLE_STATIC
 AC_ENABLE_SHARED
@@ -408,11 +396,11 @@ if test $ol_enable_slapd = no ; then
        if test $ol_enable_aci = yes ; then
                AC_MSG_WARN([slapd disabled, ignoring --enable-aci argument])
        fi
-       if test $ol_with_ldbm_api != auto ; then
-               AC_MSG_WARN([slapd disabled, ignoring --with-ldbm-api argument])
+       if test $ol_enable_ldbm_api != auto ; then
+               AC_MSG_WARN([slapd disabled, ignoring --enable-ldbm-api argument])
        fi
-       if test $ol_with_ldbm_type != auto ; then
-               AC_MSG_WARN([slapd disabled, ignoring --with-ldbm-type argument])
+       if test $ol_enable_ldbm_type != auto ; then
+               AC_MSG_WARN([slapd disabled, ignoring --enable-ldbm-type argument])
        fi
        if test $ol_enable_slurpd = yes ; then
                AC_MSG_ERROR([slurpd requires slapd])
@@ -443,8 +431,8 @@ if test $ol_enable_slapd = no ; then
        ol_enable_aci=no
        ol_enable_wrappers=no
 
-       ol_with_ldbm_api=no
-       ol_with_ldbm_type=no
+       ol_enable_ldbm_api=no
+       ol_enable_ldbm_type=no
 
        ol_enable_slurpd=no
 
@@ -453,12 +441,12 @@ if test $ol_enable_slapd = no ; then
 elif test $ol_enable_ldbm = no ; then
        dnl SLAPD without LDBM
 
-       if test $ol_with_ldbm_api != auto ; then
-               AC_MSG_WARN([LDBM disabled, ignoring --with-ldbm-api argument])
+       if test $ol_enable_ldbm_api != auto ; then
+               AC_MSG_WARN([LDBM disabled, ignoring --enable-ldbm-api argument])
        fi
 
-       if test $ol_with_ldbm_type != auto ; then
-               AC_MSG_WARN([LDBM disabled, ignoring --with-ldbm-type argument])
+       if test $ol_enable_ldbm_type != auto ; then
+               AC_MSG_WARN([LDBM disabled, ignoring --enable-ldbm-type argument])
        fi
 
        if test $ol_enable_modules != yes -a \
@@ -483,32 +471,32 @@ elif test $ol_enable_ldbm = no ; then
                fi
        fi
 
-       ol_with_ldbm_api=no
-       ol_with_ldbm_type=no
+       ol_enable_ldbm_api=no
+       ol_enable_ldbm_type=no
 
        if test $ol_enable_bdb != no -o $ol_enable_hdb != no; then
-               ol_with_ldbm_api=berkeley
+               ol_enable_ldbm_api=berkeley
        fi
 
 else
        dnl SLAPD with LDBM
-       if test $ol_with_ldbm_api = gdbm -a \
-               $ol_with_ldbm_type = btree ; then
+       if test $ol_enable_ldbm_api = gdbm -a \
+               $ol_enable_ldbm_type = btree ; then
                AC_MSG_ERROR([GDBM only supports LDBM type hash])
        fi
-       if test $ol_with_ldbm_api = mdbm -a \
-               $ol_with_ldbm_type = btree ; then
+       if test $ol_enable_ldbm_api = mdbm -a \
+               $ol_enable_ldbm_type = btree ; then
                AC_MSG_ERROR([MDBM only supports LDBM type hash])
        fi
-       if test $ol_with_ldbm_api = ndbm -a \
-               $ol_with_ldbm_type = btree ; then
+       if test $ol_enable_ldbm_api = ndbm -a \
+               $ol_enable_ldbm_type = btree ; then
                AC_MSG_ERROR([NDBM only supports LDBM type hash])
        fi
 
        if test $ol_enable_bdb != no -o $ol_enable_hdb != no ; then
-               if test $ol_with_ldbm_api = auto ; then
-                       ol_with_ldbm_api=berkeley
-               elif test $ol_with_ldbm_api != berkeley ; then
+               if test $ol_enable_ldbm_api = auto ; then
+                       ol_enable_ldbm_api=berkeley
+               elif test $ol_enable_ldbm_api != berkeley ; then
                        AC_MSG_ERROR([LDBM API not compatible with BDB/HDB])
                fi
        fi
@@ -1946,11 +1934,11 @@ fi
 dnl ----------------------------------------------------------------
 ol_link_ldbm=no 
 
-if test $ol_with_ldbm_api = auto \
-       -o $ol_with_ldbm_api = berkeley \
-       -o $ol_with_ldbm_api = bcompat ; then
+if test $ol_enable_ldbm_api = auto \
+       -o $ol_enable_ldbm_api = berkeley \
+       -o $ol_enable_ldbm_api = bcompat ; then
 
-       if test $ol_with_ldbm_api = bcompat; then \
+       if test $ol_enable_ldbm_api = bcompat; then \
                OL_BERKELEY_COMPAT_DB
        else
                OL_BERKELEY_DB
@@ -1961,9 +1949,9 @@ if test $ol_with_ldbm_api = auto \
                        [define this if Berkeley DB is available])
 
                ol_link_ldbm=berkeley
-               ol_with_ldbm_api=berkeley
+               ol_enable_ldbm_api=berkeley
 
-               if test $ol_with_ldbm_type = hash ; then
+               if test $ol_enable_ldbm_type = hash ; then
                        AC_DEFINE(LDBM_USE_DBHASH,1,
                                [define this to use DBHASH w/ LDBM backend])
                else
@@ -1991,29 +1979,29 @@ if test $ol_enable_bdb != no -o $ol_enable_hdb != no; then
        fi
 fi
 
-if test $ol_link_ldbm = no -a $ol_with_ldbm_type = btree ; then
+if test $ol_link_ldbm = no -a $ol_enable_ldbm_type = btree ; then
        AC_MSG_WARN([Could not find LDBM with BTREE support])
-       ol_with_ldbm_api=none
+       ol_enable_ldbm_api=none
 fi
 
-if test $ol_with_ldbm_api = auto -o $ol_with_ldbm_api = mdbm ; then
+if test $ol_enable_ldbm_api = auto -o $ol_enable_ldbm_api = mdbm ; then
        OL_MDBM
 
        if test $ol_cv_mdbm = yes ; then
                ol_link_ldbm=mdbm
-               ol_with_ldbm_api=mdbm
+               ol_enable_ldbm_api=mdbm
                if test $ol_cv_lib_mdbm != yes ; then
                        LDBM_LIBS="$LDBM_LIBS $ol_cv_lib_mdbm"
                fi
        fi
 fi
 
-if test $ol_with_ldbm_api = auto -o $ol_with_ldbm_api = gdbm ; then
+if test $ol_enable_ldbm_api = auto -o $ol_enable_ldbm_api = gdbm ; then
        OL_GDBM
 
        if test $ol_cv_gdbm = yes ; then
                ol_link_ldbm=gdbm
-               ol_with_ldbm_api=gdbm
+               ol_enable_ldbm_api=gdbm
 
                if test $ol_cv_lib_gdbm != yes ; then
                        LDBM_LIBS="$LDBM_LIBS $ol_cv_lib_gdbm"
@@ -2021,12 +2009,12 @@ if test $ol_with_ldbm_api = auto -o $ol_with_ldbm_api = gdbm ; then
        fi
 fi
 
-if test $ol_with_ldbm_api = ndbm ; then
+if test $ol_enable_ldbm_api = ndbm ; then
        OL_NDBM
 
        if test $ol_cv_ndbm = yes ; then
                ol_link_ldbm=ndbm
-               ol_with_ldbm_api=ndbm
+               ol_enable_ldbm_api=ndbm
 
                if test $ol_cv_lib_ndbm != yes ; then
                        LDBM_LIBS="$LDBM_LIBS $ol_cv_lib_ndbm"
@@ -2402,19 +2390,24 @@ AC_CHECK_TYPE(size_t, unsigned)
 AC_CHECK_TYPES([long long])
 AC_CHECK_TYPES([ptrdiff_t])
 
-AC_CHECK_TYPE([socklen_t], [int],,,[$ac_includes_default
+AC_CHECK_TYPE([socklen_t],,
+       [AC_DEFINE_UNQUOTED([socklen_t], [int],
+               [Define to `int' if <sys/socket.h> does not define.])],
+       [$ac_includes_default
 #ifdef HAVE_SYS_SOCKET_H
 #include <sys/socket.h>
 #endif
-])
+       ])
 
-AC_CHECK_TYPE([sig_atomic_t], [int],,,[$ac_includes_default
-#ifdef HAVE_SIGNAL_H
+AC_TYPE_SIGNAL
+
+AC_CHECK_TYPE([sig_atomic_t],,
+       [AC_DEFINE_UNQUOTED([sig_atomic_t], [int],
+               [Define to `int' if <signal.h> does not define.])],
+       [$ac_includes_default
 #include <signal.h>
-#endif
-])
+       ])
 
-AC_TYPE_SIGNAL
 AC_TYPE_UID_T
 
 AC_HEADER_TIME