diff options
Diffstat (limited to 'tasks')
| -rw-r--r-- | tasks/libmruby.rake | 6 | ||||
| -rw-r--r-- | tasks/mruby_build.rake | 8 | ||||
| -rw-r--r-- | tasks/mruby_build_gem.rake | 6 |
3 files changed, 11 insertions, 9 deletions
diff --git a/tasks/libmruby.rake b/tasks/libmruby.rake index 108f42f59..6f84937fd 100644 --- a/tasks/libmruby.rake +++ b/tasks/libmruby.rake @@ -2,14 +2,14 @@ MRuby.each_target do file libfile("#{build_dir}/lib/libmruby") => libmruby.flatten do |t| archiver.run t.name, t.prerequisites open("#{build_dir}/lib/libmruby.flags.mak", 'w') do |f| - f.puts 'CFLAGS = "%s"' % cc.all_flags.gsub('"', '\\"') + f.puts 'MRUBY_CFLAGS = "%s"' % cc.all_flags.gsub('"', '\\"') gem_flags = gems.map { |g| g.linker.flags } gem_library_paths = gems.map { |g| g.linker.library_paths } - f.puts 'LDFLAGS = "%s"' % linker.all_flags(gem_library_paths, gem_flags).gsub('"', '\\"') + f.puts 'MRUBY_LDFLAGS = "%s"' % linker.all_flags(gem_library_paths, gem_flags).gsub('"', '\\"') gem_libraries = gems.map { |g| g.linker.libraries } - f.puts 'LIBS = "%s"' % linker.library_flags(gem_libraries).gsub('"', '\\"') + f.puts 'MRUBY_LIBS = "%s"' % linker.library_flags(gem_libraries).gsub('"', '\\"') end end end diff --git a/tasks/mruby_build.rake b/tasks/mruby_build.rake index b9e0d2749..711f7f024 100644 --- a/tasks/mruby_build.rake +++ b/tasks/mruby_build.rake @@ -29,10 +29,6 @@ module MRuby conf.instance_eval(&@initializer) end - def toolchain(name) - @@toolchains[name.to_s].setup(self) - end - def self.load Dir.glob("#{File.dirname(__FILE__)}/toolchains/*.rake").each do |file| Kernel.load file @@ -93,7 +89,9 @@ module MRuby end def toolchain(name) - Toolchain.toolchains[name.to_s].setup(self) + tc = Toolchain.toolchains[name.to_s] + fail "Unknown #{name} toolchain" unless tc + tc.setup(self) end def build_dir diff --git a/tasks/mruby_build_gem.rake b/tasks/mruby_build_gem.rake index ae0a79447..80990773d 100644 --- a/tasks/mruby_build_gem.rake +++ b/tasks/mruby_build_gem.rake @@ -2,7 +2,11 @@ module MRuby module LoadGems def gem(gemdir, &block) gemdir = load_external_gem(gemdir) if gemdir.is_a?(Hash) - load File.join(gemdir, "mrbgem.rake") + gemrake = File.join(gemdir, "mrbgem.rake") + + fail "Can't find #{gemrake}" unless File.exists?(gemrake) + load gemrake + Gem.current.dir = gemdir Gem.current.build = MRuby::Build.current Gem.current.build_config_initializer = block |
