aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--Library/Homebrew/cmd/doctor.rb2
-rw-r--r--Library/Homebrew/os/mac.rb4
-rw-r--r--Library/Homebrew/os/mac/xcode.rb10
-rwxr-xr-xLibrary/brew.rb2
4 files changed, 7 insertions, 11 deletions
diff --git a/Library/Homebrew/cmd/doctor.rb b/Library/Homebrew/cmd/doctor.rb
index 3471bf1ee..720cb4fe6 100644
--- a/Library/Homebrew/cmd/doctor.rb
+++ b/Library/Homebrew/cmd/doctor.rb
@@ -437,7 +437,7 @@ def check_xcode_prefix_exists
end
def check_xcode_select_path
- if not MacOS::CLT.installed? and not File.file? "#{MacOS::Xcode.folder}/usr/bin/xcodebuild"
+ if not MacOS::CLT.installed? and not File.file? "#{MacOS.active_developer_dir}/usr/bin/xcodebuild"
path = MacOS.app_with_bundle_id(MacOS::Xcode::V4_BUNDLE_ID, MacOS::Xcode::V3_BUNDLE_ID)
path = '/Developer' if path.nil? or not path.directory?
<<-EOS.undent
diff --git a/Library/Homebrew/os/mac.rb b/Library/Homebrew/os/mac.rb
index 6ed35440d..c2dd1a1f6 100644
--- a/Library/Homebrew/os/mac.rb
+++ b/Library/Homebrew/os/mac.rb
@@ -36,6 +36,10 @@ module OS
end
end
+ def active_developer_dir
+ @active_developer_dir ||= `xcode-select -print-path 2>/dev/null`.strip
+ end
+
def dev_tools_prefix
dev_tools_path.parent.parent
end
diff --git a/Library/Homebrew/os/mac/xcode.rb b/Library/Homebrew/os/mac/xcode.rb
index 4c79e3965..284214b26 100644
--- a/Library/Homebrew/os/mac/xcode.rb
+++ b/Library/Homebrew/os/mac/xcode.rb
@@ -7,14 +7,6 @@ module OS
V3_BUNDLE_ID = "com.apple.Xcode"
V4_BUNDLE_PATH = Pathname.new("/Applications/Xcode.app")
- # Locate the "current Xcode folder" via xcode-select. See:
- # man xcode-select
- # TODO Should this be moved to OS::Mac? As of 10.9 this is referred to
- # as the "developer directory", and be either a CLT or Xcode instance.
- def folder
- @folder ||= `xcode-select -print-path 2>/dev/null`.strip
- end
-
def latest_version
case MacOS.version
when "10.4" then "2.5"
@@ -43,7 +35,7 @@ module OS
def prefix
@prefix ||= begin
- path = Pathname.new(folder)
+ path = Pathname.new(MacOS.active_developer_dir)
if path != CLT::MAVERICKS_PKG_PATH and path.absolute? \
and File.executable? "#{path}/usr/bin/make"
path
diff --git a/Library/brew.rb b/Library/brew.rb
index 592719340..ae9b37d6b 100755
--- a/Library/brew.rb
+++ b/Library/brew.rb
@@ -34,7 +34,7 @@ end
# Check for bad xcode-select before anything else, because `doctor` and
# many other things will hang
# Note that this bug was fixed in 10.9
-if OS.mac? && MacOS.version < :mavericks && MacOS::Xcode.folder == "/"
+if OS.mac? && MacOS.version < :mavericks && MacOS.active_developer_dir == "/"
odie <<-EOS.undent
Your xcode-select path is currently set to '/'.
This causes the `xcrun` tool to hang, and can render Homebrew unusable.