From 0e1362f947e5e246be3ec018a4c34e937b6175f2 Mon Sep 17 00:00:00 2001 From: koobs Date: Thu, 11 Dec 2014 05:26:39 +0000 Subject: databases/libmemcached: Update to 1.0.18 and much more - Update to 1.0.18 and pkg-plist accordingly - Add LICENSE (BSD3CLAUSE) and LICENSE_FILE - Add TEST_DEPENDS and regression-test target - Perl is not required, remove USE_PERL and from USES - Split LDFLAGS from CONFIGURE_ENV, they're already set there - Add libmemcachedprotocol to CONFIGURE_ARGS (Now default: off) - Add OPTIONS for hash functions, debug and dtrace - pkg-descr: Update WWW: URL - Add patches for: * alloca.h include not found on FreeBSD * cinttypes include location * clang compatibility - Strip shared libraries manually since upstream install-strip target is fail Changes: https://launchpad.net/libmemcached/+announcements [1] https://bugs.launchpad.net/libmemcached/+bug/1245562 [2] https://bugs.launchpad.net/libmemcached/+bug/1400560 Approved by: Mikhail Tsatsenko (maintainer, via email) --- databases/libmemcached/Makefile | 51 +++++++++++++++++----- databases/libmemcached/distinfo | 4 +- databases/libmemcached/files/patch-bug1245562 | 38 ++++++++++++++++ databases/libmemcached/files/patch-bug1400560 | 29 ++++++++++++ .../files/patch-libmemcached_assert.hpp | 13 ++++++ databases/libmemcached/files/patch-libtest_lite.h | 13 ++++++ databases/libmemcached/pkg-descr | 2 +- databases/libmemcached/pkg-plist | 9 +++- databases/p5-Cache-Memcached-libmemcached/Makefile | 2 +- databases/pecl-memcached/Makefile | 2 +- databases/pgpool-II-33/Makefile | 1 + databases/py-pylibmc/Makefile | 1 + databases/rubygem-memcache/Makefile | 1 + 13 files changed, 148 insertions(+), 18 deletions(-) create mode 100644 databases/libmemcached/files/patch-bug1245562 create mode 100644 databases/libmemcached/files/patch-bug1400560 create mode 100644 databases/libmemcached/files/patch-libmemcached_assert.hpp create mode 100644 databases/libmemcached/files/patch-libtest_lite.h (limited to 'databases') diff --git a/databases/libmemcached/Makefile b/databases/libmemcached/Makefile index cd134bbd7aae..8e342cfac1c6 100644 --- a/databases/libmemcached/Makefile +++ b/databases/libmemcached/Makefile @@ -1,31 +1,60 @@ # $FreeBSD$ PORTNAME= libmemcached -PORTVERSION= 1.0.7 -PORTREVISION= 4 +PORTVERSION= 1.0.18 CATEGORIES= databases MASTER_SITES= http://launchpad.net/${PORTNAME}/1.0/${PORTVERSION}/+download/ MAINTAINER= m.tsatsenko@gmail.com COMMENT= C and C++ client library to the memcached server +LICENSE= BSD3CLAUSE +LICENSE_FILE= ${WRKSRC}/COPYING + LIB_DEPENDS?= libevent.so:${PORTSDIR}/devel/libevent2 +TEST_DEPENDS= memcached:${PORTSDIR}/databases/memcached -USES= execinfo gmake pathfix pkgconfig perl5 libtool -USE_PERL5= build +USES= autoreconf execinfo gmake pathfix pkgconfig libtool USE_LDCONFIG= yes + GNU_CONFIGURE= yes -CONFIGURE_ARGS= --without-memcached -CONFIGURE_ENV+= LDFLAGS="-L${LOCALBASE}/lib -lexecinfo" -CXXFLAGS+= -D__STDC_CONSTANT_MACROS +CONFIGURE_ARGS= --without-memcached \ + --enable-libmemcachedprotocol -OPTIONS_DEFINE= SASL +LDFLAGS+= -L${LOCALBASE}/lib -lexecinfo +CXXFLAGS+= -D__STDC_CONSTANT_MACROS +OPTIONS_DEFINE= DEBUG DTRACE MEMASLAP SASL +OPTIONS_DEFAULT= MEMASLAP SASL MURMUR FNV64 +OPTIONS_GROUP= HASH +OPTIONS_GROUP_HASH= FNV64 HSIEH MURMUR + +DTRACE_DESC= Enable DTrace support +MEMASLAP_DESC= Load generation and benchmark tool +FNV64_DESC= Enable fnv64 hashing +HSIEH_DESC= Enable hsieh hashing +MURMUR_DESC= Enable murmur hashing + +DEBUG_CONFIGURE_ENABLE= debug +DTRACE_CONFIGURE_ENABLE= dtrace +MEMASLAP_CONFIGURE_ENABLE= memaslap +FNV64_CONFIGURE_ENABLE= fnv64_hash +HSIEH_CONFIGURE_ENABLE= hsieh_hash +MURMUR_CONFIGURE_ENABLE= murmur_hash + +SASL_CONFIGURE_ENABLE= sasl SASL_LIB_DEPENDS= libsasl2.so:${PORTSDIR}/security/cyrus-sasl2 +PATHFIX_MAKEFILEIN= include.am + post-patch: - @${REINPLACE_CMD} -e 's|^pkgconfigdir.*|pkgconfigdir = $${PREFIX}/libdata/pkgconfig|' \ - -e '/^LDFLAGS *=/ s/$$/ $${LTLIBSASL2}/' \ - ${WRKSRC}/Makefile.in ${WRKSRC}/support/include.am + @${REINPLACE_CMD} -e '/^LDFLAGS *=/ s/$$/ $${LTLIBSASL2}/' \ + ${WRKSRC}/Makefile.in + +post-install: + @${STRIP_CMD} ${STAGEDIR}${PREFIX}/lib/*.so.* + +regression-test: build + @cd ${WRKSRC} && ${GMAKE} check .include diff --git a/databases/libmemcached/distinfo b/databases/libmemcached/distinfo index 0232fedddf33..240b9b4527c6 100644 --- a/databases/libmemcached/distinfo +++ b/databases/libmemcached/distinfo @@ -1,2 +1,2 @@ -SHA256 (libmemcached-1.0.7.tar.gz) = 3efa86c9733eaad55d7119cb16769424e2aa6c22b3392e8f973946fce6678d81 -SIZE (libmemcached-1.0.7.tar.gz) = 1077060 +SHA256 (libmemcached-1.0.18.tar.gz) = e22c0bb032fde08f53de9ffbc5a128233041d9f33b5de022c0978a2149885f82 +SIZE (libmemcached-1.0.18.tar.gz) = 1039649 diff --git a/databases/libmemcached/files/patch-bug1245562 b/databases/libmemcached/files/patch-bug1245562 new file mode 100644 index 000000000000..a0b146e5b72e --- /dev/null +++ b/databases/libmemcached/files/patch-bug1245562 @@ -0,0 +1,38 @@ +diff --git a/clients/memflush.cc b/clients/memflush.cc +index 8bd0dbf..cdba743 100644 +--- clients/memflush.cc ++++ clients/memflush.cc +@@ -39,7 +39,7 @@ int main(int argc, char *argv[]) + { + options_parse(argc, argv); + +- if (opt_servers == false) ++ if (opt_servers == NULL) + { + char *temp; + +@@ -48,7 +48,7 @@ int main(int argc, char *argv[]) + opt_servers= strdup(temp); + } + +- if (opt_servers == false) ++ if (opt_servers == NULL) + { + std::cerr << "No Servers provided" << std::endl; + exit(EXIT_FAILURE); +diff --git a/libmemcached-1.0/memcached.h b/libmemcached-1.0/memcached.h +index bc16e73..dcee395 100644 +--- libmemcached-1.0/memcached.h ++++ libmemcached-1.0/memcached.h +@@ -43,7 +43,11 @@ + #endif + + #ifdef __cplusplus ++#ifdef _LIBCPP_VERSION + # include ++#else ++# include ++#endif + # include + # include + #else diff --git a/databases/libmemcached/files/patch-bug1400560 b/databases/libmemcached/files/patch-bug1400560 new file mode 100644 index 000000000000..6dbab3180a3e --- /dev/null +++ b/databases/libmemcached/files/patch-bug1400560 @@ -0,0 +1,29 @@ +Fixed a bug that caused configure to disobey the enable/disable debug flag. The debug flag will default to disabled if not specified. +diff -ru libmemcached-1.0.18-orig/m4/ax_debug.m4 libmemcached-1.0.18/m4/ax_debug.m4 +--- m4/ax_debug.m4 2014-11-05 14:43:53.720284916 -0600 ++++ m4/ax_debug.m4 2014-11-19 14:23:19.512482198 -0600 +@@ -49,16 +49,18 @@ + [AC_PREREQ([2.63])dnl + AC_ARG_ENABLE([debug], + [AS_HELP_STRING([--enable-debug], +- [Add debug code/turns off optimizations (yes|no) @<:@default=no@:>@])], +- [ax_enable_debug=yes ++ [Add debug code/turns off optimizations (yes|no) @<:@default=no@:>@])]) ++ AS_IF([test "x$enable_debug" = "xyes"], [ ++ ax_enable_debug=yes + AC_DEFINE([DEBUG],[1],[Define to 1 to enable debugging code.]) + AX_CHECK_LIBRARY([MCHECK],[mcheck.h],[mcheck],[AX_APPEND_LINK_FLAGS([-lmcheck])]) + AX_ADD_AM_MACRO([--debug],[AM_YFLAGS]) +- AX_ADD_AM_MACRO([-D_GLIBCXX_DEBUG],[AM_CPPFLAGS])], +- [ax_enable_debug=no ++ AX_ADD_AM_MACRO([-D_GLIBCXX_DEBUG],[AM_CPPFLAGS]) ++ ], [ ++ ax_enable_debug=no + AC_SUBST([MCHECK]) +- AC_DEFINE([DEBUG],[0],[Define to 1 to enable debugging code.])]) +- ++ AC_DEFINE([DEBUG],[0],[Define to 1 to enable debugging code.]) ++ ]) + AC_MSG_CHECKING([for debug]) + AC_MSG_RESULT([$ax_enable_debug]) + AM_CONDITIONAL([DEBUG],[test "x${ax_enable_debug}" = "xyes"])]) diff --git a/databases/libmemcached/files/patch-libmemcached_assert.hpp b/databases/libmemcached/files/patch-libmemcached_assert.hpp new file mode 100644 index 000000000000..83a464c748e3 --- /dev/null +++ b/databases/libmemcached/files/patch-libmemcached_assert.hpp @@ -0,0 +1,13 @@ +--- libmemcached/assert.hpp.orig 2014-12-10 05:16:11 UTC ++++ libmemcached/assert.hpp +@@ -51,8 +51,10 @@ + # ifdef _WIN32 + # include + # else ++#ifdef HAVE_ALLOCA_H + # include + # endif ++# endif + + #ifdef __cplusplus + # include diff --git a/databases/libmemcached/files/patch-libtest_lite.h b/databases/libmemcached/files/patch-libtest_lite.h new file mode 100644 index 000000000000..01a2641c3ea1 --- /dev/null +++ b/databases/libmemcached/files/patch-libtest_lite.h @@ -0,0 +1,13 @@ +--- libtest/lite.h.orig 2014-12-09 03:34:21 UTC ++++ libtest/lite.h +@@ -54,8 +54,10 @@ + #if defined(WIN32) + # include + #else ++#ifdef HAVE_ALLOCA_H + # include + #endif ++#endif + + #ifndef __PRETTY_FUNCTION__ + # define __PRETTY_FUNCTION__ __func__ diff --git a/databases/libmemcached/pkg-descr b/databases/libmemcached/pkg-descr index 47bd9c83467c..60077900c936 100644 --- a/databases/libmemcached/pkg-descr +++ b/databases/libmemcached/pkg-descr @@ -20,4 +20,4 @@ memcp - Copy files to a memached server. memstat - Dump the stats of your servers to standard output memslap - Generate testing loads on a memcached cluster -WWW: http://tangent.org/552/libmemcached.html +WWW: http://libmemcached.org diff --git a/databases/libmemcached/pkg-plist b/databases/libmemcached/pkg-plist index 660d6e49d371..bade4cfa1585 100644 --- a/databases/libmemcached/pkg-plist +++ b/databases/libmemcached/pkg-plist @@ -103,8 +103,8 @@ lib/libhashkit.so.2 lib/libhashkit.so.2.0.0 lib/libmemcached.a lib/libmemcached.so -lib/libmemcached.so.10 -lib/libmemcached.so.10.0.0 +lib/libmemcached.so.11 +lib/libmemcached.so.11.0.0 lib/libmemcachedprotocol.a lib/libmemcachedprotocol.so lib/libmemcachedprotocol.so.0 @@ -120,10 +120,14 @@ man/man1/memcat.1.gz man/man1/memcp.1.gz man/man1/memdump.1.gz man/man1/memerror.1.gz +man/man1/memexist.1.gz man/man1/memflush.1.gz +man/man1/memparse.1.gz +man/man1/memping.1.gz man/man1/memrm.1.gz man/man1/memslap.1.gz man/man1/memstat.1.gz +man/man1/memtouch.1.gz man/man3/hashkit_clone.3.gz man/man3/hashkit_crc32.3.gz man/man3/hashkit_create.3.gz @@ -227,3 +231,4 @@ man/man3/memcached_touch.3.gz man/man3/memcached_touch_by_key.3.gz man/man3/memcached_verbosity.3.gz man/man3/memcached_version.3.gz +share/aclocal/ax_libmemcached.m4 diff --git a/databases/p5-Cache-Memcached-libmemcached/Makefile b/databases/p5-Cache-Memcached-libmemcached/Makefile index 0c0cb4de8133..d00b9770426e 100644 --- a/databases/p5-Cache-Memcached-libmemcached/Makefile +++ b/databases/p5-Cache-Memcached-libmemcached/Makefile @@ -3,7 +3,7 @@ PORTNAME= Cache-Memcached-libmemcached PORTVERSION= 0.02011 -PORTREVISION= 1 +PORTREVISION= 2 CATEGORIES= databases MASTER_SITES= CPAN MASTER_SITE_SUBDIR= CPAN:DMAKI diff --git a/databases/pecl-memcached/Makefile b/databases/pecl-memcached/Makefile index cbcc407f21e7..5c8f5dd6d5e6 100644 --- a/databases/pecl-memcached/Makefile +++ b/databases/pecl-memcached/Makefile @@ -3,7 +3,7 @@ PORTNAME= memcached PORTVERSION= 2.2.0 -PORTREVISION= 2 +PORTREVISION= 3 CATEGORIES= databases MASTER_SITES= http://pecl.php.net/get/ PKGNAMEPREFIX= pecl- diff --git a/databases/pgpool-II-33/Makefile b/databases/pgpool-II-33/Makefile index a610268b26b6..036f807a56d2 100644 --- a/databases/pgpool-II-33/Makefile +++ b/databases/pgpool-II-33/Makefile @@ -2,6 +2,7 @@ PORTNAME= pgpool-II PORTVERSION= 3.3.3 +PORTREVISION= 1 CATEGORIES= databases MASTER_SITES= http://www.pgpool.net/mediawiki/images/ \ LOCAL/matthew/${PORTNAME} diff --git a/databases/py-pylibmc/Makefile b/databases/py-pylibmc/Makefile index 592cd5524db4..f4e2b95c040d 100644 --- a/databases/py-pylibmc/Makefile +++ b/databases/py-pylibmc/Makefile @@ -3,6 +3,7 @@ PORTNAME= pylibmc PORTVERSION= 1.4.1 +PORTREVISION= 1 CATEGORIES= databases python MASTER_SITES= CHEESESHOP PKGNAMEPREFIX= ${PYTHON_PKGNAMEPREFIX} diff --git a/databases/rubygem-memcache/Makefile b/databases/rubygem-memcache/Makefile index 72f7c02e3280..5da32d4ac82e 100644 --- a/databases/rubygem-memcache/Makefile +++ b/databases/rubygem-memcache/Makefile @@ -3,6 +3,7 @@ PORTNAME= memcache PORTVERSION= 1.5.1 +PORTREVISION= 1 CATEGORIES= databases rubygems MASTER_SITES= RG -- cgit