summaryrefslogtreecommitdiffhomepage
diff options
context:
space:
mode:
-rw-r--r--build_config/cross-32bit.rb2
-rw-r--r--lib/mruby/build.rb10
-rw-r--r--tasks/presym.rake4
3 files changed, 9 insertions, 7 deletions
diff --git a/build_config/cross-32bit.rb b/build_config/cross-32bit.rb
index 82d5d023f..b3feb21f6 100644
--- a/build_config/cross-32bit.rb
+++ b/build_config/cross-32bit.rb
@@ -1,6 +1,6 @@
# Define cross build settings
MRuby::CrossBuild.new('cross-32bit') do |conf|
- toolchain :gcc
+ conf.toolchain :gcc
conf.cc.flags << "-m32"
conf.linker.flags << "-m32"
diff --git a/lib/mruby/build.rb b/lib/mruby/build.rb
index ca2b28457..601c72b12 100644
--- a/lib/mruby/build.rb
+++ b/lib/mruby/build.rb
@@ -515,11 +515,7 @@ EOS
unless mrbcfile_external? || MRuby.targets['host']
# add minimal 'host'
MRuby::Build.new('host') do |conf|
- if ENV['VisualStudioVersion'] || ENV['VSINSTALLDIR']
- toolchain :visualcpp
- else
- toolchain :gcc
- end
+ conf.toolchain
conf.build_mrbc_exec
conf.disable_libmruby
conf.disable_presym
@@ -527,6 +523,10 @@ EOS
end
end
+ def mrbcfile
+ mrbcfile_external? ? super : MRuby::targets['host'].mrbcfile
+ end
+
def run_test
@test_runner.runner_options << verbose_flag
mrbtest = exefile("#{build_dir}/bin/mrbtest")
diff --git a/tasks/presym.rake b/tasks/presym.rake
index f3a076ac6..38d36c9e2 100644
--- a/tasks/presym.rake
+++ b/tasks/presym.rake
@@ -1,3 +1,4 @@
+mrbtest = "#{MRuby::Build.install_dir}/mrbtest"
all_prerequisites = ->(task_name, prereqs) do
Rake::Task[task_name].prerequisites.each do |prereq_name|
next if prereqs[prereq_name]
@@ -18,13 +19,14 @@ MRuby.each_target do |build|
prereqs = {}
pps = []
- mrbtest = "#{build.class.install_dir}/mrbtest"
+ build_dir = "#{build.build_dir}/"
mrbc_build_dir = "#{build.mrbc_build.build_dir}/" if build.mrbc_build
build.products.each do |product|
all_prerequisites.(product, prereqs) unless product == mrbtest
end
prereqs.each_key do |prereq|
next unless File.extname(prereq) == build.exts.object
+ next unless prereq.start_with?(build_dir)
next if mrbc_build_dir && prereq.start_with?(mrbc_build_dir)
pps << prereq.ext(build.exts.preprocessed)
end