Accepting request 130751 from home:elvigia:branches:network:utilities
- Update to version 1.4.14 * Avoid race condition in test during pid creation by blind retrying * Fixed issue with invalid binary protocol touch command expiration time - If the test suite fails, package must fail build. - Use byteswapping macros from endian.h and not some ad-hoc/slow function. - Add systemd units. OBS-URL: https://build.opensuse.org/request/show/130751 OBS-URL: https://build.opensuse.org/package/show/network:utilities/memcached?expand=0&rev=10
This commit is contained in:
parent
07907d5cec
commit
d671b07a7d
@ -1,3 +0,0 @@
|
|||||||
version https://git-lfs.github.com/spec/v1
|
|
||||||
oid sha256:335ccd7904dea31b1884438f70ad650df6e38e9e368e975226435e447884ec69
|
|
||||||
size 270674
|
|
3
memcached-1.4.14.tar.gz
Normal file
3
memcached-1.4.14.tar.gz
Normal file
@ -0,0 +1,3 @@
|
|||||||
|
version https://git-lfs.github.com/spec/v1
|
||||||
|
oid sha256:f2e2ad8ee8d256f2c3748d7f741dcddfd0ab6bdece6fa1c18484e83f311156ef
|
||||||
|
size 321262
|
370
memcached-autofoo.patch
Normal file
370
memcached-autofoo.patch
Normal file
@ -0,0 +1,370 @@
|
|||||||
|
--- configure.ac.orig
|
||||||
|
+++ configure.ac
|
||||||
|
@@ -1,59 +1,15 @@
|
||||||
|
-AC_PREREQ(2.52)
|
||||||
|
+AC_PREREQ([2.60])
|
||||||
|
m4_include([version.m4])
|
||||||
|
m4_include([m4/c99-backport.m4])
|
||||||
|
-AC_INIT(memcached, VERSION_NUMBER, memcached@googlegroups.com)
|
||||||
|
-AC_CANONICAL_SYSTEM
|
||||||
|
+AC_INIT([memcached],[VERSION_NUMBER],[memcached@googlegroups.com])
|
||||||
|
+AC_CANONICAL_TARGET
|
||||||
|
AC_CONFIG_SRCDIR(memcached.c)
|
||||||
|
-AM_INIT_AUTOMAKE(AC_PACKAGE_NAME, AC_PACKAGE_VERSION)
|
||||||
|
-AM_CONFIG_HEADER(config.h)
|
||||||
|
-
|
||||||
|
-AC_PROG_CC
|
||||||
|
-
|
||||||
|
-dnl **********************************************************************
|
||||||
|
-dnl DETECT_ICC ([ACTION-IF-YES], [ACTION-IF-NO])
|
||||||
|
-dnl
|
||||||
|
-dnl check if this is the Intel ICC compiler, and if so run the ACTION-IF-YES
|
||||||
|
-dnl sets the $ICC variable to "yes" or "no"
|
||||||
|
-dnl **********************************************************************
|
||||||
|
-AC_DEFUN([DETECT_ICC],
|
||||||
|
-[
|
||||||
|
- ICC="no"
|
||||||
|
- AC_MSG_CHECKING([for icc in use])
|
||||||
|
- if test "$GCC" = "yes"; then
|
||||||
|
- dnl check if this is icc acting as gcc in disguise
|
||||||
|
- AC_EGREP_CPP([^__INTEL_COMPILER], [__INTEL_COMPILER],
|
||||||
|
- AC_MSG_RESULT([no])
|
||||||
|
- [$2],
|
||||||
|
- AC_MSG_RESULT([yes])
|
||||||
|
- [$1]
|
||||||
|
- ICC="yes")
|
||||||
|
- else
|
||||||
|
- AC_MSG_RESULT([no])
|
||||||
|
- [$2]
|
||||||
|
- fi
|
||||||
|
-])
|
||||||
|
-
|
||||||
|
-DETECT_ICC([], [])
|
||||||
|
-
|
||||||
|
-dnl **********************************************************************
|
||||||
|
-dnl DETECT_SUNCC ([ACTION-IF-YES], [ACTION-IF-NO])
|
||||||
|
-dnl
|
||||||
|
-dnl check if this is the Sun Studio compiler, and if so run the ACTION-IF-YES
|
||||||
|
-dnl sets the $SUNCC variable to "yes" or "no"
|
||||||
|
-dnl **********************************************************************
|
||||||
|
-AC_DEFUN([DETECT_SUNCC],
|
||||||
|
-[
|
||||||
|
- AC_CHECK_DECL([__SUNPRO_C], [SUNCC="yes"], [SUNCC="no"])
|
||||||
|
- AS_IF(test "x$SUNCC" = "xyes", [$1], [$2])
|
||||||
|
-
|
||||||
|
-])
|
||||||
|
-
|
||||||
|
-DETECT_SUNCC([CFLAGS="-mt $CFLAGS"], [])
|
||||||
|
-
|
||||||
|
-if test "$ICC" = "no"; then
|
||||||
|
- AC_PROG_CC_C99
|
||||||
|
-fi
|
||||||
|
+AM_INIT_AUTOMAKE([foreign -Wall -Wno-portability tar-pax no-dist-gzip dist-xz subdir-objects])
|
||||||
|
+AC_CONFIG_HEADERS([config.h])
|
||||||
|
|
||||||
|
+AC_PROG_CC_STDC
|
||||||
|
+AC_USE_SYSTEM_EXTENSIONS
|
||||||
|
+AC_SYS_LARGEFILE
|
||||||
|
AM_PROG_CC_C_O
|
||||||
|
AC_PROG_INSTALL
|
||||||
|
|
||||||
|
@@ -76,14 +32,11 @@ AC_DEFUN([AC_C_DETECT_SASL_CB_GETCONF],
|
||||||
|
[
|
||||||
|
AC_CACHE_CHECK([for SASL_CB_GETCONF],
|
||||||
|
[ac_cv_c_sasl_cb_getconf],
|
||||||
|
- [AC_TRY_COMPILE(
|
||||||
|
- [
|
||||||
|
+ [AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[
|
||||||
|
#include <sasl/sasl.h>
|
||||||
|
- ], [
|
||||||
|
+ ]], [[
|
||||||
|
unsigned long val = SASL_CB_GETCONF;
|
||||||
|
- ],
|
||||||
|
- [ ac_cv_c_sasl_cb_getconf=yes ],
|
||||||
|
- [ ac_cv_c_sasl_cb_getconf=no ])
|
||||||
|
+ ]])],[ ac_cv_c_sasl_cb_getconf=yes ],[ ac_cv_c_sasl_cb_getconf=no ])
|
||||||
|
])
|
||||||
|
AS_IF([test "$ac_cv_c_sasl_cb_getconf" = "yes"],
|
||||||
|
[AC_DEFINE([HAVE_SASL_CB_GETCONF], 1,
|
||||||
|
@@ -170,23 +123,6 @@ fi
|
||||||
|
AC_SUBST(PROFILER_FLAGS)
|
||||||
|
|
||||||
|
|
||||||
|
-AC_ARG_ENABLE(64bit,
|
||||||
|
- [AS_HELP_STRING([--enable-64bit],[build 64bit version])])
|
||||||
|
-if test "x$enable_64bit" = "xyes"
|
||||||
|
-then
|
||||||
|
- org_cflags=$CFLAGS
|
||||||
|
- CFLAGS=-m64
|
||||||
|
- AC_RUN_IFELSE(
|
||||||
|
- [AC_LANG_PROGRAM([], [dnl
|
||||||
|
-return sizeof(void*) == 8 ? 0 : 1;
|
||||||
|
- ])
|
||||||
|
- ],[
|
||||||
|
- CFLAGS="-m64 $org_cflags"
|
||||||
|
- ],[
|
||||||
|
- AC_MSG_ERROR([Don't know how to build a 64-bit object.])
|
||||||
|
- ])
|
||||||
|
-fi
|
||||||
|
-
|
||||||
|
# Issue 213: Search for clock_gettime to help people linking
|
||||||
|
# with a static version of libevent
|
||||||
|
AC_SEARCH_LIBS(clock_gettime, rt)
|
||||||
|
@@ -195,91 +131,7 @@ AC_SEARCH_LIBS(clock_gettime, rt)
|
||||||
|
AC_SEARCH_LIBS(socket, socket)
|
||||||
|
AC_SEARCH_LIBS(gethostbyname, nsl)
|
||||||
|
|
||||||
|
-trylibeventdir=""
|
||||||
|
-AC_ARG_WITH(libevent,
|
||||||
|
- [ --with-libevent=PATH Specify path to libevent installation ],
|
||||||
|
- [
|
||||||
|
- if test "x$withval" != "xno" ; then
|
||||||
|
- trylibeventdir=$withval
|
||||||
|
- fi
|
||||||
|
- ]
|
||||||
|
-)
|
||||||
|
-
|
||||||
|
-dnl ------------------------------------------------------
|
||||||
|
-dnl libevent detection. swiped from Tor. modified a bit.
|
||||||
|
-
|
||||||
|
-LIBEVENT_URL=http://www.monkey.org/~provos/libevent/
|
||||||
|
-
|
||||||
|
-AC_CACHE_CHECK([for libevent directory], ac_cv_libevent_dir, [
|
||||||
|
- saved_LIBS="$LIBS"
|
||||||
|
- saved_LDFLAGS="$LDFLAGS"
|
||||||
|
- saved_CPPFLAGS="$CPPFLAGS"
|
||||||
|
- le_found=no
|
||||||
|
- for ledir in $trylibeventdir "" $prefix /usr/local ; do
|
||||||
|
- LDFLAGS="$saved_LDFLAGS"
|
||||||
|
- LIBS="-levent $saved_LIBS"
|
||||||
|
-
|
||||||
|
- # Skip the directory if it isn't there.
|
||||||
|
- if test ! -z "$ledir" -a ! -d "$ledir" ; then
|
||||||
|
- continue;
|
||||||
|
- fi
|
||||||
|
- if test ! -z "$ledir" ; then
|
||||||
|
- if test -d "$ledir/lib" ; then
|
||||||
|
- LDFLAGS="-L$ledir/lib $LDFLAGS"
|
||||||
|
- else
|
||||||
|
- LDFLAGS="-L$ledir $LDFLAGS"
|
||||||
|
- fi
|
||||||
|
- if test -d "$ledir/include" ; then
|
||||||
|
- CPPFLAGS="-I$ledir/include $CPPFLAGS"
|
||||||
|
- else
|
||||||
|
- CPPFLAGS="-I$ledir $CPPFLAGS"
|
||||||
|
- fi
|
||||||
|
- fi
|
||||||
|
- # Can I compile and link it?
|
||||||
|
- AC_TRY_LINK([#include <sys/time.h>
|
||||||
|
-#include <sys/types.h>
|
||||||
|
-#include <event.h>], [ event_init(); ],
|
||||||
|
- [ libevent_linked=yes ], [ libevent_linked=no ])
|
||||||
|
- if test $libevent_linked = yes; then
|
||||||
|
- if test ! -z "$ledir" ; then
|
||||||
|
- ac_cv_libevent_dir=$ledir
|
||||||
|
- _myos=`echo $target_os | cut -f 1 -d .`
|
||||||
|
- AS_IF(test "$SUNCC" = "yes" -o "x$_myos" = "xsolaris2",
|
||||||
|
- [saved_LDFLAGS="$saved_LDFLAGS -Wl,-R$ledir/lib"],
|
||||||
|
- [AS_IF(test "$GCC" = "yes",
|
||||||
|
- [saved_LDFLAGS="$saved_LDFLAGS -Wl,-rpath,$ledir/lib"])])
|
||||||
|
- else
|
||||||
|
- ac_cv_libevent_dir="(system)"
|
||||||
|
- fi
|
||||||
|
- le_found=yes
|
||||||
|
- break
|
||||||
|
- fi
|
||||||
|
- done
|
||||||
|
- LIBS="$saved_LIBS"
|
||||||
|
- LDFLAGS="$saved_LDFLAGS"
|
||||||
|
- CPPFLAGS="$saved_CPPFLAGS"
|
||||||
|
- if test $le_found = no ; then
|
||||||
|
- AC_MSG_ERROR([libevent is required. You can get it from $LIBEVENT_URL
|
||||||
|
-
|
||||||
|
- If it's already installed, specify its path using --with-libevent=/dir/
|
||||||
|
-])
|
||||||
|
- fi
|
||||||
|
-])
|
||||||
|
-LIBS="-levent $LIBS"
|
||||||
|
-if test $ac_cv_libevent_dir != "(system)"; then
|
||||||
|
- if test -d "$ac_cv_libevent_dir/lib" ; then
|
||||||
|
- LDFLAGS="-L$ac_cv_libevent_dir/lib $LDFLAGS"
|
||||||
|
- le_libdir="$ac_cv_libevent_dir/lib"
|
||||||
|
- else
|
||||||
|
- LDFLAGS="-L$ac_cv_libevent_dir $LDFLAGS"
|
||||||
|
- le_libdir="$ac_cv_libevent_dir"
|
||||||
|
- fi
|
||||||
|
- if test -d "$ac_cv_libevent_dir/include" ; then
|
||||||
|
- CPPFLAGS="-I$ac_cv_libevent_dir/include $CPPFLAGS"
|
||||||
|
- else
|
||||||
|
- CPPFLAGS="-I$ac_cv_libevent_dir $CPPFLAGS"
|
||||||
|
- fi
|
||||||
|
-fi
|
||||||
|
+PKG_CHECK_MODULES([LIBEVENT], [libevent])
|
||||||
|
|
||||||
|
dnl ----------------------------------------------------------------------------
|
||||||
|
|
||||||
|
@@ -308,14 +160,14 @@ dnl ************************************
|
||||||
|
AC_DEFUN([AC_HAVE_SASL_CALLBACK_FT],
|
||||||
|
[AC_CACHE_CHECK(for sasl_callback_ft, ac_cv_has_sasl_callback_ft,
|
||||||
|
[
|
||||||
|
- AC_TRY_COMPILE([
|
||||||
|
+ AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[
|
||||||
|
#ifdef HAVE_SASL_SASL_H
|
||||||
|
#include <sasl/sasl.h>
|
||||||
|
#include <sasl/saslplug.h>
|
||||||
|
#endif
|
||||||
|
- ],[
|
||||||
|
+ ]], [[
|
||||||
|
sasl_callback_ft a_callback;
|
||||||
|
- ],[
|
||||||
|
+ ]])],[
|
||||||
|
ac_cv_has_sasl_callback_ft=yes
|
||||||
|
],[
|
||||||
|
ac_cv_has_sasl_callback_ft=no
|
||||||
|
@@ -337,18 +189,15 @@ AC_DEFUN([AC_C_DETECT_UINT64_SUPPORT],
|
||||||
|
[
|
||||||
|
AC_CACHE_CHECK([for print macros for integers (C99 section 7.8.1)],
|
||||||
|
[ac_cv_c_uint64_support],
|
||||||
|
- [AC_TRY_COMPILE(
|
||||||
|
- [
|
||||||
|
+ [AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[
|
||||||
|
#ifdef HAVE_INTTYPES_H
|
||||||
|
#include <inttypes.h>
|
||||||
|
#endif
|
||||||
|
#include <stdio.h>
|
||||||
|
- ], [
|
||||||
|
+ ]], [[
|
||||||
|
uint64_t val = 0;
|
||||||
|
fprintf(stderr, "%" PRIu64 "\n", val);
|
||||||
|
- ],
|
||||||
|
- [ ac_cv_c_uint64_support=yes ],
|
||||||
|
- [ ac_cv_c_uint64_support=no ])
|
||||||
|
+ ]])],[ ac_cv_c_uint64_support=yes ],[ ac_cv_c_uint64_support=no ])
|
||||||
|
])
|
||||||
|
])
|
||||||
|
|
||||||
|
@@ -367,12 +216,12 @@ dnl Check if the type socklen_t is defin
|
||||||
|
AC_DEFUN([AC_C_SOCKLEN_T],
|
||||||
|
[AC_CACHE_CHECK(for socklen_t, ac_cv_c_socklen_t,
|
||||||
|
[
|
||||||
|
- AC_TRY_COMPILE([
|
||||||
|
+ AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[
|
||||||
|
#include <sys/types.h>
|
||||||
|
#include <sys/socket.h>
|
||||||
|
- ],[
|
||||||
|
+ ]], [[
|
||||||
|
socklen_t foo;
|
||||||
|
- ],[
|
||||||
|
+ ]])],[
|
||||||
|
ac_cv_c_socklen_t=yes
|
||||||
|
],[
|
||||||
|
ac_cv_c_socklen_t=no
|
||||||
|
@@ -411,35 +260,6 @@ fi
|
||||||
|
|
||||||
|
AC_C_ENDIAN
|
||||||
|
|
||||||
|
-AC_DEFUN([AC_C_HTONLL],
|
||||||
|
-[
|
||||||
|
- AC_MSG_CHECKING([for htonll])
|
||||||
|
- have_htoll="no"
|
||||||
|
- AC_TRY_LINK([
|
||||||
|
-#include <sys/types.h>
|
||||||
|
-#include <netinet/in.h>
|
||||||
|
-#ifdef HAVE_INTTYPES_H
|
||||||
|
-#include <inttypes.h> */
|
||||||
|
-#endif
|
||||||
|
- ], [
|
||||||
|
- return htonll(0);
|
||||||
|
- ], [
|
||||||
|
- have_htoll="yes"
|
||||||
|
- AC_DEFINE([HAVE_HTONLL], [1], [Have ntohll])
|
||||||
|
- ], [
|
||||||
|
- have_htoll="no"
|
||||||
|
- ])
|
||||||
|
-
|
||||||
|
- AC_MSG_RESULT([$have_htoll])
|
||||||
|
-])
|
||||||
|
-
|
||||||
|
-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)
|
||||||
|
@@ -486,13 +306,13 @@ dnl These were added in 4.1.2, but 32bit
|
||||||
|
dnl lacks testable defines.
|
||||||
|
have_gcc_atomics=no
|
||||||
|
AC_MSG_CHECKING(for GCC atomics)
|
||||||
|
-AC_TRY_LINK([],[
|
||||||
|
+AC_LINK_IFELSE([AC_LANG_PROGRAM([[]], [[
|
||||||
|
unsigned short a;
|
||||||
|
unsigned short b;
|
||||||
|
b = __sync_add_and_fetch(&a, 1);
|
||||||
|
b = __sync_sub_and_fetch(&a, 2);
|
||||||
|
- ],[have_gcc_atomics=yes
|
||||||
|
- AC_DEFINE(HAVE_GCC_ATOMICS, 1, [GCC Atomics available])])
|
||||||
|
+ ]])],[have_gcc_atomics=yes
|
||||||
|
+ AC_DEFINE(HAVE_GCC_ATOMICS, 1, [GCC Atomics available])],[])
|
||||||
|
AC_MSG_RESULT($have_gcc_atomics)
|
||||||
|
|
||||||
|
dnl Check for the requirements for running memcached with less privileges
|
||||||
|
@@ -529,29 +349,5 @@ AM_CONDITIONAL([BUILD_SPECIFICATIONS],
|
||||||
|
[test "x$enable_docs" != "xno" -a "x$XML2RFC" != "xno" -a "x$XSLTPROC" != "xno"])
|
||||||
|
|
||||||
|
|
||||||
|
-dnl Let the compiler be a bit more picky. Please note that you cannot
|
||||||
|
-dnl specify these flags to the compiler before AC_CHECK_FUNCS, because
|
||||||
|
-dnl the test program will generate a compilation warning and hence fail
|
||||||
|
-dnl to detect the function ;-)
|
||||||
|
-if test "$ICC" = "yes"
|
||||||
|
-then
|
||||||
|
- dnl ICC trying to be gcc.
|
||||||
|
- CFLAGS="$CFLAGS -diag-disable 187 -Wall -Werror"
|
||||||
|
- AC_DEFINE([_GNU_SOURCE],[1],[find sigignore on Linux])
|
||||||
|
-elif test "$GCC" = "yes"
|
||||||
|
-then
|
||||||
|
- GCC_VERSION=`$CC -dumpversion`
|
||||||
|
- CFLAGS="$CFLAGS -Wall -Werror -pedantic -Wmissing-prototypes -Wmissing-declarations -Wredundant-decls"
|
||||||
|
- case $GCC_VERSION in
|
||||||
|
- 4.4.*)
|
||||||
|
- CFLAGS="$CFLAGS -fno-strict-aliasing"
|
||||||
|
- ;;
|
||||||
|
- esac
|
||||||
|
- AC_DEFINE([_GNU_SOURCE],[1],[find sigignore on Linux])
|
||||||
|
-elif test "$SUNCC" = "yes"
|
||||||
|
-then
|
||||||
|
- CFLAGS="$CFLAGS -errfmt=error -errwarn -errshort=tags"
|
||||||
|
-fi
|
||||||
|
-
|
||||||
|
AC_CONFIG_FILES(Makefile doc/Makefile)
|
||||||
|
AC_OUTPUT
|
||||||
|
--- Makefile.am.orig
|
||||||
|
+++ Makefile.am
|
||||||
|
@@ -1,3 +1,6 @@
|
||||||
|
+AM_CFLAGS = -pthread -Wall -Wmissing-prototypes -Wmissing-declarations -Wredundant-decls
|
||||||
|
+AM_CPPFLAGS = -include $(top_builddir)/config.h
|
||||||
|
+
|
||||||
|
bin_PROGRAMS = memcached
|
||||||
|
pkginclude_HEADERS = protocol_binary.h
|
||||||
|
noinst_PROGRAMS = memcached-debug sizes testapp timedrun
|
||||||
|
@@ -32,11 +35,12 @@ memcached_SOURCES += sasl_defs.c
|
||||||
|
endif
|
||||||
|
|
||||||
|
memcached_debug_SOURCES = $(memcached_SOURCES)
|
||||||
|
-memcached_CPPFLAGS = -DNDEBUG
|
||||||
|
-memcached_debug_LDADD = @PROFILER_LDFLAGS@
|
||||||
|
-memcached_debug_CFLAGS = @PROFILER_FLAGS@
|
||||||
|
+memcached_CPPFLAGS = $(AM_CPPFLAGS) -DNDEBUG
|
||||||
|
+memcached_debug_LDADD = @PROFILER_LDFLAGS@ $(LIBEVENT_LIBS)
|
||||||
|
+memcached_debug_CFLAGS = @PROFILER_FLAGS@ $(AM_CFLAGS)
|
||||||
|
+memcached_debug_CPPFLAGS = $(AM_CPPFLAGS)
|
||||||
|
|
||||||
|
-memcached_LDADD =
|
||||||
|
+memcached_LDADD = $(LIBEVENT_LIBS)
|
||||||
|
memcached_DEPENDENCIES =
|
||||||
|
memcached_debug_DEPENDENCIES =
|
||||||
|
CLEANFILES=
|
56
memcached-use-endian_h.patch
Normal file
56
memcached-use-endian_h.patch
Normal file
@ -0,0 +1,56 @@
|
|||||||
|
--- util.c.orig
|
||||||
|
+++ util.c
|
||||||
|
@@ -115,30 +115,3 @@ void vperror(const char *fmt, ...) {
|
||||||
|
perror(buf);
|
||||||
|
}
|
||||||
|
|
||||||
|
-#ifndef HAVE_HTONLL
|
||||||
|
-static uint64_t mc_swap64(uint64_t in) {
|
||||||
|
-#ifdef ENDIAN_LITTLE
|
||||||
|
- /* Little endian, flip the bytes around until someone makes a faster/better
|
||||||
|
- * way to do this. */
|
||||||
|
- int64_t rv = 0;
|
||||||
|
- int i = 0;
|
||||||
|
- for(i = 0; i<8; i++) {
|
||||||
|
- rv = (rv << 8) | (in & 0xff);
|
||||||
|
- in >>= 8;
|
||||||
|
- }
|
||||||
|
- return rv;
|
||||||
|
-#else
|
||||||
|
- /* big-endian machines don't need byte swapping */
|
||||||
|
- return in;
|
||||||
|
-#endif
|
||||||
|
-}
|
||||||
|
-
|
||||||
|
-uint64_t ntohll(uint64_t val) {
|
||||||
|
- return mc_swap64(val);
|
||||||
|
-}
|
||||||
|
-
|
||||||
|
-uint64_t htonll(uint64_t val) {
|
||||||
|
- return mc_swap64(val);
|
||||||
|
-}
|
||||||
|
-#endif
|
||||||
|
-
|
||||||
|
--- util.h.orig
|
||||||
|
+++ util.h
|
||||||
|
@@ -7,15 +7,16 @@
|
||||||
|
*
|
||||||
|
* returns true if conversion succeeded.
|
||||||
|
*/
|
||||||
|
+
|
||||||
|
+#include <endian.h>
|
||||||
|
+
|
||||||
|
bool safe_strtoull(const char *str, uint64_t *out);
|
||||||
|
bool safe_strtoll(const char *str, int64_t *out);
|
||||||
|
bool safe_strtoul(const char *str, uint32_t *out);
|
||||||
|
bool safe_strtol(const char *str, int32_t *out);
|
||||||
|
|
||||||
|
-#ifndef HAVE_HTONLL
|
||||||
|
-extern uint64_t htonll(uint64_t);
|
||||||
|
-extern uint64_t ntohll(uint64_t);
|
||||||
|
-#endif
|
||||||
|
+#define htonll(x) htobe64(x)
|
||||||
|
+#define ntohll(x) be64toh(x)
|
||||||
|
|
||||||
|
#ifdef __GCC
|
||||||
|
# define __gcc_attribute__ __attribute__
|
@ -1,3 +1,17 @@
|
|||||||
|
-------------------------------------------------------------------
|
||||||
|
Tue Aug 14 02:50:12 UTC 2012 - crrodriguez@opensuse.org
|
||||||
|
|
||||||
|
- Update to version 1.4.14
|
||||||
|
* Avoid race condition in test during pid creation by blind retrying
|
||||||
|
* Fixed issue with invalid binary protocol touch command expiration time
|
||||||
|
|
||||||
|
- If the test suite fails, package must fail build.
|
||||||
|
|
||||||
|
- Use byteswapping macros from endian.h and not some ad-hoc/slow
|
||||||
|
function.
|
||||||
|
|
||||||
|
- Add systemd units.
|
||||||
|
|
||||||
-------------------------------------------------------------------
|
-------------------------------------------------------------------
|
||||||
Tue Apr 3 00:54:39 UTC 2012 - tabraham@novell.com
|
Tue Apr 3 00:54:39 UTC 2012 - tabraham@novell.com
|
||||||
|
|
||||||
|
@ -179,7 +179,7 @@ case "$1" in
|
|||||||
echo -n "Starting memcached "
|
echo -n "Starting memcached "
|
||||||
## Start daemon with startproc(8). If this fails
|
## Start daemon with startproc(8). If this fails
|
||||||
## the return value is set appropriately by startproc.
|
## the return value is set appropriately by startproc.
|
||||||
startproc -u $MEMCACHED_USER -g $MEMCACHED_GROUP $MEMCACHED_BIN $MEMCACHED_PARAMS
|
startproc -u $MEMCACHED_USER -g $MEMCACHED_GROUP $MEMCACHED_BIN -d $MEMCACHED_PARAMS
|
||||||
|
|
||||||
# Remember status and be verbose
|
# Remember status and be verbose
|
||||||
rc_status -v
|
rc_status -v
|
||||||
|
12
memcached.service
Normal file
12
memcached.service
Normal file
@ -0,0 +1,12 @@
|
|||||||
|
[Unit]
|
||||||
|
Description=memcached daemon
|
||||||
|
After=network.target
|
||||||
|
|
||||||
|
[Service]
|
||||||
|
User= memcached
|
||||||
|
Group= memcached
|
||||||
|
EnvironmentFile=/etc/sysconfig/memcached
|
||||||
|
ExecStart=/usr/sbin/memcached $MEMCACHED_PARAMS
|
||||||
|
|
||||||
|
[Install]
|
||||||
|
WantedBy=multi-user.target
|
@ -15,17 +15,13 @@
|
|||||||
# Please submit bugfixes or comments via http://bugs.opensuse.org/
|
# Please submit bugfixes or comments via http://bugs.opensuse.org/
|
||||||
#
|
#
|
||||||
|
|
||||||
# norootforbuild
|
|
||||||
|
|
||||||
|
|
||||||
Name: memcached
|
Name: memcached
|
||||||
Version: 1.4.13
|
Version: 1.4.14
|
||||||
Release: 0
|
Release: 0
|
||||||
%define pkg_name memcached
|
%define pkg_name memcached
|
||||||
%define pkg_version %{version}
|
%define pkg_version %{version}
|
||||||
#
|
#
|
||||||
License: BSD-3-Clause
|
|
||||||
Group: Productivity/Networking/Other
|
|
||||||
#
|
#
|
||||||
BuildRoot: %{_tmppath}/%{name}-%{version}-build
|
BuildRoot: %{_tmppath}/%{name}-%{version}-build
|
||||||
%if 0%{?suse_version} > 1100
|
%if 0%{?suse_version} > 1100
|
||||||
@ -33,20 +29,30 @@ BuildRequires: libevent-devel
|
|||||||
%else
|
%else
|
||||||
BuildRequires: libevent
|
BuildRequires: libevent
|
||||||
%endif
|
%endif
|
||||||
|
BuildRequires: automake
|
||||||
|
BuildRequires: cyrus-sasl-devel
|
||||||
|
BuildRequires: pkgconfig
|
||||||
|
BuildRequires: systemd
|
||||||
PreReq: %insserv_prereq %fillup_prereq /usr/sbin/groupadd /usr/sbin/useradd
|
PreReq: %insserv_prereq %fillup_prereq /usr/sbin/groupadd /usr/sbin/useradd
|
||||||
Conflicts: memcached-unstable
|
Conflicts: memcached-unstable
|
||||||
%define home_dir /var/lib/%{pkg_name}
|
%define home_dir /var/lib/%{pkg_name}
|
||||||
#
|
#
|
||||||
Url: http://memcached.org/
|
Url: http://memcached.org/
|
||||||
# http://memcached.googlecode.com/files/memcached-1.4.5.tar.gz
|
# http://memcached.googlecode.com/files/memcached-1.4.5.tar.gz
|
||||||
Source: %{pkg_name}-%{pkg_version}.tar.bz2
|
Source: %{pkg_name}-%{pkg_version}.tar.gz
|
||||||
Source1: %{pkg_name}.init
|
Source1: %{pkg_name}.init
|
||||||
Source2: %{pkg_name}.sysconfig
|
Source2: %{pkg_name}.sysconfig
|
||||||
Source3: memcached-rpmlintrc
|
Source3: memcached-rpmlintrc
|
||||||
|
Source4: memcached.service
|
||||||
#
|
#
|
||||||
Patch0: memcached-1.4.5.dif
|
Patch0: memcached-1.4.5.dif
|
||||||
|
Patch1: memcached-autofoo.patch
|
||||||
|
Patch2: memcached-use-endian_h.patch
|
||||||
#
|
#
|
||||||
Summary: A high-performance, distributed memory object caching system
|
Summary: A high-performance, distributed memory object caching system
|
||||||
|
License: BSD-3-Clause
|
||||||
|
Group: Productivity/Networking/Other
|
||||||
|
%{?systemd_requires}
|
||||||
|
|
||||||
%description
|
%description
|
||||||
Memcached is a high-performance, distributed memory object caching
|
Memcached is a high-performance, distributed memory object caching
|
||||||
@ -62,46 +68,51 @@ resource utilization, and faster access to the databases on a memcache
|
|||||||
miss.
|
miss.
|
||||||
|
|
||||||
%prep
|
%prep
|
||||||
%setup -n %{pkg_name}-%{pkg_version}
|
%setup -q -n %{pkg_name}-%{pkg_version}
|
||||||
%patch0
|
%patch0
|
||||||
|
%patch1
|
||||||
|
%patch2
|
||||||
|
|
||||||
%build
|
%build
|
||||||
export CFLAGS="%{optflags} -g"
|
autoreconf -fiv
|
||||||
%configure --bindir=%{_sbindir}
|
%configure --enable-sasl --disable-coverage --bindir=%{_sbindir}
|
||||||
sed -i 's/-Werror/ /' Makefile
|
|
||||||
%{__make}
|
make %{?_smp_mflags}
|
||||||
|
|
||||||
%check
|
%check
|
||||||
%{__make} test || true
|
%{__make} test
|
||||||
|
|
||||||
%install
|
%install
|
||||||
%makeinstall
|
%make_install
|
||||||
%{__install} -D -m 0755 scripts/memcached-tool %{buildroot}%{_sbindir}/memcached-tool
|
%{__install} -D -m 0755 scripts/memcached-tool %{buildroot}%{_sbindir}/memcached-tool
|
||||||
%{__install} -Dd -m 0755 %{buildroot}%{home_dir}
|
%{__install} -Dd -m 0755 %{buildroot}%{home_dir}
|
||||||
%{__install} -D -m 0755 %{S:1} %{buildroot}%{_sysconfdir}/init.d/%{pkg_name}
|
%{__install} -D -m 0755 %{S:1} %{buildroot}%{_sysconfdir}/init.d/%{pkg_name}
|
||||||
%{__ln_s} -f ../..%{_sysconfdir}/init.d/%{pkg_name} %{buildroot}%{_sbindir}/rc%{pkg_name}
|
%{__ln_s} -f ../..%{_sysconfdir}/init.d/%{pkg_name} %{buildroot}%{_sbindir}/rc%{pkg_name}
|
||||||
%{__install} -D -m 0644 %{S:2} %{buildroot}/var/adm/fillup-templates/sysconfig.%{pkg_name}
|
%{__install} -D -m 0644 %{S:2} %{buildroot}/var/adm/fillup-templates/sysconfig.%{pkg_name}
|
||||||
|
%{__install} -D -m 0644 %{S:4} %{buildroot}%{_unitdir}/%{pkg_name}.service
|
||||||
%clean
|
%clean
|
||||||
%{__rm} -rf %{buildroot};
|
%{__rm} -rf %{buildroot};
|
||||||
|
|
||||||
%pre
|
%pre
|
||||||
/usr/sbin/groupadd -r %{pkg_name} &>/dev/null || :
|
/usr/sbin/groupadd -r %{pkg_name} &>/dev/null || :
|
||||||
/usr/sbin/useradd -o -g %{pkg_name} -s /bin/false -r -c "user for %{pkg_name}" -d %{home_dir} %{pkg_name} &>/dev/null || :
|
/usr/sbin/useradd -o -g %{pkg_name} -s /bin/false -r -c "user for %{pkg_name}" -d %{home_dir} %{pkg_name} &>/dev/null || :
|
||||||
|
%service_add_pre %{pkg_name}.service
|
||||||
|
|
||||||
%post
|
%post
|
||||||
%fillup_and_insserv %{pkg_name}
|
%fillup_and_insserv %{pkg_name}
|
||||||
|
%service_add_post %{pkg_name}.service
|
||||||
%preun
|
%preun
|
||||||
%stop_on_removal %{pkg_name}
|
%stop_on_removal %{pkg_name}
|
||||||
|
%service_del_preun %{pkg_name}.service
|
||||||
|
|
||||||
%postun
|
%postun
|
||||||
%restart_on_update %{pkg_name}
|
%restart_on_update %{pkg_name}
|
||||||
%{insserv_cleanup}
|
%{insserv_cleanup}
|
||||||
|
%service_del_postun %{pkg_name}.service
|
||||||
|
|
||||||
%files
|
%files
|
||||||
%defattr(-,root,root)
|
%defattr(-,root,root)
|
||||||
%doc AUTHORS ChangeLog COPYING NEWS README doc/*.txt
|
%doc AUTHORS ChangeLog COPYING NEWS doc/*.txt
|
||||||
%{_sbindir}/%{pkg_name}
|
%{_sbindir}/%{pkg_name}
|
||||||
# %{_sbindir}/%{pkg_name}-debug
|
# %{_sbindir}/%{pkg_name}-debug
|
||||||
%{_sbindir}/memcached-tool
|
%{_sbindir}/memcached-tool
|
||||||
@ -111,5 +122,6 @@ sed -i 's/-Werror/ /' Makefile
|
|||||||
%{_includedir}/%{pkg_name}
|
%{_includedir}/%{pkg_name}
|
||||||
/var/adm/fillup-templates/sysconfig.%{pkg_name}
|
/var/adm/fillup-templates/sysconfig.%{pkg_name}
|
||||||
%dir %attr(755,root,root) %{home_dir}
|
%dir %attr(755,root,root) %{home_dir}
|
||||||
|
%{_unitdir}/%{pkg_name}.service
|
||||||
|
|
||||||
%changelog
|
%changelog
|
||||||
|
@ -8,7 +8,7 @@
|
|||||||
#
|
#
|
||||||
# see man 1 memcached for more
|
# see man 1 memcached for more
|
||||||
#
|
#
|
||||||
MEMCACHED_PARAMS="-d -l 127.0.0.1"
|
MEMCACHED_PARAMS="-l 127.0.0.1"
|
||||||
|
|
||||||
## Path: Network/WWW/Memcached
|
## Path: Network/WWW/Memcached
|
||||||
## Description: username memcached should run as
|
## Description: username memcached should run as
|
||||||
|
Loading…
x
Reference in New Issue
Block a user