Skip to content
Snippets Groups Projects
Commit 06dbec5a authored by Jack Nagel's avatar Jack Nagel
Browse files

Disable make_fuss when running configure invoked by make

The cc wrapper's make_fuss is only enabled when HOMEBREW_CCCFG contains
'O', which is set by the make wrapper. This means it is disable when
running configure scripts. However, this does not include configure
scripts invoked by make, which inherit the value of HOMEBREW_CCCFG from
the make process. make_fuss will be enabled for these scripts, cause
breakage.

Configure scripts generated by autoconf 2.56 (November 2002) or later
export DUALCASE into the environment of subprocesses. This variable is
only used by the MKS shell, so we can use it as a heuristic to determine
if we are running as a subprocess of a configure script.
parent f643b84d
No related branches found
No related tags found
No related merge requests found
......@@ -102,7 +102,7 @@ class Cmd
when :ld
ldflags + args
end.compact
make_fuss(allflags) if verbose? and cccfg? 'O'
make_fuss(allflags)
allflags
end
def refurbished_args
......@@ -228,6 +228,8 @@ class Cmd
sys.to_flags('-isystem') + opt.to_flags('-I')
end
def make_fuss args
return unless make_fuss?
dels = @args - args
adds = args - @args
dups = dels & args
......@@ -236,9 +238,16 @@ class Cmd
STDERR.puts "brew: superenv deduped: #{dups}" unless dups.empty?
STDERR.puts "brew: superenv added: #{adds*' '}" unless adds.empty?
end
def make_fuss?
verbose? and cccfg? 'O' and not configure?
end
def verbose?
!ENV['VERBOSE'].nil? || !ENV['HOMEBREW_VERBOSE'].nil?
end
def configure?
# configure scripts generated with autoconf 2.56 or later export DUALCASE
ENV.key? 'DUALCASE'
end
end
if __FILE__ == $PROGRAM_NAME
......
......@@ -52,6 +52,10 @@ module Superenv
delete('CDPATH') # avoid make issues that depend on changing directories
delete('GREP_OPTIONS') # can break CMake
delete('CLICOLOR_FORCE') # autotools doesn't like this
# Configure scripts generated by autoconf 2.56 or later export DUALCASE,
# which we use as a heuristic for running under configure
delete('DUALCASE')
end
def setup_build_environment(formula=nil)
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment