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.
Files changed (296) hide show
  1. data/README.md +13 -46
  2. data/Rakefile +20 -15
  3. data/bin/nutcracker +1 -6
  4. data/ext/nutcracker/ChangeLog +0 -9
  5. data/ext/nutcracker/LICENSE +0 -0
  6. data/ext/nutcracker/Makefile.am +0 -0
  7. data/ext/nutcracker/Makefile.in +149 -66
  8. data/ext/nutcracker/NOTICE +0 -0
  9. data/ext/nutcracker/README.md +11 -13
  10. data/ext/nutcracker/aclocal.m4 +201 -112
  11. data/ext/nutcracker/conf/nutcracker.leaf.yml +0 -0
  12. data/ext/nutcracker/conf/nutcracker.root.yml +0 -0
  13. data/ext/nutcracker/conf/nutcracker.yml +0 -0
  14. data/ext/nutcracker/config.h.in +0 -15
  15. data/ext/nutcracker/config/config.guess +84 -23
  16. data/ext/nutcracker/config/config.sub +93 -23
  17. data/ext/nutcracker/config/depcomp +81 -35
  18. data/ext/nutcracker/config/install-sh +122 -109
  19. data/ext/nutcracker/config/ltmain.sh +721 -1053
  20. data/ext/nutcracker/config/missing +29 -20
  21. data/ext/nutcracker/configure +2311 -2113
  22. data/ext/nutcracker/configure.ac +3 -35
  23. data/ext/nutcracker/contrib/Makefile.am +0 -0
  24. data/ext/nutcracker/contrib/Makefile.in +107 -41
  25. data/ext/nutcracker/contrib/yaml-0.1.4.tar.gz +0 -0
  26. data/ext/nutcracker/extconf.rb +5 -3
  27. data/ext/nutcracker/m4/libtool.m4 +492 -553
  28. data/ext/nutcracker/m4/ltoptions.m4 +6 -7
  29. data/ext/nutcracker/m4/ltversion.m4 +5 -5
  30. data/ext/nutcracker/m4/lt~obsolete.m4 +3 -9
  31. data/ext/nutcracker/notes/c-styleguide.txt +0 -0
  32. data/ext/nutcracker/notes/debug.txt +0 -0
  33. data/ext/nutcracker/notes/memcache.txt +0 -0
  34. data/ext/nutcracker/notes/recommendation.md +2 -21
  35. data/ext/nutcracker/notes/redis.md +9 -9
  36. data/ext/nutcracker/notes/socket.txt +0 -0
  37. data/ext/nutcracker/scripts/nutcracker.init +0 -0
  38. data/ext/nutcracker/scripts/nutcracker.spec +0 -0
  39. data/ext/nutcracker/scripts/redis-check.py +0 -0
  40. data/ext/nutcracker/scripts/redis-check.sh +0 -9
  41. data/ext/nutcracker/src/Makefile.am +1 -1
  42. data/ext/nutcracker/src/Makefile.in +153 -74
  43. data/ext/nutcracker/src/hashkit/Makefile.am +0 -1
  44. data/ext/nutcracker/src/hashkit/Makefile.in +64 -39
  45. data/ext/nutcracker/src/hashkit/nc_crc32.c +0 -0
  46. data/ext/nutcracker/src/hashkit/nc_fnv.c +0 -0
  47. data/ext/nutcracker/src/hashkit/nc_hashkit.h +0 -2
  48. data/ext/nutcracker/src/hashkit/nc_hsieh.c +0 -0
  49. data/ext/nutcracker/src/hashkit/nc_jenkins.c +0 -0
  50. data/ext/nutcracker/src/hashkit/nc_ketama.c +0 -0
  51. data/ext/nutcracker/src/hashkit/nc_md5.c +0 -0
  52. data/ext/nutcracker/src/hashkit/nc_modula.c +6 -18
  53. data/ext/nutcracker/src/hashkit/nc_murmur.c +0 -0
  54. data/ext/nutcracker/src/hashkit/nc_one_at_a_time.c +0 -0
  55. data/ext/nutcracker/src/hashkit/nc_random.c +0 -0
  56. data/ext/nutcracker/src/nc.c +0 -0
  57. data/ext/nutcracker/src/nc_array.c +0 -0
  58. data/ext/nutcracker/src/nc_array.h +0 -0
  59. data/ext/nutcracker/src/nc_client.c +0 -0
  60. data/ext/nutcracker/src/nc_client.h +0 -0
  61. data/ext/nutcracker/src/nc_conf.c +35 -14
  62. data/ext/nutcracker/src/nc_conf.h +1 -1
  63. data/ext/nutcracker/src/nc_connection.c +0 -0
  64. data/ext/nutcracker/src/nc_connection.h +0 -0
  65. data/ext/nutcracker/src/nc_core.c +26 -29
  66. data/ext/nutcracker/src/nc_core.h +5 -13
  67. data/ext/nutcracker/src/{nc_epoll.c → nc_event.c} +30 -94
  68. data/ext/nutcracker/src/nc_event.h +13 -33
  69. data/ext/nutcracker/src/nc_log.c +0 -0
  70. data/ext/nutcracker/src/nc_log.h +0 -0
  71. data/ext/nutcracker/src/nc_mbuf.c +0 -0
  72. data/ext/nutcracker/src/nc_mbuf.h +0 -0
  73. data/ext/nutcracker/src/nc_message.c +0 -0
  74. data/ext/nutcracker/src/nc_message.h +0 -2
  75. data/ext/nutcracker/src/nc_proxy.c +8 -8
  76. data/ext/nutcracker/src/nc_proxy.h +0 -0
  77. data/ext/nutcracker/src/nc_queue.h +0 -0
  78. data/ext/nutcracker/src/nc_rbtree.c +0 -0
  79. data/ext/nutcracker/src/nc_rbtree.h +0 -0
  80. data/ext/nutcracker/src/nc_request.c +3 -3
  81. data/ext/nutcracker/src/nc_response.c +6 -4
  82. data/ext/nutcracker/src/nc_server.c +12 -14
  83. data/ext/nutcracker/src/nc_server.h +0 -0
  84. data/ext/nutcracker/src/nc_signal.c +0 -0
  85. data/ext/nutcracker/src/nc_signal.h +0 -0
  86. data/ext/nutcracker/src/nc_stats.c +21 -16
  87. data/ext/nutcracker/src/nc_stats.h +4 -3
  88. data/ext/nutcracker/src/nc_string.c +0 -0
  89. data/ext/nutcracker/src/nc_string.h +0 -0
  90. data/ext/nutcracker/src/nc_util.c +0 -16
  91. data/ext/nutcracker/src/nc_util.h +0 -1
  92. data/ext/nutcracker/src/proto/Makefile.am +0 -0
  93. data/ext/nutcracker/src/proto/Makefile.in +60 -32
  94. data/ext/nutcracker/src/proto/nc_memcache.c +0 -0
  95. data/ext/nutcracker/src/proto/nc_proto.h +0 -0
  96. data/ext/nutcracker/src/proto/nc_redis.c +4 -17
  97. data/lib/nutcracker.rb +2 -187
  98. data/lib/nutcracker/version.rb +1 -1
  99. metadata +10 -256
  100. data/ext/nutcracker/Makefile +0 -643
  101. data/ext/nutcracker/autom4te.cache/output.0 +0 -18664
  102. data/ext/nutcracker/autom4te.cache/output.1 +0 -18664
  103. data/ext/nutcracker/autom4te.cache/output.2 +0 -18664
  104. data/ext/nutcracker/autom4te.cache/requests +0 -494
  105. data/ext/nutcracker/autom4te.cache/traces.0 +0 -2415
  106. data/ext/nutcracker/autom4te.cache/traces.1 +0 -945
  107. data/ext/nutcracker/autom4te.cache/traces.2 +0 -2415
  108. data/ext/nutcracker/config.h +0 -332
  109. data/ext/nutcracker/config.log +0 -2684
  110. data/ext/nutcracker/config.status +0 -2317
  111. data/ext/nutcracker/contrib/Makefile +0 -494
  112. data/ext/nutcracker/contrib/yaml-0.1.4/Makefile +0 -736
  113. data/ext/nutcracker/contrib/yaml-0.1.4/autom4te.cache/output.0 +0 -13102
  114. data/ext/nutcracker/contrib/yaml-0.1.4/autom4te.cache/output.1 +0 -13085
  115. data/ext/nutcracker/contrib/yaml-0.1.4/autom4te.cache/output.2 +0 -13085
  116. data/ext/nutcracker/contrib/yaml-0.1.4/autom4te.cache/requests +0 -476
  117. data/ext/nutcracker/contrib/yaml-0.1.4/autom4te.cache/traces.0 +0 -2339
  118. data/ext/nutcracker/contrib/yaml-0.1.4/autom4te.cache/traces.1 +0 -545
  119. data/ext/nutcracker/contrib/yaml-0.1.4/autom4te.cache/traces.2 +0 -2339
  120. data/ext/nutcracker/contrib/yaml-0.1.4/config.h +0 -81
  121. data/ext/nutcracker/contrib/yaml-0.1.4/config.h.in~ +0 -80
  122. data/ext/nutcracker/contrib/yaml-0.1.4/config.log +0 -688
  123. data/ext/nutcracker/contrib/yaml-0.1.4/config.status +0 -2032
  124. data/ext/nutcracker/contrib/yaml-0.1.4/doc/html/annotated.html +0 -51
  125. data/ext/nutcracker/contrib/yaml-0.1.4/doc/html/bc_s.png +0 -0
  126. data/ext/nutcracker/contrib/yaml-0.1.4/doc/html/classes.html +0 -41
  127. data/ext/nutcracker/contrib/yaml-0.1.4/doc/html/closed.png +0 -0
  128. data/ext/nutcracker/contrib/yaml-0.1.4/doc/html/doxygen.css +0 -656
  129. data/ext/nutcracker/contrib/yaml-0.1.4/doc/html/doxygen.png +0 -0
  130. data/ext/nutcracker/contrib/yaml-0.1.4/doc/html/files.html +0 -40
  131. data/ext/nutcracker/contrib/yaml-0.1.4/doc/html/functions.html +0 -91
  132. data/ext/nutcracker/contrib/yaml-0.1.4/doc/html/functions_0x62.html +0 -84
  133. data/ext/nutcracker/contrib/yaml-0.1.4/doc/html/functions_0x63.html +0 -87
  134. data/ext/nutcracker/contrib/yaml-0.1.4/doc/html/functions_0x64.html +0 -83
  135. data/ext/nutcracker/contrib/yaml-0.1.4/doc/html/functions_0x65.html +0 -110
  136. data/ext/nutcracker/contrib/yaml-0.1.4/doc/html/functions_0x66.html +0 -79
  137. data/ext/nutcracker/contrib/yaml-0.1.4/doc/html/functions_0x68.html +0 -80
  138. data/ext/nutcracker/contrib/yaml-0.1.4/doc/html/functions_0x69.html +0 -92
  139. data/ext/nutcracker/contrib/yaml-0.1.4/doc/html/functions_0x6b.html +0 -71
  140. data/ext/nutcracker/contrib/yaml-0.1.4/doc/html/functions_0x6c.html +0 -88
  141. data/ext/nutcracker/contrib/yaml-0.1.4/doc/html/functions_0x6d.html +0 -96
  142. data/ext/nutcracker/contrib/yaml-0.1.4/doc/html/functions_0x6e.html +0 -71
  143. data/ext/nutcracker/contrib/yaml-0.1.4/doc/html/functions_0x6f.html +0 -80
  144. data/ext/nutcracker/contrib/yaml-0.1.4/doc/html/functions_0x70.html +0 -100
  145. data/ext/nutcracker/contrib/yaml-0.1.4/doc/html/functions_0x71.html +0 -71
  146. data/ext/nutcracker/contrib/yaml-0.1.4/doc/html/functions_0x72.html +0 -87
  147. data/ext/nutcracker/contrib/yaml-0.1.4/doc/html/functions_0x73.html +0 -163
  148. data/ext/nutcracker/contrib/yaml-0.1.4/doc/html/functions_0x74.html +0 -115
  149. data/ext/nutcracker/contrib/yaml-0.1.4/doc/html/functions_0x75.html +0 -71
  150. data/ext/nutcracker/contrib/yaml-0.1.4/doc/html/functions_0x76.html +0 -80
  151. data/ext/nutcracker/contrib/yaml-0.1.4/doc/html/functions_0x77.html +0 -77
  152. data/ext/nutcracker/contrib/yaml-0.1.4/doc/html/functions_vars.html +0 -91
  153. data/ext/nutcracker/contrib/yaml-0.1.4/doc/html/functions_vars_0x62.html +0 -84
  154. data/ext/nutcracker/contrib/yaml-0.1.4/doc/html/functions_vars_0x63.html +0 -87
  155. data/ext/nutcracker/contrib/yaml-0.1.4/doc/html/functions_vars_0x64.html +0 -83
  156. data/ext/nutcracker/contrib/yaml-0.1.4/doc/html/functions_vars_0x65.html +0 -110
  157. data/ext/nutcracker/contrib/yaml-0.1.4/doc/html/functions_vars_0x66.html +0 -79
  158. data/ext/nutcracker/contrib/yaml-0.1.4/doc/html/functions_vars_0x68.html +0 -80
  159. data/ext/nutcracker/contrib/yaml-0.1.4/doc/html/functions_vars_0x69.html +0 -92
  160. data/ext/nutcracker/contrib/yaml-0.1.4/doc/html/functions_vars_0x6b.html +0 -71
  161. data/ext/nutcracker/contrib/yaml-0.1.4/doc/html/functions_vars_0x6c.html +0 -88
  162. data/ext/nutcracker/contrib/yaml-0.1.4/doc/html/functions_vars_0x6d.html +0 -96
  163. data/ext/nutcracker/contrib/yaml-0.1.4/doc/html/functions_vars_0x6e.html +0 -71
  164. data/ext/nutcracker/contrib/yaml-0.1.4/doc/html/functions_vars_0x6f.html +0 -80
  165. data/ext/nutcracker/contrib/yaml-0.1.4/doc/html/functions_vars_0x70.html +0 -100
  166. data/ext/nutcracker/contrib/yaml-0.1.4/doc/html/functions_vars_0x71.html +0 -71
  167. data/ext/nutcracker/contrib/yaml-0.1.4/doc/html/functions_vars_0x72.html +0 -87
  168. data/ext/nutcracker/contrib/yaml-0.1.4/doc/html/functions_vars_0x73.html +0 -163
  169. data/ext/nutcracker/contrib/yaml-0.1.4/doc/html/functions_vars_0x74.html +0 -115
  170. data/ext/nutcracker/contrib/yaml-0.1.4/doc/html/functions_vars_0x75.html +0 -71
  171. data/ext/nutcracker/contrib/yaml-0.1.4/doc/html/functions_vars_0x76.html +0 -80
  172. data/ext/nutcracker/contrib/yaml-0.1.4/doc/html/functions_vars_0x77.html +0 -77
  173. data/ext/nutcracker/contrib/yaml-0.1.4/doc/html/globals.html +0 -667
  174. data/ext/nutcracker/contrib/yaml-0.1.4/doc/html/globals_defs.html +0 -81
  175. data/ext/nutcracker/contrib/yaml-0.1.4/doc/html/globals_enum.html +0 -78
  176. data/ext/nutcracker/contrib/yaml-0.1.4/doc/html/globals_eval.html +0 -373
  177. data/ext/nutcracker/contrib/yaml-0.1.4/doc/html/globals_func.html +0 -196
  178. data/ext/nutcracker/contrib/yaml-0.1.4/doc/html/globals_type.html +0 -126
  179. data/ext/nutcracker/contrib/yaml-0.1.4/doc/html/group__basic.html +0 -320
  180. data/ext/nutcracker/contrib/yaml-0.1.4/doc/html/group__emitter.html +0 -819
  181. data/ext/nutcracker/contrib/yaml-0.1.4/doc/html/group__events.html +0 -664
  182. data/ext/nutcracker/contrib/yaml-0.1.4/doc/html/group__export.html +0 -60
  183. data/ext/nutcracker/contrib/yaml-0.1.4/doc/html/group__nodes.html +0 -795
  184. data/ext/nutcracker/contrib/yaml-0.1.4/doc/html/group__parser.html +0 -606
  185. data/ext/nutcracker/contrib/yaml-0.1.4/doc/html/group__styles.html +0 -222
  186. data/ext/nutcracker/contrib/yaml-0.1.4/doc/html/group__tokens.html +0 -246
  187. data/ext/nutcracker/contrib/yaml-0.1.4/doc/html/group__version.html +0 -106
  188. data/ext/nutcracker/contrib/yaml-0.1.4/doc/html/index.html +0 -31
  189. data/ext/nutcracker/contrib/yaml-0.1.4/doc/html/modules.html +0 -42
  190. data/ext/nutcracker/contrib/yaml-0.1.4/doc/html/nav_f.png +0 -0
  191. data/ext/nutcracker/contrib/yaml-0.1.4/doc/html/nav_h.png +0 -0
  192. data/ext/nutcracker/contrib/yaml-0.1.4/doc/html/open.png +0 -0
  193. data/ext/nutcracker/contrib/yaml-0.1.4/doc/html/structyaml__alias__data__s.html +0 -108
  194. data/ext/nutcracker/contrib/yaml-0.1.4/doc/html/structyaml__document__s.html +0 -235
  195. data/ext/nutcracker/contrib/yaml-0.1.4/doc/html/structyaml__emitter__s.html +0 -1300
  196. data/ext/nutcracker/contrib/yaml-0.1.4/doc/html/structyaml__event__s.html +0 -496
  197. data/ext/nutcracker/contrib/yaml-0.1.4/doc/html/structyaml__mark__s.html +0 -108
  198. data/ext/nutcracker/contrib/yaml-0.1.4/doc/html/structyaml__node__pair__s.html +0 -91
  199. data/ext/nutcracker/contrib/yaml-0.1.4/doc/html/structyaml__node__s.html +0 -420
  200. data/ext/nutcracker/contrib/yaml-0.1.4/doc/html/structyaml__parser__s.html +0 -1229
  201. data/ext/nutcracker/contrib/yaml-0.1.4/doc/html/structyaml__simple__key__s.html +0 -97
  202. data/ext/nutcracker/contrib/yaml-0.1.4/doc/html/structyaml__tag__directive__s.html +0 -91
  203. data/ext/nutcracker/contrib/yaml-0.1.4/doc/html/structyaml__token__s.html +0 -413
  204. data/ext/nutcracker/contrib/yaml-0.1.4/doc/html/structyaml__version__directive__s.html +0 -91
  205. data/ext/nutcracker/contrib/yaml-0.1.4/doc/html/tab_a.png +0 -0
  206. data/ext/nutcracker/contrib/yaml-0.1.4/doc/html/tab_b.png +0 -0
  207. data/ext/nutcracker/contrib/yaml-0.1.4/doc/html/tab_h.png +0 -0
  208. data/ext/nutcracker/contrib/yaml-0.1.4/doc/html/tab_s.png +0 -0
  209. data/ext/nutcracker/contrib/yaml-0.1.4/doc/html/tabs.css +0 -59
  210. data/ext/nutcracker/contrib/yaml-0.1.4/doc/html/yaml_8h.html +0 -525
  211. data/ext/nutcracker/contrib/yaml-0.1.4/include/Makefile.am +0 -17
  212. data/ext/nutcracker/contrib/yaml-0.1.4/include/Makefile.in +0 -470
  213. data/ext/nutcracker/contrib/yaml-0.1.4/libtool +0 -8890
  214. data/ext/nutcracker/contrib/yaml-0.1.4/src/Makefile +0 -484
  215. data/ext/nutcracker/contrib/yaml-0.1.4/src/api.lo +0 -12
  216. data/ext/nutcracker/contrib/yaml-0.1.4/src/api.o +0 -0
  217. data/ext/nutcracker/contrib/yaml-0.1.4/src/dumper.lo +0 -12
  218. data/ext/nutcracker/contrib/yaml-0.1.4/src/dumper.o +0 -0
  219. data/ext/nutcracker/contrib/yaml-0.1.4/src/emitter.lo +0 -12
  220. data/ext/nutcracker/contrib/yaml-0.1.4/src/emitter.o +0 -0
  221. data/ext/nutcracker/contrib/yaml-0.1.4/src/libyaml.la +0 -41
  222. data/ext/nutcracker/contrib/yaml-0.1.4/src/loader.lo +0 -12
  223. data/ext/nutcracker/contrib/yaml-0.1.4/src/loader.o +0 -0
  224. data/ext/nutcracker/contrib/yaml-0.1.4/src/parser.lo +0 -12
  225. data/ext/nutcracker/contrib/yaml-0.1.4/src/parser.o +0 -0
  226. data/ext/nutcracker/contrib/yaml-0.1.4/src/reader.lo +0 -12
  227. data/ext/nutcracker/contrib/yaml-0.1.4/src/reader.o +0 -0
  228. data/ext/nutcracker/contrib/yaml-0.1.4/src/scanner.lo +0 -12
  229. data/ext/nutcracker/contrib/yaml-0.1.4/src/scanner.o +0 -0
  230. data/ext/nutcracker/contrib/yaml-0.1.4/src/writer.lo +0 -12
  231. data/ext/nutcracker/contrib/yaml-0.1.4/src/writer.o +0 -0
  232. data/ext/nutcracker/contrib/yaml-0.1.4/stamp-h1 +0 -1
  233. data/ext/nutcracker/contrib/yaml-0.1.4/tests/Makefile +0 -675
  234. data/ext/nutcracker/contrib/yaml-0.1.4/tests/example-deconstructor +0 -0
  235. data/ext/nutcracker/contrib/yaml-0.1.4/tests/example-deconstructor-alt +0 -0
  236. data/ext/nutcracker/contrib/yaml-0.1.4/tests/example-deconstructor-alt.o +0 -0
  237. data/ext/nutcracker/contrib/yaml-0.1.4/tests/example-deconstructor.o +0 -0
  238. data/ext/nutcracker/contrib/yaml-0.1.4/tests/example-reformatter +0 -0
  239. data/ext/nutcracker/contrib/yaml-0.1.4/tests/example-reformatter-alt +0 -0
  240. data/ext/nutcracker/contrib/yaml-0.1.4/tests/example-reformatter-alt.o +0 -0
  241. data/ext/nutcracker/contrib/yaml-0.1.4/tests/example-reformatter.o +0 -0
  242. data/ext/nutcracker/contrib/yaml-0.1.4/tests/run-dumper +0 -0
  243. data/ext/nutcracker/contrib/yaml-0.1.4/tests/run-dumper.o +0 -0
  244. data/ext/nutcracker/contrib/yaml-0.1.4/tests/run-emitter +0 -0
  245. data/ext/nutcracker/contrib/yaml-0.1.4/tests/run-emitter.o +0 -0
  246. data/ext/nutcracker/contrib/yaml-0.1.4/tests/run-loader +0 -0
  247. data/ext/nutcracker/contrib/yaml-0.1.4/tests/run-loader.o +0 -0
  248. data/ext/nutcracker/contrib/yaml-0.1.4/tests/run-parser +0 -0
  249. data/ext/nutcracker/contrib/yaml-0.1.4/tests/run-parser.o +0 -0
  250. data/ext/nutcracker/contrib/yaml-0.1.4/tests/run-scanner +0 -0
  251. data/ext/nutcracker/contrib/yaml-0.1.4/tests/run-scanner.o +0 -0
  252. data/ext/nutcracker/contrib/yaml-0.1.4/yaml-0.1.pc +0 -10
  253. data/ext/nutcracker/contrib/yaml-0.1.4/yaml-0.1.pc.in +0 -10
  254. data/ext/nutcracker/libtool +0 -9403
  255. data/ext/nutcracker/src/Makefile +0 -647
  256. data/ext/nutcracker/src/hashkit/Makefile +0 -476
  257. data/ext/nutcracker/src/hashkit/libhashkit.a +0 -0
  258. data/ext/nutcracker/src/hashkit/nc_crc16.c +0 -66
  259. data/ext/nutcracker/src/hashkit/nc_crc16.o +0 -0
  260. data/ext/nutcracker/src/hashkit/nc_crc32.o +0 -0
  261. data/ext/nutcracker/src/hashkit/nc_fnv.o +0 -0
  262. data/ext/nutcracker/src/hashkit/nc_hsieh.o +0 -0
  263. data/ext/nutcracker/src/hashkit/nc_jenkins.o +0 -0
  264. data/ext/nutcracker/src/hashkit/nc_ketama.o +0 -0
  265. data/ext/nutcracker/src/hashkit/nc_md5.o +0 -0
  266. data/ext/nutcracker/src/hashkit/nc_modula.o +0 -0
  267. data/ext/nutcracker/src/hashkit/nc_murmur.o +0 -0
  268. data/ext/nutcracker/src/hashkit/nc_one_at_a_time.o +0 -0
  269. data/ext/nutcracker/src/hashkit/nc_random.o +0 -0
  270. data/ext/nutcracker/src/nc.o +0 -0
  271. data/ext/nutcracker/src/nc_array.o +0 -0
  272. data/ext/nutcracker/src/nc_client.o +0 -0
  273. data/ext/nutcracker/src/nc_conf.o +0 -0
  274. data/ext/nutcracker/src/nc_connection.o +0 -0
  275. data/ext/nutcracker/src/nc_core.o +0 -0
  276. data/ext/nutcracker/src/nc_epoll.o +0 -0
  277. data/ext/nutcracker/src/nc_kqueue.c +0 -296
  278. data/ext/nutcracker/src/nc_kqueue.o +0 -0
  279. data/ext/nutcracker/src/nc_log.o +0 -0
  280. data/ext/nutcracker/src/nc_mbuf.o +0 -0
  281. data/ext/nutcracker/src/nc_message.o +0 -0
  282. data/ext/nutcracker/src/nc_proxy.o +0 -0
  283. data/ext/nutcracker/src/nc_rbtree.o +0 -0
  284. data/ext/nutcracker/src/nc_request.o +0 -0
  285. data/ext/nutcracker/src/nc_response.o +0 -0
  286. data/ext/nutcracker/src/nc_server.o +0 -0
  287. data/ext/nutcracker/src/nc_signal.o +0 -0
  288. data/ext/nutcracker/src/nc_stats.o +0 -0
  289. data/ext/nutcracker/src/nc_string.o +0 -0
  290. data/ext/nutcracker/src/nc_util.o +0 -0
  291. data/ext/nutcracker/src/nutcracker +0 -0
  292. data/ext/nutcracker/src/proto/Makefile +0 -454
  293. data/ext/nutcracker/src/proto/libproto.a +0 -0
  294. data/ext/nutcracker/src/proto/nc_memcache.o +0 -0
  295. data/ext/nutcracker/src/proto/nc_redis.o +0 -0
  296. data/ext/nutcracker/stamp-h1 +0 -1
