laag-libzmq 4.2.3.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (792) hide show
  1. checksums.yaml +7 -0
  2. data/.gitignore +57 -0
  3. data/LICENSE.txt +181 -0
  4. data/README.org +34 -0
  5. data/ext/laag/libzmq/extconf.rb +22 -0
  6. data/laag-libzmq.gemspec +21 -0
  7. data/lib/laag/libzmq.rb +31 -0
  8. data/vendor/github.com/zeromq/libzmq/.github/PULL_REQUEST_TEMPLATE.md +28 -0
  9. data/vendor/github.com/zeromq/libzmq/.github/issue_template.md +22 -0
  10. data/vendor/github.com/zeromq/libzmq/.gitignore +180 -0
  11. data/vendor/github.com/zeromq/libzmq/.hgeol +2 -0
  12. data/vendor/github.com/zeromq/libzmq/.mailmap +81 -0
  13. data/vendor/github.com/zeromq/libzmq/.travis.yml +115 -0
  14. data/vendor/github.com/zeromq/libzmq/AUTHORS +151 -0
  15. data/vendor/github.com/zeromq/libzmq/CMakeLists.txt +1104 -0
  16. data/vendor/github.com/zeromq/libzmq/COPYING +674 -0
  17. data/vendor/github.com/zeromq/libzmq/COPYING.LESSER +181 -0
  18. data/vendor/github.com/zeromq/libzmq/Dockerfile +11 -0
  19. data/vendor/github.com/zeromq/libzmq/Doxygen.cfg +2320 -0
  20. data/vendor/github.com/zeromq/libzmq/FindSodium.cmake +40 -0
  21. data/vendor/github.com/zeromq/libzmq/INSTALL +311 -0
  22. data/vendor/github.com/zeromq/libzmq/Jenkinsfile +369 -0
  23. data/vendor/github.com/zeromq/libzmq/Makefile.am +908 -0
  24. data/vendor/github.com/zeromq/libzmq/NEWS +1582 -0
  25. data/vendor/github.com/zeromq/libzmq/README.cygwin.md +15 -0
  26. data/vendor/github.com/zeromq/libzmq/README.doxygen.md +48 -0
  27. data/vendor/github.com/zeromq/libzmq/README.md +102 -0
  28. data/vendor/github.com/zeromq/libzmq/RELICENSE/AndreLouisCaron.md +15 -0
  29. data/vendor/github.com/zeromq/libzmq/RELICENSE/Asmod4n.md +13 -0
  30. data/vendor/github.com/zeromq/libzmq/RELICENSE/BerndPrager.md +13 -0
  31. data/vendor/github.com/zeromq/libzmq/RELICENSE/Bklyn.md +15 -0
  32. data/vendor/github.com/zeromq/libzmq/RELICENSE/BrianBuchanan.md +15 -0
  33. data/vendor/github.com/zeromq/libzmq/RELICENSE/ChuckRemes.md +15 -0
  34. data/vendor/github.com/zeromq/libzmq/RELICENSE/FrancoFichtner.md +15 -0
  35. data/vendor/github.com/zeromq/libzmq/RELICENSE/GavinMcNiff.md +15 -0
  36. data/vendor/github.com/zeromq/libzmq/RELICENSE/GhislainPutois.md +15 -0
  37. data/vendor/github.com/zeromq/libzmq/RELICENSE/GiuseppeCorbelli.md +15 -0
  38. data/vendor/github.com/zeromq/libzmq/RELICENSE/HaraldAchitz.md +17 -0
  39. data/vendor/github.com/zeromq/libzmq/RELICENSE/Hugne.md +17 -0
  40. data/vendor/github.com/zeromq/libzmq/RELICENSE/JimHague.md +16 -0
  41. data/vendor/github.com/zeromq/libzmq/RELICENSE/JohanMabille.md +16 -0
  42. data/vendor/github.com/zeromq/libzmq/RELICENSE/LeonardMichelet +14 -0
  43. data/vendor/github.com/zeromq/libzmq/RELICENSE/LeonardoConsoni.md +15 -0
  44. data/vendor/github.com/zeromq/libzmq/RELICENSE/LionelOrry.md +15 -0
  45. data/vendor/github.com/zeromq/libzmq/RELICENSE/OsirisPedroso.md +15 -0
  46. data/vendor/github.com/zeromq/libzmq/RELICENSE/README.md +23 -0
  47. data/vendor/github.com/zeromq/libzmq/RELICENSE/RobGagnon.md +13 -0
  48. data/vendor/github.com/zeromq/libzmq/RELICENSE/SebastienRombauts.md +15 -0
  49. data/vendor/github.com/zeromq/libzmq/RELICENSE/StoianIvanov.md +15 -0
  50. data/vendor/github.com/zeromq/libzmq/RELICENSE/SylvainCorlay.md +16 -0
  51. data/vendor/github.com/zeromq/libzmq/RELICENSE/TimotheeBesset.md +15 -0
  52. data/vendor/github.com/zeromq/libzmq/RELICENSE/VincentTellier.md +15 -0
  53. data/vendor/github.com/zeromq/libzmq/RELICENSE/VolodymyrKorniichuk.md +15 -0
  54. data/vendor/github.com/zeromq/libzmq/RELICENSE/abbradar.md +16 -0
  55. data/vendor/github.com/zeromq/libzmq/RELICENSE/agronholm.md +15 -0
  56. data/vendor/github.com/zeromq/libzmq/RELICENSE/amuraru.md +15 -0
  57. data/vendor/github.com/zeromq/libzmq/RELICENSE/arsenm.md +15 -0
  58. data/vendor/github.com/zeromq/libzmq/RELICENSE/aseering.md +15 -0
  59. data/vendor/github.com/zeromq/libzmq/RELICENSE/bjorntopel.md +16 -0
  60. data/vendor/github.com/zeromq/libzmq/RELICENSE/bjovke.md +16 -0
  61. data/vendor/github.com/zeromq/libzmq/RELICENSE/brocade_communications_systems.md +15 -0
  62. data/vendor/github.com/zeromq/libzmq/RELICENSE/brunobodin.md +13 -0
  63. data/vendor/github.com/zeromq/libzmq/RELICENSE/c-rack.md +15 -0
  64. data/vendor/github.com/zeromq/libzmq/RELICENSE/camachat.md +15 -0
  65. data/vendor/github.com/zeromq/libzmq/RELICENSE/cdolan.md +15 -0
  66. data/vendor/github.com/zeromq/libzmq/RELICENSE/chrisstaite.md +14 -0
  67. data/vendor/github.com/zeromq/libzmq/RELICENSE/chugga_fan.md +15 -0
  68. data/vendor/github.com/zeromq/libzmq/RELICENSE/cjuniet.md +15 -0
  69. data/vendor/github.com/zeromq/libzmq/RELICENSE/ckamm.md +15 -0
  70. data/vendor/github.com/zeromq/libzmq/RELICENSE/clkao.md +15 -0
  71. data/vendor/github.com/zeromq/libzmq/RELICENSE/danielhtshih.md +15 -0
  72. data/vendor/github.com/zeromq/libzmq/RELICENSE/danriegsecker.md +16 -0
  73. data/vendor/github.com/zeromq/libzmq/RELICENSE/dfons.md +16 -0
  74. data/vendor/github.com/zeromq/libzmq/RELICENSE/djelenc.md +15 -0
  75. data/vendor/github.com/zeromq/libzmq/RELICENSE/drodri.md +15 -0
  76. data/vendor/github.com/zeromq/libzmq/RELICENSE/eburkitt.md +15 -0
  77. data/vendor/github.com/zeromq/libzmq/RELICENSE/egomotion.md +16 -0
  78. data/vendor/github.com/zeromq/libzmq/RELICENSE/evoskuil.md +15 -0
  79. data/vendor/github.com/zeromq/libzmq/RELICENSE/febeling.md +16 -0
  80. data/vendor/github.com/zeromq/libzmq/RELICENSE/fidlej.md +15 -0
  81. data/vendor/github.com/zeromq/libzmq/RELICENSE/flub.md +14 -0
  82. data/vendor/github.com/zeromq/libzmq/RELICENSE/gena-moscow.md +15 -0
  83. data/vendor/github.com/zeromq/libzmq/RELICENSE/gonzus.md +15 -0
  84. data/vendor/github.com/zeromq/libzmq/RELICENSE/goodfella_ltd.md +13 -0
  85. data/vendor/github.com/zeromq/libzmq/RELICENSE/google.md +13 -0
  86. data/vendor/github.com/zeromq/libzmq/RELICENSE/ianbarber.md +15 -0
  87. data/vendor/github.com/zeromq/libzmq/RELICENSE/imatix.md +23 -0
  88. data/vendor/github.com/zeromq/libzmq/RELICENSE/jakecobb.md +13 -0
  89. data/vendor/github.com/zeromq/libzmq/RELICENSE/jemc.md +15 -0
  90. data/vendor/github.com/zeromq/libzmq/RELICENSE/jimklimov.md +17 -0
  91. data/vendor/github.com/zeromq/libzmq/RELICENSE/jkryl.md +15 -0
  92. data/vendor/github.com/zeromq/libzmq/RELICENSE/johntconklin.md +15 -0
  93. data/vendor/github.com/zeromq/libzmq/RELICENSE/jruffin.md +14 -0
  94. data/vendor/github.com/zeromq/libzmq/RELICENSE/kentzo.md +15 -0
  95. data/vendor/github.com/zeromq/libzmq/RELICENSE/kevinsapper.md +13 -0
  96. data/vendor/github.com/zeromq/libzmq/RELICENSE/kobolog.md +12 -0
  97. data/vendor/github.com/zeromq/libzmq/RELICENSE/kurdybacha.md +15 -0
  98. data/vendor/github.com/zeromq/libzmq/RELICENSE/linville.md +15 -0
  99. data/vendor/github.com/zeromq/libzmq/RELICENSE/loachfish.md +15 -0
  100. data/vendor/github.com/zeromq/libzmq/RELICENSE/lodagro.md +15 -0
  101. data/vendor/github.com/zeromq/libzmq/RELICENSE/madebr.md +15 -0
  102. data/vendor/github.com/zeromq/libzmq/RELICENSE/mattconnolly.md +15 -0
  103. data/vendor/github.com/zeromq/libzmq/RELICENSE/mauri-melato.md +13 -0
  104. data/vendor/github.com/zeromq/libzmq/RELICENSE/mditzel.md +15 -0
  105. data/vendor/github.com/zeromq/libzmq/RELICENSE/meox.md +15 -0
  106. data/vendor/github.com/zeromq/libzmq/RELICENSE/michael-fox.md +16 -0
  107. data/vendor/github.com/zeromq/libzmq/RELICENSE/michicc.md +15 -0
  108. data/vendor/github.com/zeromq/libzmq/RELICENSE/minrk.md +15 -0
  109. data/vendor/github.com/zeromq/libzmq/RELICENSE/mipaaa.md +15 -0
  110. data/vendor/github.com/zeromq/libzmq/RELICENSE/mkluwe.md +15 -0
  111. data/vendor/github.com/zeromq/libzmq/RELICENSE/montoyaedu.md +15 -0
  112. data/vendor/github.com/zeromq/libzmq/RELICENSE/naos_ltd.md +19 -0
  113. data/vendor/github.com/zeromq/libzmq/RELICENSE/natano.md +15 -0
  114. data/vendor/github.com/zeromq/libzmq/RELICENSE/olafmandel.md +13 -0
  115. data/vendor/github.com/zeromq/libzmq/RELICENSE/pijyoi.md +13 -0
  116. data/vendor/github.com/zeromq/libzmq/RELICENSE/ptroja.md +14 -0
  117. data/vendor/github.com/zeromq/libzmq/RELICENSE/reunanen.md +15 -0
  118. data/vendor/github.com/zeromq/libzmq/RELICENSE/reza-ebrahimi.md +15 -0
  119. data/vendor/github.com/zeromq/libzmq/RELICENSE/rikvdh.md +15 -0
  120. data/vendor/github.com/zeromq/libzmq/RELICENSE/rlenferink.md +15 -0
  121. data/vendor/github.com/zeromq/libzmq/RELICENSE/roalz.md +13 -0
  122. data/vendor/github.com/zeromq/libzmq/RELICENSE/rodgert.md +17 -0
  123. data/vendor/github.com/zeromq/libzmq/RELICENSE/rotty.md +16 -0
  124. data/vendor/github.com/zeromq/libzmq/RELICENSE/sabae.md +15 -0
  125. data/vendor/github.com/zeromq/libzmq/RELICENSE/scemama.md +15 -0
  126. data/vendor/github.com/zeromq/libzmq/RELICENSE/sheremetyev.md +13 -0
  127. data/vendor/github.com/zeromq/libzmq/RELICENSE/shripchenko.md +15 -0
  128. data/vendor/github.com/zeromq/libzmq/RELICENSE/sigiesec.md +17 -0
  129. data/vendor/github.com/zeromq/libzmq/RELICENSE/soulik.md +15 -0
  130. data/vendor/github.com/zeromq/libzmq/RELICENSE/swansontec.md +15 -0
  131. data/vendor/github.com/zeromq/libzmq/RELICENSE/t-b.md +15 -0
  132. data/vendor/github.com/zeromq/libzmq/RELICENSE/tSed.md +15 -0
  133. data/vendor/github.com/zeromq/libzmq/RELICENSE/tabe.md +15 -0
  134. data/vendor/github.com/zeromq/libzmq/RELICENSE/tailhook.md +16 -0
  135. data/vendor/github.com/zeromq/libzmq/RELICENSE/taotetek.md +13 -0
  136. data/vendor/github.com/zeromq/libzmq/RELICENSE/templates/relicense-template-mplv2-any-osi.txt +15 -0
  137. data/vendor/github.com/zeromq/libzmq/RELICENSE/templates/relicense-template-mplv2-share-alike-osi.txt +15 -0
  138. data/vendor/github.com/zeromq/libzmq/RELICENSE/templates/relicense-template-mplv2.txt +13 -0
  139. data/vendor/github.com/zeromq/libzmq/RELICENSE/thompsa.md +15 -0
  140. data/vendor/github.com/zeromq/libzmq/RELICENSE/torehalvorsen.md +15 -0
  141. data/vendor/github.com/zeromq/libzmq/RELICENSE/twhittock.md +15 -0
  142. data/vendor/github.com/zeromq/libzmq/RELICENSE/ulikoehler.md +16 -0
  143. data/vendor/github.com/zeromq/libzmq/RELICENSE/vyskocilm.md +7 -0
  144. data/vendor/github.com/zeromq/libzmq/RELICENSE/willstrang.md +15 -0
  145. data/vendor/github.com/zeromq/libzmq/RELICENSE/xaqq.md +13 -0
  146. data/vendor/github.com/zeromq/libzmq/RELICENSE/yuvallanger.md +15 -0
  147. data/vendor/github.com/zeromq/libzmq/ZeroMQConfig.cmake.in +25 -0
  148. data/vendor/github.com/zeromq/libzmq/acinclude.m4 +1122 -0
  149. data/vendor/github.com/zeromq/libzmq/appveyor.yml +97 -0
  150. data/vendor/github.com/zeromq/libzmq/autogen.sh +49 -0
  151. data/vendor/github.com/zeromq/libzmq/branding.bmp +0 -0
  152. data/vendor/github.com/zeromq/libzmq/builds/Makefile.am +31 -0
  153. data/vendor/github.com/zeromq/libzmq/builds/README +4 -0
  154. data/vendor/github.com/zeromq/libzmq/builds/android/Dockerfile +22 -0
  155. data/vendor/github.com/zeromq/libzmq/builds/android/README.md +78 -0
  156. data/vendor/github.com/zeromq/libzmq/builds/android/android_build_helper.sh +316 -0
  157. data/vendor/github.com/zeromq/libzmq/builds/android/build.sh +70 -0
  158. data/vendor/github.com/zeromq/libzmq/builds/android/ci_build.sh +30 -0
  159. data/vendor/github.com/zeromq/libzmq/builds/cmake/Modules/FindAsciiDoc.cmake +26 -0
  160. data/vendor/github.com/zeromq/libzmq/builds/cmake/Modules/TestZMQVersion.cmake +8 -0
  161. data/vendor/github.com/zeromq/libzmq/builds/cmake/Modules/ZMQSourceRunChecks.cmake +301 -0
  162. data/vendor/github.com/zeromq/libzmq/builds/cmake/NSIS.template32.in +952 -0
  163. data/vendor/github.com/zeromq/libzmq/builds/cmake/NSIS.template64.in +960 -0
  164. data/vendor/github.com/zeromq/libzmq/builds/cmake/ci_build.sh +34 -0
  165. data/vendor/github.com/zeromq/libzmq/builds/cmake/platform.hpp.in +104 -0
  166. data/vendor/github.com/zeromq/libzmq/builds/coverage/ci_build.sh +32 -0
  167. data/vendor/github.com/zeromq/libzmq/builds/cygwin/Makefile.cygwin +48 -0
  168. data/vendor/github.com/zeromq/libzmq/builds/gyp/.gitignore +5 -0
  169. data/vendor/github.com/zeromq/libzmq/builds/gyp/build.bat +4 -0
  170. data/vendor/github.com/zeromq/libzmq/builds/gyp/platform.hpp +80 -0
  171. data/vendor/github.com/zeromq/libzmq/builds/gyp/project-tests.gsl +19 -0
  172. data/vendor/github.com/zeromq/libzmq/builds/gyp/project-tests.gypi +895 -0
  173. data/vendor/github.com/zeromq/libzmq/builds/gyp/project-tests.xml +83 -0
  174. data/vendor/github.com/zeromq/libzmq/builds/gyp/project.gyp +295 -0
  175. data/vendor/github.com/zeromq/libzmq/builds/mingw32/Makefile.mingw32 +49 -0
  176. data/vendor/github.com/zeromq/libzmq/builds/mingw32/platform.hpp +43 -0
  177. data/vendor/github.com/zeromq/libzmq/builds/msvc/.gitignore +256 -0
  178. data/vendor/github.com/zeromq/libzmq/builds/msvc/Makefile.am +94 -0
  179. data/vendor/github.com/zeromq/libzmq/builds/msvc/build/build.bat +33 -0
  180. data/vendor/github.com/zeromq/libzmq/builds/msvc/build/buildall.bat +16 -0
  181. data/vendor/github.com/zeromq/libzmq/builds/msvc/build/buildbase.bat +73 -0
  182. data/vendor/github.com/zeromq/libzmq/builds/msvc/errno.cpp +32 -0
  183. data/vendor/github.com/zeromq/libzmq/builds/msvc/errno.hpp +56 -0
  184. data/vendor/github.com/zeromq/libzmq/builds/msvc/platform.hpp +14 -0
  185. data/vendor/github.com/zeromq/libzmq/builds/msvc/properties/Common.props +21 -0
  186. data/vendor/github.com/zeromq/libzmq/builds/msvc/properties/DLL.props +16 -0
  187. data/vendor/github.com/zeromq/libzmq/builds/msvc/properties/Debug.props +29 -0
  188. data/vendor/github.com/zeromq/libzmq/builds/msvc/properties/DebugDEXE.props +21 -0
  189. data/vendor/github.com/zeromq/libzmq/builds/msvc/properties/DebugDLL.props +20 -0
  190. data/vendor/github.com/zeromq/libzmq/builds/msvc/properties/DebugLEXE.props +20 -0
  191. data/vendor/github.com/zeromq/libzmq/builds/msvc/properties/DebugLIB.props +21 -0
  192. data/vendor/github.com/zeromq/libzmq/builds/msvc/properties/DebugLTCG.props +20 -0
  193. data/vendor/github.com/zeromq/libzmq/builds/msvc/properties/DebugSEXE.props +21 -0
  194. data/vendor/github.com/zeromq/libzmq/builds/msvc/properties/EXE.props +17 -0
  195. data/vendor/github.com/zeromq/libzmq/builds/msvc/properties/LIB.props +16 -0
  196. data/vendor/github.com/zeromq/libzmq/builds/msvc/properties/LTCG.props +13 -0
  197. data/vendor/github.com/zeromq/libzmq/builds/msvc/properties/Link.props +21 -0
  198. data/vendor/github.com/zeromq/libzmq/builds/msvc/properties/Messages.props +15 -0
  199. data/vendor/github.com/zeromq/libzmq/builds/msvc/properties/Output.props +30 -0
  200. data/vendor/github.com/zeromq/libzmq/builds/msvc/properties/Release.props +41 -0
  201. data/vendor/github.com/zeromq/libzmq/builds/msvc/properties/ReleaseDEXE.props +20 -0
  202. data/vendor/github.com/zeromq/libzmq/builds/msvc/properties/ReleaseDLL.props +19 -0
  203. data/vendor/github.com/zeromq/libzmq/builds/msvc/properties/ReleaseLEXE.props +20 -0
  204. data/vendor/github.com/zeromq/libzmq/builds/msvc/properties/ReleaseLIB.props +19 -0
  205. data/vendor/github.com/zeromq/libzmq/builds/msvc/properties/ReleaseLTCG.props +19 -0
  206. data/vendor/github.com/zeromq/libzmq/builds/msvc/properties/ReleaseSEXE.props +20 -0
  207. data/vendor/github.com/zeromq/libzmq/builds/msvc/properties/Win32.props +20 -0
  208. data/vendor/github.com/zeromq/libzmq/builds/msvc/properties/x64.props +23 -0
  209. data/vendor/github.com/zeromq/libzmq/builds/msvc/readme.txt +27 -0
  210. data/vendor/github.com/zeromq/libzmq/builds/msvc/resource.h +14 -0
  211. data/vendor/github.com/zeromq/libzmq/builds/msvc/resource.rc +0 -0
  212. data/vendor/github.com/zeromq/libzmq/builds/msvc/vs2008/inproc_lat/inproc_lat.vcproj +52 -0
  213. data/vendor/github.com/zeromq/libzmq/builds/msvc/vs2008/inproc_thr/inproc_thr.vcproj +52 -0
  214. data/vendor/github.com/zeromq/libzmq/builds/msvc/vs2008/libzmq.sln +95 -0
  215. data/vendor/github.com/zeromq/libzmq/builds/msvc/vs2008/libzmq/libzmq.vcproj +338 -0
  216. data/vendor/github.com/zeromq/libzmq/builds/msvc/vs2008/local_lat/local_lat.vcproj +52 -0
  217. data/vendor/github.com/zeromq/libzmq/builds/msvc/vs2008/local_thr/local_thr.vcproj +52 -0
  218. data/vendor/github.com/zeromq/libzmq/builds/msvc/vs2008/remote_lat/remote_lat.vcproj +52 -0
  219. data/vendor/github.com/zeromq/libzmq/builds/msvc/vs2008/remote_thr/remote_thr.vcproj +52 -0
  220. data/vendor/github.com/zeromq/libzmq/builds/msvc/vs2010/inproc_lat/inproc_lat.props +49 -0
  221. data/vendor/github.com/zeromq/libzmq/builds/msvc/vs2010/inproc_lat/inproc_lat.vcxproj +82 -0
  222. data/vendor/github.com/zeromq/libzmq/builds/msvc/vs2010/inproc_thr/inproc_thr.props +49 -0
  223. data/vendor/github.com/zeromq/libzmq/builds/msvc/vs2010/inproc_thr/inproc_thr.vcxproj +82 -0
  224. data/vendor/github.com/zeromq/libzmq/builds/msvc/vs2010/libsodium.import.props +52 -0
  225. data/vendor/github.com/zeromq/libzmq/builds/msvc/vs2010/libsodium.import.xml +17 -0
  226. data/vendor/github.com/zeromq/libzmq/builds/msvc/vs2010/libzmq.import.props +64 -0
  227. data/vendor/github.com/zeromq/libzmq/builds/msvc/vs2010/libzmq.import.xml +49 -0
  228. data/vendor/github.com/zeromq/libzmq/builds/msvc/vs2010/libzmq.sln +206 -0
  229. data/vendor/github.com/zeromq/libzmq/builds/msvc/vs2010/libzmq/libzmq.props +76 -0
  230. data/vendor/github.com/zeromq/libzmq/builds/msvc/vs2010/libzmq/libzmq.vcxproj +289 -0
  231. data/vendor/github.com/zeromq/libzmq/builds/msvc/vs2010/libzmq/libzmq.vcxproj.filters +627 -0
  232. data/vendor/github.com/zeromq/libzmq/builds/msvc/vs2010/libzmq/libzmq.xml +40 -0
  233. data/vendor/github.com/zeromq/libzmq/builds/msvc/vs2010/local_lat/local_lat.props +49 -0
  234. data/vendor/github.com/zeromq/libzmq/builds/msvc/vs2010/local_lat/local_lat.vcxproj +82 -0
  235. data/vendor/github.com/zeromq/libzmq/builds/msvc/vs2010/local_thr/local_thr.props +49 -0
  236. data/vendor/github.com/zeromq/libzmq/builds/msvc/vs2010/local_thr/local_thr.vcxproj +82 -0
  237. data/vendor/github.com/zeromq/libzmq/builds/msvc/vs2010/remote_lat/remote_lat.props +49 -0
  238. data/vendor/github.com/zeromq/libzmq/builds/msvc/vs2010/remote_lat/remote_lat.vcxproj +82 -0
  239. data/vendor/github.com/zeromq/libzmq/builds/msvc/vs2010/remote_thr/remote_thr.props +49 -0
  240. data/vendor/github.com/zeromq/libzmq/builds/msvc/vs2010/remote_thr/remote_thr.vcxproj +82 -0
  241. data/vendor/github.com/zeromq/libzmq/builds/msvc/vs2012/inproc_lat/inproc_lat.props +49 -0
  242. data/vendor/github.com/zeromq/libzmq/builds/msvc/vs2012/inproc_lat/inproc_lat.vcxproj +82 -0
  243. data/vendor/github.com/zeromq/libzmq/builds/msvc/vs2012/inproc_thr/inproc_thr.props +49 -0
  244. data/vendor/github.com/zeromq/libzmq/builds/msvc/vs2012/inproc_thr/inproc_thr.vcxproj +82 -0
  245. data/vendor/github.com/zeromq/libzmq/builds/msvc/vs2012/libsodium.import.props +52 -0
  246. data/vendor/github.com/zeromq/libzmq/builds/msvc/vs2012/libsodium.import.xml +17 -0
  247. data/vendor/github.com/zeromq/libzmq/builds/msvc/vs2012/libzmq.import.props +64 -0
  248. data/vendor/github.com/zeromq/libzmq/builds/msvc/vs2012/libzmq.import.xml +49 -0
  249. data/vendor/github.com/zeromq/libzmq/builds/msvc/vs2012/libzmq.sln +206 -0
  250. data/vendor/github.com/zeromq/libzmq/builds/msvc/vs2012/libzmq/libzmq.props +76 -0
  251. data/vendor/github.com/zeromq/libzmq/builds/msvc/vs2012/libzmq/libzmq.vcxproj +289 -0
  252. data/vendor/github.com/zeromq/libzmq/builds/msvc/vs2012/libzmq/libzmq.vcxproj.filters +627 -0
  253. data/vendor/github.com/zeromq/libzmq/builds/msvc/vs2012/libzmq/libzmq.xml +40 -0
  254. data/vendor/github.com/zeromq/libzmq/builds/msvc/vs2012/local_lat/local_lat.props +49 -0
  255. data/vendor/github.com/zeromq/libzmq/builds/msvc/vs2012/local_lat/local_lat.vcxproj +82 -0
  256. data/vendor/github.com/zeromq/libzmq/builds/msvc/vs2012/local_thr/local_thr.props +49 -0
  257. data/vendor/github.com/zeromq/libzmq/builds/msvc/vs2012/local_thr/local_thr.vcxproj +82 -0
  258. data/vendor/github.com/zeromq/libzmq/builds/msvc/vs2012/remote_lat/remote_lat.props +49 -0
  259. data/vendor/github.com/zeromq/libzmq/builds/msvc/vs2012/remote_lat/remote_lat.vcxproj +82 -0
  260. data/vendor/github.com/zeromq/libzmq/builds/msvc/vs2012/remote_thr/remote_thr.props +49 -0
  261. data/vendor/github.com/zeromq/libzmq/builds/msvc/vs2012/remote_thr/remote_thr.vcxproj +82 -0
  262. data/vendor/github.com/zeromq/libzmq/builds/msvc/vs2013/inproc_lat/inproc_lat.props +49 -0
  263. data/vendor/github.com/zeromq/libzmq/builds/msvc/vs2013/inproc_lat/inproc_lat.vcxproj +82 -0
  264. data/vendor/github.com/zeromq/libzmq/builds/msvc/vs2013/inproc_thr/inproc_thr.props +49 -0
  265. data/vendor/github.com/zeromq/libzmq/builds/msvc/vs2013/inproc_thr/inproc_thr.vcxproj +82 -0
  266. data/vendor/github.com/zeromq/libzmq/builds/msvc/vs2013/libsodium.import.props +52 -0
  267. data/vendor/github.com/zeromq/libzmq/builds/msvc/vs2013/libsodium.import.xml +17 -0
  268. data/vendor/github.com/zeromq/libzmq/builds/msvc/vs2013/libzmq.import.props +64 -0
  269. data/vendor/github.com/zeromq/libzmq/builds/msvc/vs2013/libzmq.import.xml +49 -0
  270. data/vendor/github.com/zeromq/libzmq/builds/msvc/vs2013/libzmq.sln +208 -0
  271. data/vendor/github.com/zeromq/libzmq/builds/msvc/vs2013/libzmq/libzmq.props +76 -0
  272. data/vendor/github.com/zeromq/libzmq/builds/msvc/vs2013/libzmq/libzmq.vcxproj +289 -0
  273. data/vendor/github.com/zeromq/libzmq/builds/msvc/vs2013/libzmq/libzmq.vcxproj.filters +627 -0
  274. data/vendor/github.com/zeromq/libzmq/builds/msvc/vs2013/libzmq/libzmq.xml +40 -0
  275. data/vendor/github.com/zeromq/libzmq/builds/msvc/vs2013/local_lat/local_lat.props +49 -0
  276. data/vendor/github.com/zeromq/libzmq/builds/msvc/vs2013/local_lat/local_lat.vcxproj +82 -0
  277. data/vendor/github.com/zeromq/libzmq/builds/msvc/vs2013/local_thr/local_thr.props +49 -0
  278. data/vendor/github.com/zeromq/libzmq/builds/msvc/vs2013/local_thr/local_thr.vcxproj +82 -0
  279. data/vendor/github.com/zeromq/libzmq/builds/msvc/vs2013/remote_lat/remote_lat.props +49 -0
  280. data/vendor/github.com/zeromq/libzmq/builds/msvc/vs2013/remote_lat/remote_lat.vcxproj +82 -0
  281. data/vendor/github.com/zeromq/libzmq/builds/msvc/vs2013/remote_thr/remote_thr.props +49 -0
  282. data/vendor/github.com/zeromq/libzmq/builds/msvc/vs2013/remote_thr/remote_thr.vcxproj +82 -0
  283. data/vendor/github.com/zeromq/libzmq/builds/msvc/vs2015/inproc_lat/inproc_lat.props +49 -0
  284. data/vendor/github.com/zeromq/libzmq/builds/msvc/vs2015/inproc_lat/inproc_lat.vcxproj +82 -0
  285. data/vendor/github.com/zeromq/libzmq/builds/msvc/vs2015/inproc_thr/inproc_thr.props +49 -0
  286. data/vendor/github.com/zeromq/libzmq/builds/msvc/vs2015/inproc_thr/inproc_thr.vcxproj +82 -0
  287. data/vendor/github.com/zeromq/libzmq/builds/msvc/vs2015/libsodium.import.props +52 -0
  288. data/vendor/github.com/zeromq/libzmq/builds/msvc/vs2015/libsodium.import.xml +17 -0
  289. data/vendor/github.com/zeromq/libzmq/builds/msvc/vs2015/libzmq.import.props +64 -0
  290. data/vendor/github.com/zeromq/libzmq/builds/msvc/vs2015/libzmq.import.xml +49 -0
  291. data/vendor/github.com/zeromq/libzmq/builds/msvc/vs2015/libzmq.sln +208 -0
  292. data/vendor/github.com/zeromq/libzmq/builds/msvc/vs2015/libzmq/libzmq.props +76 -0
  293. data/vendor/github.com/zeromq/libzmq/builds/msvc/vs2015/libzmq/libzmq.vcxproj +289 -0
  294. data/vendor/github.com/zeromq/libzmq/builds/msvc/vs2015/libzmq/libzmq.vcxproj.filters +627 -0
  295. data/vendor/github.com/zeromq/libzmq/builds/msvc/vs2015/libzmq/libzmq.xml +40 -0
  296. data/vendor/github.com/zeromq/libzmq/builds/msvc/vs2015/local_lat/local_lat.props +49 -0
  297. data/vendor/github.com/zeromq/libzmq/builds/msvc/vs2015/local_lat/local_lat.vcxproj +82 -0
  298. data/vendor/github.com/zeromq/libzmq/builds/msvc/vs2015/local_thr/local_thr.props +49 -0
  299. data/vendor/github.com/zeromq/libzmq/builds/msvc/vs2015/local_thr/local_thr.vcxproj +82 -0
  300. data/vendor/github.com/zeromq/libzmq/builds/msvc/vs2015/remote_lat/remote_lat.props +49 -0
  301. data/vendor/github.com/zeromq/libzmq/builds/msvc/vs2015/remote_lat/remote_lat.vcxproj +82 -0
  302. data/vendor/github.com/zeromq/libzmq/builds/msvc/vs2015/remote_thr/remote_thr.props +49 -0
  303. data/vendor/github.com/zeromq/libzmq/builds/msvc/vs2015/remote_thr/remote_thr.vcxproj +82 -0
  304. data/vendor/github.com/zeromq/libzmq/builds/msvc/vs2015_xp/libzmq.vcxproj +258 -0
  305. data/vendor/github.com/zeromq/libzmq/builds/msvc/vs2015_xp/platform.hpp +15 -0
  306. data/vendor/github.com/zeromq/libzmq/builds/msvc/vs2015_xp/test_zmq/test_multithread.cpp +229 -0
  307. data/vendor/github.com/zeromq/libzmq/builds/msvc/vs2015_xp/test_zmq/test_zmq.vcxproj +155 -0
  308. data/vendor/github.com/zeromq/libzmq/builds/msvc/vs2017/inproc_lat/inproc_lat.props +49 -0
  309. data/vendor/github.com/zeromq/libzmq/builds/msvc/vs2017/inproc_lat/inproc_lat.vcxproj +82 -0
  310. data/vendor/github.com/zeromq/libzmq/builds/msvc/vs2017/inproc_thr/inproc_thr.props +49 -0
  311. data/vendor/github.com/zeromq/libzmq/builds/msvc/vs2017/inproc_thr/inproc_thr.vcxproj +82 -0
  312. data/vendor/github.com/zeromq/libzmq/builds/msvc/vs2017/libsodium.import.props +52 -0
  313. data/vendor/github.com/zeromq/libzmq/builds/msvc/vs2017/libsodium.import.xml +17 -0
  314. data/vendor/github.com/zeromq/libzmq/builds/msvc/vs2017/libzmq.import.props +64 -0
  315. data/vendor/github.com/zeromq/libzmq/builds/msvc/vs2017/libzmq.import.xml +49 -0
  316. data/vendor/github.com/zeromq/libzmq/builds/msvc/vs2017/libzmq.sln +208 -0
  317. data/vendor/github.com/zeromq/libzmq/builds/msvc/vs2017/libzmq/libzmq.props +76 -0
  318. data/vendor/github.com/zeromq/libzmq/builds/msvc/vs2017/libzmq/libzmq.vcxproj +289 -0
  319. data/vendor/github.com/zeromq/libzmq/builds/msvc/vs2017/libzmq/libzmq.vcxproj.filters +627 -0
  320. data/vendor/github.com/zeromq/libzmq/builds/msvc/vs2017/libzmq/libzmq.xml +40 -0
  321. data/vendor/github.com/zeromq/libzmq/builds/msvc/vs2017/local_lat/local_lat.props +49 -0
  322. data/vendor/github.com/zeromq/libzmq/builds/msvc/vs2017/local_lat/local_lat.vcxproj +82 -0
  323. data/vendor/github.com/zeromq/libzmq/builds/msvc/vs2017/local_thr/local_thr.props +49 -0
  324. data/vendor/github.com/zeromq/libzmq/builds/msvc/vs2017/local_thr/local_thr.vcxproj +82 -0
  325. data/vendor/github.com/zeromq/libzmq/builds/msvc/vs2017/remote_lat/remote_lat.props +49 -0
  326. data/vendor/github.com/zeromq/libzmq/builds/msvc/vs2017/remote_lat/remote_lat.vcxproj +82 -0
  327. data/vendor/github.com/zeromq/libzmq/builds/msvc/vs2017/remote_thr/remote_thr.props +49 -0
  328. data/vendor/github.com/zeromq/libzmq/builds/msvc/vs2017/remote_thr/remote_thr.vcxproj +82 -0
  329. data/vendor/github.com/zeromq/libzmq/builds/nuget/libzmq.autopkg +52 -0
  330. data/vendor/github.com/zeromq/libzmq/builds/nuget/readme.nuget +20 -0
  331. data/vendor/github.com/zeromq/libzmq/builds/openwrt/Makefile +70 -0
  332. data/vendor/github.com/zeromq/libzmq/builds/valgrind/ci_build.sh +30 -0
  333. data/vendor/github.com/zeromq/libzmq/builds/valgrind/valgrind.supp +22 -0
  334. data/vendor/github.com/zeromq/libzmq/builds/valgrind/vg +1 -0
  335. data/vendor/github.com/zeromq/libzmq/builds/zos/README.md +463 -0
  336. data/vendor/github.com/zeromq/libzmq/builds/zos/cxxall +62 -0
  337. data/vendor/github.com/zeromq/libzmq/builds/zos/makeclean +36 -0
  338. data/vendor/github.com/zeromq/libzmq/builds/zos/makelibzmq +54 -0
  339. data/vendor/github.com/zeromq/libzmq/builds/zos/maketests +102 -0
  340. data/vendor/github.com/zeromq/libzmq/builds/zos/platform.hpp +300 -0
  341. data/vendor/github.com/zeromq/libzmq/builds/zos/runtests +188 -0
  342. data/vendor/github.com/zeromq/libzmq/builds/zos/test_fork.cpp +95 -0
  343. data/vendor/github.com/zeromq/libzmq/builds/zos/zc++ +42 -0
  344. data/vendor/github.com/zeromq/libzmq/ci_build.sh +66 -0
  345. data/vendor/github.com/zeromq/libzmq/ci_deploy.sh +34 -0
  346. data/vendor/github.com/zeromq/libzmq/configure.ac +827 -0
  347. data/vendor/github.com/zeromq/libzmq/doc/Makefile.am +64 -0
  348. data/vendor/github.com/zeromq/libzmq/doc/asciidoc.conf +56 -0
  349. data/vendor/github.com/zeromq/libzmq/doc/zmq.txt +276 -0
  350. data/vendor/github.com/zeromq/libzmq/doc/zmq_atomic_counter_dec.txt +62 -0
  351. data/vendor/github.com/zeromq/libzmq/doc/zmq_atomic_counter_destroy.txt +62 -0
  352. data/vendor/github.com/zeromq/libzmq/doc/zmq_atomic_counter_inc.txt +61 -0
  353. data/vendor/github.com/zeromq/libzmq/doc/zmq_atomic_counter_new.txt +62 -0
  354. data/vendor/github.com/zeromq/libzmq/doc/zmq_atomic_counter_set.txt +61 -0
  355. data/vendor/github.com/zeromq/libzmq/doc/zmq_atomic_counter_value.txt +62 -0
  356. data/vendor/github.com/zeromq/libzmq/doc/zmq_bind.txt +103 -0
  357. data/vendor/github.com/zeromq/libzmq/doc/zmq_close.txt +56 -0
  358. data/vendor/github.com/zeromq/libzmq/doc/zmq_connect.txt +101 -0
  359. data/vendor/github.com/zeromq/libzmq/doc/zmq_ctx_destroy.txt +67 -0
  360. data/vendor/github.com/zeromq/libzmq/doc/zmq_ctx_get.txt +105 -0
  361. data/vendor/github.com/zeromq/libzmq/doc/zmq_ctx_new.txt +50 -0
  362. data/vendor/github.com/zeromq/libzmq/doc/zmq_ctx_set.txt +184 -0
  363. data/vendor/github.com/zeromq/libzmq/doc/zmq_ctx_shutdown.txt +52 -0
  364. data/vendor/github.com/zeromq/libzmq/doc/zmq_ctx_term.txt +68 -0
  365. data/vendor/github.com/zeromq/libzmq/doc/zmq_curve.txt +92 -0
  366. data/vendor/github.com/zeromq/libzmq/doc/zmq_curve_keypair.txt +56 -0
  367. data/vendor/github.com/zeromq/libzmq/doc/zmq_curve_public.txt +62 -0
  368. data/vendor/github.com/zeromq/libzmq/doc/zmq_disconnect.txt +75 -0
  369. data/vendor/github.com/zeromq/libzmq/doc/zmq_errno.txt +50 -0
  370. data/vendor/github.com/zeromq/libzmq/doc/zmq_getsockopt.txt +944 -0
  371. data/vendor/github.com/zeromq/libzmq/doc/zmq_gssapi.txt +78 -0
  372. data/vendor/github.com/zeromq/libzmq/doc/zmq_has.txt +44 -0
  373. data/vendor/github.com/zeromq/libzmq/doc/zmq_init.txt +52 -0
  374. data/vendor/github.com/zeromq/libzmq/doc/zmq_inproc.txt +88 -0
  375. data/vendor/github.com/zeromq/libzmq/doc/zmq_ipc.txt +106 -0
  376. data/vendor/github.com/zeromq/libzmq/doc/zmq_msg_close.txt +56 -0
  377. data/vendor/github.com/zeromq/libzmq/doc/zmq_msg_copy.txt +72 -0
  378. data/vendor/github.com/zeromq/libzmq/doc/zmq_msg_data.txt +48 -0
  379. data/vendor/github.com/zeromq/libzmq/doc/zmq_msg_get.txt +83 -0
  380. data/vendor/github.com/zeromq/libzmq/doc/zmq_msg_gets.txt +81 -0
  381. data/vendor/github.com/zeromq/libzmq/doc/zmq_msg_init.txt +64 -0
  382. data/vendor/github.com/zeromq/libzmq/doc/zmq_msg_init_data.txt +89 -0
  383. data/vendor/github.com/zeromq/libzmq/doc/zmq_msg_init_size.txt +58 -0
  384. data/vendor/github.com/zeromq/libzmq/doc/zmq_msg_more.txt +65 -0
  385. data/vendor/github.com/zeromq/libzmq/doc/zmq_msg_move.txt +52 -0
  386. data/vendor/github.com/zeromq/libzmq/doc/zmq_msg_recv.txt +124 -0
  387. data/vendor/github.com/zeromq/libzmq/doc/zmq_msg_routing_id.txt +61 -0
  388. data/vendor/github.com/zeromq/libzmq/doc/zmq_msg_send.txt +127 -0
  389. data/vendor/github.com/zeromq/libzmq/doc/zmq_msg_set.txt +46 -0
  390. data/vendor/github.com/zeromq/libzmq/doc/zmq_msg_set_routing_id.txt +46 -0
  391. data/vendor/github.com/zeromq/libzmq/doc/zmq_msg_size.txt +48 -0
  392. data/vendor/github.com/zeromq/libzmq/doc/zmq_null.txt +27 -0
  393. data/vendor/github.com/zeromq/libzmq/doc/zmq_pgm.txt +164 -0
  394. data/vendor/github.com/zeromq/libzmq/doc/zmq_plain.txt +37 -0
  395. data/vendor/github.com/zeromq/libzmq/doc/zmq_poll.txt +135 -0
  396. data/vendor/github.com/zeromq/libzmq/doc/zmq_proxy.txt +99 -0
  397. data/vendor/github.com/zeromq/libzmq/doc/zmq_proxy_steerable.txt +111 -0
  398. data/vendor/github.com/zeromq/libzmq/doc/zmq_recv.txt +91 -0
  399. data/vendor/github.com/zeromq/libzmq/doc/zmq_recvmsg.txt +121 -0
  400. data/vendor/github.com/zeromq/libzmq/doc/zmq_send.txt +104 -0
  401. data/vendor/github.com/zeromq/libzmq/doc/zmq_send_const.txt +103 -0
  402. data/vendor/github.com/zeromq/libzmq/doc/zmq_sendmsg.txt +121 -0
  403. data/vendor/github.com/zeromq/libzmq/doc/zmq_setsockopt.txt +1318 -0
  404. data/vendor/github.com/zeromq/libzmq/doc/zmq_socket.txt +609 -0
  405. data/vendor/github.com/zeromq/libzmq/doc/zmq_socket_monitor.txt +294 -0
  406. data/vendor/github.com/zeromq/libzmq/doc/zmq_strerror.txt +56 -0
  407. data/vendor/github.com/zeromq/libzmq/doc/zmq_tcp.txt +118 -0
  408. data/vendor/github.com/zeromq/libzmq/doc/zmq_term.txt +66 -0
  409. data/vendor/github.com/zeromq/libzmq/doc/zmq_tipc.txt +83 -0
  410. data/vendor/github.com/zeromq/libzmq/doc/zmq_udp.txt +99 -0
  411. data/vendor/github.com/zeromq/libzmq/doc/zmq_unbind.txt +90 -0
  412. data/vendor/github.com/zeromq/libzmq/doc/zmq_version.txt +54 -0
  413. data/vendor/github.com/zeromq/libzmq/doc/zmq_vmci.txt +97 -0
  414. data/vendor/github.com/zeromq/libzmq/doc/zmq_z85_decode.txt +51 -0
  415. data/vendor/github.com/zeromq/libzmq/doc/zmq_z85_encode.txt +58 -0
  416. data/vendor/github.com/zeromq/libzmq/include/zmq.h +708 -0
  417. data/vendor/github.com/zeromq/libzmq/include/zmq_utils.h +48 -0
  418. data/vendor/github.com/zeromq/libzmq/installer.ico +0 -0
  419. data/vendor/github.com/zeromq/libzmq/m4/ax_check_compile_flag.m4 +74 -0
  420. data/vendor/github.com/zeromq/libzmq/m4/ax_code_coverage.m4 +264 -0
  421. data/vendor/github.com/zeromq/libzmq/m4/ax_cxx_compile_stdcxx.m4 +562 -0
  422. data/vendor/github.com/zeromq/libzmq/m4/ax_cxx_compile_stdcxx_11.m4 +40 -0
  423. data/vendor/github.com/zeromq/libzmq/m4/ax_valgrind_check.m4 +233 -0
  424. data/vendor/github.com/zeromq/libzmq/packaging/README +4 -0
  425. data/vendor/github.com/zeromq/libzmq/packaging/debian/changelog +5 -0
  426. data/vendor/github.com/zeromq/libzmq/packaging/debian/compat +1 -0
  427. data/vendor/github.com/zeromq/libzmq/packaging/debian/control +64 -0
  428. data/vendor/github.com/zeromq/libzmq/packaging/debian/copyright +93 -0
  429. data/vendor/github.com/zeromq/libzmq/packaging/debian/libzmq3-dev.install +4 -0
  430. data/vendor/github.com/zeromq/libzmq/packaging/debian/libzmq3-dev.manpages +2 -0
  431. data/vendor/github.com/zeromq/libzmq/packaging/debian/libzmq5.docs +2 -0
  432. data/vendor/github.com/zeromq/libzmq/packaging/debian/libzmq5.install +1 -0
  433. data/vendor/github.com/zeromq/libzmq/packaging/debian/rules +67 -0
  434. data/vendor/github.com/zeromq/libzmq/packaging/debian/source/format +1 -0
  435. data/vendor/github.com/zeromq/libzmq/packaging/debian/zeromq.dsc.obs +15 -0
  436. data/vendor/github.com/zeromq/libzmq/packaging/nuget/package.bat +14 -0
  437. data/vendor/github.com/zeromq/libzmq/packaging/nuget/package.config +6 -0
  438. data/vendor/github.com/zeromq/libzmq/packaging/nuget/package.gsl +264 -0
  439. data/vendor/github.com/zeromq/libzmq/packaging/nuget/package.nuspec +98 -0
  440. data/vendor/github.com/zeromq/libzmq/packaging/nuget/package.targets +129 -0
  441. data/vendor/github.com/zeromq/libzmq/packaging/nuget/package.xml +22 -0
  442. data/vendor/github.com/zeromq/libzmq/packaging/obs/_service +98 -0
  443. data/vendor/github.com/zeromq/libzmq/packaging/redhat/zeromq.spec +234 -0
  444. data/vendor/github.com/zeromq/libzmq/perf/inproc_lat.cpp +240 -0
  445. data/vendor/github.com/zeromq/libzmq/perf/inproc_thr.cpp +250 -0
  446. data/vendor/github.com/zeromq/libzmq/perf/local_lat.cpp +116 -0
  447. data/vendor/github.com/zeromq/libzmq/perf/local_thr.cpp +160 -0
  448. data/vendor/github.com/zeromq/libzmq/perf/remote_lat.cpp +129 -0
  449. data/vendor/github.com/zeromq/libzmq/perf/remote_thr.cpp +135 -0
  450. data/vendor/github.com/zeromq/libzmq/src/address.cpp +134 -0
  451. data/vendor/github.com/zeromq/libzmq/src/address.hpp +77 -0
  452. data/vendor/github.com/zeromq/libzmq/src/array.hpp +167 -0
  453. data/vendor/github.com/zeromq/libzmq/src/atomic_counter.hpp +249 -0
  454. data/vendor/github.com/zeromq/libzmq/src/atomic_ptr.hpp +227 -0
  455. data/vendor/github.com/zeromq/libzmq/src/blob.hpp +186 -0
  456. data/vendor/github.com/zeromq/libzmq/src/client.cpp +116 -0
  457. data/vendor/github.com/zeromq/libzmq/src/client.hpp +81 -0
  458. data/vendor/github.com/zeromq/libzmq/src/clock.cpp +253 -0
  459. data/vendor/github.com/zeromq/libzmq/src/clock.hpp +83 -0
  460. data/vendor/github.com/zeromq/libzmq/src/command.hpp +188 -0
  461. data/vendor/github.com/zeromq/libzmq/src/condition_variable.hpp +279 -0
  462. data/vendor/github.com/zeromq/libzmq/src/config.hpp +98 -0
  463. data/vendor/github.com/zeromq/libzmq/src/ctx.cpp +644 -0
  464. data/vendor/github.com/zeromq/libzmq/src/ctx.hpp +242 -0
  465. data/vendor/github.com/zeromq/libzmq/src/curve_client.cpp +297 -0
  466. data/vendor/github.com/zeromq/libzmq/src/curve_client.hpp +87 -0
  467. data/vendor/github.com/zeromq/libzmq/src/curve_client_tools.hpp +307 -0
  468. data/vendor/github.com/zeromq/libzmq/src/curve_mechanism_base.cpp +181 -0
  469. data/vendor/github.com/zeromq/libzmq/src/curve_mechanism_base.hpp +79 -0
  470. data/vendor/github.com/zeromq/libzmq/src/curve_server.cpp +492 -0
  471. data/vendor/github.com/zeromq/libzmq/src/curve_server.hpp +94 -0
  472. data/vendor/github.com/zeromq/libzmq/src/dbuffer.hpp +144 -0
  473. data/vendor/github.com/zeromq/libzmq/src/dealer.cpp +143 -0
  474. data/vendor/github.com/zeromq/libzmq/src/dealer.hpp +89 -0
  475. data/vendor/github.com/zeromq/libzmq/src/decoder.hpp +198 -0
  476. data/vendor/github.com/zeromq/libzmq/src/decoder_allocators.cpp +144 -0
  477. data/vendor/github.com/zeromq/libzmq/src/decoder_allocators.hpp +155 -0
  478. data/vendor/github.com/zeromq/libzmq/src/devpoll.cpp +205 -0
  479. data/vendor/github.com/zeromq/libzmq/src/devpoll.hpp +119 -0
  480. data/vendor/github.com/zeromq/libzmq/src/dgram.cpp +177 -0
  481. data/vendor/github.com/zeromq/libzmq/src/dgram.hpp +81 -0
  482. data/vendor/github.com/zeromq/libzmq/src/dish.cpp +360 -0
  483. data/vendor/github.com/zeromq/libzmq/src/dish.hpp +125 -0
  484. data/vendor/github.com/zeromq/libzmq/src/dist.cpp +235 -0
  485. data/vendor/github.com/zeromq/libzmq/src/dist.hpp +120 -0
  486. data/vendor/github.com/zeromq/libzmq/src/encoder.hpp +189 -0
  487. data/vendor/github.com/zeromq/libzmq/src/epoll.cpp +206 -0
  488. data/vendor/github.com/zeromq/libzmq/src/epoll.hpp +119 -0
  489. data/vendor/github.com/zeromq/libzmq/src/err.cpp +447 -0
  490. data/vendor/github.com/zeromq/libzmq/src/err.hpp +173 -0
  491. data/vendor/github.com/zeromq/libzmq/src/fd.hpp +52 -0
  492. data/vendor/github.com/zeromq/libzmq/src/fq.cpp +163 -0
  493. data/vendor/github.com/zeromq/libzmq/src/fq.hpp +92 -0
  494. data/vendor/github.com/zeromq/libzmq/src/gather.cpp +94 -0
  495. data/vendor/github.com/zeromq/libzmq/src/gather.hpp +75 -0
  496. data/vendor/github.com/zeromq/libzmq/src/gssapi_client.cpp +237 -0
  497. data/vendor/github.com/zeromq/libzmq/src/gssapi_client.hpp +94 -0
  498. data/vendor/github.com/zeromq/libzmq/src/gssapi_mechanism_base.cpp +402 -0
  499. data/vendor/github.com/zeromq/libzmq/src/gssapi_mechanism_base.hpp +134 -0
  500. data/vendor/github.com/zeromq/libzmq/src/gssapi_server.cpp +249 -0
  501. data/vendor/github.com/zeromq/libzmq/src/gssapi_server.hpp +95 -0
  502. data/vendor/github.com/zeromq/libzmq/src/i_decoder.hpp +64 -0
  503. data/vendor/github.com/zeromq/libzmq/src/i_encoder.hpp +60 -0
  504. data/vendor/github.com/zeromq/libzmq/src/i_engine.hpp +68 -0
  505. data/vendor/github.com/zeromq/libzmq/src/i_mailbox.hpp +60 -0
  506. data/vendor/github.com/zeromq/libzmq/src/i_poll_events.hpp +55 -0
  507. data/vendor/github.com/zeromq/libzmq/src/io_object.cpp +117 -0
  508. data/vendor/github.com/zeromq/libzmq/src/io_object.hpp +89 -0
  509. data/vendor/github.com/zeromq/libzmq/src/io_thread.cpp +114 -0
  510. data/vendor/github.com/zeromq/libzmq/src/io_thread.hpp +99 -0
  511. data/vendor/github.com/zeromq/libzmq/src/ip.cpp +235 -0
  512. data/vendor/github.com/zeromq/libzmq/src/ip.hpp +64 -0
  513. data/vendor/github.com/zeromq/libzmq/src/ipc_address.cpp +106 -0
  514. data/vendor/github.com/zeromq/libzmq/src/ipc_address.hpp +74 -0
  515. data/vendor/github.com/zeromq/libzmq/src/ipc_connecter.cpp +278 -0
  516. data/vendor/github.com/zeromq/libzmq/src/ipc_connecter.hpp +135 -0
  517. data/vendor/github.com/zeromq/libzmq/src/ipc_listener.cpp +427 -0
  518. data/vendor/github.com/zeromq/libzmq/src/ipc_listener.hpp +123 -0
  519. data/vendor/github.com/zeromq/libzmq/src/kqueue.cpp +227 -0
  520. data/vendor/github.com/zeromq/libzmq/src/kqueue.hpp +127 -0
  521. data/vendor/github.com/zeromq/libzmq/src/lb.cpp +173 -0
  522. data/vendor/github.com/zeromq/libzmq/src/lb.hpp +88 -0
  523. data/vendor/github.com/zeromq/libzmq/src/libzmq.pc.cmake.in +11 -0
  524. data/vendor/github.com/zeromq/libzmq/src/libzmq.pc.in +11 -0
  525. data/vendor/github.com/zeromq/libzmq/src/libzmq.vers +4 -0
  526. data/vendor/github.com/zeromq/libzmq/src/likely.hpp +42 -0
  527. data/vendor/github.com/zeromq/libzmq/src/macros.hpp +12 -0
  528. data/vendor/github.com/zeromq/libzmq/src/mailbox.cpp +101 -0
  529. data/vendor/github.com/zeromq/libzmq/src/mailbox.hpp +90 -0
  530. data/vendor/github.com/zeromq/libzmq/src/mailbox_safe.cpp +117 -0
  531. data/vendor/github.com/zeromq/libzmq/src/mailbox_safe.hpp +94 -0
  532. data/vendor/github.com/zeromq/libzmq/src/mechanism.cpp +285 -0
  533. data/vendor/github.com/zeromq/libzmq/src/mechanism.hpp +152 -0
  534. data/vendor/github.com/zeromq/libzmq/src/mechanism_base.cpp +70 -0
  535. data/vendor/github.com/zeromq/libzmq/src/mechanism_base.hpp +53 -0
  536. data/vendor/github.com/zeromq/libzmq/src/metadata.cpp +62 -0
  537. data/vendor/github.com/zeromq/libzmq/src/metadata.hpp +70 -0
  538. data/vendor/github.com/zeromq/libzmq/src/msg.cpp +578 -0
  539. data/vendor/github.com/zeromq/libzmq/src/msg.hpp +268 -0
  540. data/vendor/github.com/zeromq/libzmq/src/mtrie.cpp +434 -0
  541. data/vendor/github.com/zeromq/libzmq/src/mtrie.hpp +102 -0
  542. data/vendor/github.com/zeromq/libzmq/src/mutex.hpp +213 -0
  543. data/vendor/github.com/zeromq/libzmq/src/norm_engine.cpp +736 -0
  544. data/vendor/github.com/zeromq/libzmq/src/norm_engine.hpp +190 -0
  545. data/vendor/github.com/zeromq/libzmq/src/null_mechanism.cpp +220 -0
  546. data/vendor/github.com/zeromq/libzmq/src/null_mechanism.hpp +77 -0
  547. data/vendor/github.com/zeromq/libzmq/src/object.cpp +476 -0
  548. data/vendor/github.com/zeromq/libzmq/src/object.hpp +156 -0
  549. data/vendor/github.com/zeromq/libzmq/src/options.cpp +1089 -0
  550. data/vendor/github.com/zeromq/libzmq/src/options.hpp +251 -0
  551. data/vendor/github.com/zeromq/libzmq/src/own.cpp +216 -0
  552. data/vendor/github.com/zeromq/libzmq/src/own.hpp +154 -0
  553. data/vendor/github.com/zeromq/libzmq/src/pair.cpp +142 -0
  554. data/vendor/github.com/zeromq/libzmq/src/pair.hpp +78 -0
  555. data/vendor/github.com/zeromq/libzmq/src/pgm_receiver.cpp +307 -0
  556. data/vendor/github.com/zeromq/libzmq/src/pgm_receiver.hpp +147 -0
  557. data/vendor/github.com/zeromq/libzmq/src/pgm_sender.cpp +257 -0
  558. data/vendor/github.com/zeromq/libzmq/src/pgm_sender.hpp +124 -0
  559. data/vendor/github.com/zeromq/libzmq/src/pgm_socket.cpp +712 -0
  560. data/vendor/github.com/zeromq/libzmq/src/pgm_socket.hpp +128 -0
  561. data/vendor/github.com/zeromq/libzmq/src/pipe.cpp +547 -0
  562. data/vendor/github.com/zeromq/libzmq/src/pipe.hpp +253 -0
  563. data/vendor/github.com/zeromq/libzmq/src/plain_client.cpp +220 -0
  564. data/vendor/github.com/zeromq/libzmq/src/plain_client.hpp +79 -0
  565. data/vendor/github.com/zeromq/libzmq/src/plain_server.cpp +253 -0
  566. data/vendor/github.com/zeromq/libzmq/src/plain_server.hpp +71 -0
  567. data/vendor/github.com/zeromq/libzmq/src/poll.cpp +193 -0
  568. data/vendor/github.com/zeromq/libzmq/src/poll.hpp +121 -0
  569. data/vendor/github.com/zeromq/libzmq/src/poller.hpp +64 -0
  570. data/vendor/github.com/zeromq/libzmq/src/poller_base.cpp +110 -0
  571. data/vendor/github.com/zeromq/libzmq/src/poller_base.hpp +95 -0
  572. data/vendor/github.com/zeromq/libzmq/src/pollset.cpp +254 -0
  573. data/vendor/github.com/zeromq/libzmq/src/pollset.hpp +121 -0
  574. data/vendor/github.com/zeromq/libzmq/src/precompiled.cpp +30 -0
  575. data/vendor/github.com/zeromq/libzmq/src/precompiled.hpp +120 -0
  576. data/vendor/github.com/zeromq/libzmq/src/proxy.cpp +622 -0
  577. data/vendor/github.com/zeromq/libzmq/src/proxy.hpp +42 -0
  578. data/vendor/github.com/zeromq/libzmq/src/pub.cpp +67 -0
  579. data/vendor/github.com/zeromq/libzmq/src/pub.hpp +63 -0
  580. data/vendor/github.com/zeromq/libzmq/src/pull.cpp +78 -0
  581. data/vendor/github.com/zeromq/libzmq/src/pull.hpp +75 -0
  582. data/vendor/github.com/zeromq/libzmq/src/push.cpp +77 -0
  583. data/vendor/github.com/zeromq/libzmq/src/push.hpp +73 -0
  584. data/vendor/github.com/zeromq/libzmq/src/radio.cpp +252 -0
  585. data/vendor/github.com/zeromq/libzmq/src/radio.hpp +112 -0
  586. data/vendor/github.com/zeromq/libzmq/src/random.cpp +118 -0
  587. data/vendor/github.com/zeromq/libzmq/src/random.hpp +52 -0
  588. data/vendor/github.com/zeromq/libzmq/src/raw_decoder.cpp +74 -0
  589. data/vendor/github.com/zeromq/libzmq/src/raw_decoder.hpp +74 -0
  590. data/vendor/github.com/zeromq/libzmq/src/raw_encoder.cpp +51 -0
  591. data/vendor/github.com/zeromq/libzmq/src/raw_encoder.hpp +64 -0
  592. data/vendor/github.com/zeromq/libzmq/src/reaper.cpp +142 -0
  593. data/vendor/github.com/zeromq/libzmq/src/reaper.hpp +94 -0
  594. data/vendor/github.com/zeromq/libzmq/src/rep.cpp +134 -0
  595. data/vendor/github.com/zeromq/libzmq/src/rep.hpp +73 -0
  596. data/vendor/github.com/zeromq/libzmq/src/req.cpp +323 -0
  597. data/vendor/github.com/zeromq/libzmq/src/req.hpp +121 -0
  598. data/vendor/github.com/zeromq/libzmq/src/router.cpp +551 -0
  599. data/vendor/github.com/zeromq/libzmq/src/router.hpp +147 -0
  600. data/vendor/github.com/zeromq/libzmq/src/scatter.cpp +83 -0
  601. data/vendor/github.com/zeromq/libzmq/src/scatter.hpp +73 -0
  602. data/vendor/github.com/zeromq/libzmq/src/select.cpp +567 -0
  603. data/vendor/github.com/zeromq/libzmq/src/select.hpp +184 -0
  604. data/vendor/github.com/zeromq/libzmq/src/server.cpp +184 -0
  605. data/vendor/github.com/zeromq/libzmq/src/server.hpp +96 -0
  606. data/vendor/github.com/zeromq/libzmq/src/session_base.cpp +716 -0
  607. data/vendor/github.com/zeromq/libzmq/src/session_base.hpp +173 -0
  608. data/vendor/github.com/zeromq/libzmq/src/signaler.cpp +682 -0
  609. data/vendor/github.com/zeromq/libzmq/src/signaler.hpp +91 -0
  610. data/vendor/github.com/zeromq/libzmq/src/socket_base.cpp +1778 -0
  611. data/vendor/github.com/zeromq/libzmq/src/socket_base.hpp +307 -0
  612. data/vendor/github.com/zeromq/libzmq/src/socket_poller.cpp +697 -0
  613. data/vendor/github.com/zeromq/libzmq/src/socket_poller.hpp +145 -0
  614. data/vendor/github.com/zeromq/libzmq/src/socks.cpp +286 -0
  615. data/vendor/github.com/zeromq/libzmq/src/socks.hpp +135 -0
  616. data/vendor/github.com/zeromq/libzmq/src/socks_connecter.cpp +482 -0
  617. data/vendor/github.com/zeromq/libzmq/src/socks_connecter.hpp +163 -0
  618. data/vendor/github.com/zeromq/libzmq/src/stdint.hpp +77 -0
  619. data/vendor/github.com/zeromq/libzmq/src/stream.cpp +321 -0
  620. data/vendor/github.com/zeromq/libzmq/src/stream.hpp +107 -0
  621. data/vendor/github.com/zeromq/libzmq/src/stream_engine.cpp +1110 -0
  622. data/vendor/github.com/zeromq/libzmq/src/stream_engine.hpp +233 -0
  623. data/vendor/github.com/zeromq/libzmq/src/sub.cpp +87 -0
  624. data/vendor/github.com/zeromq/libzmq/src/sub.hpp +64 -0
  625. data/vendor/github.com/zeromq/libzmq/src/tcp.cpp +356 -0
  626. data/vendor/github.com/zeromq/libzmq/src/tcp.hpp +69 -0
  627. data/vendor/github.com/zeromq/libzmq/src/tcp_address.cpp +897 -0
  628. data/vendor/github.com/zeromq/libzmq/src/tcp_address.hpp +117 -0
  629. data/vendor/github.com/zeromq/libzmq/src/tcp_connecter.cpp +426 -0
  630. data/vendor/github.com/zeromq/libzmq/src/tcp_connecter.hpp +134 -0
  631. data/vendor/github.com/zeromq/libzmq/src/tcp_listener.cpp +357 -0
  632. data/vendor/github.com/zeromq/libzmq/src/tcp_listener.hpp +98 -0
  633. data/vendor/github.com/zeromq/libzmq/src/thread.cpp +238 -0
  634. data/vendor/github.com/zeromq/libzmq/src/thread.hpp +102 -0
  635. data/vendor/github.com/zeromq/libzmq/src/timers.cpp +199 -0
  636. data/vendor/github.com/zeromq/libzmq/src/timers.hpp +110 -0
  637. data/vendor/github.com/zeromq/libzmq/src/tipc_address.cpp +124 -0
  638. data/vendor/github.com/zeromq/libzmq/src/tipc_address.hpp +75 -0
  639. data/vendor/github.com/zeromq/libzmq/src/tipc_connecter.cpp +268 -0
  640. data/vendor/github.com/zeromq/libzmq/src/tipc_connecter.hpp +137 -0
  641. data/vendor/github.com/zeromq/libzmq/src/tipc_listener.cpp +190 -0
  642. data/vendor/github.com/zeromq/libzmq/src/tipc_listener.hpp +107 -0
  643. data/vendor/github.com/zeromq/libzmq/src/trie.cpp +340 -0
  644. data/vendor/github.com/zeromq/libzmq/src/trie.hpp +86 -0
  645. data/vendor/github.com/zeromq/libzmq/src/tweetnacl.c +988 -0
  646. data/vendor/github.com/zeromq/libzmq/src/tweetnacl.h +75 -0
  647. data/vendor/github.com/zeromq/libzmq/src/udp_address.cpp +172 -0
  648. data/vendor/github.com/zeromq/libzmq/src/udp_address.hpp +78 -0
  649. data/vendor/github.com/zeromq/libzmq/src/udp_engine.cpp +394 -0
  650. data/vendor/github.com/zeromq/libzmq/src/udp_engine.hpp +73 -0
  651. data/vendor/github.com/zeromq/libzmq/src/v1_decoder.cpp +153 -0
  652. data/vendor/github.com/zeromq/libzmq/src/v1_decoder.hpp +69 -0
  653. data/vendor/github.com/zeromq/libzmq/src/v1_encoder.cpp +76 -0
  654. data/vendor/github.com/zeromq/libzmq/src/v1_encoder.hpp +59 -0
  655. data/vendor/github.com/zeromq/libzmq/src/v2_decoder.cpp +161 -0
  656. data/vendor/github.com/zeromq/libzmq/src/v2_decoder.hpp +74 -0
  657. data/vendor/github.com/zeromq/libzmq/src/v2_encoder.cpp +78 -0
  658. data/vendor/github.com/zeromq/libzmq/src/v2_encoder.hpp +59 -0
  659. data/vendor/github.com/zeromq/libzmq/src/v2_protocol.hpp +49 -0
  660. data/vendor/github.com/zeromq/libzmq/src/version.rc.in +93 -0
  661. data/vendor/github.com/zeromq/libzmq/src/vmci.cpp +88 -0
  662. data/vendor/github.com/zeromq/libzmq/src/vmci.hpp +60 -0
  663. data/vendor/github.com/zeromq/libzmq/src/vmci_address.cpp +170 -0
  664. data/vendor/github.com/zeromq/libzmq/src/vmci_address.hpp +71 -0
  665. data/vendor/github.com/zeromq/libzmq/src/vmci_connecter.cpp +307 -0
  666. data/vendor/github.com/zeromq/libzmq/src/vmci_connecter.hpp +136 -0
  667. data/vendor/github.com/zeromq/libzmq/src/vmci_listener.cpp +262 -0
  668. data/vendor/github.com/zeromq/libzmq/src/vmci_listener.hpp +102 -0
  669. data/vendor/github.com/zeromq/libzmq/src/windows.hpp +93 -0
  670. data/vendor/github.com/zeromq/libzmq/src/wire.hpp +108 -0
  671. data/vendor/github.com/zeromq/libzmq/src/xpub.cpp +340 -0
  672. data/vendor/github.com/zeromq/libzmq/src/xpub.hpp +126 -0
  673. data/vendor/github.com/zeromq/libzmq/src/xsub.cpp +251 -0
  674. data/vendor/github.com/zeromq/libzmq/src/xsub.hpp +103 -0
  675. data/vendor/github.com/zeromq/libzmq/src/ypipe.hpp +218 -0
  676. data/vendor/github.com/zeromq/libzmq/src/ypipe_base.hpp +54 -0
  677. data/vendor/github.com/zeromq/libzmq/src/ypipe_conflate.hpp +137 -0
  678. data/vendor/github.com/zeromq/libzmq/src/yqueue.hpp +225 -0
  679. data/vendor/github.com/zeromq/libzmq/src/zap_client.cpp +305 -0
  680. data/vendor/github.com/zeromq/libzmq/src/zap_client.hpp +100 -0
  681. data/vendor/github.com/zeromq/libzmq/src/zmq.cpp +1527 -0
  682. data/vendor/github.com/zeromq/libzmq/src/zmq_draft.h +178 -0
  683. data/vendor/github.com/zeromq/libzmq/src/zmq_utils.cpp +318 -0
  684. data/vendor/github.com/zeromq/libzmq/tests/CMakeLists.txt +218 -0
  685. data/vendor/github.com/zeromq/libzmq/tests/README.md +28 -0
  686. data/vendor/github.com/zeromq/libzmq/tests/test_abstract_ipc.cpp +67 -0
  687. data/vendor/github.com/zeromq/libzmq/tests/test_ancillaries.cpp +51 -0
  688. data/vendor/github.com/zeromq/libzmq/tests/test_atomics.cpp +48 -0
  689. data/vendor/github.com/zeromq/libzmq/tests/test_base85.cpp +162 -0
  690. data/vendor/github.com/zeromq/libzmq/tests/test_bind_after_connect_tcp.cpp +97 -0
  691. data/vendor/github.com/zeromq/libzmq/tests/test_bind_src_address.cpp +57 -0
  692. data/vendor/github.com/zeromq/libzmq/tests/test_capabilities.cpp +82 -0
  693. data/vendor/github.com/zeromq/libzmq/tests/test_client_server.cpp +106 -0
  694. data/vendor/github.com/zeromq/libzmq/tests/test_conflate.cpp +86 -0
  695. data/vendor/github.com/zeromq/libzmq/tests/test_connect_delay_tipc.cpp +238 -0
  696. data/vendor/github.com/zeromq/libzmq/tests/test_connect_resolve.cpp +70 -0
  697. data/vendor/github.com/zeromq/libzmq/tests/test_connect_rid.cpp +199 -0
  698. data/vendor/github.com/zeromq/libzmq/tests/test_ctx_destroy.cpp +110 -0
  699. data/vendor/github.com/zeromq/libzmq/tests/test_ctx_options.cpp +204 -0
  700. data/vendor/github.com/zeromq/libzmq/tests/test_dgram.cpp +99 -0
  701. data/vendor/github.com/zeromq/libzmq/tests/test_diffserv.cpp +85 -0
  702. data/vendor/github.com/zeromq/libzmq/tests/test_disconnect_inproc.cpp +136 -0
  703. data/vendor/github.com/zeromq/libzmq/tests/test_filter_ipc.cpp +166 -0
  704. data/vendor/github.com/zeromq/libzmq/tests/test_fork.cpp +99 -0
  705. data/vendor/github.com/zeromq/libzmq/tests/test_getsockopt_memset.cpp +64 -0
  706. data/vendor/github.com/zeromq/libzmq/tests/test_heartbeats.cpp +341 -0
  707. data/vendor/github.com/zeromq/libzmq/tests/test_hwm.cpp +312 -0
  708. data/vendor/github.com/zeromq/libzmq/tests/test_hwm_pubsub.cpp +253 -0
  709. data/vendor/github.com/zeromq/libzmq/tests/test_immediate.cpp +250 -0
  710. data/vendor/github.com/zeromq/libzmq/tests/test_inproc_connect.cpp +536 -0
  711. data/vendor/github.com/zeromq/libzmq/tests/test_invalid_rep.cpp +98 -0
  712. data/vendor/github.com/zeromq/libzmq/tests/test_iov.cpp +157 -0
  713. data/vendor/github.com/zeromq/libzmq/tests/test_ipc_wildcard.cpp +65 -0
  714. data/vendor/github.com/zeromq/libzmq/tests/test_issue_566.cpp +99 -0
  715. data/vendor/github.com/zeromq/libzmq/tests/test_last_endpoint.cpp +66 -0
  716. data/vendor/github.com/zeromq/libzmq/tests/test_many_sockets.cpp +100 -0
  717. data/vendor/github.com/zeromq/libzmq/tests/test_metadata.cpp +134 -0
  718. data/vendor/github.com/zeromq/libzmq/tests/test_monitor.cpp +116 -0
  719. data/vendor/github.com/zeromq/libzmq/tests/test_msg_ffn.cpp +145 -0
  720. data/vendor/github.com/zeromq/libzmq/tests/test_msg_flags.cpp +127 -0
  721. data/vendor/github.com/zeromq/libzmq/tests/test_pair_inproc.cpp +81 -0
  722. data/vendor/github.com/zeromq/libzmq/tests/test_pair_ipc.cpp +60 -0
  723. data/vendor/github.com/zeromq/libzmq/tests/test_pair_tcp.cpp +64 -0
  724. data/vendor/github.com/zeromq/libzmq/tests/test_pair_tipc.cpp +62 -0
  725. data/vendor/github.com/zeromq/libzmq/tests/test_pair_vmci.cpp +68 -0
  726. data/vendor/github.com/zeromq/libzmq/tests/test_poller.cpp +404 -0
  727. data/vendor/github.com/zeromq/libzmq/tests/test_probe_router.cpp +86 -0
  728. data/vendor/github.com/zeromq/libzmq/tests/test_proxy.cpp +486 -0
  729. data/vendor/github.com/zeromq/libzmq/tests/test_proxy_single_socket.cpp +121 -0
  730. data/vendor/github.com/zeromq/libzmq/tests/test_proxy_terminate.cpp +132 -0
  731. data/vendor/github.com/zeromq/libzmq/tests/test_pub_invert_matching.cpp +136 -0
  732. data/vendor/github.com/zeromq/libzmq/tests/test_radio_dish.cpp +191 -0
  733. data/vendor/github.com/zeromq/libzmq/tests/test_rebind_ipc.cpp +84 -0
  734. data/vendor/github.com/zeromq/libzmq/tests/test_reconnect_ivl.cpp +149 -0
  735. data/vendor/github.com/zeromq/libzmq/tests/test_req_correlate.cpp +140 -0
  736. data/vendor/github.com/zeromq/libzmq/tests/test_req_relaxed.cpp +220 -0
  737. data/vendor/github.com/zeromq/libzmq/tests/test_reqrep_device.cpp +153 -0
  738. data/vendor/github.com/zeromq/libzmq/tests/test_reqrep_device_tipc.cpp +146 -0
  739. data/vendor/github.com/zeromq/libzmq/tests/test_reqrep_inproc.cpp +60 -0
  740. data/vendor/github.com/zeromq/libzmq/tests/test_reqrep_ipc.cpp +112 -0
  741. data/vendor/github.com/zeromq/libzmq/tests/test_reqrep_tcp.cpp +336 -0
  742. data/vendor/github.com/zeromq/libzmq/tests/test_reqrep_tipc.cpp +61 -0
  743. data/vendor/github.com/zeromq/libzmq/tests/test_reqrep_vmci.cpp +68 -0
  744. data/vendor/github.com/zeromq/libzmq/tests/test_router_handover.cpp +116 -0
  745. data/vendor/github.com/zeromq/libzmq/tests/test_router_mandatory.cpp +292 -0
  746. data/vendor/github.com/zeromq/libzmq/tests/test_router_mandatory_hwm.cpp +129 -0
  747. data/vendor/github.com/zeromq/libzmq/tests/test_router_mandatory_tipc.cpp +70 -0
  748. data/vendor/github.com/zeromq/libzmq/tests/test_scatter_gather.cpp +84 -0
  749. data/vendor/github.com/zeromq/libzmq/tests/test_security_curve.cpp +792 -0
  750. data/vendor/github.com/zeromq/libzmq/tests/test_security_gssapi.cpp +362 -0
  751. data/vendor/github.com/zeromq/libzmq/tests/test_security_null.cpp +209 -0
  752. data/vendor/github.com/zeromq/libzmq/tests/test_security_plain.cpp +212 -0
  753. data/vendor/github.com/zeromq/libzmq/tests/test_security_zap.cpp +417 -0
  754. data/vendor/github.com/zeromq/libzmq/tests/test_setsockopt.cpp +153 -0
  755. data/vendor/github.com/zeromq/libzmq/tests/test_shutdown_stress.cpp +101 -0
  756. data/vendor/github.com/zeromq/libzmq/tests/test_shutdown_stress_tipc.cpp +95 -0
  757. data/vendor/github.com/zeromq/libzmq/tests/test_socket_null.cpp +82 -0
  758. data/vendor/github.com/zeromq/libzmq/tests/test_sockopt_hwm.cpp +190 -0
  759. data/vendor/github.com/zeromq/libzmq/tests/test_sodium.cpp +98 -0
  760. data/vendor/github.com/zeromq/libzmq/tests/test_spec_dealer.cpp +266 -0
  761. data/vendor/github.com/zeromq/libzmq/tests/test_spec_pushpull.cpp +304 -0
  762. data/vendor/github.com/zeromq/libzmq/tests/test_spec_rep.cpp +169 -0
  763. data/vendor/github.com/zeromq/libzmq/tests/test_spec_req.cpp +266 -0
  764. data/vendor/github.com/zeromq/libzmq/tests/test_spec_router.cpp +217 -0
  765. data/vendor/github.com/zeromq/libzmq/tests/test_srcfd.cpp +127 -0
  766. data/vendor/github.com/zeromq/libzmq/tests/test_stream.cpp +342 -0
  767. data/vendor/github.com/zeromq/libzmq/tests/test_stream_disconnect.cpp +295 -0
  768. data/vendor/github.com/zeromq/libzmq/tests/test_stream_empty.cpp +74 -0
  769. data/vendor/github.com/zeromq/libzmq/tests/test_stream_exceeds_buffer.cpp +124 -0
  770. data/vendor/github.com/zeromq/libzmq/tests/test_stream_timeout.cpp +235 -0
  771. data/vendor/github.com/zeromq/libzmq/tests/test_sub_forward.cpp +109 -0
  772. data/vendor/github.com/zeromq/libzmq/tests/test_sub_forward_tipc.cpp +102 -0
  773. data/vendor/github.com/zeromq/libzmq/tests/test_system.cpp +98 -0
  774. data/vendor/github.com/zeromq/libzmq/tests/test_term_endpoint.cpp +226 -0
  775. data/vendor/github.com/zeromq/libzmq/tests/test_term_endpoint_tipc.cpp +120 -0
  776. data/vendor/github.com/zeromq/libzmq/tests/test_thread_safe.cpp +90 -0
  777. data/vendor/github.com/zeromq/libzmq/tests/test_timeo.cpp +85 -0
  778. data/vendor/github.com/zeromq/libzmq/tests/test_timers.cpp +226 -0
  779. data/vendor/github.com/zeromq/libzmq/tests/test_udp.cpp +133 -0
  780. data/vendor/github.com/zeromq/libzmq/tests/test_unbind_inproc.cpp +43 -0
  781. data/vendor/github.com/zeromq/libzmq/tests/test_unbind_wildcard.cpp +216 -0
  782. data/vendor/github.com/zeromq/libzmq/tests/test_use_fd_ipc.cpp +223 -0
  783. data/vendor/github.com/zeromq/libzmq/tests/test_use_fd_tcp.cpp +238 -0
  784. data/vendor/github.com/zeromq/libzmq/tests/test_xpub_manual.cpp +597 -0
  785. data/vendor/github.com/zeromq/libzmq/tests/test_xpub_nodrop.cpp +118 -0
  786. data/vendor/github.com/zeromq/libzmq/tests/test_xpub_welcome_msg.cpp +81 -0
  787. data/vendor/github.com/zeromq/libzmq/tests/test_zmq_poll_fd.cpp +98 -0
  788. data/vendor/github.com/zeromq/libzmq/tests/testutil.hpp +408 -0
  789. data/vendor/github.com/zeromq/libzmq/tests/testutil_security.hpp +684 -0
  790. data/vendor/github.com/zeromq/libzmq/tools/curve_keygen.cpp +58 -0
  791. data/vendor/github.com/zeromq/libzmq/version.sh +21 -0
  792. metadata +875 -0
