rufus-lua-win 5.1.5

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (459) hide show
  1. checksums.yaml +7 -0
  2. data/.gitignore +17 -0
  3. data/Gemfile +4 -0
  4. data/LICENSE.txt +22 -0
  5. data/README.md +69 -0
  6. data/Rakefile +1 -0
  7. data/lib/rufus/lua/win.rb +18 -0
  8. data/lib/rufus/lua/win/version.rb +7 -0
  9. data/rufus-lua-win.gemspec +23 -0
  10. data/vendor/lua/bin/liblua.dll +0 -0
  11. data/vendor/lua/lib/lua/LuaXml.lua +119 -0
  12. data/vendor/lua/lib/lua/alien.lua +250 -0
  13. data/vendor/lua/lib/lua/alien/core.dll +0 -0
  14. data/vendor/lua/lib/lua/alien/struct.dll +0 -0
  15. data/vendor/lua/lib/lua/base.lua +536 -0
  16. data/vendor/lua/lib/lua/bin.lua +20 -0
  17. data/vendor/lua/lib/lua/bit.dll +0 -0
  18. data/vendor/lua/lib/lua/cdlua.dll +0 -0
  19. data/vendor/lua/lib/lua/cdluacontextplus.dll +0 -0
  20. data/vendor/lua/lib/lua/cdluagl.dll +0 -0
  21. data/vendor/lua/lib/lua/cdluaim.dll +0 -0
  22. data/vendor/lua/lib/lua/cdluapdf.dll +0 -0
  23. data/vendor/lua/lib/lua/copas.lua +543 -0
  24. data/vendor/lua/lib/lua/coxpcall.lua +57 -0
  25. data/vendor/lua/lib/lua/date.lua +745 -0
  26. data/vendor/lua/lib/lua/debug_ext.lua +84 -0
  27. data/vendor/lua/lib/lua/debug_init.lua +2 -0
  28. data/vendor/lua/lib/lua/des56.dll +0 -0
  29. data/vendor/lua/lib/lua/dist/config.lua +109 -0
  30. data/vendor/lua/lib/lua/dist/constraints.lua +271 -0
  31. data/vendor/lua/lib/lua/dist/depends.lua +601 -0
  32. data/vendor/lua/lib/lua/dist/git.lua +307 -0
  33. data/vendor/lua/lib/lua/dist/init.lua +278 -0
  34. data/vendor/lua/lib/lua/dist/manifest.lua +225 -0
  35. data/vendor/lua/lib/lua/dist/package.lua +583 -0
  36. data/vendor/lua/lib/lua/dist/sys.lua +367 -0
  37. data/vendor/lua/lib/lua/dist/utils.lua +130 -0
  38. data/vendor/lua/lib/lua/ex.dll +0 -0
  39. data/vendor/lua/lib/lua/fstable.lua +116 -0
  40. data/vendor/lua/lib/lua/getopt.lua +273 -0
  41. data/vendor/lua/lib/lua/git.lua +5 -0
  42. data/vendor/lua/lib/lua/git/core.dll +0 -0
  43. data/vendor/lua/lib/lua/git/objects.lua +121 -0
  44. data/vendor/lua/lib/lua/git/pack.lua +316 -0
  45. data/vendor/lua/lib/lua/git/protocol.lua +188 -0
  46. data/vendor/lua/lib/lua/git/repo.lua +283 -0
  47. data/vendor/lua/lib/lua/git/util.lua +233 -0
  48. data/vendor/lua/lib/lua/gzio.dll +0 -0
  49. data/vendor/lua/lib/lua/gzip.lua +81 -0
  50. data/vendor/lua/lib/lua/iconv.dll +0 -0
  51. data/vendor/lua/lib/lua/imlua.dll +0 -0
  52. data/vendor/lua/lib/lua/imlua_fftw.dll +0 -0
  53. data/vendor/lua/lib/lua/imlua_jp2.dll +0 -0
  54. data/vendor/lua/lib/lua/imlua_process.dll +0 -0
  55. data/vendor/lua/lib/lua/imlua_process_omp.dll +0 -0
  56. data/vendor/lua/lib/lua/io_ext.lua +115 -0
  57. data/vendor/lua/lib/lua/iuplua.dll +0 -0
  58. data/vendor/lua/lib/lua/iuplua_mglplot.dll +0 -0
  59. data/vendor/lua/lib/lua/iuplua_pplot.dll +0 -0
  60. data/vendor/lua/lib/lua/iupluacd.dll +0 -0
  61. data/vendor/lua/lib/lua/iupluacontrols.dll +0 -0
  62. data/vendor/lua/lib/lua/iupluagl.dll +0 -0
  63. data/vendor/lua/lib/lua/iupluaim.dll +0 -0
  64. data/vendor/lua/lib/lua/iupluaimglib.dll +0 -0
  65. data/vendor/lua/lib/lua/iupluatuio.dll +0 -0
  66. data/vendor/lua/lib/lua/lanes-keeper.lua +302 -0
  67. data/vendor/lua/lib/lua/lanes.lua +591 -0
  68. data/vendor/lua/lib/lua/lanes/core.dll +0 -0
  69. data/vendor/lua/lib/lua/lcs.lua +55 -0
  70. data/vendor/lua/lib/lua/lemock.lua +659 -0
  71. data/vendor/lua/lib/lua/lfs.dll +0 -0
  72. data/vendor/lua/lib/lua/list.lua +375 -0
  73. data/vendor/lua/lib/lua/logging.lua +189 -0
  74. data/vendor/lua/lib/lua/logging/console.lua +22 -0
  75. data/vendor/lua/lib/lua/logging/email.lua +44 -0
  76. data/vendor/lua/lib/lua/logging/file.lua +55 -0
  77. data/vendor/lua/lib/lua/logging/rolling_file.lua +81 -0
  78. data/vendor/lua/lib/lua/logging/socket.lua +35 -0
  79. data/vendor/lua/lib/lua/logging/sql.lua +64 -0
  80. data/vendor/lua/lib/lua/loop/base.lua +68 -0
  81. data/vendor/lua/lib/lua/loop/cached.lua +312 -0
  82. data/vendor/lua/lib/lua/loop/collection/MapWithArrayOfKeys.lua +64 -0
  83. data/vendor/lua/lib/lua/loop/collection/ObjectCache.lua +39 -0
  84. data/vendor/lua/lib/lua/loop/collection/OrderedSet.lua +164 -0
  85. data/vendor/lua/lib/lua/loop/collection/PriorityQueue.lua +86 -0
  86. data/vendor/lua/lib/lua/loop/collection/UnorderedArray.lua +32 -0
  87. data/vendor/lua/lib/lua/loop/collection/UnorderedArraySet.lua +56 -0
  88. data/vendor/lua/lib/lua/loop/compiler/Arguments.lua +108 -0
  89. data/vendor/lua/lib/lua/loop/compiler/Conditional.lua +50 -0
  90. data/vendor/lua/lib/lua/loop/compiler/Expression.lua +215 -0
  91. data/vendor/lua/lib/lua/loop/component/base.lua +221 -0
  92. data/vendor/lua/lib/lua/loop/component/contained.lua +71 -0
  93. data/vendor/lua/lib/lua/loop/component/dynamic.lua +223 -0
  94. data/vendor/lua/lib/lua/loop/component/intercepted.lua +354 -0
  95. data/vendor/lua/lib/lua/loop/component/wrapped.lua +195 -0
  96. data/vendor/lua/lib/lua/loop/debug/Inspector.lua +521 -0
  97. data/vendor/lua/lib/lua/loop/debug/Matcher.lua +192 -0
  98. data/vendor/lua/lib/lua/loop/debug/Verbose.lua +266 -0
  99. data/vendor/lua/lib/lua/loop/debug/Viewer.lua +200 -0
  100. data/vendor/lua/lib/lua/loop/multiple.lua +105 -0
  101. data/vendor/lua/lib/lua/loop/object/Exception.lua +57 -0
  102. data/vendor/lua/lib/lua/loop/object/Publisher.lua +43 -0
  103. data/vendor/lua/lib/lua/loop/object/Wrapper.lua +39 -0
  104. data/vendor/lua/lib/lua/loop/scoped.lua +585 -0
  105. data/vendor/lua/lib/lua/loop/serial/FileStream.lua +48 -0
  106. data/vendor/lua/lib/lua/loop/serial/Serializer.lua +291 -0
  107. data/vendor/lua/lib/lua/loop/serial/SocketStream.lua +51 -0
  108. data/vendor/lua/lib/lua/loop/serial/StringStream.lua +47 -0
  109. data/vendor/lua/lib/lua/loop/simple.lua +75 -0
  110. data/vendor/lua/lib/lua/loop/table.lua +71 -0
  111. data/vendor/lua/lib/lua/loop/thread/CoSocket.lua +416 -0
  112. data/vendor/lua/lib/lua/loop/thread/IOScheduler.lua +170 -0
  113. data/vendor/lua/lib/lua/loop/thread/Scheduler.lua +327 -0
  114. data/vendor/lua/lib/lua/loop/thread/SocketScheduler.lua +88 -0
  115. data/vendor/lua/lib/lua/loop/thread/Timer.lua +54 -0
  116. data/vendor/lua/lib/lua/lpeg.dll +0 -0
  117. data/vendor/lua/lib/lua/ltn12.lua +292 -0
  118. data/vendor/lua/lib/lua/luaXML_lib.dll +0 -0
  119. data/vendor/lua/lib/lua/luacurl.dll +0 -0
  120. data/vendor/lua/lib/lua/luadoc/config.lua +34 -0
  121. data/vendor/lua/lib/lua/luadoc/doclet/debug.lua +46 -0
  122. data/vendor/lua/lib/lua/luadoc/doclet/formatter.lua +84 -0
  123. data/vendor/lua/lib/lua/luadoc/doclet/html.lua +289 -0
  124. data/vendor/lua/lib/lua/luadoc/doclet/html/file.lp +113 -0
  125. data/vendor/lua/lib/lua/luadoc/doclet/html/function.lp +64 -0
  126. data/vendor/lua/lib/lua/luadoc/doclet/html/index.lp +70 -0
  127. data/vendor/lua/lib/lua/luadoc/doclet/html/luadoc.css +286 -0
  128. data/vendor/lua/lib/lua/luadoc/doclet/html/menu.lp +55 -0
  129. data/vendor/lua/lib/lua/luadoc/doclet/html/module.lp +109 -0
  130. data/vendor/lua/lib/lua/luadoc/doclet/html/table.lp +15 -0
  131. data/vendor/lua/lib/lua/luadoc/doclet/raw.lua +12 -0
  132. data/vendor/lua/lib/lua/luadoc/init.lua +58 -0
  133. data/vendor/lua/lib/lua/luadoc/lp.lua +130 -0
  134. data/vendor/lua/lib/lua/luadoc/taglet/standard.lua +495 -0
  135. data/vendor/lua/lib/lua/luadoc/taglet/standard/tags.lua +171 -0
  136. data/vendor/lua/lib/lua/luadoc/util.lua +233 -0
  137. data/vendor/lua/lib/lua/luagl.dll +0 -0
  138. data/vendor/lua/lib/lua/luaglu.dll +0 -0
  139. data/vendor/lua/lib/lua/luaidl.lua +113 -0
  140. data/vendor/lua/lib/lua/luaidl/lex.lua +793 -0
  141. data/vendor/lua/lib/lua/luaidl/pre.lua +149 -0
  142. data/vendor/lua/lib/lua/luaidl/sin.lua +3631 -0
  143. data/vendor/lua/lib/lua/luarocks/add.lua +108 -0
  144. data/vendor/lua/lib/lua/luarocks/admin_remove.lua +87 -0
  145. data/vendor/lua/lib/lua/luarocks/build.lua +330 -0
  146. data/vendor/lua/lib/lua/luarocks/build/builtin.lua +253 -0
  147. data/vendor/lua/lib/lua/luarocks/build/cmake.lua +54 -0
  148. data/vendor/lua/lib/lua/luarocks/build/command.lua +32 -0
  149. data/vendor/lua/lib/lua/luarocks/build/make.lua +92 -0
  150. data/vendor/lua/lib/lua/luarocks/cache.lua +85 -0
  151. data/vendor/lua/lib/lua/luarocks/cfg.lua +449 -0
  152. data/vendor/lua/lib/lua/luarocks/command_line.lua +163 -0
  153. data/vendor/lua/lib/lua/luarocks/deps.lua +654 -0
  154. data/vendor/lua/lib/lua/luarocks/dir.lua +69 -0
  155. data/vendor/lua/lib/lua/luarocks/download.lua +90 -0
  156. data/vendor/lua/lib/lua/luarocks/fetch.lua +321 -0
  157. data/vendor/lua/lib/lua/luarocks/fetch/cvs.lua +44 -0
  158. data/vendor/lua/lib/lua/luarocks/fetch/git.lua +81 -0
  159. data/vendor/lua/lib/lua/luarocks/fetch/git_file.lua +17 -0
  160. data/vendor/lua/lib/lua/luarocks/fetch/hg.lua +54 -0
  161. data/vendor/lua/lib/lua/luarocks/fetch/sscm.lua +42 -0
  162. data/vendor/lua/lib/lua/luarocks/fetch/svn.lua +53 -0
  163. data/vendor/lua/lib/lua/luarocks/fs.lua +40 -0
  164. data/vendor/lua/lib/lua/luarocks/fs/lua.lua +676 -0
  165. data/vendor/lua/lib/lua/luarocks/fs/unix.lua +88 -0
  166. data/vendor/lua/lib/lua/luarocks/fs/unix/tools.lua +325 -0
  167. data/vendor/lua/lib/lua/luarocks/fs/win32.lua +107 -0
  168. data/vendor/lua/lib/lua/luarocks/fs/win32/tools.lua +334 -0
  169. data/vendor/lua/lib/lua/luarocks/help.lua +101 -0
  170. data/vendor/lua/lib/lua/luarocks/index.lua +172 -0
  171. data/vendor/lua/lib/lua/luarocks/install.lua +151 -0
  172. data/vendor/lua/lib/lua/luarocks/list.lua +35 -0
  173. data/vendor/lua/lib/lua/luarocks/loader.lua +228 -0
  174. data/vendor/lua/lib/lua/luarocks/make.lua +71 -0
  175. data/vendor/lua/lib/lua/luarocks/make_manifest.lua +34 -0
  176. data/vendor/lua/lib/lua/luarocks/manif.lua +360 -0
  177. data/vendor/lua/lib/lua/luarocks/manif_core.lua +75 -0
  178. data/vendor/lua/lib/lua/luarocks/new_version.lua +141 -0
  179. data/vendor/lua/lib/lua/luarocks/pack.lua +205 -0
  180. data/vendor/lua/lib/lua/luarocks/path.lua +315 -0
  181. data/vendor/lua/lib/lua/luarocks/persist.lua +173 -0
  182. data/vendor/lua/lib/lua/luarocks/refresh_cache.lua +30 -0
  183. data/vendor/lua/lib/lua/luarocks/remove.lua +135 -0
  184. data/vendor/lua/lib/lua/luarocks/rep.lua +313 -0
  185. data/vendor/lua/lib/lua/luarocks/require.lua +6 -0
  186. data/vendor/lua/lib/lua/luarocks/search.lua +399 -0
  187. data/vendor/lua/lib/lua/luarocks/show.lua +138 -0
  188. data/vendor/lua/lib/lua/luarocks/site_config.lua +23 -0
  189. data/vendor/lua/lib/lua/luarocks/tools/patch.lua +712 -0
  190. data/vendor/lua/lib/lua/luarocks/tools/tar.lua +144 -0
  191. data/vendor/lua/lib/lua/luarocks/tools/zip.lua +245 -0
  192. data/vendor/lua/lib/lua/luarocks/type_check.lua +267 -0
  193. data/vendor/lua/lib/lua/luarocks/unpack.lua +151 -0
  194. data/vendor/lua/lib/lua/luarocks/util.lua +420 -0
  195. data/vendor/lua/lib/lua/luarocks/validate.lua +164 -0
  196. data/vendor/lua/lib/lua/luars232.dll +0 -0
  197. data/vendor/lua/lib/lua/luasql/mysql.dll +0 -0
  198. data/vendor/lua/lib/lua/luasql/postgres.dll +0 -0
  199. data/vendor/lua/lib/lua/luasql/sqlite3.dll +0 -0
  200. data/vendor/lua/lib/lua/luaunit.lua +601 -0
  201. data/vendor/lua/lib/lua/lxp.dll +0 -0
  202. data/vendor/lua/lib/lua/lxp/lom.lua +60 -0
  203. data/vendor/lua/lib/lua/math_ext.lua +27 -0
  204. data/vendor/lua/lib/lua/mbox.lua +53 -0
  205. data/vendor/lua/lib/lua/md5.lua +19 -0
  206. data/vendor/lua/lib/lua/md5/core.dll +0 -0
  207. data/vendor/lua/lib/lua/metalua.lua +0 -0
  208. data/vendor/lua/lib/lua/metalua/ast_to_string.mlua +553 -0
  209. data/vendor/lua/lib/lua/metalua/base.lua +104 -0
  210. data/vendor/lua/lib/lua/metalua/bytecode.lua +0 -0
  211. data/vendor/lua/lib/lua/metalua/clopts.mlua +204 -0
  212. data/vendor/lua/lib/lua/metalua/compiler.lua +3 -0
  213. data/vendor/lua/lib/lua/metalua/dollar.mlua +24 -0
  214. data/vendor/lua/lib/lua/metalua/extension/H-runtime.mlua +216 -0
  215. data/vendor/lua/lib/lua/metalua/extension/H.mlua +22 -0
  216. data/vendor/lua/lib/lua/metalua/extension/anaphoric.mlua +54 -0
  217. data/vendor/lua/lib/lua/metalua/extension/clist.mlua +149 -0
  218. data/vendor/lua/lib/lua/metalua/extension/continue.mlua +53 -0
  219. data/vendor/lua/lib/lua/metalua/extension/localin.mlua +2 -0
  220. data/vendor/lua/lib/lua/metalua/extension/log.mlua +39 -0
  221. data/vendor/lua/lib/lua/metalua/extension/match.mlua +374 -0
  222. data/vendor/lua/lib/lua/metalua/extension/ternary.mlua +10 -0
  223. data/vendor/lua/lib/lua/metalua/extension/trycatch.mlua +189 -0
  224. data/vendor/lua/lib/lua/metalua/extension/types-runtime.mlua +159 -0
  225. data/vendor/lua/lib/lua/metalua/extension/types.mlua +352 -0
  226. data/vendor/lua/lib/lua/metalua/extension/withdo.mlua +30 -0
  227. data/vendor/lua/lib/lua/metalua/extension/xglobal-runtime.lua +41 -0
  228. data/vendor/lua/lib/lua/metalua/extension/xglobal.mlua +20 -0
  229. data/vendor/lua/lib/lua/metalua/extension/xloop.mlua +100 -0
  230. data/vendor/lua/lib/lua/metalua/extension/xmatch.mlua +216 -0
  231. data/vendor/lua/lib/lua/metalua/metaloop.mlua +76 -0
  232. data/vendor/lua/lib/lua/metalua/mlc.lua +0 -0
  233. data/vendor/lua/lib/lua/metalua/mlc_xcall.lua +119 -0
  234. data/vendor/lua/lib/lua/metalua/mlp.lua +0 -0
  235. data/vendor/lua/lib/lua/metalua/package2.lua +101 -0
  236. data/vendor/lua/lib/lua/metalua/runtime.lua +3 -0
  237. data/vendor/lua/lib/lua/metalua/string2.lua +44 -0
  238. data/vendor/lua/lib/lua/metalua/table2.lua +372 -0
  239. data/vendor/lua/lib/lua/metalua/walk.mlua +304 -0
  240. data/vendor/lua/lib/lua/metalua/walk/bindings.mlua +41 -0
  241. data/vendor/lua/lib/lua/metalua/walk/id.mlua +186 -0
  242. data/vendor/lua/lib/lua/metalua/walk/scope.lua +54 -0
  243. data/vendor/lua/lib/lua/mime.lua +87 -0
  244. data/vendor/lua/lib/lua/mime/core.dll +0 -0
  245. data/vendor/lua/lib/lua/mobdebug.lua +1484 -0
  246. data/vendor/lua/lib/lua/modules.lua +16 -0
  247. data/vendor/lua/lib/lua/object.lua +56 -0
  248. data/vendor/lua/lib/lua/oil/Exception.lua +26 -0
  249. data/vendor/lua/lib/lua/oil/arch.lua +27 -0
  250. data/vendor/lua/lib/lua/oil/arch/basic/client.lua +29 -0
  251. data/vendor/lua/lib/lua/oil/arch/basic/common.lua +13 -0
  252. data/vendor/lua/lib/lua/oil/arch/basic/server.lua +27 -0
  253. data/vendor/lua/lib/lua/oil/arch/cooperative/common.lua +10 -0
  254. data/vendor/lua/lib/lua/oil/arch/cooperative/server.lua +16 -0
  255. data/vendor/lua/lib/lua/oil/arch/corba/client.lua +39 -0
  256. data/vendor/lua/lib/lua/oil/arch/corba/common.lua +58 -0
  257. data/vendor/lua/lib/lua/oil/arch/corba/intercepted/client.lua +9 -0
  258. data/vendor/lua/lib/lua/oil/arch/corba/intercepted/server.lua +9 -0
  259. data/vendor/lua/lib/lua/oil/arch/corba/server.lua +35 -0
  260. data/vendor/lua/lib/lua/oil/arch/ludo/byref.lua +18 -0
  261. data/vendor/lua/lib/lua/oil/arch/ludo/client.lua +19 -0
  262. data/vendor/lua/lib/lua/oil/arch/ludo/common.lua +18 -0
  263. data/vendor/lua/lib/lua/oil/arch/ludo/server.lua +19 -0
  264. data/vendor/lua/lib/lua/oil/arch/typed/client.lua +27 -0
  265. data/vendor/lua/lib/lua/oil/arch/typed/common.lua +9 -0
  266. data/vendor/lua/lib/lua/oil/arch/typed/server.lua +18 -0
  267. data/vendor/lua/lib/lua/oil/assert.lua +87 -0
  268. data/vendor/lua/lib/lua/oil/builder.lua +45 -0
  269. data/vendor/lua/lib/lua/oil/builder/basic/client.lua +31 -0
  270. data/vendor/lua/lib/lua/oil/builder/basic/common.lua +11 -0
  271. data/vendor/lua/lib/lua/oil/builder/basic/server.lua +13 -0
  272. data/vendor/lua/lib/lua/oil/builder/cooperative/common.lua +11 -0
  273. data/vendor/lua/lib/lua/oil/builder/cooperative/server.lua +11 -0
  274. data/vendor/lua/lib/lua/oil/builder/corba/client.lua +13 -0
  275. data/vendor/lua/lib/lua/oil/builder/corba/common.lua +24 -0
  276. data/vendor/lua/lib/lua/oil/builder/corba/gencode.lua +13 -0
  277. data/vendor/lua/lib/lua/oil/builder/corba/intercepted/client.lua +11 -0
  278. data/vendor/lua/lib/lua/oil/builder/corba/intercepted/server.lua +11 -0
  279. data/vendor/lua/lib/lua/oil/builder/corba/server.lua +13 -0
  280. data/vendor/lua/lib/lua/oil/builder/lua/client.lua +11 -0
  281. data/vendor/lua/lib/lua/oil/builder/lua/server.lua +12 -0
  282. data/vendor/lua/lib/lua/oil/builder/ludo/byref.lua +13 -0
  283. data/vendor/lua/lib/lua/oil/builder/ludo/client.lua +13 -0
  284. data/vendor/lua/lib/lua/oil/builder/ludo/common.lua +14 -0
  285. data/vendor/lua/lib/lua/oil/builder/ludo/server.lua +13 -0
  286. data/vendor/lua/lib/lua/oil/builder/typed/client.lua +16 -0
  287. data/vendor/lua/lib/lua/oil/builder/typed/server.lua +12 -0
  288. data/vendor/lua/lib/lua/oil/compat.lua +846 -0
  289. data/vendor/lua/lib/lua/oil/component.lua +1 -0
  290. data/vendor/lua/lib/lua/oil/corba/giop.lua +301 -0
  291. data/vendor/lua/lib/lua/oil/corba/giop/Codec.lua +1568 -0
  292. data/vendor/lua/lib/lua/oil/corba/giop/CodecGen.lua +589 -0
  293. data/vendor/lua/lib/lua/oil/corba/giop/Exception.lua +25 -0
  294. data/vendor/lua/lib/lua/oil/corba/giop/Indexer.lua +63 -0
  295. data/vendor/lua/lib/lua/oil/corba/giop/Listener.lua +343 -0
  296. data/vendor/lua/lib/lua/oil/corba/giop/Messenger.lua +228 -0
  297. data/vendor/lua/lib/lua/oil/corba/giop/Referrer.lua +180 -0
  298. data/vendor/lua/lib/lua/oil/corba/giop/Requester.lua +462 -0
  299. data/vendor/lua/lib/lua/oil/corba/idl.lua +597 -0
  300. data/vendor/lua/lib/lua/oil/corba/idl/Compiler.lua +133 -0
  301. data/vendor/lua/lib/lua/oil/corba/idl/Importer.lua +235 -0
  302. data/vendor/lua/lib/lua/oil/corba/idl/Indexer.lua +95 -0
  303. data/vendor/lua/lib/lua/oil/corba/idl/Registry.lua +1821 -0
  304. data/vendor/lua/lib/lua/oil/corba/idl/ir.lua +847 -0
  305. data/vendor/lua/lib/lua/oil/corba/idl/sysex.lua +21 -0
  306. data/vendor/lua/lib/lua/oil/corba/iiop/Profiler.lua +200 -0
  307. data/vendor/lua/lib/lua/oil/corba/intercepted/Listener.lua +158 -0
  308. data/vendor/lua/lib/lua/oil/corba/intercepted/Requester.lua +181 -0
  309. data/vendor/lua/lib/lua/oil/corba/services/event.lua +126 -0
  310. data/vendor/lua/lib/lua/oil/corba/services/event/ConsumerAdmin.lua +50 -0
  311. data/vendor/lua/lib/lua/oil/corba/services/event/EventFactory.lua +15 -0
  312. data/vendor/lua/lib/lua/oil/corba/services/event/EventQueue.lua +37 -0
  313. data/vendor/lua/lib/lua/oil/corba/services/event/ProxyPushConsumer.lua +75 -0
  314. data/vendor/lua/lib/lua/oil/corba/services/event/ProxyPushSupplier.lua +62 -0
  315. data/vendor/lua/lib/lua/oil/corba/services/event/SingleDeferredDispatcher.lua +60 -0
  316. data/vendor/lua/lib/lua/oil/corba/services/event/SingleSynchronousDispatcher.lua +39 -0
  317. data/vendor/lua/lib/lua/oil/corba/services/event/SupplierAdmin.lua +50 -0
  318. data/vendor/lua/lib/lua/oil/corba/services/naming.lua +436 -0
  319. data/vendor/lua/lib/lua/oil/kernel/base/Acceptor.lua +268 -0
  320. data/vendor/lua/lib/lua/oil/kernel/base/Channels.lua +121 -0
  321. data/vendor/lua/lib/lua/oil/kernel/base/Connector.lua +147 -0
  322. data/vendor/lua/lib/lua/oil/kernel/base/Dispatcher.lua +99 -0
  323. data/vendor/lua/lib/lua/oil/kernel/base/Proxies.lua +86 -0
  324. data/vendor/lua/lib/lua/oil/kernel/base/Proxies/asynchronous.lua +56 -0
  325. data/vendor/lua/lib/lua/oil/kernel/base/Proxies/protected.lua +17 -0
  326. data/vendor/lua/lib/lua/oil/kernel/base/Proxies/synchronous.lua +17 -0
  327. data/vendor/lua/lib/lua/oil/kernel/base/Proxies/utils.lua +29 -0
  328. data/vendor/lua/lib/lua/oil/kernel/base/Receiver.lua +110 -0
  329. data/vendor/lua/lib/lua/oil/kernel/base/Servants.lua +207 -0
  330. data/vendor/lua/lib/lua/oil/kernel/base/Sockets.lua +44 -0
  331. data/vendor/lua/lib/lua/oil/kernel/cooperative/Receiver.lua +139 -0
  332. data/vendor/lua/lib/lua/oil/kernel/intercepted/Listener.lua +47 -0
  333. data/vendor/lua/lib/lua/oil/kernel/intercepted/Requester.lua +58 -0
  334. data/vendor/lua/lib/lua/oil/kernel/lua/Dispatcher.lua +76 -0
  335. data/vendor/lua/lib/lua/oil/kernel/lua/Proxies.lua +69 -0
  336. data/vendor/lua/lib/lua/oil/kernel/typed/Dispatcher.lua +91 -0
  337. data/vendor/lua/lib/lua/oil/kernel/typed/Proxies.lua +153 -0
  338. data/vendor/lua/lib/lua/oil/kernel/typed/Servants.lua +137 -0
  339. data/vendor/lua/lib/lua/oil/ludo/Codec.lua +66 -0
  340. data/vendor/lua/lib/lua/oil/ludo/CodecByRef.lua +103 -0
  341. data/vendor/lua/lib/lua/oil/ludo/Listener.lua +151 -0
  342. data/vendor/lua/lib/lua/oil/ludo/Referrer.lua +72 -0
  343. data/vendor/lua/lib/lua/oil/ludo/Requester.lua +107 -0
  344. data/vendor/lua/lib/lua/oil/oo.lua +1 -0
  345. data/vendor/lua/lib/lua/oil/port.lua +1 -0
  346. data/vendor/lua/lib/lua/oil/properties.lua +57 -0
  347. data/vendor/lua/lib/lua/oil/verbose.lua +133 -0
  348. data/vendor/lua/lib/lua/package_ext.lua +15 -0
  349. data/vendor/lua/lib/lua/parser.lua +268 -0
  350. data/vendor/lua/lib/lua/pl/Date.lua +555 -0
  351. data/vendor/lua/lib/lua/pl/List.lua +613 -0
  352. data/vendor/lua/lib/lua/pl/Map.lua +113 -0
  353. data/vendor/lua/lib/lua/pl/MultiMap.lua +62 -0
  354. data/vendor/lua/lib/lua/pl/OrderedMap.lua +151 -0
  355. data/vendor/lua/lib/lua/pl/Set.lua +153 -0
  356. data/vendor/lua/lib/lua/pl/app.lua +165 -0
  357. data/vendor/lua/lib/lua/pl/array2d.lua +501 -0
  358. data/vendor/lua/lib/lua/pl/class.lua +180 -0
  359. data/vendor/lua/lib/lua/pl/comprehension.lua +286 -0
  360. data/vendor/lua/lib/lua/pl/config.lua +176 -0
  361. data/vendor/lua/lib/lua/pl/data.lua +606 -0
  362. data/vendor/lua/lib/lua/pl/dir.lua +475 -0
  363. data/vendor/lua/lib/lua/pl/file.lua +70 -0
  364. data/vendor/lua/lib/lua/pl/func.lua +376 -0
  365. data/vendor/lua/lib/lua/pl/init.lua +68 -0
  366. data/vendor/lua/lib/lua/pl/input.lua +173 -0
  367. data/vendor/lua/lib/lua/pl/lapp.lua +407 -0
  368. data/vendor/lua/lib/lua/pl/lexer.lua +456 -0
  369. data/vendor/lua/lib/lua/pl/luabalanced.lua +264 -0
  370. data/vendor/lua/lib/lua/pl/operator.lua +201 -0
  371. data/vendor/lua/lib/lua/pl/path.lua +398 -0
  372. data/vendor/lua/lib/lua/pl/permute.lua +63 -0
  373. data/vendor/lua/lib/lua/pl/platf/luajava.lua +101 -0
  374. data/vendor/lua/lib/lua/pl/pretty.lua +285 -0
  375. data/vendor/lua/lib/lua/pl/seq.lua +551 -0
  376. data/vendor/lua/lib/lua/pl/sip.lua +344 -0
  377. data/vendor/lua/lib/lua/pl/strict.lua +70 -0
  378. data/vendor/lua/lib/lua/pl/stringio.lua +158 -0
  379. data/vendor/lua/lib/lua/pl/stringx.lua +440 -0
  380. data/vendor/lua/lib/lua/pl/tablex.lua +817 -0
  381. data/vendor/lua/lib/lua/pl/template.lua +103 -0
  382. data/vendor/lua/lib/lua/pl/test.lua +135 -0
  383. data/vendor/lua/lib/lua/pl/text.lua +243 -0
  384. data/vendor/lua/lib/lua/pl/utils.lua +550 -0
  385. data/vendor/lua/lib/lua/pl/xml.lua +689 -0
  386. data/vendor/lua/lib/lua/profiler.dll +0 -0
  387. data/vendor/lua/lib/lua/re.lua +248 -0
  388. data/vendor/lua/lib/lua/rex_onig.dll +0 -0
  389. data/vendor/lua/lib/lua/rex_pcre.dll +0 -0
  390. data/vendor/lua/lib/lua/rex_posix.dll +0 -0
  391. data/vendor/lua/lib/lua/rings.dll +0 -0
  392. data/vendor/lua/lib/lua/serialize.lua +193 -0
  393. data/vendor/lua/lib/lua/set.lua +149 -0
  394. data/vendor/lua/lib/lua/socket.lua +133 -0
  395. data/vendor/lua/lib/lua/socket/core.dll +0 -0
  396. data/vendor/lua/lib/lua/socket/ftp.lua +281 -0
  397. data/vendor/lua/lib/lua/socket/http.lua +350 -0
  398. data/vendor/lua/lib/lua/socket/smtp.lua +251 -0
  399. data/vendor/lua/lib/lua/socket/tp.lua +123 -0
  400. data/vendor/lua/lib/lua/socket/url.lua +297 -0
  401. data/vendor/lua/lib/lua/ssl.dll +0 -0
  402. data/vendor/lua/lib/lua/ssl.lua +93 -0
  403. data/vendor/lua/lib/lua/ssl/https.lua +138 -0
  404. data/vendor/lua/lib/lua/stable.lua +28 -0
  405. data/vendor/lua/lib/lua/std.lua +16 -0
  406. data/vendor/lua/lib/lua/strbuf.lua +32 -0
  407. data/vendor/lua/lib/lua/strict.lua +45 -0
  408. data/vendor/lua/lib/lua/string_ext.lua +274 -0
  409. data/vendor/lua/lib/lua/table_ext.lua +117 -0
  410. data/vendor/lua/lib/lua/tar.lua +262 -0
  411. data/vendor/lua/lib/lua/task.dll +0 -0
  412. data/vendor/lua/lib/lua/tree.lua +81 -0
  413. data/vendor/lua/lib/lua/unicode.dll +0 -0
  414. data/vendor/lua/lib/lua/verbose_require.lua +11 -0
  415. data/vendor/lua/lib/lua/vstruct.lua +86 -0
  416. data/vendor/lua/lib/lua/vstruct/ast.lua +192 -0
  417. data/vendor/lua/lib/lua/vstruct/ast/Bitpack.lua +33 -0
  418. data/vendor/lua/lib/lua/vstruct/ast/Generator.lua +174 -0
  419. data/vendor/lua/lib/lua/vstruct/ast/IO.lua +45 -0
  420. data/vendor/lua/lib/lua/vstruct/ast/List.lua +56 -0
  421. data/vendor/lua/lib/lua/vstruct/ast/Name.lua +20 -0
  422. data/vendor/lua/lib/lua/vstruct/ast/Repeat.lua +23 -0
  423. data/vendor/lua/lib/lua/vstruct/ast/Root.lua +19 -0
  424. data/vendor/lua/lib/lua/vstruct/ast/Table.lua +65 -0
  425. data/vendor/lua/lib/lua/vstruct/cursor.lua +81 -0
  426. data/vendor/lua/lib/lua/vstruct/io.lua +45 -0
  427. data/vendor/lua/lib/lua/vstruct/io/a.lua +24 -0
  428. data/vendor/lua/lib/lua/vstruct/io/b.lua +28 -0
  429. data/vendor/lua/lib/lua/vstruct/io/bigendian.lua +21 -0
  430. data/vendor/lua/lib/lua/vstruct/io/c.lua +25 -0
  431. data/vendor/lua/lib/lua/vstruct/io/defaults.lua +24 -0
  432. data/vendor/lua/lib/lua/vstruct/io/endianness.lua +41 -0
  433. data/vendor/lua/lib/lua/vstruct/io/f.lua +129 -0
  434. data/vendor/lua/lib/lua/vstruct/io/hostendian.lua +21 -0
  435. data/vendor/lua/lib/lua/vstruct/io/i.lua +42 -0
  436. data/vendor/lua/lib/lua/vstruct/io/littleendian.lua +21 -0
  437. data/vendor/lua/lib/lua/vstruct/io/m.lua +62 -0
  438. data/vendor/lua/lib/lua/vstruct/io/p.lua +23 -0
  439. data/vendor/lua/lib/lua/vstruct/io/s.lua +27 -0
  440. data/vendor/lua/lib/lua/vstruct/io/seekb.lua +18 -0
  441. data/vendor/lua/lib/lua/vstruct/io/seekf.lua +18 -0
  442. data/vendor/lua/lib/lua/vstruct/io/seekto.lua +18 -0
  443. data/vendor/lua/lib/lua/vstruct/io/u.lua +54 -0
  444. data/vendor/lua/lib/lua/vstruct/io/x.lua +34 -0
  445. data/vendor/lua/lib/lua/vstruct/io/z.lua +63 -0
  446. data/vendor/lua/lib/lua/vstruct/lexer.lua +100 -0
  447. data/vendor/lua/lib/lua/vstruct/pack.lua +142 -0
  448. data/vendor/lua/lib/lua/vstruct/test.lua +47 -0
  449. data/vendor/lua/lib/lua/vstruct/test/basic.lua +73 -0
  450. data/vendor/lua/lib/lua/vstruct/test/common.lua +100 -0
  451. data/vendor/lua/lib/lua/vstruct/test/fp-bigendian.lua +56 -0
  452. data/vendor/lua/lib/lua/vstruct/test/fp-littleendian.lua +56 -0
  453. data/vendor/lua/lib/lua/vstruct/test/struct-test-gen.lua +1230 -0
  454. data/vendor/lua/lib/lua/vstruct/unpack.lua +126 -0
  455. data/vendor/lua/lib/lua/wx.dll +0 -0
  456. data/vendor/lua/lib/lua/xml.lua +75 -0
  457. data/vendor/lua/lib/lua/zip.dll +0 -0
  458. data/vendor/lua/lib/lua/zlib.dll +0 -0
  459. metadata +529 -0