data/README.md CHANGED
@@ -1,27 +1,22 @@
1
1
  # Nutcracker
2
- <a href="https://rubygems.org/gems/nutcracker"><img src=https://fury-badge.herokuapp.com/rb/nutcracker.png></a>
2
+ <a href="https://rubygems.org/gems/graphite-api"><img src=https://fury-badge.herokuapp.com/rb/nutcracker.png></a>
3
3
 
4
- This library wraps Twitter's [Nutcracker](https://github.com/twitter/twemproxy) in a gem package and provides a simple ruby API to the `nutcracker` executable.
5
-
6
- ### Disclaimer
7
- this project is still in its early stages, so things could be a little buggy, if you find one, feel free to [report](https://github.com/kontera-technologies/nutcracker/issues) it.
4
+ This "library" wraps Twitter's [Nutcracker](https://github.com/twitter/twemproxy) in a gem package and provides ( in the near future I hope ) simple ruby API to the `nutcracker` executable.
5
+ For now this repository only contains a Rakefile for building new `nutcracker` gems, look at the last section for more info.
8
6
 
9
7
  ## Motivation
10
8
  The main motivation here is to take the advantages of working with Bundler's dependencies management and to be able to embed Twitter's [Nutcracker](https://github.com/twitter/twemproxy) as a dependency to any Ruby project, this allow you to create small-configuration-only-apps tied to specific version of Nutcracker as I show in the example bellow.
11
9
 
12
- ## Plugins
13
- - [nutcracker-graphite](https://github.com/kontera-technologies/nutcracker-graphite) - Send cluster stats to Graphite
14
- - [nutcracker-web](https://github.com/kontera-technologies/nutcracker-web) - Web interface
10
+ ## Installation
15
11
 
16
- ### Installation
17
- Add this line to your application's Gemfile:
18
- ```
19
- gem 'nutcracker'
20
- ```
12
+ `gem install nutcracker`
21
13
 
22
- And then execute:
23
- ```
24
- $ bundle install
14
+ Or if you are using a `Gemfile`
15
+
16
+ ```ruby
17
+ source :rubygems
18
+
19
+ gem 'nutcracker'
25
20
  ```
26
21
 
27
22
  after the gem was successfully installed, the `nutcracker` executable should be available
@@ -49,37 +44,9 @@ Options:
49
44
  -m, --mbuf-size=N : set size of mbuf chunk in bytes (default: 16384 bytes)
50
45
 
51
46
  ```
52
-
53
- ### Ruby Wrapper
54
- a simple ruby wrapper is also included
55
-
56
- ```ruby
57
- require 'nutcracker'
58
-
59
- nutcracker = Nutcracker.start(config_file: 'cluster.yaml')
60
- nutcracker.running? # => true
61
-
62
- nutcracker.stats # => {"source"=>"local", "version"=>"0.2.4", "uptime"=>6...}
63
-
64
- nutcracker.stop
65
- nutcracker.running? # => false
66
-
67
- nutcracker.start
68
- nutcracker.join # wait for server to exit
69
- ```
70
-
71
- you can also attach to a running instance of nutcracker
72
-
73
- ```ruby
74
- Nutcracker.attach(config_file: 'cluster.yaml', stats_port: 22222)
75
- ```
76
-
77
- ### Building new gems
47
+ ## Wanna build a new version?
78
48
  * Set the version @ `lib/nutcracker/version.rb` ( [Available Versions](https://code.google.com/p/twemproxy/downloads/list) )
79
49
  * run the `rake build` command
80
50
  * look for `nutcracker-X.Y.Z` gem under the pkg folder
81
51
 
82
- ### Warranty
83
- This software is provided “as is” and without any express or implied warranties, including, without limitation, the implied warranties of merchantability and fitness for a particular purpose.
84
-
85
- > for more details like licensing etc, please look @ [Nutcracker](https://github.com/twitter/twemproxy)
52
+ > for more details like licensing etc, please look @ [Nutcracker](https://github.com/twitter/twemproxy)
data/Rakefile CHANGED
@@ -2,23 +2,36 @@ $:.unshift File.expand_path '../lib', __FILE__
2
2
  require 'nutcracker'
3
3
  require 'rake'
4
4
  require 'rubygems/package_task'
5
- require "rake/testtask"
6
5
 
7
- Nutcracker::GemSpec = eval File.read 'nutcracker.gemspec'
8
-
9
- sversion = Nutcracker.version.split(".")[0..2].join(".")
6
+ Nutcracker::GemSpec = Gem::Specification.new do |s|
7
+ s.name = "nutcracker"
8
+ s.version = Nutcracker.version.dup
9
+ s.platform = Gem::Platform::RUBY
10
+ s.summary = "Twitter's Nutcraker Gem Wrapper"
11
+ s.description = "Gem/Bundler benefits for Twitter's Nutcraker C app"
12
+ s.author = "Eran Barak Levi"
13
+ s.email = "eran@kontera.com"
14
+ s.homepage = 'http://www.kontera.com'
15
+ s.required_ruby_version = '>= 1.8.5'
16
+ s.rubyforge_project = "ruby-nutcracker"
17
+ s.files = %w(README.md Rakefile) + Dir.glob("{bin,lib,ext}/**/*")
18
+ s.require_path = "lib"
19
+ s.extensions = ['ext/nutcracker/extconf.rb']
20
+ s.executables = ['nutcracker']
21
+ s.require_paths = ['lib']
22
+ end
10
23
 
11
24
  task :download do
12
- "nutcracker-#{sversion}.tar.gz".tap do |tarball|
25
+ "nutcracker-#{Nutcracker.version}.tar.gz".tap do |tarball|
13
26
  sh "mkdir ext" unless File.directory? "ext"
14
27
  sh "rm -rf ext/nutcracker"
15
28
  sh "wget https://twemproxy.googlecode.com/files/#{tarball}"
16
29
  sh "tar -zxvf #{tarball}"
17
- sh "mv nutcracker-#{sversion} ext/nutcracker"
30
+ sh "mv nutcracker-#{Nutcracker.version} ext/nutcracker"
18
31
  File.open("ext/nutcracker/extconf.rb",'w') do |file|
19
32
  file.puts %q{
20
33
  raise "no support for #{RUBY_PLATFORM}" if RUBY_PLATFORM =~ /darwin|mswin|mingw/
21
- system "./configure --prefix=#{File.expand_path('..',__FILE__)}"
34
+ system './configure'
22
35
  system 'make'
23
36
  }
24
37
  end
@@ -40,11 +53,3 @@ task :install => [:gem] do
40
53
  sh "gem install pkg/nutcracker"
41
54
  Rake::Task['clobber_package'].execute
42
55
  end
43
-
44
- ## Tests stuff
45
- task :default => :test
46
-
47
- Rake::TestTask.new(:test) do |t|
48
- t.libs << "tests"
49
- t.pattern = "tests/**/*_test.rb"
50
- end
data/bin/nutcracker CHANGED
@@ -1,7 +1,2 @@
1
1
  #!/usr/bin/env ruby
2
-
3
- $:.unshift File.expand_path("../../lib", __FILE__)
4
-
5
- require 'nutcracker'
6
-
7
- exec Nutcracker.executable, *ARGV
2
+ exec File.expand_path('../../ext/nutcracker/src/nutcracker', __FILE__ ), *ARGV
@@ -1,12 +1,3 @@
1
- 2013-23-04 Manju Rajashekhar <manj@cs.stanford.edu>
2
- * twemproxy: version 0.2.4 release
3
- redis keys must be less than mbuf_data_size() in length (fifsky)
4
- Adds support for DUMP/RESTORE commands in Redis (remotezygote)
5
- Use of the weight value in the modula distribution (mezzatto)
6
- Add support to unix socket connections to servers (mezzatto)
7
- only check for duplicate server name and not 'host:port:weight' when 'name' is configured
8
- crc16 hash support added (mezzatto)
9
-
10
1
  2013-31-01 Manju Rajashekhar <manj@twitter.com>
11
2
  * twemproxy: version 0.2.3 release
12
3
  RPOPLPUSH, SDIFF, SDIFFSTORE, SINTER, SINTERSTORE, SMOVE, SUNION, SUNIONSTORE, ZINTERSTORE, and ZUNIONSTORE support (dcartoon)
File without changes
File without changes
@@ -1,8 +1,9 @@
1
- # Makefile.in generated by automake 1.10 from Makefile.am.
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, Inc.
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.
@@ -15,8 +16,9 @@
15
16
  @SET_MAKE@
16
17
  VPATH = @srcdir@
17
18
  pkgdatadir = $(datadir)/@PACKAGE@
18
- pkglibdir = $(libdir)/@PACKAGE@
19
19
  pkgincludedir = $(includedir)/@PACKAGE@
20
+ pkglibdir = $(libdir)/@PACKAGE@
21
+ pkglibexecdir = $(libexecdir)/@PACKAGE@
20
22
  am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd
21
23
  install_sh_DATA = $(install_sh) -c -m 644
22
24
  install_sh_PROGRAM = $(install_sh) -c
@@ -49,6 +51,7 @@ am__CONFIG_DISTCLEAN_FILES = config.status config.cache config.log \
49
51
  mkinstalldirs = $(install_sh) -d
50
52
  CONFIG_HEADER = config.h
51
53
  CONFIG_CLEAN_FILES =
54
+ CONFIG_CLEAN_VPATH_FILES =
52
55
  SOURCES =
53
56
  DIST_SOURCES =
54
57
  RECURSIVE_TARGETS = all-recursive check-recursive dvi-recursive \
@@ -60,6 +63,9 @@ RECURSIVE_TARGETS = all-recursive check-recursive dvi-recursive \
60
63
  ps-recursive uninstall-recursive
61
64
  RECURSIVE_CLEAN_TARGETS = mostlyclean-recursive clean-recursive \
62
65
  distclean-recursive maintainer-clean-recursive
66
+ AM_RECURSIVE_TARGETS = $(RECURSIVE_TARGETS:-recursive=) \
67
+ $(RECURSIVE_CLEAN_TARGETS:-recursive=) tags TAGS ctags CTAGS \
68
+ distdir dist dist-all distcheck
63
69
  ETAGS = etags
64
70
  CTAGS = ctags
65
71
  DIST_SUBDIRS = $(SUBDIRS)
@@ -67,9 +73,34 @@ DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
67
73
  distdir = $(PACKAGE)-$(VERSION)
68
74
  top_distdir = $(distdir)
69
75
  am__remove_distdir = \
70
- { test ! -d $(distdir) \
71
- || { find $(distdir) -type d ! -perm -200 -exec chmod u+w {} ';' \
72
- && rm -fr $(distdir); }; }
76
+ { test ! -d "$(distdir)" \
77
+ || { find "$(distdir)" -type d ! -perm -200 -exec chmod u+w {} ';' \
78
+ && rm -fr "$(distdir)"; }; }
79
+ am__relativize = \
80
+ dir0=`pwd`; \
81
+ sed_first='s,^\([^/]*\)/.*$$,\1,'; \
82
+ sed_rest='s,^[^/]*/*,,'; \
83
+ sed_last='s,^.*/\([^/]*\)$$,\1,'; \
84
+ sed_butlast='s,/*[^/]*$$,,'; \
85
+ while test -n "$$dir1"; do \
86
+ first=`echo "$$dir1" | sed -e "$$sed_first"`; \
87
+ if test "$$first" != "."; then \
88
+ if test "$$first" = ".."; then \
89
+ dir2=`echo "$$dir0" | sed -e "$$sed_last"`/"$$dir2"; \
90
+ dir0=`echo "$$dir0" | sed -e "$$sed_butlast"`; \
91
+ else \
92
+ first2=`echo "$$dir2" | sed -e "$$sed_first"`; \
93
+ if test "$$first2" = "$$first"; then \
94
+ dir2=`echo "$$dir2" | sed -e "$$sed_rest"`; \
95
+ else \
96
+ dir2="../$$dir2"; \
97
+ fi; \
98
+ dir0="$$dir0"/"$$first"; \
99
+ fi; \
100
+ fi; \
101
+ dir1=`echo "$$dir1" | sed -e "$$sed_rest"`; \
102
+ done; \
103
+ reldir="$$dir2"
73
104
  DIST_ARCHIVES = $(distdir).tar.gz
74
105
  GZIP_ENV = --best
75
106
  distuninstallcheck_listfiles = find . -type f -print
@@ -174,6 +205,7 @@ libdir = @libdir@
174
205
  libexecdir = @libexecdir@
175
206
  localedir = @localedir@
176
207
  localstatedir = @localstatedir@
208
+ lt_ECHO = @lt_ECHO@
177
209
  mandir = @mandir@
178
210
  mkdir_p = @mkdir_p@
179
211
  oldincludedir = @oldincludedir@
@@ -204,15 +236,15 @@ $(srcdir)/Makefile.in: $(srcdir)/Makefile.am $(am__configure_deps)
204
236
  @for dep in $?; do \
205
237
  case '$(am__configure_deps)' in \
206
238
  *$$dep*) \
207
- echo ' cd $(srcdir) && $(AUTOMAKE) --foreign '; \
208
- cd $(srcdir) && $(AUTOMAKE) --foreign \
239
+ echo ' cd $(srcdir) && $(AUTOMAKE) --foreign'; \
240
+ $(am__cd) $(srcdir) && $(AUTOMAKE) --foreign \
209
241
  && exit 0; \
210
242
  exit 1;; \
211
243
  esac; \
212
244
  done; \
213
- echo ' cd $(top_srcdir) && $(AUTOMAKE) --foreign Makefile'; \
214
- cd $(top_srcdir) && \
215
- $(AUTOMAKE) --foreign Makefile
245
+ echo ' cd $(top_srcdir) && $(AUTOMAKE) --foreign Makefile'; \
246
+ $(am__cd) $(top_srcdir) && \
247
+ $(AUTOMAKE) --foreign Makefile
216
248
  .PRECIOUS: Makefile
217
249
  Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
218
250
  @case '$?' in \
@@ -228,9 +260,10 @@ $(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENC
228
260
  $(SHELL) ./config.status --recheck
229
261
 
230
262
  $(top_srcdir)/configure: $(am__configure_deps)
231
- cd $(srcdir) && $(AUTOCONF)
263
+ $(am__cd) $(srcdir) && $(AUTOCONF)
232
264
  $(ACLOCAL_M4): $(am__aclocal_m4_deps)
233
- cd $(srcdir) && $(ACLOCAL) $(ACLOCAL_AMFLAGS)
265
+ $(am__cd) $(srcdir) && $(ACLOCAL) $(ACLOCAL_AMFLAGS)
266
+ $(am__aclocal_m4_deps):
234
267
 
235
268
  config.h: stamp-h1
236
269
  @if test ! -f $@; then \
@@ -242,7 +275,7 @@ stamp-h1: $(srcdir)/config.h.in $(top_builddir)/config.status
242
275
  @rm -f stamp-h1
243
276
  cd $(top_builddir) && $(SHELL) ./config.status config.h
244
277
  $(srcdir)/config.h.in: $(am__configure_deps)
245
- cd $(top_srcdir) && $(AUTOHEADER)
278
+ ($(am__cd) $(top_srcdir) && $(AUTOHEADER))
246
279
  rm -f stamp-h1
247
280
  touch $@
248
281
 
@@ -256,7 +289,7 @@ clean-libtool:
256
289
  -rm -rf .libs _libs
257
290
 
258
291
  distclean-libtool:
259
- -rm -f libtool
292
+ -rm -f libtool config.lt
260
293
 
261
294
  # This directory's subdirectories are mostly independent; you can cd
262
295
  # into them and run `make' without going through this Makefile.
@@ -282,7 +315,7 @@ $(RECURSIVE_TARGETS):
282
315
  else \
283
316
  local_target="$$target"; \
284
317
  fi; \
285
- (cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) $$local_target) \
318
+ ($(am__cd) $$subdir && $(MAKE) $(AM_MAKEFLAGS) $$local_target) \
286
319
  || eval $$failcom; \
287
320
  done; \
288
321
  if test "$$dot_seen" = "no"; then \
@@ -316,16 +349,16 @@ $(RECURSIVE_CLEAN_TARGETS):
316
349
  else \
317
350
  local_target="$$target"; \
318
351
  fi; \
319
- (cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) $$local_target) \
352
+ ($(am__cd) $$subdir && $(MAKE) $(AM_MAKEFLAGS) $$local_target) \
320
353
  || eval $$failcom; \
321
354
  done && test -z "$$fail"
322
355
  tags-recursive:
323
356
  list='$(SUBDIRS)'; for subdir in $$list; do \
324
- test "$$subdir" = . || (cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) tags); \
357
+ test "$$subdir" = . || ($(am__cd) $$subdir && $(MAKE) $(AM_MAKEFLAGS) tags); \
325
358
  done
326
359
  ctags-recursive:
327
360
  list='$(SUBDIRS)'; for subdir in $$list; do \
328
- test "$$subdir" = . || (cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) ctags); \
361
+ test "$$subdir" = . || ($(am__cd) $$subdir && $(MAKE) $(AM_MAKEFLAGS) ctags); \
329
362
  done
330
363
 
331
364
  ID: $(HEADERS) $(SOURCES) $(LISP) $(TAGS_FILES)
@@ -333,14 +366,14 @@ ID: $(HEADERS) $(SOURCES) $(LISP) $(TAGS_FILES)
333
366
  unique=`for i in $$list; do \
334
367
  if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
335
368
  done | \
336
- $(AWK) ' { files[$$0] = 1; } \
337
- END { for (i in files) print i; }'`; \
369
+ $(AWK) '{ files[$$0] = 1; nonempty = 1; } \
370
+ END { if (nonempty) { for (i in files) print i; }; }'`; \
338
371
  mkid -fID $$unique
339
372
  tags: TAGS
340
373
 
341
374
  TAGS: tags-recursive $(HEADERS) $(SOURCES) config.h.in $(TAGS_DEPENDENCIES) \
342
375
  $(TAGS_FILES) $(LISP)
343
- tags=; \
376
+ set x; \
344
377
  here=`pwd`; \
345
378
  if ($(ETAGS) --etags-include --version) >/dev/null 2>&1; then \
346
379
  include_option=--etags-include; \
@@ -352,46 +385,50 @@ TAGS: tags-recursive $(HEADERS) $(SOURCES) config.h.in $(TAGS_DEPENDENCIES) \
352
385
  list='$(SUBDIRS)'; for subdir in $$list; do \
353
386
  if test "$$subdir" = .; then :; else \
354
387
  test ! -f $$subdir/TAGS || \
355
- tags="$$tags $$include_option=$$here/$$subdir/TAGS"; \
388
+ set "$$@" "$$include_option=$$here/$$subdir/TAGS"; \
356
389
  fi; \
357
390
  done; \
358
391
  list='$(SOURCES) $(HEADERS) config.h.in $(LISP) $(TAGS_FILES)'; \
359
392
  unique=`for i in $$list; do \
360
393
  if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
361
394
  done | \
362
- $(AWK) ' { files[$$0] = 1; } \
363
- END { for (i in files) print i; }'`; \
364
- if test -z "$(ETAGS_ARGS)$$tags$$unique"; then :; else \
395
+ $(AWK) '{ files[$$0] = 1; nonempty = 1; } \
396
+ END { if (nonempty) { for (i in files) print i; }; }'`; \
397
+ shift; \
398
+ if test -z "$(ETAGS_ARGS)$$*$$unique"; then :; else \
365
399
  test -n "$$unique" || unique=$$empty_fix; \
366
- $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \
367
- $$tags $$unique; \
400
+ if test $$# -gt 0; then \
401
+ $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \
402
+ "$$@" $$unique; \
403
+ else \
404
+ $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \
405
+ $$unique; \
406
+ fi; \
368
407
  fi
369
408
  ctags: CTAGS
370
409
  CTAGS: ctags-recursive $(HEADERS) $(SOURCES) config.h.in $(TAGS_DEPENDENCIES) \
371
410
  $(TAGS_FILES) $(LISP)
372
- tags=; \
373
- here=`pwd`; \
374
411
  list='$(SOURCES) $(HEADERS) config.h.in $(LISP) $(TAGS_FILES)'; \
375
412
  unique=`for i in $$list; do \
376
413
  if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
377
414
  done | \
378
- $(AWK) ' { files[$$0] = 1; } \
379
- END { for (i in files) print i; }'`; \
380
- test -z "$(CTAGS_ARGS)$$tags$$unique" \
415
+ $(AWK) '{ files[$$0] = 1; nonempty = 1; } \
416
+ END { if (nonempty) { for (i in files) print i; }; }'`; \
417
+ test -z "$(CTAGS_ARGS)$$unique" \
381
418
  || $(CTAGS) $(CTAGSFLAGS) $(AM_CTAGSFLAGS) $(CTAGS_ARGS) \
382
- $$tags $$unique
419
+ $$unique
383
420
 
384
421
  GTAGS:
385
422
  here=`$(am__cd) $(top_builddir) && pwd` \
386
- && cd $(top_srcdir) \
387
- && gtags -i $(GTAGS_ARGS) $$here
423
+ && $(am__cd) $(top_srcdir) \
424
+ && gtags -i $(GTAGS_ARGS) "$$here"
388
425
 
389
426
  distclean-tags:
390
427
  -rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags
391
428
 
392
429
  distdir: $(DISTFILES)
393
430
  $(am__remove_distdir)
394
- test -d $(distdir) || mkdir $(distdir)
431
+ test -d "$(distdir)" || mkdir "$(distdir)"
395
432
  @srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
396
433
  topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
397
434
  list='$(DISTFILES)'; \
@@ -407,38 +444,54 @@ distdir: $(DISTFILES)
407
444
  if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \
408
445
  if test -d $$d/$$file; then \
409
446
  dir=`echo "/$$file" | sed -e 's,/[^/]*$$,,'`; \
447
+ if test -d "$(distdir)/$$file"; then \
448
+ find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
449
+ fi; \
410
450
  if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \
411
- cp -pR $(srcdir)/$$file $(distdir)$$dir || exit 1; \
451
+ cp -fpR $(srcdir)/$$file "$(distdir)$$dir" || exit 1; \
452
+ find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
412
453
  fi; \
413
- cp -pR $$d/$$file $(distdir)$$dir || exit 1; \
454
+ cp -fpR $$d/$$file "$(distdir)$$dir" || exit 1; \
414
455
  else \
415
- test -f $(distdir)/$$file \
416
- || cp -p $$d/$$file $(distdir)/$$file \
456
+ test -f "$(distdir)/$$file" \
457
+ || cp -p $$d/$$file "$(distdir)/$$file" \
417
458
  || exit 1; \
418
459
  fi; \
419
460
  done
420
- list='$(DIST_SUBDIRS)'; for subdir in $$list; do \
461
+ @list='$(DIST_SUBDIRS)'; for subdir in $$list; do \
421
462
  if test "$$subdir" = .; then :; else \
422
463
  test -d "$(distdir)/$$subdir" \
423
464
  || $(MKDIR_P) "$(distdir)/$$subdir" \
424
465
  || exit 1; \
425
- distdir=`$(am__cd) $(distdir) && pwd`; \
426
- top_distdir=`$(am__cd) $(top_distdir) && pwd`; \
427
- (cd $$subdir && \
466
+ fi; \
467
+ done
468
+ @list='$(DIST_SUBDIRS)'; for subdir in $$list; do \
469
+ if test "$$subdir" = .; then :; else \
470
+ dir1=$$subdir; dir2="$(distdir)/$$subdir"; \
471
+ $(am__relativize); \
472
+ new_distdir=$$reldir; \
473
+ dir1=$$subdir; dir2="$(top_distdir)"; \
474
+ $(am__relativize); \
475
+ new_top_distdir=$$reldir; \
476
+ echo " (cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) top_distdir="$$new_top_distdir" distdir="$$new_distdir" \\"; \
477
+ echo " am__remove_distdir=: am__skip_length_check=: am__skip_mode_fix=: distdir)"; \
478
+ ($(am__cd) $$subdir && \
428
479
  $(MAKE) $(AM_MAKEFLAGS) \
429
- top_distdir="$$top_distdir" \
430
- distdir="$$distdir/$$subdir" \
480
+ top_distdir="$$new_top_distdir" \
481
+ distdir="$$new_distdir" \
431
482
  am__remove_distdir=: \
432
483
  am__skip_length_check=: \
484
+ am__skip_mode_fix=: \
433
485
  distdir) \
434
486
  || exit 1; \
435
487
  fi; \
436
488
  done
437
- -find $(distdir) -type d ! -perm -755 -exec chmod u+rwx,go+rx {} \; -o \
489
+ -test -n "$(am__skip_mode_fix)" \
490
+ || find "$(distdir)" -type d ! -perm -777 -exec chmod a+rwx {} \; -o \
438
491
  ! -type d ! -perm -444 -links 1 -exec chmod a+r {} \; -o \
439
492
  ! -type d ! -perm -400 -exec chmod a+r {} \; -o \
440
493
  ! -type d ! -perm -444 -exec $(install_sh) -c -m a+r {} {} \; \
441
- || chmod -R a+r $(distdir)
494
+ || chmod -R a+r "$(distdir)"
442
495
  dist-gzip: distdir
443
496
  tardir=$(distdir) && $(am__tar) | GZIP=$(GZIP_ENV) gzip -c >$(distdir).tar.gz
444
497
  $(am__remove_distdir)
@@ -447,6 +500,14 @@ dist-bzip2: distdir
447
500
  tardir=$(distdir) && $(am__tar) | bzip2 -9 -c >$(distdir).tar.bz2
448
501
  $(am__remove_distdir)
449
502
 
503
+ dist-lzma: distdir
504
+ tardir=$(distdir) && $(am__tar) | lzma -9 -c >$(distdir).tar.lzma
505
+ $(am__remove_distdir)
506
+
507
+ dist-xz: distdir
508
+ tardir=$(distdir) && $(am__tar) | xz -c >$(distdir).tar.xz
509
+ $(am__remove_distdir)
510
+
450
511
  dist-tarZ: distdir
451
512
  tardir=$(distdir) && $(am__tar) | compress -c >$(distdir).tar.Z
452
513
  $(am__remove_distdir)
@@ -473,6 +534,10 @@ distcheck: dist
473
534
  GZIP=$(GZIP_ENV) gunzip -c $(distdir).tar.gz | $(am__untar) ;;\
474
535
  *.tar.bz2*) \
475
536
  bunzip2 -c $(distdir).tar.bz2 | $(am__untar) ;;\
537
+ *.tar.lzma*) \
538
+ unlzma -c $(distdir).tar.lzma | $(am__untar) ;;\
539
+ *.tar.xz*) \
540
+ xz -dc $(distdir).tar.xz | $(am__untar) ;;\
476
541
  *.tar.Z*) \
477
542
  uncompress -c $(distdir).tar.Z | $(am__untar) ;;\
478
543
  *.shar.gz*) \
