script_core 0.2.7 → 0.3.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (283) hide show
  1. checksums.yaml +4 -4
  2. data/.ruby-version +1 -1
  3. data/Gemfile +2 -2
  4. data/ext/enterprise_script_service/Rakefile +1 -1
  5. data/ext/enterprise_script_service/mruby/.github/workflows/build.yml +117 -74
  6. data/ext/enterprise_script_service/mruby/.github/workflows/codeql-analysis.yml +41 -37
  7. data/ext/enterprise_script_service/mruby/.github/workflows/lint.yml +23 -0
  8. data/ext/enterprise_script_service/mruby/.github/workflows/oss-fuzz.yml +27 -0
  9. data/ext/enterprise_script_service/mruby/.github/workflows/spell-checker.yml +17 -0
  10. data/ext/enterprise_script_service/mruby/.gitlab-ci.yml +3 -3
  11. data/ext/enterprise_script_service/mruby/.markdownlint.yml +16 -0
  12. data/ext/enterprise_script_service/mruby/.travis.yml +2 -2
  13. data/ext/enterprise_script_service/mruby/.yamllint +8 -0
  14. data/ext/enterprise_script_service/mruby/AUTHORS +3 -0
  15. data/ext/enterprise_script_service/mruby/CODEOWNERS +1 -0
  16. data/ext/enterprise_script_service/mruby/CONTRIBUTING.md +6 -13
  17. data/ext/enterprise_script_service/mruby/Doxyfile +4 -4
  18. data/ext/enterprise_script_service/mruby/LICENSE +1 -1
  19. data/ext/enterprise_script_service/mruby/Makefile +1 -1
  20. data/ext/enterprise_script_service/mruby/README.md +4 -14
  21. data/ext/enterprise_script_service/mruby/Rakefile +18 -108
  22. data/ext/enterprise_script_service/mruby/TODO.md +17 -0
  23. data/ext/enterprise_script_service/mruby/appveyor.yml +31 -25
  24. data/ext/enterprise_script_service/mruby/benchmark/bm_ao_render.rb +1 -1
  25. data/ext/enterprise_script_service/mruby/build_config.rb +9 -152
  26. data/ext/enterprise_script_service/mruby/{examples/targets/build_config_ArduinoDue.rb → build_config/ArduinoDue.rb} +2 -19
  27. data/ext/enterprise_script_service/mruby/{examples/targets/build_config_IntelEdison.rb → build_config/IntelEdison.rb} +2 -2
  28. data/ext/enterprise_script_service/mruby/{examples/targets/build_config_IntelGalileo.rb → build_config/IntelGalileo.rb} +1 -18
  29. data/ext/enterprise_script_service/mruby/{examples/targets/build_config_RX630.rb → build_config/RX630.rb} +2 -19
  30. data/ext/enterprise_script_service/mruby/build_config/android_arm64-v8a.rb +11 -0
  31. data/ext/enterprise_script_service/mruby/build_config/android_armeabi.rb +11 -0
  32. data/ext/enterprise_script_service/mruby/{examples/targets/build_config_android_armeabi_v7a_neon_hard.rb → build_config/android_armeabi_v7a_neon_hard.rb} +0 -15
  33. data/ext/enterprise_script_service/mruby/build_config/bench.rb +11 -0
  34. data/ext/enterprise_script_service/mruby/build_config/boxing.rb +21 -0
  35. data/ext/enterprise_script_service/mruby/{examples/targets/build_config_chipKITMax32.rb → build_config/chipKITMax32.rb} +2 -19
  36. data/ext/enterprise_script_service/mruby/{travis_config.rb → build_config/ci/gcc-clang.rb} +10 -10
  37. data/ext/enterprise_script_service/mruby/build_config/ci/msvc.rb +20 -0
  38. data/ext/enterprise_script_service/mruby/build_config/clang-asan.rb +11 -0
  39. data/ext/enterprise_script_service/mruby/build_config/cross-32bit.rb +14 -0
  40. data/ext/enterprise_script_service/mruby/build_config/default.rb +80 -0
  41. data/ext/enterprise_script_service/mruby/{examples/targets/build_config_dreamcast_shelf.rb → build_config/dreamcast_shelf.rb} +5 -19
  42. data/ext/enterprise_script_service/mruby/build_config/gameboyadvance.rb +73 -0
  43. data/ext/enterprise_script_service/mruby/build_config/host-cxx.rb +12 -0
  44. data/ext/enterprise_script_service/mruby/build_config/host-debug.rb +20 -0
  45. data/ext/enterprise_script_service/mruby/build_config/host-gprof.rb +14 -0
  46. data/ext/enterprise_script_service/mruby/build_config/host-m32.rb +15 -0
  47. data/ext/enterprise_script_service/mruby/build_config/host-shared.rb +36 -0
  48. data/ext/enterprise_script_service/mruby/build_config/mrbc.rb +11 -0
  49. data/ext/enterprise_script_service/mruby/build_config/no-float.rb +17 -0
  50. data/ext/enterprise_script_service/mruby/doc/guides/compile.md +138 -49
  51. data/ext/enterprise_script_service/mruby/doc/guides/debugger.md +5 -4
  52. data/ext/enterprise_script_service/mruby/doc/guides/gc-arena-howto.md +1 -1
  53. data/ext/enterprise_script_service/mruby/doc/guides/mrbconf.md +49 -22
  54. data/ext/enterprise_script_service/mruby/doc/guides/mrbgems.md +31 -14
  55. data/ext/enterprise_script_service/mruby/doc/guides/symbol.md +83 -0
  56. data/ext/enterprise_script_service/mruby/doc/limitations.md +35 -36
  57. data/ext/enterprise_script_service/mruby/doc/mruby3.md +163 -0
  58. data/ext/enterprise_script_service/mruby/doc/opcode.md +93 -107
  59. data/ext/enterprise_script_service/mruby/examples/mrbgems/c_and_ruby_extension_example/mrblib/example.rb +1 -1
  60. data/ext/enterprise_script_service/mruby/examples/mrbgems/c_and_ruby_extension_example/src/example.c +5 -1
  61. data/ext/enterprise_script_service/mruby/examples/mrbgems/c_extension_example/src/example.c +5 -1
  62. data/ext/enterprise_script_service/mruby/examples/mrbgems/ruby_extension_example/mrblib/example.rb +1 -1
  63. data/ext/enterprise_script_service/mruby/include/mrbconf.h +81 -62
  64. data/ext/enterprise_script_service/mruby/include/mruby.h +137 -96
  65. data/ext/enterprise_script_service/mruby/include/mruby/array.h +23 -6
  66. data/ext/enterprise_script_service/mruby/include/mruby/boxing_nan.h +73 -48
  67. data/ext/enterprise_script_service/mruby/include/mruby/boxing_no.h +8 -8
  68. data/ext/enterprise_script_service/mruby/include/mruby/boxing_word.h +79 -48
  69. data/ext/enterprise_script_service/mruby/include/mruby/class.h +10 -8
  70. data/ext/enterprise_script_service/mruby/include/mruby/common.h +4 -1
  71. data/ext/enterprise_script_service/mruby/include/mruby/compile.h +13 -7
  72. data/ext/enterprise_script_service/mruby/include/mruby/debug.h +2 -2
  73. data/ext/enterprise_script_service/mruby/include/mruby/dump.h +17 -35
  74. data/ext/enterprise_script_service/mruby/include/mruby/endian.h +44 -0
  75. data/ext/enterprise_script_service/mruby/include/mruby/error.h +39 -5
  76. data/ext/enterprise_script_service/mruby/include/mruby/gc.h +1 -0
  77. data/ext/enterprise_script_service/mruby/include/mruby/hash.h +33 -13
  78. data/ext/enterprise_script_service/mruby/include/mruby/irep.h +64 -14
  79. data/ext/enterprise_script_service/mruby/include/mruby/khash.h +6 -14
  80. data/ext/enterprise_script_service/mruby/include/mruby/numeric.h +36 -63
  81. data/ext/enterprise_script_service/mruby/include/mruby/opcode.h +1 -27
  82. data/ext/enterprise_script_service/mruby/include/mruby/ops.h +27 -23
  83. data/ext/enterprise_script_service/mruby/include/mruby/presym.h +40 -0
  84. data/ext/enterprise_script_service/mruby/include/mruby/presym/disable.h +70 -0
  85. data/ext/enterprise_script_service/mruby/include/mruby/presym/enable.h +37 -0
  86. data/ext/enterprise_script_service/mruby/include/mruby/presym/scanning.h +73 -0
  87. data/ext/enterprise_script_service/mruby/include/mruby/proc.h +80 -13
  88. data/ext/enterprise_script_service/mruby/include/mruby/string.h +10 -15
  89. data/ext/enterprise_script_service/mruby/include/mruby/throw.h +14 -3
  90. data/ext/enterprise_script_service/mruby/include/mruby/value.h +29 -19
  91. data/ext/enterprise_script_service/mruby/include/mruby/variable.h +1 -0
  92. data/ext/enterprise_script_service/mruby/include/mruby/version.h +26 -7
  93. data/ext/enterprise_script_service/mruby/lib/mruby/build.rb +198 -44
  94. data/ext/enterprise_script_service/mruby/lib/mruby/build/command.rb +55 -37
  95. data/ext/enterprise_script_service/mruby/lib/mruby/build/load_gems.rb +12 -10
  96. data/ext/enterprise_script_service/mruby/lib/{mruby-core-ext.rb → mruby/core_ext.rb} +10 -3
  97. data/ext/enterprise_script_service/mruby/lib/mruby/gem.rb +75 -32
  98. data/ext/enterprise_script_service/mruby/lib/mruby/lockfile.rb +1 -1
  99. data/ext/enterprise_script_service/mruby/lib/mruby/presym.rb +132 -0
  100. data/ext/enterprise_script_service/mruby/mrbgems/default-no-fpu.gembox +3 -0
  101. data/ext/enterprise_script_service/mruby/mrbgems/default-no-stdio.gembox +4 -0
  102. data/ext/enterprise_script_service/mruby/mrbgems/default.gembox +9 -88
  103. data/ext/enterprise_script_service/mruby/mrbgems/full-core.gembox +1 -4
  104. data/ext/enterprise_script_service/mruby/mrbgems/math.gembox +10 -0
  105. data/ext/enterprise_script_service/mruby/mrbgems/metaprog.gembox +15 -0
  106. data/ext/enterprise_script_service/mruby/mrbgems/mruby-array-ext/mrblib/array.rb +1 -1
  107. data/ext/enterprise_script_service/mruby/mrbgems/mruby-array-ext/src/array.c +5 -4
  108. data/ext/enterprise_script_service/mruby/mrbgems/mruby-bin-config/mrbgem.rake +28 -19
  109. data/ext/enterprise_script_service/mruby/mrbgems/mruby-bin-config/mruby-config +18 -8
  110. data/ext/enterprise_script_service/mruby/mrbgems/mruby-bin-debugger/bintest/mrdb.rb +3 -6
  111. data/ext/enterprise_script_service/mruby/mrbgems/mruby-bin-debugger/bintest/print.rb +10 -10
  112. data/ext/enterprise_script_service/mruby/mrbgems/mruby-bin-debugger/tools/mrdb/apibreak.c +14 -9
  113. data/ext/enterprise_script_service/mruby/mrbgems/mruby-bin-debugger/tools/mrdb/apiprint.c +3 -2
  114. data/ext/enterprise_script_service/mruby/mrbgems/mruby-bin-debugger/tools/mrdb/mrdb.c +4 -3
  115. data/ext/enterprise_script_service/mruby/mrbgems/mruby-bin-debugger/tools/mrdb/mrdb.h +2 -6
  116. data/ext/enterprise_script_service/mruby/mrbgems/mruby-bin-debugger/tools/mrdb/mrdbconf.h +4 -4
  117. data/ext/enterprise_script_service/mruby/mrbgems/mruby-bin-mirb/bintest/mirb.rb +23 -5
  118. data/ext/enterprise_script_service/mruby/mrbgems/mruby-bin-mirb/mrbgem.rake +11 -2
  119. data/ext/enterprise_script_service/mruby/mrbgems/mruby-bin-mirb/tools/mirb/mirb.c +41 -34
  120. data/ext/enterprise_script_service/mruby/mrbgems/{mruby-compiler → mruby-bin-mrbc}/bintest/mrbc.rb +0 -0
  121. data/ext/enterprise_script_service/mruby/mrbgems/mruby-bin-mrbc/mrbgem.rake +3 -4
  122. data/ext/enterprise_script_service/mruby/mrbgems/mruby-bin-mrbc/tools/mrbc/mrbc.c +19 -9
  123. data/ext/enterprise_script_service/mruby/mrbgems/mruby-bin-mruby/bintest/mruby.rb +25 -4
  124. data/ext/enterprise_script_service/mruby/mrbgems/mruby-bin-mruby/mrbgem.rake +1 -1
  125. data/ext/enterprise_script_service/mruby/mrbgems/mruby-bin-mruby/tools/mruby/mruby.c +22 -6
  126. data/ext/enterprise_script_service/mruby/mrbgems/mruby-bin-strip/bintest/mruby-strip.rb +1 -1
  127. data/ext/enterprise_script_service/mruby/mrbgems/mruby-bin-strip/tools/mruby-strip/mruby-strip.c +2 -2
  128. data/ext/enterprise_script_service/mruby/mrbgems/mruby-catch/mrbgem.rake +5 -0
  129. data/ext/enterprise_script_service/mruby/mrbgems/mruby-catch/mrblib/catch.rb +27 -0
  130. data/ext/enterprise_script_service/mruby/mrbgems/mruby-class-ext/src/class.c +2 -1
  131. data/ext/enterprise_script_service/mruby/mrbgems/mruby-compiler/core/codegen.c +430 -399
  132. data/ext/enterprise_script_service/mruby/mrbgems/mruby-compiler/core/keywords +5 -0
  133. data/ext/enterprise_script_service/mruby/mrbgems/mruby-compiler/core/lex.def +49 -44
  134. data/ext/enterprise_script_service/mruby/mrbgems/mruby-compiler/core/parse.y +559 -217
  135. data/ext/enterprise_script_service/mruby/mrbgems/mruby-compiler/core/y.tab.c +4774 -4193
  136. data/ext/enterprise_script_service/mruby/mrbgems/mruby-compiler/mrbgem.rake +18 -19
  137. data/ext/enterprise_script_service/mruby/mrbgems/mruby-complex/mrblib/complex.rb +1 -1
  138. data/ext/enterprise_script_service/mruby/mrbgems/mruby-complex/src/complex.c +8 -7
  139. data/ext/enterprise_script_service/mruby/mrbgems/mruby-complex/test/complex.rb +4 -4
  140. data/ext/enterprise_script_service/mruby/mrbgems/mruby-enumerator/mrblib/enumerator.rb +1 -0
  141. data/ext/enterprise_script_service/mruby/mrbgems/mruby-enumerator/test/enumerator.rb +2 -2
  142. data/ext/enterprise_script_service/mruby/mrbgems/mruby-error/mrbgem.rake +2 -2
  143. data/ext/enterprise_script_service/mruby/mrbgems/mruby-eval/src/eval.c +17 -25
  144. data/ext/enterprise_script_service/mruby/mrbgems/mruby-fiber/src/fiber.c +18 -13
  145. data/ext/enterprise_script_service/mruby/mrbgems/mruby-hash-ext/src/hash-ext.c +30 -2
  146. data/ext/enterprise_script_service/mruby/mrbgems/mruby-hash-ext/test/hash.rb +7 -0
  147. data/ext/enterprise_script_service/mruby/mrbgems/mruby-inline-struct/test/inline.c +2 -2
  148. data/ext/enterprise_script_service/mruby/mrbgems/mruby-io/README.md +18 -16
  149. data/ext/enterprise_script_service/mruby/mrbgems/mruby-io/include/mruby/ext/io.h +2 -2
  150. data/ext/enterprise_script_service/mruby/mrbgems/mruby-io/mrblib/file.rb +9 -4
  151. data/ext/enterprise_script_service/mruby/mrbgems/mruby-io/mrblib/io.rb +2 -2
  152. data/ext/enterprise_script_service/mruby/mrbgems/mruby-io/src/file.c +55 -52
  153. data/ext/enterprise_script_service/mruby/mrbgems/mruby-io/src/file_test.c +4 -2
  154. data/ext/enterprise_script_service/mruby/mrbgems/mruby-io/src/io.c +99 -87
  155. data/ext/enterprise_script_service/mruby/mrbgems/mruby-io/test/file.rb +2 -0
  156. data/ext/enterprise_script_service/mruby/mrbgems/mruby-io/test/io.rb +2 -3
  157. data/ext/enterprise_script_service/mruby/mrbgems/mruby-io/test/mruby_io_test.c +1 -1
  158. data/ext/enterprise_script_service/mruby/mrbgems/mruby-kernel-ext/src/kernel.c +7 -6
  159. data/ext/enterprise_script_service/mruby/mrbgems/mruby-math/src/math.c +13 -12
  160. data/ext/enterprise_script_service/mruby/mrbgems/mruby-math/test/math.rb +5 -4
  161. data/ext/enterprise_script_service/mruby/mrbgems/mruby-metaprog/src/metaprog.c +43 -58
  162. data/ext/enterprise_script_service/mruby/mrbgems/mruby-metaprog/test/metaprog.rb +4 -4
  163. data/ext/enterprise_script_service/mruby/mrbgems/mruby-method/README.md +4 -3
  164. data/ext/enterprise_script_service/mruby/mrbgems/mruby-method/src/method.c +77 -74
  165. data/ext/enterprise_script_service/mruby/mrbgems/mruby-method/test/method.rb +4 -4
  166. data/ext/enterprise_script_service/mruby/mrbgems/mruby-numeric-ext/src/numeric_ext.c +14 -13
  167. data/ext/enterprise_script_service/mruby/mrbgems/mruby-object-ext/src/object.c +5 -4
  168. data/ext/enterprise_script_service/mruby/mrbgems/mruby-objectspace/src/mruby_objectspace.c +18 -12
  169. data/ext/enterprise_script_service/mruby/mrbgems/mruby-os-memsize/mrbgem.rake +10 -0
  170. data/ext/enterprise_script_service/mruby/mrbgems/mruby-os-memsize/src/memsize.c +231 -0
  171. data/ext/enterprise_script_service/mruby/mrbgems/mruby-os-memsize/test/memsize.rb +63 -0
  172. data/ext/enterprise_script_service/mruby/mrbgems/mruby-pack/README.md +15 -18
  173. data/ext/enterprise_script_service/mruby/mrbgems/mruby-pack/src/pack.c +38 -88
  174. data/ext/enterprise_script_service/mruby/mrbgems/mruby-print/mrblib/print.rb +1 -30
  175. data/ext/enterprise_script_service/mruby/mrbgems/mruby-print/src/print.c +62 -26
  176. data/ext/enterprise_script_service/mruby/mrbgems/mruby-proc-ext/src/proc.c +32 -19
  177. data/ext/enterprise_script_service/mruby/mrbgems/mruby-proc-ext/test/proc.c +1 -1
  178. data/ext/enterprise_script_service/mruby/mrbgems/mruby-random/src/random.c +98 -43
  179. data/ext/enterprise_script_service/mruby/mrbgems/mruby-random/test/random.rb +2 -2
  180. data/ext/enterprise_script_service/mruby/mrbgems/mruby-range-ext/mrblib/range.rb +39 -6
  181. data/ext/enterprise_script_service/mruby/mrbgems/mruby-range-ext/src/range.c +20 -40
  182. data/ext/enterprise_script_service/mruby/mrbgems/mruby-range-ext/test/range.rb +27 -3
  183. data/ext/enterprise_script_service/mruby/mrbgems/mruby-rational/mrblib/rational.rb +11 -17
  184. data/ext/enterprise_script_service/mruby/mrbgems/mruby-rational/src/rational.c +216 -38
  185. data/ext/enterprise_script_service/mruby/mrbgems/mruby-rational/test/rational.rb +6 -6
  186. data/ext/enterprise_script_service/mruby/mrbgems/mruby-sleep/README.md +6 -4
  187. data/ext/enterprise_script_service/mruby/mrbgems/mruby-sleep/src/mrb_sleep.c +4 -4
  188. data/ext/enterprise_script_service/mruby/mrbgems/mruby-socket/README.md +3 -2
  189. data/ext/enterprise_script_service/mruby/mrbgems/mruby-socket/src/socket.c +47 -45
  190. data/ext/enterprise_script_service/mruby/mrbgems/mruby-sprintf/src/sprintf.c +102 -71
  191. data/ext/enterprise_script_service/mruby/mrbgems/mruby-sprintf/test/sprintf.rb +4 -2
  192. data/ext/enterprise_script_service/mruby/mrbgems/mruby-string-ext/mrblib/string.rb +23 -1
  193. data/ext/enterprise_script_service/mruby/mrbgems/mruby-string-ext/src/string.c +13 -9
  194. data/ext/enterprise_script_service/mruby/mrbgems/mruby-struct/mrblib/struct.rb +1 -1
  195. data/ext/enterprise_script_service/mruby/mrbgems/mruby-struct/src/struct.c +18 -25
  196. data/ext/enterprise_script_service/mruby/mrbgems/mruby-symbol-ext/src/symbol.c +6 -5
  197. data/ext/enterprise_script_service/mruby/mrbgems/mruby-symbol-ext/test/symbol.rb +1 -1
  198. data/ext/enterprise_script_service/mruby/mrbgems/mruby-test/README.md +0 -1
  199. data/ext/enterprise_script_service/mruby/mrbgems/mruby-test/driver.c +5 -5
  200. data/ext/enterprise_script_service/mruby/mrbgems/mruby-test/mrbgem.rake +16 -44
  201. data/ext/enterprise_script_service/mruby/mrbgems/mruby-test/vformat.c +4 -4
  202. data/ext/enterprise_script_service/mruby/mrbgems/mruby-time/src/time.c +27 -27
  203. data/ext/enterprise_script_service/mruby/mrbgems/stdlib-ext.gembox +18 -0
  204. data/ext/enterprise_script_service/mruby/mrbgems/stdlib-io.gembox +12 -0
  205. data/ext/enterprise_script_service/mruby/mrbgems/stdlib.gembox +54 -0
  206. data/ext/enterprise_script_service/mruby/mrblib/10error.rb +4 -0
  207. data/ext/enterprise_script_service/mruby/mrblib/array.rb +17 -9
  208. data/ext/enterprise_script_service/mruby/mrblib/enum.rb +1 -1
  209. data/ext/enterprise_script_service/mruby/mrblib/hash.rb +0 -20
  210. data/ext/enterprise_script_service/mruby/mrblib/init_mrblib.c +0 -11
  211. data/ext/enterprise_script_service/mruby/mrblib/numeric.rb +36 -11
  212. data/ext/enterprise_script_service/mruby/mrblib/range.rb +25 -3
  213. data/ext/enterprise_script_service/mruby/oss-fuzz/mruby_proto_fuzzer.cpp +2 -2
  214. data/ext/enterprise_script_service/mruby/oss-fuzz/proto_to_ruby.h +1 -1
  215. data/ext/enterprise_script_service/mruby/src/array.c +43 -80
  216. data/ext/enterprise_script_service/mruby/src/backtrace.c +16 -17
  217. data/ext/enterprise_script_service/mruby/src/class.c +774 -182
  218. data/ext/enterprise_script_service/mruby/src/codedump.c +223 -198
  219. data/ext/enterprise_script_service/mruby/src/debug.c +6 -6
  220. data/ext/enterprise_script_service/mruby/src/dump.c +466 -141
  221. data/ext/enterprise_script_service/mruby/src/enum.c +1 -1
  222. data/ext/enterprise_script_service/mruby/src/error.c +36 -13
  223. data/ext/enterprise_script_service/mruby/src/etc.c +43 -34
  224. data/ext/enterprise_script_service/mruby/src/fmt_fp.c +5 -6
  225. data/ext/enterprise_script_service/mruby/src/gc.c +73 -71
  226. data/ext/enterprise_script_service/mruby/src/hash.c +1050 -707
  227. data/ext/enterprise_script_service/mruby/src/kernel.c +75 -220
  228. data/ext/enterprise_script_service/mruby/src/load.c +196 -166
  229. data/ext/enterprise_script_service/mruby/src/numeric.c +352 -314
  230. data/ext/enterprise_script_service/mruby/src/object.c +97 -90
  231. data/ext/enterprise_script_service/mruby/src/print.c +4 -3
  232. data/ext/enterprise_script_service/mruby/src/proc.c +48 -56
  233. data/ext/enterprise_script_service/mruby/src/range.c +45 -21
  234. data/ext/enterprise_script_service/mruby/src/state.c +25 -32
  235. data/ext/enterprise_script_service/mruby/src/string.c +59 -101
  236. data/ext/enterprise_script_service/mruby/src/symbol.c +121 -56
  237. data/ext/enterprise_script_service/mruby/src/value_array.h +1 -0
  238. data/ext/enterprise_script_service/mruby/src/variable.c +158 -158
  239. data/ext/enterprise_script_service/mruby/src/vm.c +617 -602
  240. data/ext/enterprise_script_service/mruby/tasks/benchmark.rake +6 -6
  241. data/ext/enterprise_script_service/mruby/tasks/bin.rake +23 -0
  242. data/ext/enterprise_script_service/mruby/tasks/core.rake +12 -0
  243. data/ext/enterprise_script_service/mruby/tasks/doc.rake +50 -38
  244. data/ext/enterprise_script_service/mruby/tasks/gitlab.rake +83 -77
  245. data/ext/enterprise_script_service/mruby/tasks/libmruby.rake +10 -1
  246. data/ext/enterprise_script_service/mruby/tasks/mrbgems.rake +13 -1
  247. data/ext/enterprise_script_service/mruby/tasks/mrblib.rake +40 -0
  248. data/ext/enterprise_script_service/mruby/tasks/presym.rake +44 -0
  249. data/ext/enterprise_script_service/mruby/tasks/test.rake +68 -0
  250. data/ext/enterprise_script_service/mruby/tasks/toolchains/gcc.rake +6 -5
  251. data/ext/enterprise_script_service/mruby/tasks/toolchains/openwrt.rake +10 -14
  252. data/ext/enterprise_script_service/mruby/tasks/toolchains/visualcpp.rake +17 -21
  253. data/ext/enterprise_script_service/mruby/test/bintest.rb +5 -5
  254. data/ext/enterprise_script_service/mruby/test/t/argumenterror.rb +16 -0
  255. data/ext/enterprise_script_service/mruby/test/t/array.rb +7 -3
  256. data/ext/enterprise_script_service/mruby/test/t/bs_literal.rb +1 -1
  257. data/ext/enterprise_script_service/mruby/test/t/float.rb +18 -8
  258. data/ext/enterprise_script_service/mruby/test/t/hash.rb +903 -281
  259. data/ext/enterprise_script_service/mruby/test/t/integer.rb +10 -38
  260. data/ext/enterprise_script_service/mruby/test/t/kernel.rb +1 -1
  261. data/ext/enterprise_script_service/mruby/test/t/literals.rb +50 -0
  262. data/ext/enterprise_script_service/mruby/test/t/module.rb +2 -2
  263. data/ext/enterprise_script_service/mruby/test/t/numeric.rb +1 -1
  264. data/ext/enterprise_script_service/mruby/test/t/range.rb +83 -1
  265. data/ext/enterprise_script_service/mruby/test/t/string.rb +4 -0
  266. data/ext/enterprise_script_service/mruby/test/t/superclass.rb +10 -10
  267. data/ext/enterprise_script_service/mruby/test/t/syntax.rb +24 -0
  268. data/ext/enterprise_script_service/mruby/test/t/vformat.rb +3 -3
  269. data/ext/enterprise_script_service/mruby_config.rb +2 -5
  270. data/ext/enterprise_script_service/mruby_engine.cpp +1 -1
  271. data/lib/script_core/version.rb +1 -1
  272. data/spec/script_core_spec.rb +13 -0
  273. metadata +61 -23
  274. data/ext/enterprise_script_service/mruby/.github/workflows/main.yml +0 -24
  275. data/ext/enterprise_script_service/mruby/TODO +0 -8
  276. data/ext/enterprise_script_service/mruby/appveyor_config.rb +0 -46
  277. data/ext/enterprise_script_service/mruby/benchmark/build_config_boxing.rb +0 -28
  278. data/ext/enterprise_script_service/mruby/examples/targets/build_config_android_arm64-v8a.rb +0 -26
  279. data/ext/enterprise_script_service/mruby/examples/targets/build_config_android_armeabi.rb +0 -26
  280. data/ext/enterprise_script_service/mruby/mrbgems/mruby-sprintf/src/kernel.c +0 -30
  281. data/ext/enterprise_script_service/mruby/mrblib/mrblib.rake +0 -18
  282. data/ext/enterprise_script_service/mruby/src/crc.c +0 -39
  283. data/ext/enterprise_script_service/mruby/src/mruby_core.rake +0 -19
