Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit c11aa4e7 authored by Shadab Naseem's avatar Shadab Naseem Committed by Gerrit - the friendly Code Review server
Browse files

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: default avatarShadab Naseem <snaseem@codeaurora.org>
parent cf2e82f4
Loading
Loading
Loading
Loading
+5 −5
Original line number Diff line number Diff line
@@ -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