aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--Library/Homebrew/cmd/doctor.rb10
-rw-r--r--Library/Homebrew/cmd/install.rb7
2 files changed, 15 insertions, 2 deletions
diff --git a/Library/Homebrew/cmd/doctor.rb b/Library/Homebrew/cmd/doctor.rb
index 0786d7c99..39fed18d9 100644
--- a/Library/Homebrew/cmd/doctor.rb
+++ b/Library/Homebrew/cmd/doctor.rb
@@ -925,6 +925,16 @@ def check_os_version
end
end
+ def check_xcode_license_approved
+ # If the user installs Xcode-only, they have to approve the
+ # license or no "xc*" tool will work.
+ <<-EOS.undent if `/usr/bin/xcrun clang 2>&1` =~ /license/ and not $?.success?
+ You have not agreed to the Xcode license.
+ Builds will fail! Agree to the license by opening Xcode.app or running:
+ xcodebuild -license
+ EOS
+ end
+
end # end class Checks
module Homebrew extend self
diff --git a/Library/Homebrew/cmd/install.rb b/Library/Homebrew/cmd/install.rb
index 85b502d1d..b01866958 100644
--- a/Library/Homebrew/cmd/install.rb
+++ b/Library/Homebrew/cmd/install.rb
@@ -37,8 +37,11 @@ module Homebrew extend self
def check_xcode
require 'cmd/doctor'
- xcode = Checks.new.check_for_latest_xcode
- opoo xcode unless xcode.nil?
+ checks = Checks.new
+ %w{check_for_latest_xcode check_xcode_license_approved}.each do |check|
+ out = checks.send(check)
+ opoo out unless out.nil?
+ end
end
def check_macports