From dfafc1102a0746f3fe6efdee3520a8d83e88b9ef Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Bern=C3=A1t=20G=C3=A1bor?= Date: Sun, 26 Apr 2020 16:16:59 +0100 Subject: Ensure makefile is present on CPython2 POSIX (#1787) --- src/virtualenv/create/debug.py | 23 ++++++++++++++++++----- 1 file changed, 18 insertions(+), 5 deletions(-) (limited to 'src/virtualenv/create/debug.py') diff --git a/src/virtualenv/create/debug.py b/src/virtualenv/create/debug.py index d015be6..23c380c 100644 --- a/src/virtualenv/create/debug.py +++ b/src/virtualenv/create/debug.py @@ -51,6 +51,14 @@ def run(): result["sys"]["fs_encoding"] = sys.getfilesystemencoding() result["sys"]["io_encoding"] = getattr(sys.stdout, "encoding", None) result["version"] = sys.version + + try: + import sysconfig + + result["makefile_filename"] = encode_path(sysconfig.get_makefile_filename()) + except ImportError: + pass + import os # landmark result["os"] = repr(os) @@ -84,11 +92,16 @@ def run(): import json result["json"] = repr(json) - print(json.dumps(result, indent=2)) - except (ImportError, ValueError, TypeError) as exception: # pragma: no cover - result["json"] = repr(exception) # pragma: no cover - print(repr(result)) # pragma: no cover - raise SystemExit(1) # pragma: no cover + except ImportError as exception: + result["json"] = repr(exception) + else: + try: + content = json.dumps(result, indent=2) + sys.stdout.write(content) + except (ValueError, TypeError) as exception: # pragma: no cover + sys.stderr.write(repr(exception)) + sys.stdout.write(repr(result)) # pragma: no cover + raise SystemExit(1) # pragma: no cover if __name__ == "__main__": -- cgit v1.2.1