diff options
Diffstat (limited to 'mrbgems/mruby-test/mrbgem.rake')
| -rw-r--r-- | mrbgems/mruby-test/mrbgem.rake | 18 |
1 files changed, 10 insertions, 8 deletions
diff --git a/mrbgems/mruby-test/mrbgem.rake b/mrbgems/mruby-test/mrbgem.rake index 27c635a5d..11d780f75 100644 --- a/mrbgems/mruby-test/mrbgem.rake +++ b/mrbgems/mruby-test/mrbgem.rake @@ -23,7 +23,7 @@ MRuby::Gem::Specification.new('mruby-test') do |spec| mrbtest_objs = [] driver_obj = objfile("#{build_dir}/driver") - driver = "#{spec.dir}/driver.c" + # driver = "#{spec.dir}/driver.c" assert_c = "#{build_dir}/assert.c" assert_rb = "#{MRUBY_ROOT}/test/assert.rb" @@ -31,7 +31,7 @@ MRuby::Gem::Specification.new('mruby-test') do |spec| mrbtest_objs << assert_lib file assert_lib => assert_c - file assert_c => assert_rb do |t| + file assert_c => [assert_rb, build.mrbcfile] do |t| open(t.name, 'w') do |f| mrbc.run f, assert_rb, 'mrbtest_assert_irep' end @@ -45,7 +45,7 @@ MRuby::Gem::Specification.new('mruby-test') do |spec| dep_list = build.gems.tsort_dependencies(g.test_dependencies, gem_table).select(&:generate_functions) file test_rbobj => g.test_rbireps - file g.test_rbireps => [g.test_rbfiles].flatten do |t| + file g.test_rbireps => [g.test_rbfiles, build.mrbcfile].flatten do |t| FileUtils.mkdir_p File.dirname(t.name) open(t.name, 'w') do |f| g.print_gem_test_header(f) @@ -146,7 +146,8 @@ MRuby::Gem::Specification.new('mruby-test') do |spec| gem_flags_after_libraries = build.gems.map { |g| g.linker.flags_after_libraries } gem_libraries = build.gems.map { |g| g.linker.libraries } gem_library_paths = build.gems.map { |g| g.linker.library_paths } - build.linker.run t.name, t.prerequisites, gem_libraries, gem_library_paths, gem_flags, gem_flags_before_libraries + build.linker.run t.name, t.prerequisites, gem_libraries, gem_library_paths, gem_flags, + gem_flags_before_libraries, gem_flags_after_libraries end end @@ -163,13 +164,14 @@ MRuby::Gem::Specification.new('mruby-test') do |spec| nil end current_gem_list = build.gems.map(&:name).join("\n") - if active_gem_list != current_gem_list - File.write active_gems_path, current_gem_list + task active_gems_path do |t| + FileUtils.mkdir_p File.dirname t.name + File.write t.name, current_gem_list end - file clib => active_gems_path + file clib => active_gems_path if active_gem_list != current_gem_list file mlib => clib - file clib => init do |t| + file clib => [init, build.mrbcfile] do |_t| _pp "GEN", "*.rb", "#{clib.relative_path}" FileUtils.mkdir_p File.dirname(clib) open(clib, 'w') do |f| |
