nutcracker 0.2.3 → 0.2.4.beta1
Sign up to get free protection for your applications and to get access to all the features.
- data/README.md +53 -5
- data/Rakefile +14 -19
- data/bin/nutcracker +6 -1
- data/ext/nutcracker/ChangeLog +9 -0
- data/ext/nutcracker/LICENSE +0 -0
- data/ext/nutcracker/Makefile +643 -0
- data/ext/nutcracker/Makefile.am +0 -0
- data/ext/nutcracker/Makefile.in +66 -149
- data/ext/nutcracker/NOTICE +0 -0
- data/ext/nutcracker/README.md +13 -11
- data/ext/nutcracker/aclocal.m4 +112 -201
- data/ext/nutcracker/autom4te.cache/output.0 +18664 -0
- data/ext/nutcracker/autom4te.cache/output.1 +18664 -0
- data/ext/nutcracker/autom4te.cache/output.2 +18664 -0
- data/ext/nutcracker/autom4te.cache/requests +494 -0
- data/ext/nutcracker/autom4te.cache/traces.0 +2415 -0
- data/ext/nutcracker/autom4te.cache/traces.1 +945 -0
- data/ext/nutcracker/autom4te.cache/traces.2 +2415 -0
- data/ext/nutcracker/conf/nutcracker.leaf.yml +0 -0
- data/ext/nutcracker/conf/nutcracker.root.yml +0 -0
- data/ext/nutcracker/conf/nutcracker.yml +0 -0
- data/ext/nutcracker/config.h +332 -0
- data/ext/nutcracker/config.h.in +15 -0
- data/ext/nutcracker/config.log +2684 -0
- data/ext/nutcracker/config.status +2317 -0
- data/ext/nutcracker/config/config.guess +23 -84
- data/ext/nutcracker/config/config.sub +23 -93
- data/ext/nutcracker/config/depcomp +35 -81
- data/ext/nutcracker/config/install-sh +109 -122
- data/ext/nutcracker/config/ltmain.sh +1053 -721
- data/ext/nutcracker/config/missing +20 -29
- data/ext/nutcracker/configure +2122 -2320
- data/ext/nutcracker/configure.ac +35 -3
- data/ext/nutcracker/contrib/Makefile +494 -0
- data/ext/nutcracker/contrib/Makefile.am +0 -0
- data/ext/nutcracker/contrib/Makefile.in +41 -107
- data/ext/nutcracker/contrib/yaml-0.1.4.tar.gz +0 -0
- data/ext/nutcracker/contrib/yaml-0.1.4/Makefile +736 -0
- data/ext/nutcracker/contrib/yaml-0.1.4/autom4te.cache/output.0 +13102 -0
- data/ext/nutcracker/contrib/yaml-0.1.4/autom4te.cache/output.1 +13085 -0
- data/ext/nutcracker/contrib/yaml-0.1.4/autom4te.cache/output.2 +13085 -0
- data/ext/nutcracker/contrib/yaml-0.1.4/autom4te.cache/requests +476 -0
- data/ext/nutcracker/contrib/yaml-0.1.4/autom4te.cache/traces.0 +2339 -0
- data/ext/nutcracker/contrib/yaml-0.1.4/autom4te.cache/traces.1 +545 -0
- data/ext/nutcracker/contrib/yaml-0.1.4/autom4te.cache/traces.2 +2339 -0
- data/ext/nutcracker/contrib/yaml-0.1.4/config.h +81 -0
- data/ext/nutcracker/contrib/yaml-0.1.4/config.h.in~ +80 -0
- data/ext/nutcracker/contrib/yaml-0.1.4/config.log +688 -0
- data/ext/nutcracker/contrib/yaml-0.1.4/config.status +2032 -0
- data/ext/nutcracker/contrib/yaml-0.1.4/doc/html/annotated.html +51 -0
- data/ext/nutcracker/contrib/yaml-0.1.4/doc/html/bc_s.png +0 -0
- data/ext/nutcracker/contrib/yaml-0.1.4/doc/html/classes.html +41 -0
- data/ext/nutcracker/contrib/yaml-0.1.4/doc/html/closed.png +0 -0
- data/ext/nutcracker/contrib/yaml-0.1.4/doc/html/doxygen.css +656 -0
- data/ext/nutcracker/contrib/yaml-0.1.4/doc/html/doxygen.png +0 -0
- data/ext/nutcracker/contrib/yaml-0.1.4/doc/html/files.html +40 -0
- data/ext/nutcracker/contrib/yaml-0.1.4/doc/html/functions.html +91 -0
- data/ext/nutcracker/contrib/yaml-0.1.4/doc/html/functions_0x62.html +84 -0
- data/ext/nutcracker/contrib/yaml-0.1.4/doc/html/functions_0x63.html +87 -0
- data/ext/nutcracker/contrib/yaml-0.1.4/doc/html/functions_0x64.html +83 -0
- data/ext/nutcracker/contrib/yaml-0.1.4/doc/html/functions_0x65.html +110 -0
- data/ext/nutcracker/contrib/yaml-0.1.4/doc/html/functions_0x66.html +79 -0
- data/ext/nutcracker/contrib/yaml-0.1.4/doc/html/functions_0x68.html +80 -0
- data/ext/nutcracker/contrib/yaml-0.1.4/doc/html/functions_0x69.html +92 -0
- data/ext/nutcracker/contrib/yaml-0.1.4/doc/html/functions_0x6b.html +71 -0
- data/ext/nutcracker/contrib/yaml-0.1.4/doc/html/functions_0x6c.html +88 -0
- data/ext/nutcracker/contrib/yaml-0.1.4/doc/html/functions_0x6d.html +96 -0
- data/ext/nutcracker/contrib/yaml-0.1.4/doc/html/functions_0x6e.html +71 -0
- data/ext/nutcracker/contrib/yaml-0.1.4/doc/html/functions_0x6f.html +80 -0
- data/ext/nutcracker/contrib/yaml-0.1.4/doc/html/functions_0x70.html +100 -0
- data/ext/nutcracker/contrib/yaml-0.1.4/doc/html/functions_0x71.html +71 -0
- data/ext/nutcracker/contrib/yaml-0.1.4/doc/html/functions_0x72.html +87 -0
- data/ext/nutcracker/contrib/yaml-0.1.4/doc/html/functions_0x73.html +163 -0
- data/ext/nutcracker/contrib/yaml-0.1.4/doc/html/functions_0x74.html +115 -0
- data/ext/nutcracker/contrib/yaml-0.1.4/doc/html/functions_0x75.html +71 -0
- data/ext/nutcracker/contrib/yaml-0.1.4/doc/html/functions_0x76.html +80 -0
- data/ext/nutcracker/contrib/yaml-0.1.4/doc/html/functions_0x77.html +77 -0
- data/ext/nutcracker/contrib/yaml-0.1.4/doc/html/functions_vars.html +91 -0
- data/ext/nutcracker/contrib/yaml-0.1.4/doc/html/functions_vars_0x62.html +84 -0
- data/ext/nutcracker/contrib/yaml-0.1.4/doc/html/functions_vars_0x63.html +87 -0
- data/ext/nutcracker/contrib/yaml-0.1.4/doc/html/functions_vars_0x64.html +83 -0
- data/ext/nutcracker/contrib/yaml-0.1.4/doc/html/functions_vars_0x65.html +110 -0
- data/ext/nutcracker/contrib/yaml-0.1.4/doc/html/functions_vars_0x66.html +79 -0
- data/ext/nutcracker/contrib/yaml-0.1.4/doc/html/functions_vars_0x68.html +80 -0
- data/ext/nutcracker/contrib/yaml-0.1.4/doc/html/functions_vars_0x69.html +92 -0
- data/ext/nutcracker/contrib/yaml-0.1.4/doc/html/functions_vars_0x6b.html +71 -0
- data/ext/nutcracker/contrib/yaml-0.1.4/doc/html/functions_vars_0x6c.html +88 -0
- data/ext/nutcracker/contrib/yaml-0.1.4/doc/html/functions_vars_0x6d.html +96 -0
- data/ext/nutcracker/contrib/yaml-0.1.4/doc/html/functions_vars_0x6e.html +71 -0
- data/ext/nutcracker/contrib/yaml-0.1.4/doc/html/functions_vars_0x6f.html +80 -0
- data/ext/nutcracker/contrib/yaml-0.1.4/doc/html/functions_vars_0x70.html +100 -0
- data/ext/nutcracker/contrib/yaml-0.1.4/doc/html/functions_vars_0x71.html +71 -0
- data/ext/nutcracker/contrib/yaml-0.1.4/doc/html/functions_vars_0x72.html +87 -0
- data/ext/nutcracker/contrib/yaml-0.1.4/doc/html/functions_vars_0x73.html +163 -0
- data/ext/nutcracker/contrib/yaml-0.1.4/doc/html/functions_vars_0x74.html +115 -0
- data/ext/nutcracker/contrib/yaml-0.1.4/doc/html/functions_vars_0x75.html +71 -0
- data/ext/nutcracker/contrib/yaml-0.1.4/doc/html/functions_vars_0x76.html +80 -0
- data/ext/nutcracker/contrib/yaml-0.1.4/doc/html/functions_vars_0x77.html +77 -0
- data/ext/nutcracker/contrib/yaml-0.1.4/doc/html/globals.html +667 -0
- data/ext/nutcracker/contrib/yaml-0.1.4/doc/html/globals_defs.html +81 -0
- data/ext/nutcracker/contrib/yaml-0.1.4/doc/html/globals_enum.html +78 -0
- data/ext/nutcracker/contrib/yaml-0.1.4/doc/html/globals_eval.html +373 -0
- data/ext/nutcracker/contrib/yaml-0.1.4/doc/html/globals_func.html +196 -0
- data/ext/nutcracker/contrib/yaml-0.1.4/doc/html/globals_type.html +126 -0
- data/ext/nutcracker/contrib/yaml-0.1.4/doc/html/group__basic.html +320 -0
- data/ext/nutcracker/contrib/yaml-0.1.4/doc/html/group__emitter.html +819 -0
- data/ext/nutcracker/contrib/yaml-0.1.4/doc/html/group__events.html +664 -0
- data/ext/nutcracker/contrib/yaml-0.1.4/doc/html/group__export.html +60 -0
- data/ext/nutcracker/contrib/yaml-0.1.4/doc/html/group__nodes.html +795 -0
- data/ext/nutcracker/contrib/yaml-0.1.4/doc/html/group__parser.html +606 -0
- data/ext/nutcracker/contrib/yaml-0.1.4/doc/html/group__styles.html +222 -0
- data/ext/nutcracker/contrib/yaml-0.1.4/doc/html/group__tokens.html +246 -0
- data/ext/nutcracker/contrib/yaml-0.1.4/doc/html/group__version.html +106 -0
- data/ext/nutcracker/contrib/yaml-0.1.4/doc/html/index.html +31 -0
- data/ext/nutcracker/contrib/yaml-0.1.4/doc/html/modules.html +42 -0
- data/ext/nutcracker/contrib/yaml-0.1.4/doc/html/nav_f.png +0 -0
- data/ext/nutcracker/contrib/yaml-0.1.4/doc/html/nav_h.png +0 -0
- data/ext/nutcracker/contrib/yaml-0.1.4/doc/html/open.png +0 -0
- data/ext/nutcracker/contrib/yaml-0.1.4/doc/html/structyaml__alias__data__s.html +108 -0
- data/ext/nutcracker/contrib/yaml-0.1.4/doc/html/structyaml__document__s.html +235 -0
- data/ext/nutcracker/contrib/yaml-0.1.4/doc/html/structyaml__emitter__s.html +1300 -0
- data/ext/nutcracker/contrib/yaml-0.1.4/doc/html/structyaml__event__s.html +496 -0
- data/ext/nutcracker/contrib/yaml-0.1.4/doc/html/structyaml__mark__s.html +108 -0
- data/ext/nutcracker/contrib/yaml-0.1.4/doc/html/structyaml__node__pair__s.html +91 -0
- data/ext/nutcracker/contrib/yaml-0.1.4/doc/html/structyaml__node__s.html +420 -0
- data/ext/nutcracker/contrib/yaml-0.1.4/doc/html/structyaml__parser__s.html +1229 -0
- data/ext/nutcracker/contrib/yaml-0.1.4/doc/html/structyaml__simple__key__s.html +97 -0
- data/ext/nutcracker/contrib/yaml-0.1.4/doc/html/structyaml__tag__directive__s.html +91 -0
- data/ext/nutcracker/contrib/yaml-0.1.4/doc/html/structyaml__token__s.html +413 -0
- data/ext/nutcracker/contrib/yaml-0.1.4/doc/html/structyaml__version__directive__s.html +91 -0
- data/ext/nutcracker/contrib/yaml-0.1.4/doc/html/tab_a.png +0 -0
- data/ext/nutcracker/contrib/yaml-0.1.4/doc/html/tab_b.png +0 -0
- data/ext/nutcracker/contrib/yaml-0.1.4/doc/html/tab_h.png +0 -0
- data/ext/nutcracker/contrib/yaml-0.1.4/doc/html/tab_s.png +0 -0
- data/ext/nutcracker/contrib/yaml-0.1.4/doc/html/tabs.css +59 -0
- data/ext/nutcracker/contrib/yaml-0.1.4/doc/html/yaml_8h.html +525 -0
- data/ext/nutcracker/contrib/yaml-0.1.4/include/Makefile.am +17 -0
- data/ext/nutcracker/contrib/yaml-0.1.4/include/Makefile.in +470 -0
- data/ext/nutcracker/contrib/yaml-0.1.4/libtool +8890 -0
- data/ext/nutcracker/contrib/yaml-0.1.4/src/Makefile +484 -0
- data/ext/nutcracker/contrib/yaml-0.1.4/src/api.lo +12 -0
- data/ext/nutcracker/contrib/yaml-0.1.4/src/api.o +0 -0
- data/ext/nutcracker/contrib/yaml-0.1.4/src/dumper.lo +12 -0
- data/ext/nutcracker/contrib/yaml-0.1.4/src/dumper.o +0 -0
- data/ext/nutcracker/contrib/yaml-0.1.4/src/emitter.lo +12 -0
- data/ext/nutcracker/contrib/yaml-0.1.4/src/emitter.o +0 -0
- data/ext/nutcracker/contrib/yaml-0.1.4/src/libyaml.la +41 -0
- data/ext/nutcracker/contrib/yaml-0.1.4/src/loader.lo +12 -0
- data/ext/nutcracker/contrib/yaml-0.1.4/src/loader.o +0 -0
- data/ext/nutcracker/contrib/yaml-0.1.4/src/parser.lo +12 -0
- data/ext/nutcracker/contrib/yaml-0.1.4/src/parser.o +0 -0
- data/ext/nutcracker/contrib/yaml-0.1.4/src/reader.lo +12 -0
- data/ext/nutcracker/contrib/yaml-0.1.4/src/reader.o +0 -0
- data/ext/nutcracker/contrib/yaml-0.1.4/src/scanner.lo +12 -0
- data/ext/nutcracker/contrib/yaml-0.1.4/src/scanner.o +0 -0
- data/ext/nutcracker/contrib/yaml-0.1.4/src/writer.lo +12 -0
- data/ext/nutcracker/contrib/yaml-0.1.4/src/writer.o +0 -0
- data/ext/nutcracker/contrib/yaml-0.1.4/stamp-h1 +1 -0
- data/ext/nutcracker/contrib/yaml-0.1.4/tests/Makefile +675 -0
- data/ext/nutcracker/contrib/yaml-0.1.4/tests/example-deconstructor +0 -0
- data/ext/nutcracker/contrib/yaml-0.1.4/tests/example-deconstructor-alt +0 -0
- data/ext/nutcracker/contrib/yaml-0.1.4/tests/example-deconstructor-alt.o +0 -0
- data/ext/nutcracker/contrib/yaml-0.1.4/tests/example-deconstructor.o +0 -0
- data/ext/nutcracker/contrib/yaml-0.1.4/tests/example-reformatter +0 -0
- data/ext/nutcracker/contrib/yaml-0.1.4/tests/example-reformatter-alt +0 -0
- data/ext/nutcracker/contrib/yaml-0.1.4/tests/example-reformatter-alt.o +0 -0
- data/ext/nutcracker/contrib/yaml-0.1.4/tests/example-reformatter.o +0 -0
- data/ext/nutcracker/contrib/yaml-0.1.4/tests/run-dumper +0 -0
- data/ext/nutcracker/contrib/yaml-0.1.4/tests/run-dumper.o +0 -0
- data/ext/nutcracker/contrib/yaml-0.1.4/tests/run-emitter +0 -0
- data/ext/nutcracker/contrib/yaml-0.1.4/tests/run-emitter.o +0 -0
- data/ext/nutcracker/contrib/yaml-0.1.4/tests/run-loader +0 -0
- data/ext/nutcracker/contrib/yaml-0.1.4/tests/run-loader.o +0 -0
- data/ext/nutcracker/contrib/yaml-0.1.4/tests/run-parser +0 -0
- data/ext/nutcracker/contrib/yaml-0.1.4/tests/run-parser.o +0 -0
- data/ext/nutcracker/contrib/yaml-0.1.4/tests/run-scanner +0 -0
- data/ext/nutcracker/contrib/yaml-0.1.4/tests/run-scanner.o +0 -0
- data/ext/nutcracker/contrib/yaml-0.1.4/yaml-0.1.pc +10 -0
- data/ext/nutcracker/contrib/yaml-0.1.4/yaml-0.1.pc.in +10 -0
- data/ext/nutcracker/extconf.rb +0 -5
- data/ext/nutcracker/libtool +9403 -0
- data/ext/nutcracker/m4/libtool.m4 +553 -492
- data/ext/nutcracker/m4/ltoptions.m4 +7 -6
- data/ext/nutcracker/m4/ltversion.m4 +5 -5
- data/ext/nutcracker/m4/lt~obsolete.m4 +9 -3
- data/ext/nutcracker/notes/c-styleguide.txt +0 -0
- data/ext/nutcracker/notes/debug.txt +0 -0
- data/ext/nutcracker/notes/memcache.txt +0 -0
- data/ext/nutcracker/notes/recommendation.md +21 -2
- data/ext/nutcracker/notes/redis.md +9 -9
- data/ext/nutcracker/notes/socket.txt +0 -0
- data/ext/nutcracker/scripts/nutcracker.init +0 -0
- data/ext/nutcracker/scripts/nutcracker.spec +0 -0
- data/ext/nutcracker/scripts/redis-check.py +0 -0
- data/ext/nutcracker/scripts/redis-check.sh +9 -0
- data/ext/nutcracker/src/Makefile +647 -0
- data/ext/nutcracker/src/Makefile.am +1 -1
- data/ext/nutcracker/src/Makefile.in +74 -153
- data/ext/nutcracker/src/hashkit/Makefile +476 -0
- data/ext/nutcracker/src/hashkit/Makefile.am +1 -0
- data/ext/nutcracker/src/hashkit/Makefile.in +39 -64
- data/ext/nutcracker/src/hashkit/libhashkit.a +0 -0
- data/ext/nutcracker/src/hashkit/nc_crc16.c +66 -0
- data/ext/nutcracker/src/hashkit/nc_crc16.o +0 -0
- data/ext/nutcracker/src/hashkit/nc_crc32.c +0 -0
- data/ext/nutcracker/src/hashkit/nc_crc32.o +0 -0
- data/ext/nutcracker/src/hashkit/nc_fnv.c +0 -0
- data/ext/nutcracker/src/hashkit/nc_fnv.o +0 -0
- data/ext/nutcracker/src/hashkit/nc_hashkit.h +2 -0
- data/ext/nutcracker/src/hashkit/nc_hsieh.c +0 -0
- data/ext/nutcracker/src/hashkit/nc_hsieh.o +0 -0
- data/ext/nutcracker/src/hashkit/nc_jenkins.c +0 -0
- data/ext/nutcracker/src/hashkit/nc_jenkins.o +0 -0
- data/ext/nutcracker/src/hashkit/nc_ketama.c +0 -0
- data/ext/nutcracker/src/hashkit/nc_ketama.o +0 -0
- data/ext/nutcracker/src/hashkit/nc_md5.c +0 -0
- data/ext/nutcracker/src/hashkit/nc_md5.o +0 -0
- data/ext/nutcracker/src/hashkit/nc_modula.c +18 -6
- data/ext/nutcracker/src/hashkit/nc_modula.o +0 -0
- data/ext/nutcracker/src/hashkit/nc_murmur.c +0 -0
- data/ext/nutcracker/src/hashkit/nc_murmur.o +0 -0
- data/ext/nutcracker/src/hashkit/nc_one_at_a_time.c +0 -0
- data/ext/nutcracker/src/hashkit/nc_one_at_a_time.o +0 -0
- data/ext/nutcracker/src/hashkit/nc_random.c +0 -0
- data/ext/nutcracker/src/hashkit/nc_random.o +0 -0
- data/ext/nutcracker/src/nc.c +0 -0
- data/ext/nutcracker/src/nc.o +0 -0
- data/ext/nutcracker/src/nc_array.c +0 -0
- data/ext/nutcracker/src/nc_array.h +0 -0
- data/ext/nutcracker/src/nc_array.o +0 -0
- data/ext/nutcracker/src/nc_client.c +0 -0
- data/ext/nutcracker/src/nc_client.h +0 -0
- data/ext/nutcracker/src/nc_client.o +0 -0
- data/ext/nutcracker/src/nc_conf.c +14 -35
- data/ext/nutcracker/src/nc_conf.h +1 -1
- data/ext/nutcracker/src/nc_conf.o +0 -0
- data/ext/nutcracker/src/nc_connection.c +0 -0
- data/ext/nutcracker/src/nc_connection.h +0 -0
- data/ext/nutcracker/src/nc_connection.o +0 -0
- data/ext/nutcracker/src/nc_core.c +29 -26
- data/ext/nutcracker/src/nc_core.h +13 -5
- data/ext/nutcracker/src/nc_core.o +0 -0
- data/ext/nutcracker/src/{nc_event.c → nc_epoll.c} +94 -30
- data/ext/nutcracker/src/nc_epoll.o +0 -0
- data/ext/nutcracker/src/nc_event.h +33 -13
- data/ext/nutcracker/src/nc_kqueue.c +296 -0
- data/ext/nutcracker/src/nc_kqueue.o +0 -0
- data/ext/nutcracker/src/nc_log.c +0 -0
- data/ext/nutcracker/src/nc_log.h +0 -0
- data/ext/nutcracker/src/nc_log.o +0 -0
- data/ext/nutcracker/src/nc_mbuf.c +0 -0
- data/ext/nutcracker/src/nc_mbuf.h +0 -0
- data/ext/nutcracker/src/nc_mbuf.o +0 -0
- data/ext/nutcracker/src/nc_message.c +0 -0
- data/ext/nutcracker/src/nc_message.h +2 -0
- data/ext/nutcracker/src/nc_message.o +0 -0
- data/ext/nutcracker/src/nc_proxy.c +8 -8
- data/ext/nutcracker/src/nc_proxy.h +0 -0
- data/ext/nutcracker/src/nc_proxy.o +0 -0
- data/ext/nutcracker/src/nc_queue.h +0 -0
- data/ext/nutcracker/src/nc_rbtree.c +0 -0
- data/ext/nutcracker/src/nc_rbtree.h +0 -0
- data/ext/nutcracker/src/nc_rbtree.o +0 -0
- data/ext/nutcracker/src/nc_request.c +3 -3
- data/ext/nutcracker/src/nc_request.o +0 -0
- data/ext/nutcracker/src/nc_response.c +4 -6
- data/ext/nutcracker/src/nc_response.o +0 -0
- data/ext/nutcracker/src/nc_server.c +14 -12
- data/ext/nutcracker/src/nc_server.h +0 -0
- data/ext/nutcracker/src/nc_server.o +0 -0
- data/ext/nutcracker/src/nc_signal.c +0 -0
- data/ext/nutcracker/src/nc_signal.h +0 -0
- data/ext/nutcracker/src/nc_signal.o +0 -0
- data/ext/nutcracker/src/nc_stats.c +16 -21
- data/ext/nutcracker/src/nc_stats.h +3 -4
- data/ext/nutcracker/src/nc_stats.o +0 -0
- data/ext/nutcracker/src/nc_string.c +0 -0
- data/ext/nutcracker/src/nc_string.h +0 -0
- data/ext/nutcracker/src/nc_string.o +0 -0
- data/ext/nutcracker/src/nc_util.c +16 -0
- data/ext/nutcracker/src/nc_util.h +1 -0
- data/ext/nutcracker/src/nc_util.o +0 -0
- data/ext/nutcracker/src/nutcracker +0 -0
- data/ext/nutcracker/src/proto/Makefile +454 -0
- data/ext/nutcracker/src/proto/Makefile.am +0 -0
- data/ext/nutcracker/src/proto/Makefile.in +32 -60
- data/ext/nutcracker/src/proto/libproto.a +0 -0
- data/ext/nutcracker/src/proto/nc_memcache.c +0 -0
- data/ext/nutcracker/src/proto/nc_memcache.o +0 -0
- data/ext/nutcracker/src/proto/nc_proto.h +0 -0
- data/ext/nutcracker/src/proto/nc_redis.c +17 -4
- data/ext/nutcracker/src/proto/nc_redis.o +0 -0
- data/ext/nutcracker/stamp-h1 +1 -0
- data/lib/nutcracker.rb +64 -2
- data/lib/nutcracker/version.rb +1 -1
- metadata +237 -9
Binary file
|
@@ -157,11 +157,9 @@ rsp_filter(struct context *ctx, struct conn *conn, struct msg *msg)
|
|
157
157
|
|
158
158
|
pmsg = TAILQ_FIRST(&conn->omsg_q);
|
159
159
|
if (pmsg == NULL) {
|
160
|
-
|
161
|
-
msg->mlen, conn->sd);
|
160
|
+
log_debug(LOG_ERR, "filter stray rsp %"PRIu64" len %"PRIu32" on s %d",
|
161
|
+
msg->id, msg->mlen, conn->sd);
|
162
162
|
rsp_put(msg);
|
163
|
-
errno = EINVAL;
|
164
|
-
conn->err = errno;
|
165
163
|
return true;
|
166
164
|
}
|
167
165
|
ASSERT(pmsg->peer == NULL);
|
@@ -222,7 +220,7 @@ rsp_forward(struct context *ctx, struct conn *s_conn, struct msg *msg)
|
|
222
220
|
ASSERT(c_conn->client && !c_conn->proxy);
|
223
221
|
|
224
222
|
if (req_done(c_conn, TAILQ_FIRST(&c_conn->omsg_q))) {
|
225
|
-
status = event_add_out(ctx->
|
223
|
+
status = event_add_out(ctx->evb, c_conn);
|
226
224
|
if (status != NC_OK) {
|
227
225
|
c_conn->err = errno;
|
228
226
|
}
|
@@ -267,7 +265,7 @@ rsp_send_next(struct context *ctx, struct conn *conn)
|
|
267
265
|
log_debug(LOG_INFO, "c %d is done", conn->sd);
|
268
266
|
}
|
269
267
|
|
270
|
-
status = event_del_out(ctx->
|
268
|
+
status = event_del_out(ctx->evb, conn);
|
271
269
|
if (status != NC_OK) {
|
272
270
|
conn->err = errno;
|
273
271
|
}
|
Binary file
|
@@ -367,7 +367,7 @@ server_close(struct context *ctx, struct conn *conn)
|
|
367
367
|
msg->err = conn->err;
|
368
368
|
|
369
369
|
if (req_done(c_conn, TAILQ_FIRST(&c_conn->omsg_q))) {
|
370
|
-
event_add_out(ctx->
|
370
|
+
event_add_out(ctx->evb, msg->owner);
|
371
371
|
}
|
372
372
|
|
373
373
|
log_debug(LOG_INFO, "close s %d schedule error for req %"PRIu64" "
|
@@ -397,7 +397,7 @@ server_close(struct context *ctx, struct conn *conn)
|
|
397
397
|
msg->err = conn->err;
|
398
398
|
|
399
399
|
if (req_done(c_conn, TAILQ_FIRST(&c_conn->omsg_q))) {
|
400
|
-
event_add_out(ctx->
|
400
|
+
event_add_out(ctx->evb, msg->owner);
|
401
401
|
}
|
402
402
|
|
403
403
|
log_debug(LOG_INFO, "close s %d schedule error for req %"PRIu64" "
|
@@ -451,7 +451,7 @@ server_connect(struct context *ctx, struct server *server, struct conn *conn)
|
|
451
451
|
log_debug(LOG_VVERB, "connect to server '%.*s'", server->pname.len,
|
452
452
|
server->pname.data);
|
453
453
|
|
454
|
-
|
454
|
+
conn->sd = socket(conn->family, SOCK_STREAM, 0);
|
455
455
|
if (conn->sd < 0) {
|
456
456
|
log_error("socket for server '%.*s' failed: %s", server->pname.len,
|
457
457
|
server->pname.data, strerror(errno));
|
@@ -467,24 +467,26 @@ server_connect(struct context *ctx, struct server *server, struct conn *conn)
|
|
467
467
|
goto error;
|
468
468
|
}
|
469
469
|
|
470
|
-
|
471
|
-
|
472
|
-
|
473
|
-
|
474
|
-
|
470
|
+
if (server->pname.data[0] != '/') {
|
471
|
+
status = nc_set_tcpnodelay(conn->sd);
|
472
|
+
if (status != NC_OK) {
|
473
|
+
log_warn("set tcpnodelay on s %d for server '%.*s' failed, ignored: %s",
|
474
|
+
conn->sd, server->pname.len, server->pname.data,
|
475
|
+
strerror(errno));
|
476
|
+
}
|
475
477
|
}
|
476
478
|
|
477
|
-
status = event_add_conn(ctx->
|
479
|
+
status = event_add_conn(ctx->evb, conn);
|
478
480
|
if (status != NC_OK) {
|
479
|
-
log_error("event add conn
|
480
|
-
|
481
|
+
log_error("event add conn s %d for server '%.*s' failed: %s",
|
482
|
+
conn->sd, server->pname.len, server->pname.data,
|
481
483
|
strerror(errno));
|
482
484
|
goto error;
|
483
485
|
}
|
484
486
|
|
485
487
|
ASSERT(!conn->connecting && !conn->connected);
|
486
488
|
|
487
|
-
|
489
|
+
status = connect(conn->sd, conn->addr, conn->addrlen);
|
488
490
|
if (status != NC_OK) {
|
489
491
|
if (errno == EINPROGRESS) {
|
490
492
|
conn->connecting = 1;
|
File without changes
|
Binary file
|
File without changes
|
File without changes
|
Binary file
|
@@ -21,11 +21,11 @@
|
|
21
21
|
|
22
22
|
#include <sys/types.h>
|
23
23
|
#include <sys/socket.h>
|
24
|
-
#include <sys/epoll.h>
|
25
24
|
#include <netinet/in.h>
|
26
25
|
|
27
26
|
#include <nc_core.h>
|
28
27
|
#include <nc_server.h>
|
28
|
+
#include <nc_event.h>
|
29
29
|
|
30
30
|
struct stats_desc {
|
31
31
|
char *name; /* stats name */
|
@@ -777,15 +777,7 @@ stats_loop(void *arg)
|
|
777
777
|
int n;
|
778
778
|
|
779
779
|
for (;;) {
|
780
|
-
n =
|
781
|
-
if (n < 0) {
|
782
|
-
if (errno == EINTR) {
|
783
|
-
continue;
|
784
|
-
}
|
785
|
-
log_error("epoll wait on e %d with event m %d failed: %s",
|
786
|
-
st->ep, st->sd, strerror(errno));
|
787
|
-
break;
|
788
|
-
}
|
780
|
+
n = event_wait(st->st_evb, st->interval);
|
789
781
|
|
790
782
|
/* aggregate stats from shadow (b) -> sum (c) */
|
791
783
|
stats_aggregate(st);
|
@@ -847,7 +839,6 @@ static rstatus_t
|
|
847
839
|
stats_start_aggregator(struct stats *st)
|
848
840
|
{
|
849
841
|
rstatus_t status;
|
850
|
-
struct epoll_event ev;
|
851
842
|
|
852
843
|
if (!stats_enabled) {
|
853
844
|
return NC_OK;
|
@@ -858,25 +849,28 @@ stats_start_aggregator(struct stats *st)
|
|
858
849
|
return status;
|
859
850
|
}
|
860
851
|
|
861
|
-
st->
|
862
|
-
if (st->
|
863
|
-
log_error("
|
852
|
+
st->st_evb = evbase_create(1, NULL);
|
853
|
+
if (st->st_evb == NULL) {
|
854
|
+
log_error("stats aggregator create failed: %s", strerror(errno));
|
864
855
|
return NC_ERROR;
|
865
856
|
}
|
866
857
|
|
867
|
-
|
868
|
-
|
858
|
+
ASSERT(st->st_evb != NULL);
|
859
|
+
ASSERT(st->sd >= 0);
|
869
860
|
|
870
|
-
status =
|
861
|
+
status = event_add_st(st->st_evb, st->sd);
|
871
862
|
if (status < 0) {
|
872
|
-
log_error("
|
873
|
-
|
863
|
+
log_error("stats aggregator create failed: %s", strerror(errno));
|
864
|
+
evbase_destroy(st->st_evb);
|
865
|
+
st->st_evb = NULL;
|
874
866
|
return NC_ERROR;
|
875
867
|
}
|
876
868
|
|
877
869
|
status = pthread_create(&st->tid, NULL, stats_loop, st);
|
878
870
|
if (status < 0) {
|
879
871
|
log_error("stats aggregator create failed: %s", strerror(status));
|
872
|
+
evbase_destroy(st->st_evb);
|
873
|
+
st->st_evb = NULL;
|
880
874
|
return NC_ERROR;
|
881
875
|
}
|
882
876
|
|
@@ -891,7 +885,8 @@ stats_stop_aggregator(struct stats *st)
|
|
891
885
|
}
|
892
886
|
|
893
887
|
close(st->sd);
|
894
|
-
|
888
|
+
evbase_destroy(st->st_evb);
|
889
|
+
st->st_evb = NULL;
|
895
890
|
}
|
896
891
|
|
897
892
|
struct stats *
|
@@ -921,7 +916,7 @@ stats_create(uint16_t stats_port, char *stats_ip, int stats_interval,
|
|
921
916
|
array_null(&st->sum);
|
922
917
|
|
923
918
|
st->tid = (pthread_t) -1;
|
924
|
-
st->
|
919
|
+
st->st_evb = NULL;
|
925
920
|
st->sd = -1;
|
926
921
|
|
927
922
|
string_set_text(&st->service_str, "service");
|
@@ -18,9 +18,8 @@
|
|
18
18
|
#ifndef _NC_STATS_H_
|
19
19
|
#define _NC_STATS_H_
|
20
20
|
|
21
|
-
#include <sys/epoll.h>
|
22
|
-
|
23
21
|
#include <nc_core.h>
|
22
|
+
#include <nc_event.h>
|
24
23
|
|
25
24
|
#define STATS_POOL_CODEC(ACTION) \
|
26
25
|
/* client behavior */ \
|
@@ -101,8 +100,8 @@ struct stats {
|
|
101
100
|
|
102
101
|
pthread_t tid; /* stats aggregator thread */
|
103
102
|
int sd; /* stats descriptor */
|
104
|
-
|
105
|
-
struct
|
103
|
+
|
104
|
+
struct evbase *st_evb;
|
106
105
|
|
107
106
|
struct string service_str; /* service string */
|
108
107
|
struct string service; /* service */
|
Binary file
|
File without changes
|
File without changes
|
Binary file
|
@@ -22,7 +22,10 @@
|
|
22
22
|
#include <unistd.h>
|
23
23
|
#include <fcntl.h>
|
24
24
|
#include <netdb.h>
|
25
|
+
|
26
|
+
#ifdef NC_HAVE_BACKTRACE
|
25
27
|
#include <execinfo.h>
|
28
|
+
#endif
|
26
29
|
|
27
30
|
#include <sys/time.h>
|
28
31
|
#include <sys/types.h>
|
@@ -275,6 +278,7 @@ _nc_free(void *ptr, const char *name, int line)
|
|
275
278
|
void
|
276
279
|
nc_stacktrace(int skip_count)
|
277
280
|
{
|
281
|
+
#ifdef NC_HAVE_BACKTRACE
|
278
282
|
void *stack[64];
|
279
283
|
char **symbols;
|
280
284
|
int size, i, j;
|
@@ -292,6 +296,7 @@ nc_stacktrace(int skip_count)
|
|
292
296
|
}
|
293
297
|
|
294
298
|
free(symbols);
|
299
|
+
#endif
|
295
300
|
}
|
296
301
|
|
297
302
|
void
|
@@ -617,3 +622,14 @@ nc_unresolve_desc(int sd)
|
|
617
622
|
|
618
623
|
return nc_unresolve_addr(addr, addrlen);
|
619
624
|
}
|
625
|
+
|
626
|
+
struct timespec
|
627
|
+
nc_millisec_to_timespec (int n_millisec)
|
628
|
+
{
|
629
|
+
struct timeval tv = {n_millisec/1000LL, (n_millisec%1000LL)*1000LL};
|
630
|
+
struct timespec ts;
|
631
|
+
|
632
|
+
TIMEVAL_TO_TIMESPEC(&tv, &ts);
|
633
|
+
|
634
|
+
return ts;
|
635
|
+
}
|
@@ -190,6 +190,7 @@ int _scnprintf(char *buf, size_t size, const char *fmt, ...);
|
|
190
190
|
int _vscnprintf(char *buf, size_t size, const char *fmt, va_list args);
|
191
191
|
int64_t nc_usec_now(void);
|
192
192
|
int64_t nc_msec_now(void);
|
193
|
+
struct timespec nc_millisec_to_timespec(int millisec);
|
193
194
|
|
194
195
|
/*
|
195
196
|
* Address resolution for internet (ipv4 and ipv6) and unix domain
|
Binary file
|
Binary file
|
@@ -0,0 +1,454 @@
|
|
1
|
+
# Makefile.in generated by automake 1.10 from Makefile.am.
|
2
|
+
# src/proto/Makefile. Generated from Makefile.in by configure.
|
3
|
+
|
4
|
+
# Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
|
5
|
+
# 2003, 2004, 2005, 2006 Free Software Foundation, Inc.
|
6
|
+
# This Makefile.in is free software; the Free Software Foundation
|
7
|
+
# gives unlimited permission to copy and/or distribute it,
|
8
|
+
# with or without modifications, as long as this notice is preserved.
|
9
|
+
|
10
|
+
# This program is distributed in the hope that it will be useful,
|
11
|
+
# but WITHOUT ANY WARRANTY, to the extent permitted by law; without
|
12
|
+
# even the implied warranty of MERCHANTABILITY or FITNESS FOR A
|
13
|
+
# PARTICULAR PURPOSE.
|
14
|
+
|
15
|
+
|
16
|
+
|
17
|
+
|
18
|
+
|
19
|
+
pkgdatadir = $(datadir)/nutcracker
|
20
|
+
pkglibdir = $(libdir)/nutcracker
|
21
|
+
pkgincludedir = $(includedir)/nutcracker
|
22
|
+
am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd
|
23
|
+
install_sh_DATA = $(install_sh) -c -m 644
|
24
|
+
install_sh_PROGRAM = $(install_sh) -c
|
25
|
+
install_sh_SCRIPT = $(install_sh) -c
|
26
|
+
INSTALL_HEADER = $(INSTALL_DATA)
|
27
|
+
transform = $(program_transform_name)
|
28
|
+
NORMAL_INSTALL = :
|
29
|
+
PRE_INSTALL = :
|
30
|
+
POST_INSTALL = :
|
31
|
+
NORMAL_UNINSTALL = :
|
32
|
+
PRE_UNINSTALL = :
|
33
|
+
POST_UNINSTALL = :
|
34
|
+
build_triplet = i386-apple-darwin11.4.2
|
35
|
+
host_triplet = i386-apple-darwin11.4.2
|
36
|
+
subdir = src/proto
|
37
|
+
DIST_COMMON = $(noinst_HEADERS) $(srcdir)/Makefile.am \
|
38
|
+
$(srcdir)/Makefile.in
|
39
|
+
ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
|
40
|
+
am__aclocal_m4_deps = $(top_srcdir)/m4/libtool.m4 \
|
41
|
+
$(top_srcdir)/m4/ltoptions.m4 $(top_srcdir)/m4/ltsugar.m4 \
|
42
|
+
$(top_srcdir)/m4/ltversion.m4 $(top_srcdir)/m4/lt~obsolete.m4 \
|
43
|
+
$(top_srcdir)/configure.ac
|
44
|
+
am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
|
45
|
+
$(ACLOCAL_M4)
|
46
|
+
mkinstalldirs = $(install_sh) -d
|
47
|
+
CONFIG_HEADER = $(top_builddir)/config.h
|
48
|
+
CONFIG_CLEAN_FILES =
|
49
|
+
LIBRARIES = $(noinst_LIBRARIES)
|
50
|
+
ARFLAGS = cru
|
51
|
+
libproto_a_AR = $(AR) $(ARFLAGS)
|
52
|
+
libproto_a_LIBADD =
|
53
|
+
am_libproto_a_OBJECTS = nc_memcache.$(OBJEXT) nc_redis.$(OBJEXT)
|
54
|
+
libproto_a_OBJECTS = $(am_libproto_a_OBJECTS)
|
55
|
+
DEFAULT_INCLUDES = -I. -I$(top_builddir)
|
56
|
+
depcomp = $(SHELL) $(top_srcdir)/config/depcomp
|
57
|
+
am__depfiles_maybe = depfiles
|
58
|
+
COMPILE = $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) \
|
59
|
+
$(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS)
|
60
|
+
LTCOMPILE = $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) \
|
61
|
+
--mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) \
|
62
|
+
$(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS)
|
63
|
+
CCLD = $(CC)
|
64
|
+
LINK = $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) \
|
65
|
+
--mode=link $(CCLD) $(AM_CFLAGS) $(CFLAGS) $(AM_LDFLAGS) \
|
66
|
+
$(LDFLAGS) -o $@
|
67
|
+
SOURCES = $(libproto_a_SOURCES)
|
68
|
+
DIST_SOURCES = $(libproto_a_SOURCES)
|
69
|
+
HEADERS = $(noinst_HEADERS)
|
70
|
+
ETAGS = etags
|
71
|
+
CTAGS = ctags
|
72
|
+
DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
|
73
|
+
ACLOCAL = ${SHELL} /Users/eran/github/nutcracker/twemproxy-twemproxy_bsd/config/missing --run aclocal-1.10
|
74
|
+
AMTAR = ${SHELL} /Users/eran/github/nutcracker/twemproxy-twemproxy_bsd/config/missing --run tar
|
75
|
+
AR = ar
|
76
|
+
AUTOCONF = ${SHELL} /Users/eran/github/nutcracker/twemproxy-twemproxy_bsd/config/missing --run autoconf
|
77
|
+
AUTOHEADER = ${SHELL} /Users/eran/github/nutcracker/twemproxy-twemproxy_bsd/config/missing --run autoheader
|
78
|
+
AUTOMAKE = ${SHELL} /Users/eran/github/nutcracker/twemproxy-twemproxy_bsd/config/missing --run automake-1.10
|
79
|
+
AWK = awk
|
80
|
+
CC = gcc
|
81
|
+
CCDEPMODE = depmode=gcc3
|
82
|
+
CFLAGS = -g -O2
|
83
|
+
CPP = gcc -E
|
84
|
+
CPPFLAGS =
|
85
|
+
CXX = g++
|
86
|
+
CXXCPP = g++ -E
|
87
|
+
CXXDEPMODE = depmode=gcc3
|
88
|
+
CXXFLAGS = -g -O2
|
89
|
+
CYGPATH_W = echo
|
90
|
+
DEFS = -DHAVE_CONFIG_H
|
91
|
+
DEPDIR = .deps
|
92
|
+
DSYMUTIL = dsymutil
|
93
|
+
DUMPBIN =
|
94
|
+
ECHO_C = \c
|
95
|
+
ECHO_N =
|
96
|
+
ECHO_T =
|
97
|
+
EGREP = /usr/bin/grep -E
|
98
|
+
EXEEXT =
|
99
|
+
FGREP = /usr/bin/grep -F
|
100
|
+
GREP = /usr/bin/grep
|
101
|
+
INSTALL = /usr/bin/install -c
|
102
|
+
INSTALL_DATA = ${INSTALL} -m 644
|
103
|
+
INSTALL_PROGRAM = ${INSTALL}
|
104
|
+
INSTALL_SCRIPT = ${INSTALL}
|
105
|
+
INSTALL_STRIP_PROGRAM = $(install_sh) -c -s
|
106
|
+
LD = /usr/llvm-gcc-4.2/libexec/gcc/i686-apple-darwin11/4.2.1/ld
|
107
|
+
LDFLAGS =
|
108
|
+
LIBOBJS =
|
109
|
+
LIBS = -lpthread -lm
|
110
|
+
LIBTOOL = $(SHELL) $(top_builddir)/libtool
|
111
|
+
LIPO = lipo
|
112
|
+
LN_S = ln -s
|
113
|
+
LTLIBOBJS =
|
114
|
+
MAKEINFO = ${SHELL} /Users/eran/github/nutcracker/twemproxy-twemproxy_bsd/config/missing --run makeinfo
|
115
|
+
MKDIR_P = ../../config/install-sh -c -d
|
116
|
+
NM = /usr/bin/nm
|
117
|
+
NMEDIT = nmedit
|
118
|
+
OBJDUMP = false
|
119
|
+
OBJEXT = o
|
120
|
+
OTOOL = otool
|
121
|
+
OTOOL64 = :
|
122
|
+
PACKAGE = nutcracker
|
123
|
+
PACKAGE_BUGREPORT = manj@twitter.com
|
124
|
+
PACKAGE_NAME = nutcracker
|
125
|
+
PACKAGE_STRING = nutcracker 0.2.4
|
126
|
+
PACKAGE_TARNAME = nutcracker
|
127
|
+
PACKAGE_URL =
|
128
|
+
PACKAGE_VERSION = 0.2.4
|
129
|
+
PATH_SEPARATOR = :
|
130
|
+
RANLIB = ranlib
|
131
|
+
SED = /usr/bin/sed
|
132
|
+
SET_MAKE =
|
133
|
+
SHELL = /bin/sh
|
134
|
+
STRIP = strip
|
135
|
+
VERSION = 0.2.4
|
136
|
+
abs_builddir = /Users/eran/github/nutcracker/twemproxy-twemproxy_bsd/src/proto
|
137
|
+
abs_srcdir = /Users/eran/github/nutcracker/twemproxy-twemproxy_bsd/src/proto
|
138
|
+
abs_top_builddir = /Users/eran/github/nutcracker/twemproxy-twemproxy_bsd
|
139
|
+
abs_top_srcdir = /Users/eran/github/nutcracker/twemproxy-twemproxy_bsd
|
140
|
+
ac_ct_CC = gcc
|
141
|
+
ac_ct_CXX = g++
|
142
|
+
ac_ct_DUMPBIN =
|
143
|
+
am__include = include
|
144
|
+
am__leading_dot = .
|
145
|
+
am__quote =
|
146
|
+
am__tar = ${AMTAR} chof - "$$tardir"
|
147
|
+
am__untar = ${AMTAR} xf -
|
148
|
+
bindir = ${exec_prefix}/bin
|
149
|
+
build = i386-apple-darwin11.4.2
|
150
|
+
build_alias =
|
151
|
+
build_cpu = i386
|
152
|
+
build_os = darwin11.4.2
|
153
|
+
build_vendor = apple
|
154
|
+
builddir = .
|
155
|
+
datadir = ${datarootdir}
|
156
|
+
datarootdir = ${prefix}/share
|
157
|
+
docdir = ${datarootdir}/doc/${PACKAGE_TARNAME}
|
158
|
+
dvidir = ${docdir}
|
159
|
+
exec_prefix = ${prefix}
|
160
|
+
host = i386-apple-darwin11.4.2
|
161
|
+
host_alias =
|
162
|
+
host_cpu = i386
|
163
|
+
host_os = darwin11.4.2
|
164
|
+
host_vendor = apple
|
165
|
+
htmldir = ${docdir}
|
166
|
+
includedir = ${prefix}/include
|
167
|
+
infodir = ${datarootdir}/info
|
168
|
+
install_sh = $(SHELL) /Users/eran/github/nutcracker/twemproxy-twemproxy_bsd/config/install-sh
|
169
|
+
libdir = ${exec_prefix}/lib
|
170
|
+
libexecdir = ${exec_prefix}/libexec
|
171
|
+
localedir = ${datarootdir}/locale
|
172
|
+
localstatedir = ${prefix}/var
|
173
|
+
mandir = ${datarootdir}/man
|
174
|
+
mkdir_p = $(top_builddir)/config/install-sh -c -d
|
175
|
+
oldincludedir = /usr/include
|
176
|
+
pdfdir = ${docdir}
|
177
|
+
prefix = /usr/local
|
178
|
+
program_transform_name = s,x,x,
|
179
|
+
psdir = ${docdir}
|
180
|
+
sbindir = ${exec_prefix}/sbin
|
181
|
+
sharedstatedir = ${prefix}/com
|
182
|
+
srcdir = .
|
183
|
+
subdirs = contrib/yaml-0.1.4
|
184
|
+
sysconfdir = ${prefix}/etc
|
185
|
+
target_alias =
|
186
|
+
top_build_prefix = ../../
|
187
|
+
top_builddir = ../..
|
188
|
+
top_srcdir = ../..
|
189
|
+
MAINTAINERCLEANFILES = Makefile.in
|
190
|
+
AM_CPPFLAGS = -I $(top_srcdir)/src
|
191
|
+
AM_CFLAGS = -Wall -Wshadow -Wno-unused-parameter -Wno-unused-value
|
192
|
+
noinst_LIBRARIES = libproto.a
|
193
|
+
noinst_HEADERS = nc_proto.h
|
194
|
+
libproto_a_SOURCES = \
|
195
|
+
nc_memcache.c \
|
196
|
+
nc_redis.c
|
197
|
+
|
198
|
+
all: all-am
|
199
|
+
|
200
|
+
.SUFFIXES:
|
201
|
+
.SUFFIXES: .c .lo .o .obj
|
202
|
+
$(srcdir)/Makefile.in: $(srcdir)/Makefile.am $(am__configure_deps)
|
203
|
+
@for dep in $?; do \
|
204
|
+
case '$(am__configure_deps)' in \
|
205
|
+
*$$dep*) \
|
206
|
+
cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh \
|
207
|
+
&& exit 0; \
|
208
|
+
exit 1;; \
|
209
|
+
esac; \
|
210
|
+
done; \
|
211
|
+
echo ' cd $(top_srcdir) && $(AUTOMAKE) --foreign src/proto/Makefile'; \
|
212
|
+
cd $(top_srcdir) && \
|
213
|
+
$(AUTOMAKE) --foreign src/proto/Makefile
|
214
|
+
.PRECIOUS: Makefile
|
215
|
+
Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
|
216
|
+
@case '$?' in \
|
217
|
+
*config.status*) \
|
218
|
+
cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh;; \
|
219
|
+
*) \
|
220
|
+
echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe)'; \
|
221
|
+
cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe);; \
|
222
|
+
esac;
|
223
|
+
|
224
|
+
$(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES)
|
225
|
+
cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
|
226
|
+
|
227
|
+
$(top_srcdir)/configure: $(am__configure_deps)
|
228
|
+
cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
|
229
|
+
$(ACLOCAL_M4): $(am__aclocal_m4_deps)
|
230
|
+
cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
|
231
|
+
|
232
|
+
clean-noinstLIBRARIES:
|
233
|
+
-test -z "$(noinst_LIBRARIES)" || rm -f $(noinst_LIBRARIES)
|
234
|
+
libproto.a: $(libproto_a_OBJECTS) $(libproto_a_DEPENDENCIES)
|
235
|
+
-rm -f libproto.a
|
236
|
+
$(libproto_a_AR) libproto.a $(libproto_a_OBJECTS) $(libproto_a_LIBADD)
|
237
|
+
$(RANLIB) libproto.a
|
238
|
+
|
239
|
+
mostlyclean-compile:
|
240
|
+
-rm -f *.$(OBJEXT)
|
241
|
+
|
242
|
+
distclean-compile:
|
243
|
+
-rm -f *.tab.c
|
244
|
+
|
245
|
+
include ./$(DEPDIR)/nc_memcache.Po
|
246
|
+
include ./$(DEPDIR)/nc_redis.Po
|
247
|
+
|
248
|
+
.c.o:
|
249
|
+
$(COMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ $<
|
250
|
+
mv -f $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Po
|
251
|
+
# source='$<' object='$@' libtool=no \
|
252
|
+
# DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) \
|
253
|
+
# $(COMPILE) -c $<
|
254
|
+
|
255
|
+
.c.obj:
|
256
|
+
$(COMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ `$(CYGPATH_W) '$<'`
|
257
|
+
mv -f $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Po
|
258
|
+
# source='$<' object='$@' libtool=no \
|
259
|
+
# DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) \
|
260
|
+
# $(COMPILE) -c `$(CYGPATH_W) '$<'`
|
261
|
+
|
262
|
+
.c.lo:
|
263
|
+
$(LTCOMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ $<
|
264
|
+
mv -f $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Plo
|
265
|
+
# source='$<' object='$@' libtool=yes \
|
266
|
+
# DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) \
|
267
|
+
# $(LTCOMPILE) -c -o $@ $<
|
268
|
+
|
269
|
+
mostlyclean-libtool:
|
270
|
+
-rm -f *.lo
|
271
|
+
|
272
|
+
clean-libtool:
|
273
|
+
-rm -rf .libs _libs
|
274
|
+
|
275
|
+
ID: $(HEADERS) $(SOURCES) $(LISP) $(TAGS_FILES)
|
276
|
+
list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \
|
277
|
+
unique=`for i in $$list; do \
|
278
|
+
if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
|
279
|
+
done | \
|
280
|
+
$(AWK) ' { files[$$0] = 1; } \
|
281
|
+
END { for (i in files) print i; }'`; \
|
282
|
+
mkid -fID $$unique
|
283
|
+
tags: TAGS
|
284
|
+
|
285
|
+
TAGS: $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \
|
286
|
+
$(TAGS_FILES) $(LISP)
|
287
|
+
tags=; \
|
288
|
+
here=`pwd`; \
|
289
|
+
list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \
|
290
|
+
unique=`for i in $$list; do \
|
291
|
+
if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
|
292
|
+
done | \
|
293
|
+
$(AWK) ' { files[$$0] = 1; } \
|
294
|
+
END { for (i in files) print i; }'`; \
|
295
|
+
if test -z "$(ETAGS_ARGS)$$tags$$unique"; then :; else \
|
296
|
+
test -n "$$unique" || unique=$$empty_fix; \
|
297
|
+
$(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \
|
298
|
+
$$tags $$unique; \
|
299
|
+
fi
|
300
|
+
ctags: CTAGS
|
301
|
+
CTAGS: $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \
|
302
|
+
$(TAGS_FILES) $(LISP)
|
303
|
+
tags=; \
|
304
|
+
here=`pwd`; \
|
305
|
+
list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \
|
306
|
+
unique=`for i in $$list; do \
|
307
|
+
if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
|
308
|
+
done | \
|
309
|
+
$(AWK) ' { files[$$0] = 1; } \
|
310
|
+
END { for (i in files) print i; }'`; \
|
311
|
+
test -z "$(CTAGS_ARGS)$$tags$$unique" \
|
312
|
+
|| $(CTAGS) $(CTAGSFLAGS) $(AM_CTAGSFLAGS) $(CTAGS_ARGS) \
|
313
|
+
$$tags $$unique
|
314
|
+
|
315
|
+
GTAGS:
|
316
|
+
here=`$(am__cd) $(top_builddir) && pwd` \
|
317
|
+
&& cd $(top_srcdir) \
|
318
|
+
&& gtags -i $(GTAGS_ARGS) $$here
|
319
|
+
|
320
|
+
distclean-tags:
|
321
|
+
-rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags
|
322
|
+
|
323
|
+
distdir: $(DISTFILES)
|
324
|
+
@srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
|
325
|
+
topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
|
326
|
+
list='$(DISTFILES)'; \
|
327
|
+
dist_files=`for file in $$list; do echo $$file; done | \
|
328
|
+
sed -e "s|^$$srcdirstrip/||;t" \
|
329
|
+
-e "s|^$$topsrcdirstrip/|$(top_builddir)/|;t"`; \
|
330
|
+
case $$dist_files in \
|
331
|
+
*/*) $(MKDIR_P) `echo "$$dist_files" | \
|
332
|
+
sed '/\//!d;s|^|$(distdir)/|;s,/[^/]*$$,,' | \
|
333
|
+
sort -u` ;; \
|
334
|
+
esac; \
|
335
|
+
for file in $$dist_files; do \
|
336
|
+
if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \
|
337
|
+
if test -d $$d/$$file; then \
|
338
|
+
dir=`echo "/$$file" | sed -e 's,/[^/]*$$,,'`; \
|
339
|
+
if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \
|
340
|
+
cp -pR $(srcdir)/$$file $(distdir)$$dir || exit 1; \
|
341
|
+
fi; \
|
342
|
+
cp -pR $$d/$$file $(distdir)$$dir || exit 1; \
|
343
|
+
else \
|
344
|
+
test -f $(distdir)/$$file \
|
345
|
+
|| cp -p $$d/$$file $(distdir)/$$file \
|
346
|
+
|| exit 1; \
|
347
|
+
fi; \
|
348
|
+
done
|
349
|
+
check-am: all-am
|
350
|
+
check: check-am
|
351
|
+
all-am: Makefile $(LIBRARIES) $(HEADERS)
|
352
|
+
installdirs:
|
353
|
+
install: install-am
|
354
|
+
install-exec: install-exec-am
|
355
|
+
install-data: install-data-am
|
356
|
+
uninstall: uninstall-am
|
357
|
+
|
358
|
+
install-am: all-am
|
359
|
+
@$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am
|
360
|
+
|
361
|
+
installcheck: installcheck-am
|
362
|
+
install-strip:
|
363
|
+
$(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
|
364
|
+
install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
|
365
|
+
`test -z '$(STRIP)' || \
|
366
|
+
echo "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'"` install
|
367
|
+
mostlyclean-generic:
|
368
|
+
|
369
|
+
clean-generic:
|
370
|
+
|
371
|
+
distclean-generic:
|
372
|
+
-test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES)
|
373
|
+
|
374
|
+
maintainer-clean-generic:
|
375
|
+
@echo "This command is intended for maintainers to use"
|
376
|
+
@echo "it deletes files that may require special tools to rebuild."
|
377
|
+
-test -z "$(MAINTAINERCLEANFILES)" || rm -f $(MAINTAINERCLEANFILES)
|
378
|
+
clean: clean-am
|
379
|
+
|
380
|
+
clean-am: clean-generic clean-libtool clean-noinstLIBRARIES \
|
381
|
+
mostlyclean-am
|
382
|
+
|
383
|
+
distclean: distclean-am
|
384
|
+
-rm -rf ./$(DEPDIR)
|
385
|
+
-rm -f Makefile
|
386
|
+
distclean-am: clean-am distclean-compile distclean-generic \
|
387
|
+
distclean-tags
|
388
|
+
|
389
|
+
dvi: dvi-am
|
390
|
+
|
391
|
+
dvi-am:
|
392
|
+
|
393
|
+
html: html-am
|
394
|
+
|
395
|
+
info: info-am
|
396
|
+
|
397
|
+
info-am:
|
398
|
+
|
399
|
+
install-data-am:
|
400
|
+
|
401
|
+
install-dvi: install-dvi-am
|
402
|
+
|
403
|
+
install-exec-am:
|
404
|
+
|
405
|
+
install-html: install-html-am
|
406
|
+
|
407
|
+
install-info: install-info-am
|
408
|
+
|
409
|
+
install-man:
|
410
|
+
|
411
|
+
install-pdf: install-pdf-am
|
412
|
+
|
413
|
+
install-ps: install-ps-am
|
414
|
+
|
415
|
+
installcheck-am:
|
416
|
+
|
417
|
+
maintainer-clean: maintainer-clean-am
|
418
|
+
-rm -rf ./$(DEPDIR)
|
419
|
+
-rm -f Makefile
|
420
|
+
maintainer-clean-am: distclean-am maintainer-clean-generic
|
421
|
+
|
422
|
+
mostlyclean: mostlyclean-am
|
423
|
+
|
424
|
+
mostlyclean-am: mostlyclean-compile mostlyclean-generic \
|
425
|
+
mostlyclean-libtool
|
426
|
+
|
427
|
+
pdf: pdf-am
|
428
|
+
|
429
|
+
pdf-am:
|
430
|
+
|
431
|
+
ps: ps-am
|
432
|
+
|
433
|
+
ps-am:
|
434
|
+
|
435
|
+
uninstall-am:
|
436
|
+
|
437
|
+
.MAKE: install-am install-strip
|
438
|
+
|
439
|
+
.PHONY: CTAGS GTAGS all all-am check check-am clean clean-generic \
|
440
|
+
clean-libtool clean-noinstLIBRARIES ctags distclean \
|
441
|
+
distclean-compile distclean-generic distclean-libtool \
|
442
|
+
distclean-tags distdir dvi dvi-am html html-am info info-am \
|
443
|
+
install install-am install-data install-data-am install-dvi \
|
444
|
+
install-dvi-am install-exec install-exec-am install-html \
|
445
|
+
install-html-am install-info install-info-am install-man \
|
446
|
+
install-pdf install-pdf-am install-ps install-ps-am \
|
447
|
+
install-strip installcheck installcheck-am installdirs \
|
448
|
+
maintainer-clean maintainer-clean-generic mostlyclean \
|
449
|
+
mostlyclean-compile mostlyclean-generic mostlyclean-libtool \
|
450
|
+
pdf pdf-am ps ps-am tags uninstall uninstall-am
|
451
|
+
|
452
|
+
# Tell versions [3.59,3.63) of GNU make to not export all variables.
|
453
|
+
# Otherwise a system limit (for SysV at least) may be exceeded.
|
454
|
+
.NOEXPORT:
|