noderb 0.0.4 → 0.0.6

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (361) hide show
  1. data/ext/noderb_extension/libuv/AUTHORS +11 -1
  2. data/ext/noderb_extension/libuv/LICENSE +0 -8
  3. data/ext/noderb_extension/libuv/Makefile +5 -5
  4. data/ext/noderb_extension/libuv/README +11 -6
  5. data/ext/noderb_extension/libuv/common.gypi +158 -7
  6. data/ext/noderb_extension/libuv/config-unix.mk +34 -26
  7. data/ext/noderb_extension/libuv/gyp_uv +22 -4
  8. data/ext/noderb_extension/libuv/include/{eio.h → uv-private/eio.h} +2 -2
  9. data/ext/noderb_extension/libuv/include/{uv-unix.h → uv-private/uv-unix.h} +40 -0
  10. data/ext/noderb_extension/libuv/include/{uv-win.h → uv-private/uv-win.h} +96 -14
  11. data/ext/noderb_extension/libuv/include/uv.h +508 -83
  12. data/ext/noderb_extension/libuv/src/unix/cares.c +185 -0
  13. data/ext/noderb_extension/libuv/src/unix/core.c +828 -0
  14. data/ext/noderb_extension/libuv/src/{eio → unix/eio}/config_darwin.h +4 -0
  15. data/ext/noderb_extension/libuv/src/{eio → unix/eio}/config_linux.h +5 -15
  16. data/ext/noderb_extension/libuv/src/{eio → unix/eio}/eio.c +23 -2
  17. data/ext/noderb_extension/libuv/src/unix/error.c +102 -0
  18. data/ext/noderb_extension/libuv/src/{ev → unix/ev}/config_linux.h +26 -15
  19. data/ext/noderb_extension/libuv/src/unix/fs.c +562 -0
  20. data/ext/noderb_extension/libuv/src/unix/internal.h +75 -0
  21. data/ext/noderb_extension/libuv/src/unix/pipe.c +282 -0
  22. data/ext/noderb_extension/libuv/src/unix/process.c +287 -0
  23. data/ext/noderb_extension/libuv/src/unix/stream.c +727 -0
  24. data/ext/noderb_extension/libuv/src/unix/tcp.c +226 -0
  25. data/ext/noderb_extension/libuv/src/unix/udp.c +524 -0
  26. data/ext/noderb_extension/libuv/src/{uv-eio.c → unix/uv-eio.c} +48 -27
  27. data/ext/noderb_extension/libuv/src/{uv-eio.h → unix/uv-eio.h} +1 -1
  28. data/ext/noderb_extension/libuv/src/uv-common.c +24 -14
  29. data/ext/noderb_extension/libuv/src/uv-common.h +12 -7
  30. data/ext/noderb_extension/libuv/src/win/async.c +14 -16
  31. data/ext/noderb_extension/libuv/src/win/cares.c +64 -79
  32. data/ext/noderb_extension/libuv/src/win/core.c +105 -53
  33. data/ext/noderb_extension/libuv/src/win/error.c +23 -13
  34. data/ext/noderb_extension/libuv/src/win/fs.c +807 -0
  35. data/ext/noderb_extension/libuv/src/win/getaddrinfo.c +61 -41
  36. data/ext/noderb_extension/libuv/src/win/handle.c +56 -30
  37. data/ext/noderb_extension/libuv/src/win/internal.h +134 -95
  38. data/ext/noderb_extension/libuv/src/win/loop-watcher.c +21 -18
  39. data/ext/noderb_extension/libuv/src/win/pipe.c +313 -158
  40. data/ext/noderb_extension/libuv/src/win/process.c +117 -131
  41. data/ext/noderb_extension/libuv/src/win/req.c +55 -31
  42. data/ext/noderb_extension/libuv/src/win/stdio.c +5 -5
  43. data/ext/noderb_extension/libuv/src/win/stream.c +19 -14
  44. data/ext/noderb_extension/libuv/src/win/tcp.c +278 -336
  45. data/ext/noderb_extension/libuv/src/win/threadpool.c +73 -0
  46. data/ext/noderb_extension/libuv/src/win/timer.c +44 -37
  47. data/ext/noderb_extension/libuv/src/win/udp.c +592 -0
  48. data/ext/noderb_extension/libuv/src/win/util.c +20 -6
  49. data/ext/noderb_extension/libuv/src/win/winapi.c +23 -6
  50. data/ext/noderb_extension/libuv/src/win/winapi.h +4206 -0
  51. data/ext/noderb_extension/libuv/src/win/winsock.c +270 -0
  52. data/ext/noderb_extension/libuv/src/win/winsock.h +134 -0
  53. data/ext/noderb_extension/libuv/test/benchmark-ares.c +10 -6
  54. data/ext/noderb_extension/libuv/test/benchmark-getaddrinfo.c +10 -7
  55. data/ext/noderb_extension/libuv/test/benchmark-list.h +21 -0
  56. data/ext/noderb_extension/libuv/test/benchmark-ping-pongs.c +11 -7
  57. data/ext/noderb_extension/libuv/test/benchmark-pound.c +147 -58
  58. data/ext/noderb_extension/libuv/test/benchmark-pump.c +29 -23
  59. data/ext/noderb_extension/libuv/test/benchmark-spawn.c +13 -10
  60. data/ext/noderb_extension/libuv/test/benchmark-udp-packet-storm.c +250 -0
  61. data/ext/noderb_extension/libuv/test/dns-server.c +11 -6
  62. data/ext/noderb_extension/libuv/test/echo-server.c +30 -22
  63. data/ext/noderb_extension/libuv/test/test-async.c +3 -3
  64. data/ext/noderb_extension/libuv/test/test-callback-stack.c +6 -6
  65. data/ext/noderb_extension/libuv/test/test-connection-fail.c +6 -5
  66. data/ext/noderb_extension/libuv/test/test-delayed-accept.c +13 -13
  67. data/ext/noderb_extension/libuv/test/test-fs.c +715 -0
  68. data/ext/noderb_extension/libuv/test/test-getaddrinfo.c +11 -8
  69. data/ext/noderb_extension/libuv/test/test-gethostbyname.c +8 -9
  70. data/ext/noderb_extension/libuv/test/test-getsockname.c +142 -16
  71. data/ext/noderb_extension/libuv/test/test-idle.c +4 -3
  72. data/ext/noderb_extension/libuv/test/test-list.h +29 -2
  73. data/ext/noderb_extension/libuv/test/test-loop-handles.c +9 -8
  74. data/ext/noderb_extension/libuv/test/test-ping-pong.c +9 -9
  75. data/ext/noderb_extension/libuv/test/test-pipe-bind-error.c +18 -14
  76. data/ext/noderb_extension/libuv/test/test-ref.c +17 -16
  77. data/ext/noderb_extension/libuv/test/test-shutdown-eof.c +5 -5
  78. data/ext/noderb_extension/libuv/test/test-spawn.c +17 -17
  79. data/ext/noderb_extension/libuv/test/test-tcp-bind-error.c +24 -18
  80. data/ext/noderb_extension/libuv/test/test-tcp-bind6-error.c +19 -14
  81. data/ext/noderb_extension/libuv/test/test-tcp-writealot.c +6 -5
  82. data/ext/noderb_extension/libuv/test/test-threadpool.c +59 -0
  83. data/ext/noderb_extension/libuv/test/test-timer-again.c +15 -12
  84. data/ext/noderb_extension/libuv/test/test-timer.c +8 -8
  85. data/ext/noderb_extension/libuv/test/test-udp-dgram-too-big.c +88 -0
  86. data/ext/noderb_extension/libuv/test/test-udp-ipv6.c +158 -0
  87. data/ext/noderb_extension/libuv/test/test-udp-send-and-recv.c +210 -0
  88. data/ext/noderb_extension/libuv/{all.gyp → uv.gyp} +75 -77
  89. data/ext/noderb_extension/libuv/vcbuild.bat +93 -0
  90. data/ext/noderb_extension/noderb.c +13 -0
  91. data/ext/noderb_extension/noderb_common.h +2 -1
  92. data/ext/noderb_extension/noderb_defer.c +54 -0
  93. data/ext/noderb_extension/noderb_defer.h +15 -0
  94. data/ext/noderb_extension/noderb_dns.c +1 -1
  95. data/ext/noderb_extension/noderb_fs.c +277 -0
  96. data/ext/noderb_extension/noderb_fs.h +27 -0
  97. data/ext/noderb_extension/noderb_process.c +5 -5
  98. data/ext/noderb_extension/noderb_tcp.c +10 -6
  99. data/ext/noderb_extension/noderb_timers.c +1 -1
  100. data/ext/noderb_extension/noderb_tools.c +42 -8
  101. data/ext/noderb_extension/noderb_tools.h +3 -1
  102. data/lib/noderb/defer.rb +25 -0
  103. data/lib/noderb/file.rb +119 -0
  104. data/lib/noderb/fs.rb +72 -0
  105. data/lib/noderb/version.rb +1 -1
  106. data/lib/noderb.rb +8 -0
  107. metadata +102 -266
  108. data/ext/noderb_extension/libuv/BSDmakefile +0 -2
  109. data/ext/noderb_extension/libuv/create-msvs-files.bat +0 -21
  110. data/ext/noderb_extension/libuv/deps/pthread-win32/ANNOUNCE +0 -482
  111. data/ext/noderb_extension/libuv/deps/pthread-win32/BUGS +0 -141
  112. data/ext/noderb_extension/libuv/deps/pthread-win32/Bmakefile +0 -268
  113. data/ext/noderb_extension/libuv/deps/pthread-win32/CONTRIBUTORS +0 -140
  114. data/ext/noderb_extension/libuv/deps/pthread-win32/COPYING +0 -150
  115. data/ext/noderb_extension/libuv/deps/pthread-win32/COPYING.LIB +0 -504
  116. data/ext/noderb_extension/libuv/deps/pthread-win32/ChangeLog +0 -5194
  117. data/ext/noderb_extension/libuv/deps/pthread-win32/FAQ +0 -451
  118. data/ext/noderb_extension/libuv/deps/pthread-win32/GNUmakefile +0 -593
  119. data/ext/noderb_extension/libuv/deps/pthread-win32/MAINTAINERS +0 -4
  120. data/ext/noderb_extension/libuv/deps/pthread-win32/Makefile +0 -516
  121. data/ext/noderb_extension/libuv/deps/pthread-win32/NEWS +0 -1245
  122. data/ext/noderb_extension/libuv/deps/pthread-win32/Nmakefile +0 -24
  123. data/ext/noderb_extension/libuv/deps/pthread-win32/Nmakefile.tests +0 -260
  124. data/ext/noderb_extension/libuv/deps/pthread-win32/PROGRESS +0 -4
  125. data/ext/noderb_extension/libuv/deps/pthread-win32/README +0 -601
  126. data/ext/noderb_extension/libuv/deps/pthread-win32/README.Borland +0 -57
  127. data/ext/noderb_extension/libuv/deps/pthread-win32/README.CV +0 -3036
  128. data/ext/noderb_extension/libuv/deps/pthread-win32/README.NONPORTABLE +0 -783
  129. data/ext/noderb_extension/libuv/deps/pthread-win32/README.Watcom +0 -62
  130. data/ext/noderb_extension/libuv/deps/pthread-win32/README.WinCE +0 -6
  131. data/ext/noderb_extension/libuv/deps/pthread-win32/TODO +0 -7
  132. data/ext/noderb_extension/libuv/deps/pthread-win32/WinCE-PORT +0 -222
  133. data/ext/noderb_extension/libuv/deps/pthread-win32/attr.c +0 -53
  134. data/ext/noderb_extension/libuv/deps/pthread-win32/autostatic.c +0 -69
  135. data/ext/noderb_extension/libuv/deps/pthread-win32/barrier.c +0 -47
  136. data/ext/noderb_extension/libuv/deps/pthread-win32/build/all.gyp +0 -207
  137. data/ext/noderb_extension/libuv/deps/pthread-win32/builddmc.bat +0 -9
  138. data/ext/noderb_extension/libuv/deps/pthread-win32/cancel.c +0 -44
  139. data/ext/noderb_extension/libuv/deps/pthread-win32/cleanup.c +0 -148
  140. data/ext/noderb_extension/libuv/deps/pthread-win32/condvar.c +0 -50
  141. data/ext/noderb_extension/libuv/deps/pthread-win32/config.h +0 -153
  142. data/ext/noderb_extension/libuv/deps/pthread-win32/context.h +0 -74
  143. data/ext/noderb_extension/libuv/deps/pthread-win32/create.c +0 -308
  144. data/ext/noderb_extension/libuv/deps/pthread-win32/dll.c +0 -92
  145. data/ext/noderb_extension/libuv/deps/pthread-win32/errno.c +0 -94
  146. data/ext/noderb_extension/libuv/deps/pthread-win32/exit.c +0 -44
  147. data/ext/noderb_extension/libuv/deps/pthread-win32/fork.c +0 -39
  148. data/ext/noderb_extension/libuv/deps/pthread-win32/global.c +0 -107
  149. data/ext/noderb_extension/libuv/deps/pthread-win32/implement.h +0 -944
  150. data/ext/noderb_extension/libuv/deps/pthread-win32/misc.c +0 -50
  151. data/ext/noderb_extension/libuv/deps/pthread-win32/mutex.c +0 -62
  152. data/ext/noderb_extension/libuv/deps/pthread-win32/need_errno.h +0 -145
  153. data/ext/noderb_extension/libuv/deps/pthread-win32/nonportable.c +0 -47
  154. data/ext/noderb_extension/libuv/deps/pthread-win32/private.c +0 -54
  155. data/ext/noderb_extension/libuv/deps/pthread-win32/pthread.c +0 -66
  156. data/ext/noderb_extension/libuv/deps/pthread-win32/pthread.dsp +0 -142
  157. data/ext/noderb_extension/libuv/deps/pthread-win32/pthread.dsw +0 -29
  158. data/ext/noderb_extension/libuv/deps/pthread-win32/pthread.h +0 -1368
  159. data/ext/noderb_extension/libuv/deps/pthread-win32/pthread_attr_destroy.c +0 -79
  160. data/ext/noderb_extension/libuv/deps/pthread-win32/pthread_attr_getdetachstate.c +0 -86
  161. data/ext/noderb_extension/libuv/deps/pthread-win32/pthread_attr_getinheritsched.c +0 -51
  162. data/ext/noderb_extension/libuv/deps/pthread-win32/pthread_attr_getschedparam.c +0 -52
  163. data/ext/noderb_extension/libuv/deps/pthread-win32/pthread_attr_getschedpolicy.c +0 -61
  164. data/ext/noderb_extension/libuv/deps/pthread-win32/pthread_attr_getscope.c +0 -54
  165. data/ext/noderb_extension/libuv/deps/pthread-win32/pthread_attr_getstackaddr.c +0 -97
  166. data/ext/noderb_extension/libuv/deps/pthread-win32/pthread_attr_getstacksize.c +0 -100
  167. data/ext/noderb_extension/libuv/deps/pthread-win32/pthread_attr_init.c +0 -117
  168. data/ext/noderb_extension/libuv/deps/pthread-win32/pthread_attr_setdetachstate.c +0 -91
  169. data/ext/noderb_extension/libuv/deps/pthread-win32/pthread_attr_setinheritsched.c +0 -57
  170. data/ext/noderb_extension/libuv/deps/pthread-win32/pthread_attr_setschedparam.c +0 -63
  171. data/ext/noderb_extension/libuv/deps/pthread-win32/pthread_attr_setschedpolicy.c +0 -55
  172. data/ext/noderb_extension/libuv/deps/pthread-win32/pthread_attr_setscope.c +0 -62
  173. data/ext/noderb_extension/libuv/deps/pthread-win32/pthread_attr_setstackaddr.c +0 -97
  174. data/ext/noderb_extension/libuv/deps/pthread-win32/pthread_attr_setstacksize.c +0 -110
  175. data/ext/noderb_extension/libuv/deps/pthread-win32/pthread_barrier_destroy.c +0 -103
  176. data/ext/noderb_extension/libuv/deps/pthread-win32/pthread_barrier_init.c +0 -69
  177. data/ext/noderb_extension/libuv/deps/pthread-win32/pthread_barrier_wait.c +0 -104
  178. data/ext/noderb_extension/libuv/deps/pthread-win32/pthread_barrierattr_destroy.c +0 -83
  179. data/ext/noderb_extension/libuv/deps/pthread-win32/pthread_barrierattr_getpshared.c +0 -95
  180. data/ext/noderb_extension/libuv/deps/pthread-win32/pthread_barrierattr_init.c +0 -85
  181. data/ext/noderb_extension/libuv/deps/pthread-win32/pthread_barrierattr_setpshared.c +0 -119
  182. data/ext/noderb_extension/libuv/deps/pthread-win32/pthread_cancel.c +0 -189
  183. data/ext/noderb_extension/libuv/deps/pthread-win32/pthread_cond_destroy.c +0 -253
  184. data/ext/noderb_extension/libuv/deps/pthread-win32/pthread_cond_init.c +0 -167
  185. data/ext/noderb_extension/libuv/deps/pthread-win32/pthread_cond_signal.c +0 -231
  186. data/ext/noderb_extension/libuv/deps/pthread-win32/pthread_cond_wait.c +0 -567
  187. data/ext/noderb_extension/libuv/deps/pthread-win32/pthread_condattr_destroy.c +0 -86
  188. data/ext/noderb_extension/libuv/deps/pthread-win32/pthread_condattr_getpshared.c +0 -97
  189. data/ext/noderb_extension/libuv/deps/pthread-win32/pthread_condattr_init.c +0 -87
  190. data/ext/noderb_extension/libuv/deps/pthread-win32/pthread_condattr_setpshared.c +0 -117
  191. data/ext/noderb_extension/libuv/deps/pthread-win32/pthread_delay_np.c +0 -172
  192. data/ext/noderb_extension/libuv/deps/pthread-win32/pthread_detach.c +0 -136
  193. data/ext/noderb_extension/libuv/deps/pthread-win32/pthread_equal.c +0 -76
  194. data/ext/noderb_extension/libuv/deps/pthread-win32/pthread_exit.c +0 -106
  195. data/ext/noderb_extension/libuv/deps/pthread-win32/pthread_getconcurrency.c +0 -45
  196. data/ext/noderb_extension/libuv/deps/pthread-win32/pthread_getschedparam.c +0 -75
  197. data/ext/noderb_extension/libuv/deps/pthread-win32/pthread_getspecific.c +0 -87
  198. data/ext/noderb_extension/libuv/deps/pthread-win32/pthread_getunique_np.c +0 -47
  199. data/ext/noderb_extension/libuv/deps/pthread-win32/pthread_getw32threadhandle_np.c +0 -65
  200. data/ext/noderb_extension/libuv/deps/pthread-win32/pthread_join.c +0 -157
  201. data/ext/noderb_extension/libuv/deps/pthread-win32/pthread_key_create.c +0 -108
  202. data/ext/noderb_extension/libuv/deps/pthread-win32/pthread_key_delete.c +0 -125
  203. data/ext/noderb_extension/libuv/deps/pthread-win32/pthread_kill.c +0 -105
  204. data/ext/noderb_extension/libuv/deps/pthread-win32/pthread_mutex_consistent.c +0 -187
  205. data/ext/noderb_extension/libuv/deps/pthread-win32/pthread_mutex_destroy.c +0 -148
  206. data/ext/noderb_extension/libuv/deps/pthread-win32/pthread_mutex_init.c +0 -130
  207. data/ext/noderb_extension/libuv/deps/pthread-win32/pthread_mutex_lock.c +0 -269
  208. data/ext/noderb_extension/libuv/deps/pthread-win32/pthread_mutex_timedlock.c +0 -324
  209. data/ext/noderb_extension/libuv/deps/pthread-win32/pthread_mutex_trylock.c +0 -154
  210. data/ext/noderb_extension/libuv/deps/pthread-win32/pthread_mutex_unlock.c +0 -175
  211. data/ext/noderb_extension/libuv/deps/pthread-win32/pthread_mutexattr_destroy.c +0 -83
  212. data/ext/noderb_extension/libuv/deps/pthread-win32/pthread_mutexattr_getkind_np.c +0 -44
  213. data/ext/noderb_extension/libuv/deps/pthread-win32/pthread_mutexattr_getpshared.c +0 -95
  214. data/ext/noderb_extension/libuv/deps/pthread-win32/pthread_mutexattr_getrobust.c +0 -113
  215. data/ext/noderb_extension/libuv/deps/pthread-win32/pthread_mutexattr_gettype.c +0 -56
  216. data/ext/noderb_extension/libuv/deps/pthread-win32/pthread_mutexattr_init.c +0 -86
  217. data/ext/noderb_extension/libuv/deps/pthread-win32/pthread_mutexattr_setkind_np.c +0 -44
  218. data/ext/noderb_extension/libuv/deps/pthread-win32/pthread_mutexattr_setpshared.c +0 -119
  219. data/ext/noderb_extension/libuv/deps/pthread-win32/pthread_mutexattr_setrobust.c +0 -119
  220. data/ext/noderb_extension/libuv/deps/pthread-win32/pthread_mutexattr_settype.c +0 -143
  221. data/ext/noderb_extension/libuv/deps/pthread-win32/pthread_num_processors_np.c +0 -56
  222. data/ext/noderb_extension/libuv/deps/pthread-win32/pthread_once.c +0 -79
  223. data/ext/noderb_extension/libuv/deps/pthread-win32/pthread_rwlock_destroy.c +0 -143
  224. data/ext/noderb_extension/libuv/deps/pthread-win32/pthread_rwlock_init.c +0 -109
  225. data/ext/noderb_extension/libuv/deps/pthread-win32/pthread_rwlock_rdlock.c +0 -102
  226. data/ext/noderb_extension/libuv/deps/pthread-win32/pthread_rwlock_timedrdlock.c +0 -109
  227. data/ext/noderb_extension/libuv/deps/pthread-win32/pthread_rwlock_timedwrlock.c +0 -139
  228. data/ext/noderb_extension/libuv/deps/pthread-win32/pthread_rwlock_tryrdlock.c +0 -102
  229. data/ext/noderb_extension/libuv/deps/pthread-win32/pthread_rwlock_trywrlock.c +0 -122
  230. data/ext/noderb_extension/libuv/deps/pthread-win32/pthread_rwlock_unlock.c +0 -93
  231. data/ext/noderb_extension/libuv/deps/pthread-win32/pthread_rwlock_wrlock.c +0 -133
  232. data/ext/noderb_extension/libuv/deps/pthread-win32/pthread_rwlockattr_destroy.c +0 -84
  233. data/ext/noderb_extension/libuv/deps/pthread-win32/pthread_rwlockattr_getpshared.c +0 -97
  234. data/ext/noderb_extension/libuv/deps/pthread-win32/pthread_rwlockattr_init.c +0 -83
  235. data/ext/noderb_extension/libuv/deps/pthread-win32/pthread_rwlockattr_setpshared.c +0 -120
  236. data/ext/noderb_extension/libuv/deps/pthread-win32/pthread_self.c +0 -141
  237. data/ext/noderb_extension/libuv/deps/pthread-win32/pthread_setcancelstate.c +0 -125
  238. data/ext/noderb_extension/libuv/deps/pthread-win32/pthread_setcanceltype.c +0 -126
  239. data/ext/noderb_extension/libuv/deps/pthread-win32/pthread_setconcurrency.c +0 -53
  240. data/ext/noderb_extension/libuv/deps/pthread-win32/pthread_setschedparam.c +0 -123
  241. data/ext/noderb_extension/libuv/deps/pthread-win32/pthread_setspecific.c +0 -167
  242. data/ext/noderb_extension/libuv/deps/pthread-win32/pthread_spin_destroy.c +0 -111
  243. data/ext/noderb_extension/libuv/deps/pthread-win32/pthread_spin_init.c +0 -123
  244. data/ext/noderb_extension/libuv/deps/pthread-win32/pthread_spin_lock.c +0 -80
  245. data/ext/noderb_extension/libuv/deps/pthread-win32/pthread_spin_trylock.c +0 -77
  246. data/ext/noderb_extension/libuv/deps/pthread-win32/pthread_spin_unlock.c +0 -71
  247. data/ext/noderb_extension/libuv/deps/pthread-win32/pthread_testcancel.c +0 -103
  248. data/ext/noderb_extension/libuv/deps/pthread-win32/pthread_timechange_handler_np.c +0 -108
  249. data/ext/noderb_extension/libuv/deps/pthread-win32/pthread_win32_attach_detach_np.c +0 -258
  250. data/ext/noderb_extension/libuv/deps/pthread-win32/ptw32_MCS_lock.c +0 -278
  251. data/ext/noderb_extension/libuv/deps/pthread-win32/ptw32_callUserDestroyRoutines.c +0 -232
  252. data/ext/noderb_extension/libuv/deps/pthread-win32/ptw32_calloc.c +0 -56
  253. data/ext/noderb_extension/libuv/deps/pthread-win32/ptw32_cond_check_need_init.c +0 -78
  254. data/ext/noderb_extension/libuv/deps/pthread-win32/ptw32_getprocessors.c +0 -91
  255. data/ext/noderb_extension/libuv/deps/pthread-win32/ptw32_is_attr.c +0 -47
  256. data/ext/noderb_extension/libuv/deps/pthread-win32/ptw32_mutex_check_need_init.c +0 -92
  257. data/ext/noderb_extension/libuv/deps/pthread-win32/ptw32_new.c +0 -94
  258. data/ext/noderb_extension/libuv/deps/pthread-win32/ptw32_processInitialize.c +0 -92
  259. data/ext/noderb_extension/libuv/deps/pthread-win32/ptw32_processTerminate.c +0 -105
  260. data/ext/noderb_extension/libuv/deps/pthread-win32/ptw32_relmillisecs.c +0 -132
  261. data/ext/noderb_extension/libuv/deps/pthread-win32/ptw32_reuse.c +0 -151
  262. data/ext/noderb_extension/libuv/deps/pthread-win32/ptw32_rwlock_cancelwrwait.c +0 -50
  263. data/ext/noderb_extension/libuv/deps/pthread-win32/ptw32_rwlock_check_need_init.c +0 -77
  264. data/ext/noderb_extension/libuv/deps/pthread-win32/ptw32_semwait.c +0 -135
  265. data/ext/noderb_extension/libuv/deps/pthread-win32/ptw32_spinlock_check_need_init.c +0 -78
  266. data/ext/noderb_extension/libuv/deps/pthread-win32/ptw32_threadDestroy.c +0 -79
  267. data/ext/noderb_extension/libuv/deps/pthread-win32/ptw32_threadStart.c +0 -357
  268. data/ext/noderb_extension/libuv/deps/pthread-win32/ptw32_throw.c +0 -189
  269. data/ext/noderb_extension/libuv/deps/pthread-win32/ptw32_timespec.c +0 -83
  270. data/ext/noderb_extension/libuv/deps/pthread-win32/ptw32_tkAssocCreate.c +0 -118
  271. data/ext/noderb_extension/libuv/deps/pthread-win32/ptw32_tkAssocDestroy.c +0 -114
  272. data/ext/noderb_extension/libuv/deps/pthread-win32/rwlock.c +0 -51
  273. data/ext/noderb_extension/libuv/deps/pthread-win32/sched.c +0 -53
  274. data/ext/noderb_extension/libuv/deps/pthread-win32/sched.h +0 -183
  275. data/ext/noderb_extension/libuv/deps/pthread-win32/sched_get_priority_max.c +0 -134
  276. data/ext/noderb_extension/libuv/deps/pthread-win32/sched_get_priority_min.c +0 -135
  277. data/ext/noderb_extension/libuv/deps/pthread-win32/sched_getscheduler.c +0 -71
  278. data/ext/noderb_extension/libuv/deps/pthread-win32/sched_setscheduler.c +0 -83
  279. data/ext/noderb_extension/libuv/deps/pthread-win32/sched_yield.c +0 -71
  280. data/ext/noderb_extension/libuv/deps/pthread-win32/sem_close.c +0 -58
  281. data/ext/noderb_extension/libuv/deps/pthread-win32/sem_destroy.c +0 -144
  282. data/ext/noderb_extension/libuv/deps/pthread-win32/sem_getvalue.c +0 -110
  283. data/ext/noderb_extension/libuv/deps/pthread-win32/sem_init.c +0 -169
  284. data/ext/noderb_extension/libuv/deps/pthread-win32/sem_open.c +0 -58
  285. data/ext/noderb_extension/libuv/deps/pthread-win32/sem_post.c +0 -128
  286. data/ext/noderb_extension/libuv/deps/pthread-win32/sem_post_multiple.c +0 -142
  287. data/ext/noderb_extension/libuv/deps/pthread-win32/sem_timedwait.c +0 -238
  288. data/ext/noderb_extension/libuv/deps/pthread-win32/sem_trywait.c +0 -117
  289. data/ext/noderb_extension/libuv/deps/pthread-win32/sem_unlink.c +0 -58
  290. data/ext/noderb_extension/libuv/deps/pthread-win32/sem_wait.c +0 -187
  291. data/ext/noderb_extension/libuv/deps/pthread-win32/semaphore.c +0 -69
  292. data/ext/noderb_extension/libuv/deps/pthread-win32/semaphore.h +0 -169
  293. data/ext/noderb_extension/libuv/deps/pthread-win32/signal.c +0 -179
  294. data/ext/noderb_extension/libuv/deps/pthread-win32/spin.c +0 -46
  295. data/ext/noderb_extension/libuv/deps/pthread-win32/sync.c +0 -43
  296. data/ext/noderb_extension/libuv/deps/pthread-win32/tsd.c +0 -44
  297. data/ext/noderb_extension/libuv/deps/pthread-win32/version.rc +0 -388
  298. data/ext/noderb_extension/libuv/deps/pthread-win32/w32_CancelableWait.c +0 -161
  299. data/ext/noderb_extension/libuv/doc/iocp-links.html +0 -574
  300. data/ext/noderb_extension/libuv/src/uv-unix.c +0 -2421
  301. data/ext/noderb_extension/libuv/src/win/ntdll.h +0 -130
  302. /data/ext/noderb_extension/libuv/include/{ev.h → uv-private/ev.h} +0 -0
  303. /data/ext/noderb_extension/libuv/include/{ngx-queue.h → uv-private/ngx-queue.h} +0 -0
  304. /data/ext/noderb_extension/libuv/include/{tree.h → uv-private/tree.h} +0 -0
  305. /data/ext/noderb_extension/libuv/src/{uv-cygwin.c → unix/cygwin.c} +0 -0
  306. /data/ext/noderb_extension/libuv/src/{uv-darwin.c → unix/darwin.c} +0 -0
  307. /data/ext/noderb_extension/libuv/src/{eio → unix/eio}/Changes +0 -0
  308. /data/ext/noderb_extension/libuv/src/{eio → unix/eio}/LICENSE +0 -0
  309. /data/ext/noderb_extension/libuv/src/{eio → unix/eio}/Makefile.am +0 -0
  310. /data/ext/noderb_extension/libuv/src/{eio → unix/eio}/aclocal.m4 +0 -0
  311. /data/ext/noderb_extension/libuv/src/{eio → unix/eio}/autogen.sh +0 -0
  312. /data/ext/noderb_extension/libuv/src/{eio → unix/eio}/config.h.in +0 -0
  313. /data/ext/noderb_extension/libuv/src/{eio → unix/eio}/config_cygwin.h +0 -0
  314. /data/ext/noderb_extension/libuv/src/{eio → unix/eio}/config_freebsd.h +0 -0
  315. /data/ext/noderb_extension/libuv/src/{eio → unix/eio}/config_sunos.h +0 -0
  316. /data/ext/noderb_extension/libuv/src/{eio → unix/eio}/configure.ac +0 -0
  317. /data/ext/noderb_extension/libuv/src/{eio → unix/eio}/demo.c +0 -0
  318. /data/ext/noderb_extension/libuv/src/{eio → unix/eio}/ecb.h +0 -0
  319. /data/ext/noderb_extension/libuv/src/{eio → unix/eio}/eio.3 +0 -0
  320. /data/ext/noderb_extension/libuv/src/{eio → unix/eio}/eio.pod +0 -0
  321. /data/ext/noderb_extension/libuv/src/{eio → unix/eio}/libeio.m4 +0 -0
  322. /data/ext/noderb_extension/libuv/src/{eio → unix/eio}/xthread.h +0 -0
  323. /data/ext/noderb_extension/libuv/src/{ev → unix/ev}/Changes +0 -0
  324. /data/ext/noderb_extension/libuv/src/{ev → unix/ev}/LICENSE +0 -0
  325. /data/ext/noderb_extension/libuv/src/{ev → unix/ev}/Makefile.am +0 -0
  326. /data/ext/noderb_extension/libuv/src/{ev → unix/ev}/Makefile.in +0 -0
  327. /data/ext/noderb_extension/libuv/src/{ev → unix/ev}/README +0 -0
  328. /data/ext/noderb_extension/libuv/src/{ev → unix/ev}/aclocal.m4 +0 -0
  329. /data/ext/noderb_extension/libuv/src/{ev → unix/ev}/autogen.sh +0 -0
  330. /data/ext/noderb_extension/libuv/src/{ev → unix/ev}/config.guess +0 -0
  331. /data/ext/noderb_extension/libuv/src/{ev → unix/ev}/config.h.in +0 -0
  332. /data/ext/noderb_extension/libuv/src/{ev → unix/ev}/config.sub +0 -0
  333. /data/ext/noderb_extension/libuv/src/{ev → unix/ev}/config_cygwin.h +0 -0
  334. /data/ext/noderb_extension/libuv/src/{ev → unix/ev}/config_darwin.h +0 -0
  335. /data/ext/noderb_extension/libuv/src/{ev → unix/ev}/config_freebsd.h +0 -0
  336. /data/ext/noderb_extension/libuv/src/{ev → unix/ev}/config_sunos.h +0 -0
  337. /data/ext/noderb_extension/libuv/src/{ev → unix/ev}/configure +0 -0
  338. /data/ext/noderb_extension/libuv/src/{ev → unix/ev}/configure.ac +0 -0
  339. /data/ext/noderb_extension/libuv/src/{ev → unix/ev}/depcomp +0 -0
  340. /data/ext/noderb_extension/libuv/src/{ev → unix/ev}/ev++.h +0 -0
  341. /data/ext/noderb_extension/libuv/src/{ev → unix/ev}/ev.3 +0 -0
  342. /data/ext/noderb_extension/libuv/src/{ev → unix/ev}/ev.c +0 -0
  343. /data/ext/noderb_extension/libuv/src/{ev → unix/ev}/ev.pod +0 -0
  344. /data/ext/noderb_extension/libuv/src/{ev → unix/ev}/ev_epoll.c +0 -0
  345. /data/ext/noderb_extension/libuv/src/{ev → unix/ev}/ev_kqueue.c +0 -0
  346. /data/ext/noderb_extension/libuv/src/{ev → unix/ev}/ev_poll.c +0 -0
  347. /data/ext/noderb_extension/libuv/src/{ev → unix/ev}/ev_port.c +0 -0
  348. /data/ext/noderb_extension/libuv/src/{ev → unix/ev}/ev_select.c +0 -0
  349. /data/ext/noderb_extension/libuv/src/{ev → unix/ev}/ev_vars.h +0 -0
  350. /data/ext/noderb_extension/libuv/src/{ev → unix/ev}/ev_win32.c +0 -0
  351. /data/ext/noderb_extension/libuv/src/{ev → unix/ev}/ev_wrap.h +0 -0
  352. /data/ext/noderb_extension/libuv/src/{ev → unix/ev}/event.c +0 -0
  353. /data/ext/noderb_extension/libuv/src/{ev → unix/ev}/event.h +0 -0
  354. /data/ext/noderb_extension/libuv/src/{ev → unix/ev}/install-sh +0 -0
  355. /data/ext/noderb_extension/libuv/src/{ev → unix/ev}/libev.m4 +0 -0
  356. /data/ext/noderb_extension/libuv/src/{ev → unix/ev}/ltmain.sh +0 -0
  357. /data/ext/noderb_extension/libuv/src/{ev → unix/ev}/missing +0 -0
  358. /data/ext/noderb_extension/libuv/src/{ev → unix/ev}/mkinstalldirs +0 -0
  359. /data/ext/noderb_extension/libuv/src/{uv-freebsd.c → unix/freebsd.c} +0 -0
  360. /data/ext/noderb_extension/libuv/src/{uv-linux.c → unix/linux.c} +0 -0
  361. /data/ext/noderb_extension/libuv/src/{uv-sunos.c → unix/sunos.c} +0 -0
