aboutsummaryrefslogtreecommitdiffstats
path: root/Library/Homebrew/cmd/deps.rb
diff options
context:
space:
mode:
authorMike McQuaid2013-10-29 17:27:21 -0400
committerMike McQuaid2013-10-30 10:48:53 -0700
commit34d836872f6c84cdbfc4e26543ff464ef750ac7b (patch)
treee4dee3bb20c6b14cab2fcf121692c44eb459c65b /Library/Homebrew/cmd/deps.rb
parenta252c90a0d49cae0889a9a540a3c220c53340425 (diff)
downloadbrew-34d836872f6c84cdbfc4e26543ff464ef750ac7b.tar.bz2
deps: display requirements default_formulae.
Diffstat (limited to 'Library/Homebrew/cmd/deps.rb')
-rw-r--r--Library/Homebrew/cmd/deps.rb27
1 files changed, 21 insertions, 6 deletions
diff --git a/Library/Homebrew/cmd/deps.rb b/Library/Homebrew/cmd/deps.rb
index 4722ca0c6..c64c810f9 100644
--- a/Library/Homebrew/cmd/deps.rb
+++ b/Library/Homebrew/cmd/deps.rb
@@ -21,20 +21,31 @@ module Homebrew extend self
puts_deps_tree ARGV.formulae
else
raise FormulaUnspecifiedError if ARGV.named.empty?
- all_deps = deps_for_formulae ARGV.formulae
+ all_deps = deps_for_formulae(ARGV.formulae, ARGV.one?)
all_deps.sort! unless mode.topo_order?
puts all_deps
end
end
- def deps_for_formulae(formulae)
- formulae.map do |f|
- ARGV.one? ? f.deps.default : f.recursive_dependencies
- end.inject(&:&).map(&:name)
+ def deps_for_formula(f, recursive=false)
+ if recursive
+ deps = f.recursive_dependencies
+ reqs = f.recursive_requirements
+ else
+ deps = f.deps.default
+ reqs = f.requirements
+ end
+ deps.map(&:name) + reqs.to_a.map do |r|
+ ":#{r.class.default_formula}" if r.default_formula?
+ end.compact
+ end
+
+ def deps_for_formulae(formulae, recursive=false)
+ formulae.map {|f| deps_for_formula(f, recursive) }.inject(&:&)
end
def puts_deps(formulae)
- formulae.each { |f| puts "#{f.name}: #{f.deps*' '}" }
+ formulae.each { |f| puts "#{f.name}: #{deps_for_formula(f)*' '}" }
end
def puts_deps_tree(formulae)
@@ -46,6 +57,10 @@ module Homebrew extend self
end
def recursive_deps_tree f, level
+ f.requirements.each do |requirement|
+ next unless requirement.default_formula?
+ puts "| "*(level-1)+"|- :"+requirement.class.default_formula.to_s
+ end
f.deps.default.each do |dep|
puts "| "*(level-1)+"|- "+dep.to_s
recursive_deps_tree(Formula.factory(dep.to_s), level+1)