superenv: don't set CC in ENV.clang/etc.

These methods were overriding CC and causing superenv to potentially
skip the compiler wrapper - especially if no wrapper existed for the
compiler being used, e.g. GNU GCCs.

Closes Homebrew/homebrew#22443.
Fixes Homebrew/homebrew#22249.
Fixes Homebrew/homebrew#22424.
Fixes Homebrew/homebrew#22506.
Fixes Homebrew/homebrew#22521.
Fixes Homebrew/versions#207.
This commit is contained in:
Misty De Meo 2013-09-10 23:09:20 -07:00
parent 1ae81f0bf7
commit 51a487de18

View File

@ -262,22 +262,17 @@ module Superenv
end end
alias_method :j1, :deparallelize alias_method :j1, :deparallelize
def gcc def gcc
self.cc = self['HOMEBREW_CC'] = "gcc-4.2" self['HOMEBREW_CC'] = "gcc-4.2"
self.cxx = "g++-4.2"
end end
def llvm def llvm
self.cc = self['HOMEBREW_CC'] = "llvm-gcc" self['HOMEBREW_CC'] = "llvm-gcc"
self.cxx = "llvm-g++-4.2"
end end
def clang def clang
self.cc = self['HOMEBREW_CC'] = "clang" self['HOMEBREW_CC'] = "clang"
self.cxx = "clang++"
end end
GNU_GCC_VERSIONS.each do |n| GNU_GCC_VERSIONS.each do |n|
define_method(:"gcc-4.#{n}") do define_method(:"gcc-4.#{n}") do
gcc = "gcc-4.#{n}" self['HOMEBREW_CC'] = "gcc-4.#{n}"
self.cc = self['HOMEBREW_CC'] = gcc
self.cxx = gcc.gsub('c', '+')
end end
end end
def make_jobs def make_jobs