diff options
Diffstat (limited to 'tasks/mrbgem_spec.rake')
| -rw-r--r-- | tasks/mrbgem_spec.rake | 8 |
1 files changed, 6 insertions, 2 deletions
diff --git a/tasks/mrbgem_spec.rake b/tasks/mrbgem_spec.rake index 745b2f29d..1d97e2bbf 100644 --- a/tasks/mrbgem_spec.rake +++ b/tasks/mrbgem_spec.rake @@ -36,6 +36,8 @@ module MRuby attr_accessor :export_include_paths + attr_reader :generate_functions + attr_block MRuby::Build::COMMANDS def initialize(name, &block) @@ -56,7 +58,9 @@ module MRuby @objs = Dir.glob("#{dir}/src/*.{c,cpp,cxx,cc,m,asm,s,S}").map do |f| objfile(f.relative_path_from(@dir).to_s.pathmap("#{build_dir}/%X")) end - @objs << objfile("#{build_dir}/gem_init") + + @generate_functions = !(@rbfiles.empty? && @objs.empty?) + @objs << objfile("#{build_dir}/gem_init") if @generate_functions @test_rbfiles = Dir.glob("#{dir}/test/*.rb") @test_objs = Dir.glob("#{dir}/test/*.{c,cpp,cxx,cc,m,asm,s,S}").map do |f| @@ -89,7 +93,7 @@ module MRuby compiler.include_paths << "#{dir}/include" if File.directory? "#{dir}/include" end - define_gem_init_builder + define_gem_init_builder if @generate_functions end def add_dependency(name, *requirements) |
