aboutsummaryrefslogtreecommitdiffstats
path: root/Library/Homebrew/formula.rb
diff options
context:
space:
mode:
authorWilliam Woodruff2015-07-26 16:49:16 -0400
committerMisty De Meo2015-08-21 11:02:33 -0700
commit1face808f5f1dc43c887cab421b5c01f7e20fdf7 (patch)
tree0d1308a216ba4b316470c84d3e02e7b09e752803 /Library/Homebrew/formula.rb
parentf58506ea6f7000e7e6d3f6538dc5ff2c43ea7926 (diff)
downloadbrew-1face808f5f1dc43c887cab421b5c01f7e20fdf7.tar.bz2
Add guards to calls that would trigger Xcode install requests
add guard in Formula#file_modified? to prevent git popup add guard in Superenv.bin before calling MacOS::Xcode.version add guard against missing Xcode/CLT in Xcode.uncached_version return nil instread of 0 in uncached_version when Xcode/CLT are not present, to distinguish from linuxbrew behavior checks against pour_bottle? and needs_relocation?, add guard around keg.relocate_install_names to check pour_bottle?/needs_relocation? as well needs_relocation? becomes skip_relocation?, use cellar attr to indicate relocation instead of does_not_need_relocation MacOS.can_build? becomes MacOS.has_apple_developer_tools?
Diffstat (limited to 'Library/Homebrew/formula.rb')
-rw-r--r--Library/Homebrew/formula.rb6
1 files changed, 5 insertions, 1 deletions
diff --git a/Library/Homebrew/formula.rb b/Library/Homebrew/formula.rb
index 87746eada..915db64bb 100644
--- a/Library/Homebrew/formula.rb
+++ b/Library/Homebrew/formula.rb
@@ -720,7 +720,11 @@ class Formula
end
def file_modified?
- return false unless which("git")
+ git_dir = MacOS.locate("git").dirname.to_s
+
+ # /usr/bin/git is a popup stub when Xcode/CLT aren't installed, so bail out
+ return false if git_dir == "/usr/bin" && !MacOS.has_apple_developer_tools?
+
path.parent.cd do
diff = Utils.popen_read("git", "diff", "origin/master", "--", "#{path}")
!diff.empty? && $?.exitstatus == 0