@@ -484,9 +549,11 @@ distcheck: dist
484
549
  mkdir $(distdir)/_build
485
550
  mkdir $(distdir)/_inst
486
551
  chmod a-w $(distdir)
552
+ test -d $(distdir)/_build || exit 0; \
487
553
  dc_install_base=`$(am__cd) $(distdir)/_inst && pwd | sed -e 's,^[^:\\/]:[\\/],/,'` \
488
554
  && dc_destdir="$${TMPDIR-/tmp}/am-dc-$$$$/" \
489
- && cd $(distdir)/_build \
555
+ && am__cwd=`pwd` \
556
+ && $(am__cd) $(distdir)/_build \
490
557
  && ../configure --srcdir=.. --prefix="$$dc_install_base" \
491
558
  $(DISTCHECK_CONFIGURE_FLAGS) \
492
559
  && $(MAKE) $(AM_MAKEFLAGS) \
@@ -508,13 +575,15 @@ distcheck: dist
508
575
  && rm -rf "$$dc_destdir" \
509
576
  && $(MAKE) $(AM_MAKEFLAGS) dist \
510
577
  && rm -rf $(DIST_ARCHIVES) \
511
- && $(MAKE) $(AM_MAKEFLAGS) distcleancheck
578
+ && $(MAKE) $(AM_MAKEFLAGS) distcleancheck \
579
+ && cd "$$am__cwd" \
580
+ || exit 1
512
581
  $(am__remove_distdir)
