From 860f4bd11ff06e5875756991e423f33f9ae4f0c8 Mon Sep 17 00:00:00 2001 From: Dominyk Tiller Date: Tue, 13 Sep 2016 21:41:10 +0100 Subject: [PATCH 1/6] xcode: expect Xcode 8.0 on OS X 10.11 --- Library/Homebrew/os/mac/xcode.rb | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/Library/Homebrew/os/mac/xcode.rb b/Library/Homebrew/os/mac/xcode.rb index f487a69978..dd977278b9 100644 --- a/Library/Homebrew/os/mac/xcode.rb +++ b/Library/Homebrew/os/mac/xcode.rb @@ -15,7 +15,7 @@ module OS when "10.8" then "5.1.1" when "10.9" then "6.2" when "10.10" then "7.2.1" - when "10.11" then "7.3.1" + when "10.11" then "8.0" when "10.12" then "8.0" else # Default to newest known version of Xcode for unreleased macOS versions. @@ -195,7 +195,7 @@ module OS def latest_version case MacOS.version when "10.12" then "800.0.38" - when "10.11" then "703.0.31" + when "10.11" then "800.0.38" when "10.10" then "700.1.81" when "10.9" then "600.0.57" when "10.8" then "503.0.40" From 2e808ff2e33797247b40440e8797bd2500095d1f Mon Sep 17 00:00:00 2001 From: Dominyk Tiller Date: Tue, 13 Sep 2016 21:43:06 +0100 Subject: [PATCH 2/6] Xcode.md: update 10.11 expectation --- docs/Xcode.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/Xcode.md b/docs/Xcode.md index 98c5c6347c..683a2b0fb6 100644 --- a/docs/Xcode.md +++ b/docs/Xcode.md @@ -10,7 +10,7 @@ Tools available for your platform: 10.8 | 5.1.1 | April 2014 10.9 | 6.2 | 6.2 10.10 | 7.2.1 | 7.2 - 10.11 | 7.3.1 | 7.3 + 10.11 | 8.0 | 8.0 10.12 | 8.0 | 8.0 From 9fda6d2ec97264b03cc1cacdcd2f88db756db0c6 Mon Sep 17 00:00:00 2001 From: Dominyk Tiller Date: Thu, 22 Sep 2016 17:36:14 +0100 Subject: [PATCH 3/6] docs/Xcode: there is no 10.11 CLT 8.0 From the 8.1 Xcode Beta: ``` There is no Command Line Tools (OS X 10.11) for Xcode 8 package. Xcode 8 contains SDKs that are incompatible with earlier toolchains. Developers who want to make use of the Xcode 8 SDKs from the command line must choose the SDK with `xcode-select`. Developers on OS X El Capitan who have installed versions of the Command Line Tools (OS X 10.11) for Xcode 8 Beta should install Command Line Tools (OS X 10.11) for Xcode 7.3.1. ``` Thanks Apple. --- docs/Xcode.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/Xcode.md b/docs/Xcode.md index 683a2b0fb6..7697a9c550 100644 --- a/docs/Xcode.md +++ b/docs/Xcode.md @@ -10,7 +10,7 @@ Tools available for your platform: 10.8 | 5.1.1 | April 2014 10.9 | 6.2 | 6.2 10.10 | 7.2.1 | 7.2 - 10.11 | 8.0 | 8.0 + 10.11 | 8.0 | 7.3 10.12 | 8.0 | 8.0 From b08952068268c9de4a5ebea5660bea1f4d81d889 Mon Sep 17 00:00:00 2001 From: Dominyk Tiller Date: Thu, 22 Sep 2016 17:48:28 +0100 Subject: [PATCH 4/6] xcode: revert expectation of 10.11 8.0 CLT --- Library/Homebrew/os/mac/xcode.rb | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/Library/Homebrew/os/mac/xcode.rb b/Library/Homebrew/os/mac/xcode.rb index dd977278b9..7d9fd41e07 100644 --- a/Library/Homebrew/os/mac/xcode.rb +++ b/Library/Homebrew/os/mac/xcode.rb @@ -193,9 +193,12 @@ module OS end def latest_version + # As of Xcode 8 CLT releases are no longer in sync with Xcode releases + # on the older supported platform for that Xcode release, i.e there's no + # CLT package for 10.11 that contains the Clang version from Xcode 8. case MacOS.version when "10.12" then "800.0.38" - when "10.11" then "800.0.38" + when "10.11" then "703.0.31" when "10.10" then "700.1.81" when "10.9" then "600.0.57" when "10.8" then "503.0.40" From 5575c17629c49453c746b25af6051d03b1755ccc Mon Sep 17 00:00:00 2001 From: Dominyk Tiller Date: Thu, 22 Sep 2016 17:51:04 +0100 Subject: [PATCH 5/6] xcode: prefer Utils.popen_read --- Library/Homebrew/os/mac/xcode.rb | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/Library/Homebrew/os/mac/xcode.rb b/Library/Homebrew/os/mac/xcode.rb index 7d9fd41e07..3aab9bf523 100644 --- a/Library/Homebrew/os/mac/xcode.rb +++ b/Library/Homebrew/os/mac/xcode.rb @@ -209,9 +209,9 @@ module OS def outdated? if MacOS.version >= :mavericks - version = `#{MAVERICKS_PKG_PATH}/usr/bin/clang --version` + version = Utils.popen_read("#{MAVERICKS_PKG_PATH}/usr/bin/clang --version") else - version = `/usr/bin/clang --version` + version = Utils.popen_read("/usr/bin/clang --version") end version = version[/clang-(\d+\.\d+\.\d+(\.\d+)?)/, 1] || "0" version < latest_version From a124680b189f50ebeb550845e3c0efd34db66247 Mon Sep 17 00:00:00 2001 From: Dominyk Tiller Date: Thu, 22 Sep 2016 18:13:46 +0100 Subject: [PATCH 6/6] diagnostic: make using outdated development tools fatal --- Library/Homebrew/extend/os/mac/diagnostic.rb | 13 ++++--------- 1 file changed, 4 insertions(+), 9 deletions(-) diff --git a/Library/Homebrew/extend/os/mac/diagnostic.rb b/Library/Homebrew/extend/os/mac/diagnostic.rb index 15dd3328fe..a85797aa8b 100644 --- a/Library/Homebrew/extend/os/mac/diagnostic.rb +++ b/Library/Homebrew/extend/os/mac/diagnostic.rb @@ -14,15 +14,10 @@ module Homebrew end def fatal_development_tools_checks - if MacOS.prerelease? - %w[ - check_xcode_up_to_date - check_clt_up_to_date - ] - else - %w[ - ] - end + %w[ + check_xcode_up_to_date + check_clt_up_to_date + ] end def check_for_unsupported_macos