@@ -3,9 +3,19 @@ Ryan Dahl <ryan@joyent.com>
3
3
  Bert Belder <bertbelder@gmail.com>
4
4
  Josh Roesslein <jroesslein@gmail.com>
5
5
  Alan Gutierrez <alan@prettyrobots.com>
6
+ Joshua Peek <josh@joshpeek.com>
6
7
  Igor Zinkovsky <igorzi@microsoft.com>
7
- Vanilla Hsu <vanilla@fatpipi.com>
8
+ San-Tai Hsu <vanilla@fatpipi.com>
8
9
  Ben Noordhuis <info@bnoordhuis.nl>
9
10
  Henry Rawas <henryr@schakra.com>
10
11
  Robert Mustacchi <rm@joyent.com>
11
12
  Matt Stevens <matt@alloysoft.com>
13
+ Paul Querna <pquerna@apache.org>
14
+ Shigeki Ohtsu <ohtsu@iij.ad.jp>
15
+ Tom Hughes <tom.hughes@palm.com>
16
+ Peter Bright <drpizza@quiscalusmexicanus.org>
17
+ Jeroen Janssen <jeroen.janssen@gmail.com>
18
+ Andrea Lattuada <ndr.lattuada@gmail.com>
19
+ Augusto Henrique Hentz <ahhentz@gmail.com>
20
+ Clifford Heath <clifford.heath@gmail.com>
21
+ Jorge Chamorro Bieling <jorge@jorgechamorro.com>
@@ -38,11 +38,3 @@ The externally maintained libraries used by libuv are:
38
38
 
