nutcracker 0.4.0.16 → 0.4.1.18
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.
- checksums.yaml +4 -4
- data/Rakefile +3 -3
- data/ext/nutcracker/ChangeLog +33 -8
- data/ext/nutcracker/Makefile.in +34 -21
- data/ext/nutcracker/README.md +61 -26
- data/ext/nutcracker/aclocal.m4 +34 -31
- data/ext/nutcracker/autom4te.cache/output.0 +1875 -1330
- data/ext/nutcracker/autom4te.cache/output.1 +1875 -1330
- data/ext/nutcracker/autom4te.cache/requests +232 -451
- data/ext/nutcracker/autom4te.cache/traces.0 +2256 -2129
- data/ext/nutcracker/autom4te.cache/traces.1 +73 -59
- data/ext/nutcracker/config.h.in +1 -2
- data/ext/nutcracker/config.h.in~ +333 -0
- data/ext/nutcracker/config/compile +1 -1
- data/ext/nutcracker/config/config.guess +13 -160
- data/ext/nutcracker/config/config.sub +25 -11
- data/ext/nutcracker/config/depcomp +1 -1
- data/ext/nutcracker/config/install-sh +170 -196
- data/ext/nutcracker/config/ltmain.sh +3509 -2018
- data/ext/nutcracker/config/missing +1 -1
- data/ext/nutcracker/configure +1874 -1329
- data/ext/nutcracker/configure.ac +3 -2
- data/ext/nutcracker/contrib/Makefile.in +18 -5
- data/ext/nutcracker/contrib/yaml-0.1.4/LICENSE +19 -0
- data/ext/nutcracker/contrib/yaml-0.1.4/Makefile.am +20 -0
- data/ext/nutcracker/contrib/yaml-0.1.4/Makefile.in +832 -0
- data/ext/nutcracker/contrib/yaml-0.1.4/README +27 -0
- data/ext/nutcracker/contrib/yaml-0.1.4/aclocal.m4 +1157 -0
- data/ext/nutcracker/contrib/yaml-0.1.4/autom4te.cache/output.0 +13342 -0
- data/ext/nutcracker/contrib/yaml-0.1.4/autom4te.cache/output.1 +14611 -0
- data/ext/nutcracker/{autom4te.cache → contrib/yaml-0.1.4/autom4te.cache}/output.2 +3465 -8761
- data/ext/nutcracker/contrib/yaml-0.1.4/autom4te.cache/requests +516 -0
- data/ext/nutcracker/{autom4te.cache/traces.2 → contrib/yaml-0.1.4/autom4te.cache/traces.0} +662 -698
- data/ext/nutcracker/contrib/yaml-0.1.4/autom4te.cache/traces.1 +577 -0
- data/ext/nutcracker/contrib/yaml-0.1.4/autom4te.cache/traces.2 +2721 -0
- data/ext/nutcracker/contrib/yaml-0.1.4/config.h.in +79 -0
- data/ext/nutcracker/contrib/yaml-0.1.4/config.h.in~ +80 -0
- data/ext/nutcracker/contrib/yaml-0.1.4/config/compile +347 -0
- data/ext/nutcracker/contrib/yaml-0.1.4/config/config.guess +1421 -0
- data/ext/nutcracker/contrib/yaml-0.1.4/config/config.sub +1807 -0
- data/ext/nutcracker/contrib/yaml-0.1.4/config/depcomp +791 -0
- data/ext/nutcracker/contrib/yaml-0.1.4/config/install-sh +501 -0
- data/ext/nutcracker/contrib/yaml-0.1.4/config/ltmain.sh +11147 -0
- data/ext/nutcracker/contrib/yaml-0.1.4/config/missing +215 -0
- data/ext/nutcracker/contrib/yaml-0.1.4/config/test-driver +148 -0
- data/ext/nutcracker/contrib/yaml-0.1.4/configure +14611 -0
- data/ext/nutcracker/contrib/yaml-0.1.4/configure.ac +75 -0
- data/ext/nutcracker/contrib/yaml-0.1.4/doc/doxygen.cfg +222 -0
- data/ext/nutcracker/contrib/yaml-0.1.4/include/yaml.h +1971 -0
- data/ext/nutcracker/contrib/yaml-0.1.4/m4/libtool.m4 +8369 -0
- data/ext/nutcracker/contrib/yaml-0.1.4/m4/ltoptions.m4 +437 -0
- data/ext/nutcracker/contrib/yaml-0.1.4/m4/ltsugar.m4 +124 -0
- data/ext/nutcracker/contrib/yaml-0.1.4/m4/ltversion.m4 +23 -0
- data/ext/nutcracker/contrib/yaml-0.1.4/m4/lt~obsolete.m4 +99 -0
- data/ext/nutcracker/contrib/yaml-0.1.4/src/Makefile.am +4 -0
- data/ext/nutcracker/contrib/yaml-0.1.4/src/Makefile.in +600 -0
- data/ext/nutcracker/contrib/yaml-0.1.4/src/api.c +1392 -0
- data/ext/nutcracker/contrib/yaml-0.1.4/src/dumper.c +394 -0
- data/ext/nutcracker/contrib/yaml-0.1.4/src/emitter.c +2329 -0
- data/ext/nutcracker/contrib/yaml-0.1.4/src/loader.c +432 -0
- data/ext/nutcracker/contrib/yaml-0.1.4/src/parser.c +1374 -0
- data/ext/nutcracker/contrib/yaml-0.1.4/src/reader.c +465 -0
- data/ext/nutcracker/contrib/yaml-0.1.4/src/scanner.c +3570 -0
- data/ext/nutcracker/contrib/yaml-0.1.4/src/writer.c +141 -0
- data/ext/nutcracker/contrib/yaml-0.1.4/src/yaml_private.h +640 -0
- data/ext/nutcracker/contrib/yaml-0.1.4/tests/Makefile.am +8 -0
- data/ext/nutcracker/contrib/yaml-0.1.4/tests/Makefile.in +1083 -0
- data/ext/nutcracker/contrib/yaml-0.1.4/tests/example-deconstructor-alt.c +800 -0
- data/ext/nutcracker/contrib/yaml-0.1.4/tests/example-deconstructor.c +1130 -0
- data/ext/nutcracker/contrib/yaml-0.1.4/tests/example-reformatter-alt.c +217 -0
- data/ext/nutcracker/contrib/yaml-0.1.4/tests/example-reformatter.c +202 -0
- data/ext/nutcracker/contrib/yaml-0.1.4/tests/run-dumper.c +311 -0
- data/ext/nutcracker/contrib/yaml-0.1.4/tests/run-emitter.c +327 -0
- data/ext/nutcracker/contrib/yaml-0.1.4/tests/run-loader.c +63 -0
- data/ext/nutcracker/contrib/yaml-0.1.4/tests/run-parser.c +63 -0
- data/ext/nutcracker/contrib/yaml-0.1.4/tests/run-scanner.c +63 -0
- data/ext/nutcracker/contrib/yaml-0.1.4/tests/test-reader.c +354 -0
- data/ext/nutcracker/contrib/yaml-0.1.4/tests/test-version.c +29 -0
- data/ext/nutcracker/m4/libtool.m4 +1474 -1087
- data/ext/nutcracker/m4/ltoptions.m4 +90 -37
- data/ext/nutcracker/m4/ltsugar.m4 +4 -3
- data/ext/nutcracker/m4/ltversion.m4 +6 -6
- data/ext/nutcracker/m4/lt~obsolete.m4 +4 -3
- data/ext/nutcracker/man/nutcracker.8 +1 -1
- data/ext/nutcracker/notes/memcache.md +162 -0
- data/ext/nutcracker/notes/recommendation.md +10 -5
- data/ext/nutcracker/notes/redis.md +23 -9
- data/ext/nutcracker/scripts/nutcracker.init +10 -0
- data/ext/nutcracker/scripts/nutcracker.init.debian +83 -0
- data/ext/nutcracker/scripts/nutcracker.spec +36 -2
- data/ext/nutcracker/scripts/redis-check.sh +4 -0
- data/ext/nutcracker/src/Makefile.am +6 -1
- data/ext/nutcracker/src/Makefile.in +26 -12
- data/ext/nutcracker/src/event/Makefile.in +19 -6
- data/ext/nutcracker/src/hashkit/Makefile.in +19 -6
- data/ext/nutcracker/src/hashkit/nc_jenkins.c +1 -1
- data/ext/nutcracker/src/hashkit/nc_ketama.c +3 -3
- data/ext/nutcracker/src/nc.c +1 -1
- data/ext/nutcracker/src/nc_conf.c +67 -19
- data/ext/nutcracker/src/nc_conf.h +9 -4
- data/ext/nutcracker/src/nc_connection.c +35 -2
- data/ext/nutcracker/src/nc_connection.h +53 -47
- data/ext/nutcracker/src/nc_core.c +8 -1
- data/ext/nutcracker/src/nc_message.c +23 -7
- data/ext/nutcracker/src/nc_message.h +24 -1
- data/ext/nutcracker/src/nc_proxy.c +14 -3
- data/ext/nutcracker/src/nc_rbtree.c +1 -5
- data/ext/nutcracker/src/nc_request.c +58 -10
- data/ext/nutcracker/src/nc_response.c +27 -4
- data/ext/nutcracker/src/nc_server.c +33 -5
- data/ext/nutcracker/src/nc_server.h +10 -9
- data/ext/nutcracker/src/nc_string.h +17 -0
- data/ext/nutcracker/src/nc_util.c +5 -1
- data/ext/nutcracker/src/proto/Makefile.in +19 -6
- data/ext/nutcracker/src/proto/nc_memcache.c +76 -12
- data/ext/nutcracker/src/proto/nc_proto.h +9 -0
- data/ext/nutcracker/src/proto/nc_redis.c +400 -18
- data/lib/nutcracker.rb +1 -1
- data/lib/nutcracker/version.rb +1 -1
- metadata +61 -6
- data/ext/nutcracker/notes/memcache.txt +0 -123
|
@@ -1,14 +1,14 @@
|
|
|
1
1
|
# Helper functions for option handling. -*- Autoconf -*-
|
|
2
2
|
#
|
|
3
|
-
# Copyright (C) 2004
|
|
4
|
-
# Inc.
|
|
3
|
+
# Copyright (C) 2004-2005, 2007-2009, 2011-2015 Free Software
|
|
4
|
+
# Foundation, Inc.
|
|
5
5
|
# Written by Gary V. Vaughan, 2004
|
|
6
6
|
#
|
|
7
7
|
# This file is free software; the Free Software Foundation gives
|
|
8
8
|
# unlimited permission to copy and/or distribute it, with or without
|
|
9
9
|
# modifications, as long as this notice is preserved.
|
|
10
10
|
|
|
11
|
-
# serial
|
|
11
|
+
# serial 8 ltoptions.m4
|
|
12
12
|
|
|
13
13
|
# This is to help aclocal find these macros, as it can't see m4_define.
|
|
14
14
|
AC_DEFUN([LTOPTIONS_VERSION], [m4_if([1])])
|
|
@@ -29,7 +29,7 @@ m4_define([_LT_SET_OPTION],
|
|
|
29
29
|
[m4_define(_LT_MANGLE_OPTION([$1], [$2]))dnl
|
|
30
30
|
m4_ifdef(_LT_MANGLE_DEFUN([$1], [$2]),
|
|
31
31
|
_LT_MANGLE_DEFUN([$1], [$2]),
|
|
32
|
-
[m4_warning([Unknown $1 option
|
|
32
|
+
[m4_warning([Unknown $1 option '$2'])])[]dnl
|
|
33
33
|
])
|
|
34
34
|
|
|
35
35
|
|
|
@@ -75,13 +75,15 @@ m4_if([$1],[LT_INIT],[
|
|
|
75
75
|
dnl
|
|
76
76
|
dnl If no reference was made to various pairs of opposing options, then
|
|
77
77
|
dnl we run the default mode handler for the pair. For example, if neither
|
|
78
|
-
dnl
|
|
78
|
+
dnl 'shared' nor 'disable-shared' was passed, we enable building of shared
|
|
79
79
|
dnl archives by default:
|
|
80
80
|
_LT_UNLESS_OPTIONS([LT_INIT], [shared disable-shared], [_LT_ENABLE_SHARED])
|
|
81
81
|
_LT_UNLESS_OPTIONS([LT_INIT], [static disable-static], [_LT_ENABLE_STATIC])
|
|
82
82
|
_LT_UNLESS_OPTIONS([LT_INIT], [pic-only no-pic], [_LT_WITH_PIC])
|
|
83
83
|
_LT_UNLESS_OPTIONS([LT_INIT], [fast-install disable-fast-install],
|
|
84
|
-
|
|
84
|
+
[_LT_ENABLE_FAST_INSTALL])
|
|
85
|
+
_LT_UNLESS_OPTIONS([LT_INIT], [aix-soname=aix aix-soname=both aix-soname=svr4],
|
|
86
|
+
[_LT_WITH_AIX_SONAME([aix])])
|
|
85
87
|
])
|
|
86
88
|
])# _LT_SET_OPTIONS
|
|
87
89
|
|
|
@@ -112,7 +114,7 @@ AU_DEFUN([AC_LIBTOOL_DLOPEN],
|
|
|
112
114
|
[_LT_SET_OPTION([LT_INIT], [dlopen])
|
|
113
115
|
AC_DIAGNOSE([obsolete],
|
|
114
116
|
[$0: Remove this warning and the call to _LT_SET_OPTION when you
|
|
115
|
-
put the
|
|
117
|
+
put the 'dlopen' option into LT_INIT's first parameter.])
|
|
116
118
|
])
|
|
117
119
|
|
|
118
120
|
dnl aclocal-1.4 backwards compatibility:
|
|
@@ -148,7 +150,7 @@ AU_DEFUN([AC_LIBTOOL_WIN32_DLL],
|
|
|
148
150
|
_LT_SET_OPTION([LT_INIT], [win32-dll])
|
|
149
151
|
AC_DIAGNOSE([obsolete],
|
|
150
152
|
[$0: Remove this warning and the call to _LT_SET_OPTION when you
|
|
151
|
-
put the
|
|
153
|
+
put the 'win32-dll' option into LT_INIT's first parameter.])
|
|
152
154
|
])
|
|
153
155
|
|
|
154
156
|
dnl aclocal-1.4 backwards compatibility:
|
|
@@ -157,9 +159,9 @@ dnl AC_DEFUN([AC_LIBTOOL_WIN32_DLL], [])
|
|
|
157
159
|
|
|
158
160
|
# _LT_ENABLE_SHARED([DEFAULT])
|
|
159
161
|
# ----------------------------
|
|
160
|
-
# implement the --enable-shared flag, and supports the
|
|
161
|
-
#
|
|
162
|
-
# DEFAULT is either
|
|
162
|
+
# implement the --enable-shared flag, and supports the 'shared' and
|
|
163
|
+
# 'disable-shared' LT_INIT options.
|
|
164
|
+
# DEFAULT is either 'yes' or 'no'. If omitted, it defaults to 'yes'.
|
|
163
165
|
m4_define([_LT_ENABLE_SHARED],
|
|
164
166
|
[m4_define([_LT_ENABLE_SHARED_DEFAULT], [m4_if($1, no, no, yes)])dnl
|
|
165
167
|
AC_ARG_ENABLE([shared],
|
|
@@ -172,14 +174,14 @@ AC_ARG_ENABLE([shared],
|
|
|
172
174
|
*)
|
|
173
175
|
enable_shared=no
|
|
174
176
|
# Look at the argument we got. We use all the common list separators.
|
|
175
|
-
lt_save_ifs
|
|
177
|
+
lt_save_ifs=$IFS; IFS=$IFS$PATH_SEPARATOR,
|
|
176
178
|
for pkg in $enableval; do
|
|
177
|
-
IFS
|
|
179
|
+
IFS=$lt_save_ifs
|
|
178
180
|
if test "X$pkg" = "X$p"; then
|
|
179
181
|
enable_shared=yes
|
|
180
182
|
fi
|
|
181
183
|
done
|
|
182
|
-
IFS
|
|
184
|
+
IFS=$lt_save_ifs
|
|
183
185
|
;;
|
|
184
186
|
esac],
|
|
185
187
|
[enable_shared=]_LT_ENABLE_SHARED_DEFAULT)
|
|
@@ -211,9 +213,9 @@ dnl AC_DEFUN([AM_DISABLE_SHARED], [])
|
|
|
211
213
|
|
|
212
214
|
# _LT_ENABLE_STATIC([DEFAULT])
|
|
213
215
|
# ----------------------------
|
|
214
|
-
# implement the --enable-static flag, and support the
|
|
215
|
-
#
|
|
216
|
-
# DEFAULT is either
|
|
216
|
+
# implement the --enable-static flag, and support the 'static' and
|
|
217
|
+
# 'disable-static' LT_INIT options.
|
|
218
|
+
# DEFAULT is either 'yes' or 'no'. If omitted, it defaults to 'yes'.
|
|
217
219
|
m4_define([_LT_ENABLE_STATIC],
|
|
218
220
|
[m4_define([_LT_ENABLE_STATIC_DEFAULT], [m4_if($1, no, no, yes)])dnl
|
|
219
221
|
AC_ARG_ENABLE([static],
|
|
@@ -226,14 +228,14 @@ AC_ARG_ENABLE([static],
|
|
|
226
228
|
*)
|
|
227
229
|
enable_static=no
|
|
228
230
|
# Look at the argument we got. We use all the common list separators.
|
|
229
|
-
lt_save_ifs
|
|
231
|
+
lt_save_ifs=$IFS; IFS=$IFS$PATH_SEPARATOR,
|
|
230
232
|
for pkg in $enableval; do
|
|
231
|
-
IFS
|
|
233
|
+
IFS=$lt_save_ifs
|
|
232
234
|
if test "X$pkg" = "X$p"; then
|
|
233
235
|
enable_static=yes
|
|
234
236
|
fi
|
|
235
237
|
done
|
|
236
|
-
IFS
|
|
238
|
+
IFS=$lt_save_ifs
|
|
237
239
|
;;
|
|
238
240
|
esac],
|
|
239
241
|
[enable_static=]_LT_ENABLE_STATIC_DEFAULT)
|
|
@@ -265,9 +267,9 @@ dnl AC_DEFUN([AM_DISABLE_STATIC], [])
|
|
|
265
267
|
|
|
266
268
|
# _LT_ENABLE_FAST_INSTALL([DEFAULT])
|
|
267
269
|
# ----------------------------------
|
|
268
|
-
# implement the --enable-fast-install flag, and support the
|
|
269
|
-
# and
|
|
270
|
-
# DEFAULT is either
|
|
270
|
+
# implement the --enable-fast-install flag, and support the 'fast-install'
|
|
271
|
+
# and 'disable-fast-install' LT_INIT options.
|
|
272
|
+
# DEFAULT is either 'yes' or 'no'. If omitted, it defaults to 'yes'.
|
|
271
273
|
m4_define([_LT_ENABLE_FAST_INSTALL],
|
|
272
274
|
[m4_define([_LT_ENABLE_FAST_INSTALL_DEFAULT], [m4_if($1, no, no, yes)])dnl
|
|
273
275
|
AC_ARG_ENABLE([fast-install],
|
|
@@ -280,14 +282,14 @@ AC_ARG_ENABLE([fast-install],
|
|
|
280
282
|
*)
|
|
281
283
|
enable_fast_install=no
|
|
282
284
|
# Look at the argument we got. We use all the common list separators.
|
|
283
|
-
lt_save_ifs
|
|
285
|
+
lt_save_ifs=$IFS; IFS=$IFS$PATH_SEPARATOR,
|
|
284
286
|
for pkg in $enableval; do
|
|
285
|
-
IFS
|
|
287
|
+
IFS=$lt_save_ifs
|
|
286
288
|
if test "X$pkg" = "X$p"; then
|
|
287
289
|
enable_fast_install=yes
|
|
288
290
|
fi
|
|
289
291
|
done
|
|
290
|
-
IFS
|
|
292
|
+
IFS=$lt_save_ifs
|
|
291
293
|
;;
|
|
292
294
|
esac],
|
|
293
295
|
[enable_fast_install=]_LT_ENABLE_FAST_INSTALL_DEFAULT)
|
|
@@ -304,14 +306,14 @@ AU_DEFUN([AC_ENABLE_FAST_INSTALL],
|
|
|
304
306
|
[_LT_SET_OPTION([LT_INIT], m4_if([$1], [no], [disable-])[fast-install])
|
|
305
307
|
AC_DIAGNOSE([obsolete],
|
|
306
308
|
[$0: Remove this warning and the call to _LT_SET_OPTION when you put
|
|
307
|
-
the
|
|
309
|
+
the 'fast-install' option into LT_INIT's first parameter.])
|
|
308
310
|
])
|
|
309
311
|
|
|
310
312
|
AU_DEFUN([AC_DISABLE_FAST_INSTALL],
|
|
311
313
|
[_LT_SET_OPTION([LT_INIT], [disable-fast-install])
|
|
312
314
|
AC_DIAGNOSE([obsolete],
|
|
313
315
|
[$0: Remove this warning and the call to _LT_SET_OPTION when you put
|
|
314
|
-
the
|
|
316
|
+
the 'disable-fast-install' option into LT_INIT's first parameter.])
|
|
315
317
|
])
|
|
316
318
|
|
|
317
319
|
dnl aclocal-1.4 backwards compatibility:
|
|
@@ -319,11 +321,64 @@ dnl AC_DEFUN([AC_ENABLE_FAST_INSTALL], [])
|
|
|
319
321
|
dnl AC_DEFUN([AM_DISABLE_FAST_INSTALL], [])
|
|
320
322
|
|
|
321
323
|
|
|
324
|
+
# _LT_WITH_AIX_SONAME([DEFAULT])
|
|
325
|
+
# ----------------------------------
|
|
326
|
+
# implement the --with-aix-soname flag, and support the `aix-soname=aix'
|
|
327
|
+
# and `aix-soname=both' and `aix-soname=svr4' LT_INIT options. DEFAULT
|
|
328
|
+
# is either `aix', `both' or `svr4'. If omitted, it defaults to `aix'.
|
|
329
|
+
m4_define([_LT_WITH_AIX_SONAME],
|
|
330
|
+
[m4_define([_LT_WITH_AIX_SONAME_DEFAULT], [m4_if($1, svr4, svr4, m4_if($1, both, both, aix))])dnl
|
|
331
|
+
shared_archive_member_spec=
|
|
332
|
+
case $host,$enable_shared in
|
|
333
|
+
power*-*-aix[[5-9]]*,yes)
|
|
334
|
+
AC_MSG_CHECKING([which variant of shared library versioning to provide])
|
|
335
|
+
AC_ARG_WITH([aix-soname],
|
|
336
|
+
[AS_HELP_STRING([--with-aix-soname=aix|svr4|both],
|
|
337
|
+
[shared library versioning (aka "SONAME") variant to provide on AIX, @<:@default=]_LT_WITH_AIX_SONAME_DEFAULT[@:>@.])],
|
|
338
|
+
[case $withval in
|
|
339
|
+
aix|svr4|both)
|
|
340
|
+
;;
|
|
341
|
+
*)
|
|
342
|
+
AC_MSG_ERROR([Unknown argument to --with-aix-soname])
|
|
343
|
+
;;
|
|
344
|
+
esac
|
|
345
|
+
lt_cv_with_aix_soname=$with_aix_soname],
|
|
346
|
+
[AC_CACHE_VAL([lt_cv_with_aix_soname],
|
|
347
|
+
[lt_cv_with_aix_soname=]_LT_WITH_AIX_SONAME_DEFAULT)
|
|
348
|
+
with_aix_soname=$lt_cv_with_aix_soname])
|
|
349
|
+
AC_MSG_RESULT([$with_aix_soname])
|
|
350
|
+
if test aix != "$with_aix_soname"; then
|
|
351
|
+
# For the AIX way of multilib, we name the shared archive member
|
|
352
|
+
# based on the bitwidth used, traditionally 'shr.o' or 'shr_64.o',
|
|
353
|
+
# and 'shr.imp' or 'shr_64.imp', respectively, for the Import File.
|
|
354
|
+
# Even when GNU compilers ignore OBJECT_MODE but need '-maix64' flag,
|
|
355
|
+
# the AIX toolchain works better with OBJECT_MODE set (default 32).
|
|
356
|
+
if test 64 = "${OBJECT_MODE-32}"; then
|
|
357
|
+
shared_archive_member_spec=shr_64
|
|
358
|
+
else
|
|
359
|
+
shared_archive_member_spec=shr
|
|
360
|
+
fi
|
|
361
|
+
fi
|
|
362
|
+
;;
|
|
363
|
+
*)
|
|
364
|
+
with_aix_soname=aix
|
|
365
|
+
;;
|
|
366
|
+
esac
|
|
367
|
+
|
|
368
|
+
_LT_DECL([], [shared_archive_member_spec], [0],
|
|
369
|
+
[Shared archive member basename, for filename based shared library versioning on AIX])dnl
|
|
370
|
+
])# _LT_WITH_AIX_SONAME
|
|
371
|
+
|
|
372
|
+
LT_OPTION_DEFINE([LT_INIT], [aix-soname=aix], [_LT_WITH_AIX_SONAME([aix])])
|
|
373
|
+
LT_OPTION_DEFINE([LT_INIT], [aix-soname=both], [_LT_WITH_AIX_SONAME([both])])
|
|
374
|
+
LT_OPTION_DEFINE([LT_INIT], [aix-soname=svr4], [_LT_WITH_AIX_SONAME([svr4])])
|
|
375
|
+
|
|
376
|
+
|
|
322
377
|
# _LT_WITH_PIC([MODE])
|
|
323
378
|
# --------------------
|
|
324
|
-
# implement the --with-pic flag, and support the
|
|
379
|
+
# implement the --with-pic flag, and support the 'pic-only' and 'no-pic'
|
|
325
380
|
# LT_INIT options.
|
|
326
|
-
# MODE is either
|
|
381
|
+
# MODE is either 'yes' or 'no'. If omitted, it defaults to 'both'.
|
|
327
382
|
m4_define([_LT_WITH_PIC],
|
|
328
383
|
[AC_ARG_WITH([pic],
|
|
329
384
|
[AS_HELP_STRING([--with-pic@<:@=PKGS@:>@],
|
|
@@ -334,19 +389,17 @@ m4_define([_LT_WITH_PIC],
|
|
|
334
389
|
*)
|
|
335
390
|
pic_mode=default
|
|
336
391
|
# Look at the argument we got. We use all the common list separators.
|
|
337
|
-
lt_save_ifs
|
|
392
|
+
lt_save_ifs=$IFS; IFS=$IFS$PATH_SEPARATOR,
|
|
338
393
|
for lt_pkg in $withval; do
|
|
339
|
-
IFS
|
|
394
|
+
IFS=$lt_save_ifs
|
|
340
395
|
if test "X$lt_pkg" = "X$lt_p"; then
|
|
341
396
|
pic_mode=yes
|
|
342
397
|
fi
|
|
343
398
|
done
|
|
344
|
-
IFS
|
|
399
|
+
IFS=$lt_save_ifs
|
|
345
400
|
;;
|
|
346
401
|
esac],
|
|
347
|
-
[pic_mode=default])
|
|
348
|
-
|
|
349
|
-
test -z "$pic_mode" && pic_mode=m4_default([$1], [default])
|
|
402
|
+
[pic_mode=m4_default([$1], [default])])
|
|
350
403
|
|
|
351
404
|
_LT_DECL([], [pic_mode], [0], [What type of objects to build])dnl
|
|
352
405
|
])# _LT_WITH_PIC
|
|
@@ -359,7 +412,7 @@ AU_DEFUN([AC_LIBTOOL_PICMODE],
|
|
|
359
412
|
[_LT_SET_OPTION([LT_INIT], [pic-only])
|
|
360
413
|
AC_DIAGNOSE([obsolete],
|
|
361
414
|
[$0: Remove this warning and the call to _LT_SET_OPTION when you
|
|
362
|
-
put the
|
|
415
|
+
put the 'pic-only' option into LT_INIT's first parameter.])
|
|
363
416
|
])
|
|
364
417
|
|
|
365
418
|
dnl aclocal-1.4 backwards compatibility:
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
# ltsugar.m4 -- libtool m4 base layer. -*-Autoconf-*-
|
|
2
2
|
#
|
|
3
|
-
# Copyright (C) 2004
|
|
3
|
+
# Copyright (C) 2004-2005, 2007-2008, 2011-2015 Free Software
|
|
4
|
+
# Foundation, Inc.
|
|
4
5
|
# Written by Gary V. Vaughan, 2004
|
|
5
6
|
#
|
|
6
7
|
# This file is free software; the Free Software Foundation gives
|
|
@@ -33,7 +34,7 @@ m4_define([_lt_join],
|
|
|
33
34
|
# ------------
|
|
34
35
|
# Manipulate m4 lists.
|
|
35
36
|
# These macros are necessary as long as will still need to support
|
|
36
|
-
# Autoconf-2.59 which quotes differently.
|
|
37
|
+
# Autoconf-2.59, which quotes differently.
|
|
37
38
|
m4_define([lt_car], [[$1]])
|
|
38
39
|
m4_define([lt_cdr],
|
|
39
40
|
[m4_if([$#], 0, [m4_fatal([$0: cannot be called without arguments])],
|
|
@@ -44,7 +45,7 @@ m4_define([lt_unquote], $1)
|
|
|
44
45
|
|
|
45
46
|
# lt_append(MACRO-NAME, STRING, [SEPARATOR])
|
|
46
47
|
# ------------------------------------------
|
|
47
|
-
# Redefine MACRO-NAME to hold its former content plus
|
|
48
|
+
# Redefine MACRO-NAME to hold its former content plus 'SEPARATOR''STRING'.
|
|
48
49
|
# Note that neither SEPARATOR nor STRING are expanded; they are appended
|
|
49
50
|
# to MACRO-NAME as is (leaving the expansion for when MACRO-NAME is invoked).
|
|
50
51
|
# No SEPARATOR is output if MACRO-NAME was previously undefined (different
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
# ltversion.m4 -- version numbers -*- Autoconf -*-
|
|
2
2
|
#
|
|
3
|
-
# Copyright (C) 2004 Free Software Foundation, Inc.
|
|
3
|
+
# Copyright (C) 2004, 2011-2015 Free Software Foundation, Inc.
|
|
4
4
|
# Written by Scott James Remnant, 2004
|
|
5
5
|
#
|
|
6
6
|
# This file is free software; the Free Software Foundation gives
|
|
@@ -9,15 +9,15 @@
|
|
|
9
9
|
|
|
10
10
|
# @configure_input@
|
|
11
11
|
|
|
12
|
-
# serial
|
|
12
|
+
# serial 4179 ltversion.m4
|
|
13
13
|
# This file is part of GNU Libtool
|
|
14
14
|
|
|
15
|
-
m4_define([LT_PACKAGE_VERSION], [2.4.
|
|
16
|
-
m4_define([LT_PACKAGE_REVISION], [
|
|
15
|
+
m4_define([LT_PACKAGE_VERSION], [2.4.6])
|
|
16
|
+
m4_define([LT_PACKAGE_REVISION], [2.4.6])
|
|
17
17
|
|
|
18
18
|
AC_DEFUN([LTVERSION_VERSION],
|
|
19
|
-
[macro_version='2.4.
|
|
20
|
-
macro_revision='
|
|
19
|
+
[macro_version='2.4.6'
|
|
20
|
+
macro_revision='2.4.6'
|
|
21
21
|
_LT_DECL(, macro_version, 0, [Which release of libtool.m4 was used?])
|
|
22
22
|
_LT_DECL(, macro_revision, 0)
|
|
23
23
|
])
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
# lt~obsolete.m4 -- aclocal satisfying obsolete definitions. -*-Autoconf-*-
|
|
2
2
|
#
|
|
3
|
-
# Copyright (C) 2004
|
|
3
|
+
# Copyright (C) 2004-2005, 2007, 2009, 2011-2015 Free Software
|
|
4
|
+
# Foundation, Inc.
|
|
4
5
|
# Written by Scott James Remnant, 2004.
|
|
5
6
|
#
|
|
6
7
|
# This file is free software; the Free Software Foundation gives
|
|
@@ -11,7 +12,7 @@
|
|
|
11
12
|
|
|
12
13
|
# These exist entirely to fool aclocal when bootstrapping libtool.
|
|
13
14
|
#
|
|
14
|
-
# In the past libtool.m4 has provided macros via AC_DEFUN (or AU_DEFUN)
|
|
15
|
+
# In the past libtool.m4 has provided macros via AC_DEFUN (or AU_DEFUN),
|
|
15
16
|
# which have later been changed to m4_define as they aren't part of the
|
|
16
17
|
# exported API, or moved to Autoconf or Automake where they belong.
|
|
17
18
|
#
|
|
@@ -25,7 +26,7 @@
|
|
|
25
26
|
# included after everything else. This provides aclocal with the
|
|
26
27
|
# AC_DEFUNs it wants, but when m4 processes it, it doesn't do anything
|
|
27
28
|
# because those macros already exist, or will be overwritten later.
|
|
28
|
-
# We use AC_DEFUN over AU_DEFUN for compatibility with aclocal-1.6.
|
|
29
|
+
# We use AC_DEFUN over AU_DEFUN for compatibility with aclocal-1.6.
|
|
29
30
|
#
|
|
30
31
|
# Anytime we withdraw an AC_DEFUN or AU_DEFUN, remember to add it here.
|
|
31
32
|
# Yes, that means every name once taken will need to remain here until
|
|
@@ -39,7 +39,7 @@ Test configuration for syntax errors and exit.
|
|
|
39
39
|
.BR \-D ", " \-\-describe-stats
|
|
40
40
|
Print stats description and exit.
|
|
41
41
|
.TP
|
|
42
|
-
.BR \-v ", " \-\-
|
|
42
|
+
.BR \-v ", " \-\-verbose=\fIN\fP
|
|
43
43
|
Set logging level to \fIN\fP. (default: 5, min: 0, max: 11)
|
|
44
44
|
.TP
|
|
45
45
|
.BR \-o ", " \-\-output=\fIfilename\fP
|
|
@@ -0,0 +1,162 @@
|
|
|
1
|
+
## Memcache Command Support
|
|
2
|
+
|
|
3
|
+
### Request
|
|
4
|
+
|
|
5
|
+
- Twemproxy implements only the memached ASCII commands
|
|
6
|
+
- Binary commands are currently unsupported
|
|
7
|
+
|
|
8
|
+
#### Ascii Storage Command
|
|
9
|
+
|
|
10
|
+
+-------------------+------------+--------------------------------------------------------------------------+
|
|
11
|
+
| Command | Supported? | Format |
|
|
12
|
+
+-------------------+------------+--------------------------------------------------------------------------+
|
|
13
|
+
| set | Yes | set <key> <flags> <expiry> <datalen> [noreply]\r\n<data>\r\n |
|
|
14
|
+
+-------------------+------------+--------------------------------------------------------------------------+
|
|
15
|
+
| add | Yes | add <key> <flags> <expiry> <datalen> [noreply]\r\n<data>\r\n |
|
|
16
|
+
+-------------------+------------+--------------------------------------------------------------------------+
|
|
17
|
+
| replace | Yes | replace <key> <flags> <expiry> <datalen> [noreply]\r\n<data>\r\n |
|
|
18
|
+
+-------------------+------------+--------------------------------------------------------------------------+
|
|
19
|
+
| append | Yes | append <key> <flags> <expiry> <datalen> [noreply]\r\n<data>\r\n |
|
|
20
|
+
+-------------------+------------+--------------------------------------------------------------------------+
|
|
21
|
+
| prepend | Yes | prepend <key> <flags> <expiry> <datalen> [noreply]\r\n<data>\r\n |
|
|
22
|
+
+-------------------+------------+--------------------------------------------------------------------------+
|
|
23
|
+
| cas | Yes | cas <key> <flags> <expiry> <datalen> <cas> [noreply]\r\n<data>\r\n |
|
|
24
|
+
+-------------------+------------+--------------------------------------------------------------------------+
|
|
25
|
+
|
|
26
|
+
* Where,
|
|
27
|
+
* <flags> - uint32_t : data specific client side flags
|
|
28
|
+
* <expiry> - uint32_t : expiration time (in seconds)
|
|
29
|
+
* <datalen> - uint32_t : size of the data (in bytes)
|
|
30
|
+
* <data> - uint8_t[]: data block
|
|
31
|
+
* <cas> - uint64_t
|
|
32
|
+
|
|
33
|
+
#### Ascii Retrival Command
|
|
34
|
+
|
|
35
|
+
+-------------------+------------+--------------------------------------------------------------------------+
|
|
36
|
+
| Command | Supported? | Format |
|
|
37
|
+
+-------------------+------------+--------------------------------------------------------------------------+
|
|
38
|
+
| get | Yes | get <key> [<key>]+\r\n |
|
|
39
|
+
+-------------------+------------+--------------------------------------------------------------------------+
|
|
40
|
+
| gets | Yes | gets <key> [<key>]+\r\n |
|
|
41
|
+
+-------------------+------------+--------------------------------------------------------------------------+
|
|
42
|
+
|
|
43
|
+
#### Ascii Delete
|
|
44
|
+
|
|
45
|
+
+-------------------+------------+--------------------------------------------------------------------------+
|
|
46
|
+
| Command | Supported? | Format |
|
|
47
|
+
+-------------------+------------+--------------------------------------------------------------------------+
|
|
48
|
+
| delete | Yes | delete <key> [noreply]\r\n |
|
|
49
|
+
+-------------------+------------+--------------------------------------------------------------------------+
|
|
50
|
+
|
|
51
|
+
#### Ascii Arithmetic Command
|
|
52
|
+
|
|
53
|
+
+-------------------+------------+--------------------------------------------------------------------------+
|
|
54
|
+
| Command | Supported? | Format |
|
|
55
|
+
+-------------------+------------+--------------------------------------------------------------------------+
|
|
56
|
+
| incr | Yes | incr <key> <value> [noreply]\r\n |
|
|
57
|
+
+-------------------+------------+--------------------------------------------------------------------------+
|
|
58
|
+
| decr | Yes | decr <key> <value> [noreply]\r\n |
|
|
59
|
+
+-------------------+------------+--------------------------------------------------------------------------+
|
|
60
|
+
|
|
61
|
+
* Where,
|
|
62
|
+
* <value> - uint64_t
|
|
63
|
+
|
|
64
|
+
#### Ascii Misc Command
|
|
65
|
+
|
|
66
|
+
+-------------------+------------+--------------------------------------------------------------------------+
|
|
67
|
+
| Command | Supported? | Format |
|
|
68
|
+
+-------------------+------------+--------------------------------------------------------------------------+
|
|
69
|
+
| set | Yes | touch <key> <expiry>[noreply]\r\n |
|
|
70
|
+
+-------------------+------------+--------------------------------------------------------------------------+
|
|
71
|
+
| quit | Yes | quit\r\n |
|
|
72
|
+
+-------------------+------------+--------------------------------------------------------------------------+
|
|
73
|
+
| flush_all | No | flush_all [<delay>] [noreply]\r\n |
|
|
74
|
+
+-------------------+------------+--------------------------------------------------------------------------+
|
|
75
|
+
| version | No | version\r\n |
|
|
76
|
+
+-------------------+------------+--------------------------------------------------------------------------+
|
|
77
|
+
| verbosity | No | verbosity <num> [noreply]\r\n |
|
|
78
|
+
+-------------------+------------+--------------------------------------------------------------------------+
|
|
79
|
+
| stats | No | stats\r\n |
|
|
80
|
+
+-------------------+------------+--------------------------------------------------------------------------+
|
|
81
|
+
| stats | No | stats <args>\r\n |
|
|
82
|
+
+-------------------+------------+--------------------------------------------------------------------------+
|
|
83
|
+
|
|
84
|
+
### Response
|
|
85
|
+
|
|
86
|
+
#### Error Responses
|
|
87
|
+
|
|
88
|
+
ERROR\r\n
|
|
89
|
+
CLIENT_ERROR [error]\r\n
|
|
90
|
+
SERVER_ERROR [error]\r\n
|
|
91
|
+
|
|
92
|
+
Where,
|
|
93
|
+
- ERROR means client sent a non-existent command name
|
|
94
|
+
- CLIENT_ERROR means that command sent by the client does not conform to the protocol
|
|
95
|
+
- SERVER_ERROR means that there was an error on the server side that made processing of the command impossible
|
|
96
|
+
|
|
97
|
+
#### Storage Command Responses
|
|
98
|
+
|
|
99
|
+
STORED\r\n
|
|
100
|
+
NOT_STORED\r\n
|
|
101
|
+
EXISTS\r\n
|
|
102
|
+
NOT_FOUND\r\n
|
|
103
|
+
|
|
104
|
+
Where,
|
|
105
|
+
- STORED indicates success.
|
|
106
|
+
- NOT_STORED indicates the data was not stored because condition for an add or replace wasn't met.
|
|
107
|
+
- EXISTS indicates that the item you are trying to store with a cas has been modified since you last fetched it.
|
|
108
|
+
- NOT_FOUND indicates that the item you are trying to store with a cas does not exist.
|
|
109
|
+
|
|
110
|
+
#### Delete Command Responses
|
|
111
|
+
|
|
112
|
+
NOT_FOUND\r\n
|
|
113
|
+
DELETED\r\n
|
|
114
|
+
|
|
115
|
+
#### Retrival Responses
|
|
116
|
+
|
|
117
|
+
END\r\n
|
|
118
|
+
VALUE <key> <flags> <datalen> [<cas>]\r\n<data>\r\nEND\r\n
|
|
119
|
+
VALUE <key> <flags> <datalen> [<cas>]\r\n<data>\r\n[VALUE <key> <flags> <datalen> [<cas>]\r\n<data>]+\r\nEND\r\n
|
|
120
|
+
|
|
121
|
+
#### Arithmetic Responses
|
|
122
|
+
|
|
123
|
+
NOT_FOUND\r\n
|
|
124
|
+
<value>\r\n
|
|
125
|
+
|
|
126
|
+
Where,
|
|
127
|
+
- <value> - uint64_t : new key value after incr or decr operation
|
|
128
|
+
|
|
129
|
+
#### Touch Command Responses
|
|
130
|
+
|
|
131
|
+
NOT_FOUND\r\n
|
|
132
|
+
TOUCHED\r\n
|
|
133
|
+
|
|
134
|
+
#### Statistics Response
|
|
135
|
+
|
|
136
|
+
[STAT <name> <value>\r\n]+END\r\n
|
|
137
|
+
|
|
138
|
+
#### Misc Responses
|
|
139
|
+
|
|
140
|
+
OK\r\n
|
|
141
|
+
VERSION <version>\r\n
|
|
142
|
+
|
|
143
|
+
### Notes
|
|
144
|
+
|
|
145
|
+
- set always creates mapping irrespective of whether it is present on not.
|
|
146
|
+
- add, adds only if the mapping is not present
|
|
147
|
+
- replace, only replaces if the mapping is present
|
|
148
|
+
- append and prepend command ignore flags and expiry values
|
|
149
|
+
- noreply instructs the server to not send the reply even if there is an error.
|
|
150
|
+
- decr of 0 is 0, while incr of UINT64_MAX is 0
|
|
151
|
+
- maximum length of the key is 250 characters
|
|
152
|
+
- expiry of 0 means that item never expires, though it could be evicted from the cache
|
|
153
|
+
- non-zero expiry is either unix time (# seconds since 01/01/1970) or,
|
|
154
|
+
offset in seconds from the current time (< 60 x 60 x 24 x 30 seconds = 30 days)
|
|
155
|
+
- expiry time is with respect to the server (not client)
|
|
156
|
+
- <datalen> can be zero and when it is, the <data> block is empty.
|
|
157
|
+
- Thoughts:
|
|
158
|
+
- ascii protocol is easier to debug - think using strace or tcpdump to see
|
|
159
|
+
protocol on the wire, Or using telnet or netcat or socat to build memcache
|
|
160
|
+
requests and responses
|
|
161
|
+
http://stackoverflow.com/questions/2525188/are-binary-protocols-dead
|
|
162
|
+
- http://news.ycombinator.com/item?id=1712788
|