Improved build scripts and config files

This commit is contained in:
Yuichiro MASUI
2013-01-20 22:48:42 +09:00
parent 583983385b
commit ced80d2b4b
25 changed files with 792 additions and 521 deletions
+9 -9
View File
@@ -1,25 +1,25 @@
dir = File.dirname(__FILE__).sub(%r|^\./|, '')
MRuby.each_target do
dir = File.dirname(__FILE__).relative_path_from(root)
lex_def = "#{dir}/lex.def"
objs = Dir.glob("src/*.{c}").map { |f| f.pathmap("#{build_dir}/%X.o") } + ["#{build_dir}/#{dir}/y.tab.o"]
objs = Dir.glob("src/*.{c}").map { |f| objfile(f.pathmap("#{build_dir}/%X")) } + [objfile("#{build_dir}/#{dir}/y.tab")]
self.libmruby << objs
file "#{build_dir}/lib/libmruby_core.a" => objs do |t|
archive t.name, 'rs', t.prerequisites
file libfile("#{build_dir}/lib/libmruby_core") => objs do |t|
archiver.run t.name, t.prerequisites
end
# Parser
file "#{build_dir}/#{dir}/y.tab.c" => ["#{dir}/parse.y"] do |t|
run_yacc t.name, t.prerequisites.first
yacc.run t.name, t.prerequisites.first
end
file "#{build_dir}/#{dir}/y.tab.o" => ["#{build_dir}/#{dir}/y.tab.c", lex_def] do |t|
compile_c t.name, t.prerequisites.first, [], dir
file objfile("#{build_dir}/#{dir}/y.tab") => ["#{build_dir}/#{dir}/y.tab.c", lex_def] do |t|
cc.run t.name, t.prerequisites.first, [], [dir]
end
# Lexical analyzer
file lex_def => "#{dir}/keywords" do |t|
run_gperf t.name, t.prerequisites.first
gperf.run t.name, t.prerequisites.first
end
end