nutcracker 0.2.4.mac9 → 0.2.4.1
Sign up to get free protection for your applications and to get access to all the features.
- data/README.md +13 -46
- data/Rakefile +20 -15
- data/bin/nutcracker +1 -6
- data/ext/nutcracker/ChangeLog +0 -9
- data/ext/nutcracker/LICENSE +0 -0
- data/ext/nutcracker/Makefile.am +0 -0
- data/ext/nutcracker/Makefile.in +149 -66
- data/ext/nutcracker/NOTICE +0 -0
- data/ext/nutcracker/README.md +11 -13
- data/ext/nutcracker/aclocal.m4 +201 -112
- 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.in +0 -15
- data/ext/nutcracker/config/config.guess +84 -23
- data/ext/nutcracker/config/config.sub +93 -23
- data/ext/nutcracker/config/depcomp +81 -35
- data/ext/nutcracker/config/install-sh +122 -109
- data/ext/nutcracker/config/ltmain.sh +721 -1053
- data/ext/nutcracker/config/missing +29 -20
- data/ext/nutcracker/configure +2311 -2113
- data/ext/nutcracker/configure.ac +3 -35
- data/ext/nutcracker/contrib/Makefile.am +0 -0
- data/ext/nutcracker/contrib/Makefile.in +107 -41
- data/ext/nutcracker/contrib/yaml-0.1.4.tar.gz +0 -0
- data/ext/nutcracker/extconf.rb +5 -3
- data/ext/nutcracker/m4/libtool.m4 +492 -553
- data/ext/nutcracker/m4/ltoptions.m4 +6 -7
- data/ext/nutcracker/m4/ltversion.m4 +5 -5
- data/ext/nutcracker/m4/lt~obsolete.m4 +3 -9
- 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 +2 -21
- 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 +0 -9
- data/ext/nutcracker/src/Makefile.am +1 -1
- data/ext/nutcracker/src/Makefile.in +153 -74
- data/ext/nutcracker/src/hashkit/Makefile.am +0 -1
- data/ext/nutcracker/src/hashkit/Makefile.in +64 -39
- data/ext/nutcracker/src/hashkit/nc_crc32.c +0 -0
- data/ext/nutcracker/src/hashkit/nc_fnv.c +0 -0
- data/ext/nutcracker/src/hashkit/nc_hashkit.h +0 -2
- data/ext/nutcracker/src/hashkit/nc_hsieh.c +0 -0
- data/ext/nutcracker/src/hashkit/nc_jenkins.c +0 -0
- data/ext/nutcracker/src/hashkit/nc_ketama.c +0 -0
- data/ext/nutcracker/src/hashkit/nc_md5.c +0 -0
- data/ext/nutcracker/src/hashkit/nc_modula.c +6 -18
- data/ext/nutcracker/src/hashkit/nc_murmur.c +0 -0
- data/ext/nutcracker/src/hashkit/nc_one_at_a_time.c +0 -0
- data/ext/nutcracker/src/hashkit/nc_random.c +0 -0
- data/ext/nutcracker/src/nc.c +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_client.c +0 -0
- data/ext/nutcracker/src/nc_client.h +0 -0
- data/ext/nutcracker/src/nc_conf.c +35 -14
- data/ext/nutcracker/src/nc_conf.h +1 -1
- data/ext/nutcracker/src/nc_connection.c +0 -0
- data/ext/nutcracker/src/nc_connection.h +0 -0
- data/ext/nutcracker/src/nc_core.c +26 -29
- data/ext/nutcracker/src/nc_core.h +5 -13
- data/ext/nutcracker/src/{nc_epoll.c → nc_event.c} +30 -94
- data/ext/nutcracker/src/nc_event.h +13 -33
- data/ext/nutcracker/src/nc_log.c +0 -0
- data/ext/nutcracker/src/nc_log.h +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_message.c +0 -0
- data/ext/nutcracker/src/nc_message.h +0 -2
- data/ext/nutcracker/src/nc_proxy.c +8 -8
- data/ext/nutcracker/src/nc_proxy.h +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_request.c +3 -3
- data/ext/nutcracker/src/nc_response.c +6 -4
- data/ext/nutcracker/src/nc_server.c +12 -14
- data/ext/nutcracker/src/nc_server.h +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_stats.c +21 -16
- data/ext/nutcracker/src/nc_stats.h +4 -3
- data/ext/nutcracker/src/nc_string.c +0 -0
- data/ext/nutcracker/src/nc_string.h +0 -0
- data/ext/nutcracker/src/nc_util.c +0 -16
- data/ext/nutcracker/src/nc_util.h +0 -1
- data/ext/nutcracker/src/proto/Makefile.am +0 -0
- data/ext/nutcracker/src/proto/Makefile.in +60 -32
- data/ext/nutcracker/src/proto/nc_memcache.c +0 -0
- data/ext/nutcracker/src/proto/nc_proto.h +0 -0
- data/ext/nutcracker/src/proto/nc_redis.c +4 -17
- data/lib/nutcracker.rb +2 -187
- data/lib/nutcracker/version.rb +1 -1
- metadata +10 -256
- data/ext/nutcracker/Makefile +0 -643
- data/ext/nutcracker/autom4te.cache/output.0 +0 -18664
- data/ext/nutcracker/autom4te.cache/output.1 +0 -18664
- data/ext/nutcracker/autom4te.cache/output.2 +0 -18664
- data/ext/nutcracker/autom4te.cache/requests +0 -494
- data/ext/nutcracker/autom4te.cache/traces.0 +0 -2415
- data/ext/nutcracker/autom4te.cache/traces.1 +0 -945
- data/ext/nutcracker/autom4te.cache/traces.2 +0 -2415
- data/ext/nutcracker/config.h +0 -332
- data/ext/nutcracker/config.log +0 -2684
- data/ext/nutcracker/config.status +0 -2317
- data/ext/nutcracker/contrib/Makefile +0 -494
- data/ext/nutcracker/contrib/yaml-0.1.4/Makefile +0 -736
- data/ext/nutcracker/contrib/yaml-0.1.4/autom4te.cache/output.0 +0 -13102
- data/ext/nutcracker/contrib/yaml-0.1.4/autom4te.cache/output.1 +0 -13085
- data/ext/nutcracker/contrib/yaml-0.1.4/autom4te.cache/output.2 +0 -13085
- data/ext/nutcracker/contrib/yaml-0.1.4/autom4te.cache/requests +0 -476
- data/ext/nutcracker/contrib/yaml-0.1.4/autom4te.cache/traces.0 +0 -2339
- data/ext/nutcracker/contrib/yaml-0.1.4/autom4te.cache/traces.1 +0 -545
- data/ext/nutcracker/contrib/yaml-0.1.4/autom4te.cache/traces.2 +0 -2339
- data/ext/nutcracker/contrib/yaml-0.1.4/config.h +0 -81
- data/ext/nutcracker/contrib/yaml-0.1.4/config.h.in~ +0 -80
- data/ext/nutcracker/contrib/yaml-0.1.4/config.log +0 -688
- data/ext/nutcracker/contrib/yaml-0.1.4/config.status +0 -2032
- data/ext/nutcracker/contrib/yaml-0.1.4/doc/html/annotated.html +0 -51
- 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 +0 -41
- 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 +0 -656
- 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 +0 -40
- data/ext/nutcracker/contrib/yaml-0.1.4/doc/html/functions.html +0 -91
- data/ext/nutcracker/contrib/yaml-0.1.4/doc/html/functions_0x62.html +0 -84
- data/ext/nutcracker/contrib/yaml-0.1.4/doc/html/functions_0x63.html +0 -87
- data/ext/nutcracker/contrib/yaml-0.1.4/doc/html/functions_0x64.html +0 -83
- data/ext/nutcracker/contrib/yaml-0.1.4/doc/html/functions_0x65.html +0 -110
- data/ext/nutcracker/contrib/yaml-0.1.4/doc/html/functions_0x66.html +0 -79
- data/ext/nutcracker/contrib/yaml-0.1.4/doc/html/functions_0x68.html +0 -80
- data/ext/nutcracker/contrib/yaml-0.1.4/doc/html/functions_0x69.html +0 -92
- data/ext/nutcracker/contrib/yaml-0.1.4/doc/html/functions_0x6b.html +0 -71
- data/ext/nutcracker/contrib/yaml-0.1.4/doc/html/functions_0x6c.html +0 -88
- data/ext/nutcracker/contrib/yaml-0.1.4/doc/html/functions_0x6d.html +0 -96
- data/ext/nutcracker/contrib/yaml-0.1.4/doc/html/functions_0x6e.html +0 -71
- data/ext/nutcracker/contrib/yaml-0.1.4/doc/html/functions_0x6f.html +0 -80
- data/ext/nutcracker/contrib/yaml-0.1.4/doc/html/functions_0x70.html +0 -100
- data/ext/nutcracker/contrib/yaml-0.1.4/doc/html/functions_0x71.html +0 -71
- data/ext/nutcracker/contrib/yaml-0.1.4/doc/html/functions_0x72.html +0 -87
- data/ext/nutcracker/contrib/yaml-0.1.4/doc/html/functions_0x73.html +0 -163
- data/ext/nutcracker/contrib/yaml-0.1.4/doc/html/functions_0x74.html +0 -115
- data/ext/nutcracker/contrib/yaml-0.1.4/doc/html/functions_0x75.html +0 -71
- data/ext/nutcracker/contrib/yaml-0.1.4/doc/html/functions_0x76.html +0 -80
- data/ext/nutcracker/contrib/yaml-0.1.4/doc/html/functions_0x77.html +0 -77
- data/ext/nutcracker/contrib/yaml-0.1.4/doc/html/functions_vars.html +0 -91
- data/ext/nutcracker/contrib/yaml-0.1.4/doc/html/functions_vars_0x62.html +0 -84
- data/ext/nutcracker/contrib/yaml-0.1.4/doc/html/functions_vars_0x63.html +0 -87
- data/ext/nutcracker/contrib/yaml-0.1.4/doc/html/functions_vars_0x64.html +0 -83
- data/ext/nutcracker/contrib/yaml-0.1.4/doc/html/functions_vars_0x65.html +0 -110
- data/ext/nutcracker/contrib/yaml-0.1.4/doc/html/functions_vars_0x66.html +0 -79
- data/ext/nutcracker/contrib/yaml-0.1.4/doc/html/functions_vars_0x68.html +0 -80
- data/ext/nutcracker/contrib/yaml-0.1.4/doc/html/functions_vars_0x69.html +0 -92
- data/ext/nutcracker/contrib/yaml-0.1.4/doc/html/functions_vars_0x6b.html +0 -71
- data/ext/nutcracker/contrib/yaml-0.1.4/doc/html/functions_vars_0x6c.html +0 -88
- data/ext/nutcracker/contrib/yaml-0.1.4/doc/html/functions_vars_0x6d.html +0 -96
- data/ext/nutcracker/contrib/yaml-0.1.4/doc/html/functions_vars_0x6e.html +0 -71
- data/ext/nutcracker/contrib/yaml-0.1.4/doc/html/functions_vars_0x6f.html +0 -80
- data/ext/nutcracker/contrib/yaml-0.1.4/doc/html/functions_vars_0x70.html +0 -100
- data/ext/nutcracker/contrib/yaml-0.1.4/doc/html/functions_vars_0x71.html +0 -71
- data/ext/nutcracker/contrib/yaml-0.1.4/doc/html/functions_vars_0x72.html +0 -87
- data/ext/nutcracker/contrib/yaml-0.1.4/doc/html/functions_vars_0x73.html +0 -163
- data/ext/nutcracker/contrib/yaml-0.1.4/doc/html/functions_vars_0x74.html +0 -115
- data/ext/nutcracker/contrib/yaml-0.1.4/doc/html/functions_vars_0x75.html +0 -71
- data/ext/nutcracker/contrib/yaml-0.1.4/doc/html/functions_vars_0x76.html +0 -80
- data/ext/nutcracker/contrib/yaml-0.1.4/doc/html/functions_vars_0x77.html +0 -77
- data/ext/nutcracker/contrib/yaml-0.1.4/doc/html/globals.html +0 -667
- data/ext/nutcracker/contrib/yaml-0.1.4/doc/html/globals_defs.html +0 -81
- data/ext/nutcracker/contrib/yaml-0.1.4/doc/html/globals_enum.html +0 -78
- data/ext/nutcracker/contrib/yaml-0.1.4/doc/html/globals_eval.html +0 -373
- data/ext/nutcracker/contrib/yaml-0.1.4/doc/html/globals_func.html +0 -196
- data/ext/nutcracker/contrib/yaml-0.1.4/doc/html/globals_type.html +0 -126
- data/ext/nutcracker/contrib/yaml-0.1.4/doc/html/group__basic.html +0 -320
- data/ext/nutcracker/contrib/yaml-0.1.4/doc/html/group__emitter.html +0 -819
- data/ext/nutcracker/contrib/yaml-0.1.4/doc/html/group__events.html +0 -664
- data/ext/nutcracker/contrib/yaml-0.1.4/doc/html/group__export.html +0 -60
- data/ext/nutcracker/contrib/yaml-0.1.4/doc/html/group__nodes.html +0 -795
- data/ext/nutcracker/contrib/yaml-0.1.4/doc/html/group__parser.html +0 -606
- data/ext/nutcracker/contrib/yaml-0.1.4/doc/html/group__styles.html +0 -222
- data/ext/nutcracker/contrib/yaml-0.1.4/doc/html/group__tokens.html +0 -246
- data/ext/nutcracker/contrib/yaml-0.1.4/doc/html/group__version.html +0 -106
- data/ext/nutcracker/contrib/yaml-0.1.4/doc/html/index.html +0 -31
- data/ext/nutcracker/contrib/yaml-0.1.4/doc/html/modules.html +0 -42
- 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 +0 -108
- data/ext/nutcracker/contrib/yaml-0.1.4/doc/html/structyaml__document__s.html +0 -235
- data/ext/nutcracker/contrib/yaml-0.1.4/doc/html/structyaml__emitter__s.html +0 -1300
- data/ext/nutcracker/contrib/yaml-0.1.4/doc/html/structyaml__event__s.html +0 -496
- data/ext/nutcracker/contrib/yaml-0.1.4/doc/html/structyaml__mark__s.html +0 -108
- data/ext/nutcracker/contrib/yaml-0.1.4/doc/html/structyaml__node__pair__s.html +0 -91
- data/ext/nutcracker/contrib/yaml-0.1.4/doc/html/structyaml__node__s.html +0 -420
- data/ext/nutcracker/contrib/yaml-0.1.4/doc/html/structyaml__parser__s.html +0 -1229
- data/ext/nutcracker/contrib/yaml-0.1.4/doc/html/structyaml__simple__key__s.html +0 -97
- data/ext/nutcracker/contrib/yaml-0.1.4/doc/html/structyaml__tag__directive__s.html +0 -91
- data/ext/nutcracker/contrib/yaml-0.1.4/doc/html/structyaml__token__s.html +0 -413
- data/ext/nutcracker/contrib/yaml-0.1.4/doc/html/structyaml__version__directive__s.html +0 -91
- 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 +0 -59
- data/ext/nutcracker/contrib/yaml-0.1.4/doc/html/yaml_8h.html +0 -525
- data/ext/nutcracker/contrib/yaml-0.1.4/include/Makefile.am +0 -17
- data/ext/nutcracker/contrib/yaml-0.1.4/include/Makefile.in +0 -470
- data/ext/nutcracker/contrib/yaml-0.1.4/libtool +0 -8890
- data/ext/nutcracker/contrib/yaml-0.1.4/src/Makefile +0 -484
- data/ext/nutcracker/contrib/yaml-0.1.4/src/api.lo +0 -12
- data/ext/nutcracker/contrib/yaml-0.1.4/src/api.o +0 -0
- data/ext/nutcracker/contrib/yaml-0.1.4/src/dumper.lo +0 -12
- data/ext/nutcracker/contrib/yaml-0.1.4/src/dumper.o +0 -0
- data/ext/nutcracker/contrib/yaml-0.1.4/src/emitter.lo +0 -12
- data/ext/nutcracker/contrib/yaml-0.1.4/src/emitter.o +0 -0
- data/ext/nutcracker/contrib/yaml-0.1.4/src/libyaml.la +0 -41
- data/ext/nutcracker/contrib/yaml-0.1.4/src/loader.lo +0 -12
- data/ext/nutcracker/contrib/yaml-0.1.4/src/loader.o +0 -0
- data/ext/nutcracker/contrib/yaml-0.1.4/src/parser.lo +0 -12
- data/ext/nutcracker/contrib/yaml-0.1.4/src/parser.o +0 -0
- data/ext/nutcracker/contrib/yaml-0.1.4/src/reader.lo +0 -12
- data/ext/nutcracker/contrib/yaml-0.1.4/src/reader.o +0 -0
- data/ext/nutcracker/contrib/yaml-0.1.4/src/scanner.lo +0 -12
- data/ext/nutcracker/contrib/yaml-0.1.4/src/scanner.o +0 -0
- data/ext/nutcracker/contrib/yaml-0.1.4/src/writer.lo +0 -12
- data/ext/nutcracker/contrib/yaml-0.1.4/src/writer.o +0 -0
- data/ext/nutcracker/contrib/yaml-0.1.4/stamp-h1 +0 -1
- data/ext/nutcracker/contrib/yaml-0.1.4/tests/Makefile +0 -675
- 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 +0 -10
- data/ext/nutcracker/contrib/yaml-0.1.4/yaml-0.1.pc.in +0 -10
- data/ext/nutcracker/libtool +0 -9403
- data/ext/nutcracker/src/Makefile +0 -647
- data/ext/nutcracker/src/hashkit/Makefile +0 -476
- data/ext/nutcracker/src/hashkit/libhashkit.a +0 -0
- data/ext/nutcracker/src/hashkit/nc_crc16.c +0 -66
- data/ext/nutcracker/src/hashkit/nc_crc16.o +0 -0
- data/ext/nutcracker/src/hashkit/nc_crc32.o +0 -0
- data/ext/nutcracker/src/hashkit/nc_fnv.o +0 -0
- data/ext/nutcracker/src/hashkit/nc_hsieh.o +0 -0
- data/ext/nutcracker/src/hashkit/nc_jenkins.o +0 -0
- data/ext/nutcracker/src/hashkit/nc_ketama.o +0 -0
- data/ext/nutcracker/src/hashkit/nc_md5.o +0 -0
- data/ext/nutcracker/src/hashkit/nc_modula.o +0 -0
- data/ext/nutcracker/src/hashkit/nc_murmur.o +0 -0
- data/ext/nutcracker/src/hashkit/nc_one_at_a_time.o +0 -0
- data/ext/nutcracker/src/hashkit/nc_random.o +0 -0
- data/ext/nutcracker/src/nc.o +0 -0
- data/ext/nutcracker/src/nc_array.o +0 -0
- data/ext/nutcracker/src/nc_client.o +0 -0
- data/ext/nutcracker/src/nc_conf.o +0 -0
- data/ext/nutcracker/src/nc_connection.o +0 -0
- data/ext/nutcracker/src/nc_core.o +0 -0
- data/ext/nutcracker/src/nc_epoll.o +0 -0
- data/ext/nutcracker/src/nc_kqueue.c +0 -296
- data/ext/nutcracker/src/nc_kqueue.o +0 -0
- data/ext/nutcracker/src/nc_log.o +0 -0
- data/ext/nutcracker/src/nc_mbuf.o +0 -0
- data/ext/nutcracker/src/nc_message.o +0 -0
- data/ext/nutcracker/src/nc_proxy.o +0 -0
- data/ext/nutcracker/src/nc_rbtree.o +0 -0
- data/ext/nutcracker/src/nc_request.o +0 -0
- data/ext/nutcracker/src/nc_response.o +0 -0
- data/ext/nutcracker/src/nc_server.o +0 -0
- data/ext/nutcracker/src/nc_signal.o +0 -0
- data/ext/nutcracker/src/nc_stats.o +0 -0
- data/ext/nutcracker/src/nc_string.o +0 -0
- data/ext/nutcracker/src/nc_util.o +0 -0
- data/ext/nutcracker/src/nutcracker +0 -0
- data/ext/nutcracker/src/proto/Makefile +0 -454
- data/ext/nutcracker/src/proto/libproto.a +0 -0
- data/ext/nutcracker/src/proto/nc_memcache.o +0 -0
- data/ext/nutcracker/src/proto/nc_redis.o +0 -0
- data/ext/nutcracker/stamp-h1 +0 -1
data/ext/nutcracker/src/nc_log.c
CHANGED
File without changes
|
data/ext/nutcracker/src/nc_log.h
CHANGED
File without changes
|
File without changes
|
File without changes
|
File without changes
|
@@ -71,7 +71,6 @@ typedef enum msg_type {
|
|
71
71
|
MSG_REQ_REDIS_BITCOUNT,
|
72
72
|
MSG_REQ_REDIS_DECR,
|
73
73
|
MSG_REQ_REDIS_DECRBY,
|
74
|
-
MSG_REQ_REDIS_DUMP,
|
75
74
|
MSG_REQ_REDIS_GET,
|
76
75
|
MSG_REQ_REDIS_GETBIT,
|
77
76
|
MSG_REQ_REDIS_GETRANGE,
|
@@ -81,7 +80,6 @@ typedef enum msg_type {
|
|
81
80
|
MSG_REQ_REDIS_INCRBYFLOAT,
|
82
81
|
MSG_REQ_REDIS_MGET,
|
83
82
|
MSG_REQ_REDIS_PSETEX,
|
84
|
-
MSG_REQ_REDIS_RESTORE,
|
85
83
|
MSG_REQ_REDIS_SET,
|
86
84
|
MSG_REQ_REDIS_SETBIT,
|
87
85
|
MSG_REQ_REDIS_SETEX,
|
@@ -163,18 +163,18 @@ proxy_listen(struct context *ctx, struct conn *p)
|
|
163
163
|
return NC_ERROR;
|
164
164
|
}
|
165
165
|
|
166
|
-
status = event_add_conn(ctx->
|
166
|
+
status = event_add_conn(ctx->ep, p);
|
167
167
|
if (status < 0) {
|
168
|
-
log_error("event add conn p %d on addr '%.*s' failed: %s",
|
169
|
-
p->sd, pool->addrstr.len, pool->addrstr.data,
|
168
|
+
log_error("event add conn e %d p %d on addr '%.*s' failed: %s",
|
169
|
+
ctx->ep, p->sd, pool->addrstr.len, pool->addrstr.data,
|
170
170
|
strerror(errno));
|
171
171
|
return NC_ERROR;
|
172
172
|
}
|
173
173
|
|
174
|
-
status = event_del_out(ctx->
|
174
|
+
status = event_del_out(ctx->ep, p);
|
175
175
|
if (status < 0) {
|
176
|
-
log_error("event del out p %d on addr '%.*s' failed: %s",
|
177
|
-
p->sd, pool->addrstr.len, pool->addrstr.data,
|
176
|
+
log_error("event del out e %d p %d on addr '%.*s' failed: %s",
|
177
|
+
ctx->ep, p->sd, pool->addrstr.len, pool->addrstr.data,
|
178
178
|
strerror(errno));
|
179
179
|
return NC_ERROR;
|
180
180
|
}
|
@@ -325,9 +325,9 @@ proxy_accept(struct context *ctx, struct conn *p)
|
|
325
325
|
}
|
326
326
|
}
|
327
327
|
|
328
|
-
status = event_add_conn(ctx->
|
328
|
+
status = event_add_conn(ctx->ep, c);
|
329
329
|
if (status < 0) {
|
330
|
-
log_error("event add conn from p %d failed: %s", p->sd,
|
330
|
+
log_error("event add conn of c %d from p %d failed: %s", c->sd, p->sd,
|
331
331
|
strerror(errno));
|
332
332
|
c->close(ctx, c);
|
333
333
|
return status;
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
@@ -413,7 +413,7 @@ req_forward_error(struct context *ctx, struct conn *conn, struct msg *msg)
|
|
413
413
|
}
|
414
414
|
|
415
415
|
if (req_done(conn, TAILQ_FIRST(&conn->omsg_q))) {
|
416
|
-
status = event_add_out(ctx->
|
416
|
+
status = event_add_out(ctx->ep, conn);
|
417
417
|
if (status != NC_OK) {
|
418
418
|
conn->err = errno;
|
419
419
|
}
|
@@ -482,7 +482,7 @@ req_forward(struct context *ctx, struct conn *c_conn, struct msg *msg)
|
|
482
482
|
|
483
483
|
/* enqueue the message (request) into server inq */
|
484
484
|
if (TAILQ_EMPTY(&s_conn->imsg_q)) {
|
485
|
-
status = event_add_out(ctx->
|
485
|
+
status = event_add_out(ctx->ep, s_conn);
|
486
486
|
if (status != NC_OK) {
|
487
487
|
req_forward_error(ctx, c_conn, msg);
|
488
488
|
s_conn->err = errno;
|
@@ -533,7 +533,7 @@ req_send_next(struct context *ctx, struct conn *conn)
|
|
533
533
|
nmsg = TAILQ_FIRST(&conn->imsg_q);
|
534
534
|
if (nmsg == NULL) {
|
535
535
|
/* nothing to send as the server inq is empty */
|
536
|
-
status = event_del_out(ctx->
|
536
|
+
status = event_del_out(ctx->ep, conn);
|
537
537
|
if (status != NC_OK) {
|
538
538
|
conn->err = errno;
|
539
539
|
}
|
@@ -157,9 +157,11 @@ 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->
|
160
|
+
log_error("filter stray rsp %"PRIu64" len %"PRIu32" on s %d", msg->id,
|
161
|
+
msg->mlen, conn->sd);
|
162
162
|
rsp_put(msg);
|
163
|
+
errno = EINVAL;
|
164
|
+
conn->err = errno;
|
163
165
|
return true;
|
164
166
|
}
|
165
167
|
ASSERT(pmsg->peer == NULL);
|
@@ -220,7 +222,7 @@ rsp_forward(struct context *ctx, struct conn *s_conn, struct msg *msg)
|
|
220
222
|
ASSERT(c_conn->client && !c_conn->proxy);
|
221
223
|
|
222
224
|
if (req_done(c_conn, TAILQ_FIRST(&c_conn->omsg_q))) {
|
223
|
-
status = event_add_out(ctx->
|
225
|
+
status = event_add_out(ctx->ep, c_conn);
|
224
226
|
if (status != NC_OK) {
|
225
227
|
c_conn->err = errno;
|
226
228
|
}
|
@@ -265,7 +267,7 @@ rsp_send_next(struct context *ctx, struct conn *conn)
|
|
265
267
|
log_debug(LOG_INFO, "c %d is done", conn->sd);
|
266
268
|
}
|
267
269
|
|
268
|
-
status = event_del_out(ctx->
|
270
|
+
status = event_del_out(ctx->ep, conn);
|
269
271
|
if (status != NC_OK) {
|
270
272
|
conn->err = errno;
|
271
273
|
}
|
@@ -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->ep, 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->ep, 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,26 +467,24 @@ server_connect(struct context *ctx, struct server *server, struct conn *conn)
|
|
467
467
|
goto error;
|
468
468
|
}
|
469
469
|
|
470
|
-
|
471
|
-
|
472
|
-
|
473
|
-
|
474
|
-
|
475
|
-
strerror(errno));
|
476
|
-
}
|
470
|
+
status = nc_set_tcpnodelay(conn->sd);
|
471
|
+
if (status != NC_OK) {
|
472
|
+
log_warn("set tcpnodelay on s %d for server '%.*s' failed, ignored: %s",
|
473
|
+
conn->sd, server->pname.len, server->pname.data,
|
474
|
+
strerror(errno));
|
477
475
|
}
|
478
476
|
|
479
|
-
status = event_add_conn(ctx->
|
477
|
+
status = event_add_conn(ctx->ep, conn);
|
480
478
|
if (status != NC_OK) {
|
481
|
-
log_error("event add conn s %d for server '%.*s' failed: %s",
|
482
|
-
conn->sd, server->pname.len, server->pname.data,
|
479
|
+
log_error("event add conn e %d s %d for server '%.*s' failed: %s",
|
480
|
+
ctx->ep, conn->sd, server->pname.len, server->pname.data,
|
483
481
|
strerror(errno));
|
484
482
|
goto error;
|
485
483
|
}
|
486
484
|
|
487
485
|
ASSERT(!conn->connecting && !conn->connected);
|
488
486
|
|
489
|
-
|
487
|
+
status = connect(conn->sd, conn->addr, conn->addrlen);
|
490
488
|
if (status != NC_OK) {
|
491
489
|
if (errno == EINPROGRESS) {
|
492
490
|
conn->connecting = 1;
|
File without changes
|
File without changes
|
File without changes
|
@@ -21,11 +21,11 @@
|
|
21
21
|
|
22
22
|
#include <sys/types.h>
|
23
23
|
#include <sys/socket.h>
|
24
|
+
#include <sys/epoll.h>
|
24
25
|
#include <netinet/in.h>
|
25
26
|
|
26
27
|
#include <nc_core.h>
|
27
28
|
#include <nc_server.h>
|
28
|
-
#include <nc_event.h>
|
29
29
|
|
30
30
|
struct stats_desc {
|
31
31
|
char *name; /* stats name */
|
@@ -777,7 +777,15 @@ stats_loop(void *arg)
|
|
777
777
|
int n;
|
778
778
|
|
779
779
|
for (;;) {
|
780
|
-
n =
|
780
|
+
n = epoll_wait(st->ep, &st->event, 1, st->interval);
|
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
|
+
}
|
781
789
|
|
782
790
|
/* aggregate stats from shadow (b) -> sum (c) */
|
783
791
|
stats_aggregate(st);
|
@@ -839,6 +847,7 @@ static rstatus_t
|
|
839
847
|
stats_start_aggregator(struct stats *st)
|
840
848
|
{
|
841
849
|
rstatus_t status;
|
850
|
+
struct epoll_event ev;
|
842
851
|
|
843
852
|
if (!stats_enabled) {
|
844
853
|
return NC_OK;
|
@@ -849,28 +858,25 @@ stats_start_aggregator(struct stats *st)
|
|
849
858
|
return status;
|
850
859
|
}
|
851
860
|
|
852
|
-
st->
|
853
|
-
if (st->
|
854
|
-
log_error("
|
861
|
+
st->ep = epoll_create(10);
|
862
|
+
if (st->ep < 0) {
|
863
|
+
log_error("epoll create failed: %s", strerror(errno));
|
855
864
|
return NC_ERROR;
|
856
865
|
}
|
857
866
|
|
858
|
-
|
859
|
-
|
867
|
+
ev.data.fd = st->sd;
|
868
|
+
ev.events = EPOLLIN;
|
860
869
|
|
861
|
-
status =
|
870
|
+
status = epoll_ctl(st->ep, EPOLL_CTL_ADD, st->sd, &ev);
|
862
871
|
if (status < 0) {
|
863
|
-
log_error("
|
864
|
-
|
865
|
-
st->st_evb = NULL;
|
872
|
+
log_error("epoll ctl on e %d sd %d failed: %s", st->ep, st->sd,
|
873
|
+
strerror(errno));
|
866
874
|
return NC_ERROR;
|
867
875
|
}
|
868
876
|
|
869
877
|
status = pthread_create(&st->tid, NULL, stats_loop, st);
|
870
878
|
if (status < 0) {
|
871
879
|
log_error("stats aggregator create failed: %s", strerror(status));
|
872
|
-
evbase_destroy(st->st_evb);
|
873
|
-
st->st_evb = NULL;
|
874
880
|
return NC_ERROR;
|
875
881
|
}
|
876
882
|
|
@@ -885,8 +891,7 @@ stats_stop_aggregator(struct stats *st)
|
|
885
891
|
}
|
886
892
|
|
887
893
|
close(st->sd);
|
888
|
-
|
889
|
-
st->st_evb = NULL;
|
894
|
+
close(st->ep);
|
890
895
|
}
|
891
896
|
|
892
897
|
struct stats *
|
@@ -916,7 +921,7 @@ stats_create(uint16_t stats_port, char *stats_ip, int stats_interval,
|
|
916
921
|
array_null(&st->sum);
|
917
922
|
|
918
923
|
st->tid = (pthread_t) -1;
|
919
|
-
st->
|
924
|
+
st->ep = -1;
|
920
925
|
st->sd = -1;
|
921
926
|
|
922
927
|
string_set_text(&st->service_str, "service");
|
@@ -18,8 +18,9 @@
|
|
18
18
|
#ifndef _NC_STATS_H_
|
19
19
|
#define _NC_STATS_H_
|
20
20
|
|
21
|
+
#include <sys/epoll.h>
|
22
|
+
|
21
23
|
#include <nc_core.h>
|
22
|
-
#include <nc_event.h>
|
23
24
|
|
24
25
|
#define STATS_POOL_CODEC(ACTION) \
|
25
26
|
/* client behavior */ \
|
@@ -100,8 +101,8 @@ struct stats {
|
|
100
101
|
|
101
102
|
pthread_t tid; /* stats aggregator thread */
|
102
103
|
int sd; /* stats descriptor */
|
103
|
-
|
104
|
-
struct
|
104
|
+
int ep; /* epoll device */
|
105
|
+
struct epoll_event event; /* epoll event */
|
105
106
|
|
106
107
|
struct string service_str; /* service string */
|
107
108
|
struct string service; /* service */
|
File without changes
|
File without changes
|
@@ -22,10 +22,7 @@
|
|
22
22
|
#include <unistd.h>
|
23
23
|
#include <fcntl.h>
|
24
24
|
#include <netdb.h>
|
25
|
-
|
26
|
-
#ifdef NC_HAVE_BACKTRACE
|
27
25
|
#include <execinfo.h>
|
28
|
-
#endif
|
29
26
|
|
30
27
|
#include <sys/time.h>
|
31
28
|
#include <sys/types.h>
|
@@ -278,7 +275,6 @@ _nc_free(void *ptr, const char *name, int line)
|
|
278
275
|
void
|
279
276
|
nc_stacktrace(int skip_count)
|
280
277
|
{
|
281
|
-
#ifdef NC_HAVE_BACKTRACE
|
282
278
|
void *stack[64];
|
283
279
|
char **symbols;
|
284
280
|
int size, i, j;
|
@@ -296,7 +292,6 @@ nc_stacktrace(int skip_count)
|
|
296
292
|
}
|
297
293
|
|
298
294
|
free(symbols);
|
299
|
-
#endif
|
300
295
|
}
|
301
296
|
|
302
297
|
void
|
@@ -622,14 +617,3 @@ nc_unresolve_desc(int sd)
|
|
622
617
|
|
623
618
|
return nc_unresolve_addr(addr, addrlen);
|
624
619
|
}
|
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,7 +190,6 @@ 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);
|
194
193
|
|
195
194
|
/*
|
196
195
|
* Address resolution for internet (ipv4 and ipv6) and unix domain
|
File without changes
|
@@ -1,8 +1,9 @@
|
|
1
|
-
# Makefile.in generated by automake 1.
|
1
|
+
# Makefile.in generated by automake 1.11 from Makefile.am.
|
2
2
|
# @configure_input@
|
3
3
|
|
4
4
|
# Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
|
5
|
-
# 2003, 2004, 2005, 2006 Free Software Foundation,
|
5
|
+
# 2003, 2004, 2005, 2006, 2007, 2008, 2009 Free Software Foundation,
|
6
|
+
# Inc.
|
6
7
|
# This Makefile.in is free software; the Free Software Foundation
|
7
8
|
# gives unlimited permission to copy and/or distribute it,
|
8
9
|
# with or without modifications, as long as this notice is preserved.
|
@@ -17,8 +18,9 @@
|
|
17
18
|
|
18
19
|
VPATH = @srcdir@
|
19
20
|
pkgdatadir = $(datadir)/@PACKAGE@
|
20
|
-
pkglibdir = $(libdir)/@PACKAGE@
|
21
21
|
pkgincludedir = $(includedir)/@PACKAGE@
|
22
|
+
pkglibdir = $(libdir)/@PACKAGE@
|
23
|
+
pkglibexecdir = $(libexecdir)/@PACKAGE@
|
22
24
|
am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd
|
23
25
|
install_sh_DATA = $(install_sh) -c -m 644
|
24
26
|
install_sh_PROGRAM = $(install_sh) -c
|
@@ -46,15 +48,17 @@ am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
|
|
46
48
|
mkinstalldirs = $(install_sh) -d
|
47
49
|
CONFIG_HEADER = $(top_builddir)/config.h
|
48
50
|
CONFIG_CLEAN_FILES =
|
51
|
+
CONFIG_CLEAN_VPATH_FILES =
|
49
52
|
LIBRARIES = $(noinst_LIBRARIES)
|
50
53
|
ARFLAGS = cru
|
51
54
|
libproto_a_AR = $(AR) $(ARFLAGS)
|
52
55
|
libproto_a_LIBADD =
|
53
56
|
am_libproto_a_OBJECTS = nc_memcache.$(OBJEXT) nc_redis.$(OBJEXT)
|
54
57
|
libproto_a_OBJECTS = $(am_libproto_a_OBJECTS)
|
55
|
-
DEFAULT_INCLUDES = -I
|
58
|
+
DEFAULT_INCLUDES = -I.@am__isrc@ -I$(top_builddir)
|
56
59
|
depcomp = $(SHELL) $(top_srcdir)/config/depcomp
|
57
60
|
am__depfiles_maybe = depfiles
|
61
|
+
am__mv = mv -f
|
58
62
|
COMPILE = $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) \
|
59
63
|
$(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS)
|
60
64
|
LTCOMPILE = $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) \
|
@@ -170,6 +174,7 @@ libdir = @libdir@
|
|
170
174
|
libexecdir = @libexecdir@
|
171
175
|
localedir = @localedir@
|
172
176
|
localstatedir = @localstatedir@
|
177
|
+
lt_ECHO = @lt_ECHO@
|
173
178
|
mandir = @mandir@
|
174
179
|
mkdir_p = @mkdir_p@
|
175
180
|
oldincludedir = @oldincludedir@
|
@@ -203,14 +208,14 @@ $(srcdir)/Makefile.in: $(srcdir)/Makefile.am $(am__configure_deps)
|
|
203
208
|
@for dep in $?; do \
|
204
209
|
case '$(am__configure_deps)' in \
|
205
210
|
*$$dep*) \
|
206
|
-
cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh \
|
207
|
-
|
211
|
+
( cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh ) \
|
212
|
+
&& { if test -f $@; then exit 0; else break; fi; }; \
|
208
213
|
exit 1;; \
|
209
214
|
esac; \
|
210
215
|
done; \
|
211
|
-
echo ' cd $(top_srcdir) && $(AUTOMAKE) --foreign
|
212
|
-
|
213
|
-
$(AUTOMAKE) --foreign
|
216
|
+
echo ' cd $(top_srcdir) && $(AUTOMAKE) --foreign src/proto/Makefile'; \
|
217
|
+
$(am__cd) $(top_srcdir) && \
|
218
|
+
$(AUTOMAKE) --foreign src/proto/Makefile
|
214
219
|
.PRECIOUS: Makefile
|
215
220
|
Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
|
216
221
|
@case '$?' in \
|
@@ -228,6 +233,7 @@ $(top_srcdir)/configure: $(am__configure_deps)
|
|
228
233
|
cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
|
229
234
|
$(ACLOCAL_M4): $(am__aclocal_m4_deps)
|
230
235
|
cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
|
236
|
+
$(am__aclocal_m4_deps):
|
231
237
|
|
232
238
|
clean-noinstLIBRARIES:
|
233
239
|
-test -z "$(noinst_LIBRARIES)" || rm -f $(noinst_LIBRARIES)
|
@@ -247,21 +253,21 @@ distclean-compile:
|
|
247
253
|
|
248
254
|
.c.o:
|
249
255
|
@am__fastdepCC_TRUE@ $(COMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ $<
|
250
|
-
@am__fastdepCC_TRUE@
|
256
|
+
@am__fastdepCC_TRUE@ $(am__mv) $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Po
|
251
257
|
@AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$<' object='$@' libtool=no @AMDEPBACKSLASH@
|
252
258
|
@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
|
253
259
|
@am__fastdepCC_FALSE@ $(COMPILE) -c $<
|
254
260
|
|
255
261
|
.c.obj:
|
256
262
|
@am__fastdepCC_TRUE@ $(COMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ `$(CYGPATH_W) '$<'`
|
257
|
-
@am__fastdepCC_TRUE@
|
263
|
+
@am__fastdepCC_TRUE@ $(am__mv) $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Po
|
258
264
|
@AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$<' object='$@' libtool=no @AMDEPBACKSLASH@
|
259
265
|
@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
|
260
266
|
@am__fastdepCC_FALSE@ $(COMPILE) -c `$(CYGPATH_W) '$<'`
|
261
267
|
|
262
268
|
.c.lo:
|
263
269
|
@am__fastdepCC_TRUE@ $(LTCOMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ $<
|
264
|
-
@am__fastdepCC_TRUE@
|
270
|
+
@am__fastdepCC_TRUE@ $(am__mv) $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Plo
|
265
271
|
@AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$<' object='$@' libtool=yes @AMDEPBACKSLASH@
|
266
272
|
@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
|
267
273
|
@am__fastdepCC_FALSE@ $(LTCOMPILE) -c -o $@ $<
|
@@ -277,45 +283,49 @@ ID: $(HEADERS) $(SOURCES) $(LISP) $(TAGS_FILES)
|
|
277
283
|
unique=`for i in $$list; do \
|
278
284
|
if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
|
279
285
|
done | \
|
280
|
-
$(AWK) '
|
281
|
-
|
286
|
+
$(AWK) '{ files[$$0] = 1; nonempty = 1; } \
|
287
|
+
END { if (nonempty) { for (i in files) print i; }; }'`; \
|
282
288
|
mkid -fID $$unique
|
283
289
|
tags: TAGS
|
284
290
|
|
285
291
|
TAGS: $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \
|
286
292
|
$(TAGS_FILES) $(LISP)
|
287
|
-
|
293
|
+
set x; \
|
288
294
|
here=`pwd`; \
|
289
295
|
list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \
|
290
296
|
unique=`for i in $$list; do \
|
291
297
|
if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
|
292
298
|
done | \
|
293
|
-
$(AWK) '
|
294
|
-
|
295
|
-
|
299
|
+
$(AWK) '{ files[$$0] = 1; nonempty = 1; } \
|
300
|
+
END { if (nonempty) { for (i in files) print i; }; }'`; \
|
301
|
+
shift; \
|
302
|
+
if test -z "$(ETAGS_ARGS)$$*$$unique"; then :; else \
|
296
303
|
test -n "$$unique" || unique=$$empty_fix; \
|
297
|
-
|
298
|
-
|
304
|
+
if test $$# -gt 0; then \
|
305
|
+
$(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \
|
306
|
+
"$$@" $$unique; \
|
307
|
+
else \
|
308
|
+
$(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \
|
309
|
+
$$unique; \
|
310
|
+
fi; \
|
299
311
|
fi
|
300
312
|
ctags: CTAGS
|
301
313
|
CTAGS: $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \
|
302
314
|
$(TAGS_FILES) $(LISP)
|
303
|
-
tags=; \
|
304
|
-
here=`pwd`; \
|
305
315
|
list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \
|
306
316
|
unique=`for i in $$list; do \
|
307
317
|
if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
|
308
318
|
done | \
|
309
|
-
$(AWK) '
|
310
|
-
|
311
|
-
test -z "$(CTAGS_ARGS)$$
|
319
|
+
$(AWK) '{ files[$$0] = 1; nonempty = 1; } \
|
320
|
+
END { if (nonempty) { for (i in files) print i; }; }'`; \
|
321
|
+
test -z "$(CTAGS_ARGS)$$unique" \
|
312
322
|
|| $(CTAGS) $(CTAGSFLAGS) $(AM_CTAGSFLAGS) $(CTAGS_ARGS) \
|
313
|
-
$$
|
323
|
+
$$unique
|
314
324
|
|
315
325
|
GTAGS:
|
316
326
|
here=`$(am__cd) $(top_builddir) && pwd` \
|
317
|
-
&&
|
318
|
-
&& gtags -i $(GTAGS_ARGS) $$here
|
327
|
+
&& $(am__cd) $(top_srcdir) \
|
328
|
+
&& gtags -i $(GTAGS_ARGS) "$$here"
|
319
329
|
|
320
330
|
distclean-tags:
|
321
331
|
-rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags
|
@@ -336,13 +346,17 @@ distdir: $(DISTFILES)
|
|
336
346
|
if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \
|
337
347
|
if test -d $$d/$$file; then \
|
338
348
|
dir=`echo "/$$file" | sed -e 's,/[^/]*$$,,'`; \
|
349
|
+
if test -d "$(distdir)/$$file"; then \
|
350
|
+
find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
|
351
|
+
fi; \
|
339
352
|
if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \
|
340
|
-
cp -
|
353
|
+
cp -fpR $(srcdir)/$$file "$(distdir)$$dir" || exit 1; \
|
354
|
+
find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
|
341
355
|
fi; \
|
342
|
-
cp -
|
356
|
+
cp -fpR $$d/$$file "$(distdir)$$dir" || exit 1; \
|
343
357
|
else \
|
344
|
-
test -f $(distdir)/$$file \
|
345
|
-
|| cp -p $$d/$$file $(distdir)/$$file \
|
358
|
+
test -f "$(distdir)/$$file" \
|
359
|
+
|| cp -p $$d/$$file "$(distdir)/$$file" \
|
346
360
|
|| exit 1; \
|
347
361
|
fi; \
|
348
362
|
done
|
@@ -370,6 +384,7 @@ clean-generic:
|
|
370
384
|
|
371
385
|
distclean-generic:
|
372
386
|
-test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES)
|
387
|
+
-test . = "$(srcdir)" || test -z "$(CONFIG_CLEAN_VPATH_FILES)" || rm -f $(CONFIG_CLEAN_VPATH_FILES)
|
373
388
|
|
374
389
|
maintainer-clean-generic:
|
375
390
|
@echo "This command is intended for maintainers to use"
|
@@ -392,6 +407,8 @@ dvi-am:
|
|
392
407
|
|
393
408
|
html: html-am
|
394
409
|
|
410
|
+
html-am:
|
411
|
+
|
395
412
|
info: info-am
|
396
413
|
|
397
414
|
info-am:
|
@@ -400,18 +417,28 @@ install-data-am:
|
|
400
417
|
|
401
418
|
install-dvi: install-dvi-am
|
402
419
|
|
420
|
+
install-dvi-am:
|
421
|
+
|
403
422
|
install-exec-am:
|
404
423
|
|
405
424
|
install-html: install-html-am
|
406
425
|
|
426
|
+
install-html-am:
|
427
|
+
|
407
428
|
install-info: install-info-am
|
408
429
|
|
430
|
+
install-info-am:
|
431
|
+
|
409
432
|
install-man:
|
410
433
|
|
411
434
|
install-pdf: install-pdf-am
|
412
435
|
|
436
|
+
install-pdf-am:
|
437
|
+
|
413
438
|
install-ps: install-ps-am
|
414
439
|
|
440
|
+
install-ps-am:
|
441
|
+
|
415
442
|
installcheck-am:
|
416
443
|
|
417
444
|
maintainer-clean: maintainer-clean-am
|
@@ -449,6 +476,7 @@ uninstall-am:
|
|
449
476
|
mostlyclean-compile mostlyclean-generic mostlyclean-libtool \
|
450
477
|
pdf pdf-am ps ps-am tags uninstall uninstall-am
|
451
478
|
|
479
|
+
|
452
480
|
# Tell versions [3.59,3.63) of GNU make to not export all variables.
|
453
481
|
# Otherwise a system limit (for SysV at least) may be exceeded.
|
454
482
|
.NOEXPORT:
|