aboutsummaryrefslogtreecommitdiffstats
path: root/Library/Homebrew
diff options
context:
space:
mode:
authorMike McQuaid2014-12-09 09:26:38 +0000
committerMike McQuaid2014-12-09 09:26:38 +0000
commit1e5bb646484d3df8c5cbe7be9adcb8a473d40b89 (patch)
tree7d1f5c8039024c18d2d17026928b178c36426db7 /Library/Homebrew
parent6bd2da69ce11516eb6906028c89a130347cf05c4 (diff)
downloadhomebrew-1e5bb646484d3df8c5cbe7be9adcb8a473d40b89.tar.bz2
XcodeDependency: allow specifying a version.
Diffstat (limited to 'Library/Homebrew')
-rw-r--r--Library/Homebrew/requirements.rb16
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