From 42b7fe62d8c1e0470431469c9ffcf6cad819a62f Mon Sep 17 00:00:00 2001 From: Carson McDonald Date: Wed, 6 Feb 2013 07:07:13 -0500 Subject: Change task rule based on build_dir so main rules don't clobber gem rules. --- tasks/mruby_build_commands.rake | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/tasks/mruby_build_commands.rake b/tasks/mruby_build_commands.rake index b3c83277c..884f2027f 100644 --- a/tasks/mruby_build_commands.rake +++ b/tasks/mruby_build_commands.rake @@ -68,7 +68,11 @@ module MRuby def define_rules(build_dir, source_dir='') @out_ext = build.exts.object - generated_file_matcher = Regexp.new("^#{build_dir}/(.*)#{Regexp.escape out_ext}$") + if build_dir.include? "mrbgems/" + generated_file_matcher = Regexp.new("^#{build_dir}/(.*)#{Regexp.escape out_ext}$") + else + generated_file_matcher = Regexp.new("^#{build_dir}/(?!mrbgems/.+/)(.*)#{Regexp.escape out_ext}$") + end source_exts.each do |ext, compile| rule generated_file_matcher => [ proc { |file| -- cgit v1.2.3 From c7031d85274a2b7eda524bf43e95610bd8ae1d00 Mon Sep 17 00:00:00 2001 From: mattn Date: Thu, 7 Feb 2013 16:35:26 +0900 Subject: Ignore empty gem --- tasks/mruby_build_gem.rake | 2 ++ 1 file changed, 2 insertions(+) diff --git a/tasks/mruby_build_gem.rake b/tasks/mruby_build_gem.rake index 80990773d..69dd4cafc 100644 --- a/tasks/mruby_build_gem.rake +++ b/tasks/mruby_build_gem.rake @@ -5,7 +5,9 @@ module MRuby gemrake = File.join(gemdir, "mrbgem.rake") fail "Can't find #{gemrake}" unless File.exists?(gemrake) + Gem.current = nil load gemrake + return nil unless Gem.current Gem.current.dir = gemdir Gem.current.build = MRuby::Build.current -- cgit v1.2.3 From 2ce3b31a8a894e26bd15cf21cec3d171503fc688 Mon Sep 17 00:00:00 2001 From: Carson McDonald Date: Wed, 30 Jan 2013 20:53:39 -0500 Subject: Fix incorrect index use. nerr was being used for warning buffer check. --- src/parse.y | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/parse.y b/src/parse.y index 9ee9c9bec..91fb1a8e8 100644 --- a/src/parse.y +++ b/src/parse.y @@ -3000,7 +3000,7 @@ yywarn(parser_state *p, const char *s) } #endif } - else if (p->nerr < sizeof(p->warn_buffer) / sizeof(p->warn_buffer[0])) { + else if (p->nwarn < sizeof(p->warn_buffer) / sizeof(p->warn_buffer[0])) { n = strlen(s); c = (char *)parser_palloc(p, n + 1); memcpy(c, s, n + 1); -- cgit v1.2.3 From 92eb282b7a3b686ed017c6db5e1c553e02f6589c Mon Sep 17 00:00:00 2001 From: Carson McDonald Date: Fri, 8 Feb 2013 06:57:15 -0500 Subject: Don't overwrite ciidx if it is already set. --- src/vm.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/vm.c b/src/vm.c index a2df8abdf..bde38612e 100644 --- a/src/vm.c +++ b/src/vm.c @@ -1160,7 +1160,7 @@ mrb_run(mrb_state *mrb, struct RProc *proc, mrb_value self) L_RAISE: ci = mrb->ci; mrb_obj_iv_ifnone(mrb, mrb->exc, mrb_intern(mrb, "lastpc"), mrb_voidp_value(pc)); - mrb_obj_iv_set(mrb, mrb->exc, mrb_intern(mrb, "ciidx"), mrb_fixnum_value(ci - mrb->cibase)); + mrb_obj_iv_ifnone(mrb, mrb->exc, mrb_intern(mrb, "ciidx"), mrb_fixnum_value(ci - mrb->cibase)); eidx = ci->eidx; if (ci == mrb->cibase) { if (ci->ridx == 0) goto L_STOP; -- cgit v1.2.3 From 750256c9396b5ad5e55403b4b235e0062c28b495 Mon Sep 17 00:00:00 2001 From: Daniel Bovensiepen Date: Fri, 8 Feb 2013 22:10:21 +0800 Subject: Add documentation for Android toolchain --- doc/compile/README.md | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/doc/compile/README.md b/doc/compile/README.md index c6ab2f584..ce968b36e 100644 --- a/doc/compile/README.md +++ b/doc/compile/README.md @@ -64,6 +64,15 @@ Toolchain configuration for Visual Studio 2012 on Windows. toolchain :vs2012 +#### Android + +Toolchain configuration for Android. + + toolchain :androideabi + +Requires the custom standalone Android NDK and the toolchain path +in ```ANDROID_STANDALONE_TOOLCHAIN```. + ### Binaries It is possible to select which tools should be compiled during the compilation -- cgit v1.2.3 From 7c67bfedfd4cf819f445eaae7f8d2dfc4600c65a Mon Sep 17 00:00:00 2001 From: Akira Yumiyama Date: Sat, 2 Feb 2013 12:30:06 +0900 Subject: add mrbtest verbose mode ('-v' option) --- test/assert.rb | 2 ++ test/driver.c | 7 ++++++- 2 files changed, 8 insertions(+), 1 deletion(-) diff --git a/test/assert.rb b/test/assert.rb index 4fe95de9d..218a911d4 100644 --- a/test/assert.rb +++ b/test/assert.rb @@ -23,6 +23,7 @@ end # which will be tested by this # assertion def assert(str = 'Assertion failed', iso = '') + print(str, (iso != '' ? " [#{iso}]" : ''), ' : ') if $mrbtest_verbose begin if(!yield) $asserts.push(assertion_string('Fail: ', str, iso)) @@ -37,6 +38,7 @@ def assert(str = 'Assertion failed', iso = '') $kill_test += 1 print('X') end + print("\n") if $mrbtest_verbose end ## diff --git a/test/driver.c b/test/driver.c index 788a77b2d..5183145b4 100644 --- a/test/driver.c +++ b/test/driver.c @@ -36,7 +36,7 @@ check_error(mrb_state *mrb) } int -main(void) +main(int argc, char **argv) { mrb_state *mrb; mrb_value return_value; @@ -52,6 +52,11 @@ main(void) return EXIT_FAILURE; } + if (argc == 2 && strncmp(argv[1], "-v", 2) == 0) { + printf("verbose mode: enable\n\n"); + mrb_gv_set(mrb, mrb_intern(mrb, "$mrbtest_verbose"), mrb_true_value()); + } + mrb_init_mrbtest(mrb); /* evaluate the test */ return_value = mrb_load_string(mrb, prog); -- cgit v1.2.3