aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorAdam Vandenberg2010-07-13 14:20:52 -0700
committerAdam Vandenberg2010-07-13 14:20:52 -0700
commitee794cd21a010ac70abab2746844b0db0e4a1852 (patch)
tree43642b0ad49b0663e2d4946ba6363b8aa5cb8fd1
parent2bac03ef92d747e8a8d254976d111f3409766e3d (diff)
downloadbrew-ee794cd21a010ac70abab2746844b0db0e4a1852.tar.bz2
Add command "brew --env"
"brew --env" will set up a build environment and then dump certain ENV variables (CC, CXX, LD, CFLAGS, CXXFLAGS, MAKEFLAGS). If any of CC, CXX, LD are symlinks, now also output the target compiler. (Typically these will be symlinks from eg /usr/bin/cc to /usr/bin/gcc-4.2). This is a diagnostic command which may be merged into --config, turned into an external command, or removed if it doesn't turn out to be useful.
-rw-r--r--Library/Homebrew/utils.rb14
-rwxr-xr-xbin/brew6
2 files changed, 19 insertions, 1 deletions
diff --git a/Library/Homebrew/utils.rb b/Library/Homebrew/utils.rb
index d6170c323..1fc8a9544 100644
--- a/Library/Homebrew/utils.rb
+++ b/Library/Homebrew/utils.rb
@@ -254,7 +254,19 @@ end
def dump_build_env env
puts "\"--use-llvm\" was specified" if ARGV.include? '--use-llvm'
- %w[ CC CXX LD CFLAGS CXXFLAGS CPPFLAGS LDFLAGS MACOSX_DEPLOYMENT_TARGET MAKEFLAGS PKG_CONFIG_PATH
+ %w[ CC CXX LD ].each do |k|
+ value = env[k]
+ if value
+ results = value
+ if File.exists? value and File.symlink? value
+ target = Pathname.new(value)
+ results += " => #{target.dirname+target.readlink}"
+ end
+ puts "#{k}: #{results}"
+ end
+ 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|
value = env[k]
puts "#{k}: #{value}" if value
diff --git a/bin/brew b/bin/brew
index bf8b06c99..ba2b622f3 100755
--- a/bin/brew
+++ b/bin/brew
@@ -94,6 +94,12 @@ begin
end
when '--config'
dump_config
+ when '--env'
+ require 'hardware'
+ require 'extend/ENV'
+ ENV.extend(HomebrewEnvExtension)
+ ENV.setup_build_environment
+ dump_build_env ENV
when 'home', 'homepage'
if ARGV.named.empty?