superenv: set cc/cxx based on actual compiler.
Closes Homebrew/homebrew#23449.
This commit is contained in:
parent
f426fdd4fb
commit
8484e72f75
@ -61,9 +61,8 @@ module Superenv
|
|||||||
def setup_build_environment(formula=nil)
|
def setup_build_environment(formula=nil)
|
||||||
reset
|
reset
|
||||||
|
|
||||||
self.cc = 'cc'
|
self.cc = self['HOMEBREW_CC'] = determine_cc
|
||||||
self.cxx = 'c++'
|
self.cxx = self['HOMEBREW_CXX'] = determine_cxx
|
||||||
self['HOMEBREW_CC'] = determine_cc
|
|
||||||
validate_cc!(formula) unless formula.nil?
|
validate_cc!(formula) unless formula.nil?
|
||||||
self['DEVELOPER_DIR'] = determine_developer_dir
|
self['DEVELOPER_DIR'] = determine_developer_dir
|
||||||
self['MAKEFLAGS'] ||= "-j#{determine_make_jobs}"
|
self['MAKEFLAGS'] ||= "-j#{determine_make_jobs}"
|
||||||
@ -152,6 +151,10 @@ module Superenv
|
|||||||
COMPILER_SYMBOL_MAP.invert.fetch(cc, cc)
|
COMPILER_SYMBOL_MAP.invert.fetch(cc, cc)
|
||||||
end
|
end
|
||||||
|
|
||||||
|
def determine_cxx
|
||||||
|
determine_cc.to_s.gsub('gcc', 'g++').gsub('clang', 'clang++')
|
||||||
|
end
|
||||||
|
|
||||||
def determine_path
|
def determine_path
|
||||||
paths = [Superenv.bin]
|
paths = [Superenv.bin]
|
||||||
if MacOS::Xcode.without_clt?
|
if MacOS::Xcode.without_clt?
|
||||||
@ -292,25 +295,18 @@ module Superenv
|
|||||||
delete('MAKEFLAGS')
|
delete('MAKEFLAGS')
|
||||||
end
|
end
|
||||||
alias_method :j1, :deparallelize
|
alias_method :j1, :deparallelize
|
||||||
def gcc
|
COMPILER_SYMBOL_MAP.values.each do |compiler|
|
||||||
self['HOMEBREW_CC'] = "gcc-4.2"
|
define_method compiler do
|
||||||
@compiler = :gcc
|
@compiler = compiler
|
||||||
end
|
self.cc = self['HOMEBREW_CC'] = determine_cc
|
||||||
def gcc_4_0
|
self.cxx = self['HOMEBREW_CXX'] = determine_cxx
|
||||||
self['HOMEBREW_CC'] = "gcc-4.0"
|
end
|
||||||
@compiler = :gcc_4_0
|
|
||||||
end
|
|
||||||
def llvm
|
|
||||||
self['HOMEBREW_CC'] = "llvm-gcc"
|
|
||||||
@compiler = :llvm
|
|
||||||
end
|
|
||||||
def clang
|
|
||||||
self['HOMEBREW_CC'] = "clang"
|
|
||||||
@compiler = :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
|
||||||
@compiler = self['HOMEBREW_CC'] = "gcc-4.#{n}"
|
@compiler = :"gcc-4.#{n}"
|
||||||
|
self.cc = self['HOMEBREW_CC'] = determine_cc
|
||||||
|
self.cxx = self['HOMEBREW_CXX'] = determine_cxx
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
def make_jobs
|
def make_jobs
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user