| Index: third_party/mesa/redirectoutput.py
|
| diff --git a/third_party/mesa/redirectoutput.py b/third_party/mesa/redirectoutput.py
|
| new file mode 100644
|
| index 0000000000000000000000000000000000000000..5103403d4c2d037bbd993579fa26759fe083c589
|
| --- /dev/null
|
| +++ b/third_party/mesa/redirectoutput.py
|
| @@ -0,0 +1,25 @@
|
| +import os
|
| +import os.path
|
| +import subprocess
|
| +import sys
|
| +
|
| +if len(sys.argv) < 3:
|
| + print "Usage: %s OUTPUTFILE SCRIPTNAME ARGUMENTS" % sys.argv[0]
|
| + print "Re-execs the python interpreter against SCRIPTNAME with ARGS,"
|
| + print "redirecting output to OUTPUTFILE."
|
| + sys.exit(1)
|
| +
|
| +abs_outputfile = os.path.abspath(sys.argv[1])
|
| +abs_outputdir = os.path.dirname(abs_outputfile)
|
| +
|
| +if not os.path.isdir(abs_outputdir):
|
| + os.makedirs(abs_outputdir)
|
| +
|
| +ret = 0
|
| +
|
| +with open(abs_outputfile, "w") as f:
|
| + ret = subprocess.Popen([sys.executable] + sys.argv[2:], stdout=f).wait()
|
| +
|
| +if ret:
|
| + os.remove(abs_outputfile)
|
| + sys.exit(ret)
|
|
|