]> git.sur5r.net Git - openldap/commitdiff
Enhance OL_ARG_ENABLE for overridable defaults, trim some redundancy in
authorHoward Chu <hyc@openldap.org>
Thu, 25 Aug 2005 09:48:28 +0000 (09:48 +0000)
committerHoward Chu <hyc@openldap.org>
Thu, 25 Aug 2005 09:48:28 +0000 (09:48 +0000)
the passed in help string. (Append the valid args to the help string...)

build/openldap.m4
configure.in

index e7035371ce7f7fb410395e9330585edb0e07760a..ab2371b3d5b7d32b8c60c2857132091ac7b52c4e 100644 (file)
@@ -20,9 +20,10 @@ dnl $1 = option name
 dnl $2 = help-string
 dnl $3 = default value (auto).  "--" means do not set it by default
 dnl $4 = allowed values (auto yes no)
+dnl $5 = overridden default
 AC_DEFUN([OL_ARG_ENABLE], [# OpenLDAP --enable-$1
-       AC_ARG_ENABLE($1,ifelse($3,--,[$2],
-               [$2 @<:@]ifelse($3,,auto,$3)@:>@),[
+       pushdef([ol_DefVal],ifelse($3,,auto,$3))
+       AC_ARG_ENABLE($1,ifelse($4,,[$2],[$2] translit([$4],[ ],[|])) ifelse($3,--,,@<:@ol_DefVal@:>@),[
        ol_arg=invalid
        for ol_val in ifelse($4,,[auto yes no],[$4]) ; do
                if test "$enableval" = "$ol_val" ; then
@@ -34,8 +35,9 @@ AC_DEFUN([OL_ARG_ENABLE], [# OpenLDAP --enable-$1
        fi
        ol_enable_$1="$ol_arg"
 ]ifelse($3,--,,[,
-[      ol_enable_$1=ifelse($3,,"auto","$3")]]))dnl
+[      ol_enable_$1=ifelse($5,,ol_DefVal,[${]$5[:-]ol_DefVal[}])]]))dnl
 dnl AC_MSG_RESULT([OpenLDAP -enable-$1 $ol_enable_$1])
+       popdef([ol_DefVal])
 # end --enable-$1
 ])dnl
 dnl
index 9b3559877bce42552a6b9de2c88085b03c9a9c89..5204449f85c595e2addd835b07f32758a8ae0155 100644 (file)
@@ -279,39 +279,38 @@ Backends="bdb dnssrv hdb ldap ldbm meta monitor null \
 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_ENABLE(ldbm_api,[      --enable-ldbm-api   use 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_ENABLE(ldbm_type,[      --enable-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
@@ -321,38 +320,36 @@ Overlays="accesslog denyop dyngroup dynlist glue lastmod ppolicy proxycache \
 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