ref: 073b969eede202a14740fe4d68dbe0a7e0acba0e
parent: 31742b8eeda65009c05365d85f16786b7ef81a2a
author: Paul Brossier <piem@piem.org>
date: Mon Sep 24 18:22:03 EDT 2018
python/lib/gen_external.py: verbose compiler warnings
--- a/python/lib/gen_external.py
+++ b/python/lib/gen_external.py
@@ -106,9 +106,16 @@
cpp_output = proc.stdout.read()
err_output = proc.stderr.read()
if err_output:
- print("Warning: preprocessor produced errors or warnings:\n%s" % err_output)
+ print("Warning: preprocessor produced errors or warnings:\n%s" \
+ % err_output.decode('utf8'))
if not cpp_output:
- raise Exception("preprocessor output is empty:\n%s" % err_output)
+ raise_msg = "preprocessor output is empty! Running command " \
+ + "\"%s\" failed" % " ".join(cpp_cmd)
+ if err_output:
+ raise_msg += " with stderr: \"%s\"" % err_output.decode('utf8')
+ else:
+ raise_msg += " with no stdout or stderr"
+ raise Exception(raise_msg)
if not isinstance(cpp_output, list):
cpp_output = [l.strip() for l in cpp_output.decode('utf8').split('\n')]