From 32f637d5900a11a3868745cdf70f35a20373457f Mon Sep 17 00:00:00 2001 From: Adam Vandenberg Date: Fri, 24 May 2013 08:37:16 -0700 Subject: Add minimum OS X version requirement Closes Homebrew/homebrew#19998. Signed-off-by: Adam Vandenberg --- Library/Homebrew/dependency_collector.rb | 1 + Library/Homebrew/requirements.rb | 1 + Library/Homebrew/requirements/macos_requirement.rb | 16 ++++++++++++++++ 3 files changed, 18 insertions(+) create mode 100644 Library/Homebrew/requirements/macos_requirement.rb (limited to 'Library') diff --git a/Library/Homebrew/dependency_collector.rb b/Library/Homebrew/dependency_collector.rb index 539cd2f73..91bcb85a3 100644 --- a/Library/Homebrew/dependency_collector.rb +++ b/Library/Homebrew/dependency_collector.rb @@ -87,6 +87,7 @@ class DependencyCollector # so just return a standard formula dependency. Dependency.new(spec.to_s, tags) when :xcode then XcodeDependency.new(tags) + when :macos then MinimumMacOSRequirement.new(tags) when :mysql then MysqlDependency.new(tags) when :postgresql then PostgresqlDependency.new(tags) when :tex then TeXDependency.new(tags) diff --git a/Library/Homebrew/requirements.rb b/Library/Homebrew/requirements.rb index 0aafc0a8c..627fb1f9e 100644 --- a/Library/Homebrew/requirements.rb +++ b/Library/Homebrew/requirements.rb @@ -3,6 +3,7 @@ require 'requirements/language_module_dependency' require 'requirements/x11_dependency' require 'requirements/mpi_dependency' require 'requirements/python_dependency' +require 'requirements/macos_requirement' class XcodeDependency < Requirement fatal true diff --git a/Library/Homebrew/requirements/macos_requirement.rb b/Library/Homebrew/requirements/macos_requirement.rb new file mode 100644 index 000000000..c172189ee --- /dev/null +++ b/Library/Homebrew/requirements/macos_requirement.rb @@ -0,0 +1,16 @@ +require 'requirement' + +class MinimumMacOSRequirement < Requirement + fatal true + + def initialize(tags) + @version = MacOS::Version.from_symbol(tags.first) + super + end + + satisfy { MacOS.version >= @version } + + def message + "OS X #{@version.pretty_name} or newer is required." + end +end -- cgit v1.2.3