@@ -0,0 +1,188 @@
1
+ #! /bin/sh
2
+ # Run ZeroMQ tests, in order. This is extracted from the tests/Makefile
3
+ # which won't run as-is because it relies on libtool building things, and
4
+ # thus creating various libtool files, which don't work well on z/OS
5
+ #
6
+ # noinst_PROGRAMS needs to be kept in sync with tests/Makefile.am, as it
7
+ # defines the order in which tests are run.
8
+ #
9
+ # Written by Ewen McNeill <ewen@imatix.com>, 2014-07-19
10
+ # Updated by Ewen McNeill <ewen@imatix.com>, 2014-07-24
11
+ #---------------------------------------------------------------------------
12
+
13
+ set -e # Stop if a test fails
14
+
15
+ #---------------------------------------------------------------------------
16
+ # Change to tests directory if necessary
17
+
18
+ # Figure out where we are
19
+ BIN_DIR=$(dirname $0)
20
+ if [ -z "${BIN_DIR}" ]; then BIN_DIR="."; fi
21
+ case "${BIN_DIR}" in
22
+ .) BIN_DIR="$(pwd)"; ;;
23
+ /*) ;;
24
+ *) BIN_DIR="$(pwd)/${BIN_DIR}"; ;;
25
+ esac
26
+
27
+ # Locate top of source tree, assuming we're in builds/zos
28
+ TOP="${BIN_DIR}/../.."
29
+ SRCDIR="${TOP}/src"
30
+ TESTDIR="${TOP}/tests"
31
+
32
+ case "$(pwd)" in
33
+ *tests) ;;
34
+ *) echo "Changing to ${TESTDIR}"
35
+ cd "${TESTDIR}"
36
+ ;;
37
+ esac
38
+
39
+ if [ -x "test_system" ]; then
40
+ :
41
+ else
42
+ echo "Run makelibzmq and maketests before runtests" >&2
43
+ exit 1
44
+ fi
45
+
46
+ #---------------------------------------------------------------------------
47
+ # Explanation of tests expected to fail:
48
+ # test_abstract_ipc: Relies on Linux-specific IPC functionality
49
+ # test_fork: Relies on using pthreads _after_ fork, _before_ exec
50
+ # test_diffserv: Needs IP_PROTO, IP_TOS setsockopt(); the headers
51
+ # are present on z/OS UNIX System Services, but
52
+ # fails with:
53
+ # EDC8109I Protocol not available. (./ip.cpp:164)
54
+ # NOTE: not listed as a valid IP setsockopt() option at:
55
+ # http://pic.dhe.ibm.com/infocenter/zos/v2r1/index.jsp?topic=%2Fcom.ibm.zos.v2r1.bpxbd00%2Fsetopt.htm
56
+ #
57
+ XFAIL_TESTS="test_abstract_ipc|test_fork|test_diffserv"
58
+
59
+ # BUILD_TIPC is not defined, so we skip all these tests
60
+ SKIP_TESTS="test_.*_tipc"
61
+
62
+ # Extract list of all test programs from tests/Makefile.am
63
+ #
64
+ # Excluding tests we know will fail because of missing functionality
65
+ #
66
+ noinst_PROGRAMS=$(grep "test_" Makefile.am | egrep -v "_SOURCES|XFAIL" |
67
+ sed 's/noinst_PROGRAMS.* test/test/; s/^ *//; s/ *\\ *$//;' |
68
+ grep -v "${SKIP_TESTS}" | egrep -v "${XFAIL_TESTS}")
69
+ #echo "Found tetsts: ${noinst_PROGRAMS}"
70
+
71
+ # Run tests on command line, or all tests we found
72
+ if [ -n "${1}" ]; then
73
+ TESTS="$*" # Run tests on command line
74
+ else
75
+ TESTS="${noinst_PROGRAMS}"
76
+ fi
77
+
78
+ verbose() {
79
+ echo "Starting: $@" >&2
80
+ "$@"
81
+ }
82
+
83
+ # Uncomment TESTS_ENVIRONMENT=verbose to see "Starting: TEST" messages
84
+ #TESTS_ENVIRONMENT=verbose
85
+ TESTS_ENVIRONMENT=
86
+
87
+ #---------------------------------------------------------------------------
88
+ # Explicitly add SRCDIR into library serach path, to make sure we
89
+ # use our just-built version
90
+ LIBPATH="${SRCDIR}:/lib:/usr/lib"
91
+ export LIBPATH
92
+
93
+ #---------------------------------------------------------------------------
94
+ # check-TESTS: target from tests/Makefile, converted from Make syntax to
95
+ # shell syntax
96
+
97
+ failed=0; all=0; xfail=0; xpass=0; skip=0;
98
+ srcdir=.; export srcdir;
99
+ list="${TESTS}";
100
+ red=""; grn=""; lgn=""; blu=""; std="";
101
+ if test -n "$list"; then
102
+ for tst in $list; do
103
+ if test -f ./$tst; then dir=./;
104
+ elif test -f $tst; then dir=;
105
+ else dir="${srcdir}/"; fi;
106
+ if ${TESTS_ENVIRONMENT} ${dir}$tst; then
107
+ all=`expr $all + 1`;
108
+ case " ${XFAIL_TESTS} " in
109
+ *"$tst"*)
110
+ xpass=`expr $xpass + 1`;
111
+ failed=`expr $failed + 1`;
112
+ col=$red; res=XPASS;
113
+ ;;
114
+ *)
115
+ col=$grn; res=PASS;
116
+ ;;
117
+ esac;
118
+ elif test $? -ne 77; then
119
+ all=`expr $all + 1`;
120
+ case " ${XFAIL_TESTS} " in
121
+ *"$tst"*)
122
+ xfail=`expr $xfail + 1`;
123
+ col=$lgn; res=XFAIL;
124
+ ;;
125
+ *)
126
+ failed=`expr $failed + 1`;
127
+ col=$red; res=FAIL;
128
+ ;;
129
+ esac;
130
+ else
131
+ skip=`expr $skip + 1`;
132
+ col=$blu; res=SKIP;
133
+ fi;
134
+ echo "${col}$res${std}: $tst";
135
+ done;
136
+ if test "$all" -eq 1; then
137
+ tests="test";
138
+ All="";
139
+ else
140
+ tests="tests";
141
+ All="All ";
142
+ fi;
143
+ if test "$failed" -eq 0; then
144
+ if test "$xfail" -eq 0; then
145
+ banner="$All$all $tests passed";
146
+ else
147
+ if test "$xfail" -eq 1; then failures=failure; else failures=failures; fi;
148
+ banner="$All$all $tests behaved as expected ($xfail expected $failures)";
149
+ fi;
150
+ else
151
+ if test "$xpass" -eq 0; then
152
+ banner="$failed of $all $tests failed";
153
+ else
154
+ if test "$xpass" -eq 1; then passes=pass; else passes=passes; fi;
155
+
156
+ banner="$failed of $all $tests did not behave as expected ($xpass unexpected $passes)";
157
+ fi;
158
+ fi;
159
+ dashes="$banner";
160
+ skipped="";
161
+ if test "$skip" -ne 0; then
162
+ if test "$skip" -eq 1; then
163
+ skipped="($skip test was not run)";
164
+ else
165
+ skipped="($skip tests were not run)";
166
+ fi;
167
+ test `echo "$skipped" | wc -c` -le `echo "$banner" | wc -c` ||
168
+ dashes="$skipped"; \
169
+ fi;
170
+ report="";
171
+ if test "$failed" -ne 0 && test -n "${PACKAGE_BUGREPORT}"; then
172
+ report="Please report to ${PACKAGE_BUGREPORT}";
173
+ test `echo "$report" | wc -c` -le `echo "$banner" | wc -c` ||
174
+ dashes="$report";
175
+ fi;
176
+ dashes=`echo "$dashes" | sed s/./=/g`;
177
+ if test "$failed" -eq 0; then
178
+ col="$grn";
179
+ else
180
+ col="$red";
181
+ fi;
182
+ echo "${col}$dashes${std}";
183
+ echo "${col}$banner${std}";
184
+ test -z "$skipped" || echo "${col}$skipped${std}";
185
+ test -z "$report" || echo "${col}$report${std}";
186
+ echo "${col}$dashes${std}";
187
+ test "$failed" -eq 0;
188
+ else :; fi
@@ -0,0 +1,95 @@
1
+ /*
2
+ Copyright (c) 2007-2016 Contributors as noted in the AUTHORS file
3
+
4
+ This file is part of libzmq, the ZeroMQ core engine in C++.
5
+
6
+ libzmq is free software; you can redistribute it and/or modify it under
7
+ the terms of the GNU Lesser General Public License (LGPL) as published
8
+ by the Free Software Foundation; either version 3 of the License, or
9
+ (at your option) any later version.
10
+
11
+ As a special exception, the Contributors give you permission to link
12
+ this library with independent modules to produce an executable,
13
+ regardless of the license terms of these independent modules, and to
14
+ copy and distribute the resulting executable under terms of your choice,
15
+ provided that you also meet, for each linked independent module, the
16
+ terms and conditions of the license of that module. An independent
17
+ module is a module which is not derived from or based on this library.
18
+ If you modify this library, you must extend this exception to your
19
+ version of the library.
20
+
21
+ libzmq is distributed in the hope that it will be useful, but WITHOUT
22
+ ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
23
+ FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public
24
+ License for more details.
25
+
26
+ You should have received a copy of the GNU Lesser General Public License
27
+ along with this program. If not, see <http://www.gnu.org/licenses/>.
28
+ */
29
+
30
+ #include "testutil.hpp"
31
+ #include <unistd.h> // For alarm()
32
+
33
+ const char *address = "tcp://127.0.0.1:6571";
34
+
35
+ #define NUM_MESSAGES 5
36
+ #define TIMEOUT_SECS 5 // Global timeout
37
+
38
+ int main (void)
39
+ {
40
+ setup_test_environment ();
41
+ void *ctx = zmq_ctx_new ();
42
+ assert (ctx);
43
+
44
+ // Create and bind pull socket to receive messages
45
+ void *pull = zmq_socket (ctx, ZMQ_PULL);
46
+ assert (pull);
47
+ int rc = zmq_bind (pull, address);
48
+ assert (rc == 0);
49
+
50
+ int pid = fork ();
51
+ if (pid == 0) {
52
+ // Child process
53
+ // Immediately close parent sockets and context
54
+ zmq_close (pull);
55
+ zmq_ctx_term (ctx);
56
+
57
+ // Create new context, socket, connect and send some messages
58
+ void *child_ctx = zmq_ctx_new ();
59
+ assert (child_ctx);
60
+ void *push = zmq_socket (child_ctx, ZMQ_PUSH);
61
+ assert (push);
62
+ rc = zmq_connect (push, address);
63
+ assert (rc == 0);
64
+ int count;
65
+ for (count = 0; count < NUM_MESSAGES; count++)
66
+ zmq_send (push, "Hello", 5, 0);
67
+
68
+ zmq_close (push);
69
+ zmq_ctx_destroy (child_ctx);
70
+ exit (0);
71
+ }
72
+ else {
73
+ // Parent process
74
+ alarm(TIMEOUT_SECS); // Set upper limit on runtime
75
+
76
+ int count;
77
+ for (count = 0; count < NUM_MESSAGES; count++) {
78
+ char buffer [5];
79
+ int num_bytes = zmq_recv (pull, buffer, 5, 0);
80
+ assert (num_bytes == 5);
81
+ }
82
+ int child_status;
83
+ while (true) {
84
+ rc = waitpid (pid, &child_status, 0);
85
+ if (rc == -1 && errno == EINTR)
86
+ continue;
87
+ assert (rc > 0);
88
+ // Verify the status code of the child was zero
89
+ assert (WEXITSTATUS (child_status) == 0);
90
+ break;
91
+ }
92
+ exit (0);
93
+ }
94
+ return 0;
95
+ }
@@ -0,0 +1,42 @@
1
+ #! /bin/sh
2
+ # Wrapper around IBM C++ compiler to add "-+" to preprocessor calls
3
+ # and thus work with C++ in files other than *.C. Also add -Wc,lang(longlong)
4
+ # with appropriate quoting to avoid shell confusion -- this is difficult
5
+ # to get through both ./configure arguments _and_ Makefile/shell expansion
6
+ # safely so more easily added in this wrapper.
7
+ #
8
+ # Finally, by default will enable xplink for C++ compatibilty and performance
9
+ # (c++ standard library requires xplink enabled).
10
+ #
11
+ # Additional compile/link flags can be passed in as ZCXXFLAGS, eg:
12
+ #
13
+ # For debug: ZXCCFLAGS=-g ...
14
+ #
15
+ # Written by Ewen McNeill <ewen@imatix.com>, 2014-07-18
16
+ # Updated by Ewen McNeill <ewen@imatix.com>, 2014-07-21
17
+ #---------------------------------------------------------------------------
18
+
19
+ CPPFLAGS="-+"
20
+ LONGLONG="-Wc,lang(longlong)"
21
+ XPLINK="${XPLINK:--Wc,xplink -Wl,xplink}"
22
+ CXX="/bin/c++"
23
+ ZCXXFLAGS="${ZCXXFLAGS:-}" # Extra compile/link arguments, eg "-g"
24
+
25
+ # For debugging calling conventions issues
26
+ #echo "Called with: $0 $@" >>/tmp/zc++.log 2>&1
27
+ #exec >>/tmp/zc++.log 2>&1
28
+ #set -x
29
+
30
+ case "$1" in
31
+ -E) exec "${CXX}" "${CPPFLAGS}" "$@"
32
+ ;;
33
+ -o) exec "${CXX}" ${ZCXXFLAGS} "${LONGLONG}" "${CPPFLAGS}" ${XPLINK} "$@"
34
+ ;;
35
+ -c) exec "${CXX}" ${ZCXXFLAGS} "${LONGLONG}" "${CPPFLAGS}" ${XPLINK} "$@"
36
+ ;;
37
+ -L) # Special case for linking via C++, called from linkall
38
+ exec "${CXX}" ${ZCXXFLAGS} ${XPLINK} "$@"
39
+ ;;
40
+ *) exec "${CXX}" ${ZCXXFLAGS} "${LONGLONG}" ${XPLINK} "$@"
41
+ ;;
42
+ esac
@@ -0,0 +1,66 @@
1
+ #!/usr/bin/env bash
2
+
3
+ set -x
4
+ set -e
5
+
6
+ if [ $BUILD_TYPE == "default" ]; then
7
+ mkdir tmp
8
+ BUILD_PREFIX=$PWD/tmp
9
+
10
+ CONFIG_OPTS=()
11
+ CONFIG_OPTS+=("CFLAGS=-g")
12
+ CONFIG_OPTS+=("CPPFLAGS=-I${BUILD_PREFIX}/include")
13
+ CONFIG_OPTS+=("CXXFLAGS=-g")
14
+ CONFIG_OPTS+=("LDFLAGS=-L${BUILD_PREFIX}/lib")
15
+ CONFIG_OPTS+=("PKG_CONFIG_PATH=${BUILD_PREFIX}/lib/pkgconfig")
16
+ CONFIG_OPTS+=("--prefix=${BUILD_PREFIX}")
17
+
18
+ if [ -n "$ADDRESS_SANITIZER" ] && [ "$ADDRESS_SANITIZER" == "enabled" ]; then
19
+ CONFIG_OPTS+=("--enable-address-sanitizer=yes")
20
+ CONFIG_OPTS+=("CXX=g++-6")
21
+ CONFIG_OPTS+=("CC=gcc-6")
22
+ # workaround for linker problem with ASAN options in GCC
23
+ # http://stackoverflow.com/questions/37603238/fsanitize-not-using-gold-linker-in-gcc-6-1
24
+ CONFIG_OPTS+=("LDFLAGS=-fuse-ld=gold")
25
+ fi
26
+
27
+ if [ -z $CURVE ]; then
28
+ CONFIG_OPTS+=("--disable-curve")
29
+ elif [ $CURVE == "libsodium" ]; then
30
+ CONFIG_OPTS+=("--with-libsodium=yes")
31
+
32
+ if ! ((command -v dpkg-query >/dev/null 2>&1 && dpkg-query --list libsodium-dev >/dev/null 2>&1) || \
33
+ (command -v brew >/dev/null 2>&1 && brew ls --versions libsodium >/dev/null 2>&1)); then
34
+ git clone --depth 1 -b stable git://github.com/jedisct1/libsodium.git
35
+ ( cd libsodium; ./autogen.sh; ./configure --prefix=$BUILD_PREFIX; make install)
36
+ fi
37
+ fi
38
+
39
+ if [ -n "$GSSAPI" ] && [ "$GSSAPI" == "enabled" ]; then
40
+ CONFIG_OPTS+=("--with-libgssapi_krb5=yes")
41
+ fi
42
+
43
+ if [ -n "$PGM" ] && [ "$PGM" == "enabled" ]; then
44
+ CONFIG_OPTS+=("--with-pgm=yes")
45
+ fi
46
+
47
+ if [ -n "$NORM" ] && [ "$NORM" == "enabled" ]; then
48
+ CONFIG_OPTS+=("--with-norm=yes")
49
+ fi
50
+
51
+ if [ -z $DRAFT ] || [ $DRAFT == "disabled" ]; then
52
+ CONFIG_OPTS+=("--enable-drafts=no")
53
+ elif [ $DRAFT == "enabled" ]; then
54
+ CONFIG_OPTS+=("--enable-drafts=yes")
55
+ fi
56
+
57
+ # Build and check this project
58
+ (
59
+ ./autogen.sh &&
60
+ ./configure "${CONFIG_OPTS[@]}" &&
61
+ export DISTCHECK_CONFIGURE_FLAGS="${CONFIG_OPTS[@]}" &&
62
+ make VERBOSE=1 -j5 distcheck
63
+ ) || exit 1
64
+ else
65
+ cd ./builds/${BUILD_TYPE} && ./ci_build.sh
66
+ fi
@@ -0,0 +1,34 @@
1
+ #!/usr/bin/env bash
2
+
3
+ # do NOT set -x or it will log the secret tokens!
4
+ set -e
5
+
6
+ if [[ $BUILD_TYPE == "default" && $CURVE == "libsodium" && -z $DRAFT ]]; then
7
+ # Tell travis to deploy all files in dist
8
+ mkdir dist
9
+ export LIBZMQ_DEPLOYMENT=dist/*
10
+ # Move archives to dist
11
+ mv *.tar.gz dist
12
+ mv *.zip dist
13
+ # Generate hash sums
14
+ cd dist
15
+ md5sum *.zip *.tar.gz > MD5SUMS
16
+ sha1sum *.zip *.tar.gz > SHA1SUMS
17
+ cd -
18
+
19
+ # Trigger source run on new tag on OBS.
20
+ # We have to create a temporary branch from the tag and delete it, as it is
21
+ # not possible to edit files on OBS with secure tokens, and it is not
22
+ # possible to dynamically fetch the latest git tag either.
23
+ if [ -n "${GH_TOKEN}" -a -n "${OBS_STABLE_TOKEN}" -a -n "${OBS_DRAFT_TOKEN}" ]; then
24
+ TAG_SHA=$(curl -s -H "Authorization: token ${GH_TOKEN}" -X GET https://api.github.com/repos/zeromq/libzmq/git/refs/tags/${TRAVIS_TAG} | grep -o -P '(?<=sha":\s).*(?=,)')
25
+ curl -H "Authorization: token ${GH_TOKEN}" -X POST --data "{\"ref\":\"refs/heads/tmp_obs_release_branch\",\"sha\":${TAG_SHA}}" https://api.github.com/repos/zeromq/libzmq/git/refs
26
+ curl -H "Authorization: Token ${OBS_STABLE_TOKEN}" -X POST https://api.opensuse.org/trigger/runservice
27
+ curl -H "Authorization: Token ${OBS_DRAFT_TOKEN}" -X POST https://api.opensuse.org/trigger/runservice
28
+ # give some time for the git clone to happen before deleting the temp branch
29
+ sleep 60
30
+ curl -H "Authorization: token ${GH_TOKEN}" -X DELETE https://api.github.com/repos/zeromq/libzmq/git/refs/heads/tmp_obs_release_branch
31
+ fi
32
+ else
33
+ export LIBZMQ_DEPLOYMENT=""
34
+ fi
@@ -0,0 +1,827 @@
1
+ # -*- Autoconf -*-
2
+ # Process this file with autoconf to produce a configure script.
3
+ AC_PREREQ(2.61)
4
+ #
5
+ # The 0MQ version number is extracted from include/zmq.h using
6
+ # the version.sh script. Hence, it should be updated there.
7
+ # The version in git should reflect the *next* version planned.
8
+ #
9
+ AC_INIT([zeromq],[m4_esyscmd([./version.sh])],[zeromq-dev@lists.zeromq.org])
10
+
11
+ AC_CONFIG_AUX_DIR(config)
12
+ AC_CONFIG_MACRO_DIR(config)
13
+ AC_CONFIG_HEADERS([src/platform.hpp])
14
+ AM_INIT_AUTOMAKE(foreign subdir-objects tar-ustar dist-zip)
15
+
16
+ m4_pattern_allow([AC_PROG_CC_C99])
17
+ m4_include([m4/ax_check_compile_flag.m4])
18
+ m4_include([m4/ax_cxx_compile_stdcxx_11.m4])
19
+ m4_include([m4/ax_code_coverage.m4])
20
+ m4_include([m4/ax_valgrind_check.m4])
21
+ m4_ifdef([AM_SILENT_RULES], [AM_SILENT_RULES([yes])])
22
+
23
+ # This lets us use PACKAGE_VERSION in Makefiles
24
+ AC_SUBST(PACKAGE_VERSION)
25
+
26
+ # Libtool -version-info (ABI version)
27
+ #
28
+ # Don't change this unless you know exactly what you're doing and have read and
29
+ # understand:
30
+ # http://www.gnu.org/software/libtool/manual/html_node/Updating-version-info.html
31
+ #
32
+ # Changes:
33
+ #
34
+ # ZeroMQ versions prior to 2.1.0 use 0:0:0 (undefined)
35
+ # ZeroMQ versions 2.1.x: 1:0:0 (ABI version 1)
36
+ # ZeroMQ version 3.0: 2:0:0 (ABI version 2)
37
+ # ZeroMQ version 3.1: 3:0:0 (ABI version 3)
38
+ # ZeroMQ version 4.0: 4:0:0 (ABI version 4)
39
+ # ZeroMQ version 4.1: 5:0:0 (ABI version 5)
40
+ # ZeroMQ version 4.2.0: 6:0:1 (ABI version 5)
41
+ # ZeroMQ version 4.2.1: 6:1:1 (ABI version 5)
42
+ # ZeroMQ version 4.2.2: 6:2:1 (ABI version 5)
43
+ # ZeroMQ version 4.2.3: 6:3:1 (ABI version 5)
44
+ #
45
+ # libzmq -version-info current:revision:age
46
+ LTVER="6:3:1"
47
+ AC_SUBST(LTVER)
48
+
49
+ # Take a copy of original flags
50
+ ZMQ_ORIG_CFLAGS="${CFLAGS:-none}"
51
+ ZMQ_ORIG_CPPFLAGS="${CPPFLAGS:-none}"
52
+ ZMQ_ORIG_CXXFLAGS="${CXXFLAGS:-none}"
53
+
54
+ # Checks for programs.
55
+ AC_PROG_CC
56
+ AX_CHECK_COMPILE_FLAG([-std=gnu11], [CFLAGS+=" -std=gnu11"], [AC_PROG_CC_C99])
57
+ AC_PROG_CXX
58
+ AX_CXX_COMPILE_STDCXX_11([ext], [optional])
59
+ AX_CODE_COVERAGE
60
+ AM_PROG_CC_C_O
61
+ AC_PROG_SED
62
+ AC_PROG_AWK
63
+ PKG_PROG_PKG_CONFIG
64
+ m4_pattern_forbid([^PKG_[A-Z_]+$], [missing some pkg-config macros (pkg-config package)])
65
+
66
+ # Libtool configuration for different targets. See acinclude.m4
67
+ AC_ARG_VAR([XMLTO], [path to xmlto command])
68
+ AC_PATH_PROG([XMLTO], [xmlto])
69
+ AC_ARG_VAR([ASCIIDOC], [path to asciidoc command])
70
+ AC_PATH_PROG([ASCIIDOC], [asciidoc])
71
+ LIBZMQ_CONFIG_LIBTOOL
72
+ AC_LIBTOOL_WIN32_DLL
73
+ AC_PROG_LIBTOOL
74
+ AX_VALGRIND_CHECK
75
+
76
+ # Check whether to build a with debug symbols
77
+ LIBZMQ_CHECK_ENABLE_DEBUG
78
+
79
+ # Check whether to enable code coverage
80
+ LIBZMQ_WITH_GCOV
81
+
82
+ AC_MSG_CHECKING([if TIPC is available and supports nonblocking connect])
83
+
84
+ AC_RUN_IFELSE(
85
+ [AC_LANG_PROGRAM([[
86
+ #include <stdlib.h>
87
+ #include <string.h>
88
+ #include <fcntl.h>
89
+ #include <errno.h>
90
+ #include <sys/socket.h>
91
+ #include <linux/tipc.h>
92
+ ]],[[
93
+ struct sockaddr_tipc topsrv;
94
+ int sd = socket(AF_TIPC, SOCK_SEQPACKET, 0);
95
+ if (sd == -EAFNOSUPPORT) {
96
+ return 1;
97
+ }
98
+ memset(&topsrv, 0, sizeof(topsrv));
99
+ topsrv.family = AF_TIPC;
100
+ topsrv.addrtype = TIPC_ADDR_NAME;
101
+ topsrv.addr.name.name.type = TIPC_TOP_SRV;
102
+ topsrv.addr.name.name.instance = TIPC_TOP_SRV;
103
+ fcntl(sd, F_SETFL, O_NONBLOCK);
104
+ if (connect(sd, (struct sockaddr *)&topsrv, sizeof(topsrv)) != 0) {
105
+ if (errno != EINPROGRESS)
106
+ return -1;
107
+ }
108
+ ]])
109
+ ],
110
+ [libzmq_tipc_support=yes],
111
+ [libzmq_tipc_support=no],
112
+ [libzmq_tipc_support=no])
113
+
114
+ AC_MSG_RESULT([$libzmq_tipc_support])
115
+
116
+ AC_ARG_ENABLE([pedantic],
117
+ [AS_HELP_STRING([--disable-pedantic], [disable pedantic compiler checks [default=enabled]])],
118
+ [libzmq_pedantic=$enableval], [libzmq_pedantic=yes])
119
+
120
+ AC_ARG_WITH([militant],
121
+ [AS_HELP_STRING([--with-militant],
122
+ [enable militant API assertions])],
123
+ [zmq_militant="yes"],
124
+ [])
125
+
126
+ if test "x$zmq_militant" = "xyes"; then
127
+ AC_DEFINE(ZMQ_ACT_MILITANT, 1, [Enable militant API assertions])
128
+ fi
129
+
130
+ # Memory mis-use detection
131
+ AC_MSG_CHECKING([whether to enable ASan])
132
+ AC_ARG_ENABLE(address-sanitizer, [AS_HELP_STRING([--enable-address-sanitizer=yes/no],
133
+ [Build with GCC Address Sanitizer instrumentation])],
134
+ [ZMQ_ASAN="$enableval"])
135
+
136
+ if test "x${ZMQ_ASAN}" == "xyes"; then
137
+ CFLAGS="${CFLAGS} -fsanitize=address"
138
+ CXXFLAGS="${CXXFLAGS} -fsanitize=address"
139
+
140
+ AM_CONDITIONAL(ENABLE_ASAN, true)
141
+ AC_MSG_RESULT([yes])
142
+ else
143
+ AM_CONDITIONAL(ENABLE_ASAN, false)
144
+ AC_MSG_RESULT([no])
145
+ fi
146
+
147
+ # By default compiling with -Werror except OSX and on Solaris when building
148
+ # with libsodium.
149
+ AC_ARG_ENABLE([Werror],
150
+ [AS_HELP_STRING([--disable-Werror], [disable Werror compiler flag [default=enabled]])],
151
+ [libzmq_werror=$enableval], [libzmq_werror=yes])
152
+
153
+ # By default use DSO visibility
154
+ libzmq_dso_visibility="yes"
155
+
156
+ # Platform specific checks
157
+ libzmq_on_mingw="no"
158
+ libzmq_on_cygwin="no"
159
+ libzmq_on_android="no"
160
+ libzmq_on_linux="no"
161
+ libzmq_on_gnu="no"
162
+
163
+ # Set some default features required by ZeroMQ code
164
+ CPPFLAGS="-D_REENTRANT -D_THREAD_SAFE -Wno-long-long $CPPFLAGS"
165
+
166
+ # Will be used to add flags to pkg-config useful when apps want to statically link
167
+ PKGCFG_LIBS_PRIVATE=""
168
+
169
+ # For host type checks
170
+ AC_CANONICAL_HOST
171
+
172
+ # OS-specific tests
173
+ case "${host_os}" in
174
+ *linux*)
175
+ # Define on Linux to enable all library features. Define if using a gnu compiler
176
+ if test "x$GXX" = "xyes"; then
177
+ CPPFLAGS="-D_GNU_SOURCE $CPPFLAGS"
178
+ fi
179
+ AC_DEFINE(ZMQ_HAVE_LINUX, 1, [Have Linux OS])
180
+ libzmq_on_linux="yes"
181
+
182
+ # dladdr/dlopen is in libdl on glibc
183
+ AC_SEARCH_LIBS([dladdr], [dl dld], [], [
184
+ AC_MSG_ERROR([unable to find the dladdr() function])
185
+ ])
186
+
187
+ if test "x$libzmq_tipc_support" = "xyes"; then
188
+ AC_DEFINE(ZMQ_HAVE_TIPC, 1, [Have TIPC support])
189
+ fi
190
+ case "${host_os}" in
191
+ *android*)
192
+ AC_DEFINE(ZMQ_HAVE_ANDROID, 1, [Have Android OS])
193
+ libzmq_on_android="yes"
194
+ ;;
195
+ esac
196
+ ;;
197
+ *solaris*)
198
+ # Define on Solaris to enable all library features
199
+ CPPFLAGS="-Wno-sign-compare -D_PTHREADS $CPPFLAGS"
200
+ AC_DEFINE(ZMQ_HAVE_SOLARIS, 1, [Have Solaris OS])
201
+ AC_CHECK_LIB(socket, socket)
202
+ AC_CHECK_LIB(nsl, gethostbyname)
203
+ AC_MSG_CHECKING([whether atomic operations can be used])
204
+ AC_COMPILE_IFELSE([AC_LANG_PROGRAM(
205
+ [[#include <atomic.h>]],
206
+ [[uint32_t value;
207
+ atomic_cas_32 (&value, 0, 0);
208
+ return 0;]])],
209
+ [solaris_has_atomic=yes],
210
+ [solaris_has_atomic=no])
211
+ AC_MSG_RESULT([$solaris_has_atomic])
212
+ # Solaris 8 does not have atomic operations exported to user space.
213
+ if test "x$solaris_has_atomic" = "xno"; then
214
+ AC_DEFINE(ZMQ_FORCE_MUTEXES, 1, [Force to use mutexes])
215
+ fi
216
+ ;;
217
+ *freebsd*)
218
+ # Define on FreeBSD to enable all library features
219
+ CPPFLAGS="-D__BSD_VISIBLE $CPPFLAGS"
220
+ AC_DEFINE(ZMQ_HAVE_FREEBSD, 1, [Have FreeBSD OS])
221
+ ;;
222
+ *dragonfly*)
223
+ CPPFLAGS="-D__BSD_VISIBLE $CPPFLAGS"
224
+ AC_DEFINE(ZMQ_HAVE_DRAGONFLY, 1, [Have DragonFly OS])
225
+ ;;
226
+ *darwin*)
227
+ # Define on Darwin to enable all library features
228
+ CPPFLAGS="-D_DARWIN_C_SOURCE $CPPFLAGS"
229
+ libzmq_pedantic="no"
230
+ libzmq_werror="no"
231
+ AC_DEFINE(ZMQ_HAVE_OSX, 1, [Have DarwinOSX OS])
232
+ AC_LANG_PUSH([C++])
233
+ LIBZMQ_CHECK_LANG_FLAG_PREPEND([-Wno-uninitialized])
234
+ AC_LANG_POP([C++])
235
+ ;;
236
+ *haiku*)
237
+ AC_DEFINE(ZMQ_HAVE_HAIKU, 1, [Have Haiku OS])
238
+ AC_CHECK_LIB(network, socket)
239
+ ;;
240
+ *netbsd*)
241
+ # Define on NetBSD to enable all library features
242
+ CPPFLAGS="-D_NETBSD_SOURCE $CPPFLAGS"
243
+ AC_DEFINE(ZMQ_HAVE_NETBSD, 1, [Have NetBSD OS])
244
+ # NetBSD 5.0 and newer provides atomic operations but we can
245
+ # only use these on systems where PR #42842 has been fixed so
246
+ # we must try and link a test program using C++.
247
+ libzmq_netbsd_has_atomic=no
248
+ AC_MSG_CHECKING([whether atomic operations can be used])
249
+ AC_LANG_PUSH([C++])
250
+ AC_LINK_IFELSE([AC_LANG_PROGRAM(
251
+ [[#include <atomic.h>]],
252
+ [[uint32_t value;
253
+ atomic_cas_32 (&value, 0, 0);
254
+ return 0;]])],
255
+ [libzmq_netbsd_has_atomic=yes],
256
+ [libzmq_netbsd_has_atomic=no])
257
+ AC_LANG_POP([C++])
258
+ AC_MSG_RESULT([$libzmq_netbsd_has_atomic])
259
+ if test "x$libzmq_netbsd_has_atomic" = "xno"; then
260
+ AC_DEFINE(ZMQ_FORCE_MUTEXES, 1, [Force to use mutexes])
261
+ fi
262
+ ;;
263
+ *openbsd*|*bitrig*)
264
+ # Define on OpenBSD to enable all library features
265
+ CPPFLAGS="-D_BSD_SOURCE $CPPFLAGS"
266
+ AC_DEFINE(ZMQ_HAVE_OPENBSD, 1, [Have OpenBSD OS])
267
+ ;;
268
+ *nto-qnx*)
269
+ libzmq_pedantic="no"
270
+ AC_DEFINE(ZMQ_HAVE_QNXNTO, 1, [Have QNX Neutrino OS])
271
+ AC_CHECK_LIB(socket, socket)
272
+ ;;
273
+ *aix*)
274
+ AC_DEFINE(ZMQ_HAVE_AIX, 1, [Have AIX OS])
275
+ ;;
276
+ *hpux*)
277
+ # Define on HP-UX to enable all library features
278
+ CPPFLAGS="-D_POSIX_C_SOURCE=200112L $CPPFLAGS"
279
+ AC_DEFINE(ZMQ_HAVE_HPUX, 1, [Have HPUX OS])
280
+ LIBZMQ_CHECK_LANG_FLAG_PREPEND([-Ae])
281
+ AC_CHECK_FUNCS(gethrtime)
282
+ ;;
283
+ *mingw*|*msys*)
284
+ AC_DEFINE(ZMQ_HAVE_WINDOWS, 1, [Have Windows OS])
285
+ AC_DEFINE(ZMQ_HAVE_MINGW, 1, [Have MinGW])
286
+ AC_CHECK_HEADERS(windows.h)
287
+ AC_CHECK_LIB(ws2_32, main, ,
288
+ [AC_MSG_ERROR([cannot link with ws2_32.dll.])])
289
+ AC_CHECK_LIB(rpcrt4, main, ,
290
+ [AC_MSG_ERROR([cannot link with rpcrt4.dll.])])
291
+ AC_CHECK_LIB(iphlpapi, main, ,
292
+ [AC_MSG_ERROR([cannot link with iphlpapi.dll.])])
293
+ libzmq_on_mingw="yes"
294
+ libzmq_dso_visibility="no"
295
+
296
+ if test "x$enable_static" = "xyes"; then
297
+ CPPFLAGS="-DZMQ_STATIC $CPPFLAGS"
298
+ PKGCFG_LIBS_PRIVATE="$PKGCFG_LIBS_PRIVATE -liphlpapi"
299
+ fi
300
+ # Set FD_SETSIZE to 16384
301
+ CPPFLAGS=" -DFD_SETSIZE=16384 $CPPFLAGS"
302
+ ;;
303
+ *cygwin*)
304
+ # Define on Cygwin to enable all library features
305
+ CPPFLAGS="-D_GNU_SOURCE $CPPFLAGS"
306
+ AC_DEFINE(ZMQ_HAVE_CYGWIN, 1, [Have Cygwin])
307
+ libzmq_on_cygwin="yes"
308
+ libzmq_dso_visibility="no"
309
+ if test "x$enable_static" = "xyes"; then
310
+ AC_MSG_ERROR([Building static libraries is not supported under Cygwin])
311
+ fi
312
+ ;;
313
+ gnu*)
314
+ # Define on GNU/Hurd to enable all library features. Define if using a gnu compiler
315
+ if test "x$GXX" = "xyes"; then
316
+ CPPFLAGS="-D_GNU_SOURCE $CPPFLAGS"
317
+ fi
318
+ AC_DEFINE(ZMQ_HAVE_GNU, 1, [Have GNU/Hurd OS])
319
+ libzmq_on_gnu="yes"
320
+ AC_CHECK_LIB(rt, sem_init)
321
+ ;;
322
+ *)
323
+ AC_MSG_ERROR([unsupported system: ${host_os}.])
324
+ ;;
325
+ esac
326
+
327
+ # Checks for libraries
328
+ AC_CHECK_LIB([pthread], [pthread_create])
329
+ AC_CHECK_LIB([rt], [clock_gettime])
330
+
331
+ #
332
+ # Check if the compiler supports -fvisibility=hidden flag. MinGW uses __declspec
333
+ #
334
+ if test "x$libzmq_dso_visibility" = "xyes"; then
335
+ AC_LANG_PUSH([C++])
336
+ LIBZMQ_CHECK_LANG_VISIBILITY([LIBZMQ_EXTRA_CXXFLAGS="$libzmq_cv_[]_AC_LANG_ABBREV[]_visibility_flag ${LIBZMQ_EXTRA_CXXFLAGS}"])
337
+ AC_LANG_POP([C++])
338
+ fi
339
+
340
+ # CPU-specific optimizations
341
+ case "${host_cpu}" in
342
+ *sparc64*)
343
+ AC_LANG_PUSH([C++])
344
+ LIBZMQ_CHECK_LANG_FLAG_PREPEND([-mcpu=v9])
345
+ AC_LANG_POP([C++])
346
+ ;;
347
+ *)
348
+ ;;
349
+ esac
350
+
351
+ # Check whether to build docs / install man pages
352
+ LIBZMQ_CHECK_DOC_BUILD
353
+
354
+ # Check polling system, set appropriate macro in src/platform.hpp
355
+ LIBZMQ_CHECK_POLLER
356
+
357
+ # Checks for header files.
358
+ AC_HEADER_STDC
359
+ AC_CHECK_HEADERS(\
360
+ errno.h \
361
+ time.h \
362
+ unistd.h \
363
+ limits.h \
364
+ stddef.h \
365
+ stdlib.h \
366
+ string.h \
367
+ arpa/inet.h \
368
+ netinet/tcp.h \
369
+ netinet/in.h \
370
+ sys/socket.h \
371
+ sys/time.h)
372
+
373
+ # Check if we have ifaddrs.h header file.
374
+ AC_CHECK_HEADERS(ifaddrs.h, [AC_DEFINE(ZMQ_HAVE_IFADDRS, 1, [Have ifaddrs.h header.])])
375
+
376
+ # Check if we have sys/uio.h header file.
377
+ AC_CHECK_HEADERS(sys/uio.h, [AC_DEFINE(ZMQ_HAVE_UIO, 1, [Have uio.h header.])])
378
+
379
+ # Force not to use eventfd
380
+ AC_ARG_ENABLE([eventfd],
381
+ [AS_HELP_STRING([--disable-eventfd], [disable eventfd [default=enabled]])],
382
+ [zmq_enable_eventfd=$enableval],
383
+ [zmq_enable_eventfd=yes])
384
+
385
+ if test "x$zmq_enable_eventfd" = "xyes"; then
386
+ # Check if we have eventfd.h header file.
387
+ AC_CHECK_HEADERS(sys/eventfd.h, [
388
+ AC_DEFINE(ZMQ_HAVE_EVENTFD, 1, [Have eventfd extension])
389
+ LIBZMQ_CHECK_EVENTFD_CLOEXEC([
390
+ AC_DEFINE([ZMQ_HAVE_EVENTFD_CLOEXEC],
391
+ [1],
392
+ [Whether EFD_CLOEXEC is defined and functioning.])
393
+ ])
394
+ ])
395
+ fi
396
+
397
+ # Conditionally build performance measurement tools
398
+ AC_ARG_ENABLE([perf],
399
+ [AS_HELP_STRING([--disable-perf], [don't build performance measurement tools [default=build]])],
400
+ [zmq_enable_perf=$enableval],
401
+ [zmq_enable_perf=yes])
402
+
403
+ AM_CONDITIONAL(ENABLE_PERF, test "x$zmq_enable_perf" = "xyes")
404
+
405
+ # Conditionally build curve key generation tool
406
+ AC_ARG_ENABLE([curve-keygen],
407
+ [AS_HELP_STRING([--disable-curve-keygen], [don't build curve-keygen tool [default=build]])],
408
+ [zmq_enable_curve_keygen=$enableval],
409
+ [zmq_enable_curve_keygen=yes])
410
+
411
+ # Use c++ in subsequent tests
412
+ AC_LANG_PUSH(C++)
413
+
414
+ AC_CHECK_DECLS([SO_PEERCRED],
415
+ [AC_DEFINE(ZMQ_HAVE_SO_PEERCRED, 1, [Have SO_PEERCRED socket option])],
416
+ [],
417
+ [#include <sys/socket.h>])
418
+
419
+ AC_CHECK_DECLS([LOCAL_PEERCRED],
420
+ [AC_DEFINE(ZMQ_HAVE_LOCAL_PEERCRED, 1, [Have LOCAL_PEERCRED socket option])],
421
+ [],
422
+ [#include <sys/socket.h>])
423
+
424
+ AM_CONDITIONAL(HAVE_IPC_PEERCRED, test "x$ac_cv_have_decl_SO_PEERCRED" = "xyes" || test "x$ac_cv_have_decl_LOCAL_PEERCRED" = "xyes")
425
+
426
+ AC_HEADER_STDBOOL
427
+ AC_C_CONST
428
+ AC_C_INLINE
429
+
430
+ # Checks for typedefs, structures, and compiler characteristics.
431
+ if test "x$libzmq_cv_[]_AC_LANG_ABBREV[]_intel_compiler" = "xyes"; then
432
+ dnl 279: controlling expression is constant
433
+ dnl Fixes build with ICC 12.x
434
+ LIBZMQ_CHECK_WITH_FLAG([-wd279], [AC_TYPE_SIZE_T])
435
+ LIBZMQ_CHECK_WITH_FLAG([-wd279], [AC_TYPE_SSIZE_T])
436
+ else
437
+ AC_TYPE_SIZE_T
438
+ AC_TYPE_SSIZE_T
439
+ fi
440
+
441
+ AC_HEADER_TIME
442
+ AC_TYPE_UINT32_T
443
+ AC_C_VOLATILE
444
+
445
+ # build using libgssapi_krb5
446
+ AC_ARG_WITH([libgssapi_krb5], [AS_HELP_STRING([--with-libgssapi_krb5],
447
+ [require libzmq build with libgssapi_krb5 [default=no]])],
448
+ [require_libgssapi_krb5_ext=$withval],
449
+ [require_libgssapi_krb5_ext=no])
450
+
451
+ # conditionally require libgssapi_krb5
452
+ if test "x$require_libgssapi_krb5_ext" != "xno"; then
453
+ PKG_CHECK_MODULES([gssapi_krb5], [krb5-gssapi], [], [
454
+ AC_CHECK_HEADERS(gssapi/gssapi_generic.h)
455
+ AC_SEARCH_LIBS([gss_init_sec_context], [gssapi_krb5 gssapi],
456
+ AC_DEFINE(HAVE_LIBGSSAPI_KRB5, [1], [Enabled GSSAPI security]),
457
+ AC_MSG_ERROR(libgssapi_krb5 is needed for GSSAPI security))
458
+ ])
459
+ fi
460
+ AM_CONDITIONAL(BUILD_GSSAPI, test "x$require_libgssapi_krb5_ext" != "xno")
461
+
462
+ # Select curve encryption library, defaults to tweetnacl
463
+ # To use libsodium instead, use --with-libsodium (must be installed)
464
+ # To disable curve, use --disable-curve
465
+
466
+ AC_ARG_WITH([libsodium],
467
+ [AS_HELP_STRING([--with-libsodium], [use libsodium instead of built-in tweetnacl [default=no]])])
468
+
469
+ AS_IF([test "x$with_libsodium" = "xyes"], [
470
+ PKG_CHECK_MODULES([sodium], [libsodium], [libsodium_found=yes], [
471
+ AC_MSG_ERROR(libsodium is not installed. Install it, then run configure again)
472
+ ])
473
+ ])
474
+
475
+ AC_ARG_ENABLE([curve],
476
+ [AS_HELP_STRING([--disable-curve], [disable CURVE security [default=no]])])
477
+
478
+ if test "x$enable_curve" = "xno"; then
479
+ curve_library=""
480
+ AC_MSG_NOTICE([CURVE security is disabled])
481
+
482
+ elif test "x$with_libsodium" = "xyes"; then
483
+ AC_MSG_NOTICE([Using libsodium for CURVE security])
484
+ AC_DEFINE(ZMQ_HAVE_CURVE, [1], [Using curve encryption])
485
+ AC_DEFINE(ZMQ_USE_LIBSODIUM, [1], [Using libsodium for curve encryption])
486
+ curve_library="libsodium"
487
+ enable_curve="yes"
488
+
489
+ # On Solaris, libsodium depends on libssp
490
+ case "${host_os}" in
491
+ *solaris*)
492
+ LDFLAGS="-lssp $LDFLAGS"
493
+ libzmq_pedantic="no"
494
+ libzmq_werror="no"
495
+ ;;
496
+ esac
497
+
498
+ PKGCFG_LIBS_PRIVATE="$PKGCFG_LIBS_PRIVATE $sodium_LIBS"
499
+ else
500
+ AC_MSG_NOTICE([Using tweetnacl for CURVE security])
501
+ AC_DEFINE(ZMQ_HAVE_CURVE, [1], [Using curve encryption])
502
+ AC_DEFINE(ZMQ_USE_TWEETNACL, [1], [Using tweetnacl for curve encryption])
503
+ curve_library="tweetnacl"
504
+ enable_curve="yes"
505
+ fi
506
+
507
+ AM_CONDITIONAL(ENABLE_CURVE_KEYGEN, test "x$enable_curve" = "xyes" -a "x$zmq_enable_curve_keygen" = "xyes")
508
+
509
+ AM_CONDITIONAL(USE_LIBSODIUM, test "$curve_library" = "libsodium")
510
+ AM_CONDITIONAL(USE_TWEETNACL, test "$curve_library" = "tweetnacl")
511
+ AM_CONDITIONAL(HAVE_CURVE, test "x$curve_library" != "x")
512
+
513
+ # build using pgm
514
+ have_pgm_library="no"
515
+
516
+ AC_ARG_WITH([pgm], [AS_HELP_STRING([--with-pgm],
517
+ [build libzmq with PGM extension. Requires pkg-config [default=no]])],
518
+ [with_pgm_ext=$withval],
519
+ [with_pgm_ext=no])
520
+
521
+ # conditionally require pgm package
522
+ if test "x$with_pgm_ext" != "xno"; then
523
+ PKG_CHECK_MODULES([pgm], [openpgm-5.2 >= 5.2], [ have_pgm_library="yes" ],
524
+ [PKG_CHECK_MODULES([pgm], [openpgm-5.1 >= 5.1],
525
+ [ have_pgm_library="yes" ])])
526
+ fi
527
+
528
+ if test "x$have_pgm_library" = "xyes"; then
529
+ AC_DEFINE(ZMQ_HAVE_OPENPGM, [1], [Have OpenPGM extension])
530
+ PKGCFG_LIBS_PRIVATE="$PKGCFG_LIBS_PRIVATE $pgm_LIBS"
531
+ fi
532
+
533
+ AM_CONDITIONAL(HAVE_PGM, test "x$have_pgm_library" = "xyes")
534
+
535
+
536
+ # This uses "--with-norm" to point to the "norm" directory
537
+ # for "norm/include" and "norm/lib"
538
+ #(if "--with-norm=yes" is given, then assume installed on system)
539
+ AC_ARG_WITH([norm],
540
+ [AS_HELP_STRING([--with-norm],
541
+ [build libzmq with NORM protocol extension, optionally specifying norm path [default=no]])],
542
+ [with_norm_ext=$withval],
543
+ [with_norm_ext=no])
544
+
545
+ AC_MSG_CHECKING("with_norm_ext = ${with_norm_ext}")
546
+
547
+ if test "x$with_norm_ext" != "xno"; then
548
+ PKG_CHECK_MODULES([norm], [norm], [ have_norm_library="yes" ], [
549
+ AC_MSG_RESULT([yes])
550
+
551
+ norm_LIBS=""
552
+ norm_CFLAGS=""
553
+ if test "x$with_norm_ext" != "xyes"; then
554
+ norm_path="${with_norm_ext}"
555
+ norm_CFLAGS="${norm_CFLAGS} -I${norm_path}/include"
556
+ norm_LIBS="${norm_LIBS} -L${norm_path}/lib"
557
+ fi
558
+ norm_LIBS="${norm_LIBS} -lnorm"
559
+ have_norm_library="yes"
560
+ AC_SUBST(norm_LIBS)
561
+ AC_SUBST(norm_CFLAGS)
562
+ ])
563
+ else
564
+ AC_MSG_RESULT([no])
565
+ fi
566
+ if test "x$have_norm_library" = "xyes"; then
567
+ AC_DEFINE(ZMQ_HAVE_NORM, [1], [Have NORM protocol extension])
568
+ PKGCFG_LIBS_PRIVATE="$PKGCFG_LIBS_PRIVATE $norm_LIBS"
569
+ fi
570
+ AM_CONDITIONAL(HAVE_NORM, test "x$have_norm_library" = "xyes")
571
+
572
+ # build using vmci
573
+ have_vmci_library="no"
574
+
575
+ AC_ARG_WITH([vmci], [AS_HELP_STRING([--with-vmci],
576
+ [build libzmq with VMCI transport [default=no]])],
577
+ [have_vmci_ext=$withval],
578
+ [have_vmci_ext=no])
579
+
580
+ if test "x$have_vmci_ext" != "xno"; then
581
+ AC_DEFINE(ZMQ_HAVE_VMCI, 1, [Have VMCI transport])
582
+
583
+ if test "x$have_vmci_ext" != "xyes"; then
584
+ vmci_path="${have_vmci_ext}"
585
+ LIBZMQ_VMCI_CXXFLAGS="-I${vmci_path}"
586
+ LIBZMQ_VMCI_LDFLAGS="-I${vmci_path}"
587
+ LIBZMQ_EXTRA_CXXFLAGS="${LIBZMQ_VMCI_CXXFLAGS} ${LIBZMQ_EXTRA_CXXFLAGS}"
588
+ LIBZMQ_EXTRA_LDFLAGS="${LIBZMQ_VMCI_LDFLAGS} ${LIBZMQ_EXTRA_LDFLAGS}"
589
+ fi
590
+ fi
591
+
592
+ AM_CONDITIONAL(HAVE_VMCI, test "x$have_vmci_ext" != "xno")
593
+
594
+ # Set -Wall, -Werror and -pedantic
595
+ AC_LANG_PUSH([C++])
596
+
597
+ # Check how to enable -Wall
598
+ LIBZMQ_LANG_WALL([CPPFLAGS="$libzmq_cv_[]_AC_LANG_ABBREV[]_wall_flag $CPPFLAGS"])
599
+
600
+ if test "x$libzmq_werror" = "xyes" -a "x$libzmq_cv_[]_AC_LANG_ABBREV[]_sun_studio_compiler" != "xyes"; then
601
+ LIBZMQ_LANG_WERROR([CPPFLAGS="$libzmq_cv_[]_AC_LANG_ABBREV[]_werror_flag $CPPFLAGS"])
602
+ fi
603
+
604
+ if test "x$libzmq_pedantic" = "xyes"; then
605
+ LIBZMQ_LANG_STRICT([CPPFLAGS="$libzmq_cv_[]_AC_LANG_ABBREV[]_strict_flag $CPPFLAGS"])
606
+ fi
607
+ AC_LANG_POP([C++])
608
+
609
+ AM_CONDITIONAL(BUILD_TIPC, test "x$libzmq_tipc_support" = "xyes")
610
+ AM_CONDITIONAL(ON_MINGW, test "x$libzmq_on_mingw" = "xyes")
611
+ AM_CONDITIONAL(ON_CYGWIN, test "x$libzmq_on_cygwin" = "xyes")
612
+ AM_CONDITIONAL(ON_ANDROID, test "x$libzmq_on_android" = "xyes")
613
+ AM_CONDITIONAL(ON_LINUX, test "x$libzmq_on_linux" = "xyes")
614
+ AM_CONDITIONAL(ON_GNU, test "x$libzmq_on_gnu" = "xyes")
615
+
616
+ # Check for __atomic_Xxx compiler intrinsics
617
+ AC_LANG_PUSH([C++])
618
+ LIBZMQ_CHECK_ATOMIC_INTRINSICS([
619
+ AC_DEFINE([ZMQ_HAVE_ATOMIC_INTRINSICS],
620
+ [1],
621
+ [Whether compiler has __atomic_Xxx intrinsics.])
622
+ ])
623
+ AC_LANG_POP([C++])
624
+
625
+ # Checks for library functions.
626
+ AC_TYPE_SIGNAL
627
+ AC_CHECK_FUNCS(perror gettimeofday clock_gettime memset socket getifaddrs freeifaddrs fork posix_memalign mkdtemp accept4)
628
+ AC_CHECK_HEADERS([alloca.h])
629
+
630
+ # pthread_setname is non-posix, and there are at least 4 different implementations
631
+ AC_MSG_CHECKING([whether signature of pthread_setname_np() has 1 argument])
632
+ AC_COMPILE_IFELSE(
633
+ [AC_LANG_PROGRAM(
634
+ [[#include <pthread.h>]],
635
+ [[pthread_setname_np ("foo"); return 0;]])
636
+ ],[
637
+ AC_MSG_RESULT([yes])
638
+ AC_DEFINE(ZMQ_HAVE_PTHREAD_SETNAME_1, [1],
639
+ [Whether pthread_setname_np() has 1 argument])
640
+ ],[
641
+ AC_MSG_RESULT([no])
642
+ ])
643
+ AC_MSG_CHECKING([whether signature of pthread_setname_np() has 2 arguments])
644
+ AC_COMPILE_IFELSE(
645
+ [AC_LANG_PROGRAM(
646
+ [[#include <pthread.h>]],
647
+ [[pthread_setname_np (pthread_self (), "foo"); return 0;]])
648
+ ],[
649
+ AC_MSG_RESULT([yes])
650
+ AC_DEFINE(ZMQ_HAVE_PTHREAD_SETNAME_2, [1],
651
+ [Whether pthread_setname_np() has 2 arguments])
652
+ ],[
653
+ AC_MSG_RESULT([no])
654
+ ])
655
+ AC_MSG_CHECKING([whether signature of pthread_setname_np() has 3 arguments])
656
+ AC_COMPILE_IFELSE(
657
+ [AC_LANG_PROGRAM(
658
+ [[#include <pthread.h>]],
659
+ [[pthread_setname_np (pthread_self(), "foo", (void *)0); return 0;]])
660
+ ],[
661
+ AC_MSG_RESULT([yes])
662
+ AC_DEFINE(ZMQ_HAVE_PTHREAD_SETNAME_3, [1],
663
+ [Whether pthread_setname_np() has 3 arguments])
664
+ ],[
665
+ AC_MSG_RESULT([no])
666
+ ])
667
+ AC_MSG_CHECKING([whether pthread_set_name_np() exists])
668
+ AC_COMPILE_IFELSE(
669
+ [AC_LANG_PROGRAM(
670
+ [[#include <pthread.h>]],
671
+ [[pthread_set_name_np (pthread_self(), "foo"); return 0;]])
672
+ ],[
673
+ AC_MSG_RESULT([yes])
674
+ AC_DEFINE(ZMQ_HAVE_PTHREAD_SET_NAME, [1],
675
+ [Whether pthread_set_name_np() exists])
676
+ ],[
677
+ AC_MSG_RESULT([no])
678
+ ])
679
+
680
+
681
+ # pthread_setaffinity_np is non-posix:
682
+ AC_MSG_CHECKING([whether pthread_setaffinity_np() exists])
683
+ AC_COMPILE_IFELSE(
684
+ [AC_LANG_PROGRAM(
685
+ [[#include <pthread.h>]],
686
+ [[cpu_set_t test; pthread_setaffinity_np (pthread_self(), sizeof(cpu_set_t), &test); return 0;]])
687
+ ],[
688
+ AC_MSG_RESULT([yes])
689
+ AC_DEFINE(ZMQ_HAVE_PTHREAD_SET_AFFINITY, [1],
690
+ [Whether pthread_setaffinity_np() exists])
691
+ ],[
692
+ AC_MSG_RESULT([no])
693
+ ])
694
+
695
+
696
+ LIBZMQ_CHECK_SOCK_CLOEXEC([
697
+ AC_DEFINE([ZMQ_HAVE_SOCK_CLOEXEC],
698
+ [1],
699
+ [Whether SOCK_CLOEXEC is defined and functioning.])
700
+ ])
701
+
702
+ LIBZMQ_CHECK_O_CLOEXEC([
703
+ AC_DEFINE([ZMQ_HAVE_O_CLOEXEC],
704
+ [1],
705
+ [Whether O_CLOEXEC is defined and functioning.])
706
+ ])
707
+
708
+ LIBZMQ_CHECK_SO_BINDTODEVICE([
709
+ AC_DEFINE([ZMQ_HAVE_SO_BINDTODEVICE],
710
+ [1],
711
+ [Whether SO_BINDTODEVICE is supported.])
712
+ ])
713
+
714
+ # TCP keep-alives Checks.
715
+ LIBZMQ_CHECK_SO_KEEPALIVE([
716
+ AC_DEFINE([ZMQ_HAVE_SO_KEEPALIVE],
717
+ [1],
718
+ [Whether SO_KEEPALIVE is supported.])
719
+ ])
720
+
721
+ LIBZMQ_CHECK_TCP_KEEPCNT([
722
+ AC_DEFINE([ZMQ_HAVE_TCP_KEEPCNT],
723
+ [1],
724
+ [Whether TCP_KEEPCNT is supported.])
725
+ ])
726
+
727
+ LIBZMQ_CHECK_TCP_KEEPIDLE([
728
+ AC_DEFINE([ZMQ_HAVE_TCP_KEEPIDLE],
729
+ [1],
730
+ [Whether TCP_KEEPIDLE is supported.])
731
+ ])
732
+
733
+ LIBZMQ_CHECK_TCP_KEEPINTVL([
734
+ AC_DEFINE([ZMQ_HAVE_TCP_KEEPINTVL],
735
+ [1],
736
+ [Whether TCP_KEEPINTVL is supported.])
737
+ ])
738
+
739
+ LIBZMQ_CHECK_TCP_KEEPALIVE([
740
+ AC_DEFINE([ZMQ_HAVE_TCP_KEEPALIVE],
741
+ [1],
742
+ [Whether TCP_KEEPALIVE is supported.])
743
+ ])
744
+
745
+ LIBZMQ_CHECK_GETRANDOM([
746
+ AC_DEFINE([ZMQ_HAVE_GETRANDOM],
747
+ [1],
748
+ [Whether getrandom is supported.])
749
+ ])
750
+
751
+ AM_CONDITIONAL(HAVE_FORK, test "x$ac_cv_func_fork" = "xyes")
752
+
753
+ if test "x$cross_compiling" = "xyes"; then
754
+ # Enable draft by default when cross-compiling
755
+ defaultval=yes
756
+ else
757
+ # enable draft API by default if we're in a git repository
758
+ # else disable it by default; then allow --enable-drafts=yes/no override
759
+ AC_CHECK_FILE($srcdir/.git, [defaultval=yes], [defaultval=no])
760
+ fi
761
+
762
+ AC_ARG_ENABLE([drafts],
763
+ AS_HELP_STRING([--enable-drafts],
764
+ [Build and install draft classes and methods [default=yes]]),
765
+ [enable_drafts=$enableval],
766
+ [enable_drafts=$defaultval])
767
+
768
+ AM_CONDITIONAL([ENABLE_DRAFTS], [test x$enable_drafts != xno])
769
+
770
+ if test "x$enable_drafts" = "xyes"; then
771
+ AC_MSG_NOTICE([Building stable and legacy API + draft API])
772
+ AC_DEFINE(ZMQ_BUILD_DRAFT_API, 1, [Provide draft classes and methods])
773
+ AC_SUBST(pkg_config_defines, "-DZMQ_BUILD_DRAFT_API=1")
774
+ else
775
+ AC_MSG_NOTICE([Building stable and legacy API (no draft API)])
776
+ AC_SUBST(pkg_config_defines, "")
777
+ fi
778
+
779
+ AC_ARG_ENABLE([libunwind],
780
+ [AS_HELP_STRING([--enable-libunwind],
781
+ [enable libunwind [default=auto]])],
782
+ [enable_libunwind=$enableval],
783
+ [enable_libunwind="auto"])
784
+
785
+ if test "x$enable_libunwind" != "xno"; then
786
+ PKG_CHECK_MODULES(LIBUNWIND, [libunwind],
787
+ [
788
+ AC_DEFINE(HAVE_LIBUNWIND, 1, [The libunwind library is to be used])
789
+ AC_SUBST([LIBUNWIND_CFLAGS])
790
+ AC_SUBST([LIBUNWIND_LIBS])
791
+ AC_CHECK_LIB([dl], [dladdr])
792
+ ],
793
+ [
794
+ if test "x$enable_libunwind" = "xyes"; then
795
+ AC_MSG_ERROR([Cannot find libunwind])
796
+ else
797
+ AC_MSG_WARN([Cannot find libunwind])
798
+ fi
799
+ ])
800
+ fi
801
+
802
+ # Subst LIBZMQ_EXTRA_CFLAGS & CXXFLAGS & LDFLAGS
803
+ AC_SUBST(LIBZMQ_EXTRA_CFLAGS)
804
+ AC_SUBST(LIBZMQ_EXTRA_CXXFLAGS)
805
+ AC_SUBST(LIBZMQ_EXTRA_LDFLAGS)
806
+
807
+ AC_SUBST(LIBZMQ_VMCI_CXXFLAGS)
808
+ AC_SUBST(LIBZMQ_VMCI_LDFLAGS)
809
+
810
+ AC_SUBST(pkg_config_libs_private, $PKGCFG_LIBS_PRIVATE)
811
+
812
+ # set pkgconfigdir, allow override
813
+ AC_ARG_WITH([pkgconfigdir],
814
+ AS_HELP_STRING([--with-pkgconfigdir=PATH],
815
+ [Path to the pkgconfig directory [[LIBDIR/pkgconfig]]]),
816
+ [pkgconfigdir="$withval"],
817
+ [pkgconfigdir='${libdir}/pkgconfig'])
818
+ AC_SUBST([pkgconfigdir])
819
+
820
+ AC_CONFIG_FILES([ \
821
+ Makefile \
822
+ src/libzmq.pc \
823
+ doc/Makefile \
824
+ builds/Makefile \
825
+ builds/msvc/Makefile])
826
+
827
+ AC_OUTPUT