513
582
  @(echo "$(distdir) archives ready for distribution: "; \
514
583
  list='$(DIST_ARCHIVES)'; for i in $$list; do echo $$i; done) | \
515
584
  sed -e 1h -e 1s/./=/g -e 1p -e 1x -e '$$p' -e '$$x'
516
585
  distuninstallcheck:
517
- @cd $(distuninstallcheck_dir) \
586
+ @$(am__cd) '$(distuninstallcheck_dir)' \
518
587
  && test `$(distuninstallcheck_listfiles) | wc -l` -le 1 \
519
588
  || { echo "ERROR: files left after uninstall:" ; \
520
589
  if test -n "$(DESTDIR)"; then \
@@ -556,6 +625,7 @@ clean-generic:
556
625
 
557
626
  distclean-generic:
558
627
  -test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES)
628
+ -test . = "$(srcdir)" || test -z "$(CONFIG_CLEAN_VPATH_FILES)" || rm -f $(CONFIG_CLEAN_VPATH_FILES)
559
629
 
560
630
  maintainer-clean-generic:
561
631
  @echo "This command is intended for maintainers to use"
@@ -577,6 +647,8 @@ dvi-am:
577
647
 
578
648
  html: html-recursive
579
649
 
650
+ html-am:
651
+
580
652
  info: info-recursive
