aboutsummaryrefslogtreecommitdiffstats
path: root/Library/Homebrew/cmd
diff options
context:
space:
mode:
Diffstat (limited to 'Library/Homebrew/cmd')
-rw-r--r--Library/Homebrew/cmd/deps.rb13
1 files changed, 13 insertions, 0 deletions
diff --git a/Library/Homebrew/cmd/deps.rb b/Library/Homebrew/cmd/deps.rb
index eed04ae0f..9bba1ef39 100644
--- a/Library/Homebrew/cmd/deps.rb
+++ b/Library/Homebrew/cmd/deps.rb
@@ -1,11 +1,24 @@
require 'formula'
+def recursive_deps_tree f, level
+ f.deps.each do |dep|
+ puts "> "*level+dep
+ recursive_deps_tree(Formula.factory(dep), level+1)
+ end
+end
+
module Homebrew extend self
def deps
if ARGV.include? '--all'
Formula.each do |f|
puts "#{f.name}: #{f.deps*' '}"
end
+ elsif ARGV.include? '--tree'
+ ARGV.formulae.each do |f|
+ puts f
+ recursive_deps_tree(f, 1)
+ puts
+ end
else
all_deps = ARGV.formulae.map{ |f| ARGV.one? ? f.deps : f.recursive_deps }.intersection
all_deps.sort! unless ARGV.include? "-n"