Commit a8ab74a6 authored by mimaki's avatar mimaki

Merged `cygwin_filename()` into `filename()` because Cygwin pathnames are in UNIX format.

parent 7ab5353f
...@@ -276,14 +276,6 @@ EOS ...@@ -276,14 +276,6 @@ EOS
end end
end end
def cygwin_filename(name)
if name.is_a?(Array)
name.flatten.map { |n| cygwin_filename(n) }
else
'"%s"' % `cygpath -w "#{filename(name)}"`.strip
end
end
def exefile(name) def exefile(name)
if name.is_a?(Array) if name.is_a?(Array)
name.flatten.map { |n| exefile(n) } name.flatten.map { |n| exefile(n) }
......
...@@ -4,7 +4,7 @@ module MRuby ...@@ -4,7 +4,7 @@ module MRuby
class Command class Command
include Rake::DSL include Rake::DSL
extend Forwardable extend Forwardable
def_delegators :@build, :filename, :objfile, :libfile, :exefile, :cygwin_filename def_delegators :@build, :filename, :objfile, :libfile, :exefile
attr_accessor :build, :command attr_accessor :build, :command
def initialize(build) def initialize(build)
...@@ -79,26 +79,17 @@ module MRuby ...@@ -79,26 +79,17 @@ module MRuby
def all_flags(_defines=[], _include_paths=[], _flags=[]) def all_flags(_defines=[], _include_paths=[], _flags=[])
define_flags = [defines, _defines].flatten.map{ |d| option_define % d } define_flags = [defines, _defines].flatten.map{ |d| option_define % d }
include_path_flags = [include_paths, _include_paths].flatten.map do |f| include_path_flags = [include_paths, _include_paths].flatten.map do |f|
if MRUBY_BUILD_HOST_IS_CYGWIN
option_include_path % cygwin_filename(f)
else
option_include_path % filename(f) option_include_path % filename(f)
end end
end
[flags, define_flags, include_path_flags, _flags].flatten.join(' ') [flags, define_flags, include_path_flags, _flags].flatten.join(' ')
end end
def run(outfile, infile, _defines=[], _include_paths=[], _flags=[]) def run(outfile, infile, _defines=[], _include_paths=[], _flags=[])
mkdir_p File.dirname(outfile) mkdir_p File.dirname(outfile)
_pp "CC", infile.relative_path, outfile.relative_path _pp "CC", infile.relative_path, outfile.relative_path
if MRUBY_BUILD_HOST_IS_CYGWIN
_run compile_options, { :flags => all_flags(_defines, _include_paths, _flags),
:infile => cygwin_filename(infile), :outfile => cygwin_filename(outfile) }
else
_run compile_options, { :flags => all_flags(_defines, _include_paths, _flags), _run compile_options, { :flags => all_flags(_defines, _include_paths, _flags),
:infile => filename(infile), :outfile => filename(outfile) } :infile => filename(infile), :outfile => filename(outfile) }
end end
end
def define_rules(build_dir, source_dir='') def define_rules(build_dir, source_dir='')
@out_ext = build.exts.object @out_ext = build.exts.object
...@@ -191,12 +182,8 @@ module MRuby ...@@ -191,12 +182,8 @@ module MRuby
def all_flags(_library_paths=[], _flags=[]) def all_flags(_library_paths=[], _flags=[])
library_path_flags = [library_paths, _library_paths].flatten.map do |f| library_path_flags = [library_paths, _library_paths].flatten.map do |f|
if MRUBY_BUILD_HOST_IS_CYGWIN
option_library_path % cygwin_filename(f)
else
option_library_path % filename(f) option_library_path % filename(f)
end end
end
[flags, library_path_flags, _flags].flatten.join(' ') [flags, library_path_flags, _flags].flatten.join(' ')
end end
...@@ -209,13 +196,6 @@ module MRuby ...@@ -209,13 +196,6 @@ module MRuby
library_flags = [libraries, _libraries].flatten.map { |d| option_library % d } library_flags = [libraries, _libraries].flatten.map { |d| option_library % d }
_pp "LD", outfile.relative_path _pp "LD", outfile.relative_path
if MRUBY_BUILD_HOST_IS_CYGWIN
_run link_options, { :flags => all_flags(_library_paths, _flags),
:outfile => cygwin_filename(outfile) , :objs => cygwin_filename(objfiles).join(' '),
:flags_before_libraries => [flags_before_libraries, _flags_before_libraries].flatten.join(' '),
:flags_after_libraries => [flags_after_libraries, _flags_after_libraries].flatten.join(' '),
:libs => library_flags.join(' ') }
else
_run link_options, { :flags => all_flags(_library_paths, _flags), _run link_options, { :flags => all_flags(_library_paths, _flags),
:outfile => filename(outfile) , :objs => filename(objfiles).map{|f| %Q["#{f}"]}.join(' '), :outfile => filename(outfile) , :objs => filename(objfiles).map{|f| %Q["#{f}"]}.join(' '),
:flags_before_libraries => [flags_before_libraries, _flags_before_libraries].flatten.join(' '), :flags_before_libraries => [flags_before_libraries, _flags_before_libraries].flatten.join(' '),
...@@ -223,7 +203,6 @@ module MRuby ...@@ -223,7 +203,6 @@ module MRuby
:libs => library_flags.join(' ') } :libs => library_flags.join(' ') }
end end
end end
end
class Command::Archiver < Command class Command::Archiver < Command
attr_accessor :archive_options attr_accessor :archive_options
...@@ -237,13 +216,9 @@ module MRuby ...@@ -237,13 +216,9 @@ module MRuby
def run(outfile, objfiles) def run(outfile, objfiles)
mkdir_p File.dirname(outfile) mkdir_p File.dirname(outfile)
_pp "AR", outfile.relative_path _pp "AR", outfile.relative_path
if MRUBY_BUILD_HOST_IS_CYGWIN
_run archive_options, { :outfile => cygwin_filename(outfile), :objs => cygwin_filename(objfiles).map{|f| %Q["#{f}"]}.join(' ') }
else
_run archive_options, { :outfile => filename(outfile), :objs => filename(objfiles).map{|f| %Q["#{f}"]}.join(' ') } _run archive_options, { :outfile => filename(outfile), :objs => filename(objfiles).map{|f| %Q["#{f}"]}.join(' ') }
end end
end end
end
class Command::Yacc < Command class Command::Yacc < Command
attr_accessor :compile_options attr_accessor :compile_options
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment