diff options
| author | Yukihiro Matz Matsumoto <[email protected]> | 2013-01-21 17:31:12 +0900 |
|---|---|---|
| committer | Yukihiro Matz Matsumoto <[email protected]> | 2013-01-21 17:31:12 +0900 |
| commit | 17fa9927a3dbec1752ff383c39122980a49e66fe (patch) | |
| tree | 5c7caa5334596bfe24ad5a83770b618c717295ee /tasks | |
| parent | 117e2ec06544e02511a2b5d2164edb00908ebab2 (diff) | |
| parent | 04941bc1634335c8f7fca3bafc68ca2c25969faf (diff) | |
| download | mruby-17fa9927a3dbec1752ff383c39122980a49e66fe.tar.gz mruby-17fa9927a3dbec1752ff383c39122980a49e66fe.zip | |
resolve conflicts
Diffstat (limited to 'tasks')
| -rw-r--r-- | tasks/mrbgem_spec.rake | 8 | ||||
| -rw-r--r-- | tasks/mruby_build_commands.rake | 22 | ||||
| -rw-r--r-- | tasks/ruby_ext.rake | 23 | ||||
| -rw-r--r-- | tasks/toolchains/vs2012.rake | 4 |
4 files changed, 50 insertions, 7 deletions
diff --git a/tasks/mrbgem_spec.rake b/tasks/mrbgem_spec.rake index 138b3f1f1..906f47ad0 100644 --- a/tasks/mrbgem_spec.rake +++ b/tasks/mrbgem_spec.rake @@ -46,11 +46,15 @@ module MRuby @linker = LinkerConfig.new([], [], []) @rbfiles = Dir.glob("#{dir}/mrblib/*.rb") - @objs = Dir.glob("#{dir}/src/*.{c,cpp,m,asm,S}").map { |f| objfile(f.relative_path_from(@dir).to_s.pathmap("#{build_dir}/%X")) } + @objs = Dir.glob("#{dir}/src/*.{c,cpp,m,asm,S}").map do |f| + objfile(f.relative_path_from(@dir).to_s.pathmap("#{build_dir}/%X")) + end @objs << objfile("#{build_dir}/gem_init") @test_rbfiles = Dir.glob("#{dir}/test/*.rb") - @test_objs = Dir.glob("#{dir}/test/*.{c,cpp,m,asm,S}").map { |f| objfile(f.relative_path_from(dir).to_s.pathmap("#{build_dir}/%X")) } + @test_objs = Dir.glob("#{dir}/test/*.{c,cpp,m,asm,S}").map do |f| + objfile(f.relative_path_from(dir).to_s.pathmap("#{build_dir}/%X")) + end @test_preload = 'test/assert.rb' instance_eval(&@initializer) diff --git a/tasks/mruby_build_commands.rake b/tasks/mruby_build_commands.rake index 7f9b50313..8ffafe9b0 100644 --- a/tasks/mruby_build_commands.rake +++ b/tasks/mruby_build_commands.rake @@ -54,7 +54,13 @@ module MRuby def run(outfile, infile, _defineds=[], _include_paths=[], _flags=[]) FileUtils.mkdir_p File.dirname(outfile) - _run compile_options, { :flags => all_flags(_defineds, [_include_paths, File.dirname(infile)], _flags), :infile => filename(infile), :outfile => filename(outfile) } + define_flags = [defines, _defineds].flatten.map{ |d| option_define % d } + include_path_flags = [include_paths, _include_paths, File.dirname(infile)].flatten.map do |f| + option_include_path % filename(f) + end + _pp "CC #{filename(infile)} > #{filename(outfile)}" + _run compile_options, { :flags => (flags + define_flags + include_path_flags + _flags).join(' '), + :infile => filename(infile), :outfile => filename(outfile) } end def define_rules(build_dir, source_dir='') @@ -123,7 +129,12 @@ module MRuby def run(outfile, objfiles, _libraries=[], _library_paths=[], _flags=[]) FileUtils.mkdir_p File.dirname(outfile) - _run link_options, { :flags => all_flags(_library_paths, _flags), :outfile => filename(outfile) , :objs => filename(objfiles).join(' '), :libs => library_flags(_libraries) } + library_flags = [libraries, _libraries].flatten.reverse.map{ |d| option_library % d } + library_path_flags = [library_paths, _library_paths].flatten.map{ |f| option_library_path % filename(f) } + _pp "LD #{filename(outfile)}" + _run link_options, { :flags => (flags + library_path_flags + _flags).join(' '), + :outfile => filename(outfile) , :objs => filename(objfiles).join(' '), + :libs => library_flags.join(' ') } end end @@ -138,6 +149,7 @@ module MRuby def run(outfile, objfiles) FileUtils.mkdir_p File.dirname(outfile) + _pp "AR #{filename(outfile)}" _run archive_options, { :outfile => filename(outfile), :objs => filename(objfiles).join(' ') } end end @@ -153,6 +165,7 @@ module MRuby def run(outfile, infile) FileUtils.mkdir_p File.dirname(outfile) + _pp "YACC #{filename(infile)} > #{filename(outfile)}" _run compile_options, { :outfile => filename(outfile) , :infile => filename(infile) } end end @@ -168,6 +181,7 @@ module MRuby def run(outfile, infile) FileUtils.mkdir_p File.dirname(outfile) + _pp "GPERF #{filename(infile)} > #{filename(outfile)}" _run compile_options, { :outfile => filename(outfile) , :infile => filename(infile) } end end @@ -184,6 +198,7 @@ module MRuby end def run_clone(dir, url, _flags = []) + _pp "GIT #{url} > #{filename(dir)}" _run clone_options, { :flags => [flags, _flags].flatten.join(' '), :url => url, :dir => filename(dir) } end end @@ -199,6 +214,7 @@ module MRuby @command ||= @build.mrbcfile IO.popen("#{filename @command} #{@compile_options % {:funcname => funcname}}", 'r+') do |io| [infiles].flatten.each do |f| + _pp " MRBC #{f}" io.write IO.read(f) end io.close_write @@ -206,4 +222,4 @@ module MRuby end end end -end
\ No newline at end of file +end diff --git a/tasks/ruby_ext.rake b/tasks/ruby_ext.rake index ebd499063..22a8409d4 100644 --- a/tasks/ruby_ext.rake +++ b/tasks/ruby_ext.rake @@ -33,3 +33,26 @@ class Symbol proc { |obj, *args| obj.send(self, *args) } end end + +$pp_show = true + +if $verbose.nil? + unless Rake.verbose.nil? + if Rake.verbose.class == TrueClass + # verbose message logging + $pp_show = false + else + $pp_show = true + Rake.verbose(false) + end + else + # could not identify rake version + $pp_show = false + end +else + $pp_show = false if $verbose +end + +def _pp(msg) + puts msg if $pp_show +end diff --git a/tasks/toolchains/vs2012.rake b/tasks/toolchains/vs2012.rake index 8b4212468..1f6ea2d65 100644 --- a/tasks/toolchains/vs2012.rake +++ b/tasks/toolchains/vs2012.rake @@ -12,8 +12,8 @@ MRuby::Toolchain.new(:vs2012) do |conf| conf.linker do |linker| linker.command = ENV['LD'] || 'link.exe' linker.flags = [ENV['LDFLAGS'] || %w(/nologo)] - linkerraries = %w(kernel32 user32 gdi32 winspool comdlg32 advapi32 shell32 ole32 oleaut32 uuid odbc32 odbccp32) - linkerrary_paths = [] + linker.libraries = %w(kernel32 user32 gdi32 winspool comdlg32 advapi32 shell32 ole32 oleaut32 uuid odbc32 odbccp32) + linker.library_paths = [] linker.option_library = '-l%s' linker.option_library_path = '-L%s' linker.link_options = "%{flags} /OUT:%{outfile} %{objs} %{libs}" |