39
39
  - libeio, located at eio/ is copyright Marc Alexander Lehmann, and
40
40
  dual-licensed under the MIT license and GPL2.
41
-
42
- - deps/pthread-win32 is a POSIX threads library for
43
- Microsoft Windows and is used for the Windows build and statically
44
- linked into the Node executable. This software is freely available at
45
- http://sourceware.org/pthreads-win32/ It is Copyright 1998 John E.
46
- Bossom and 1999,2006 Pthreads-win32 contributors and licensed under the
47
- LGPL. See deps/pthread-win32/COPYING.LIB for more details.
48
-
@@ -24,7 +24,7 @@ ifdef MSVC
24
24
  uname_S := MINGW
25
25
  endif
26
26
 
27
- CPPFLAGS += -Iinclude
27
+ CPPFLAGS += -Iinclude -Iinclude/uv-private
28
28
 
29
29
  CARES_OBJS =
30
30
  CARES_OBJS += src/ares/ares__close_sockets.o
@@ -86,12 +86,12 @@ $(CARES_OBJS): %.o: %.c
86
86
  $(CC) -o $*.o -c $(CFLAGS) $(CPPFLAGS) $< -DHAVE_CONFIG_H
87
87
 
88
88
  test/run-tests$(E): test/*.h test/run-tests.c $(RUNNER_SRC) test/runner-unix.c $(TESTS) uv.a
89
- $(CC) $(CPPFLAGS) $(RUNNER_CFLAGS) $(RUNNER_LINKFLAGS) -o test/run-tests test/run-tests.c \
90
- test/runner.c $(RUNNER_SRC) $(TESTS) uv.a $(RUNNER_LIBS)
89
+ $(CC) $(CPPFLAGS) $(RUNNER_CFLAGS) -o test/run-tests test/run-tests.c \
90
+ test/runner.c $(RUNNER_SRC) $(TESTS) uv.a $(RUNNER_LIBS) $(RUNNER_LINKFLAGS)
91
91
 
92
92
  test/run-benchmarks$(E): test/*.h test/run-benchmarks.c test/runner.c $(RUNNER_SRC) $(BENCHMARKS) uv.a
93
- $(CC) $(CPPFLAGS) $(RUNNER_CFLAGS) $(RUNNER_LINKFLAGS) -o test/run-benchmarks test/run-benchmarks.c \
94
- test/runner.c $(RUNNER_SRC) $(BENCHMARKS) uv.a $(RUNNER_LIBS)
93
+ $(CC) $(CPPFLAGS) $(RUNNER_CFLAGS) -o test/run-benchmarks test/run-benchmarks.c \
94
+ test/runner.c $(RUNNER_SRC) $(BENCHMARKS) uv.a $(RUNNER_LIBS) $(RUNNER_LINKFLAGS)
95
95
 
96
96
  test/echo.o: test/echo.c test/echo.h
97
97
  $(CC) $(CPPFLAGS) $(CFLAGS) -c test/echo.c -o test/echo.o
@@ -15,22 +15,27 @@ To build via Makefile simply execute:
15
15
 
16
16
  make
17
17
 
18
- To build with Visual Studio run the create-msvs-files.bat file which will
19
- checkout the GYP code into build/gyp and generate the build/all.sln and
18
+ To build with Visual Studio run the vcbuilds.bat file which will
19
+ checkout the GYP code into build/gyp and generate the uv.sln and
20
20
  related files.
21
21
 
22
+ Windows users can also build from cmd-line using msbuild. This is
23
+ done by running vcbuild.bat from Visual Studio command prompt.
24
+
22
25
  To have GYP generate build script for another system you will need to
23
26
  checkout GYP into the project tree manually:
24
27
 
25
28
  svn co http://gyp.googlecode.com/svn/trunk build/gyp
26
29
 
27
- And then run
30
+ Unix users run
28
31
 
29
- ./build/gyp_uv -f make
32
+ ./gyp_uv -f make
33
+ make
30
34
 
31
- or
35
+ Macintosh users run
32
36
 
33
- ./build/gyp_uv -f xcode
37
+ ./gyp_uv -f xcode
38
+ xcodebuild -project uv.xcodeproj -configuration Release -target All
34
39
 
35
40
 
36
41
  = Supported Platforms
@@ -1,13 +1,164 @@
1
1
  {
2
- 'conditions': [
3
- ['OS=="win"', {
4
- 'target_defaults': {
2
+ 'variables': {
3
+ 'target_arch%': 'ia32', # set v8's target architecture
4
+ 'host_arch%': 'ia32', # set v8's host architecture
5
+ 'library%': 'static_library', # allow override to 'shared_library' for DLL/.so builds
6
+ 'component%': 'static_library', # NB. these names match with what V8 expects
7
+ 'msvs_multi_core_compile': '0', # we do enable multicore compiles, but not using the V8 way
8
+ },
9
+
10
+ 'target_defaults': {
11
+ 'default_configuration': 'Debug',
12
+ 'configurations': {
13
+ 'Debug': {
14
+ 'defines': [ 'DEBUG', '_DEBUG' ],
15
+ 'cflags': [ '-g', '-O0' ],
5
16
  'msvs_settings': {
17
+ 'VCCLCompilerTool': {
18
+ 'target_conditions': [
19
+ ['library=="static_library"', {
20
+ 'RuntimeLibrary': 1, # static debug
21
+ }, {
22
+ 'RuntimeLibrary': 3, # DLL debug
23
+ }],
24
+ ],
25
+ 'Optimization': 0, # /Od, no optimization
26
+ 'MinimalRebuild': 'true',
27
+ 'OmitFramePointers': 'false',
28
+ 'BasicRuntimeChecks': 3, # /RTC1
29
+ },
30
+ 'VCLinkerTool': {
31
+ 'LinkIncremental': 2, # enable incremental linking
32
+ },
33
+ },
34
+ },
35
+ 'Release': {
36
+ 'defines': [ 'NDEBUG' ],
37
+ 'cflags': [ '-O3', '-fomit-frame-pointer', '-fdata-sections', '-ffunction-sections' ],
38
+ 'msvs_settings': {
39
+ 'VCCLCompilerTool': {
40
+ 'target_conditions': [
41
+ ['library=="static_library"', {
42
+ 'RuntimeLibrary': 0, # static release
43
+ }, {
44
+ 'RuntimeLibrary': 2, # debug release
45
+ }],
46
+ ],
47
+ 'Optimization': 3, # /Ox, full optimization
48
+ 'FavorSizeOrSpeed': 1, # /Ot, favour speed over size
49
+ 'InlineFunctionExpansion': 2, # /Ob2, inline anything eligible
50
+ 'WholeProgramOptimization': 'true', # /GL, whole program optimization, needed for LTCG
51
+ 'OmitFramePointers': 'true',
52
+ 'EnableFunctionLevelLinking': 'true',
53
+ 'EnableIntrinsicFunctions': 'true',
54
+ 'AdditionalOptions': [
55
+ '/MP', # compile across multiple CPUs
56
+ ],
57
+ },
58
+ 'VCLibrarianTool': {
59
+ 'AdditionalOptions': [
60
+ '/LTCG', # link time code generation
61
+ ],
62
+ },
6
63
  'VCLinkerTool': {
7
- 'GenerateDebugInformation': 'true',
64
+ 'LinkTimeCodeGeneration': 1, # link-time code generation
65
+ 'OptimizeReferences': 2, # /OPT:REF
66
+ 'EnableCOMDATFolding': 2, # /OPT:ICF
67
+ 'LinkIncremental': 1, # disable incremental linking
8
68
  },
9
69
  },
70
+ }
71
+ },
72
+ 'msvs_settings': {
73
+ 'VCCLCompilerTool': {
74
+ 'StringPooling': 'true', # pool string literals
75
+ 'DebugInformationFormat': 3, # Generate a PDB
76
+ 'WarningLevel': 3,
77
+ 'BufferSecurityCheck': 'true',
78
+ 'ExceptionHandling': 1, # /EHsc
79
+ 'SuppressStartupBanner': 'true',
80
+ 'WarnAsError': 'false',
81
+ },
82
+ 'VCLibrarianTool': {
10
83
  },
11
- }], # OS=="win"
12
- ],
13
- }
84
+ 'VCLinkerTool': {
85
+ 'GenerateDebugInformation': 'true',
86
+ 'RandomizedBaseAddress': 2, # enable ASLR
87
+ 'DataExecutionPrevention': 2, # enable DEP
88
+ 'AllowIsolation': 'true',
89
+ 'SuppressStartupBanner': 'true',
90
+ },
91
+ },
92
+ 'conditions': [
93
+ ['OS == "win"', {
94
+ 'msvs_cygwin_shell': 0, # prevent actions from trying to use cygwin
95
+ 'defines': [
96
+ 'WIN32',
97
+ # we don't really want VC++ warning us about
98
+ # how dangerous C functions are...
99
+ '_CRT_SECURE_NO_DEPRECATE',
100
+ # ... or that C implementations shouldn't use
101
+ # POSIX names
102
+ '_CRT_NONSTDC_NO_DEPRECATE',
103
+ ],
104
+ }],
105
+ [ 'OS=="linux" or OS=="freebsd" or OS=="openbsd" or OS=="solaris"', {
106
+ 'target_defaults': {
107
+ 'cflags': [ '-Wall', '-pthread', '-fno-rtti', '-fno-exceptions' ],
108
+ 'ldflags': [ '-pthread', ],
109
+ 'conditions': [
110
+ [ 'target_arch=="ia32"', {
111
+ 'cflags': [ '-m32' ],
112
+ 'ldflags': [ '-m32' ],
113
+ }],
114
+ [ 'OS=="linux"', {
115
+ 'cflags': [ '-ansi' ],
116
+ }],
117
+ [ 'visibility=="hidden"', {
118
+ 'cflags': [ '-fvisibility=hidden' ],
119
+ }],
120
+ ],
121
+ },
122
+ }],
123
+ ['OS=="mac"', {
124
+ 'target_defaults': {
125
+ 'xcode_settings': {
126
+ 'ALWAYS_SEARCH_USER_PATHS': 'NO',
127
+ 'GCC_C_LANGUAGE_STANDARD': 'ansi', # -ansi
128
+ 'GCC_CW_ASM_SYNTAX': 'NO', # No -fasm-blocks
129
+ 'GCC_DYNAMIC_NO_PIC': 'NO', # No -mdynamic-no-pic
130
+ # (Equivalent to -fPIC)
131
+ 'GCC_ENABLE_CPP_EXCEPTIONS': 'NO', # -fno-exceptions
132
+ 'GCC_ENABLE_CPP_RTTI': 'NO', # -fno-rtti
133
+ 'GCC_ENABLE_PASCAL_STRINGS': 'NO', # No -mpascal-strings
134
+ # GCC_INLINES_ARE_PRIVATE_EXTERN maps to -fvisibility-inlines-hidden
135
+ 'GCC_INLINES_ARE_PRIVATE_EXTERN': 'YES',
136
+ 'GCC_SYMBOLS_PRIVATE_EXTERN': 'YES', # -fvisibility=hidden
137
+ 'GCC_THREADSAFE_STATICS': 'NO', # -fno-threadsafe-statics
138
+ 'GCC_TREAT_WARNINGS_AS_ERRORS': 'YES', # -Werror
139
+ 'GCC_VERSION': '4.2',
140
+ 'GCC_WARN_ABOUT_MISSING_NEWLINE': 'YES', # -Wnewline-eof
141
+ 'MACOSX_DEPLOYMENT_TARGET': '10.4', # -mmacosx-version-min=10.4
142
+ 'PREBINDING': 'NO', # No -Wl,-prebind
143
+ 'USE_HEADERMAP': 'NO',
144
+ 'OTHER_CFLAGS': [
145
+ '-fno-strict-aliasing',
146
+ ],
147
+ 'WARNING_CFLAGS': [
148
+ '-Wall',
149
+ '-Wendif-labels',
150
+ '-W',
151
+ '-Wno-unused-parameter',
152
+ '-Wnon-virtual-dtor',
153
+ ],
154
+ },
155
+ 'target_conditions': [
156
+ ['_type!="static_library"', {
157
+ 'xcode_settings': {'OTHER_LDFLAGS': ['-Wl,-search_paths_first']},
158
+ }],
159
+ ],
160
+ },
161
+ }],
162
+ ],
163
+ },
164
+ }
@@ -23,18 +23,28 @@ AR = $(PREFIX)ar
23
23
  E=
24
24
  CSTDFLAG=--std=c89 -pedantic -Wall -Wextra -Wno-unused-parameter
25
25
  CFLAGS=-g
26
- CPPFLAGS += -Isrc/ev
26
+ CPPFLAGS += -Isrc/unix/ev
27
27
  LINKFLAGS=-lm
28
28
 
29
29
  CPPFLAGS += -D_LARGEFILE_SOURCE
30
30
  CPPFLAGS += -D_FILE_OFFSET_BITS=64
31
31
 
32
+ OBJS += src/unix/core.o
33
+ OBJS += src/unix/fs.o
34
+ OBJS += src/unix/cares.o
35
+ OBJS += src/unix/udp.o
36
+ OBJS += src/unix/error.o
37
+ OBJS += src/unix/process.o
38
+ OBJS += src/unix/tcp.o
39
+ OBJS += src/unix/pipe.o
40
+ OBJS += src/unix/stream.o
41
+
32
42
  ifeq (SunOS,$(uname_S))
33
43
  EV_CONFIG=config_sunos.h
34
44
  EIO_CONFIG=config_sunos.h
35
- CPPFLAGS += -Isrc/ares/config_sunos -D__EXTENSIONS__
45
+ CPPFLAGS += -Isrc/ares/config_sunos -D__EXTENSIONS__ -D_XOPEN_SOURCE=500
36
46
  LINKFLAGS+=-lsocket -lnsl
37
- UV_OS_FILE=uv-sunos.c
47
+ OBJS += src/unix/sunos.o
38
48
  endif
39
49
 
40
50
  ifeq (Darwin,$(uname_S))
@@ -42,7 +52,7 @@ EV_CONFIG=config_darwin.h
42
52
  EIO_CONFIG=config_darwin.h
43
53
  CPPFLAGS += -Isrc/ares/config_darwin
44
54
  LINKFLAGS+=-framework CoreServices
45
- UV_OS_FILE=uv-darwin.c
55
+ OBJS += src/unix/darwin.o
46
56
  endif
47
57
 
48
58
  ifeq (Linux,$(uname_S))
@@ -51,7 +61,7 @@ EIO_CONFIG=config_linux.h
51
61
  CSTDFLAG += -D_XOPEN_SOURCE=600
52
62
  CPPFLAGS += -Isrc/ares/config_linux
53
63
  LINKFLAGS+=-lrt
54
- UV_OS_FILE=uv-linux.c
64
+ OBJS += src/unix/linux.o
55
65
  endif
56
66
 
57
67
  ifeq (FreeBSD,$(uname_S))
@@ -59,7 +69,7 @@ EV_CONFIG=config_freebsd.h
59
69
  EIO_CONFIG=config_freebsd.h
60
70
  CPPFLAGS += -Isrc/ares/config_freebsd
61
71
  LINKFLAGS+=
62
- UV_OS_FILE=uv-freebsd.c
72
+ OBJS += src/unix/freebsd.o
63
73
  endif
64
74
 
65
75
  ifneq (,$(findstring CYGWIN,$(uname_S)))
@@ -69,7 +79,7 @@ EIO_CONFIG=config_cygwin.h
69
79
  CSTDFLAG = -D_GNU_SOURCE
70
80
  CPPFLAGS += -Isrc/ares/config_cygwin
71
81
  LINKFLAGS+=
72
- UV_OS_FILE=uv-cygwin.c
82
+ OBJS += src/unix/cygwin.o
73
83
  endif
74
84
 
75
85
  # Need _GNU_SOURCE for strdup?
@@ -85,21 +95,17 @@ endif
85
95
  RUNNER_LIBS=
86
96
  RUNNER_SRC=test/runner-unix.c
87
97
 
88
- uv.a: src/uv-unix.o src/uv-common.o src/uv-platform.o src/ev/ev.o src/uv-eio.o src/eio/eio.o $(CARES_OBJS)
89
- $(AR) rcs uv.a src/uv-unix.o src/uv-platform.o src/uv-common.o src/uv-eio.o src/ev/ev.o \
90
- src/eio/eio.o $(CARES_OBJS)
91
-
92
- src/uv-platform.o: src/$(UV_OS_FILE) include/uv.h include/uv-unix.h
93
- $(CC) $(CSTDFLAG) $(CPPFLAGS) $(CFLAGS) -c src/$(UV_OS_FILE) -o src/uv-platform.o
98
+ uv.a: $(OBJS) src/uv-common.o src/unix/ev/ev.o src/unix/uv-eio.o src/unix/eio/eio.o $(CARES_OBJS)
99
+ $(AR) rcs uv.a $(OBJS) src/uv-common.o src/unix/uv-eio.o src/unix/ev/ev.o src/unix/eio/eio.o $(CARES_OBJS)
94
100
 
95
- src/uv-unix.o: src/uv-unix.c include/uv.h include/uv-unix.h
96
- $(CC) $(CSTDFLAG) $(CPPFLAGS) -Ieio $(CFLAGS) -c src/uv-unix.c -o src/uv-unix.o
101
+ src/unix/%.o: src/unix/%.c include/uv.h include/uv-private/uv-unix.h src/unix/internal.h
102
+ $(CC) $(CSTDFLAG) $(CPPFLAGS) -Isrc $(CFLAGS) -c $< -o $@
97
103
 
98
- src/uv-common.o: src/uv-common.c include/uv.h include/uv-unix.h
104
+ src/uv-common.o: src/uv-common.c include/uv.h include/uv-private/uv-unix.h
99
105
  $(CC) $(CSTDFLAG) $(CPPFLAGS) $(CFLAGS) -c src/uv-common.c -o src/uv-common.o
100
106
 
101
- src/ev/ev.o: src/ev/ev.c
102
- $(CC) $(CPPFLAGS) $(CFLAGS) -c src/ev/ev.c -o src/ev/ev.o -DEV_CONFIG_H=\"$(EV_CONFIG)\"
107
+ src/unix/ev/ev.o: src/unix/ev/ev.c
108
+ $(CC) $(CPPFLAGS) $(CFLAGS) -c src/unix/ev/ev.c -o src/unix/ev/ev.o -DEV_CONFIG_H=\"$(EV_CONFIG)\"
103
109
 
104
110
 
105
111
  EIO_CPPFLAGS += $(CPPFLAGS)
@@ -107,21 +113,23 @@ EIO_CPPFLAGS += -DEIO_CONFIG_H=\"$(EIO_CONFIG)\"
107
113
  EIO_CPPFLAGS += -DEIO_STACKSIZE=262144
108
114
  EIO_CPPFLAGS += -D_GNU_SOURCE
109
115
 
110
- src/eio/eio.o: src/eio/eio.c
111
- $(CC) $(EIO_CPPFLAGS) $(CFLAGS) -c src/eio/eio.c -o src/eio/eio.o
116
+ src/unix/eio/eio.o: src/unix/eio/eio.c
117
+ $(CC) $(EIO_CPPFLAGS) $(CFLAGS) -c src/unix/eio/eio.c -o src/unix/eio/eio.o
112
118
 
113
- src/uv-eio.o: src/uv-eio.c
114
- $(CC) $(CPPFLAGS) -Isrc/eio/ $(CSTDFLAG) $(CFLAGS) -c src/uv-eio.c -o src/uv-eio.o
119
+ src/unix/uv-eio.o: src/unix/uv-eio.c
120
+ $(CC) $(CPPFLAGS) -Isrc/unix/eio/ $(CSTDFLAG) $(CFLAGS) -c src/unix/uv-eio.c -o src/unix/uv-eio.o
115
121
 
116
122
 
117
123
  clean-platform:
118
124
  -rm -f src/ares/*.o
119
- -rm -f src/ev/*.o
120
- -rm -f src/eio/*.o
125
+ -rm -f src/unix/ev/*.o
126
+ -rm -f src/unix/eio/*.o
127
+ -rm -f src/unix/*.o
121
128
  -rm -rf test/run-tests.dSYM run-benchmarks.dSYM
122
129
 
123
130
  distclean-platform:
124
131
  -rm -f src/ares/*.o
125
- -rm -f src/ev/*.o
126
- -rm -f src/eio/*.o
132
+ -rm -f src/unix/ev/*.o
133
+ -rm -f src/unix/*.o
134
+ -rm -f src/unix/eio/*.o
127
135
  -rm -rf test/run-tests.dSYM run-benchmarks.dSYM
@@ -5,7 +5,7 @@ import shlex
5
5
  import sys
6
6
 
7
7
  script_dir = os.path.dirname(__file__)
8
- uv_root = os.path.abspath(script_dir)
8
+ uv_root = os.path.normpath(script_dir)
9
9
 
10
10
  sys.path.insert(0, os.path.join(uv_root, 'build', 'gyp', 'pylib'))
11
11
  import gyp
@@ -14,7 +14,6 @@ import gyp
14
14
  # to be written.
15
15
  output_dir = os.path.join(os.path.abspath(uv_root), 'out')
16
16
 
17
-
18
17
  def run_gyp(args):
19
18
  rc = gyp.main(args)
20
19
  if rc != 0:
@@ -24,8 +23,23 @@ def run_gyp(args):
24
23
  if __name__ == '__main__':
25
24
  args = sys.argv[1:]
26
25
 
27
- args.append(os.path.join(script_dir, 'all.gyp'))
28
- args.append('-I' + os.path.join(script_dir, 'common.gypi'))
26
+ # GYP bug.
27
+ # On msvs it will crash if it gets an absolute path.
28
+ # On Mac/make it will crash if it doesn't get an absolute path.
29
+ if sys.platform == 'win32':
30
+ args.append(os.path.join(uv_root, 'uv.gyp'))
31
+ common_fn = os.path.join(uv_root, 'common.gypi')
32
+ options_fn = os.path.join(uv_root, 'options.gypi')
33
+ else:
34
+ args.append(os.path.join(os.path.abspath(uv_root), 'uv.gyp'))
35
+ common_fn = os.path.join(os.path.abspath(uv_root), 'common.gypi')
36
+ options_fn = os.path.join(os.path.abspath(uv_root), 'options.gypi')
37
+
38
+ if os.path.exists(common_fn):
39
+ args.extend(['-I', common_fn])
40
+
41
+ if os.path.exists(options_fn):
42
+ args.extend(['-I', options_fn])
29
43
 
30
44
  args.append('--depth=' + uv_root)
31
45
 
@@ -38,5 +52,9 @@ if __name__ == '__main__':
38
52
  # Tell make to write its output into the same dir
39
53
  args.extend(['-Goutput_dir=' + output_dir])
40
54
 
55
+ args.append('-Dtarget_arch=ia32')
56
+ args.append('-Dcomponent=static_library')
57
+ args.append('-Dlibrary=static_library')
41
58
  gyp_args = list(args)
59
+ print gyp_args
42
60
  run_gyp(gyp_args)
@@ -195,7 +195,7 @@ enum
195
195
  enum
196
196
  {
197
197
  EIO_MCL_CURRENT = 1,
198
- EIO_MCL_FUTURE = 2,
198
+ EIO_MCL_FUTURE = 2
199
199
  };
200
200
 
201
201
  /* request priorities */
