From a92362348dae775ddd8d03d3d147b1601dcab36d Mon Sep 17 00:00:00 2001 From: Mike McQuaid Date: Tue, 9 Dec 2014 09:26:38 +0000 Subject: [PATCH] XcodeDependency: allow specifying a version. --- Library/Homebrew/requirements.rb | 16 ++++++++++++++-- 1 file changed, 14 insertions(+), 2 deletions(-) diff --git a/Library/Homebrew/requirements.rb b/Library/Homebrew/requirements.rb index d387d3871a..94ea7d98c5 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