diff --git a/Library/ENV/4.3/cc b/Library/ENV/4.3/cc
index 30f32b04aa5a7631b601d7ebedee6bfe42ddc7a4..7f18b466adba67d86672cf818b58928befc33096 100755
--- a/Library/ENV/4.3/cc
+++ b/Library/ENV/4.3/cc
@@ -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
diff --git a/Library/Homebrew/extend/ENV/super.rb b/Library/Homebrew/extend/ENV/super.rb
index 6c05bddb4f7096b68daa3c18e77fc915824781c5..ce8de00d0824975ba7b39bd95f90cddf1ebbf4f8 100644
--- a/Library/Homebrew/extend/ENV/super.rb
+++ b/Library/Homebrew/extend/ENV/super.rb
@@ -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)