memcached/memcached.spec
Cristian Rodríguez 51165b2fa3 Accepting request 700058 from home:pgajdos
- version update to 1.5.14
  * update -h output for -I (max item size)
  * fix segfault in "lru" command
  * fix compile error on centos7
  * extstore: error adjusting page_size after ext_path
  * extstore: fix segfault if page_count is too high.
  * close delete + incr item survival race bug
  * memcached-tool dump fix loss of exp value
  * Fix "qw" in "MemcachedTest.pm" so wait_ext_flush is exported properly
  * Experimental TLS support.
  * Basic implementation of TLS for memcached.
  * Improve Get And Touch documentation
  * fix INCR/DECR refcount leak for invalid items
- modified patches
  % memcached-autofoo.patch (refreshed)

OBS-URL: https://build.opensuse.org/request/show/700058
OBS-URL: https://build.opensuse.org/package/show/network:utilities/memcached?expand=0&rev=65
2019-05-06 14:42:38 +00:00

166 lines
4.8 KiB
RPMSpec

#
# spec file for package memcached
#
# Copyright (c) 2019 SUSE LINUX GmbH, Nuernberg, Germany.
#
# All modifications and additions to the file contributed by third parties
# remain the property of their copyright owners, unless otherwise agreed
# upon. The license for this file, and modifications and additions to the
# file, is the same license as for the pristine package itself (unless the
# license for the pristine package is not an Open Source License, in which
# case the license is the MIT License). An "Open Source License" is a
# license that conforms to the Open Source Definition (Version 1.9)
# published by the Open Source Initiative.
# Please submit bugfixes or comments via https://bugs.opensuse.org/
#
#Compat macro for new _fillupdir macro introduced in Nov 2017
%if ! %{defined _fillupdir}
%define _fillupdir %{_localstatedir}/adm/fillup-templates
%endif
Name: memcached
Version: 1.5.14
Release: 0
Summary: A high-performance, distributed memory object caching system
License: BSD-3-Clause
Group: Productivity/Networking/Other
URL: http://memcached.org/
Source: http://www.memcached.org/files/%{name}-%{version}.tar.gz
Source1: %{name}.init
Source2: %{name}.sysconfig
Source3: memcached-rpmlintrc
Source4: memcached.service
Patch0: memcached-1.4.5.dif
Patch1: memcached-autofoo.patch
Patch2: memcached-use-endian_h.patch
BuildRequires: autoconf
BuildRequires: automake
BuildRequires: cyrus-sasl-devel
BuildRequires: libevent-devel
BuildRequires: libtool
BuildRequires: pkgconfig
Requires(pre): %fillup_prereq
Requires(pre): %{_sbindir}/groupadd
Requires(pre): %{_sbindir}/useradd
Conflicts: memcached-unstable
%if 0%{?suse_version} > 1210
BuildRequires: systemd-rpm-macros
%{?systemd_requires}
%else
Requires(pre): %insserv_prereq
%endif
%description
Memcached is a high-performance, distributed memory object caching
system, generic in nature, but intended for use in speeding up dynamic
web applications by alleviating database load.
Danga Interactive developed memcached to enhance the speed of
LiveJournal.com, a site which was already doing 20 million+ dynamic
page views per day for 1 million users with a bunch of webservers and a
bunch of database servers. memcached dropped the database load to
almost nothing, yielding faster page load times for users, better
resource utilization, and faster access to the databases on a memcache
miss.
%package devel
Summary: Files needed for development using memcached protocol
Group: Development/Libraries/C and C++
Requires: %{name} = %{version}
%description devel
Memcached is a high-performance, distributed memory object caching
system, generic in nature, but intended for use in speeding up dynamic
web applications by alleviating database load.
This package contains development files
%prep
%setup -q
%patch0
%patch1
%patch2
%build
autoreconf -fi
%if 0%{?suse_version} <= 1140
export LIBEVENT_CFLAGS="-I%{_includedir}"
export LIBEVENT_LIBS="-levent"
%endif
%configure \
--enable-sasl \
--disable-coverage \
--bindir=%{_sbindir}
make %{?_smp_mflags}
%install
%make_install
install -D -m 0755 scripts/memcached-tool %{buildroot}%{_sbindir}/memcached-tool
install -Dd -m 0751 %{buildroot}%{_localstatedir}/lib/%{name}
install -D -m 0644 %{SOURCE2} %{buildroot}%{_fillupdir}/sysconfig.%{name}
%if 0%{?suse_version} > 1210
ln -s %{_sbindir}/service %{buildroot}%{_sbindir}/rc%{name}
install -D -m 0644 %{SOURCE4} %{buildroot}%{_unitdir}/%{name}.service
%else
install -D -m 0755 %{SOURCE1} %{buildroot}%{_sysconfdir}/init.d/%{name}
ln -s ../..%{_sysconfdir}/init.d/%{name} %{buildroot}%{_sbindir}/rc%{name}
%endif
%check
make %{?_smp_mflags} test
%pre
%{_sbindir}/groupadd -r %{name} >/dev/null 2>&1 || :
%{_sbindir}/useradd -g %{name} -s /bin/false -r -c "user for %{name}" -d %{_localstatedir}/lib/%{name} %{name} >/dev/null 2>&1 || :
%if 0%{?suse_version} > 1210
%service_add_pre %{name}.service
%endif
%post
%if 0%{?suse_version} > 1210
%service_add_post %{name}.service
%fillup_only %{name}
%else
%fillup_and_insserv %{name}
%endif
%preun
%if 0%{?suse_version} > 1210
%service_del_preun %{name}.service
%else
%stop_on_removal %{name}
%endif
%postun
%if 0%{?suse_version} > 1210
%service_del_postun %{name}.service
%else
%restart_on_update %{name}
%insserv_cleanup
%endif
%files
%doc AUTHORS ChangeLog NEWS
%license COPYING
%{_sbindir}/%{name}
%{_sbindir}/memcached-tool
%{_sbindir}/rc%{name}
%{_mandir}/man1/%{name}.*
%if 0%{?suse_version} > 1210
%{_unitdir}/%{name}.service
%else
%{_sysconfdir}/init.d/%{name}
%endif
%{_fillupdir}/sysconfig.%{name}
%dir %attr(751,root,root) %{_localstatedir}/lib/%{name}
%files devel
%doc AUTHORS ChangeLog NEWS doc/*.txt
%license COPYING
%{_includedir}/%{name}
%changelog