superenv: Improve compiler selection

This fixes superenv on Xcode 3.2.6, and also fixes C++ software with
gcc-4.2 on all Xcodes.
This commit is contained in:
Misty De Meo 2013-05-27 12:54:07 -05:00
parent 52d84ba7cf
commit d212b360ec
2 changed files with 15 additions and 7 deletions

View File

@ -62,12 +62,15 @@ class Cmd
# the work since Makefiles are dumb and include a lot of excess flags.
ENV['HOMEBREW_CC']
when 'c++'
if ENV['HOMEBREW_CC'] =~ /llvm-gcc/
'g++'
elsif ENV['HOMEBREW_CC'] =~ /gcc-4.2/
'g++-4.2'
else
case ENV['HOMEBREW_CC']
when /clang/
'clang++'
when /llvm-gcc/
'g++'
when /gcc(-4.2)?$/
'g++-4.2'
when /gcc-4.0/
'g++-4.0'
end
else
@arg0

View File

@ -93,7 +93,7 @@ class << ENV
"gcc"
elsif ENV['HOMEBREW_CC']
case ENV['HOMEBREW_CC']
when 'clang', 'gcc' then ENV['HOMEBREW_CC']
when 'clang', 'gcc', 'gcc-4.0' then ENV['HOMEBREW_CC']
when 'llvm', 'llvm-gcc' then 'llvm-gcc'
else
opoo "Invalid value for HOMEBREW_CC: #{ENV['HOMEBREW_CC']}"
@ -103,7 +103,12 @@ class << ENV
raise
end
rescue
"clang"
case MacOS.default_compiler
when :clang then 'clang'
when :llvm then 'llvm-gcc'
when :gcc then 'gcc'
when :gcc_4_0 then 'gcc-4.0'
end
end
def determine_path