mirror of
https://github.com/mruby/mruby
synced 2026-06-08 16:11:16 +00:00
Merge pull request #1384 from xxuejie/customize-build-dir
Allow programmers to specify build path manually
This commit is contained in:
@@ -43,7 +43,7 @@ module MRuby
|
||||
end
|
||||
include Rake::DSL
|
||||
include LoadGems
|
||||
attr_accessor :name, :bins, :exts, :file_separator
|
||||
attr_accessor :name, :bins, :exts, :file_separator, :build_dir
|
||||
attr_reader :libmruby, :gems
|
||||
|
||||
COMPILERS = %w(cc cxx objc asm)
|
||||
@@ -63,6 +63,7 @@ module MRuby
|
||||
end
|
||||
|
||||
@file_separator = '/'
|
||||
@build_dir = "#{MRUBY_ROOT}/build/#{@name}"
|
||||
@cc = Command::Compiler.new(self, %w(.c))
|
||||
@cxx = Command::Compiler.new(self, %w(.cc .cxx .cpp))
|
||||
@objc = Command::Compiler.new(self, %w(.m))
|
||||
@@ -95,10 +96,6 @@ module MRuby
|
||||
MRUBY_ROOT
|
||||
end
|
||||
|
||||
def build_dir
|
||||
"#{MRUBY_ROOT}/build/#{self.name}"
|
||||
end
|
||||
|
||||
def mrbcfile
|
||||
MRuby.targets['host'].exefile("#{MRuby.targets['host'].build_dir}/bin/mrbc")
|
||||
end
|
||||
|
||||
@@ -39,18 +39,18 @@ module MRuby
|
||||
gemdir = "#{root}/mrbgems/#{params[:core]}"
|
||||
elsif params[:git]
|
||||
url = params[:git]
|
||||
gemdir = "build/mrbgems/#{url.match(/([-\w]+)(\.[-\w]+|)$/).to_a[1]}"
|
||||
gemdir = "#{build_dir}/mrbgems/#{url.match(/([-\w]+)(\.[-\w]+|)$/).to_a[1]}"
|
||||
|
||||
if File.exists?(gemdir)
|
||||
if $pull_gems
|
||||
git.run_pull gemdir, url
|
||||
else
|
||||
gemdir
|
||||
end
|
||||
end
|
||||
else
|
||||
options = [params[:options]] || []
|
||||
options << "--branch \"#{params[:branch]}\"" if params[:branch]
|
||||
FileUtils.mkdir_p "build/mrbgems"
|
||||
FileUtils.mkdir_p "#{build_dir}/mrbgems"
|
||||
git.run_clone gemdir, url, options
|
||||
end
|
||||
else
|
||||
|
||||
Reference in New Issue
Block a user