Load missing dependencies from core or mgem-list.

This commit is contained in:
take_cheeze
2015-06-22 02:23:52 +09:00
parent 8d54977d25
commit 0c8fa845e4
+13 -2
View File
@@ -304,7 +304,14 @@ module MRuby
default_gems = []
each do |g|
g.dependencies.each do |dep|
default_gems << dep if dep[:default] and not gem_table.key? dep[:gem]
unless gem_table.key? dep[:gem]
if dep[:default]; default_gems << dep
elsif File.exist? "#{root}/mrbgems/#{dep[:gem]}" # check core
default_gems << { :gem => dep[:gem], :default => { :core => dep[:gem] } }
else # fallback to mgem-list
default_gems << { :gem => dep[:gem], :default => { :mgem => dep[:gem] } }
end
end
end
end
@@ -316,7 +323,11 @@ module MRuby
spec.setup
spec.dependencies.each do |dep|
default_gems << dep if dep[:default] and not gem_table.key? dep[:gem]
unless gem_table.key? dep[:gem]
if dep[:default]; default_gems << dep
else default_gems << { :gem => dep[:gem], :default => { :mgem => dep[:gem] } }
end
end
end
gem_table[spec.name] = spec
end