X-Git-Url: https://git.sur5r.net/?a=blobdiff_plain;f=configure.in;h=183bcb724c787a493452a4a46c801ae5d640690f;hb=931d7f4a952d456b79717e317a83d27072d9f73d;hp=6a57dc1c28bdb3977f568a75e66e7e06b667e5b1;hpb=4b85c5878219afb8130a05bc4a2fa9c4d41abfa6;p=openldap diff --git a/configure.in b/configure.in index 6a57dc1c28..183bcb724c 100644 --- a/configure.in +++ b/configure.in @@ -1,7 +1,7 @@ dnl $OpenLDAP$ dnl This work is part of OpenLDAP Software . dnl -dnl Copyright 1998-2004 The OpenLDAP Foundation. +dnl Copyright 1998-2005 The OpenLDAP Foundation. dnl All rights reserved. dnl dnl Redistribution and use in source and binary forms, with or without @@ -23,7 +23,7 @@ define([AC_INIT_BINSH], # This work is part of OpenLDAP Software . # -# Copyright 1998-2004 The OpenLDAP Foundation. +# Copyright 1998-2005 The OpenLDAP Foundation. # All rights reserved. # # Redistribution and use in source and binary forms, with or without @@ -34,7 +34,7 @@ define([AC_INIT_BINSH], # top-level directory of the distribution or, alternatively, at # . -echo "Copyright 1998-2004 The OpenLDAP Foundation. All rights reserved." +echo "Copyright 1998-2005 The OpenLDAP Foundation. All rights reserved." echo " Restrictions apply, see COPYRIGHT and LICENSE files." ])dnl dnl ---------------------------------------------------------------- @@ -214,7 +214,7 @@ OL_ARG_ENABLE(bdb,[ --enable-bdb enable Berkeley DB backend no|yes|mod], OL_ARG_ENABLE(dnssrv,[ --enable-dnssrv enable dnssrv backend no|yes|mod], no, [no yes mod])dnl OL_ARG_ENABLE(hdb,[ --enable-hdb enable Hierarchical DB backend no|yes|mod], - no, [no yes mod])dnl + yes, [no yes mod])dnl OL_ARG_ENABLE(ldap,[ --enable-ldap enable ldap backend no|yes|mod], no, [no yes mod])dnl OL_ARG_ENABLE(ldbm,[ --enable-ldbm enable ldbm backend no|yes|mod], no, @@ -242,20 +242,20 @@ OL_ARG_ENABLE(sql,[ --enable-sql enable sql backend no|yes|mod], dnl ---------------------------------------------------------------- dnl SLAPD Overlay Options -Overlays="chain denyop dyngroup lastmod ppolicy proxycache rwm \ - refint unique" +Overlays="denyop dyngroup glue lastmod ppolicy proxycache rwm \ + refint syncprov translucent unique" AC_ARG_WITH(xxslapoverlays,[ SLAPD Overlay Options:]) OL_ARG_ENABLE(overlays,[ --enable-overlays enable all available overlays no|yes|mod], no, [no yes mod])dnl -OL_ARG_ENABLE(chain,[ --enable-chain LDAP Chain Response no|yes|mod], - no, [no yes mod]) OL_ARG_ENABLE(denyop,[ --enable-denyop Deny Operation overlay no|yes|mod], no, [no yes mod]) OL_ARG_ENABLE(dyngroup,[ --enable-dyngroup Dynamic Group overlay no|yes|mod], no, [no yes mod]) +OL_ARG_ENABLE(glue,[ --enable-glue Backend Glue overlay no|yes|mod], + yes, [no yes mod]) OL_ARG_ENABLE(lastmod,[ --enable-lastmod Last Modification overlay no|yes|mod], no, [no yes mod]) OL_ARG_ENABLE(ppolicy,[ --enable-ppolicy Password Policy overlay no|yes|mod], @@ -266,6 +266,10 @@ OL_ARG_ENABLE(refint,[ --enable-refint Referential Integrity overlay no|yes no, [no yes mod]) OL_ARG_ENABLE(rwm,[ --enable-rwm Rewrite/Remap overlay no|yes|mod], no, [no yes mod]) +OL_ARG_ENABLE(syncprov,[ --enable-syncprov Syncrepl Provider overlay no|yes|mod], + yes, [no yes mod]) +OL_ARG_ENABLE(translucent,[ --enable-translucent Translucent Proxy overlay no|yes|mod], + no, [no yes mod]) OL_ARG_ENABLE(unique,[ --enable-unique Attribute Uniqueness overlay no|yes|mod], no, [no yes mod]) @@ -442,10 +446,6 @@ else fi fi -if test $ol_enable_chain != no -a $ol_enable_ldap = no ; then - AC_MSG_ERROR([--enable-chain requires --enable-ldap]) -fi - if test $ol_enable_meta = yes -a $ol_enable_ldap = no ; then AC_MSG_ERROR([--enable-meta requires --enable-ldap]) fi @@ -523,11 +523,14 @@ BUILD_SQL=no BUILD_CHAIN=no BUILD_DENYOP=no BUILD_DYNGROUP=no +BUILD_GLUE=no BUILD_LASTMOD=no BUILD_PPOLICY=no BUILD_PROXYCACHE=no BUILD_REFINT=no BUILD_RWM=no +BUILD_SYNCPROV=no +BUILD_TRANSLUCENT=no BUILD_UNIQUE=no SLAPD_DYNAMIC_OVERLAYS= @@ -535,7 +538,7 @@ SLAPD_DYNAMIC_OVERLAYS= SLAPD_MODULES_LDFLAGS= SLAPD_MODULES_CPPFLAGS= -SLAPD_STATIC_BACKENDS= +SLAPD_STATIC_BACKENDS=back-ldif SLAPD_DYNAMIC_BACKENDS= SLAPD_PERL_LDFLAGS= @@ -710,6 +713,7 @@ esac dnl ---------------------------------------------------------------- dnl Check for module support ol_link_modules=no +WITH_MODULES_ENABLED=no if test $ol_enable_modules != no ; then AC_CHECK_HEADERS(ltdl.h) @@ -726,6 +730,7 @@ if test $ol_enable_modules != no ; then AC_MSG_ERROR([could not locate libtool -lltdl]) fi ol_link_modules=yes + WITH_MODULES_ENABLED=yes else for i in $Backends; do @@ -811,13 +816,16 @@ AC_CHECK_HEADERS( \ winsock2.h \ ) - dnl ---------------------------------------------------------------- dnl Checks for libraries +AC_CHECK_FUNCS( sigaction sigset ) + dnl HP-UX requires -lV3 dnl this is not needed on newer versions of HP-UX -AC_CHECK_LIB(V3, sigset) +if test $ac_cv_func_sigaction = no && test $ac_cv_func_sigaction = no ; then + AC_CHECK_LIB(V3, sigset) +fi dnl The following is INTENTIONALLY scripted out because shell does not dnl support variable names with the '@' character, which is what @@ -886,6 +894,20 @@ dnl ---------------------------------------------------------------- AC_CHECK_FUNCS( poll ) AC_CHECK_HEADERS( poll.h ) +dnl ---------------------------------------------------------------- +AC_CHECK_HEADERS( sys/epoll.h ) +if test "${ac_cv_header_sys_epoll_h}" = yes; then +AC_MSG_CHECKING(for epoll system call) +AC_TRY_RUN( +int main(int argc, char *argv[]) +{ + int epfd = epoll_create(256); + exit (epfd == -1 ? 1 : 0); +}, [AC_MSG_RESULT(yes) +AC_DEFINE(HAVE_EPOLL,1, [define if your system supports epoll])], +AC_MSG_RESULT(no),AC_MSG_RESULT(no)) +fi + dnl ---------------------------------------------------------------- # strerror checks OL_STRERROR @@ -946,51 +968,26 @@ fi dnl ---------------------------------------------------------------- dnl Check for resolver routines -dnl need to check for both res_query and __res_query -dnl need to check -lc, -lbind, and -lresolv -ol_link_dnssrv=no -AC_CHECK_FUNC(res_query,:) -if test $ac_cv_func_res_query = no ; then - AC_CHECK_FUNC(__res_query,:) - ac_cv_func_res_query=$ac_cv_func___res_query -fi +OL_RESOLVER_LINK -if test $ac_cv_func_res_query = no ; then - AC_CHECK_LIB(bind, res_query) - ac_cv_func_res_query=$ac_cv_lib_bind_res_query -fi - -if test $ac_cv_func_res_query = no ; then - AC_CHECK_LIB(bind, __res_query) - ac_cv_func_res_query=$ac_cv_lib_bind___res_query -fi - -if test $ac_cv_func_res_query = no ; then - AC_CHECK_LIB(resolv, res_query) - ac_cv_func_res_query=$ac_cv_lib_resolv_res_query -fi - -if test $ac_cv_func_res_query = no ; then - AC_CHECK_LIB(resolv, __res_query) - ac_cv_func_res_query=$ac_cv_lib_resolv___res_query -fi - -if test $ac_cv_func_res_query = no ; then - AC_CHECK_LIB(resolv, _res_9_query) - ac_cv_func_res_query=$ac_cv_lib_resolv_res_9_query -fi - -if test "$ac_cv_func_res_query" = yes ; then +ol_link_dnssrv=no +if test "$ol_cv_lib_resolver" != no ; then AC_DEFINE(HAVE_RES_QUERY,1, [define if you have res_query()]) - if test $ol_enable_dnssrv != no ; then - ol_link_dnssrv=yes + if test "$ol_enable_dnssrv" != no ; then + ol_link_dnssrv=yes; + fi + + if test "$ol_cv_lib_resolver" != yes ; then + LIBS="$ol_cv_lib_resolver $LIBS" fi fi -if test "$ol_enable_dnssrv" != no -a "$ol_link_dnssrv" = no ; then +if test "$ol_enable_dnssrv" = yes -a "$ol_link_dnssrv" = no ; then AC_MSG_ERROR([DNSSRV requires res_query()]) +else + ol_enable_dnssrv=no fi AC_CHECK_FUNCS( hstrerror ) @@ -2072,6 +2069,9 @@ if test $ol_enable_sql != no ; then AC_MSG_ERROR([could not locate SQL headers]) ]) + sql_LIBS="$LIBS" + LIBS="$LTHREAD_LIBS" + AC_CHECK_LIB(iodbc,SQLDriverConnect,[have_iodbc=yes],[have_iodbc=no]) if test $have_iodbc = yes ; then ol_link_sql="-liodbc" @@ -2082,6 +2082,8 @@ if test $ol_enable_sql != no ; then fi fi + LIBS="$sql_LIBS" + if test $ol_link_sql != no ; then SLAPD_SQL_LIBS="$ol_link_sql" @@ -2403,6 +2405,12 @@ AC_DEFINE(LBER_TAG_T,long) dnl ---------------------------------------------------------------- dnl Checks for library functions. AC_FUNC_MEMCMP + +if test $ac_cv_func_memcmp_clean = no ; then + AC_DEFINE(NEED_MEMCMP_REPLACEMENT,1, + [define if memcmp is not 8-bit clean or is otherwise broken]) +fi + dnl AM_FUNC_MKTIME dnl checks for sys/time.h and unistd.h AC_FUNC_STRFTIME dnl AM_FUNC_STRTOD @@ -2461,9 +2469,7 @@ AC_CHECK_FUNCS( \ setsid \ setuid \ seteuid \ - sigaction \ signal \ - sigset \ strdup \ strpbrk \ strrchr \ @@ -2493,6 +2499,9 @@ if test "$ac_cv_func_getopt" != yes; then fi if test "$ac_cv_func_getpeereid" != yes; then OL_MSGHDR_MSG_ACCRIGHTS + if test "$ac_cv_func_getpeereid" != yes; then + OL_MSGHDR_MSG_CONTROL + fi LIBSRCS="$LIBSRCS getpeereid.c" fi if test "$ac_cv_func_snprintf" != yes -o "$ac_cv_func_vsnprintf" != yes; then @@ -2750,17 +2759,6 @@ if test "$ol_link_sql" != no ; then AC_DEFINE_UNQUOTED(SLAPD_SQL,$MFLAG,[define to support SQL backend]) fi -if test "$ol_enable_chain" != no ; then - BUILD_CHAIN=$ol_enable_chain - if test "$ol_enable_chain" = mod ; then - MFLAG=SLAPD_MOD_DYNAMIC - SLAPD_DYNAMIC_OVERLAYS="$SLAPD_DYNAMIC_OVERLAYS chain.la" - else - MFLAG=SLAPD_MOD_STATIC - fi - AC_DEFINE_UNQUOTED(SLAPD_OVER_CHAIN,$MFLAG,[define for Dynamic Group overlay]) -fi - if test "$ol_enable_denyop" != no ; then BUILD_DENYOP=$ol_enable_denyop if test "$ol_enable_denyop" = mod ; then @@ -2783,6 +2781,17 @@ if test "$ol_enable_dyngroup" != no ; then AC_DEFINE_UNQUOTED(SLAPD_OVER_DYNGROUP,$MFLAG,[define for Dynamic Group overlay]) fi +if test "$ol_enable_glue" != no ; then + BUILD_GLUE=$ol_enable_glue + if test "$ol_enable_glue" = mod ; then + MFLAG=SLAPD_MOD_DYNAMIC + SLAPD_DYNAMIC_OVERLAYS="$SLAPD_DYNAMIC_OVERLAYS glue.la" + else + MFLAG=SLAPD_MOD_STATIC + fi + AC_DEFINE_UNQUOTED(SLAPD_OVER_GLUE,$MFLAG,[define for Backend Glue overlay]) +fi + if test "$ol_enable_lastmod" != no ; then BUILD_LASTMOD=$ol_enable_lastmod if test "$ol_enable_lastmod" = mod ; then @@ -2839,6 +2848,28 @@ if test "$ol_enable_rwm" != no ; then AC_DEFINE_UNQUOTED(SLAPD_OVER_RWM,$MFLAG,[define for Rewrite/Remap overlay]) fi +if test "$ol_enable_syncprov" != no ; then + BUILD_SYNCPROV=$ol_enable_syncprov + if test "$ol_enable_syncprov" = mod ; then + MFLAG=SLAPD_MOD_DYNAMIC + SLAPD_DYNAMIC_OVERLAYS="$SLAPD_DYNAMIC_OVERLAYS syncprov.la" + else + MFLAG=SLAPD_MOD_STATIC + fi + AC_DEFINE_UNQUOTED(SLAPD_OVER_SYNCPROV,$MFLAG,[define for Syncrepl Provider overlay]) +fi + +if test "$ol_enable_translucent" != no ; then + BUILD_TRANSLUCENT=$ol_enable_translucent + if test "$ol_enable_translucent" = mod ; then + MFLAG=SLAPD_MOD_DYNAMIC + SLAPD_DYNAMIC_OVERLAYS="$SLAPD_DYNAMIC_OVERLAYS translucent.la" + else + MFLAG=SLAPD_MOD_STATIC + fi + AC_DEFINE_UNQUOTED(SLAPD_OVER_TRANSLUCENT,$MFLAG,[define for Translucent Proxy overlay]) +fi + if test "$ol_enable_unique" != no ; then BUILD_UNIQUE=$ol_enable_unique if test "$ol_enable_unique" = mod ; then @@ -2880,62 +2911,6 @@ else PLAT=UNIX fi -if test -z "$SLAPD_STATIC_BACKENDS"; then - SLAPD_NO_STATIC='#' -else - SLAPD_NO_STATIC= -fi - -dnl Generate static backend header file -BACKEND_HEADER=servers/slapd/backend.h -cat > $BACKEND_HEADER << EOF -/* This work is part of OpenLDAP Software . - * - * Copyright 1998-2004 The OpenLDAP Foundation. - * All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted only as authorized by the OpenLDAP - * Public License. - * - * A copy of this license is available in the file LICENSE in the - * top-level directory of the distribution or, alternatively, at - * . - */ -/* This file is automatically generated by configure; please do not edit. - */ - -EOF - -for b in $SLAPD_STATIC_BACKENDS; do - bb=`echo "$b" | sed -e 's;back-;;'` - - cat >> $BACKEND_HEADER << EOF -extern BI_init ${bb}_back_initialize; -EOF -done - -cat >> $BACKEND_HEADER << EOF - -static BackendInfo binfo[[]] = { -EOF - -for b in $SLAPD_STATIC_BACKENDS; do - bb=`echo "$b" | sed -e 's;back-;;'` - - cat >> $BACKEND_HEADER << EOF - { "$bb", ${bb}_back_initialize }, -EOF -done - -cat >> $BACKEND_HEADER << EOF - { NULL, NULL } -}; - -/* end of generated file */ -EOF -dnl done generating static backend header file - AC_SUBST(LIBSRCS) AC_SUBST(PLAT) AC_SUBST(WITH_SASL) @@ -2965,11 +2940,14 @@ dnl overlays AC_SUBST(BUILD_CHAIN) AC_SUBST(BUILD_DENYOP) AC_SUBST(BUILD_DYNGROUP) + AC_SUBST(BUILD_GLUE) AC_SUBST(BUILD_LASTMOD) AC_SUBST(BUILD_PPOLICY) AC_SUBST(BUILD_PROXYCACHE) AC_SUBST(BUILD_REFINT) AC_SUBST(BUILD_RWM) + AC_SUBST(BUILD_SYNCPROV) + AC_SUBST(BUILD_TRANSLUCENT) AC_SUBST(BUILD_UNIQUE) AC_SUBST(BUILD_SLURPD) @@ -3044,6 +3022,7 @@ servers/slapd/back-dnssrv/Makefile:build/top.mk:servers/slapd/back-dnssrv/Makefi servers/slapd/back-hdb/Makefile:build/top.mk:servers/slapd/back-hdb/Makefile.in:build/mod.mk \ servers/slapd/back-ldap/Makefile:build/top.mk:servers/slapd/back-ldap/Makefile.in:build/mod.mk \ servers/slapd/back-ldbm/Makefile:build/top.mk:servers/slapd/back-ldbm/Makefile.in:build/mod.mk \ +servers/slapd/back-ldif/Makefile:build/top.mk:servers/slapd/back-ldif/Makefile.in:build/mod.mk \ servers/slapd/back-meta/Makefile:build/top.mk:servers/slapd/back-meta/Makefile.in:build/mod.mk \ servers/slapd/back-monitor/Makefile:build/top.mk:servers/slapd/back-monitor/Makefile.in:build/mod.mk \ servers/slapd/back-null/Makefile:build/top.mk:servers/slapd/back-null/Makefile.in:build/mod.mk \ @@ -3062,5 +3041,57 @@ tests/progs/Makefile:build/top.mk:tests/progs/Makefile.in:build/rules.mk \ ,[ chmod +x tests/run date > stamp-h +BACKENDSC="servers/slapd/backends.c" +echo "Making $BACKENDSC" +rm -f $BACKENDSC +cat > $BACKENDSC << ENDX +/* This work is part of OpenLDAP Software . + * + * Copyright 1998-2005 The OpenLDAP Foundation. + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted only as authorized by the OpenLDAP + * Public License. + * + * A copy of this license is available in the file LICENSE in the + * top-level directory of the distribution or, alternatively, at + * . + */ +/* This file is automatically generated by configure; please do not edit. */ + +#include "portable.h" +#include "slap.h" + +ENDX +if test "${STATIC_BACKENDS}"; then + for b in config ${STATIC_BACKENDS}; do + bb=`echo "${b}" | sed -e 's/back-//'` + cat >> $BACKENDSC << ENDX +extern BI_init ${bb}_back_initialize; +ENDX + done + + cat >> $BACKENDSC << ENDX + +BackendInfo slap_binfo[[]] = { +ENDX + + for b in config ${STATIC_BACKENDS}; do + bb=`echo "${b}" | sed -e 's/back-//'` + echo " Add ${bb} ..." + cat >> $BACKENDSC << ENDX + { "${bb}", ${bb}_back_initialize }, +ENDX + done + + cat >> $BACKENDSC << ENDX + { NULL, NULL }, +}; + +/* end of generated file */ +ENDX +fi + echo Please run \"make depend\" to build dependencies -]) +],[STATIC_BACKENDS="$SLAPD_STATIC_BACKENDS"])