2010-09-11 20:22:54 +01:00
|
|
|
require 'extend/ENV'
|
|
|
|
require 'hardware'
|
|
|
|
|
|
|
|
module Homebrew extend self
|
|
|
|
def __env
|
|
|
|
ENV.extend(HomebrewEnvExtension)
|
|
|
|
ENV.setup_build_environment
|
2011-12-31 21:22:22 -06:00
|
|
|
ENV.universal_binary if ARGV.build_universal?
|
2012-03-02 00:59:22 +00:00
|
|
|
if $stdout.tty?
|
|
|
|
dump_build_env ENV
|
|
|
|
else
|
|
|
|
build_env_keys(ENV).each do |key|
|
|
|
|
puts "export #{key}=\"#{ENV[key]}\""
|
|
|
|
end
|
|
|
|
end
|
2010-09-11 20:22:54 +01:00
|
|
|
end
|
|
|
|
|
2012-03-02 00:59:22 +00:00
|
|
|
def build_env_keys env
|
2012-07-01 13:51:04 -05:00
|
|
|
%w[ CC CXX LD CFLAGS CXXFLAGS CPPFLAGS CMAKE_PREFIX_PATH
|
|
|
|
CMAKE_INBLUDE_PATH LDFLAGS MACOSX_DEPLOYMENT_TARGET MAKEFLAGS
|
|
|
|
PKG_CONFIG_PATH HOMEBREW_BUILD_FROM_SOURCE HOMEBREW_DEBUG
|
2012-03-02 00:59:22 +00:00
|
|
|
HOMEBREW_MAKE_JOBS HOMEBREW_VERBOSE HOMEBREW_USE_CLANG HOMEBREW_USE_GCC
|
|
|
|
HOMEBREW_USE_LLVM HOMEBREW_SVN ].select{ |key| env[key] }
|
|
|
|
end
|
2010-09-11 20:22:54 +01:00
|
|
|
|
2012-03-02 00:59:22 +00:00
|
|
|
def dump_build_env env
|
|
|
|
build_env_keys(env).each do |key|
|
|
|
|
value = env[key]
|
|
|
|
print "#{key}: #{value}"
|
|
|
|
case key when 'CC', 'CXX', 'LD'
|
2012-02-21 10:32:48 +00:00
|
|
|
if value =~ %r{/usr/bin/xcrun (.*)}
|
2012-02-19 20:31:25 -06:00
|
|
|
path = `/usr/bin/xcrun -find #{$1}`
|
2012-03-02 00:59:22 +00:00
|
|
|
print " => #{path}"
|
|
|
|
elsif File.symlink? value
|
|
|
|
print " => #{Pathname.new(value).realpath}"
|
2010-09-11 20:22:54 +01:00
|
|
|
end
|
2012-03-01 14:07:40 +00:00
|
|
|
end
|
2012-03-02 00:59:22 +00:00
|
|
|
puts
|
2010-09-11 20:22:54 +01:00
|
|
|
end
|
|
|
|
end
|
|
|
|
end
|