if test "$memcached" != "no" -a -n "$libgcryptversion" -a "$pkgconfigpath" != "NONE"; then
AC_MSG_CHECKING([for libmemcached])
if $pkgconfigpath --cflags libmemcached >/dev/null 2>&1 ; then
- if $pkgconfigpath --atleast-version 1.0 libmemcached; then
+ if $pkgconfigpath --atleast-version 0.40 libmemcached; then
AC_MSG_RESULT([yes])
CFLAGS="$CFLAGS `$pkgconfigpath --cflags libmemcached`"
MEMCACHED_LIBS="`$pkgconfigpath --libs libmemcached`"
- AC_DEFINE([HAVE_LIBMEMCACHED_MEMCACHED_H],[1],[Define to 1 if memcached header])
- AC_DEFINE([HAVE_MEMCACHED_FUNC],[1],[Define to 1 if memcached function is defined])
- AC_DEFINE([HAVE_MEMCACHED_RETURN_T],[1],[Define to 1 if memcached_return_t is defined])
+ AC_DEFINE([HAVE_LIBMEMCACHED],[1],[Define to 1 if memcached is enabled])
else
- AC_MSG_RESULT([no. Version 1.0 required])
+ AC_MSG_RESULT([no. Version 0.40 required])
if test "$memcached" != "default"; then
- AC_MSG_ERROR([libmemcached libraries missing])
+ AC_MSG_ERROR([libmemcached libraries missing])
fi
fi
else
AC_MSG_RESULT([no])
if test "$memcached" != "default"; then
- AC_MSG_ERROR([libmemcached libraries missing])
+ AC_MSG_ERROR([libmemcached libraries missing])
fi
fi
fi
#include <yaz/log.h>
#include <yaz/diagbib1.h>
-#if HAVE_LIBMEMCACHED_MEMCACHED_H
-#if HAVE_MEMCACHED_RETURN_T
+#if HAVE_LIBMEMCACHED
+#if LIBMEMCACHED_VERSION_HEX >= 0x01000000
+#define HAVE_MEMCACHED_FUNC 1
#else
-typedef memcached_return memcached_return_t;
+#define HAVE_MEMCACHED_FUNC 0
#endif
#endif
void ZOOM_memcached_init(ZOOM_connection c)
{
-#if HAVE_LIBMEMCACHED_MEMCACHED_H
+#if HAVE_LIBMEMCACHED
c->mc_st = 0;
#endif
#if HAVE_HIREDIS
void ZOOM_memcached_destroy(ZOOM_connection c)
{
-#if HAVE_LIBMEMCACHED_MEMCACHED_H
+#if HAVE_LIBMEMCACHED
if (c->mc_st)
memcached_free(c->mc_st);
#endif
#endif
}
-#if HAVE_LIBMEMCACHED_MEMCACHED_H
+#if HAVE_LIBMEMCACHED
/* memcached wrapper.. Because memcached function do not exist in older libs */
static memcached_st *yaz_memcached_wrap(const char *conf)
{
c->redis_c = 0;
}
#endif
-#if HAVE_LIBMEMCACHED_MEMCACHED_H
+#if HAVE_LIBMEMCACHED
if (c->mc_st)
{
memcached_free(c->mc_st);
val = ZOOM_options_get(c->options, "memcached");
if (val && *val)
{
-#if HAVE_LIBMEMCACHED_MEMCACHED_H
+#if HAVE_LIBMEMCACHED
c->mc_st = yaz_memcached_wrap(val);
if (!c->mc_st)
{
freeReplyObject(reply);
}
#endif
-#if HAVE_LIBMEMCACHED_MEMCACHED_H
+#if HAVE_LIBMEMCACHED
if (c->mc_st && resultset->live_set == 0)
{
size_t v_len;
odr_destroy(odr);
}
#endif
-#if HAVE_LIBMEMCACHED_MEMCACHED_H
+#if HAVE_LIBMEMCACHED
if (c->mc_st && resultset->live_set == 0)
{
uint32_t flags = 0;
wrbuf_destroy(rec_sha1);
}
#endif
-#if HAVE_LIBMEMCACHED_MEMCACHED_H
+#if HAVE_LIBMEMCACHED
if (r->connection->mc_st &&
!diag && npr->which == Z_NamePlusRecord_databaseRecord)
{
freeReplyObject(reply1);
}
#endif
-#if HAVE_LIBMEMCACHED_MEMCACHED_H
+#if HAVE_LIBMEMCACHED
if (r->connection && r->connection->mc_st)
{
WRBUF k = wrbuf_alloc();