summaryrefslogtreecommitdiffhomepage
diff options
context:
space:
mode:
-rw-r--r--Rakefile2
-rw-r--r--lib/mruby/build.rb2
-rw-r--r--lib/mruby/core_ext.rb (renamed from lib/mruby-core-ext.rb)0
-rw-r--r--src/mruby_core.rake20
4 files changed, 11 insertions, 13 deletions
diff --git a/Rakefile b/Rakefile
index 8432bb83c..db6cbf91a 100644
--- a/Rakefile
+++ b/Rakefile
@@ -10,7 +10,7 @@ Rake.verbose(false) if Rake.verbose == Rake::DSL::DEFAULT
$LOAD_PATH << File.join(MRUBY_ROOT, "lib")
# load build systems
-require "mruby-core-ext"
+require "mruby/core_ext"
require "mruby/build"
# load configuration file
diff --git a/lib/mruby/build.rb b/lib/mruby/build.rb
index 4ae3a6c53..59b5cd583 100644
--- a/lib/mruby/build.rb
+++ b/lib/mruby/build.rb
@@ -1,4 +1,4 @@
-require "mruby-core-ext"
+require "mruby/core_ext"
require "mruby/build/load_gems"
require "mruby/build/command"
diff --git a/lib/mruby-core-ext.rb b/lib/mruby/core_ext.rb
index 433f1bb1a..433f1bb1a 100644
--- a/lib/mruby-core-ext.rb
+++ b/lib/mruby/core_ext.rb
diff --git a/src/mruby_core.rake b/src/mruby_core.rake
index 0b9e94a20..c4816d4ce 100644
--- a/src/mruby_core.rake
+++ b/src/mruby_core.rake
@@ -1,15 +1,13 @@
-MRuby.each_target do
- current_dir = File.dirname(__FILE__).relative_path_from(Dir.pwd)
- relative_from_root = File.dirname(__FILE__).relative_path_from(MRUBY_ROOT)
- current_build_dir = "#{build_dir}/#{relative_from_root}"
-
- objs = Dir.glob("#{current_dir}/*.c").map { |f|
- next nil if cxx_exception_enabled? and f =~ /(error|vm|gc)\.c$/
- objfile(f.pathmap("#{current_build_dir}/%n"))
- }.compact
+as_cxx_srcs = %w[vm error gc].map{|name| "#{MRUBY_ROOT}/src/#{name}.c"}
- if cxx_exception_enabled?
- objs += %w(vm error gc).map { |v| compile_as_cxx "#{current_dir}/#{v}.c", "#{current_build_dir}/#{v}.cxx" }
+MRuby.each_target do
+ objs = Dir.glob("#{MRUBY_ROOT}/src/*.c").map do |src|
+ dst = src.pathmap("#{build_dir}/src/%n")
+ if cxx_exception_enabled? && as_cxx_srcs.include?(src)
+ compile_as_cxx(src, "#{dst}.cxx")
+ else
+ objfile(dst)
+ end
end
self.libmruby_objs << objs