aboutsummaryrefslogtreecommitdiffstats
path: root/Library
diff options
context:
space:
mode:
authorCharlie Sharpsteen2012-11-13 14:38:57 -0800
committerCharlie Sharpsteen2012-11-13 20:54:29 -0800
commit0d5a42ad89f8da65736a4ba9561cb4d6e91e1feb (patch)
treeb9bcabf9e0ffcee2f78481750d75a4c416136f97 /Library
parentaaf2a397f0252dc62ae3bac6bb28594100c2e181 (diff)
downloadbrew-0d5a42ad89f8da65736a4ba9561cb4d6e91e1feb.tar.bz2
superenv.rb: Configure Objective-C compilers
The [`OBJC`][1] and [`OBJCXX`][2] environment variables should be set along with `CC` and `CXX`. Some formulae require these to be set in order to properly configure against Homebrew's compilers. Fixes Homebrew/homebrew#16029. [1]:http://www.gnu.org/software/autoconf/manual/autoconf-2.69/html_node/Objective-C-Compiler.html [2]:http://www.gnu.org/software/autoconf/manual/autoconf-2.69/html_node/Objective-C_002b_002b-Compiler.html
Diffstat (limited to 'Library')
-rw-r--r--Library/Homebrew/superenv.rb16
1 files changed, 9 insertions, 7 deletions
diff --git a/Library/Homebrew/superenv.rb b/Library/Homebrew/superenv.rb
index 9e249e0c8..205d840f7 100644
--- a/Library/Homebrew/superenv.rb
+++ b/Library/Homebrew/superenv.rb
@@ -28,7 +28,7 @@ class << ENV
alias_method :x11?, :x11
def reset
- %w{CC CXX CPP OBJC MAKE LD
+ %w{CC CXX OBJC OBJCXX CPP MAKE LD
CFLAGS CXXFLAGS OBJCFLAGS OBJCXXFLAGS LDFLAGS CPPFLAGS
MACOS_DEPLOYMENT_TARGET SDKROOT
CMAKE_PREFIX_PATH CMAKE_INCLUDE_PATH CMAKE_FRAMEWORK_PATH}.
@@ -43,6 +43,8 @@ class << ENV
check
ENV['CC'] = 'cc'
ENV['CXX'] = 'c++'
+ ENV['OBJC'] = 'cc'
+ ENV['OBJCXX'] = 'c++'
ENV['DEVELOPER_DIR'] = determine_developer_dir # effects later settings
ENV['MAKEFLAGS'] ||= "-j#{determine_make_jobs}"
ENV['PATH'] = determine_path
@@ -221,16 +223,16 @@ class << ENV
end
alias_method :j1, :deparallelize
def gcc
- ENV['CC'] = ENV['HOMEBREW_CC'] = "gcc"
- ENV['CXX'] = "g++"
+ ENV['CC'] = ENV['OBJC'] = ENV['HOMEBREW_CC'] = "gcc"
+ ENV['CXX'] = ENV['OBJCXX'] = "g++"
end
def llvm
- ENV['CC'] = ENV['HOMEBREW_CC'] = "llvm-gcc"
- ENV['CXX'] = "g++"
+ ENV['CC'] = ENV['OBJC'] = ENV['HOMEBREW_CC'] = "llvm-gcc"
+ ENV['CXX'] = ENV['OBJCXX'] = "g++"
end
def clang
- ENV['CC'] = ENV['HOMEBREW_CC'] = "clang"
- ENV['CXX'] = "clang++"
+ ENV['CC'] = ENV['OBJC'] = ENV['HOMEBREW_CC'] = "clang"
+ ENV['CXX'] = ENV['OBJCXX'] = "clang++"
end
def make_jobs
ENV['MAKEFLAGS'] =~ /-\w*j(\d)+/