dalli_memcached 1.8.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (209) hide show
  1. data/BENCHMARKS +142 -0
  2. data/CHANGELOG +176 -0
  3. data/Gemfile +11 -0
  4. data/Gemfile.lock +45 -0
  5. data/LICENSE +184 -0
  6. data/Manifest +209 -0
  7. data/README.rdoc +124 -0
  8. data/Rakefile +134 -0
  9. data/TODO +1 -0
  10. data/dalli_memcached.gemspec +0 -0
  11. data/ext/extconf-make.rb +25 -0
  12. data/ext/extconf.rb +78 -0
  13. data/ext/libmemcached-0.32/AUTHORS +7 -0
  14. data/ext/libmemcached-0.32/COPYING +32 -0
  15. data/ext/libmemcached-0.32/ChangeLog +303 -0
  16. data/ext/libmemcached-0.32/INSTALL +302 -0
  17. data/ext/libmemcached-0.32/Makefile.am +36 -0
  18. data/ext/libmemcached-0.32/Makefile.in +911 -0
  19. data/ext/libmemcached-0.32/NEWS +1 -0
  20. data/ext/libmemcached-0.32/README +33 -0
  21. data/ext/libmemcached-0.32/THANKS +14 -0
  22. data/ext/libmemcached-0.32/TODO +11 -0
  23. data/ext/libmemcached-0.32/aclocal.m4 +2108 -0
  24. data/ext/libmemcached-0.32/clients/Makefile.am +80 -0
  25. data/ext/libmemcached-0.32/clients/Makefile.in +773 -0
  26. data/ext/libmemcached-0.32/clients/client_options.h +32 -0
  27. data/ext/libmemcached-0.32/clients/execute.c +64 -0
  28. data/ext/libmemcached-0.32/clients/execute.h +5 -0
  29. data/ext/libmemcached-0.32/clients/generator.c +74 -0
  30. data/ext/libmemcached-0.32/clients/generator.h +20 -0
  31. data/ext/libmemcached-0.32/clients/memcat.c +178 -0
  32. data/ext/libmemcached-0.32/clients/memcp.c +251 -0
  33. data/ext/libmemcached-0.32/clients/memdump.c +170 -0
  34. data/ext/libmemcached-0.32/clients/memerror.c +80 -0
  35. data/ext/libmemcached-0.32/clients/memflush.c +143 -0
  36. data/ext/libmemcached-0.32/clients/memrm.c +160 -0
  37. data/ext/libmemcached-0.32/clients/memslap.c +441 -0
  38. data/ext/libmemcached-0.32/clients/memstat.c +326 -0
  39. data/ext/libmemcached-0.32/clients/utilities.c +207 -0
  40. data/ext/libmemcached-0.32/clients/utilities.h +41 -0
  41. data/ext/libmemcached-0.32/config.h.in +254 -0
  42. data/ext/libmemcached-0.32/config/compile +143 -0
  43. data/ext/libmemcached-0.32/config/config.guess +1561 -0
  44. data/ext/libmemcached-0.32/config/config.rpath +666 -0
  45. data/ext/libmemcached-0.32/config/config.sub +1686 -0
  46. data/ext/libmemcached-0.32/config/depcomp +630 -0
  47. data/ext/libmemcached-0.32/config/install-sh +520 -0
  48. data/ext/libmemcached-0.32/config/ltmain.sh +9636 -0
  49. data/ext/libmemcached-0.32/config/missing +376 -0
  50. data/ext/libmemcached-0.32/configure +23843 -0
  51. data/ext/libmemcached-0.32/configure.ac +120 -0
  52. data/ext/libmemcached-0.32/libmemcached/Makefile.am +111 -0
  53. data/ext/libmemcached-0.32/libmemcached/Makefile.in +1069 -0
  54. data/ext/libmemcached-0.32/libmemcached/byteorder.c +31 -0
  55. data/ext/libmemcached-0.32/libmemcached/common.h +189 -0
  56. data/ext/libmemcached-0.32/libmemcached/crc.c +86 -0
  57. data/ext/libmemcached-0.32/libmemcached/hsieh_hash.c +68 -0
  58. data/ext/libmemcached-0.32/libmemcached/jenkins_hash.c +213 -0
  59. data/ext/libmemcached-0.32/libmemcached/libmemcached.ver +1 -0
  60. data/ext/libmemcached-0.32/libmemcached/libmemcached_probes.d +30 -0
  61. data/ext/libmemcached-0.32/libmemcached/libmemcached_probes.h +82 -0
  62. data/ext/libmemcached-0.32/libmemcached/md5.c +354 -0
  63. data/ext/libmemcached-0.32/libmemcached/memcached.c +153 -0
  64. data/ext/libmemcached-0.32/libmemcached/memcached.h +305 -0
  65. data/ext/libmemcached-0.32/libmemcached/memcached.hpp +799 -0
  66. data/ext/libmemcached-0.32/libmemcached/memcached/README.txt +7 -0
  67. data/ext/libmemcached-0.32/libmemcached/memcached/protocol_binary.h +385 -0
  68. data/ext/libmemcached-0.32/libmemcached/memcached_allocators.c +72 -0
  69. data/ext/libmemcached-0.32/libmemcached/memcached_analyze.c +100 -0
  70. data/ext/libmemcached-0.32/libmemcached/memcached_auto.c +207 -0
  71. data/ext/libmemcached-0.32/libmemcached/memcached_behavior.c +290 -0
  72. data/ext/libmemcached-0.32/libmemcached/memcached_callback.c +175 -0
  73. data/ext/libmemcached-0.32/libmemcached/memcached_configure.h.in +23 -0
  74. data/ext/libmemcached-0.32/libmemcached/memcached_connect.c +371 -0
  75. data/ext/libmemcached-0.32/libmemcached/memcached_constants.h +146 -0
  76. data/ext/libmemcached-0.32/libmemcached/memcached_delete.c +0 -0
  77. data/ext/libmemcached-0.32/libmemcached/memcached_do.c +72 -0
  78. data/ext/libmemcached-0.32/libmemcached/memcached_dump.c +79 -0
  79. data/ext/libmemcached-0.32/libmemcached/memcached_exist.c +114 -0
  80. data/ext/libmemcached-0.32/libmemcached/memcached_exist.h +20 -0
  81. data/ext/libmemcached-0.32/libmemcached/memcached_fetch.c +102 -0
  82. data/ext/libmemcached-0.32/libmemcached/memcached_flush.c +89 -0
  83. data/ext/libmemcached-0.32/libmemcached/memcached_flush_buffers.c +23 -0
  84. data/ext/libmemcached-0.32/libmemcached/memcached_get.c +494 -0
  85. data/ext/libmemcached-0.32/libmemcached/memcached_get.h +87 -0
  86. data/ext/libmemcached-0.32/libmemcached/memcached_hash.c +252 -0
  87. data/ext/libmemcached-0.32/libmemcached/memcached_hosts.c +510 -0
  88. data/ext/libmemcached-0.32/libmemcached/memcached_internal.h +31 -0
  89. data/ext/libmemcached-0.32/libmemcached/memcached_io.c +594 -0
  90. data/ext/libmemcached-0.32/libmemcached/memcached_io.h +72 -0
  91. data/ext/libmemcached-0.32/libmemcached/memcached_key.c +28 -0
  92. data/ext/libmemcached-0.32/libmemcached/memcached_parse.c +74 -0
  93. data/ext/libmemcached-0.32/libmemcached/memcached_pool.h +38 -0
  94. data/ext/libmemcached-0.32/libmemcached/memcached_purge.c +76 -0
  95. data/ext/libmemcached-0.32/libmemcached/memcached_quit.c +75 -0
  96. data/ext/libmemcached-0.32/libmemcached/memcached_response.c +529 -0
  97. data/ext/libmemcached-0.32/libmemcached/memcached_result.c +57 -0
  98. data/ext/libmemcached-0.32/libmemcached/memcached_result.h +59 -0
  99. data/ext/libmemcached-0.32/libmemcached/memcached_sasl.c +225 -0
  100. data/ext/libmemcached-0.32/libmemcached/memcached_sasl.h +44 -0
  101. data/ext/libmemcached-0.32/libmemcached/memcached_server.c +159 -0
  102. data/ext/libmemcached-0.32/libmemcached/memcached_server.h +93 -0
  103. data/ext/libmemcached-0.32/libmemcached/memcached_stats.c +437 -0
  104. data/ext/libmemcached-0.32/libmemcached/memcached_storage.c +514 -0
  105. data/ext/libmemcached-0.32/libmemcached/memcached_storage.h +107 -0
  106. data/ext/libmemcached-0.32/libmemcached/memcached_strerror.c +92 -0
  107. data/ext/libmemcached-0.32/libmemcached/memcached_string.c +138 -0
  108. data/ext/libmemcached-0.32/libmemcached/memcached_string.h +53 -0
  109. data/ext/libmemcached-0.32/libmemcached/memcached_touch.c +60 -0
  110. data/ext/libmemcached-0.32/libmemcached/memcached_touch.h +31 -0
  111. data/ext/libmemcached-0.32/libmemcached/memcached_types.h +44 -0
  112. data/ext/libmemcached-0.32/libmemcached/memcached_util.h +15 -0
  113. data/ext/libmemcached-0.32/libmemcached/memcached_verbosity.c +36 -0
  114. data/ext/libmemcached-0.32/libmemcached/memcached_version.c +112 -0
  115. data/ext/libmemcached-0.32/libmemcached/memcached_watchpoint.h +38 -0
  116. data/ext/libmemcached-0.32/libmemcached/murmur_hash.c +76 -0
  117. data/ext/libmemcached-0.32/libmemcached/visibility.h +51 -0
  118. data/ext/libmemcached-0.32/libmemcachedutil/Makefile.am +11 -0
  119. data/ext/libmemcached-0.32/libmemcachedutil/Makefile.in +604 -0
  120. data/ext/libmemcached-0.32/libmemcachedutil/libmemcachedutil.ver +1 -0
  121. data/ext/libmemcached-0.32/libmemcachedutil/memcached_pool.c +170 -0
  122. data/ext/libmemcached-0.32/m4/ac_cxx_compile_stdcxx_0x.m4 +103 -0
  123. data/ext/libmemcached-0.32/m4/ac_cxx_header_stdcxx_98.m4 +67 -0
  124. data/ext/libmemcached-0.32/m4/acx_pthread.m4 +276 -0
  125. data/ext/libmemcached-0.32/m4/byteorder.m4 +40 -0
  126. data/ext/libmemcached-0.32/m4/deprecated.m4 +17 -0
  127. data/ext/libmemcached-0.32/m4/enable_utillib.m4 +16 -0
  128. data/ext/libmemcached-0.32/m4/extensions.m4 +94 -0
  129. data/ext/libmemcached-0.32/m4/hsieh.m4 +18 -0
  130. data/ext/libmemcached-0.32/m4/lib-prefix.m4 +221 -0
  131. data/ext/libmemcached-0.32/m4/libtool.m4 +7831 -0
  132. data/ext/libmemcached-0.32/m4/ltoptions.m4 +369 -0
  133. data/ext/libmemcached-0.32/m4/ltsugar.m4 +123 -0
  134. data/ext/libmemcached-0.32/m4/ltversion.m4 +23 -0
  135. data/ext/libmemcached-0.32/m4/lt~obsolete.m4 +98 -0
  136. data/ext/libmemcached-0.32/m4/memcached.m4 +30 -0
  137. data/ext/libmemcached-0.32/m4/pandora_64bit.m4 +55 -0
  138. data/ext/libmemcached-0.32/m4/pandora_canonical.m4 +151 -0
  139. data/ext/libmemcached-0.32/m4/pandora_check_compiler_version.m4 +37 -0
  140. data/ext/libmemcached-0.32/m4/pandora_check_cxx_standard.m4 +16 -0
  141. data/ext/libmemcached-0.32/m4/pandora_enable_dtrace.m4 +41 -0
  142. data/ext/libmemcached-0.32/m4/pandora_ensure_gcc_version.m4 +36 -0
  143. data/ext/libmemcached-0.32/m4/pandora_have_better_malloc.m4 +54 -0
  144. data/ext/libmemcached-0.32/m4/pandora_have_sasl.m4 +133 -0
  145. data/ext/libmemcached-0.32/m4/pandora_header_assert.m4 +23 -0
  146. data/ext/libmemcached-0.32/m4/pandora_libtool.m4 +15 -0
  147. data/ext/libmemcached-0.32/m4/pandora_optimize.m4 +79 -0
  148. data/ext/libmemcached-0.32/m4/pandora_shared_ptr.m4 +56 -0
  149. data/ext/libmemcached-0.32/m4/pandora_vc_build.m4 +32 -0
  150. data/ext/libmemcached-0.32/m4/pandora_warnings.m4 +262 -0
  151. data/ext/libmemcached-0.32/m4/pod2man.m4 +7 -0
  152. data/ext/libmemcached-0.32/m4/protocol_binary.m4 +23 -0
  153. data/ext/libmemcached-0.32/m4/setsockopt.m4 +57 -0
  154. data/ext/libmemcached-0.32/m4/visibility.m4 +52 -0
  155. data/ext/libmemcached-0.32/support/Makefile.am +4 -0
  156. data/ext/libmemcached-0.32/support/Makefile.in +487 -0
  157. data/ext/libmemcached-0.32/support/libmemcached-fc.spec.in +105 -0
  158. data/ext/libmemcached-0.32/support/libmemcached.pc.in +10 -0
  159. data/ext/libmemcached-0.32/support/libmemcached.spec +105 -0
  160. data/ext/libmemcached-0.32/support/libmemcached.spec.in +105 -0
  161. data/ext/libmemcached-0.32/support/set_benchmark.sh +5 -0
  162. data/ext/libmemcached-0.32/tests/Makefile.am +113 -0
  163. data/ext/libmemcached-0.32/tests/Makefile.in +762 -0
  164. data/ext/libmemcached-0.32/tests/atomsmasher.c +245 -0
  165. data/ext/libmemcached-0.32/tests/function.c +4904 -0
  166. data/ext/libmemcached-0.32/tests/ketama_test_cases.h +108 -0
  167. data/ext/libmemcached-0.32/tests/output.cmp +7 -0
  168. data/ext/libmemcached-0.32/tests/output.res +7 -0
  169. data/ext/libmemcached-0.32/tests/output2.res +46 -0
  170. data/ext/libmemcached-0.32/tests/plus.cpp +293 -0
  171. data/ext/libmemcached-0.32/tests/r/memcat.res +19 -0
  172. data/ext/libmemcached-0.32/tests/r/memcp.res +27 -0
  173. data/ext/libmemcached-0.32/tests/r/memrm.res +19 -0
  174. data/ext/libmemcached-0.32/tests/r/memslap.res +33 -0
  175. data/ext/libmemcached-0.32/tests/r/memstat.res +33 -0
  176. data/ext/libmemcached-0.32/tests/server.c +118 -0
  177. data/ext/libmemcached-0.32/tests/server.h +25 -0
  178. data/ext/libmemcached-0.32/tests/start.c +16 -0
  179. data/ext/libmemcached-0.32/tests/t/memcat.test +4 -0
  180. data/ext/libmemcached-0.32/tests/t/memcp.test +3 -0
  181. data/ext/libmemcached-0.32/tests/t/memrm.test +3 -0
  182. data/ext/libmemcached-0.32/tests/t/memslap.test +5 -0
  183. data/ext/libmemcached-0.32/tests/t/memstat.test +3 -0
  184. data/ext/libmemcached-0.32/tests/test.c +137 -0
  185. data/ext/libmemcached-0.32/tests/test.h +46 -0
  186. data/ext/libmemcached-0.32/tests/udp.c +76 -0
  187. data/ext/rlibmemcached.i +258 -0
  188. data/ext/rlibmemcached_wrap.c +13917 -0
  189. data/lib/memcached.rb +33 -0
  190. data/lib/memcached/auth.rb +16 -0
  191. data/lib/memcached/behaviors.rb +78 -0
  192. data/lib/memcached/exceptions.rb +84 -0
  193. data/lib/memcached/experimental.rb +48 -0
  194. data/lib/memcached/marshal_codec.rb +10 -0
  195. data/lib/memcached/memcached.rb +732 -0
  196. data/lib/memcached/rails.rb +250 -0
  197. data/test/profile/benchmark.rb +280 -0
  198. data/test/profile/c_profiler.rb +14 -0
  199. data/test/profile/exercise.rb +185 -0
  200. data/test/profile/rb_profiler.rb +21 -0
  201. data/test/profile/valgrind.rb +10 -0
  202. data/test/setup.rb +30 -0
  203. data/test/teardown.rb +0 -0
  204. data/test/test_helper.rb +18 -0
  205. data/test/unit/binding_test.rb +8 -0
  206. data/test/unit/memcached_experimental_test.rb +272 -0
  207. data/test/unit/memcached_test.rb +1487 -0
  208. data/test/unit/rails_test.rb +330 -0
  209. metadata +347 -0
