From: Howard Chu Date: Thu, 25 Aug 2005 09:48:28 +0000 (+0000) Subject: Enhance OL_ARG_ENABLE for overridable defaults, trim some redundancy in X-Git-Tag: OPENLDAP_REL_ENG_2_2_MP~578^2~1 X-Git-Url: https://git.sur5r.net/?p=openldap;a=commitdiff_plain;h=166048823acb69d05caa521755154fdaf18246e3 Enhance OL_ARG_ENABLE for overridable defaults, trim some redundancy in the passed in help string. (Append the valid args to the help string...) --- diff --git a/build/openldap.m4 b/build/openldap.m4 index e7035371ce..ab2371b3d5 100644 --- a/build/openldap.m4 +++ b/build/openldap.m4 @@ -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 diff --git a/configure.in b/configure.in index 9b3559877b..5204449f85 100644 --- a/configure.in +++ b/configure.in @@ -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