1AC_DEFUN([AC_NETATALK_CNID], [ 2 dnl Don't use BDB unless it's needed 3 bdb_required=no 4 compiled_backends="" 5 6 dnl Determine whether or not to use Database Daemon CNID backend 7 AC_MSG_CHECKING([whether or not to use Database Daemon CNID backend]) 8 AC_ARG_WITH(cnid-dbd-backend, 9 [ --with-cnid-dbd-backend build CNID with Database Daemon Data Store [[yes]]], 10 [ if test x"$withval" = x"no"; then 11 use_dbd_backend=no 12 AC_MSG_RESULT([no]) 13 else 14 use_dbd_backend=yes 15 AC_MSG_RESULT([yes]) 16 fi 17 ],[ 18 use_dbd_backend=yes 19 AC_MSG_RESULT([yes]) 20 ]) 21 22 if test $use_dbd_backend = yes; then 23 compiled_backends="$compiled_backends dbd" 24 AC_DEFINE(CNID_BACKEND_DBD, 1, [Define if CNID Database Daemon backend should be compiled.]) 25 if test x"$DEFAULT_CNID_SCHEME" = x; then 26 DEFAULT_CNID_SCHEME=dbd 27 fi 28 bdb_required=yes 29 fi 30 AM_CONDITIONAL(BUILD_DBD_DAEMON, test x"$use_dbd_backend" = x"yes") 31 32 dnl Determine whether or not to use BDB Concurrent Data Store 33 AC_MSG_CHECKING([whether or not to use BDB Concurrent Data Store]) 34 AC_ARG_WITH(cnid-cdb-backend, 35 [ --with-cnid-cdb-backend build CNID with Concurrent BDB Data Store [[no]]],[ 36 if test x"$withval" = x"no"; then 37 use_cdb_backend=no 38 else 39 use_cdb_backend=yes 40 fi 41 ],[ 42 use_cdb_backend=no 43 ]) 44 45 46 if test $use_cdb_backend = yes; then 47 AC_MSG_RESULT([yes]) 48 AC_DEFINE(CNID_BACKEND_CDB, 1, [Define if CNID Concurrent BDB backend should be compiled.]) 49 if test x"$DEFAULT_CNID_SCHEME" = x; then 50 DEFAULT_CNID_SCHEME=cdb 51 fi 52 bdb_required=yes 53 compiled_backends="$compiled_backends cdb" 54 else 55 AC_MSG_RESULT([no]) 56 fi 57 AM_CONDITIONAL(USE_CDB_BACKEND, test x"$use_cdb_backend" = x"yes") 58 59 dnl Determine whether or not to use LAST DID scheme 60 AC_MSG_CHECKING([whether or not to use LAST DID scheme]) 61 AC_ARG_WITH(cnid-last-backend, 62 [ --with-cnid-last-backend build LAST CNID scheme [[yes]]], 63 [ 64 if test x"$withval" = x"no"; then 65 use_last_backend=no 66 else 67 use_last_backend=yes 68 fi 69 ],[ 70 use_last_backend=yes 71 ]) 72 73 if test $use_last_backend = yes; then 74 AC_MSG_RESULT([yes]) 75 AC_DEFINE(CNID_BACKEND_LAST, 1, [Define if CNID LAST scheme backend should be compiled.]) 76 if test x"$DEFAULT_CNID_SCHEME" = x; then 77 DEFAULT_CNID_SCHEME=last 78 fi 79 compiled_backends="$compiled_backends last" 80 else 81 AC_MSG_RESULT([no]) 82 fi 83 AM_CONDITIONAL(USE_LAST_BACKEND, test x"$use_last_backend" = x"yes") 84 85 dnl Determine whether or not to use TDB DID scheme 86 AC_MSG_CHECKING([whether or not to use TDB DID scheme]) 87 AC_ARG_WITH(cnid-tdb-backend, 88 [ --with-cnid-tdb-backend build TDB CNID scheme [[yes]]], 89 [ 90 if test x"$withval" = x"no"; then 91 use_tdb_backend=no 92 else 93 use_tdb_backend=yes 94 fi 95 ],[ 96 use_tdb_backend=yes 97 ]) 98 99 if test $use_tdb_backend = yes; then 100 AC_MSG_RESULT([yes]) 101 AC_DEFINE(CNID_BACKEND_TDB, 1, [Define if CNID TDB scheme backend should be compiled.]) 102 if test x"$DEFAULT_CNID_SCHEME" = x; then 103 DEFAULT_CNID_SCHEME=tdb 104 fi 105 compiled_backends="$compiled_backends tdb" 106 else 107 AC_MSG_RESULT([no]) 108 fi 109 AM_CONDITIONAL(USE_TDB_BACKEND, test x"$use_tdb_backend" = x"yes") 110 111 dnl Set default DID scheme 112 AC_MSG_CHECKING([default DID scheme]) 113 AC_ARG_WITH(cnid-default-backend, 114 [ --with-cnid-default-backend=val set default DID scheme [[dbd]]], 115 [ 116 if test x"$withval" = x; then 117 AC_MSG_RESULT([ignored]) 118 else 119 DEFAULT_CNID_SCHEME=$withval 120 AC_MSG_RESULT($DEFAULT_CNID_SCHEME) 121 fi 122 ],[ 123 AC_MSG_RESULT($DEFAULT_CNID_SCHEME) 124 ]) 125 126 if test x"$DEFAULT_CNID_SCHEME" = x; then 127 AC_MSG_ERROR([No DID schemes compiled in ]) 128 fi 129 130 AC_MSG_CHECKING([whether default CNID scheme has been activated]) 131 found_scheme=no 132 for scheme in $compiled_backends ; do 133 if test x"$scheme" = x"$DEFAULT_CNID_SCHEME"; then 134 found_scheme=yes 135 fi 136 done 137 if test x"$found_scheme" = x"no"; then 138 AC_MSG_RESULT([no]) 139 AC_MSG_ERROR([Specified default CNID scheme $DEFAULT_CNID_SCHEME was not selected for compilation]) 140 else 141 AC_MSG_RESULT([yes]) 142 fi 143 144 AC_DEFINE_UNQUOTED(DEFAULT_CNID_SCHEME, "$DEFAULT_CNID_SCHEME", [Default CNID scheme to be used]) 145 AC_SUBST(DEFAULT_CNID_SCHEME) 146 AC_SUBST(compiled_backends) 147 148 if test "x$bdb_required" = "xyes"; then 149 ifelse([$1], , :, [$1]) 150 else 151 ifelse([$2], , :, [$2]) 152 fi 153]) 154