diff --git a/Library/ENV/4.3/cc b/Library/ENV/4.3/cc index 4a626c77a0..fd22bb373b 100755 --- a/Library/ENV/4.3/cc +++ b/Library/ENV/4.3/cc @@ -6,7 +6,6 @@ #TODO create mechanism to specify build effects like %w{-O0 -O4 vanilla-arg-parsing sdk=10.6} etc. require "#{File.dirname __FILE__}/../libsuperenv" -require 'io/wait' require 'set' def cccfg? flags @@ -56,7 +55,8 @@ class Cmd def tool @tool ||= case @arg0 when 'ld' then 'ld' - when 'cc', 'cpp', 'c99', 'c89' + when 'cpp' then 'cpp' + when 'cc', 'c99', 'c89' # Ideally we would run `cx9`, however these tools are POSIX compliant # and don't support many flags. We need -isystem for instance, but also # reliability is generally much higher if we just get clang/gcc to do @@ -90,8 +90,7 @@ class Cmd end if nclt? case mode when :cpp - args = %w{-E} + args + cppflags - STDIN.ready? ? args + %w{-} : args + %w{-E} + args + cppflags when :ld ldflags + args when :cc