581
653
 
582
654
  info-am:
@@ -585,18 +657,28 @@ install-data-am:
585
657
 
586
658
  install-dvi: install-dvi-recursive
587
659
 
660
+ install-dvi-am:
661
+
588
662
  install-exec-am:
589
663
 
590
664
  install-html: install-html-recursive
591
665
 
666
+ install-html-am:
667
+
592
668
  install-info: install-info-recursive
593
669
 
670
+ install-info-am:
671
+
594
672
  install-man:
595
673
 
596
674
  install-pdf: install-pdf-recursive
597
675
 
676
+ install-pdf-am:
677
+
598
678
  install-ps: install-ps-recursive
599
679
 
680
+ install-ps-am:
681
+
600
682
  installcheck-am:
601
683
 
602
684
  maintainer-clean: maintainer-clean-recursive
@@ -619,24 +701,25 @@ ps-am:
619
701
 
620
702
  uninstall-am:
621
703
 
622
- .MAKE: $(RECURSIVE_CLEAN_TARGETS) $(RECURSIVE_TARGETS) install-am \
623
- install-strip
704
+ .MAKE: $(RECURSIVE_CLEAN_TARGETS) $(RECURSIVE_TARGETS) all \
705
+ ctags-recursive install-am install-strip tags-recursive
624
706
 
