aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorMax Howell2010-01-13 11:53:57 +0000
committerMax Howell2010-01-13 11:56:23 +0000
commitdf3cca94e18ca206fd3bec9a83e451ca1dae8298 (patch)
treef01d8c20a664a1f51ee7fa462834818eda3742da
parent9f871c9955f3459da9a28586370f814e50fb0e88 (diff)
downloadbrew-df3cca94e18ca206fd3bec9a83e451ca1dae8298.tar.bz2
Support Perl/CPAN external dependencies
WhoHas requires LWP::UserAgent.
-rw-r--r--Library/Homebrew/formula_installer.rb16
1 files changed, 15 insertions, 1 deletions
diff --git a/Library/Homebrew/formula_installer.rb b/Library/Homebrew/formula_installer.rb
index efa84e0ff..3c94602e2 100644
--- a/Library/Homebrew/formula_installer.rb
+++ b/Library/Homebrew/formula_installer.rb
@@ -20,6 +20,7 @@ class FormulaInstaller
end
deps
end
+
def pyerr dep
brew_pip = ' brew install pip &&' unless Formula.factory('pip').installed?
<<-EOS
@@ -30,11 +31,24 @@ Homebrew does not provide formula for Python dependencies, pip does:
EOS
end
+ def plerr dep; <<-EOS
+Unsatisfied dependency, #{dep}
+Homebrew does not provide formula for Perl dependencies, cpan does:
+
+ cpan -i #{dep}
+
+ EOS
+ end
def check_external_deps f
+ return unless f.external_deps
+
f.external_deps[:python].each do |dep|
raise pyerr(dep) unless quiet_system "/usr/bin/python", "-c", "import #{dep}"
- end if f.external_deps
+ end
+ f.external_deps[:perl].each do |dep|
+ raise plerr(dep) unless quiet_system "/usr/bin/perl", "-e", "use #{dep}"
+ end
end
def install f