summaryrefslogtreecommitdiff
path: root/net-misc/memcached/files
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 /net-misc/memcached/files
reinit the tree, so we can have metadata
Diffstat (limited to 'net-misc/memcached/files')
-rw-r--r--net-misc/memcached/files/memcached-1.2.2-fbsd.patch12
-rw-r--r--net-misc/memcached/files/memcached-1.4.0-fix-as-needed-linking.patch47
-rw-r--r--net-misc/memcached/files/memcached-1.4.17-EWOULDBLOCK.patch21
-rw-r--r--net-misc/memcached/files/memcached-1.4.4-as-needed.patch31
-rw-r--r--net-misc/memcached/files/memcached.confd40
-rw-r--r--net-misc/memcached/files/memcached.init290
-rw-r--r--net-misc/memcached/files/memcached.service12
7 files changed, 253 insertions, 0 deletions
diff --git a/net-misc/memcached/files/memcached-1.2.2-fbsd.patch b/net-misc/memcached/files/memcached-1.2.2-fbsd.patch
new file mode 100644
index 000000000000..76f237698cf7
--- /dev/null
+++ b/net-misc/memcached/files/memcached-1.2.2-fbsd.patch
@@ -0,0 +1,12 @@
+Index: memcached-1.2.2/memcached.h
+===================================================================
+--- memcached-1.2.2.orig/memcached.h
++++ memcached-1.2.2/memcached.h
+@@ -4,6 +4,7 @@
+ #include "config.h"
+ #include <sys/types.h>
+ #include <sys/time.h>
++#include <sys/socket.h>
+ #include <netinet/in.h>
+ #include <event.h>
+
diff --git a/net-misc/memcached/files/memcached-1.4.0-fix-as-needed-linking.patch b/net-misc/memcached/files/memcached-1.4.0-fix-as-needed-linking.patch
new file mode 100644
index 000000000000..d8a8ff295fc3
--- /dev/null
+++ b/net-misc/memcached/files/memcached-1.4.0-fix-as-needed-linking.patch
@@ -0,0 +1,47 @@
+Users that try to second-guess us and specify -DNDEBUG are just asking to cause
+problems. They cause breakage with the testapp and -debug versions.
+
+So let's ensure that testapp and -debug use per-object compile flags, and thus
+preventing flags leaking between stuff. The #undef at the top of testapp.c is
+redundant now, but not removed.
+
+Signed-off-by: Robin H. Johnson <robbat2@gentoo.org>
+X-Gentoo-Bug: 278780
+X-Gentoo-Bug-URL: https://bugs.gentoo.org/show_bug.cgi?id=278780
+
+diff -Nuar memcached-1.4.0/testapp.c memcached-1.4.0/testapp.c
+--- memcached-1.4.0/testapp.c 2009-07-09 09:43:42.000000000 -0700
++++ memcached-1.4.0/testapp.c 2009-07-27 16:41:14.468907751 -0700
+@@ -115,12 +115,16 @@
+ char old = *(p - 1);
+ *(p - 1) = 0;
+ cache_free(cache, p);
++#ifndef NDEBUG
+ assert(cache_error == -1);
++#endif
+ *(p - 1) = old;
+
+ p[sizeof(uint32_t)] = 0;
+ cache_free(cache, p);
++#ifndef NDEBUG
+ assert(cache_error == 1);
++#endif
+
+ /* restore signal handler */
+ sigaction(SIGABRT, &old_action, NULL);
+diff -Nuar memcached-1.4.0.orig/Makefile.am memcached-1.4.0/Makefile.am
+--- memcached-1.4.0.orig/Makefile.am 2009-07-09 09:43:42.000000000 -0700
++++ memcached-1.4.0/Makefile.am 2009-07-27 17:45:20.973106097 -0700
+@@ -27,8 +27,12 @@
+
+ memcached_debug_SOURCES = $(memcached_SOURCES)
+ memcached_CPPFLAGS = -DNDEBUG
++
+ memcached_debug_LDADD = @PROFILER_LDFLAGS@
+ memcached_debug_CFLAGS = @PROFILER_FLAGS@
++memcached_debug_CPPFLAGS = -UNDEBUG
++
++testapp_CPPFLAGS = -UNDEBUG
+
+ memcached_LDADD =
+ memcached_DEPENDENCIES =
diff --git a/net-misc/memcached/files/memcached-1.4.17-EWOULDBLOCK.patch b/net-misc/memcached/files/memcached-1.4.17-EWOULDBLOCK.patch
new file mode 100644
index 000000000000..115c6bbc8633
--- /dev/null
+++ b/net-misc/memcached/files/memcached-1.4.17-EWOULDBLOCK.patch
@@ -0,0 +1,21 @@
+errno.h(0P):
+ EAGAIN Resource unavailable, try again (may be the same value as [EWOULDBLOCK]).
+
+ [...]
+
+ EWOULDBLOCK
+ Operation would block (may be the same value as [EAGAIN]).
+
+
+--- a/testapp.c
++++ b/testapp.c
+@@ -1840,6 +1840,9 @@
+ switch (errno) {
+ case EINTR:
+ break;
++#if (EAGAIN != EWOULDBLOCK)
++ case EAGAIN:
++#endif
+ case ENOMEM:
+ case EWOULDBLOCK:
+ more = false; \ No newline at end of file
diff --git a/net-misc/memcached/files/memcached-1.4.4-as-needed.patch b/net-misc/memcached/files/memcached-1.4.4-as-needed.patch
new file mode 100644
index 000000000000..f6e5cde11057
--- /dev/null
+++ b/net-misc/memcached/files/memcached-1.4.4-as-needed.patch
@@ -0,0 +1,31 @@
+diff -Nuar memcached-1.4.4.orig/configure.ac memcached-1.4.4/configure.ac
+--- memcached-1.4.4.orig/configure.ac 2009-11-24 16:40:29.000000000 -0800
++++ memcached-1.4.4/configure.ac 2009-11-27 15:20:38.000000000 -0800
+@@ -115,6 +115,14 @@
+ AC_SUBST(ENABLE_SASL)
+ AC_SUBST(PROFILER_LDFLAGS)
+
++dnl Check whether the user's system supports pthread before adding -pthread to CFLAGS
++dnl otherwise we won't get -l{threads} in LIBS
++dnl AFAIK -pthread should be added to LDFLAGS on BSD systems
++AC_SEARCH_LIBS(pthread_create, [pthread pthreads thread threads] )
++if test "x$ac_cv_search_pthread_create" == "xno"; then
++ AC_MSG_ERROR([Can't enable threads without the POSIX thread library.])
++fi
++
+ AC_ARG_ENABLE(coverage,
+ [AS_HELP_STRING([--disable-coverage],[Disable code coverage])])
+
+@@ -376,12 +384,6 @@
+
+ AC_C_HTONLL
+
+-dnl Check whether the user's system supports pthread
+-AC_SEARCH_LIBS(pthread_create, pthread)
+-if test "x$ac_cv_search_pthread_create" = "xno"; then
+- AC_MSG_ERROR([Can't enable threads without the POSIX thread library.])
+-fi
+-
+ AC_CHECK_FUNCS(mlockall)
+ AC_CHECK_FUNCS(getpagesizes)
+ AC_CHECK_FUNCS(memcntl)
diff --git a/net-misc/memcached/files/memcached.confd b/net-misc/memcached/files/memcached.confd
new file mode 100644
index 000000000000..aad80780e759
--- /dev/null
+++ b/net-misc/memcached/files/memcached.confd
@@ -0,0 +1,40 @@
+# memcached config file
+
+MEMCACHED_BINARY="/usr/bin/memcached"
+
+# Specify memory usage in megabytes (do not use letters)
+# 64MB is default
+MEMUSAGE="64"
+
+# User to run as
+MEMCACHED_RUNAS="memcached"
+
+# Specify maximum number of concurrent connections
+# 1024 is default
+MAXCONN="1024"
+
+# Listen for connections on what address?
+# If this is empty, memcached will listen on 0.0.0.0
+# be sure you have a firewall in place!
+LISTENON=""
+
+# Listen for connections on what port?
+PORT="11211"
+
+# Listen for UDP connecitons on what port? 0 means turn off UDP
+UDPPORT="${PORT}"
+
+# PID file location
+# '-${PORT}.${CONF}.pid' will be appended to this!
+# You do not normally need to change this.
+PIDBASE="/var/run/memcached/memcached"
+
+# Socket to listen on
+#SOCKET="/var/run/memcached/memcached.sock"
+
+# Socket mask
+# 0700 is default
+#SOCKET_MASK="0700"
+
+# Other Options
+MISC_OPTS=""
diff --git a/net-misc/memcached/files/memcached.init2 b/net-misc/memcached/files/memcached.init2
new file mode 100644
index 000000000000..4bdfec6b945c
--- /dev/null
+++ b/net-misc/memcached/files/memcached.init2
@@ -0,0 +1,90 @@
+#!/sbin/openrc-run
+
+CONF="${SVCNAME#*.}"
+CONFBASE="/etc/conf.d/memcached"
+
+[ -z "${PIDBASE}" ] && PIDBASE="/run/memcached/memcached"
+[ "${CONF}" = "memcached" ] && CONF=''
+
+if [ -n "${CONF}" ]; then
+ PIDFILE="${PIDBASE}.${CONF}.pid"
+ CONFSRC="${CONFBASE}.${CONF}"
+ if [ -f "${CONFSRC}" ]; then
+ source "${CONFSRC}"
+ else
+ eerror "The configuration file $CONFSRC was not found!"
+ fi
+else
+ PIDFILE="${PIDBASE}.pid"
+ CONFSRC="${CONFBASE}"
+fi
+
+depend() {
+ # per bug #269022, accurate time is important for memcached!
+ # We include the full list of ways it might be set on boot.
+ after ntp-client ntpd rdate openrdate adjtimex hwclock
+}
+
+checkconfig() {
+ if [ -z "${LISTENON}" ] && [ -z "${SOCKET}" ]; then
+ ewarn "You should edit $CONFSRC and specify an address or socket to listen on."
+ ewarn "Listening on any address (check your firewall!)"
+ fi
+}
+
+start() {
+ if [ -n "${CONF}" ]; then
+ ebegin "Starting memcached (${CONF})"
+ else
+ ebegin "Starting memcached"
+ fi
+ checkconfig
+ local dir="$(dirname ${PIDFILE})"
+ if [ ! -d "${dir}" ]; then
+ einfo " Creating ${dir}"
+ mkdir -p "${dir}"
+ fi
+
+ chown ${MEMCACHED_RUNAS} "${dir}"
+ if [ -f "${PIDFILE}" ]; then
+ einfo " Removing stale pidfile ${PIDFILE}"
+ rm -f "${PIDFILE}" 1>/dev/null
+ fi
+
+
+ if [ -n "${SOCKET}" ]; then
+ CONNECTION="-s ${SOCKET}"
+
+ if [ -n "${SOCKET_MASK}" ]; then
+ CONNECTION="${CONNECTION} -a ${SOCKET_MASK}"
+ fi
+ else
+ CONNECTION="-p ${PORT} -U ${UDPPORT}"
+
+ if [ -n "${LISTENON}" ]; then
+ CONNECTION="${CONNECTION} -l ${LISTENON}"
+ fi
+ fi
+
+ /sbin/start-stop-daemon --start --pidfile "${PIDFILE}" \
+ --exec "${MEMCACHED_BINARY}" -- \
+ -d ${CONNECTION} -m ${MEMUSAGE} \
+ -c ${MAXCONN} -u ${MEMCACHED_RUNAS} -P "${PIDFILE}" \
+ ${MISC_OPTS}
+
+ eend $?
+}
+
+stop() {
+ if [ -n "${CONF}" ]; then
+ ebegin "Stopping memcached (${CONF})"
+ else
+ ebegin "Stopping memcached"
+ fi
+
+ start-stop-daemon --stop --quiet --pidfile "${PIDFILE}"
+
+ rm -f "${PIDFILE}"
+
+ eend $?
+}
diff --git a/net-misc/memcached/files/memcached.service b/net-misc/memcached/files/memcached.service
new file mode 100644
index 000000000000..f51fd1f35730
--- /dev/null
+++ b/net-misc/memcached/files/memcached.service
@@ -0,0 +1,12 @@
+[Unit]
+After=network.target
+Description=High-performance, distributed memory object caching system
+Documentation=man:memcached(1)
+Documentation=http://code.google.com/p/memcached/
+
+[Service]
+ExecStart=/usr/bin/memcached
+User=memcached
+
+[Install]
+WantedBy=multi-user.target