aboutsummaryrefslogtreecommitdiffstats
path: root/Library
diff options
context:
space:
mode:
authorMisty De Meo2016-09-16 16:22:45 +1000
committerGitHub2016-09-16 16:22:45 +1000
commit67cb634e20ee401fb50663c775679a165b2fdcf6 (patch)
tree6d7467529a58587057aa7395d80981288956cc8a /Library
parent1c5fa19f84f905e598f7f9542db723849db54d2d (diff)
parent8a0861feab37b850059d29a0254f5c480e03d346 (diff)
downloadbrew-67cb634e20ee401fb50663c775679a165b2fdcf6.tar.bz2
Merge pull request #965 from mistydemeo/warn_xcode_8_without_clt
Warn when using Xcode 8 without CLT on 10.11
Diffstat (limited to 'Library')
-rw-r--r--Library/Homebrew/extend/os/mac/diagnostic.rb14
-rw-r--r--Library/Homebrew/test/test_os_mac_diagnostic.rb8
2 files changed, 22 insertions, 0 deletions
diff --git a/Library/Homebrew/extend/os/mac/diagnostic.rb b/Library/Homebrew/extend/os/mac/diagnostic.rb
index 7fb13af85..f8d6c9e1f 100644
--- a/Library/Homebrew/extend/os/mac/diagnostic.rb
+++ b/Library/Homebrew/extend/os/mac/diagnostic.rb
@@ -9,6 +9,7 @@ module Homebrew
check_for_installed_developer_tools
check_xcode_license_approved
check_for_osx_gcc_installer
+ check_xcode_8_without_clt_on_el_capitan
]
end
@@ -90,6 +91,19 @@ module Homebrew
EOS
end
+ def check_xcode_8_without_clt_on_el_capitan
+ return unless MacOS::Xcode.without_clt?
+ # Scope this to Xcode 8 on El Cap for now
+ return unless MacOS.version == :el_capitan && MacOS::Xcode.version >= "8"
+
+ <<-EOS.undent
+ You have Xcode 8 installed without the CLT;
+ this causes certain builds to fail on OS X 10.11.
+ Please install the CLT via:
+ sudo xcode-select --install
+ EOS
+ end
+
def check_for_osx_gcc_installer
return unless MacOS.version < "10.7" || ((MacOS::Xcode.version || "0") > "4.1")
return unless DevelopmentTools.clang_version == "2.1"
diff --git a/Library/Homebrew/test/test_os_mac_diagnostic.rb b/Library/Homebrew/test/test_os_mac_diagnostic.rb
index a52179ac6..f7d43c4c7 100644
--- a/Library/Homebrew/test/test_os_mac_diagnostic.rb
+++ b/Library/Homebrew/test/test_os_mac_diagnostic.rb
@@ -38,4 +38,12 @@ class OSMacDiagnosticChecksTest < Homebrew::TestCase
MacOS::XQuartz.stubs(:version).returns("2.7.10_beta2")
assert_match "The following beta release of XQuartz is installed: 2.7.10_beta2", @checks.check_for_beta_xquartz
end
+
+ def test_check_xcode_8_without_clt_on_el_capitan
+ MacOS.stubs(:version).returns OS::Mac::Version.new("10.11")
+ MacOS::Xcode.stubs(:installed?).returns true
+ MacOS::Xcode.stubs(:version).returns "8.0"
+ MacOS::Xcode.stubs(:without_clt?).returns true
+ assert_match "You have Xcode 8 installed without the CLT", @checks.check_xcode_8_without_clt_on_el_capitan
+ end
end