diff options
| author | Mike McQuaid | 2014-12-09 09:26:38 +0000 | 
|---|---|---|
| committer | Mike McQuaid | 2014-12-09 09:26:38 +0000 | 
| commit | a92362348dae775ddd8d03d3d147b1601dcab36d (patch) | |
| tree | cd58bce47b7789523191b00da5ca5deba4ba83d2 /Library/Homebrew/requirements.rb | |
| parent | e311b4a95b34531ca6604fe81bd48237cd067001 (diff) | |
| download | brew-a92362348dae775ddd8d03d3d147b1601dcab36d.tar.bz2 | |
XcodeDependency: allow specifying a version.
Diffstat (limited to 'Library/Homebrew/requirements.rb')
| -rw-r--r-- | Library/Homebrew/requirements.rb | 16 | 
1 files changed, 14 insertions, 2 deletions
diff --git a/Library/Homebrew/requirements.rb b/Library/Homebrew/requirements.rb index d387d3871..94ea7d98c 100644 --- a/Library/Homebrew/requirements.rb +++ b/Library/Homebrew/requirements.rb @@ -13,11 +13,23 @@ require 'requirements/x11_dependency'  class XcodeDependency < Requirement    fatal true -  satisfy(:build_env => false) { MacOS::Xcode.installed? } +  satisfy(:build_env => false) { xcode_installed_version } + +  def initialize(tags) +    @version = tags.each {|t| break tags.delete(t) if t.is_a? String } +    super +  end + +  def xcode_installed_version +    return false unless MacOS::Xcode.installed? +    return true unless @version +    MacOS::Xcode.version >= @version +  end    def message +    version = " #{@version}" if @version      message = <<-EOS.undent -      A full installation of Xcode.app is required to compile this software. +      A full installation of Xcode.app#{version} is required to compile this software.        Installing just the Command Line Tools is not sufficient.      EOS      if MacOS.version >= :lion  | 
