summaryrefslogtreecommitdiffhomepage
path: root/Rakefile
diff options
context:
space:
mode:
authorCarson McDonald <[email protected]>2013-01-09 15:27:32 -0500
committerCarson McDonald <[email protected]>2013-01-09 15:27:32 -0500
commitde33b1e1319a65eddb90d720a836666078f0b0d5 (patch)
treeaea6cca21b5a5972b5a9e2a7e0535e18f9972f74 /Rakefile
parent5804e7682ecbd59c1a9cea56c9ad008cff206713 (diff)
downloadmruby-de33b1e1319a65eddb90d720a836666078f0b0d5.tar.gz
mruby-de33b1e1319a65eddb90d720a836666078f0b0d5.zip
Make conf.bins work for cross compiled deps as well as the host.
Diffstat (limited to 'Rakefile')
-rw-r--r--Rakefile12
1 files changed, 8 insertions, 4 deletions
diff --git a/Rakefile b/Rakefile
index d067a2279..f522c808b 100644
--- a/Rakefile
+++ b/Rakefile
@@ -27,18 +27,22 @@ load 'test/mrbtest.rake'
# generic build targets, rules
task :default => :all
-binfiles = MRuby.targets['host'].bins.map do |bin|
+depfiles = MRuby.targets['host'].bins.map do |bin|
install_path = exefile("bin/#{bin}")
file install_path => exefile("build/host/bin/#{bin}") do |t|
FileUtils.cp t.prerequisites.first, t.name
end
-
+
install_path
end
+depfiles += MRuby.targets.reject {|n,t| n == 'host' }.map do |n, t|
+ ["#{t.build_dir}/lib/libmruby.a"] + t.bins.map { |bin| exefile("#{t.build_dir}/bin/#{bin}") }
+end
+
desc "build all targets, install (locally) in-repo"
-task :all => binfiles + MRuby.targets.values.map { |t| [exefile("#{t.build_dir}/bin/mruby"), exefile("#{t.build_dir}/bin/mirb"), exefile("#{t.build_dir}/bin/mrbc")] }.flatten
+task :all => depfiles
desc "run all mruby tests"
task :test => MRuby.targets.values.map { |t| exefile("#{t.build_dir}/test/mrbtest") } do
@@ -53,5 +57,5 @@ task :clean do
MRuby.each_target do |t|
FileUtils.rm_rf t.build_dir
end
- FileUtils.rm_f binfiles
+ FileUtils.rm_f depfiles
end