@@ -0,0 +1,105 @@
1
+ Name: libmemcached
2
+ Summary: memcached C library and command line tools
3
+ Version: @VERSION@
4
+ Release: 1%{?dist}
5
+ License: BSD
6
+ Group: System Environment/Libraries
7
+ URL: http://tangent.org/552/libmemcached.html
8
+ Source0: http://download.tangent.org/libmemcached-%{version}.tar.gz
9
+
10
+ # For test suite
11
+ BuildRequires: memcached
12
+
13
+ BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n)
14
+
15
+
16
+ %description
17
+ libmemcached is a C client library to the memcached server
18
+ (http://danga.com/memcached). It has been designed to be light on memory
19
+ usage, and provide full access to server side methods.
20
+
21
+ It also implements several command line tools:
22
+
23
+ memcat - Copy the value of a key to standard output.
24
+ memflush - Flush the contents of your servers.
25
+ memrm - Remove a key(s) from the serrver.
26
+ memstat - Dump the stats of your servers to standard output.
27
+ memslap - Generate testing loads on a memcached cluster.
28
+ memcp - Copy files to memcached servers.
29
+ memerror - Creates human readable messages from libmemecached error codes.
30
+
31
+
32
+ %package devel
33
+ Summary: Header files and development libraries for %{name}
34
+ Group: Development/Libraries
35
+ Requires: %{name} = %{version}-%{release}
36
+
37
+ %description devel
38
+ This package contains the header files and development libraries
39
+ for %{name}. If you like to develop programs using %{name},
40
+ you will need to install %{name}-devel.
41
+
42
+
43
+ %prep
44
+ %setup -q
45
+
46
+ %{__mkdir} examples
47
+ %{__cp} tests/*.{c,cpp,h} examples/
48
+
49
+
50
+ %build
51
+ %configure
52
+ %{__make} %{_smp_mflags}
53
+
54
+
55
+ %install
56
+ %{__rm} -rf %{buildroot}
57
+ %{__make} install DESTDIR="%{buildroot}" AM_INSTALL_PROGRAM_FLAGS=""
58
+
59
+
60
+ %check
61
+ # test suite cannot run in mock (same port use for memcache server on all arch)
62
+ # 1 test seems to fail..
63
+ #%{__make} test
64
+
65
+
66
+ %clean
67
+ %{__rm} -rf %{buildroot}
68
+
69
+
70
+ %post -p /sbin/ldconfig
71
+
72
+
73
+ %postun -p /sbin/ldconfig
74
+
75
+
76
+ %files
77
+ %defattr (-,root,root,-)
78
+ %doc AUTHORS COPYING NEWS README THANKS TODO
79
+ %{_bindir}/mem*
80
+ %exclude %{_libdir}/libmemcached.a
81
+ %exclude %{_libdir}/libmemcached.la
82
+ %exclude %{_libdir}/libmemcachedutil.a
83
+ %exclude %{_libdir}/libmemcachedutil.la
84
+ %{_libdir}/libmemcached.so.*
85
+ %{_libdir}/libmemcachedutil.so.*
86
+ %{_mandir}/man1/mem*
87
+
88
+
89
+ %files devel
90
+ %defattr (-,root,root,-)
91
+ %doc examples
92
+ %{_includedir}/libmemcached
93
+ %{_libdir}/libmemcached.so
94
+ %{_libdir}/libmemcachedutil.so
95
+ %{_libdir}/pkgconfig/libmemcached.pc
96
+ %{_mandir}/man3/libmemcached*.3.gz
97
+ %{_mandir}/man3/memcached_*.3.gz
98
+
99
+
100
+ %changelog
101
+ * Sat Apr 25 2009 Remi Collet <rpms@famillecollet.com> - 0.28-1
102
+ - Initial RPM from Brian Aker spec
103
+ - create -devel subpackage
104
+ - add %%post %%postun %%check section
105
+
@@ -0,0 +1,10 @@
1
+ prefix=@prefix@
2
+ exec_prefix=@exec_prefix@
3
+ libdir=@libdir@
4
+ includedir=@includedir@
5
+
6
+ Name: libmemcached
7
+ Description: libmemcached C library.
8
+ Version: @VERSION@
9
+ Libs: -L${libdir} -lmemcached
10
+ Cflags: -I${includedir}
@@ -0,0 +1,105 @@
1
+ Name: libmemcached
2
+ Summary: memcached C library and command line tools
3
+ Version: 0.32
4
+ Release: 1
5
+ License: BSD
6
+ Group: System Environment/Libraries
7
+ URL: http://tangent.org/552/libmemcached.html
8
+ Source0: http://download.tangent.org/libmemcached-%{version}.tar.gz
9
+
10
+ # For test suite
11
+ BuildRequires: memcached
12
+
13
+ BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n)
14
+
15
+
16
+ %description
17
+ libmemcached is a C client library to the memcached server
18
+ (http://danga.com/memcached). It has been designed to be light on memory
19
+ usage, and provide full access to server side methods.
20
+
21
+ It also implements several command line tools:
22
+
23
+ memcat - Copy the value of a key to standard output.
24
+ memflush - Flush the contents of your servers.
25
+ memrm - Remove a key(s) from the serrver.
26
+ memstat - Dump the stats of your servers to standard output.
27
+ memslap - Generate testing loads on a memcached cluster.
28
+ memcp - Copy files to memcached servers.
29
+ memerror - Creates human readable messages from libmemecached error codes.
30
+
31
+
32
+ %package devel
33
+ Summary: Header files and development libraries for %{name}
34
+ Group: Development/Libraries
35
+ Requires: %{name} = %{version}-%{release}
36
+
37
+ %description devel
38
+ This package contains the header files and development libraries
39
+ for %{name}. If you like to develop programs using %{name},
40
+ you will need to install %{name}-devel.
41
+
42
+
43
+ %prep
44
+ %setup -q
45
+
46
+ %{__mkdir} examples
47
+ %{__cp} tests/*.{c,cpp,h} examples/
48
+
49
+
50
+ %build
51
+ %configure
52
+ %{__make} %{_smp_mflags}
53
+
54
+
55
+ %install
56
+ %{__rm} -rf %{buildroot}
57
+ %{__make} install DESTDIR="%{buildroot}" AM_INSTALL_PROGRAM_FLAGS=""
58
+
59
+
60
+ %check
61
+ # test suite cannot run in mock (same port use for memcache server on all arch)
62
+ # 1 test seems to fail..
63
+ #%{__make} test
64
+
65
+
66
+ %clean
67
+ %{__rm} -rf %{buildroot}
68
+
69
+
70
+ %post -p /sbin/ldconfig
71
+
72
+
73
+ %postun -p /sbin/ldconfig
74
+
75
+
76
+ %files
77
+ %defattr (-,root,root,-)
78
+ %doc AUTHORS COPYING NEWS README THANKS TODO
79
+ %{_bindir}/mem*
80
+ %exclude %{_libdir}/libmemcached.a
81
+ %exclude %{_libdir}/libmemcached.la
82
+ %exclude %{_libdir}/libmemcachedutil.a
83
+ %exclude %{_libdir}/libmemcachedutil.la
84
+ %{_libdir}/libmemcached.so.*
85
+ %{_libdir}/libmemcachedutil.so.*
86
+ %{_mandir}/man1/mem*
87
+
88
+
89
+ %files devel
90
+ %defattr (-,root,root,-)
91
+ %doc examples
92
+ %{_includedir}/libmemcached
93
+ %{_libdir}/libmemcached.so
94
+ %{_libdir}/libmemcachedutil.so
95
+ %{_libdir}/pkgconfig/libmemcached.pc
96
+ %{_mandir}/man3/libmemcached*.3.gz
97
+ %{_mandir}/man3/memcached_*.3.gz
98
+
99
+
100
+ %changelog
101
+ * Sat Apr 25 2009 Remi Collet <rpms@famillecollet.com> - 0.28-1
102
+ - Initial RPM from Brian Aker spec
103
+ - create -devel subpackage
104
+ - add %%post %%postun %%check section
105
+
@@ -0,0 +1,105 @@
1
+ Name: libmemcached
2
+ Summary: memcached C library and command line tools
3
+ Version: @VERSION@
4
+ Release: 1
5
+ License: BSD
6
+ Group: System Environment/Libraries
7
+ URL: http://tangent.org/552/libmemcached.html
8
+ Source0: http://download.tangent.org/libmemcached-%{version}.tar.gz
9
+
10
+ # For test suite
11
+ BuildRequires: memcached
12
+
13
+ BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n)
14
+
15
+
16
+ %description
17
+ libmemcached is a C client library to the memcached server
18
+ (http://danga.com/memcached). It has been designed to be light on memory
19
+ usage, and provide full access to server side methods.
20
+
21
+ It also implements several command line tools:
22
+
23
+ memcat - Copy the value of a key to standard output.
24
+ memflush - Flush the contents of your servers.
25
+ memrm - Remove a key(s) from the serrver.
26
+ memstat - Dump the stats of your servers to standard output.
27
+ memslap - Generate testing loads on a memcached cluster.
28
+ memcp - Copy files to memcached servers.
29
+ memerror - Creates human readable messages from libmemecached error codes.
30
+
31
+
32
+ %package devel
33
+ Summary: Header files and development libraries for %{name}
34
+ Group: Development/Libraries
35
+ Requires: %{name} = %{version}-%{release}
36
+
37
+ %description devel
38
+ This package contains the header files and development libraries
39
+ for %{name}. If you like to develop programs using %{name},
40
+ you will need to install %{name}-devel.
41
+
42
+
43
+ %prep
44
+ %setup -q
45
+
46
+ %{__mkdir} examples
47
+ %{__cp} tests/*.{c,cpp,h} examples/
48
+
49
+
50
+ %build
51
+ %configure
52
+ %{__make} %{_smp_mflags}
53
+
54
+
55
+ %install
56
+ %{__rm} -rf %{buildroot}
57
+ %{__make} install DESTDIR="%{buildroot}" AM_INSTALL_PROGRAM_FLAGS=""
58
+
59
+
60
+ %check
61
+ # test suite cannot run in mock (same port use for memcache server on all arch)
62
+ # 1 test seems to fail..
63
+ #%{__make} test
64
+
65
+
66
+ %clean
67
+ %{__rm} -rf %{buildroot}
68
+
69
+
70
+ %post -p /sbin/ldconfig
71
+
72
+
73
+ %postun -p /sbin/ldconfig
74
+
75
+
76
+ %files
77
+ %defattr (-,root,root,-)
78
+ %doc AUTHORS COPYING NEWS README THANKS TODO
79
+ %{_bindir}/mem*
80
+ %exclude %{_libdir}/libmemcached.a
81
+ %exclude %{_libdir}/libmemcached.la
82
+ %exclude %{_libdir}/libmemcachedutil.a
83
+ %exclude %{_libdir}/libmemcachedutil.la
84
+ %{_libdir}/libmemcached.so.*
85
+ %{_libdir}/libmemcachedutil.so.*
86
+ %{_mandir}/man1/mem*
87
+
88
+
89
+ %files devel
90
+ %defattr (-,root,root,-)
91
+ %doc examples
92
+ %{_includedir}/libmemcached
93
+ %{_libdir}/libmemcached.so
94
+ %{_libdir}/libmemcachedutil.so
95
+ %{_libdir}/pkgconfig/libmemcached.pc
96
+ %{_mandir}/man3/libmemcached*.3.gz
97
+ %{_mandir}/man3/memcached_*.3.gz
98
+
99
+
100
+ %changelog
101
+ * Sat Apr 25 2009 Remi Collet <rpms@famillecollet.com> - 0.28-1
102
+ - Initial RPM from Brian Aker spec
103
+ - create -devel subpackage
104
+ - add %%post %%postun %%check section
105
+
@@ -0,0 +1,5 @@
1
+ #!/bin/bash
2
+
3
+ src/memslap --concurrency=5 --execute-number=5000 --servers=localhost --test=set --flush
4
+ src/memslap --concurrency=5 --execute-number=5000 --non-blocking --servers=localhost --test=set --flush
5
+ src/memslap --concurrency=5 --execute-number=5000 --non-blocking --tcp-nodelay --servers=localhost --test=set --flush
@@ -0,0 +1,113 @@
1
+ LDADDS = $(top_builddir)/libmemcached/libmemcached.la
2
+
3
+ if BUILD_LIBMEMCACHEDUTIL
4
+ LDADDS+= $(top_builddir)/libmemcachedutil/libmemcachedutil.la
5
+ endif
6
+
7
+ EXTRA_DIST = output.res output2.res\
8
+ r/memcat.res\
9
+ r/memcp.res\
10
+ r/memrm.res\
11
+ r/memslap.res\
12
+ r/memstat.res\
13
+ t/memcat.test\
14
+ t/memcp.test\
15
+ t/memrm.test\
16
+ t/memslap.test\
17
+ t/memstat.test
18
+
19
+ LIBS =
20
+
21
+ noinst_HEADERS = test.h server.h ketama_test_cases.h
22
+ noinst_PROGRAMS = testapp testplus udptest atomsmasher startservers
23
+ noinst_LTLIBRARIES= libserver.la libtest.la
24
+
25
+ libserver_la_SOURCES= server.c
26
+ libtest_la_SOURCES= test.c
27
+
28
+ testapp_CFLAGS= $(AM_CFLAGS) $(NO_CONVERSION) $(NO_STRICT_ALIASING)
29
+ testapp_SOURCES = function.c
30
+ testapp_LDADD = $(top_builddir)/clients/libgenexec.la libtest.la libserver.la $(LDADDS)
31
+
32
+ testplus_SOURCES = plus.cpp
33
+ testplus_LDADD = libtest.la libserver.la $(LDADDS)
34
+
35
+ udptest_SOURCES = udp.c
36
+ udptest_LDADD = libtest.la libserver.la $(LDADDS)
37
+
38
+ atomsmasher_SOURCES = atomsmasher.c
39
+ atomsmasher_LDADD = $(top_builddir)/clients/libgenexec.la libtest.la libserver.la $(LDADDS)
40
+
41
+ startservers_SOURCES = start.c
42
+ startservers_LDADD = libserver.la $(LDADDS)
43
+
44
+ if HAVE_SASL
45
+ testapp_LDADD+= $(LTLIBSASL)
46
+ testplus_LDADD+= $(LTLIBSASL)
47
+ udptest_LDADD+= $(LTLIBSASL)
48
+ atomsmasher_LDADD+= $(LTLIBSASL)
49
+ startservers_LDADD+= $(LTLIBSASL)
50
+ endif
51
+
52
+ record:
53
+ ./testapp > output.res
54
+ ./testplus > output_plus.res
55
+
56
+ client-record:
57
+ sh t/memcat.test > r/memcat.res
58
+ sh t/memcp.test > r/memcp.res
59
+ sh t/memrm.test > r/memrm.res
60
+ sh t/memslap.test > r/memslap.res
61
+ sh t/memstat.test > r/memstat.res
62
+
63
+ record-extended:
64
+ ./testapp extended > output2.res
65
+
66
+ test: testapp testplus library_test
67
+ echo "Tests completed"
68
+
69
+ library_test:
70
+ ./testapp > output.cmp
71
+ diff output.res output.cmp
72
+ # ./testplus > output_plus.cmp
73
+ # diff output_plus.res output_plus.cmp
74
+
75
+ clients:
76
+ memcached -d -P /tmp/Xumemc.pid -p 12555
77
+ export MEMCACHED_SERVERS="localhost:12555"
78
+ sh t/memcat.test > r/memcat.cmp
79
+ diff r/memcat.res r/memcat.cmp
80
+ sh t/memcp.test > r/memcp.cmp
81
+ diff r/memcp.res r/memcp.cmp
82
+ sh t/memrm.test > r/memrm.cmp
83
+ diff r/memrm.res r/memrm.cmp
84
+ sh t/memslap.test > r/memslap.cmp
85
+ diff r/memslap.res r/memslap.cmp
86
+ sh t/memstat.test > r/memstat.cmp
87
+ diff r/memstat.res r/memstat.cmp
88
+ cat /tmp/Xumemc.pid | xargs kill
89
+ rm /tmp/Xumemc.pid
90
+
91
+ valgrind:
92
+ libtool --mode=execute valgrind --leak-check=yes --show-reachable=yes testapp
93
+
94
+ cachegrind:
95
+ rm -f cachegrind.out.*
96
+ libtool --mode=execute valgrind --tool=cachegrind --branch-sim=yes testapp
97
+ cg_annotate cachegrind.out.* --auto=yes > /tmp/cachegrind.out
98
+
99
+ callgrind:
100
+ rm -f callgrind.out.*
101
+ libtool --mode=execute valgrind --tool=callgrind testapp
102
+ callgrind_annotate callgrind.out.* --auto=yes > /tmp/callgrind.out
103
+
104
+ helgrind:
105
+ rm -f helgrind.out.*
106
+ libtool --mode=execute valgrind --tool=helgrind testapp
107
+
108
+ helgrind-slap:
109
+ libtool --mode=execute valgrind --tool=helgrind ${top_builddir}/clients/memslap --server=localhost --concurrency=30
110
+
111
+ test-no-outputdiff: testapp
112
+ ./testapp > /dev/null
113
+ @echo "Test completed"