diff options
| author | Mike McQuaid | 2015-03-20 21:31:33 +0000 |
|---|---|---|
| committer | Mike McQuaid | 2015-03-23 13:30:54 +0000 |
| commit | a09641a5819019b5ffcdd9a766150585d4d682ba (patch) | |
| tree | 02ecd8a912b22f9c422cd70a8ffd0064bd322cc4 /Library | |
| parent | 4fccab615fe2882cd9210d017a2995348e1b9e27 (diff) | |
| download | brew-a09641a5819019b5ffcdd9a766150585d4d682ba.tar.bz2 | |
deps: allow skipping build, optional deps.
Diffstat (limited to 'Library')
| -rw-r--r-- | Library/Homebrew/cmd/deps.rb | 20 |
1 files changed, 16 insertions, 4 deletions
diff --git a/Library/Homebrew/cmd/deps.rb b/Library/Homebrew/cmd/deps.rb index ac3a47426..cffeb4205 100644 --- a/Library/Homebrew/cmd/deps.rb +++ b/Library/Homebrew/cmd/deps.rb @@ -29,12 +29,24 @@ module Homebrew end def deps_for_formula(f, recursive=false) + ignores = [] + ignores << "build?" if ARGV.include? "--skip-build" + ignores << "optional?" if ARGV.include? "--skip-optional" + if recursive - deps = f.recursive_dependencies - reqs = f.recursive_requirements + deps = f.recursive_dependencies.reject do |dep| + ignores.any? { |ignore| dep.send(ignore) } + end + reqs = f.recursive_requirements.reject do |req| + ignores.any? { |ignore| req.send(ignore) } + end else - deps = f.deps.default - reqs = f.requirements + deps = f.deps.reject do |dep| + ignores.any? { |ignore| dep.send(ignore) } + end + reqs = f.requirements.reject do |req| + ignores.any? { |ignore| req.send(ignore) } + end end deps + reqs.select(&:default_formula?).map(&:to_dependency) |
