dnl Check for libmemcached
dnl --------------------------------------------------------------------
- AC_LIB_HAVE_LINKFLAGS(memcached,,[
- #include <libmemcached/memcached.h>
- ], [
- memcached_st memc;
- memcached_dump_func *df;
- memcached_version();
+ AC_ARG_ENABLE([libmemcached],
+ [AS_HELP_STRING([--disable-libmemcached],
+ [Build with libmemcached support @<:@default=on@:>@])],
+ [ac_enable_libmemcached="$enableval"],
+ [ac_enable_libmemcached="yes"])
+
+ AS_IF([test "x$ac_enable_libmemcached" = "xyes"],[
+ AC_LIB_HAVE_LINKFLAGS(memcached,,[
+ #include <libmemcached/memcached.h>
+ ],[
+ memcached_st memc;
+ memcached_dump_func *df;
+ memcached_lib_version();
+ ])
+ AC_LIB_HAVE_LINKFLAGS(memcachedprotocol,,[
+ #include <libmemcached/protocol_handler.h>
+ ],[
+ struct memcached_protocol_st *protocol_handle;
+ protocol_handle= memcached_protocol_create_instance();
+ ])
+ ],[
+ ac_cv_libmemcached="no"
])
+ AC_CACHE_CHECK([if libmemcached has memcached_server_fn],
+ [pandora_cv_libmemcached_server_fn],
+ [AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[
+#include <libmemcached/memcached.h>
+memcached_server_fn callbacks[1];
+ ]])],
+ [pandora_cv_libmemcached_server_fn=yes],
+ [pandora_cv_libmemcached_server_fn=no])])
+ AS_IF([test "x$pandora_cv_libmemcached_server_fn" = "xyes"],[
+ AC_DEFINE([HAVE_MEMCACHED_SERVER_FN],[1],[If we have the new memcached_server_fn typedef])
+ ])
+
AM_CONDITIONAL(HAVE_LIBMEMCACHED, [test "x${ac_cv_libmemcached}" = "xyes"])
- AS_IF([test "x${ac_cv_libmemcached}" = "xyes"], [ PANDORA_WITH_MEMCACHED ])
-
])
AC_DEFUN([PANDORA_HAVE_LIBMEMCACHED],[
AS_IF([test x$ac_cv_libmemcached = xno],
AC_MSG_ERROR([libmemcached is required for ${PACKAGE}]))
])
+