diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..ead2c97 --- /dev/null +++ b/.gitignore @@ -0,0 +1 @@ +SOURCES/libmemcached-1.0.18-exhsieh.tar.gz diff --git a/.libmemcached.metadata b/.libmemcached.metadata new file mode 100644 index 0000000..ab3d69d --- /dev/null +++ b/.libmemcached.metadata @@ -0,0 +1 @@ +be53b01d126d901bae35425d9db60e5dfc85bbe9 SOURCES/libmemcached-1.0.18-exhsieh.tar.gz diff --git a/SOURCES/libmemcached-build.patch b/SOURCES/libmemcached-build.patch new file mode 100644 index 0000000..df58c9f --- /dev/null +++ b/SOURCES/libmemcached-build.patch @@ -0,0 +1,21 @@ +diff -up ./clients/memflush.cc.old ./clients/memflush.cc +--- ./clients/memflush.cc.old 2017-02-12 10:12:59.615209225 +0100 ++++ ./clients/memflush.cc 2017-02-12 10:13:39.998382783 +0100 +@@ -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/SOURCES/libmemcached-fix-linking-with-libpthread.patch b/SOURCES/libmemcached-fix-linking-with-libpthread.patch new file mode 100644 index 0000000..e5e21c4 --- /dev/null +++ b/SOURCES/libmemcached-fix-linking-with-libpthread.patch @@ -0,0 +1,19 @@ +diff -up libmemcached-1.0.16/build-aux/ltmain.sh.orig libmemcached-1.0.16/build-aux/ltmain.sh +--- libmemcached-1.0.16/build-aux/ltmain.sh.orig 2013-12-03 16:36:53.222107642 +0100 ++++ libmemcached-1.0.16/build-aux/ltmain.sh 2013-12-03 16:37:35.770132249 +0100 +@@ -5664,6 +5664,15 @@ func_mode_link () + *" $arg "*) ;; + * ) func_append new_inherited_linker_flags " $arg" ;; + esac ++ # As we are forced to pass -nostdlib to g++ during linking, the option ++ # -pthread{,s} is not in effect; add the -lpthread to $deplist ++ # explicitly to link correctly. ++ if test "$tagname" = CXX -a x"$with_gcc" = xyes; then ++ case "$arg" in ++ -pthread*) func_append deplibs " -lpthread" ;; ++ esac ++ fi ++ + continue + ;; + diff --git a/SOURCES/libmemcached-memaslap-man.patch b/SOURCES/libmemcached-memaslap-man.patch new file mode 100644 index 0000000..b651f33 --- /dev/null +++ b/SOURCES/libmemcached-memaslap-man.patch @@ -0,0 +1,173 @@ +commit 0a20d6ba4610941c4834b33d1598b546745ad8e8 +Author: Tomas Korbar +Date: Mon Oct 11 12:26:45 2021 +0200 + + Fix typo in memaslap manpage + +diff --git a/man/memaslap.1 b/man/memaslap.1 +index 1f41484..e884381 100644 +--- a/man/memaslap.1 ++++ b/man/memaslap.1 +@@ -83,11 +83,11 @@ the threads don\(aqt communicate with each other, and there are several socket + connections in each thread. Each connection keeps key size distribution, + value size distribution, and command distribution by itself. + .sp +-You can specify servers via the \fImemslap \-\-servers\fP option or via the ++You can specify servers via the \fImemaslap \-\-servers\fP option or via the + environment variable \fI\%MEMCACHED_SERVERS\fP\&. + .SH FEATURES + .sp +-Memslap is developed to for the following purposes: ++Memaslap is developed to for the following purposes: + .sp + Manages network connections with libevent asynchronously. + .sp +@@ -121,8 +121,8 @@ of memaslap is similar to memcached. Libevent can ensure + memaslap can handle network very efficiently. + .SS Effective implementation of multi\-threads and concurrency + .sp +-Memslap has the similar implementation of multi\-threads to +-memcached. Memslap creates one or more self\-governed threads; ++Memaslap has the similar implementation of multi\-threads to ++memcached. Memaslap creates one or more self\-governed threads; + each thread is bound with one CPU core if the system testss setting CPU + core affinity. + .sp +@@ -131,7 +131,7 @@ each thread has one or more self\-governed concurrencies; and each + concurrency has one or more socket connections. All the concurrencies don’t + communicate with each other even though they are in the same thread. + .sp +-Memslap can create thousands of socket connections, and each ++Memaslap can create thousands of socket connections, and each + concurrency has tens of socket connections. Each concurrency randomly or + sequentially selects one socket connection from its socket connection pool + to run, so memaslap can ensure each concurrency handles one +@@ -144,7 +144,7 @@ In order to improve time efficiency and space efficiency, + memaslap creates a random characters table with 10M characters. All the + suffixes of keys and values are generated from this random characters table. + .sp +-Memslap uses the offset in the character table and the length ++Memaslap uses the offset in the character table and the length + of the string to identify a string. It can save much memory. + Each key contains two parts, a prefix and a suffix. The prefix is an + uint64_t, 8 bytes. In order to verify the data set before, +@@ -152,7 +152,7 @@ memaslap need to ensure each key is unique, so it uses the prefix to identify + a key. The prefix cannot include illegal characters, such as ‘r’, ‘n’, + ‘0’ and ‘ ‘. And memaslap has an algorithm to ensure that. + .sp +-Memslap doesn’t generate all the objects (key\-value pairs) at ++Memaslap doesn’t generate all the objects (key\-value pairs) at + the beginning. It only generates enough objects to fill the task window + (default 10K objects) of each concurrency. Each object has the following + basic information, key prefix, key suffix offset in the character table, key +@@ -164,16 +164,16 @@ time, each concurrency kicks objects out of its window and adds new object + into it. + .SS Simple but useful task scheduling + .sp +-Memslap uses libevent to schedule all the concurrencies of ++Memaslap uses libevent to schedule all the concurrencies of + threads, and each concurrency schedules tasks based on the local task +-window. Memslap assumes that if each concurrency keeps the same ++window. Memaslap assumes that if each concurrency keeps the same + key distribution, value distribution and commands distribution, from + outside, memaslap keeps all the distribution as a whole. + Each task window includes a lot of objects, each object stores its basic + information, such as key, value, expire time, and so on. At any time, all + the objects in the window keep the same and fixed key and value + distribution. If an object is overwritten, the value of the object will be +-updated. Memslap verifies the data or expire\-time according to ++updated. Memaslap verifies the data or expire\-time according to + the object information stored in the task window. + .sp + Libevent selects which concurrency to handle based on a specific network +@@ -201,16 +201,16 @@ test. Each concurrency has one socket connection to each memcached server. + For the implementation, memaslap can set some objects to one + memcached server, and get these objects from the other servers. + .sp +-By default, Memslap does single get. If the user specifies ++By default, Memaslap does single get. If the user specifies + multi\-get option, memaslap will collect enough get commands and + pack and send the commands together. + .sp +-Memslap testss both the ASCII protocol and binary protocol, ++Memaslap testss both the ASCII protocol and binary protocol, + but it runs on the ASCII protocol by default. +-Memslap by default runs on the TCP protocol, but it also ++Memaslap by default runs on the TCP protocol, but it also + tests UDP. Because UDP is unreliable, dropped packages and out\-of\-order +-packages may occur. Memslap creates a memory buffer to handle +-these problems. Memslap tries to read all the response data of ++packages may occur. Memaslap creates a memory buffer to handle ++these problems. Memaslap tries to read all the response data of + one command from the server and reorders the response data. If some packages + get lost, the waiting timeout mechanism can ensure half\-baked packages will + be discarded and the next command will be sent. +@@ -343,7 +343,7 @@ throughput using “\-\-tps” option. + Most of the time, the user does not need to specify the window size. The + default window size is 10k. For Schooner Memcached, the user can specify + different window sizes to get different cache miss rates based on the test +-case. Memslap testss cache miss rate between 0% and 100%. ++case. Memaslap testss cache miss rate between 0% and 100%. + If you use this utility to test the performance of Schooner Memcached, you + can specify a proper window size to get the expected cache miss rate. The + formula for calculating window size is as follows: +@@ -389,7 +389,7 @@ The formula for calculating window size for cache miss rate 5%: + cache_size / concurrency / (key_size + value_size) * 0.7 + .SS Verification + .sp +-Memslap testss both data verification and expire\-time ++Memaslap testss both data verification and expire\-time + verification. The user can use "\-\-verify=" or "\-v" to specify the proportion + of data verification. In theory, it testss 100% data verification. The + user can use "\-\-exp_verify=" or "\-e" to specify the proportion of +@@ -403,9 +403,9 @@ objects are gotten, memaslap will verify the expire\-time and + value. + .SS multi\-servers and multi\-config + .sp +-Memslap testss multi\-servers based on self\-governed thread. ++Memaslap testss multi\-servers based on self\-governed thread. + There is a limitation that the number of servers cannot be greater than the +-number of threads. Memslap assigns one thread to handle one ++number of threads. Memaslap assigns one thread to handle one + server at least. The user can use the "\-\-servers=" or "\-s" option to specify + multi\-servers. + .sp +@@ -445,17 +445,17 @@ For example: + .sp + \-\-stat_freq=20s + .sp +-Memslap will dump the statistics of the commands (get and set) at the frequency of every 20 ++Memaslap will dump the statistics of the commands (get and set) at the frequency of every 20 + seconds. + .sp + For more information on the format of dumping statistic information, refer to “Format of Output” section. + .SS Multi\-get + .sp + The user can use "\-\-division=" or "\-d" to specify multi\-get keys count. +-Memslap by default does single get with TCP. Memslap also testss data ++Memaslap by default does single get with TCP. Memaslap also testss data + verification and expire\-time verification for multi\-get. + .sp +-Memslap testss multi\-get with both TCP and UDP. Because of ++Memaslap testss multi\-get with both TCP and UDP. Because of + the different implementation of the ASCII protocol and binary protocol, + there are some differences between the two. For the ASCII protocol, + memaslap sends one “multi\-get” to the server once. For the +@@ -463,7 +463,7 @@ binary protocol, memaslap sends several single get commands + together as “multi\-get” to the server. + .SS UDP and TCP + .sp +-Memslap testss both UDP and TCP. For TCP, ++Memaslap testss both UDP and TCP. For TCP, + memaslap does not reconnect the memcached server if socket connections are + lost. If all the socket connections are lost or memcached server crashes, + memaslap will exit. If the user specifies the “\-\-reconnect” +@@ -493,7 +493,7 @@ For example: \-\-facebook \-\-division=50 \-\-conn_sock=200 + The above command means that memaslap will do facebook test, + each concurrency has 200 socket TCP connections and one UDP socket. + .sp +-Memslap sets objects with the TCP socket, and multi\-gets 50 ++Memaslap sets objects with the TCP socket, and multi\-gets 50 + objects once with the UDP socket. + .sp + If you specify "\-\-division=50", the key size must be less that 25 bytes diff --git a/SOURCES/libmemcached-memparse-man.patch b/SOURCES/libmemcached-memparse-man.patch new file mode 100644 index 0000000..ea1e4b1 --- /dev/null +++ b/SOURCES/libmemcached-memparse-man.patch @@ -0,0 +1,12 @@ +diff -up libmemcached-1.0.18/man/memparse.1.memparse-man libmemcached-1.0.18/man/memparse.1 +--- libmemcached-1.0.18/man/memparse.1.memparse-man 2018-07-27 16:20:15.260664733 +0200 ++++ libmemcached-1.0.18/man/memparse.1 2018-07-27 16:20:54.262765065 +0200 +@@ -57,8 +57,6 @@ level margin: \\n[rst2man-indent\\n[rst2 + .\" new: \\n[rst2man-indent\\n[rst2man-indent-level]] + .in \\n[rst2man-indent\\n[rst2man-indent-level]]u + .. +-.sp +-Copies files to a collection of memcached servers + .SH SYNOPSIS + .sp + memparse [options] "option string" diff --git a/SPECS/libmemcached.spec b/SPECS/libmemcached.spec new file mode 100644 index 0000000..a8dba3b --- /dev/null +++ b/SPECS/libmemcached.spec @@ -0,0 +1,425 @@ +# spec file for libmemcached +# +# Copyright (c) 2009-2018 Remi Collet +# License: CC-BY-SA +# http://creativecommons.org/licenses/by-sa/4.0/ +# +# Please, preserve the changelog entries +# +# Lot of tests are broken making test suite unusable +%global with_tests 0%{?_witht_tests:1} +%global with_sasl 1 +%global libname libmemcached + +Name: libmemcached +Summary: Client library and command line tools for memcached server +Version: 1.0.18 +Release: 16%{?dist} +License: BSD +URL: http://libmemcached.org/ +# Original sources: +# http://launchpad.net/libmemcached/1.0/%%{version}/+download/libmemcached-%%{version}.tar.gz +# The source tarball must be repackaged to remove the Hsieh hash +# code, since the license is non-free. When upgrading, download the new +# source tarball, and run "./strip-hsieh.sh " to produce the +# "-exhsieh" tarball. +Source0: %{libname}-%{version}-exhsieh.tar.gz + +BuildRequires: gcc +BuildRequires: gcc-c++ +%if %{with_sasl} +BuildRequires: cyrus-sasl-devel +%endif +BuildRequires: flex +BuildRequires: bison +BuildRequires: python3-sphinx +BuildRequires: memcached +%if 0%{?fedora} >= 12 || 0%{?rhel} >= 6 +BuildRequires: systemtap-sdt-devel +%endif +BuildRequires: libevent-devel + +Provides: bundled(bobjenkins-hash) +Requires: %{name}-libs%{?_isa} = %{version}-%{release} + +Patch0: libmemcached-fix-linking-with-libpthread.patch +# Fix: ISO C++ forbids comparison between pointer and integer [-fpermissive] +# https://bugs.launchpad.net/libmemcached/+bug/1663985 +Patch1: %{libname}-build.patch +# Fix typo in memparse man page +# https://bugs.launchpad.net/libmemcached/+bug/1675762 +Patch2: %{libname}-memparse-man.patch +Patch3: %{libname}-memaslap-man.patch + +%description +libmemcached is a C/C++ client library and tools for the memcached server +(http://memcached.org/). It has been designed to be light on memory +usage, and provide full access to server side methods. + +It also implements several command line tools: + +memaslap Load testing and benchmarking a server +memcapable Checking a Memcached server capibilities and compatibility +memcat Copy the value of a key to standard output +memcp Copy data to a server +memdump Dumping your server +memerror Translate an error code to a string +memexist Check for the existance of a key +memflush Flush the contents of your servers +memparse Parse an option string +memping Test to see if a server is available. +memrm Remove a key(s) from the server +memslap Generate testing loads on a memcached cluster +memstat Dump the stats of your servers to standard output +memtouch Touches a key + + +%package devel +Summary: Header files and development libraries for %{name} +Requires: %{name}%{?_isa} = %{version}-%{release} +Requires: pkgconfig +%if %{with_sasl} +Requires: cyrus-sasl-devel%{?_isa} +%endif + +%description devel +This package contains the header files and development libraries +for %{name}. If you like to develop programs using %{name}, +you will need to install %{name}-devel. + + +%package libs +Summary: %{libname} libraries + +%description libs +This package contains the %{libname} libraries version %{version}. + + +%prep +%setup -q -n %{libname}-%{version} +%patch0 -p1 -b .link +%patch1 -p1 -b .build +%patch2 -p1 -b .memparse-man +%patch3 -p1 -b .memaslap-man + +mkdir examples +cp -p tests/*.{cc,h} examples/ + + +%build +# option --with-memcached=false to disable server binary check (as we don't run test) +%configure \ +%if %{with_tests} + --with-memcached=%{_bindir}/memcached \ +%else + --with-memcached=false \ +%endif +%if %{with_sasl} + --enable-sasl \ +%else + --disable-sasl \ +%endif + --enable-libmemcachedprotocol \ + --enable-memaslap \ + --enable-dtrace \ + --disable-static + +%if 0%{?fedora} < 14 && 0%{?rhel} < 7 +# for warning: unknown option after '#pragma GCC diagnostic' kind +sed -e 's/-Werror//' -i Makefile +%endif + +make %{_smp_mflags} V=1 + + +%install +make install DESTDIR="%{buildroot}" AM_INSTALL_PROGRAM_FLAGS="" + +# Hack: when sphinx-build too old (fedora < 14 and rhel < 7) +# install upstream provided man pages +if [ ! -d %{buildroot}%{_mandir}/man1 ]; then + install -d %{buildroot}%{_mandir}/man1 + install -p -m 644 man/*1 %{buildroot}%{_mandir}/man1 + install -d %{buildroot}%{_mandir}/man3 + install -p -m 644 man/*3 %{buildroot}%{_mandir}/man3 +fi + + +%check +%if %{with_tests} +: Run test suite +make test +%else +: Skip test suite +%endif + + +%files +%{_bindir}/mem* +%exclude %{_libdir}/lib*.la +%{_mandir}/man1/mem* + +%files libs +%license COPYING +%doc AUTHORS README THANKS TODO ChangeLog +%{_libdir}/libhashkit.so.2* +%{_libdir}/libmemcached.so.11* +%{_libdir}/libmemcachedprotocol.so.0* +%{_libdir}/libmemcachedutil.so.2* + +%files devel +%doc examples +%{_includedir}/libmemcached +%{_includedir}/libmemcached-1.0 +%{_includedir}/libhashkit +%{_includedir}/libhashkit-1.0 +%{_includedir}/libmemcachedprotocol-0.0 +%{_includedir}/libmemcachedutil-1.0 +%{_libdir}/libhashkit.so +%{_libdir}/libmemcached.so +%{_libdir}/libmemcachedprotocol.so +%{_libdir}/libmemcachedutil.so +%{_libdir}/pkgconfig/libmemcached.pc +%{_datadir}/aclocal/ax_libmemcached.m4 +%{_mandir}/man3/libmemcached* +%{_mandir}/man3/libhashkit* +%{_mandir}/man3/memcached* +%{_mandir}/man3/hashkit* + + +%changelog +* Mon Oct 11 2021 Tomas Korbar - 1.0.18-16 +- fix typo in memaslap man page +- Resolves: rhbz#2008399 + +* Fri Jul 27 2018 Miroslav Lichvar 1.0.18-15 +- fix typo in memparse man page (#1609312) + +* Mon Jul 09 2018 Charalampos Stratakis - 1.0.18-14 +- Change to python3-sphinx + +* Tue Feb 20 2018 Remi Collet - 1.0.18-13 +- missing BR on C/C++ compilers + +* Thu Feb 15 2018 Remi Collet - 1.0.18-12 +- drop ldconfig scriptlets + +* Wed Feb 07 2018 Fedora Release Engineering - 1.0.18-11 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_28_Mass_Rebuild + +* Thu Aug 03 2017 Fedora Release Engineering - 1.0.18-10 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Binutils_Mass_Rebuild + +* Wed Jul 26 2017 Fedora Release Engineering - 1.0.18-9 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Mass_Rebuild + +* Sun Feb 12 2017 Remi Collet - 1.0.18-8 +- add build patch to fix FTBFS + +* Fri Feb 10 2017 Fedora Release Engineering - 1.0.18-8 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_26_Mass_Rebuild + +* Thu Feb 04 2016 Fedora Release Engineering - 1.0.18-7 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_24_Mass_Rebuild + +* Wed Jun 17 2015 Fedora Release Engineering - 1.0.18-6 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_23_Mass_Rebuild + +* Sat May 02 2015 Kalev Lember - 1.0.18-5 +- Rebuilt for GCC 5 C++11 ABI change + +* Sun Aug 17 2014 Fedora Release Engineering - 1.0.18-4 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_21_22_Mass_Rebuild + +* Sat Jun 07 2014 Fedora Release Engineering - 1.0.18-3 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_21_Mass_Rebuild + +* Wed Feb 19 2014 Remi Collet - 1.0.18-2 +- cleanups + +* Wed Feb 19 2014 Remi Collet - 1.0.18-1 +- update to 1.0.18 +- disable test suite (too much broken tests) + +* Sat Dec 14 2013 Remi Collet - 1.0.16-2 +- move libraries in new libs sub packages +- add provides for bundled(bobjenkins-hash) #1041351 +- apply libpthread workaround #1037707 +- spec cleanups + +* Tue Dec 03 2013 Ruben Kerkhof 1.0.16-2 +- Fix linking against libpthread as a workaround for libtool bug #661333 + +* Mon Aug 5 2013 Remi Collet - 1.0.16-1 +- revert to 1.0.16 for fedora 20 + +* Mon Aug 5 2013 Remi Collet - 1.0.17-2 +- fix BR, libasan don't exist on all arch +- disable all sanitize options (only for dev) + +* Sat Aug 03 2013 Fedora Release Engineering - 1.0.17-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_20_Mass_Rebuild + +* Thu Apr 4 2013 Remi Collet - 1.0.17-1 +- update to 1.0.17 +- fix option --with-memcached and report regression + https://bugs.launchpad.net/libmemcached/+bug/1164440 +- broken build when -fsanitize=thread available + https://bugs.launchpad.net/libmemcached/+bug/1164442 + +* Mon Feb 4 2013 Remi Collet - 1.0.16-1 +- update to 1.0.16 +- ignore test result for memaslap (XFAIL but PASS) + https://bugs.launchpad.net/libmemcached/+bug/1115357 + +* Sat Dec 29 2012 Remi Collet - 1.0.15-1 +- update to 1.0.15 +- libmemcachedprotocol is back +- add memaslap command line tool +- report various issues to upstream + https://bugs.launchpad.net/libmemcached/+bug/1094413 (libevent) + https://bugs.launchpad.net/libmemcached/+bug/1094414 (c99 MODE) + +* Sat Nov 17 2012 Remi Collet - 1.0.14-1 +- update to 1.0.14 +- libmemcachedprotocol removed +- sasl support is back +- run test during build +- report various issues to upstream + https://bugs.launchpad.net/libmemcached/+bug/1079994 (bigendian) + https://bugs.launchpad.net/libmemcached/+bug/1079995 (config.h) + https://bugs.launchpad.net/libmemcached/+bug/1079996 (dtrace) + https://bugs.launchpad.net/libmemcached/+bug/1079997 (-ldl) + https://bugs.launchpad.net/libmemcached/+bug/1080000 (touch) + +* Sat Oct 20 2012 Remi Collet - 1.0.13-1 +- update to 1.0.13 + +* Fri Oct 19 2012 Remi Collet - 1.0.12-2 +- temporary hack: fix LIBMEMCACHED_VERSION_HEX value + +* Thu Oct 11 2012 Remi Collet - 1.0.12-1 +- update to 1.0.12 +- add aclocal/ax_lib_libmemcached.m4 +- abi-compliance-checker verdict : Compatible +- uggly hack for man pages + +* Tue Sep 25 2012 Karsten Hopp 1.0.11-2 +- fix defined but not used variable error on bigendian machines + +* Sat Sep 22 2012 Remi Collet - 1.0.11-1 +- update to 1.0.11, soname bump to libmemcached.so.11 +- drop broken SASL support +- don't generate parser (bison 2.6 not supported) + +* Thu Jul 19 2012 Fedora Release Engineering - 1.0.8-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_18_Mass_Rebuild + +* Sun May 27 2012 Remi Collet - 1.0.8-1 +- update to 1.0.8 + +* Sun Apr 22 2012 Remi Collet - 1.0.7-1 +- update to 1.0.7 +- regenerate parser using flex/bison (#816766) + +* Sun Apr 22 2012 Remi Collet - 1.0.6-2 +- workaround for SASL detection + +* Sat Apr 21 2012 Remi Collet - 1.0.6-1 +- update to 1.0.6 +- soname bump to libmemcached.so.10 and libhashkit.so.2 + +* Sat Mar 03 2012 Remi Collet - 1.0.4-1 +- update to 1.0.4 +- soname bump to libmemcached.so.9 +- update description + +* Tue Feb 28 2012 Fedora Release Engineering - 1.0.2-3 +- Rebuilt for c++ ABI breakage + +* Fri Jan 13 2012 Fedora Release Engineering - 1.0.2-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_17_Mass_Rebuild + +* Thu Oct 27 2011 Remi Collet - 1.0.2-1 +- update to 1.0.2 + +* Sun Oct 16 2011 Remi Collet - 0.53-1 +- update to 0.53 + +* Sat Sep 17 2011 Remi Collet - 0.52-1 +- update to 0.52 + +* Sun Jul 31 2011 Remi Collet - 0.51-1 +- update to 0.51 (soname bump libmemcached.so.8) + +* Thu Jun 02 2011 Remi Collet - 0.49-1 +- update to 0.49 +- add build option : --with tests + +* Mon Feb 28 2011 Remi Collet - 0.47-1 +- update to 0.47 +- remove patch merged upstream + +* Sun Feb 20 2011 Remi Collet - 0.46-2 +- patch Makefile.in instead of include.am (to avoid autoconf) +- donc requires pkgconfig with arch + +* Fri Feb 18 2011 Remi Collet - 0.46-1 +- update to 0.46 + +* Sat Feb 12 2011 Remi Collet - 0.44-6 +- arch specific requires + +* Tue Feb 08 2011 Fedora Release Engineering - 0.44-5 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_15_Mass_Rebuild + +* Wed Nov 24 2010 Joe Orton - 0.44-4 +- repackage source tarball to remove non-free Hsieh hash code + +* Sat Oct 02 2010 Remi Collet - 0.44-3 +- improves SASL patch + +* Sat Oct 02 2010 Remi Collet - 0.44-2 +- enable SASL support + +* Fri Oct 01 2010 Remi Collet - 0.44-1 +- update to 0.44 +- add soname version in %%file to detect change + +* Fri Jul 30 2010 Remi Collet - 0.43-1 +- update to 0.43 + +* Wed Jul 07 2010 Remi Collet - 0.42-1 +- update to 0.42 + +* Tue May 04 2010 Remi Collet - 0.40-1 +- update to 0.40 (new soname for libmemcached.so.5) +- new URI (site + source) + +* Sat Mar 13 2010 Remi Collet - 0.38-1 +- update to 0.38 + +* Sat Feb 06 2010 Remi Collet - 0.37-1 +- update to 0.37 (soname bump) +- new libhashkit (should be a separated project in the futur) + +* Sun Sep 13 2009 Remi Collet - 0.31-1 +- update to 0.31 + +* Fri Jul 24 2009 Fedora Release Engineering - 0.30-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_12_Mass_Rebuild + +* Sun Jun 14 2009 Remi Collet - 0.30-1 +- update to 0.30 + +* Tue May 19 2009 Remi Collet - 0.29-1 +- update to 0.29 + +* Fri May 01 2009 Remi Collet - 0.28-2 +- add upstream patch to disable nonfree hsieh hash method + +* Sat Apr 25 2009 Remi Collet - 0.28-1 +- Initial RPM from Brian Aker spec +- create -devel subpackage +- add %%post %%postun %%check section +