summaryrefslogtreecommitdiff
path: root/dev-libs/libmemcached
diff options
context:
space:
mode:
authorV3n3RiX <venerix@redcorelinux.org>2017-10-09 18:53:29 +0100
committerV3n3RiX <venerix@redcorelinux.org>2017-10-09 18:53:29 +0100
commit4f2d7949f03e1c198bc888f2d05f421d35c57e21 (patch)
treeba5f07bf3f9d22d82e54a462313f5d244036c768 /dev-libs/libmemcached
reinit the tree, so we can have metadata
Diffstat (limited to 'dev-libs/libmemcached')
-rw-r--r--dev-libs/libmemcached/Manifest19
-rw-r--r--dev-libs/libmemcached/files/continuum-1.0.18.patch56
-rw-r--r--dev-libs/libmemcached/files/debug-disable-enable-1.0.18.patch29
-rw-r--r--dev-libs/libmemcached/files/libmemcached-1.0.17-gcc4_8.patch183
-rw-r--r--dev-libs/libmemcached/files/libmemcached-1.0.18-gcc7.patch29
-rw-r--r--dev-libs/libmemcached/libmemcached-0.50.ebuild65
-rw-r--r--dev-libs/libmemcached/libmemcached-1.0.14.ebuild46
-rw-r--r--dev-libs/libmemcached/libmemcached-1.0.17-r3.ebuild49
-rw-r--r--dev-libs/libmemcached/libmemcached-1.0.17-r4.ebuild50
-rw-r--r--dev-libs/libmemcached/libmemcached-1.0.18-r1.ebuild51
-rw-r--r--dev-libs/libmemcached/libmemcached-1.0.18-r2.ebuild53
-rw-r--r--dev-libs/libmemcached/libmemcached-1.0.18-r3.ebuild55
-rw-r--r--dev-libs/libmemcached/libmemcached-1.0.18.ebuild50
-rw-r--r--dev-libs/libmemcached/metadata.xml23
14 files changed, 758 insertions, 0 deletions
diff --git a/dev-libs/libmemcached/Manifest b/dev-libs/libmemcached/Manifest
new file mode 100644
index 000000000000..d71abcab89c6
--- /dev/null
+++ b/dev-libs/libmemcached/Manifest
@@ -0,0 +1,19 @@
+AUX continuum-1.0.18.patch 3086 SHA256 0b26191cba88bbd2057d8dad79f38a2b5d375767cb16364c6de242ec435ae9dd SHA512 905c5f1dc22b665ef8910b6319b25e1d1e9dd80892c03c6c71de597599d8ce2972b35d92e6976ad8798d2f10927e3e884570246d5d8162e84dc3e1f963959012 WHIRLPOOL 3f7bcea78008afce39737c282c7f628a2338490179dc3ee1eedae9c8e2534143e9b84656470f2894d3910743dd2a3cb75a9dab0a37fc5fa21bac1faf0e396e6e
+AUX debug-disable-enable-1.0.18.patch 1458 SHA256 6a91bb084eedf4a37f9af920aa813d92f3ddaa80971b0d700a44390262cfa030 SHA512 f4d731ce227e91324b88d155daaf35f2228a48e61d8e448c93f9d102c9939fa4c3b2a07b96741d442382cc5498358e9ae0471f766373654b21d849a96a42d813 WHIRLPOOL 4ccae912caaf54b072fe8c491e40185d97b7f4b61ed05df5990626fe5ac33f34fb17816786cab8cd8617d86f1229ddf6a62a902a376afa45db23260e501fe885
+AUX libmemcached-1.0.17-gcc4_8.patch 9467 SHA256 4a6b5d70cf7905fbd9e58a4646a6943da5f77b5e0a87b1518c4688f437963194 SHA512 7aaed25fef7abde531dc1ca1f86b946e2b3277abe582257dae24650546d42dae499a5c8cae9ed84c3a189d42921ce50f42d06efbe2bba0af0b739e7b1ac5ad21 WHIRLPOOL af41431a50c4d33e6abdda63e091b789ded15db416484346a01164ad47f9f850f4cc8f28ef0ebd566d9dfe00aeb34d4ccac6cea31e26967beebdc3e6093cf59c
+AUX libmemcached-1.0.18-gcc7.patch 846 SHA256 75d303f45eee6f258c1d4d528db65d076c4fa885241bbff0ede73ff7de6fc8ef SHA512 87667843bee44e1388f6088085a5d0c3a3a824f4830861024f5a19ab1747e96a74b8fae5870f848358a66258aeb18c9a6fa3a1d17bd03260b41f389e01e19c49 WHIRLPOOL 2b9a55733796123c4432558c44b63bf1bd211bcb5a8ac2cfdb987fc628cff18c607c8e91b7f48d73a91712544f4a81bd9f4bf43af0479e5367d4a26b3b04835b
+DIST libmemcached-0.50.tar.gz 884272 SHA256 d3ed82f9c5cdfa816047ed6b7475b5708f9040b5cf3d9e2aed55de235e8b2f9a SHA512 f06a17b365779eb8fb0c94982e5141643ed17f91e5137565ff756912cf96b3f68b11a643f84d0cba1b474411f16a64086cc311ac5cea4bc3792da81b40d423b7 WHIRLPOOL fc1d3107772a45e844764c570261ccd2556ff11b770377c84788cc3d8a8ee946a8e5b3527c21e70c1c5aa1d9493270d9079f8a75cd5387835ccd7def1cab0f9e
+DIST libmemcached-1.0.14.tar.gz 1000929 SHA256 32eaea2c4b8965a12bd33fe1af043d7e20b7ec64977937973a3d97514f1e946b SHA512 4c0371cc4752eeee94baad6063b2413f096b5050166ce761ac26080559537dab32b69131a97703fdebf8f4886520d4bc29c7d4d8d1df6d0d681c81b88354c15b WHIRLPOOL be3760f75a6de33687272b5bf7be950edb0a3f96184c7f8f7e1cb47ff85479ea76c277f298d36f21a5f15c1ce8e04a0714f1bf73700711842bb4c0841959674a
+DIST libmemcached-1.0.17.tar.gz 1023177 SHA256 7bb27b2589400f918df1cf5002cb01ef7ccac6e23f818604e2386de62c80bba5 SHA512 7cc2a836524a628f4617bad12e8ea3b0192a3f8530a3588a076daac56b3e773d7d36823091a81d6447da9fe9d017849c59dbbcc65190ff9817bb985dc6c11a3b WHIRLPOOL 34b57811750667bca59efa5a4356a15dd2bd0135534c1d157df4b3d9ff3575db1848f363914ee1b6b606a45dae3145985c791f11ae5890a7493207cb2e9eb3b4
+DIST libmemcached-1.0.18.tar.gz 1039649 SHA256 e22c0bb032fde08f53de9ffbc5a128233041d9f33b5de022c0978a2149885f82 SHA512 2d95fea63b8b6dc7ded42c3a88a54aad74d5a1d417af1247144dae4a88c3b639a3aabc0c2b66661ff69a7609a314efaaae236e10971af9c428a4bca0a0101585 WHIRLPOOL f7d8f405306fd7cbfee6ba8b340305bc79b1dbcd6a2a2dcb0ee74a24d8928e5a5a7f0d20afebf58cecf44e7ca3fd66abd2d30041848b89ddbb10eb1da9179b94
+EBUILD libmemcached-0.50.ebuild 1691 SHA256 3735211923836d79557022a633de38181f0e0c31ed50632e80765b63ac465fb9 SHA512 780d968506f3898820c06914b3b3e9b269f2ef5b80331c1a34a6351c36cbfddbcdedc23436ee9ed23bfb333be56768df874d4563f0bc7ace9437de712d332efc WHIRLPOOL 2677200967a4560fc7245858e09ce3c88d7cf28852cfbd4569099562cda76f2534b169cba84e6f4317794a40fa32ea587bfe53b04fad604d0a99a0a6faa1be65
+EBUILD libmemcached-1.0.14.ebuild 1141 SHA256 cb0248cd44915fb9fbdd8686cbc9f725c38ec7651559c76728570e0e652b73e0 SHA512 3ae6c31505deca27858613d40168012e8ced46262f41ce8fab7ff822b2255944e1bee8646800fb54325aeacbbc6227e05879ae6448f5d4527aa4e6bb1c8a6257 WHIRLPOOL bacc2a5b1c5172f804bab72b0dd70c2f7f1e55e7113c4204e783cec4342cb92b221a0afe9b4c79023cbbafa9654416e1f98eb220ce0d4064f40b2c11cde303b6
+EBUILD libmemcached-1.0.17-r3.ebuild 1383 SHA256 58f08ec7d83ce07dbd865f003dd7c332ea25cd98e5fcf63d572f5351d9f88b81 SHA512 af7fc1c3350b1ae6688cc32cc78084cbbf7e1d839f042292189621b510fd9f616cb7fbee7f84df216dcc5ce1e862b285cb03be6c7e7e8d9b4d813cca83e89d64 WHIRLPOOL 6fb3f8831861d778bd24c9f8385eda2668a20de80528419f4ffaf007334f08706f994d094b5c20dcef129d4407e039651f9ecdea838a7e7c23280c02dadc3c50
+EBUILD libmemcached-1.0.17-r4.ebuild 1426 SHA256 f405797311d2d8c1d565d792054555536a0a74cb44cad526bef7e3cd870d36c1 SHA512 b011e26ad29f9d1c6a0a6791d15811a138fb9d3e6799edd7e64a34182717a05018c4efc3fb29a24283ccfada99b90f77a1caa17ad466ba49d94c9413368a5af4 WHIRLPOOL 06a0b3e72878b0be1298b71e0c15f78228b9216a4cebb460c9b70268b26f1dc1a7ecaa57ffa09e14dd1608d9cd72c4400e82c17512106a8fd3e0e401488ca28c
+EBUILD libmemcached-1.0.18-r1.ebuild 1528 SHA256 0bbbb9f08808e7fff61e4230f387fcd06a737d8ae4a3513fb514deaca97ec37d SHA512 e5043ffabbe07b7d9b98c1bf2411d705f99046fb8c1133eaa80a65e2e51cc97274b6568b167e4f720e983977f703daf067faad0fcf94f5a79f120bb8fc560b84 WHIRLPOOL cfae3d182def1c39add550f3a8eb07fdd96b1a54de400fb25456b9a1535e711fa36bcb6abdd05b3ced84778ab5a6cd877cf28751d78239f1f9ed747c82756580
+EBUILD libmemcached-1.0.18-r2.ebuild 1548 SHA256 7f7cd76c0cd8e512bd9bf78122c0d82678e87e41328347f200622be0f82ef792 SHA512 d335f33d1d7137283c10a39d9913fcfa5cb3e69c264ceba527fa54863adc680561406c69c3b29173bac42aad4d7d9e1971aed7f9890d698c75746a8f8fb99a49 WHIRLPOOL 84569adfb25d9d83ffd8739c882e60ca39a61ea0253863bc4c5bf68da0df34a9847eac2adf1f96cb19314bbed02949199d15c33a4d871d7faaa826340bd02ae6
+EBUILD libmemcached-1.0.18-r3.ebuild 1622 SHA256 cfeaac16f56335da90869a6b6c6329f2df4a6aadfe25f1f2f6239841f27df18b SHA512 440fb952134caaf031e12252991c8fed6595b2a4dca158a94253a0075558251b3bc6ad0f2db42317418b3d4071f46357b35cd516a7d0c47c59609ae477d3c072 WHIRLPOOL 8dafd4aade58bc522511b4482ddd27f5622147c1effdfb0f4c7599cca0ada40820b6ab110799e2f9a5a96f19c45cc26ecfab83e4d4490df6653fd9378bea9449
+EBUILD libmemcached-1.0.18.ebuild 1464 SHA256 e4b9a6b710e6bfce2e664c12759b41cbac58a8d13248d5d3d5a78d1121e0e528 SHA512 8a05fda51b53e3d3a6d9d2b695c592425817972f721618b79562f05d0e59eb50fcb38faf4153c0996c45c25f152031b32a1d6047112d701b84c93f080db306eb WHIRLPOOL 657882a8d800f8f345528afb27905c03953c9f98f98b4cde427184f24513abe1de728241acf269d10821108e391622e2a4be9bcf7d62e4036a7791895a693be2
+MISC ChangeLog 4994 SHA256 fed7d37b448e1d048f209f4ef159f8b5492783707bb3bc9fbad1f5a997747685 SHA512 1992bbdf77a988e21a880db92214a08258c694eca97460103ad75d03a24035ad06054a1a5e27a8ea536a7f78ac3cdae572ec5a45fb59021210871e4ae656b0a3 WHIRLPOOL 575d6cafb697dfd8e70af6b432bfa3de56a4bf8cd096b9909b1e8b9f03bd6ba02c5f5d1c001aa4b235a0ffa556dbd1534b91f6834ebb6aa29cbac7d9f2bb5445
+MISC ChangeLog-2015 12779 SHA256 4e2f59c26fccb2e9fc63782a4a72031c79f460b3ee47c976fb96d66ab4c5284e SHA512 8445d822f43dc93caeb1d803699679ca80ddfe3f1d214a0ca0c6a6306309637454201c537f6df4675250bbe5f39d2bb67631125e0f17ab3999421df325f7ff8d WHIRLPOOL 354d9db4efc79ff11e92f2481f82bc4b58c65729cf3c46864bba2b8ea2a1a78e448ec359e5806bc0572e392e892c4f8559b155968d174765947d7921d0dd9ddd
+MISC metadata.xml 826 SHA256 bb1e0ef7a54e25036a029043e7c0c82442c2626668174f3eb1aab5ed4146caef SHA512 5bc0caef489fb8a9c6c038aa2a5620cd43d700104ab77407391eb0961f12392ac8535efd5fbe86c1e6be17cb89d766049fe1394461fa652bcdc1abd64afb9962 WHIRLPOOL 526bab2c5f151fbd868dd71ba5676032574c220e24ceecd6e0943bf863c1d8ca9f10fd85c9ef4bb99911887d8446c596978f5bc98849907fff82a59914c70e20
diff --git a/dev-libs/libmemcached/files/continuum-1.0.18.patch b/dev-libs/libmemcached/files/continuum-1.0.18.patch
new file mode 100644
index 000000000000..296978044311
--- /dev/null
+++ b/dev-libs/libmemcached/files/continuum-1.0.18.patch
@@ -0,0 +1,56 @@
+diff --git libmemcached/memcached.cc libmemcached/memcached.cc
+index 337f918..6e88c25 100644
+--- libmemcached/memcached.cc
++++ libmemcached/memcached.cc
+@@ -285,6 +285,8 @@ void memcached_servers_reset(memcached_st *shell)
+ {
+ libmemcached_free(self, self->ketama.continuum);
+ self->ketama.continuum= NULL;
++ self->ketama.continuum_count= 0;
++ self->ketama.continuum_points_counter= 0;
+
+ memcached_instance_list_free(memcached_instance_list(self), self->number_of_hosts);
+ memcached_instance_set(self, NULL, 0);
+diff --git tests/libmemcached-1.0/all_tests.h tests/libmemcached-1.0/all_tests.h
+index b4abe9d..f89f007 100644
+--- tests/libmemcached-1.0/all_tests.h
++++ tests/libmemcached-1.0/all_tests.h
+@@ -452,6 +452,7 @@ collection_st collection[] ={
+ {"hsieh_availability", 0, 0, hsieh_availability},
+ {"murmur_availability", 0, 0, murmur_availability},
+ {"memcached_server_add", (test_callback_fn*)memcached_servers_reset_SETUP, 0, memcached_server_add_TESTS},
++ {"memcached_server_add(continuum)", (test_callback_fn*)memcached_servers_reset_CONTINUUM, 0, memcached_server_add_TESTS},
+ {"memcached_server_add(MEMCACHED_DISTRIBUTION_CONSISTENT)", (test_callback_fn*)memcached_servers_reset_MEMCACHED_DISTRIBUTION_CONSISTENT_SETUP, 0, memcached_server_add_TESTS},
+ {"memcached_server_add(MEMCACHED_DISTRIBUTION_CONSISTENT_WEIGHTED)", (test_callback_fn*)memcached_servers_reset_MEMCACHED_DISTRIBUTION_CONSISTENT_WEIGHTED_SETUP, 0, memcached_server_add_TESTS},
+ {"block", 0, 0, tests},
+diff --git tests/libmemcached-1.0/setup_and_teardowns.cc tests/libmemcached-1.0/setup_and_teardowns.cc
+index 4191c38..eb29128 100644
+--- tests/libmemcached-1.0/setup_and_teardowns.cc
++++ tests/libmemcached-1.0/setup_and_teardowns.cc
+@@ -177,6 +177,16 @@ test_return_t memcached_servers_reset_SETUP(memcached_st *memc)
+ return TEST_SUCCESS;
+ }
+
++test_return_t memcached_servers_reset_CONTINUUM(memcached_st *memc)
++{
++ memcached_behavior_set(memc, MEMCACHED_BEHAVIOR_DISTRIBUTION, MEMCACHED_DISTRIBUTION_CONSISTENT);
++ memcached_servers_reset(memc);
++ test_compare(0, memc->ketama.continuum_count);
++ // If memc->ketama.continuum_count is non-zero at this point, any call to
++ // memcached_server_add will cause a segfault.
++ return TEST_SUCCESS;
++}
++
+ test_return_t memcached_servers_reset_MEMCACHED_DISTRIBUTION_CONSISTENT_SETUP(memcached_st *memc)
+ {
+ test_compare(TEST_SUCCESS, memcached_servers_reset_SETUP(memc));
+diff --git tests/libmemcached-1.0/setup_and_teardowns.h tests/libmemcached-1.0/setup_and_teardowns.h
+index 7610c5a..59b56f6 100644
+--- tests/libmemcached-1.0/setup_and_teardowns.h
++++ tests/libmemcached-1.0/setup_and_teardowns.h
+@@ -64,3 +64,4 @@ test_return_t pre_buffer(memcached_st*);
+ test_return_t memcached_servers_reset_MEMCACHED_DISTRIBUTION_CONSISTENT_SETUP(memcached_st *memc);
+ test_return_t memcached_servers_reset_MEMCACHED_DISTRIBUTION_CONSISTENT_WEIGHTED_SETUP(memcached_st *memc);
+ test_return_t memcached_servers_reset_SETUP(memcached_st *memc);
++test_return_t memcached_servers_reset_CONTINUUM(memcached_st *memc);
+
diff --git a/dev-libs/libmemcached/files/debug-disable-enable-1.0.18.patch b/dev-libs/libmemcached/files/debug-disable-enable-1.0.18.patch
new file mode 100644
index 000000000000..ed87cbd7a1c1
--- /dev/null
+++ b/dev-libs/libmemcached/files/debug-disable-enable-1.0.18.patch
@@ -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
+--- libmemcached-1.0.18-orig/m4/ax_debug.m4 2014-11-05 14:43:53.720284916 -0600
++++ libmemcached-1.0.18/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/dev-libs/libmemcached/files/libmemcached-1.0.17-gcc4_8.patch b/dev-libs/libmemcached/files/libmemcached-1.0.17-gcc4_8.patch
new file mode 100644
index 000000000000..5f42d3f3cabd
--- /dev/null
+++ b/dev-libs/libmemcached/files/libmemcached-1.0.17-gcc4_8.patch
@@ -0,0 +1,183 @@
+Description: Fix compilation with gcc-4.8
+ This patch fixes the error flags made incompatible with gcc-4.8:
+ g++: error: -fsanitize=address is incompatible with -fsanitize=thread
+Author: Brian Aker
+Last-Update: 2013-06-14
+Bug: https://bugs.launchpad.net/libmemcached/+bug/1164442
+
+--- a/libtest/run.gdb 2012-03-26 01:08:09 +0000
++++ b/libtest/run.gdb 2013-04-10 05:25:24 +0000
+@@ -1,5 +1,6 @@
+ set logging on
+ set logging overwrite on
+ set environment LIBTEST_IN_GDB=1
++set ASAN_OPTIONS=abort_on_error=1
+ run
+ thread apply all bt
+
+--- a/m4/ax_harden_compiler_flags.m4 2013-02-12 05:44:21 +0000
++++ b/m4/ax_harden_compiler_flags.m4 2013-04-10 05:25:24 +0000
+@@ -53,7 +53,7 @@
+ # ? _APPEND_COMPILE_FLAGS_ERROR([-Wlong-long]) -- Don't turn on for
+ # compatibility issues memcached_stat_st
+
+-#serial 8
++#serial 9
+
+ AC_DEFUN([_WARNINGS_AS_ERRORS],
+ [AC_CACHE_CHECK([if all warnings into errors],[ac_cv_warnings_as_errors],
+@@ -92,9 +92,12 @@
+ _APPEND_COMPILE_FLAGS_ERROR([-H])
+ _APPEND_COMPILE_FLAGS_ERROR([-ggdb])
+ _APPEND_COMPILE_FLAGS_ERROR([-g])
+- _APPEND_COMPILE_FLAGS_ERROR([-O0])],
+- [_APPEND_COMPILE_FLAGS_ERROR([-g])
+- _APPEND_COMPILE_FLAGS_ERROR([-O2])])
++ _APPEND_COMPILE_FLAGS_ERROR([-O0]),
++ _APPEND_COMPILE_FLAGS_ERROR([-fno-omit-frame-pointer])
++ ],[
++ _APPEND_COMPILE_FLAGS_ERROR([-g])
++ _APPEND_COMPILE_FLAGS_ERROR([-O2])
++ ])
+
+ AS_IF([test "x$ac_cv_vcs_checkout" = xyes],
+ [_APPEND_COMPILE_FLAGS_ERROR([-fstack-check])
+@@ -155,26 +158,31 @@
+ _APPEND_COMPILE_FLAGS_ERROR([-Wundef])
+ _APPEND_COMPILE_FLAGS_ERROR([-Wunsafe-loop-optimizations])
+ _APPEND_COMPILE_FLAGS_ERROR([-funsafe-loop-optimizations])
+- _APPEND_COMPILE_FLAGS_ERROR([-fsanitize=address])
+- _APPEND_COMPILE_FLAGS_ERROR([-fsanitize=integer])
+- _APPEND_COMPILE_FLAGS_ERROR([-fsanitize=thread])
+- _APPEND_COMPILE_FLAGS_ERROR([-fsanitize=memory])
+- _APPEND_COMPILE_FLAGS_ERROR([-fsanitize=alignment])
+- _APPEND_COMPILE_FLAGS_ERROR([-fsanitize=bool])
+- _APPEND_COMPILE_FLAGS_ERROR([-fsanitize=bounds])
+- _APPEND_COMPILE_FLAGS_ERROR([-fsanitize=enum])
+- _APPEND_COMPILE_FLAGS_ERROR([-fsanitize=float-cast-overflow])
+- _APPEND_COMPILE_FLAGS_ERROR([-fsanitize=float-divide-by-zero])
+- _APPEND_COMPILE_FLAGS_ERROR([-fsanitize=integer-divide-by-zero])
+- _APPEND_COMPILE_FLAGS_ERROR([-fsanitize=null])
+- _APPEND_COMPILE_FLAGS_ERROR([-fsanitize=object-size])
+- _APPEND_COMPILE_FLAGS_ERROR([-fsanitize=return])
+- _APPEND_COMPILE_FLAGS_ERROR([-fsanitize=shift])
+- _APPEND_COMPILE_FLAGS_ERROR([-fsanitize=signed-integer-overflow])
+- _APPEND_COMPILE_FLAGS_ERROR([-fsanitize=unreachable])
+- _APPEND_COMPILE_FLAGS_ERROR([-fsanitize=unsigned-integer-overflow])
+- _APPEND_COMPILE_FLAGS_ERROR([-fsanitize=vla-bound])
+- _APPEND_COMPILE_FLAGS_ERROR([-fsanitize=vptr])
++ AS_IF([test "x$ac_cv_vcs_checkout" = xyes],[
++ _APPEND_COMPILE_FLAGS_ERROR([-fno-omit-frame-pointer])
++ _APPEND_COMPILE_FLAGS_ERROR([-fsanitize=address])
++ _APPEND_COMPILE_FLAGS_ERROR([-fsanitize=integer])
++ AS_IF([test "x$enable_shared" = "xyes"],[
++ _APPEND_COMPILE_FLAGS_ERROR([-fsanitize=thread])
++ ])
++ _APPEND_COMPILE_FLAGS_ERROR([-fsanitize=memory])
++ _APPEND_COMPILE_FLAGS_ERROR([-fsanitize=alignment])
++ _APPEND_COMPILE_FLAGS_ERROR([-fsanitize=bool])
++ _APPEND_COMPILE_FLAGS_ERROR([-fsanitize=bounds])
++ _APPEND_COMPILE_FLAGS_ERROR([-fsanitize=enum])
++ _APPEND_COMPILE_FLAGS_ERROR([-fsanitize=float-cast-overflow])
++ _APPEND_COMPILE_FLAGS_ERROR([-fsanitize=float-divide-by-zero])
++ _APPEND_COMPILE_FLAGS_ERROR([-fsanitize=integer-divide-by-zero])
++ _APPEND_COMPILE_FLAGS_ERROR([-fsanitize=null])
++ _APPEND_COMPILE_FLAGS_ERROR([-fsanitize=object-size])
++ _APPEND_COMPILE_FLAGS_ERROR([-fsanitize=return])
++ _APPEND_COMPILE_FLAGS_ERROR([-fsanitize=shift])
++ _APPEND_COMPILE_FLAGS_ERROR([-fsanitize=signed-integer-overflow])
++ _APPEND_COMPILE_FLAGS_ERROR([-fsanitize=unreachable])
++ _APPEND_COMPILE_FLAGS_ERROR([-fsanitize=unsigned-integer-overflow])
++ _APPEND_COMPILE_FLAGS_ERROR([-fsanitize=vla-bound])
++ _APPEND_COMPILE_FLAGS_ERROR([-fsanitize=vptr])
++ ])
+ _APPEND_COMPILE_FLAGS_ERROR([-Wclobbered])
+ _APPEND_COMPILE_FLAGS_ERROR([-Wunused])
+ _APPEND_COMPILE_FLAGS_ERROR([-Wunused-result])
+@@ -186,6 +194,7 @@
+ _APPEND_COMPILE_FLAGS_ERROR([-fwrapv])
+ _APPEND_COMPILE_FLAGS_ERROR([-fmudflapt])
+ _APPEND_COMPILE_FLAGS_ERROR([-pipe])
++ _APPEND_COMPILE_FLAGS_ERROR([-Wsizeof-pointer-memaccess])
+
+ AS_IF([test "x$ax_enable_debug" = xno],
+ [AS_IF([test "x$ac_cv_vcs_checkout" = xyes],
+@@ -213,9 +222,12 @@
+ _APPEND_COMPILE_FLAGS_ERROR([-H])
+ _APPEND_COMPILE_FLAGS_ERROR([-ggdb])
+ _APPEND_COMPILE_FLAGS_ERROR([-g])
+- _APPEND_COMPILE_FLAGS_ERROR([-O0])],
+- [_APPEND_COMPILE_FLAGS_ERROR([-g])
+- _APPEND_COMPILE_FLAGS_ERROR([-O2])])
++ _APPEND_COMPILE_FLAGS_ERROR([-O0]),
++ _APPEND_COMPILE_FLAGS_ERROR([-fno-omit-frame-pointer])
++ ],[
++ _APPEND_COMPILE_FLAGS_ERROR([-g])
++ _APPEND_COMPILE_FLAGS_ERROR([-O2])
++ ])
+
+ AS_IF([test "x$ac_cv_vcs_checkout" = xyes],
+ [_APPEND_COMPILE_FLAGS_ERROR([-fstack-check])
+@@ -268,27 +280,32 @@
+ _APPEND_COMPILE_FLAGS_ERROR([-funsafe-loop-optimizations])
+ _APPEND_COMPILE_FLAGS_ERROR([-Wc++11-compat])
+ # _APPEND_COMPILE_FLAGS_ERROR([-Weffc++])
+- _APPEND_COMPILE_FLAGS_ERROR([-fsanitize=address])
+- _APPEND_COMPILE_FLAGS_ERROR([-fsanitize=integer])
+- _APPEND_COMPILE_FLAGS_ERROR([-fsanitize=thread])
+- _APPEND_COMPILE_FLAGS_ERROR([-fsanitize=memory])
+- _APPEND_COMPILE_FLAGS_ERROR([-fsanitize=alignment])
+- _APPEND_COMPILE_FLAGS_ERROR([-fsanitize=bool])
+- _APPEND_COMPILE_FLAGS_ERROR([-fsanitize=bounds])
+- _APPEND_COMPILE_FLAGS_ERROR([-fsanitize=enum])
+- _APPEND_COMPILE_FLAGS_ERROR([-fsanitize=float-cast-overflow])
+- _APPEND_COMPILE_FLAGS_ERROR([-fsanitize=float-divide-by-zero])
+- _APPEND_COMPILE_FLAGS_ERROR([-fsanitize=integer-divide-by-zero])
+- _APPEND_COMPILE_FLAGS_ERROR([-fsanitize=null])
+- _APPEND_COMPILE_FLAGS_ERROR([-fsanitize=object-size])
+- _APPEND_COMPILE_FLAGS_ERROR([-fsanitize=return])
+- _APPEND_COMPILE_FLAGS_ERROR([-fsanitize=shift])
+- _APPEND_COMPILE_FLAGS_ERROR([-fsanitize=signed-integer-overflow])
+- _APPEND_COMPILE_FLAGS_ERROR([-fsanitize=unreachable])
+- _APPEND_COMPILE_FLAGS_ERROR([-fsanitize=unsigned-integer-overflow])
+- _APPEND_COMPILE_FLAGS_ERROR([-fsanitize=vla-bound])
+- _APPEND_COMPILE_FLAGS_ERROR([-fsanitize=vptr])
+-# _APPEND_COMPILE_FLAGS_ERROR([-Wold-style-cast])
++ AS_IF([test "x$ac_cv_vcs_checkout" = xyes],[
++ _APPEND_COMPILE_FLAGS_ERROR([-fno-omit-frame-pointer])
++ _APPEND_COMPILE_FLAGS_ERROR([-fsanitize=address])
++ _APPEND_COMPILE_FLAGS_ERROR([-fsanitize=integer])
++ AS_IF([test "x$enable_shared" = "xyes"],[
++ _APPEND_COMPILE_FLAGS_ERROR([-fsanitize=thread])
++ ])
++ _APPEND_COMPILE_FLAGS_ERROR([-fsanitize=memory])
++ _APPEND_COMPILE_FLAGS_ERROR([-fsanitize=alignment])
++ _APPEND_COMPILE_FLAGS_ERROR([-fsanitize=bool])
++ _APPEND_COMPILE_FLAGS_ERROR([-fsanitize=bounds])
++ _APPEND_COMPILE_FLAGS_ERROR([-fsanitize=enum])
++ _APPEND_COMPILE_FLAGS_ERROR([-fsanitize=float-cast-overflow])
++ _APPEND_COMPILE_FLAGS_ERROR([-fsanitize=float-divide-by-zero])
++ _APPEND_COMPILE_FLAGS_ERROR([-fsanitize=integer-divide-by-zero])
++ _APPEND_COMPILE_FLAGS_ERROR([-fsanitize=null])
++ _APPEND_COMPILE_FLAGS_ERROR([-fsanitize=object-size])
++ _APPEND_COMPILE_FLAGS_ERROR([-fsanitize=return])
++ _APPEND_COMPILE_FLAGS_ERROR([-fsanitize=shift])
++ _APPEND_COMPILE_FLAGS_ERROR([-fsanitize=signed-integer-overflow])
++ _APPEND_COMPILE_FLAGS_ERROR([-fsanitize=unreachable])
++ _APPEND_COMPILE_FLAGS_ERROR([-fsanitize=unsigned-integer-overflow])
++ _APPEND_COMPILE_FLAGS_ERROR([-fsanitize=vla-bound])
++ _APPEND_COMPILE_FLAGS_ERROR([-fsanitize=vptr])
++ ])
++# _APPEND_COMPILE_FLAGS_ERROR([-Wold-style-cast])
+ _APPEND_COMPILE_FLAGS_ERROR([-Wclobbered])
+ _APPEND_COMPILE_FLAGS_ERROR([-Wunused])
+ _APPEND_COMPILE_FLAGS_ERROR([-Wunused-result])
+@@ -301,6 +318,7 @@
+ _APPEND_COMPILE_FLAGS_ERROR([-fwrapv])
+ _APPEND_COMPILE_FLAGS_ERROR([-fmudflapt])
+ _APPEND_COMPILE_FLAGS_ERROR([-pipe])
++ _APPEND_COMPILE_FLAGS_ERROR([-Wsizeof-pointer-memaccess])
+
+ AS_IF([test "x$ax_enable_debug" = xno],
+ [AS_IF([test "x$ac_cv_vcs_checkout" = xyes],
+
diff --git a/dev-libs/libmemcached/files/libmemcached-1.0.18-gcc7.patch b/dev-libs/libmemcached/files/libmemcached-1.0.18-gcc7.patch
new file mode 100644
index 000000000000..6bcb23136c4b
--- /dev/null
+++ b/dev-libs/libmemcached/files/libmemcached-1.0.18-gcc7.patch
@@ -0,0 +1,29 @@
+gcc-7 fails the build as:
+ clients/memflush.cc: In function 'int main(int, char**)':
+ clients/memflush.cc:42:22: error: ISO C++ forbids comparison between pointer and integer [-fpermissive]
+ if (opt_servers == false)
+ ^~~~~
+
+opt_servers is declated as 'static char *opt_servers= NULL;'
+diff --git a/clients/memflush.cc b/clients/memflush.cc
+index 8bd0dbf..7641b88 100644
+--- a/clients/memflush.cc
++++ b/clients/memflush.cc
+@@ -39,7 +39,7 @@ int main(int argc, char *argv[])
+ {
+ options_parse(argc, argv);
+
+- if (opt_servers == false)
++ if (!opt_servers)
+ {
+ char *temp;
+
+@@ -48,7 +48,7 @@ int main(int argc, char *argv[])
+ opt_servers= strdup(temp);
+ }
+
+- if (opt_servers == false)
++ if (!opt_servers)
+ {
+ std::cerr << "No Servers provided" << std::endl;
+ exit(EXIT_FAILURE);
diff --git a/dev-libs/libmemcached/libmemcached-0.50.ebuild b/dev-libs/libmemcached/libmemcached-0.50.ebuild
new file mode 100644
index 000000000000..1f9bf894d977
--- /dev/null
+++ b/dev-libs/libmemcached/libmemcached-0.50.ebuild
@@ -0,0 +1,65 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI="3"
+
+inherit eutils multilib
+
+DESCRIPTION="a C client library to the memcached server"
+HOMEPAGE="http://tangent.org/552/libmemcached.html"
+SRC_URI="https://launchpad.net/${PN}/1.0/${PV}/+download/${P}.tar.gz"
+
+LICENSE="BSD"
+SLOT="0"
+KEYWORDS="alpha amd64 arm hppa ia64 ppc ppc64 sh sparc x86 ~sparc-fbsd ~amd64-linux ~x86-linux ~ppc-macos ~x86-macos"
+IUSE="debug doc hsieh +libevent sasl static-libs tcmalloc"
+
+DEPEND="net-misc/memcached
+ virtual/perl-Pod-Parser
+ doc? ( dev-python/sphinx )
+ libevent? ( dev-libs/libevent )
+ tcmalloc? ( dev-util/google-perftools )
+ sasl? ( virtual/gsasl )"
+RDEPEND="${DEPEND}"
+
+src_prepare() {
+ # These tests freezes for me
+ sed -i -e "/connectionpool/d" \
+ -e "/lp:583031/d" tests/mem_functions.cc || die
+}
+
+src_configure() {
+ econf \
+ --disable-dtrace \
+ --disable-libinnodb \
+ $(use_enable debug assert) \
+ $(use_with debug debug) \
+ $(use_enable hsieh hsieh_hash) \
+ $(use_enable libevent libevent) \
+ $(use_enable tcmalloc tcmalloc) \
+ $(use_with sasl libsasl-prefix) \
+ $(use_with sasl libsasl2-prefix) \
+ $(use_enable static-libs static)
+}
+
+src_compile() {
+ emake || die
+
+ if use doc; then
+ emake html-local || die
+ fi
+}
+
+src_install() {
+ emake DESTDIR="${D}" install || die "Install failed"
+
+ use static-libs || rm -f "${D}"/usr/$(get_libdir)/lib*.la
+
+ dodoc AUTHORS ChangeLog README THANKS TODO
+ # remove manpage to avoid collision, see bug #299330
+ rm -f "${D}"/usr/share/man/man1/memdump.* || die "Install failed"
+ newman docs/man/memdump.1 memcached_memdump.1
+ if use doc; then
+ dohtml -r docs/html/* || die
+ fi
+}
diff --git a/dev-libs/libmemcached/libmemcached-1.0.14.ebuild b/dev-libs/libmemcached/libmemcached-1.0.14.ebuild
new file mode 100644
index 000000000000..41511d243252
--- /dev/null
+++ b/dev-libs/libmemcached/libmemcached-1.0.14.ebuild
@@ -0,0 +1,46 @@
+# Copyright 1999-2013 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI="4"
+
+inherit eutils multilib
+
+DESCRIPTION="a C client library to the memcached server"
+HOMEPAGE="http://libmemcached.org/libMemcached.html"
+SRC_URI="https://launchpad.net/${PN}/1.0/${PV}/+download/${P}.tar.gz"
+
+LICENSE="BSD"
+SLOT="0"
+KEYWORDS="alpha amd64 arm hppa ia64 ppc ppc64 sh ~sparc x86 ~sparc-fbsd ~amd64-linux ~x86-linux ~ppc-macos ~x86-macos"
+IUSE="debug hsieh +libevent static-libs"
+
+DEPEND="net-misc/memcached
+ dev-libs/cyrus-sasl
+ libevent? ( dev-libs/libevent )"
+RDEPEND="${DEPEND}"
+
+src_configure() {
+ local myconf
+ if use debug; then
+ myconf="--enable-debug --enable-assert"
+ fi
+ if use hsieh; then
+ myconf+=" --enable-hsieh_hash"
+ fi
+
+ econf \
+ --disable-dtrace \
+ $(use_enable static-libs static) \
+ ${myconf}
+}
+
+src_install() {
+ emake DESTDIR="${D}" install
+
+ use static-libs || rm -f "${D}"/usr/$(get_libdir)/lib*.la
+
+ dodoc AUTHORS ChangeLog README THANKS TODO
+ # remove manpage to avoid collision, see bug #299330
+ rm -f "${D}"/usr/share/man/man1/memdump.*
+ newman man/memdump.1 memcached_memdump.1
+}
diff --git a/dev-libs/libmemcached/libmemcached-1.0.17-r3.ebuild b/dev-libs/libmemcached/libmemcached-1.0.17-r3.ebuild
new file mode 100644
index 000000000000..a9cd9f3a1fdd
--- /dev/null
+++ b/dev-libs/libmemcached/libmemcached-1.0.17-r3.ebuild
@@ -0,0 +1,49 @@
+# Copyright 1999-2014 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=5
+
+inherit autotools eutils multilib
+RESTRICT="test" # https://bugs.gentoo.org/show_bug.cgi?id=498250 https://bugs.launchpad.net/gentoo/+bug/1278023
+
+DESCRIPTION="a C client library to the memcached server"
+HOMEPAGE="http://libmemcached.org/libMemcached.html"
+SRC_URI="https://launchpad.net/${PN}/1.0/${PV}/+download/${P}.tar.gz"
+
+LICENSE="BSD"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm ~hppa ~ia64 ~ppc ~ppc64 ~sh ~sparc ~x86 ~sparc-fbsd ~amd64-linux ~x86-linux ~ppc-macos ~x86-macos"
+IUSE="debug hsieh +libevent sasl static-libs"
+
+DEPEND="net-misc/memcached
+ sasl? ( dev-libs/cyrus-sasl )
+ libevent? ( dev-libs/libevent )"
+RDEPEND="${DEPEND}"
+
+src_prepare() {
+ epatch "${FILESDIR}/${PN}-1.0.17-gcc4_8.patch"
+ eautoreconf
+}
+
+src_configure() {
+ econf \
+ --disable-dtrace \
+ $(use_enable static-libs static) \
+ $(use_enable sasl sasl) \
+ $(use_enable debug debug) \
+ $(use_enable debug assert) \
+ $(use_enable hsieh hsieh_hash) \
+ --libdir=/usr/$(get_libdir) \
+ ${myconf}
+}
+
+src_install() {
+ emake DESTDIR="${D}" install
+
+ use static-libs || rm -f "${D}"/usr/$(get_libdir)/lib*.la
+
+ dodoc AUTHORS ChangeLog README THANKS TODO
+ # remove manpage to avoid collision, see bug #299330
+ rm -f "${D}"/usr/share/man/man1/memdump.*
+ newman man/memdump.1 memcached_memdump.1
+}
diff --git a/dev-libs/libmemcached/libmemcached-1.0.17-r4.ebuild b/dev-libs/libmemcached/libmemcached-1.0.17-r4.ebuild
new file mode 100644
index 000000000000..4e98e815134e
--- /dev/null
+++ b/dev-libs/libmemcached/libmemcached-1.0.17-r4.ebuild
@@ -0,0 +1,50 @@
+# Copyright 1999-2014 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=5
+
+inherit autotools eutils multilib
+RESTRICT="test" # https://bugs.gentoo.org/show_bug.cgi?id=498250 https://bugs.launchpad.net/gentoo/+bug/1278023
+
+DESCRIPTION="a C client library to the memcached server"
+HOMEPAGE="http://libmemcached.org/libMemcached.html"
+SRC_URI="https://launchpad.net/${PN}/1.0/${PV}/+download/${P}.tar.gz"
+
+LICENSE="BSD"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm ~hppa ~ia64 ~ppc ~ppc64 ~sh ~sparc ~x86 ~sparc-fbsd ~amd64-linux ~x86-linux ~ppc-macos ~x86-macos"
+IUSE="debug hsieh +libevent sasl static-libs"
+
+DEPEND="net-misc/memcached
+ sasl? ( dev-libs/cyrus-sasl )
+ libevent? ( dev-libs/libevent )"
+RDEPEND="${DEPEND}"
+
+src_prepare() {
+ sed -i '6i CFLAGS = @CFLAGS@' Makefile.am
+ epatch "${FILESDIR}/${PN}-1.0.17-gcc4_8.patch"
+ eautoreconf
+}
+
+src_configure() {
+ econf \
+ --disable-dtrace \
+ $(use_enable static-libs static) \
+ $(use_enable sasl sasl) \
+ $(use_enable debug debug) \
+ $(use_enable debug assert) \
+ $(use_enable hsieh hsieh_hash) \
+ --libdir=/usr/$(get_libdir) \
+ ${myconf}
+}
+
+src_install() {
+ emake DESTDIR="${D}" install
+
+ use static-libs || rm -f "${D}"/usr/$(get_libdir)/lib*.la
+
+ dodoc AUTHORS ChangeLog README THANKS TODO
+ # remove manpage to avoid collision, see bug #299330
+ rm -f "${D}"/usr/share/man/man1/memdump.*
+ newman man/memdump.1 memcached_memdump.1
+}
diff --git a/dev-libs/libmemcached/libmemcached-1.0.18-r1.ebuild b/dev-libs/libmemcached/libmemcached-1.0.18-r1.ebuild
new file mode 100644
index 000000000000..347d256267ad
--- /dev/null
+++ b/dev-libs/libmemcached/libmemcached-1.0.18-r1.ebuild
@@ -0,0 +1,51 @@
+# Copyright 1999-2014 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=5
+
+inherit autotools eutils multilib
+RESTRICT="test" # https://bugs.gentoo.org/show_bug.cgi?id=498250 https://bugs.launchpad.net/gentoo/+bug/1278023
+
+DESCRIPTION="a C client library to the memcached server"
+HOMEPAGE="http://libmemcached.org/libMemcached.html"
+SRC_URI="https://launchpad.net/${PN}/1.0/${PV}/+download/${P}.tar.gz"
+
+LICENSE="BSD"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm ~hppa ~ia64 ~ppc ~ppc64 ~sh ~sparc ~x86 ~sparc-fbsd ~amd64-linux ~x86-linux ~ppc-macos ~x86-macos"
+IUSE="debug hsieh +libevent sasl static-libs"
+
+DEPEND="net-misc/memcached
+ sasl? ( dev-libs/cyrus-sasl )
+ libevent? ( dev-libs/libevent )"
+RDEPEND="${DEPEND}"
+
+src_prepare() {
+ epatch "${FILESDIR}/debug-disable-enable-1.0.18.patch"
+ sed -i '6i CFLAGS = @CFLAGS@' Makefile.am
+ sed -e "/_APPEND_COMPILE_FLAGS_ERROR(\[-fmudflapth\?\])/d" -i m4/ax_harden_compiler_flags.m4
+ eautoreconf
+}
+
+src_configure() {
+ econf \
+ --disable-dtrace \
+ $(use_enable static-libs static) \
+ $(use_enable sasl sasl) \
+ $(use_enable debug debug) \
+ $(use_enable debug assert) \
+ $(use_enable hsieh hsieh_hash) \
+ --libdir=/usr/$(get_libdir) \
+ ${myconf}
+}
+
+src_install() {
+ emake DESTDIR="${D}" install
+
+ use static-libs || rm -f "${D}"/usr/$(get_libdir)/lib*.la
+
+ dodoc AUTHORS ChangeLog README THANKS TODO
+ # remove manpage to avoid collision, see bug #299330
+ rm -f "${D}"/usr/share/man/man1/memdump.*
+ newman man/memdump.1 memcached_memdump.1
+}
diff --git a/dev-libs/libmemcached/libmemcached-1.0.18-r2.ebuild b/dev-libs/libmemcached/libmemcached-1.0.18-r2.ebuild
new file mode 100644
index 000000000000..6f825c8b7c44
--- /dev/null
+++ b/dev-libs/libmemcached/libmemcached-1.0.18-r2.ebuild
@@ -0,0 +1,53 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=5
+
+WANT_AUTOMAKE=1.13
+
+inherit autotools eutils multilib
+RESTRICT="test" # https://bugs.gentoo.org/show_bug.cgi?id=498250 https://bugs.launchpad.net/gentoo/+bug/1278023
+
+DESCRIPTION="a C client library to the memcached server"
+HOMEPAGE="http://libmemcached.org/libMemcached.html"
+SRC_URI="https://launchpad.net/${PN}/1.0/${PV}/+download/${P}.tar.gz"
+
+LICENSE="BSD"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm ~hppa ~ia64 ~ppc ~ppc64 ~sh ~sparc ~x86 ~sparc-fbsd ~amd64-linux ~x86-linux ~ppc-macos ~x86-macos"
+IUSE="debug hsieh +libevent sasl static-libs"
+
+DEPEND="net-misc/memcached
+ sasl? ( dev-libs/cyrus-sasl )
+ libevent? ( dev-libs/libevent )"
+RDEPEND="${DEPEND}"
+
+src_prepare() {
+ epatch "${FILESDIR}/debug-disable-enable-1.0.18.patch"
+ sed -i '6i CFLAGS = @CFLAGS@' Makefile.am
+ sed -e "/_APPEND_COMPILE_FLAGS_ERROR(\[-fmudflapth\?\])/d" -i m4/ax_harden_compiler_flags.m4
+ eautoreconf
+}
+
+src_configure() {
+ econf \
+ --disable-dtrace \
+ $(use_enable static-libs static) \
+ $(use_enable sasl sasl) \
+ $(use_enable debug debug) \
+ $(use_enable debug assert) \
+ $(use_enable hsieh hsieh_hash) \
+ --libdir=/usr/$(get_libdir) \
+ ${myconf}
+}
+
+src_install() {
+ emake DESTDIR="${D}" install
+
+ use static-libs || rm -f "${D}"/usr/$(get_libdir)/lib*.la
+
+ dodoc AUTHORS ChangeLog README THANKS TODO
+ # remove manpage to avoid collision, see bug #299330
+ rm -f "${D}"/usr/share/man/man1/memdump.*
+ newman man/memdump.1 memcached_memdump.1
+}
diff --git a/dev-libs/libmemcached/libmemcached-1.0.18-r3.ebuild b/dev-libs/libmemcached/libmemcached-1.0.18-r3.ebuild
new file mode 100644
index 000000000000..ee91b8ccdf37
--- /dev/null
+++ b/dev-libs/libmemcached/libmemcached-1.0.18-r3.ebuild
@@ -0,0 +1,55 @@
+# Copyright 1999-2017 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=5
+
+WANT_AUTOMAKE=1.13
+
+inherit autotools eutils multilib
+RESTRICT="test" # https://bugs.gentoo.org/show_bug.cgi?id=498250 https://bugs.launchpad.net/gentoo/+bug/1278023
+
+DESCRIPTION="a C client library to the memcached server"
+HOMEPAGE="http://libmemcached.org/libMemcached.html"
+SRC_URI="https://launchpad.net/${PN}/1.0/${PV}/+download/${P}.tar.gz"
+
+LICENSE="BSD"
+SLOT="0"
+KEYWORDS="alpha amd64 arm hppa ia64 ppc ppc64 ~sh sparc x86 ~sparc-fbsd ~amd64-linux ~x86-linux ~ppc-macos ~x86-macos"
+IUSE="debug hsieh +libevent sasl static-libs"
+
+DEPEND="net-misc/memcached
+ sasl? ( dev-libs/cyrus-sasl )
+ libevent? ( dev-libs/libevent )"
+RDEPEND="${DEPEND}"
+
+src_prepare() {
+ epatch "${FILESDIR}/debug-disable-enable-1.0.18.patch"
+ epatch "${FILESDIR}/continuum-1.0.18.patch"
+ epatch "${FILESDIR}"/${P}-gcc7.patch
+ sed -i '6i CFLAGS = @CFLAGS@' Makefile.am
+ sed -e "/_APPEND_COMPILE_FLAGS_ERROR(\[-fmudflapth\?\])/d" -i m4/ax_harden_compiler_flags.m4
+ eautoreconf
+}
+
+src_configure() {
+ econf \
+ --disable-dtrace \
+ $(use_enable static-libs static) \
+ $(use_enable sasl sasl) \
+ $(use_enable debug debug) \
+ $(use_enable debug assert) \
+ $(use_enable hsieh hsieh_hash) \
+ --libdir=/usr/$(get_libdir) \
+ ${myconf}
+}
+
+src_install() {
+ emake DESTDIR="${D}" install
+
+ use static-libs || rm -f "${D}"/usr/$(get_libdir)/lib*.la
+
+ dodoc AUTHORS ChangeLog README THANKS TODO
+ # remove manpage to avoid collision, see bug #299330
+ rm -f "${D}"/usr/share/man/man1/memdump.*
+ newman man/memdump.1 memcached_memdump.1
+}
diff --git a/dev-libs/libmemcached/libmemcached-1.0.18.ebuild b/dev-libs/libmemcached/libmemcached-1.0.18.ebuild
new file mode 100644
index 000000000000..45e2bd14c2c4
--- /dev/null
+++ b/dev-libs/libmemcached/libmemcached-1.0.18.ebuild
@@ -0,0 +1,50 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=5
+
+inherit autotools eutils multilib
+RESTRICT="test" # https://bugs.gentoo.org/show_bug.cgi?id=498250 https://bugs.launchpad.net/gentoo/+bug/1278023
+
+DESCRIPTION="a C client library to the memcached server"
+HOMEPAGE="http://libmemcached.org/libMemcached.html"
+SRC_URI="https://launchpad.net/${PN}/1.0/${PV}/+download/${P}.tar.gz"
+
+LICENSE="BSD"
+SLOT="0"
+KEYWORDS="alpha amd64 arm hppa ia64 ppc ppc64 ~sh ~sparc x86 ~sparc-fbsd ~amd64-linux ~x86-linux ~ppc-macos ~x86-macos"
+IUSE="debug hsieh +libevent sasl static-libs"
+
+DEPEND="net-misc/memcached
+ sasl? ( dev-libs/cyrus-sasl )
+ libevent? ( dev-libs/libevent )"
+RDEPEND="${DEPEND}"
+
+src_prepare() {
+ sed -i '6i CFLAGS = @CFLAGS@' Makefile.am
+ sed -e "/_APPEND_COMPILE_FLAGS_ERROR(\[-fmudflapth\?\])/d" -i m4/ax_harden_compiler_flags.m4
+ eautoreconf
+}
+
+src_configure() {
+ econf \
+ --disable-dtrace \
+ $(use_enable static-libs static) \
+ $(use_enable sasl sasl) \
+ $(use_enable debug debug) \
+ $(use_enable debug assert) \
+ $(use_enable hsieh hsieh_hash) \
+ --libdir=/usr/$(get_libdir) \
+ ${myconf}
+}
+
+src_install() {
+ emake DESTDIR="${D}" install
+
+ use static-libs || rm -f "${D}"/usr/$(get_libdir)/lib*.la
+
+ dodoc AUTHORS ChangeLog README THANKS TODO
+ # remove manpage to avoid collision, see bug #299330
+ rm -f "${D}"/usr/share/man/man1/memdump.*
+ newman man/memdump.1 memcached_memdump.1
+}
diff --git a/dev-libs/libmemcached/metadata.xml b/dev-libs/libmemcached/metadata.xml
new file mode 100644
index 000000000000..3bfda0a0415b
--- /dev/null
+++ b/dev-libs/libmemcached/metadata.xml
@@ -0,0 +1,23 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="person">
+ <email>robbat2@gentoo.org</email>
+ </maintainer>
+ <maintainer type="person">
+ <email>prometheanfire@gentoo.org</email>
+ </maintainer>
+ <longdescription>
+ libmemcached is a C client library to the memcached server
+ (http://danga.com/memcached). It has been designed to be light on memory
+ usage, thread safe, and provide full access to server side methods.
+ </longdescription>
+ <use>
+ <flag name="hsieh">Use Hsieh hash algorithm.</flag>
+ <flag name="libevent">Use the libevent event loop interface.</flag>
+ <flag name="sasl">Use sasl auth for communications.</flag>
+ </use>
+ <upstream>
+ <remote-id type="launchpad">libmemcached</remote-id>
+ </upstream>
+</pkgmetadata>