@@ -5,7 +5,7 @@ jobs:
5
5
  - os: osx
6
6
 
7
7
  env:
8
- - MRUBY_CONFIG=travis_config.rb
8
+ - MRUBY_CONFIG=ci/gcc-clang
9
9
 
10
10
  script:
11
- - rake -m && rake test
11
+ - rake -m test:build && rake test:run
@@ -0,0 +1,8 @@
1
+ ---
2
+
3
+ extends: default
4
+
5
+ rules:
6
+ document-start: disable
7
+ line-length: disable
8
+ truthy: false
@@ -43,3 +43,6 @@ of this list.
43
43
  YAMAMOTO Masaya
44
44
  KOBAYASHI Shuji
45
45
  RIZAL Reckordp
46
+ Rory O'Connell
47
+ John Bampton
48
+ Seeker
@@ -0,0 +1 @@
1
+ * @matz
@@ -1,6 +1,7 @@
1
1
  # How to contribute
2
2
 
3
3
  mruby is an open-source project which is looking forward to each contribution.
4
+ Contributors agree to license their contribution(s) under MIT license.
4
5
 
5
6
  ## Your Pull Request
6
7
 
@@ -33,11 +34,6 @@ mruby should be highly portable to other systems and compilers. For this it is
33
34
  recommended to keep your code as close as possible to the C99 standard
