blob: bcd235552d09fd4db3a48f89666dfb68814185e9 [file] [log] [blame]
# Copyright (c) 2013 The Chromium Authors. All rights reserved.
# Use of this source code is governed by a BSD-style license that can be
# found in the LICENSE file.
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)