scripts: gcc-wrapper: Route the GCC errors to stderr
The GCC wrapper writes any error message from GCC to stdout along with the messages from the wrapper itself. This is okay for most case, but when GCC is used with -print-xxx flags, the stdout output is supposed to be taken as input to some other build command, so putting error messages in there is pretty bad. Fix this by writing error messages to stderr. Change-Id: I4656033f11ba5212fdcc884cc588f8b9d2c23419 Signed-off-by: Shadab Naseem <snaseem@codeaurora.org>
This commit is contained in:
parent
14961ab5bb
commit
8bc8a30bdb
1 changed files with 5 additions and 5 deletions
|
@ -55,7 +55,7 @@ def interpret_warning(line):
|
|||
line = line.rstrip('\n')
|
||||
m = warning_re.match(line)
|
||||
if m and m.group(2) not in allowed_warnings:
|
||||
print "error, forbidden warning:", m.group(2)
|
||||
print >> sys.stderr, "error, forbidden warning:", m.group(2)
|
||||
|
||||
# If there is a warning, remove any object if it exists.
|
||||
if ofile:
|
||||
|
@ -80,17 +80,17 @@ def run_gcc():
|
|||
try:
|
||||
proc = subprocess.Popen(args, stderr=subprocess.PIPE)
|
||||
for line in proc.stderr:
|
||||
print line,
|
||||
print >> sys.stderr, line,
|
||||
interpret_warning(line)
|
||||
|
||||
result = proc.wait()
|
||||
except OSError as e:
|
||||
result = e.errno
|
||||
if result == errno.ENOENT:
|
||||
print args[0] + ':',e.strerror
|
||||
print 'Is your PATH set correctly?'
|
||||
print >> sys.stderr, args[0] + ':',e.strerror
|
||||
print >> sys.stderr, 'Is your PATH set correctly?'
|
||||
else:
|
||||
print ' '.join(args), str(e)
|
||||
print >> sys.stderr, ' '.join(args), str(e)
|
||||
|
||||
return result
|
||||
|
||||
|
|
Loading…
Add table
Reference in a new issue