diff options
| author | Stephen Allred | 2010-10-01 20:56:55 +0100 |
|---|---|---|
| committer | Adam Vandenberg | 2011-03-12 11:55:06 -0800 |
| commit | c19b32dfc409e39439f27c22f78a4cd1423e1a11 (patch) | |
| tree | ad048ce295d031009d9ee57475cea90e3328df99 /Library | |
| parent | feed6a9ca25aa400c566d60c233337dc4e49b559 (diff) | |
| download | homebrew-c19b32dfc409e39439f27c22f78a4cd1423e1a11.tar.bz2 | |
Added --use-gcc flag.
This allows you to use llvm as your default compiler and keep the cc symlink
pointed at llvm, while allowing you to build forumla that requires the gcc.
Signed-off-by: Adam Vandenberg <flangy@gmail.com>
Diffstat (limited to 'Library')
| -rw-r--r-- | Library/Contributions/manpages/brew.1.md | 4 | ||||
| -rw-r--r-- | Library/Homebrew/cmd/--env.rb | 3 | ||||
| -rw-r--r-- | Library/Homebrew/cmd/doctor.rb | 3 | ||||
| -rw-r--r-- | Library/Homebrew/extend/ENV.rb | 4 |
4 files changed, 13 insertions, 1 deletions
diff --git a/Library/Contributions/manpages/brew.1.md b/Library/Contributions/manpages/brew.1.md index 9281f68e6..d5440189f 100644 --- a/Library/Contributions/manpages/brew.1.md +++ b/Library/Contributions/manpages/brew.1.md @@ -275,6 +275,10 @@ Some sample commands ship with Homebrew and are enabled by default. This issue typically occurs when using FileVault or custom SSD configurations. + * HOMEBREW\_USE\_GCC: + If set, instructs Homebrew to use gcc, even if the system default + is currently set to LLVM. + * HOMEBREW\_USE\_LLVM: If set, instructs Homebrew to use the LLVM front-ends to the GCC compilers. diff --git a/Library/Homebrew/cmd/--env.rb b/Library/Homebrew/cmd/--env.rb index 07623171d..2f6e421a0 100644 --- a/Library/Homebrew/cmd/--env.rb +++ b/Library/Homebrew/cmd/--env.rb @@ -10,6 +10,7 @@ module Homebrew extend self def dump_build_env env puts %["--use-llvm" was specified] if ARGV.include? '--use-llvm' + puts "\"--use-gcc\" was specified" if ARGV.include? '--use-gcc' %w[ CC CXX LD ].each do |k| value = env[k] @@ -24,7 +25,7 @@ module Homebrew extend self end %w[ CFLAGS CXXFLAGS CPPFLAGS LDFLAGS MACOSX_DEPLOYMENT_TARGET MAKEFLAGS PKG_CONFIG_PATH - HOMEBREW_DEBUG HOMEBREW_VERBOSE HOMEBREW_USE_LLVM HOMEBREW_SVN ].each do |k| + HOMEBREW_DEBUG HOMEBREW_VERBOSE HOMEBREW_USE_GCC HOMEBREW_USE_LLVM HOMEBREW_SVN ].each do |k| value = env[k] puts "#{k}: #{value}" if value end diff --git a/Library/Homebrew/cmd/doctor.rb b/Library/Homebrew/cmd/doctor.rb index 7ea616d76..9cbc9b832 100644 --- a/Library/Homebrew/cmd/doctor.rb +++ b/Library/Homebrew/cmd/doctor.rb @@ -147,6 +147,9 @@ def check_cc_symlink To force Homebrew to use LLVM, you can set the "HOMEBREW_LLVM" environmental variable, or pass "--use-llvm" to "brew install". + To force Homebrew to use gcc, you can set the "HOMEBREW_GCC" environmental + variable, or pass "--use-gcc" to "brew install". + EOS end end diff --git a/Library/Homebrew/extend/ENV.rb b/Library/Homebrew/extend/ENV.rb index bb2bbd544..fc4dc96ae 100644 --- a/Library/Homebrew/extend/ENV.rb +++ b/Library/Homebrew/extend/ENV.rb @@ -24,6 +24,10 @@ module HomebrewEnvExtension self['CC'] = "#{xcode_path}/usr/bin/llvm-gcc" self['CXX'] = "#{xcode_path}/usr/bin/llvm-g++" cflags = ['-O4'] # link time optimisation baby! + elsif MACOS_VERSION >= 10.6 and (self['HOMEBREW_USE_GCC'] or ARGV.include? '--use-gcc') + self['CC'] = '/usr/bin/gcc' + self['CXX'] = '/usr/bin/g++' + cflags = ['-O3'] else # If these aren't set, many formulae fail to build self['CC'] = '/usr/bin/cc' |