@@ -203,7 +203,7 @@ enum
203
203
  enum {
204
204
  EIO_PRI_MIN = -4,
205
205
  EIO_PRI_MAX = 4,
206
- EIO_PRI_DEFAULT = 0,
206
+ EIO_PRI_DEFAULT = 0
207
207
  };
208
208
 
209
209
  /* eio request structure */
@@ -25,6 +25,7 @@
25
25
  #include "ngx-queue.h"
26
26
 
27
27
  #include "ev.h"
28
+ #include "eio.h"
28
29
 
29
30
  #include <sys/types.h>
30
31
  #include <sys/socket.h>
@@ -39,6 +40,18 @@ typedef struct {
39
40
  size_t len;
40
41
  } uv_buf_t;
41
42
 
43
+ typedef int uv_file;
44
+
45
+ #define UV_LOOP_PRIVATE_FIELDS \
46
+ ares_channel channel; \
47
+ /* \
48
+ * While the channel is active this timer is called once per second to be \
49
+ * sure that we're always calling ares_process. See the warning above the \
50
+ * definition of ares_timeout(). \
51
+ */ \
52
+ ev_timer timer; \
53
+ struct ev_loop* ev;
54
+
42
55
  #define UV_REQ_BUFSML_SIZE (4)
43
56
 