@@ -0,0 +1,253 @@
1
+
2
+ --- A builtin build system: back-end to provide a portable way of building C-based Lua modules.
3
+ module("luarocks.build.builtin", package.seeall)
4
+
5
+ local fs = require("luarocks.fs")
6
+ local path = require("luarocks.path")
7
+ local util = require("luarocks.util")
8
+ local cfg = require("luarocks.cfg")
9
+ local dir = require("luarocks.dir")
10
+
11
+ --- Run a command displaying its execution on standard output.
12
+ -- @return boolean: true if command succeeds (status code 0), false
13
+ -- otherwise.
14
+ local function execute(...)
15
+ io.stdout:write(table.concat({...}, " ").."\n")
16
+ return fs.execute(...)
17
+ end
18
+
19
+ --- Makes an RC file with an embedded Lua script, for building .exes on Windows
20
+ -- @return nil if could open files, error otherwise
21
+ local function make_rc(luafilename, rcfilename)
22
+ local rcfile = io.open(rcfilename, "w")
23
+ if not rcfile then
24
+ error("Could not open "..rcfilename.." for writing.")
25
+ end
26
+ rcfile:write("STRINGTABLE\r\nBEGIN\r\n")
27
+
28
+ local i = 1
29
+ for line in io.lines(luafilename) do
30
+ if not line:match("^#!") then
31
+ rcfile:write(i .. " \"")
32
+ line = line:gsub("\\", "\\\\"):gsub('"', '""'):gsub("[\r\n]+", "")
33
+ rcfile:write(line .. "\\r\\n\"\r\n")
34
+ i = i + 1
35
+ end
36
+ end
37
+
38
+ rcfile:write("END\r\n")
39
+
40
+ rcfile:close()
41
+ end
42
+
43
+ --- Driver function for the builtin build back-end.
44
+ -- @param rockspec table: the loaded rockspec.
45
+ -- @return boolean or (nil, string): true if no errors ocurred,
46
+ -- nil and an error message otherwise.
47
+ function run(rockspec)
48
+ assert(type(rockspec) == "table")
49
+ local compile_object, compile_library, compile_wrapper_binary
50
+
51
+ local build = rockspec.build
52
+ local variables = rockspec.variables
53
+
54
+ local function add_flags(extras, flag, flags)
55
+ if flags then
56
+ if type(flags) ~= "table" then
57
+ flags = { tostring(flags) }
58
+ end
59
+ util.variable_substitutions(flags, variables)
60
+ for _, v in ipairs(flags) do
61
+ table.insert(extras, flag:format(v))
62
+ end
63
+ end
64
+ end
65
+
66
+ -- MinGW basically behaves the same as Unix
67
+ if cfg.is_platform("mingw32") then
68
+ compile_object = function(object, source, defines, incdirs)
69
+ local extras = {}
70
+ add_flags(extras, "-D%s", defines)
71
+ add_flags(extras, "-I%s", incdirs)
72
+ return execute(variables.CC.." "..variables.CFLAGS, "-I"..variables.LUA_INCDIR, "-c", source, "-o", object, unpack(extras))
73
+ end
74
+ compile_library = function (library, objects, libraries, libdirs)
75
+ local extras = { unpack(objects) }
76
+ add_flags(extras, "-L%s", libdirs)
77
+ add_flags(extras, "%s.lib", libraries)
78
+ extras[#extras+1] = dir.path(variables.LUA_LIBDIR, variables.LUALIB)
79
+ extras[#extras+1] = "-l" .. (variables.MSVCRT or "msvcr80")
80
+ local ok = execute(variables.LD.." "..variables.LIBFLAG, "-o", library, unpack(extras))
81
+ return ok
82
+ end
83
+ compile_wrapper_binary = function(fullname, name)
84
+ local fullbasename = fullname:gsub("%.lua$", ""):gsub("/", "\\")
85
+ local basename = name:gsub("%.lua$", ""):gsub("/", "\\")
86
+ local rcname = basename..".rc"
87
+ local resname = basename..".o"
88
+ local wrapname = basename..".exe"
89
+ make_rc(fullname, fullbasename..".rc")
90
+ local ok = execute(variables.RC, "-o", resname, rcname)
91
+ if not ok then return ok end
92
+ ok = execute(variables.LD, "-o", wrapname, resname, variables.WRAPPER,
93
+ dir.path(variables.LUA_LIBDIR, variables.LUALIB), "-l" .. (variables.MSVCRT or "msvcr80"), "-luser32")
94
+ return ok, wrapname
95
+ end
96
+ compile_wrapper_binary = function(fullname, name) return true, name end
97
+ -- MSVC specific commands
98
+ elseif cfg.is_platform("win32") then
99
+ compile_object = function(object, source, defines, incdirs)
100
+ local extras = {}
101
+ add_flags(extras, "-D%s", defines)
102
+ add_flags(extras, "-I%s", incdirs)
103
+ return execute(variables.CC.." "..variables.CFLAGS, "-c", "-Fo"..object, "-I"..variables.LUA_INCDIR, source, unpack(extras))
104
+ end
105
+ compile_library = function(library, objects, libraries, libdirs, name)
106
+ local extras = { unpack(objects) }
107
+ add_flags(extras, "-libpath:%s", libdirs)
108
+ add_flags(extras, "%s.lib", libraries)
109
+ local basename = dir.base_name(library):gsub(".[^.]*$", "")
110
+ local deffile = basename .. ".def"
111
+ local def = io.open(dir.path(fs.current_dir(), deffile), "w+")
112
+ def:write("EXPORTS\n")
113
+ def:write("luaopen_"..name:gsub("%.", "_").."\n")
114
+ def:close()
115
+ local ok = execute(variables.LD, "-dll", "-def:"..deffile, "-out:"..library, dir.path(variables.LUA_LIBDIR, variables.LUALIB), unpack(extras))
116
+ local manifestfile = basename..".dll.manifest"
117
+ if ok and fs.exists(manifestfile) then
118
+ ok = execute(variables.MT, "-manifest", manifestfile, "-outputresource:"..basename..".dll;2")
119
+ end
120
+ return ok
121
+ end
122
+ compile_wrapper_binary = function(fullname, name)
123
+ local fullbasename = fullname:gsub("%.lua$", ""):gsub("/", "\\")
124
+ local basename = name:gsub("%.lua$", ""):gsub("/", "\\")
125
+ local rcname = basename..".rc"
126
+ local resname = basename..".res"
127
+ local wrapname = basename..".exe"
128
+ make_rc(fullname, fullbasename..".rc")
129
+ local ok = execute(variables.RC, "-r", "-fo"..resname, rcname)
130
+ if not ok then return ok end
131
+ ok = execute(variables.LD, "-out:"..wrapname, resname, variables.WRAPPER,
132
+ dir.path(variables.LUA_LIBDIR, variables.LUALIB), "user32.lib")
133
+ local manifestfile = wrapname..".manifest"
134
+ if ok and fs.exists(manifestfile) then
135
+ ok = execute(variables.MT, "-manifest", manifestfile, "-outputresource:"..wrapname..";1")
136
+ end
137
+ return ok, wrapname
138
+ end
139
+ else
140
+ -- Unix, Linux, Cygwin
141
+ compile_object = function(object, source, defines, incdirs)
142
+ local extras = {}
143
+ add_flags(extras, "-D%s", defines)
144
+ add_flags(extras, "-I%s", incdirs)
145
+ return execute(variables.CC.." "..variables.CFLAGS, "-I"..variables.LUA_INCDIR, "-c", source, "-o", object, unpack(extras))
146
+ end
147
+ compile_library = function (library, objects, libraries, libdirs)
148
+ local extras = { unpack(objects) }
149
+ add_flags(extras, "-L%s", libdirs)
150
+ add_flags(extras, "-Wl,-rpath,%s:", libdirs)
151
+ add_flags(extras, "-l%s", libraries)
152
+ -- Link to Lua
153
+ add_flags(extras, "-l%s", variables.LUA_LIB)
154
+ return execute(variables.LD.." "..variables.LIBFLAG, "-o", library, "-L"..variables.LUA_LIBDIR, unpack(extras))
155
+ end
156
+ compile_wrapper_binary = function(fullname, name) return true, name end
157
+ end
158
+
159
+ local ok = true
160
+ local err = "Build error"
161
+ local built_modules = {}
162
+ local luadir = path.lua_dir(rockspec.name, rockspec.version)
163
+ local libdir = path.lib_dir(rockspec.name, rockspec.version)
164
+ local docdir = path.doc_dir(rockspec.name, rockspec.version)
165
+ -- On Windows, compiles an .exe for each Lua file in build.install.bin, and
166
+ -- replaces the filename with the .exe name. Strips the .lua extension if it exists,
167
+ -- otherwise just appends .exe to the name
168
+ if build.install and build.install.bin then
169
+ for i, name in ipairs(build.install.bin) do
170
+ local fullname = dir.path(fs.current_dir(), name)
171
+ local match = name:match("%.lua$")
172
+ local basename = name:gsub("%.lua$", "")
173
+ local file
174
+ if not match then
175
+ file = io.open(fullname)
176
+ end
177
+ if match or (file and file:read():match("#!.*lua.*")) then
178
+ ok, name = compile_wrapper_binary(fullname, name)
179
+ if ok then
180
+ build.install.bin[i] = name
181
+ else
182
+ if file then file:close() end
183
+ return nil, "Build error in wrapper binaries"
184
+ end
185
+ end
186
+ if file then file:close() end
187
+ end
188
+ end
189
+ for name, info in pairs(build.modules) do
190
+ local moddir = path.module_to_path(name)
191
+ if type(info) == "string" then
192
+ local ext = info:match(".([^.]+)$")
193
+ if ext == "lua" then
194
+ if info:match("init%.lua$") and not name:match("%.init$") then
195
+ moddir = path.module_to_path(name..".init")
196
+ end
197
+ local dest = dir.path(luadir, moddir)
198
+ built_modules[info] = dest
199
+ else
200
+ info = {info}
201
+ end
202
+ end
203
+ if type(info) == "table" then
204
+ local objects = {}
205
+ local sources = info.sources
206
+ if info[1] then sources = info end
207
+ if type(sources) == "string" then sources = {sources} end
208
+ for _, source in ipairs(sources) do
209
+ local object = source:gsub(".[^.]*$", "."..cfg.obj_extension)
210
+ if not object then
211
+ object = source.."."..cfg.obj_extension
212
+ end
213
+ ok = compile_object(object, source, info.defines, info.incdirs)
214
+ if not ok then
215
+ err = "Failed compiling object "..object
216
+ break
217
+ end
218
+ table.insert(objects, object)
219
+ end
220
+ if not ok then break end
221
+ local module_name = dir.path(moddir, name:match("([^.]*)$").."."..cfg.lib_extension):gsub("//", "/")
222
+ if moddir ~= "" then
223
+ fs.make_dir(moddir)
224
+ end
225
+ local dest = dir.path(libdir, moddir)
226
+ built_modules[module_name] = dest
227
+ ok = compile_library(module_name, objects, info.libraries, info.libdirs, name)
228
+ if not ok then
229
+ err = "Failed compiling module "..module_name
230
+ break
231
+ end
232
+ end
233
+ end
234
+ for name, dest in pairs(built_modules) do
235
+ fs.make_dir(dest)
236
+ ok = fs.copy(name, dest)
237
+ if not ok then
238
+ err = "Failed installing "..name.." in "..dest
239
+ break
240
+ end
241
+ end
242
+ if ok then
243
+ if fs.is_dir("lua") then
244
+ ok = fs.copy_contents("lua", luadir)
245
+ if not ok then err = "Failed copying contents of 'lua' directory." end
246
+ end
247
+ end
248
+ if ok then
249
+ return true
250
+ else
251
+ return nil, err
252
+ end
253
+ end
@@ -0,0 +1,54 @@
1
+
2
+ --- Build back-end for CMake-based modules.
3
+ module("luarocks.build.cmake", package.seeall)
4
+
5
+ local fs = require("luarocks.fs")
6
+ local util = require("luarocks.util")
7
+ local cfg = require("luarocks.cfg")
8
+
9
+ --- Driver function for the "cmake" build back-end.
10
+ -- @param rockspec table: the loaded rockspec.
11
+ -- @return boolean or (nil, string): true if no errors ocurred,
12
+ -- nil and an error message otherwise.
13
+ function run(rockspec)
14
+ assert(type(rockspec) == "table")
15
+ local build = rockspec.build
16
+ local variables = build.variables or {}
17
+
18
+ -- Pass Env variables
19
+ variables.CMAKE_MODULE_PATH=os.getenv("CMAKE_MODULE_PATH")
20
+ variables.CMAKE_LIBRARY_PATH=os.getenv("CMAKE_LIBRARY_PATH")
21
+ variables.CMAKE_INCLUDE_PATH=os.getenv("CMAKE_INCLUDE_PATH")
22
+
23
+ util.variable_substitutions(variables, rockspec.variables)
24
+
25
+ -- If inline cmake is present create CMakeLists.txt from it.
26
+ if type(build.cmake) == "string" then
27
+ local cmake = assert(io.open(fs.current_dir().."/CMakeLists.txt", "w"))
28
+ cmake:write(build.cmake)
29
+ cmake:close()
30
+ end
31
+
32
+
33
+ -- Execute cmake with variables.
34
+ local args = ""
35
+ if cfg.cmake_generator then
36
+ args = args .. ' -G"'..cfg.cmake_generator.. '"'
37
+ end
38
+ for k,v in pairs(variables) do
39
+ args = args .. ' -D' ..k.. '="' ..v.. '"'
40
+ end
41
+
42
+ if not fs.execute(rockspec.variables.CMAKE.." . " ..args) then
43
+ return nil, "Failed cmake."
44
+ end
45
+
46
+ if not fs.execute(rockspec.variables.MAKE.." -fMakefile") then
47
+ return nil, "Failed building."
48
+ end
49
+
50
+ if not fs.execute(rockspec.variables.MAKE.." -fMakefile install") then
51
+ return nil, "Failed installing."
52
+ end
53
+ return true
54
+ end
@@ -0,0 +1,32 @@
1
+
2
+ --- Build back-end for raw listing of commands in rockspec files.
3
+ module("luarocks.build.command", package.seeall)
4
+
5
+ local fs = require("luarocks.fs")
6
+ local util = require("luarocks.util")
7
+
8
+ --- Driver function for the "command" build back-end.
9
+ -- @param rockspec table: the loaded rockspec.
10
+ -- @return boolean or (nil, string): true if no errors ocurred,
11
+ -- nil and an error message otherwise.
12
+ function run(rockspec)
13
+ assert(type(rockspec) == "table")
14
+
15
+ local build = rockspec.build
16
+
17
+ util.variable_substitutions(build, rockspec.variables)
18
+
19
+ if build.build_command then
20
+ util.printout(build.build_command)
21
+ if not fs.execute(build.build_command) then
22
+ return nil, "Failed building."
23
+ end
24
+ end
25
+ if build.install_command then
26
+ util.printout(build.install_command)
27
+ if not fs.execute(build.install_command) then
28
+ return nil, "Failed installing."
29
+ end
30
+ end
31
+ return true
32
+ end
@@ -0,0 +1,92 @@
1
+
2
+ --- Build back-end for using Makefile-based packages.
3
+ module("luarocks.build.make", package.seeall)
4
+
5
+ local fs = require("luarocks.fs")
6
+ local util = require("luarocks.util")
7
+ local cfg = require("luarocks.cfg")
8
+
9
+ --- Call "make" with given target and variables
10
+ -- @param make_cmd string: the make command to be used (typically
11
+ -- configured through variables.MAKE in the config files, or
12
+ -- the appropriate platform-specific default).
13
+ -- @param pass boolean: If true, run make; if false, do nothing.
14
+ -- @param target string: The make target; an empty string indicates
15
+ -- the default target.
16
+ -- @param variables table: A table containing string-string key-value
17
+ -- pairs representing variable assignments to be passed to make.
18
+ -- @return boolean: false if any errors occurred, true otherwise.
19
+ local function make_pass(make_cmd, pass, target, variables)
20
+ assert(type(pass) == "boolean")
21
+ assert(type(target) == "string")
22
+ assert(type(variables) == "table")
23
+
24
+ local assignments = {}
25
+ for k,v in pairs(variables) do
26
+ table.insert(assignments, k.."="..v)
27
+ end
28
+ if pass then
29
+ return fs.execute(make_cmd.." "..target, unpack(assignments))
30
+ else
31
+ return true
32
+ end
33
+ end
34
+
35
+ --- Driver function for the "make" build back-end.
36
+ -- @param rockspec table: the loaded rockspec.
37
+ -- @return boolean or (nil, string): true if no errors ocurred,
38
+ -- nil and an error message otherwise.
39
+ function run(rockspec)
40
+ assert(type(rockspec) == "table")
41
+
42
+ local build = rockspec.build
43
+
44
+ if build.build_pass == nil then build.build_pass = true end
45
+ if build.install_pass == nil then build.install_pass = true end
46
+ build.build_variables = build.build_variables or {}
47
+ build.install_variables = build.install_variables or {}
48
+ build.build_target = build.build_target or ""
49
+ build.install_target = build.install_target or "install"
50
+ local makefile = build.makefile or cfg.makefile
51
+ if makefile then
52
+ -- Assumes all make's accept -f. True for POSIX make, GNU make and Microsoft nmake.
53
+ build.build_target = "-f "..makefile.." "..build.build_target
54
+ build.install_target = "-f "..makefile.." "..build.install_target
55
+ end
56
+
57
+ if build.variables then
58
+ for var, val in pairs(build.variables) do
59
+ build.build_variables[var] = val
60
+ build.install_variables[var] = val
61
+ end
62
+ end
63
+
64
+ util.warn_if_not_used(build.build_variables, { CFLAGS=true }, "variable %s was not passed in build_variables")
65
+
66
+ util.variable_substitutions(build.build_variables, rockspec.variables)
67
+ util.variable_substitutions(build.install_variables, rockspec.variables)
68
+
69
+ local auto_variables = { "CC" }
70
+
71
+ for _, variable in pairs(auto_variables) do
72
+ if not build.build_variables[variable] then
73
+ build.build_variables[variable] = rockspec.variables[variable]
74
+ end
75
+ if not build.install_variables[variable] then
76
+ build.install_variables[variable] = rockspec.variables[variable]
77
+ end
78
+ end
79
+
80
+ -- backwards compatibility
81
+ local make_cmd = cfg.make or rockspec.variables.MAKE
82
+
83
+ local ok = make_pass(make_cmd, build.build_pass, build.build_target, build.build_variables)
84
+ if not ok then
85
+ return nil, "Failed building."
86
+ end
87
+ ok = make_pass(make_cmd, build.install_pass, build.install_target, build.install_variables)
88
+ if not ok then
89
+ return nil, "Failed installing."
90
+ end
91
+ return true
92
+ end
@@ -0,0 +1,85 @@
1
+
2
+ --- Module handling the LuaRocks local cache.
3
+ -- Adds a rock or rockspec to a rocks server.
4
+ module("luarocks.cache", package.seeall)
5
+
6
+ local fs = require("luarocks.fs")
7
+ local cfg = require("luarocks.cfg")
8
+ local dir = require("luarocks.dir")
9
+ local util = require("luarocks.util")
10
+
11
+ function get_upload_server(server)
12
+ if not server then server = cfg.upload_server end
13
+ if not server then
14
+ return nil, "No server specified and no default configured with upload_server."
15
+ end
16
+ return server, cfg.upload_servers and cfg.upload_servers[server]
17
+ end
18
+
19
+ function get_server_urls(server, upload_server)
20
+ local download_url = server
21
+ local login_url = nil
22
+ if upload_server then
23
+ if upload_server.rsync then download_url = "rsync://"..upload_server.rsync
24
+ elseif upload_server.http then download_url = "http://"..upload_server.http
25
+ elseif upload_server.ftp then download_url = "ftp://"..upload_server.ftp
26
+ end
27
+
28
+ if upload_server.ftp then login_url = "ftp://"..upload_server.ftp
29
+ elseif upload_server.sftp then login_url = "sftp://"..upload_server.sftp
30
+ end
31
+ end
32
+ return download_url, login_url
33
+ end
34
+
35
+ function split_server_url(server, url, user, password)
36
+ local protocol, server_path = dir.split_url(url)
37
+ if server_path:match("@") then
38
+ local credentials
39
+ credentials, server_path = server_path:match("([^@]*)@(.*)")
40
+ if credentials:match(":") then
41
+ user, password = credentials:match("([^:]*):(.*)")
42
+ else
43
+ user = credentials
44
+ end
45
+ end
46
+ local local_cache
47
+ if cfg.local_cache then
48
+ local_cache = cfg.local_cache .. "/" .. server
49
+ end
50
+ return local_cache, protocol, server_path, user, password
51
+ end
52
+
53
+ function refresh_local_cache(server, url, user, password)
54
+ local local_cache, protocol, server_path, user, password = split_server_url(server, url, user, password)
55
+
56
+ fs.make_dir(cfg.local_cache)
57
+
58
+ local tmp_cache = false
59
+ if not local_cache then
60
+ local_cache = fs.make_temp_dir("local_cache")
61
+ tmp_cache = true
62
+ end
63
+ local ok = fs.make_dir(local_cache)
64
+ if not ok then
65
+ return nil, "Failed creating local cache dir."
66
+ end
67
+ fs.change_dir(local_cache)
68
+ util.printout("Refreshing cache "..local_cache.."...")
69
+
70
+ -- TODO abstract away explicit 'wget' call
71
+ local ok = false
72
+ if protocol == "rsync" then
73
+ local srv, path = server_path:match("([^/]+)(/.+)")
74
+ ok = fs.execute(cfg.variables.RSYNC.." -avz -e ssh "..user.."@"..srv..":"..path.."/ "..local_cache.."/")
75
+ else
76
+ local login_info = ""
77
+ if user then login_info = " --user="..user end
78
+ if password then login_info = login_info .. " --password="..password end
79
+ ok = fs.execute(cfg.variables.WGET.." --no-cache -q -m -np -nd "..protocol.."://"..server_path..login_info)
80
+ end
81
+ if not ok then
82
+ return nil, "Failed downloading cache."
83
+ end
84
+ return local_cache, protocol, server_path, user, password
85
+ end