625
707
  .PHONY: $(RECURSIVE_CLEAN_TARGETS) $(RECURSIVE_TARGETS) CTAGS GTAGS \
626
708
  all all-am am--refresh check check-am clean clean-generic \
627
709
  clean-libtool ctags ctags-recursive dist dist-all dist-bzip2 \
628
- dist-gzip dist-shar dist-tarZ dist-zip distcheck distclean \
629
- distclean-generic distclean-hdr distclean-libtool \
630
- distclean-tags distcleancheck distdir distuninstallcheck dvi \
631
- dvi-am html html-am info info-am install install-am \
632
- install-data install-data-am install-dvi install-dvi-am \
633
- install-exec install-exec-am install-html install-html-am \
634
- install-info install-info-am install-man install-pdf \
635
- install-pdf-am install-ps install-ps-am install-strip \
636
- installcheck installcheck-am installdirs installdirs-am \
637
- maintainer-clean maintainer-clean-generic mostlyclean \
638
- mostlyclean-generic mostlyclean-libtool pdf pdf-am ps ps-am \
639
- tags tags-recursive uninstall uninstall-am
710
+ dist-gzip dist-lzma dist-shar dist-tarZ dist-xz dist-zip \
711
+ distcheck distclean distclean-generic distclean-hdr \
712
+ distclean-libtool distclean-tags distcleancheck distdir \
713
+ distuninstallcheck dvi dvi-am html html-am info info-am \
714
+ install install-am install-data install-data-am install-dvi \
715
+ install-dvi-am install-exec install-exec-am install-html \
716
+ install-html-am install-info install-info-am install-man \
717
+ install-pdf install-pdf-am install-ps install-ps-am \
718
+ install-strip installcheck installcheck-am installdirs \
719
+ installdirs-am maintainer-clean maintainer-clean-generic \
720
+ mostlyclean mostlyclean-generic mostlyclean-libtool pdf pdf-am \
721
+ ps ps-am tags tags-recursive uninstall uninstall-am
722
+
640
723
 
641
724
  # Tell versions [3.59,3.63) of GNU make to not export all variables.
642
725
  # Otherwise a system limit (for SysV at least) may be exceeded.