From: Fred Drake Date: Fri, 10 Aug 2001 20:17:09 +0000 (+0000) Subject: Do more to be compatible with Windows/CygWin. Make error messages more X-Git-Tag: v2.2a3~664 X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=1cb560a65344f4e4ec58a09a9e376e9e7edfb4bd;p=python Do more to be compatible with Windows/CygWin. Make error messages more informative when a child process dies with an error. This is a variation of parts of SF patch #429611. --- diff --git a/Doc/tools/mkhowto b/Doc/tools/mkhowto index 0d5d687e29..0e211d9296 100755 --- a/Doc/tools/mkhowto +++ b/Doc/tools/mkhowto @@ -180,6 +180,8 @@ class Options: elif opt == "--global-module-index": self.global_module_index = arg elif opt == "--dir": + if os.sep == "\\": + arg = re.sub("/", "\\", arg) self.builddir = arg elif opt == "--paper": self.paper = arg @@ -475,12 +477,22 @@ class Job: def run(self, command): self.message(command) - rc = os.system("(%s) >%s 2>&1" - % (command, self.log_filename)) + if sys.platform.startswith("win"): + rc = os.system(command) + else: + rc = os.system("(%s) >%s 2>&1" + % (command, self.log_filename)) if rc: self.warning( "Session transcript and error messages are in %s." % self.log_filename) + if hasattr(os, "WIFEXITED"): + if os.WIFEXITED(rc): + self.warning("Exited with status %s." % os.WEXITSTATUS(rc)) + else: + self.warning("Killed by signal %s." % os.WSTOPSIG(rc)) + else: + self.warning("Return code: %s" % rc) sys.stderr.write("The relevant lines from the transcript are:\n") sys.stderr.write("-" * 72 + "\n") sys.stderr.writelines(get_run_transcript(self.log_filename))