44
57
  #define UV_REQ_PRIVATE_FIELDS /* empty */
@@ -55,6 +68,16 @@ typedef struct {
55
68
  #define UV_CONNECT_PRIVATE_FIELDS \
56
69
  ngx_queue_t queue;
57
70
 
71
+ #define UV_UDP_SEND_PRIVATE_FIELDS \
72
+ ngx_queue_t queue; \
73
+ struct sockaddr_storage addr; \
74
+ socklen_t addrlen; \
75
+ uv_buf_t* bufs; \
76
+ int bufcnt; \
77
+ ssize_t status; \
78
+ uv_udp_send_cb send_cb; \
79
+ uv_buf_t bufsml[UV_REQ_BUFSML_SIZE]; \
80
+
58
81
  #define UV_PRIVATE_REQ_TYPES /* empty */
59
82
 
60
83
 
@@ -83,6 +106,16 @@ typedef struct {
83
106
  #define UV_TCP_PRIVATE_FIELDS
84
107
 
85
108
 
109
+ /* UV_UDP */
110
+ #define UV_UDP_PRIVATE_FIELDS \
111
+ uv_alloc_cb alloc_cb; \
112
+ uv_udp_recv_cb recv_cb; \
113
+ ev_io read_watcher; \
114
+ ev_io write_watcher; \
115
+ ngx_queue_t write_queue; \
116
+ ngx_queue_t write_completed_queue; \
117
+
118
+
86
119
  /* UV_NAMED_PIPE */
87
120
  #define UV_PIPE_PRIVATE_TYPEDEF
88
121
  #define UV_PIPE_PRIVATE_FIELDS \
@@ -135,4 +168,11 @@ typedef struct {
135
168
  #define UV_PROCESS_PRIVATE_FIELDS \
136
169
  ev_child child_watcher;
137
170
 
171
+ #define UV_FS_PRIVATE_FIELDS \
172
+ struct stat statbuf; \
173
+ eio_req* eio;
174
+
175
+ #define UV_WORK_PRIVATE_FIELDS \
176
+ eio_req* eio;
177
+
138
178
  #endif /* UV_UNIX_H */