superenv/cc: keep exec monkeypatch out of Object

This commit is contained in:
Jack Nagel 2013-03-03 22:28:12 -06:00
parent 4adf0b0f69
commit df1d27b037

View File

@ -21,6 +21,8 @@ def syspath
%W{/usr /usr/local} %W{/usr /usr/local}
end end
end end
module ExecLogExtension
def exec *args def exec *args
path = File.expand_path('~/Library/Logs/Homebrew/cc.log') path = File.expand_path('~/Library/Logs/Homebrew/cc.log')
open(path, 'a') do |f| open(path, 'a') do |f|
@ -31,8 +33,8 @@ def exec *args
f.puts f.puts
end end
Kernel.exec *args Kernel.exec *args
end if ENV['HOMEBREW_LOG'] end
end
class Cmd class Cmd
def initialize path, args def initialize path, args
@ -206,6 +208,7 @@ if __FILE__ == $PROGRAM_NAME
end end
####################################################################### main ####################################################################### main
extend(ExecLogExtension) if ENV['HOMEBREW_LOG']
cmd = Cmd.new($0, ARGV) cmd = Cmd.new($0, ARGV)
exec "xcrun", cmd.tool, *cmd.args exec "xcrun", cmd.tool, *cmd.args
end end