diff options
| -rw-r--r-- | tasks/mruby_build.rake | 10 |
1 files changed, 6 insertions, 4 deletions
diff --git a/tasks/mruby_build.rake b/tasks/mruby_build.rake index c92400cf9..b7efa96b9 100644 --- a/tasks/mruby_build.rake +++ b/tasks/mruby_build.rake @@ -52,7 +52,7 @@ module MRuby Exts = Struct.new(:object, :executable, :library) - def initialize(name='host', &block) + def initialize(name='host', build_dir=nil, &block) @name = name.to_s unless MRuby.targets[@name] @@ -62,9 +62,11 @@ module MRuby @exts = Exts.new('.o', '', '.a') end + build_dir = build_dir || ENV['MRUBY_BUILD_DIR'] || "#{MRUBY_ROOT}/build" + @file_separator = '/' - @build_dir = "#{MRUBY_ROOT}/build/#{@name}" - @gem_clone_dir = "#{MRUBY_ROOT}/build/mrbgems" + @build_dir = "#{build_dir}/#{@name}" + @gem_clone_dir = "#{build_dir}/mrbgems" @cc = Command::Compiler.new(self, %w(.c)) @cxx = Command::Compiler.new(self, %w(.cc .cxx .cpp)) @objc = Command::Compiler.new(self, %w(.m)) @@ -204,7 +206,7 @@ module MRuby class CrossBuild < Build attr_block %w(test_runner) - def initialize(name, &block) + def initialize(name, build_dir=nil, &block) @test_runner = Command::CrossTestRunner.new(self) super end |