34
35
  (http://www.open-std.org/jtc1/sc22/WG14/www/docs/n1256.pdf).
35
36
 
36
- Although we target C99, we've heard some compilers in the embedded environment
37
- still requires declarations of local variables to be at the beginning of a
38
- scope. Until we confirm the situation has changed, we use the old-style
39
- variable declaration.
40
-
41
37
  Visual C++ is also an important target for mruby (supported version is 2013 or
42
38
  later). For this reason features that are not supported by Visual C++ may not
43
39
  be used (e.g. `%z` of `strftime()`).
@@ -50,19 +46,15 @@ The dependencies to libraries should be kept to an absolute minimum. This
50
46
  increases the portability but makes it also easier to cut away parts of mruby
51
47
  on-demand.
52
48
 
53
- #### Don't use C++ style comments
54
-
55
- /* This is the preferred comment style */
56
-
57
- Use C++ style comments only for temporary comment e.g. commenting out some code lines.
58
-
59
- #### Insert a break after the method return value:
49
+ #### Insert a break after the function return value:
60
50
 
51
+ ```C
61
52
  int
62
53
  main(void)
63
54
  {
64
55
  ...
65
56
  }
57
+ ```
66
58
 
67
59
  ### Ruby code
68
60
 
@@ -72,4 +64,5 @@ language itself. Please note the following hints for your Ruby code:
72
64
  #### Comply with the Ruby standard (ISO/IEC 30170:2012)
73
65
 
74
66
  mruby is currently targeting to execute Ruby code which complies to ISO/IEC
75
- 30170:2012 (http://www.iso.org/iso/iso_catalogue/catalogue_tc/catalogue_detail.htm?csnumber=59579).
67
+ 30170:2012 (https://www.iso.org/iso/iso_catalogue/catalogue_tc/catalogue_detail.htm?csnumber=59579),
68
+ unless there's a clear reason, e.g. the latest Ruby has changed behavior from ISO.
@@ -6,7 +6,7 @@
6
6
 
7
7
  DOXYFILE_ENCODING = UTF-8
8
8
  PROJECT_NAME = "mruby"
9
- PROJECT_NUMBER = 2.1.2
9
+ PROJECT_NUMBER = 3.0.0
10
10
 
11
11
  PROJECT_BRIEF = "mruby is the lightweight implementation of the Ruby language"
12
12
 
@@ -27,12 +27,12 @@ INPUT = README.md \
27
27
  # Red for Ruby
28
28
  HTML_COLORSTYLE_HUE = 359
29
29
 
30
- # The following expansions
30
+ # The following expansions
31
31
  ENABLE_PREPROCESSING = YES
32
32
  MACRO_EXPANSION = YES
33
33
  EXPAND_ONLY_PREDEF = NO
34
- PREDEFINED =
35
- EXPAND_AS_DEFINED =
34
+ PREDEFINED =
35
+ EXPAND_AS_DEFINED =
36
36
  SKIP_FUNCTION_MACROS = NO
37
37
 
38
38
  # This tells doxygen to search the places that make sense
@@ -1,4 +1,4 @@
1
- Copyright (c) 2020 mruby developers
1
+ Copyright (c) 2010-2021 mruby developers
2
2
 
3
3
  Permission is hereby granted, free of charge, to any person obtaining a
4
4
  copy of this software and associated documentation files (the "Software"),
@@ -1,4 +1,4 @@
1
- # mruby is using Rake (http://rake.rubyforge.org) as a build tool.
1
+ # mruby is using Rake (https://ruby.github.io/rake/) as a build tool.
2
2
 
3
3
  RAKE = rake
4
4
 
@@ -17,7 +17,7 @@ of the Ministry of Economy, Trade and Industry of Japan.
17
17
 
18
18
  ## How to get mruby
19
19
 
20
- The stable version 2.1.2 of mruby can be downloaded via the following URL: [https://github.com/mruby/mruby/archive/2.1.2.zip](https://github.com/mruby/mruby/archive/2.1.2.zip)
20
+ The stable version 3.0.0 of mruby can be downloaded via the following URL: [https://github.com/mruby/mruby/archive/3.0.0.zip](https://github.com/mruby/mruby/archive/3.0.0.zip)
21
21
 
22
22
  The latest development version of mruby can be downloaded via the following URL: [https://github.com/mruby/mruby/zipball/master](https://github.com/mruby/mruby/zipball/master)
23
23
 
@@ -36,20 +36,10 @@ The URL of the mruby home-page is: https://mruby.org.
36
36
 
37
37
  We don't have a mailing list, but you can use [GitHub issues](https://github.com/mruby/mruby/issues).
38
38
 
39
- ## How to compile and install (mruby and gems)
39
+ ## How to compile, test, and install (mruby and gems)
40
40
 
41
41
  See the [compile.md](https://github.com/mruby/mruby/blob/master/doc/guides/compile.md) file.
42
42
 
43
- ## Running Tests
44
-
45
- To run the tests, execute the following from the project's root directory.
46
-
47
- $ rake test
48
-
49
- Note: `bison` bundled with MacOS is too old to compile `mruby`.
50
- Try `brew install bison` and follow the instuction shown to update
51
- the `$PATH` to compile `mruby`.
52
-
53
43
  ## Building documentation
54
44
 
55
45
  There are two sets of documentation in mruby: the mruby API (generated by yard) and C API (Doxygen)
@@ -94,12 +84,12 @@ Please ask us if you want to distribute your code under another license.
94
84
  ## How to Contribute
95
85
 
96
86
  See the [contribution guidelines][contribution-guidelines], and then send a pull
97
- request to <http://github.com/mruby/mruby>. We consider you have granted
87
+ request to <https://github.com/mruby/mruby>. We consider you have granted
98
88
  non-exclusive right to your contributed code under MIT license. If you want to
99
89
  be named as one of mruby developers, please include an update to the AUTHORS
100
90
  file in your pull request.
101
91
 
102
- [ISO-standard]: http://www.iso.org/iso/iso_catalogue/catalogue_tc/catalogue_detail.htm?csnumber=59579
92
+ [ISO-standard]: https://www.iso.org/iso/iso_catalogue/catalogue_tc/catalogue_detail.htm?csnumber=59579
103
93
  [build-status-img]: https://travis-ci.org/mruby/mruby.svg?branch=master
104
94
  [contribution-guidelines]: https://github.com/mruby/mruby/blob/master/CONTRIBUTING.md
105
95
  [travis-ci]: https://travis-ci.org/mruby/mruby
@@ -10,11 +10,11 @@ Rake.verbose(false) if Rake.verbose == Rake::DSL::DEFAULT
10
10
  $LOAD_PATH << File.join(MRUBY_ROOT, "lib")
11
11
 
12
12
  # load build systems
13
- require "mruby-core-ext"
13
+ require "mruby/core_ext"
14
14
  require "mruby/build"
15
15
 
16
16
  # load configuration file
17
- MRUBY_CONFIG = (ENV['MRUBY_CONFIG'] && ENV['MRUBY_CONFIG'] != '') ? ENV['MRUBY_CONFIG'] : "#{MRUBY_ROOT}/build_config.rb"
17
+ MRUBY_CONFIG = MRuby::Build.mruby_config_path
18
18
  load MRUBY_CONFIG
19
19
 
20
20
  # load basic rules
@@ -23,138 +23,48 @@ MRuby.each_target do |build|
23
23
  end
24
24
 
25
25
  # load custom rules
26
- load "#{MRUBY_ROOT}/src/mruby_core.rake"
27
- load "#{MRUBY_ROOT}/mrblib/mrblib.rake"
28
-
26
+ load "#{MRUBY_ROOT}/tasks/core.rake"
27
+ load "#{MRUBY_ROOT}/tasks/mrblib.rake"
29
28
  load "#{MRUBY_ROOT}/tasks/mrbgems.rake"
30
29
  load "#{MRUBY_ROOT}/tasks/libmruby.rake"
31
-
30
+ load "#{MRUBY_ROOT}/tasks/bin.rake"
31
+ load "#{MRUBY_ROOT}/tasks/presym.rake"
32
+ load "#{MRUBY_ROOT}/tasks/test.rake"
32
33
  load "#{MRUBY_ROOT}/tasks/benchmark.rake"
33
-
34
34
  load "#{MRUBY_ROOT}/tasks/gitlab.rake"
35
35
  load "#{MRUBY_ROOT}/tasks/doc.rake"
36
36
 
37
- def install_D(src, dst)
38
- rm_f dst
39
- mkdir_p File.dirname(dst)
40
- cp src, dst
41
- end
42
-
43
37
  ##############################
44
38
  # generic build targets, rules
45
39
  task :default => :all
46
40
 
47
- bin_path = ENV['INSTALL_DIR'] || "#{MRUBY_ROOT}/bin"
48
-
49
- depfiles = MRuby.targets['host'].bins.map do |bin|
50
- install_path = MRuby.targets['host'].exefile("#{bin_path}/#{bin}")
51
- source_path = MRuby.targets['host'].exefile("#{MRuby.targets['host'].build_dir}/bin/#{bin}")
52
-
53
- file install_path => source_path do |t|
54
- install_D t.prerequisites.first, t.name
55
- end
56
-
57
- install_path
58
- end
59
-
60
- MRuby.each_target do |target|
61
- gems.map do |gem|
62
- current_dir = gem.dir.relative_path_from(Dir.pwd)
63
- relative_from_root = gem.dir.relative_path_from(MRUBY_ROOT)
64
- current_build_dir = File.expand_path "#{build_dir}/#{relative_from_root}"
65
-
66
- if current_build_dir !~ /^#{Regexp.escape(build_dir)}/
67
- current_build_dir = "#{build_dir}/mrbgems/#{gem.name}"
68
- end
69
-
70
- gem.bins.each do |bin|
71
- exec = exefile("#{build_dir}/bin/#{bin}")
72
- objs = Dir.glob("#{current_dir}/tools/#{bin}/*.{c,cpp,cxx,cc}").map { |f| objfile(f.pathmap("#{current_build_dir}/tools/#{bin}/%n")) }
73
-
74
- file exec => objs + target.libraries do |t|
75
- gem_flags = gems.map { |g| g.linker.flags }
76
- gem_flags_before_libraries = gems.map { |g| g.linker.flags_before_libraries }
77
- gem_flags_after_libraries = gems.map { |g| g.linker.flags_after_libraries }
78
- gem_libraries = gems.map { |g| g.linker.libraries }
79
- gem_library_paths = gems.map { |g| g.linker.library_paths }
80
- linker.run t.name, t.prerequisites, gem_libraries, gem_library_paths, gem_flags, gem_flags_before_libraries, gem_flags_after_libraries
81
- end
82
-
83
- if target == MRuby.targets['host']
84
- install_path = MRuby.targets['host'].exefile("#{bin_path}/#{bin}")
85
-
86
- file install_path => exec do |t|
87
- install_D t.prerequisites.first, t.name
88
- end
89
- depfiles += [ install_path ]
90
- elsif target == MRuby.targets['host-debug']
91
- unless MRuby.targets['host'].gems.map {|g| g.bins}.include?([bin])
92
- install_path = MRuby.targets['host-debug'].exefile("#{bin_path}/#{bin}")
93
-
94
- file install_path => exec do |t|
95
- install_D t.prerequisites.first, t.name
96
- end
97
- depfiles += [ install_path ]
98
- end
99
- else
100
- depfiles += [ exec ]
101
- end
102
- end
103
- end
104
- end
105
-
106
- depfiles += MRuby.targets.map { |n, t|
107
- t.libraries
108
- }.flatten
109
-
110
- depfiles += MRuby.targets.reject { |n, t| n == 'host' }.map { |n, t|
111
- t.bins.map { |bin| t.exefile("#{t.build_dir}/bin/#{bin}") }
112
- }.flatten
113
-
114
41
  desc "build all targets, install (locally) in-repo"
115
- task :all => depfiles do
42
+ task :all => :gensym do
43
+ Rake::Task[:build].invoke
116
44
  puts
117
45
  puts "Build summary:"
118
46
  puts
119
- MRuby.each_target do
120
- print_build_summary
47
+ MRuby.each_target do |build|
48
+ build.print_build_summary
121
49
  end
122
50
  MRuby::Lockfile.write
123
51
  end
124
52
 
125
- desc "run all mruby tests"
126
- task :test
127
- MRuby.each_target do
128
- if test_enabled?
129
- t = :"test_#{self.name}"
130
- task t => ["all"] do
131
- run_test
132
- end
133
- task :test => t
134
- end
135
-
136
- if bintest_enabled?
137
- t = :"bintest_#{self.name}"
138
- task t => ["all"] do
139
- run_bintest
140
- end
141
- task :test => t
142
- end
143
- end
53
+ task :build => MRuby.targets.flat_map{|_, build| build.products}
144
54
 
145
55
  desc "clean all built and in-repo installed artifacts"
146
56
  task :clean do
147
- MRuby.each_target do |t|
148
- rm_rf t.build_dir
57
+ MRuby.each_target do |build|
58
+ rm_rf build.build_dir
59
+ rm_f build.products
149
60
  end
150
- rm_f depfiles
151
61
  puts "Cleaned up target build folder"
152
62
  end
153
63
 
154
64
  desc "clean everything!"
155
- task :deep_clean => ["clean", "clean_doc"] do
156
- MRuby.each_target do |t|
157
- rm_rf t.gem_clone_dir
65
+ task :deep_clean => %w[clean doc:clean] do
66
+ MRuby.each_target do |build|
67
+ rm_rf build.gem_clone_dir
158
68
  end
159
69
  puts "Cleaned up mrbgems build folder"
160
70
  end
@@ -0,0 +1,17 @@
1
+ Thing to Do in the future
2
+ ===
3
+
4
+ # After mruby 3.0
5
+
6
+ * replace `fp_fmt.c` by `float_format` (https://github.com/dhylands/format-float.git)
7
+ * multi-precision integer
8
+ * WORD_BOXING: Pack some floats in `mrb_value`
9
+ * NAN_BOXING: Allow `MRB_INT64` along with NaN boxing
10
+ * keyword arguments a la Ruby3.0 (using `OP_SENDVK`)
11
+ * parser and code generator independent from `mrb_state` (mmruby?)
12
+
13
+ # Things to do (Things that are not done yet)
14
+
15
+ * `begin ... end while cond` to behave as CRuby
16
+ * special variables ($1,$2..)
17
+ * super in aliased methods
@@ -1,39 +1,45 @@
1
1
  version: "{build}"
2
2
 
3
- os: Visual Studio 2017
4
-
5
3
  shallow_clone: true
6
4
 
7
5
  environment:
8
6
  matrix:
9
- # Visual Studio 2017 64bit
10
- - visualcpp: C:\Program Files (x86)\Microsoft Visual Studio\2017\Community\VC\Auxiliary\Build\vcvars64.bat
11
-
12
- # Visual Studio 2017 32bit
13
- - visualcpp: C:\Program Files (x86)\Microsoft Visual Studio\2017\Community\VC\Auxiliary\Build\vcvarsall.bat
7
+ - job_name: Visual Studio 2019 64bit
8
+ visualcpp: C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\VC\Auxiliary\Build\vcvars64.bat
9
+ appveyor_build_worker_image: Visual Studio 2019
10
+
11
+ - job_name: Visual Studio 2019 32bit
12
+ visualcpp: C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\VC\Auxiliary\Build\vcvars32.bat
13
+ appveyor_build_worker_image: Visual Studio 2019
14
+
15
+ - job_name: Visual Studio 2017 64bit
16
+ visualcpp: C:\Program Files (x86)\Microsoft Visual Studio\2017\Community\VC\Auxiliary\Build\vcvars64.bat
17
+ appveyor_build_worker_image: Visual Studio 2017
18
+
19
+ - job_name: Visual Studio 2017 32bit
20
+ visualcpp: C:\Program Files (x86)\Microsoft Visual Studio\2017\Community\VC\Auxiliary\Build\vcvars32.bat
21
+ appveyor_build_worker_image: Visual Studio 2017
22
+
23
+ - job_name: Visual Studio 2015 64bit
24
+ visualcpp: C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\vcvarsall.bat
25
+ appveyor_build_worker_image: Visual Studio 2015
26
+ machine: x86_amd64
27
+
28
+ - job_name: Visual Studio 2015 32bit
29
+ visualcpp: C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\vcvarsall.bat
30
+ appveyor_build_worker_image: Visual Studio 2015
14
31
  machine: x86
15
32
 
16
- # Visual Studio 2015 64bit
17
- - visualcpp: C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\vcvarsall.bat
18
- machine: amd64
19
-
20
- # Visual Studio 2015 32bit
21
- - visualcpp: C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\vcvarsall.bat
22
- machine: x86
23
-
24
- # Visual Studio 2013 64bit
25
- - visualcpp: C:\Program Files (x86)\Microsoft Visual Studio 12.0\VC\vcvarsall.bat
26
- machine: amd64
27
-
28
-
29
33
  init:
30
34
  - call "%visualcpp%" %machine%
31
- # For using Rubyinstaller's Ruby 2.4 64bit
32
- - set PATH=C:\Ruby24-x64\bin;%PATH%
35
+ # For using Rubyins4aller's Ruby 2.6 64bit
36
+ # 2.6 is the highest supported Ruby version across all historical
37
+ # Visual Studio AppVeyor images. Ruby 2.7 is only on the 2019 image.
38
+ - set PATH=C:\Ruby26-x64\bin;%PATH%
33
39
  - ruby --version
34
40
 
35
41
 
36
42
  build_script:
37
- - set MRUBY_CONFIG=appveyor_config.rb
38
- - rake -m
39
- - rake -E $stdout.sync=true test
43
+ - set MRUBY_CONFIG=ci/msvc
44
+ - rake -m test:build
45
+ - rake test:run
@@ -260,7 +260,7 @@ def render(w, h, nsubsamples)
260
260
  w.times do |x|
261
261
  rad = Vec.new(0.0, 0.0, 0.0)
262
262
 
263
- # Subsmpling
263
+ # Subsampling
264
264
  nsubsamples.times do |v|
265
265
  nsubsamples.times do |u|
266
266
  cnt = cnt + 1
@@ -1,152 +1,9 @@
1
- MRuby::Build.new do |conf|
2
- # load specific toolchain settings
3
-
4
- # Gets set by the VS command prompts.
5
- if ENV['VisualStudioVersion'] || ENV['VSINSTALLDIR']
6
- toolchain :visualcpp
7
- else
8
- toolchain :gcc
9
- end
10
-
11
- # Turn on `enable_debug` for better debugging
12
- # enable_debug
13
-
14
- # Use mrbgems
15
- # conf.gem 'examples/mrbgems/ruby_extension_example'
16
- # conf.gem 'examples/mrbgems/c_extension_example' do |g|
17
- # g.cc.flags << '-g' # append cflags in this gem
18
- # end
19
- # conf.gem 'examples/mrbgems/c_and_ruby_extension_example'
20
- # conf.gem :core => 'mruby-eval'
21
- # conf.gem :mgem => 'mruby-onig-regexp'
22
- # conf.gem :github => 'mattn/mruby-onig-regexp'
23
- # conf.gem :git => 'git@github.com:mattn/mruby-onig-regexp.git', :branch => 'master', :options => '-v'
24
-
25
- # include the default GEMs
26
- conf.gembox 'default'
27
- # C compiler settings
28
- # conf.cc do |cc|
29
- # cc.command = ENV['CC'] || 'gcc'
30
- # cc.flags = [ENV['CFLAGS'] || %w()]
31
- # cc.include_paths = ["#{root}/include"]
32
- # cc.defines = %w()
33
- # cc.option_include_path = %q[-I"%s"]
34
- # cc.option_define = '-D%s'
35
- # cc.compile_options = %Q[%{flags} -MMD -o "%{outfile}" -c "%{infile}"]
36
- # end
37
-
38
- # mrbc settings
39
- # conf.mrbc do |mrbc|
40
- # mrbc.compile_options = "-g -B%{funcname} -o-" # The -g option is required for line numbers
41
- # end
42
-
43
- # Linker settings
44
- # conf.linker do |linker|
45
- # linker.command = ENV['LD'] || 'gcc'
46
- # linker.flags = [ENV['LDFLAGS'] || []]
47
- # linker.flags_before_libraries = []
48
- # linker.libraries = %w()
49
- # linker.flags_after_libraries = []
50
- # linker.library_paths = []
51
- # linker.option_library = '-l%s'
52
- # linker.option_library_path = '-L%s'
53
- # linker.link_options = "%{flags} -o "%{outfile}" %{objs} %{libs}"
54
- # end
55
-
56
- # Archiver settings
57
- # conf.archiver do |archiver|
58
- # archiver.command = ENV['AR'] || 'ar'
59
- # archiver.archive_options = 'rs "%{outfile}" %{objs}'
60
- # end
61
-
62
- # Parser generator settings
63
- # conf.yacc do |yacc|
64
- # yacc.command = ENV['YACC'] || 'bison'
65
- # yacc.compile_options = %q[-o "%{outfile}" "%{infile}"]
66
- # end
67
-
68
- # gperf settings
69
- # conf.gperf do |gperf|
70
- # gperf.command = 'gperf'
71
- # gperf.compile_options = %q[-L ANSI-C -C -p -j1 -i 1 -g -o -t -N mrb_reserved_word -k"1,3,$" "%{infile}" > "%{outfile}"]
72
- # end
73
-
74
- # file extensions
75
- # conf.exts do |exts|
76
- # exts.object = '.o'
77
- # exts.executable = '' # '.exe' if Windows
78
- # exts.library = '.a'
79
- # end
80
-
81
- # file separetor
82
- # conf.file_separator = '/'
83
-
84
- # bintest
85
- # conf.enable_bintest
86
- end
87
-
88
- MRuby::Build.new('host-debug') do |conf|
89
- # load specific toolchain settings
90
-
91
- # Gets set by the VS command prompts.
92
- if ENV['VisualStudioVersion'] || ENV['VSINSTALLDIR']
93
- toolchain :visualcpp
94
- else
95
- toolchain :gcc
96
- end
97
-
98
- enable_debug
99
-
100
- # include the default GEMs
101
- conf.gembox 'default'
102
-
103
- # C compiler settings
104
- conf.cc.defines = %w(MRB_ENABLE_DEBUG_HOOK)
105
-
106
- # Generate mruby debugger command (require mruby-eval)
107
- conf.gem :core => "mruby-bin-debugger"
108
-
109
- # bintest
110
- # conf.enable_bintest
111
- end
112
-
113
- MRuby::Build.new('test') do |conf|
114
- # Gets set by the VS command prompts.
115
- if ENV['VisualStudioVersion'] || ENV['VSINSTALLDIR']
116
- toolchain :visualcpp
117
- else
118
- toolchain :gcc
119
- end
120
-
121
- enable_debug
122
- conf.enable_bintest
123
- conf.enable_test
124
-
125
- conf.gembox 'default'
126
- end
127
-
128
- #MRuby::Build.new('bench') do |conf|
129
- # # Gets set by the VS command prompts.
130
- # if ENV['VisualStudioVersion'] || ENV['VSINSTALLDIR']
131
- # toolchain :visualcpp
132
- # else
133
- # toolchain :gcc
134
- # conf.cc.flags << '-O3'
135
- # end
136
- #
137
- # conf.gembox 'default'
138
- #end
139
-
140
- # Define cross build settings
141
- # MRuby::CrossBuild.new('32bit') do |conf|
142
- # toolchain :gcc
143
- #
144
- # conf.cc.flags << "-m32"
145
- # conf.linker.flags << "-m32"
146
- #
147
- # conf.build_mrbtest_lib_only
148
- #
149
- # conf.gem 'examples/mrbgems/c_and_ruby_extension_example'
150
- #
151
- # conf.test_runner.command = 'env'
152
- # end
1
+ # The default build configuration file was moved to `build_config/default.rb`.
2
+ #
3
+ # Recommended way to customize the build configuration is:
4
+ # * copy `default.rb` (or any config file) to a new file (e.g. `myconfig.rb`)
5
+ # * edit `myconfig.rb`.
6
+ # * `rake MRUBY_CONFIG=/path/to/myconfig.rb` to compile and test.
7
+ # * or `rake MRUBY_CONFIG=myconfig` if your configuration file is in the `build_config` directory.
8
+ # * (optional) submit your configuration as a pull-request if it's useful for others
9
+ raise "The default configuration was moved to `build_config/default.rb`"