mirror of
https://github.com/mruby/mruby
synced 2026-06-08 16:11:16 +00:00
Load missing dependencies from core or mgem-list.
This commit is contained in:
+13
-2
@@ -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
|
||||
|
||||
Reference in New Issue
Block a user