Emit cppwinrt options file on failure (#451) cppwinrt emits the file contents (formatted slightly better) itself when it passes.
diff --git a/build/win/generate_winrt_headers.py b/build/win/generate_winrt_headers.py index ff39774..cd252ad 100644 --- a/build/win/generate_winrt_headers.py +++ b/build/win/generate_winrt_headers.py
@@ -64,6 +64,7 @@ outfile.write('-verbose\n') outfile.close() + def generate_headers(options_file): """Run cppwinrt.exe with the specified options file to generate WinRT headers in the output directory. Logs stderr to the console. @@ -76,6 +77,14 @@ process = subprocess.Popen(args, stderr=subprocess.PIPE) out, err = process.communicate() print(err) + + # On failure, emit the options file contents. On success, cppwinrt does so + # itself. + if process.returncode != 0: + print('cppwinrt header generation failed. Options file was:') + infile = open(options_file, 'r') + print(infile.read()) + infile.close() return process.returncode