aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorAdam Vandenberg2013-06-23 18:35:20 -0700
committerAdam Vandenberg2013-06-24 07:35:42 -0700
commit8806220848018668f66de312cede721437bf21c7 (patch)
tree588c446f0c973939f32ca3377207ba132cdc9db0
parent3505565227056aed7e8c2de7cb39cb2598a65f2a (diff)
downloadhomebrew-8806220848018668f66de312cede721437bf21c7.tar.bz2
Add :fortran requirement
-rw-r--r--Library/Homebrew/dependency_collector.rb1
-rw-r--r--Library/Homebrew/requirements.rb5
-rw-r--r--Library/Homebrew/requirements/fortran_dependency.rb24
3 files changed, 28 insertions, 2 deletions
diff --git a/Library/Homebrew/dependency_collector.rb b/Library/Homebrew/dependency_collector.rb
index 50dffaab6..7eb05172a 100644
--- a/Library/Homebrew/dependency_collector.rb
+++ b/Library/Homebrew/dependency_collector.rb
@@ -93,6 +93,7 @@ class DependencyCollector
when :macos then MinimumMacOSRequirement.new(tags)
when :mysql then MysqlDependency.new(tags)
when :postgresql then PostgresqlDependency.new(tags)
+ when :fortran then FortranRequired.new(tags)
when :tex then TeXDependency.new(tags)
when :clt then CLTDependency.new(tags)
when :arch then ArchRequirement.new(tags)
diff --git a/Library/Homebrew/requirements.rb b/Library/Homebrew/requirements.rb
index 627fb1f9e..355fad26d 100644
--- a/Library/Homebrew/requirements.rb
+++ b/Library/Homebrew/requirements.rb
@@ -1,9 +1,10 @@
require 'requirement'
+require 'requirements/fortran_dependency'
require 'requirements/language_module_dependency'
-require 'requirements/x11_dependency'
+require 'requirements/macos_requirement'
require 'requirements/mpi_dependency'
require 'requirements/python_dependency'
-require 'requirements/macos_requirement'
+require 'requirements/x11_dependency'
class XcodeDependency < Requirement
fatal true
diff --git a/Library/Homebrew/requirements/fortran_dependency.rb b/Library/Homebrew/requirements/fortran_dependency.rb
new file mode 100644
index 000000000..0de239e4e
--- /dev/null
+++ b/Library/Homebrew/requirements/fortran_dependency.rb
@@ -0,0 +1,24 @@
+require 'requirement'
+
+class FortranRequired < Requirement
+ fatal true
+
+ default_formula 'gfortran'
+
+ env { ENV.fortran }
+
+ satisfy :build_env => false do
+ (ENV['FC'] || which('gfortran')) ? true : false
+ end
+
+ def message; <<-EOS.undent
+ Fortran is required to install.
+
+ You can install this with Homebrew using:
+ brew install gfortran
+
+ Or you can use an external compiler by setting:
+ FC=<path-to-fortran-compiler>
+ EOS
+ end
+end