diff options
author | cinap_lenrek <cinap_lenrek@localhost> | 2011-05-03 11:25:13 +0000 |
---|---|---|
committer | cinap_lenrek <cinap_lenrek@localhost> | 2011-05-03 11:25:13 +0000 |
commit | 458120dd40db6b4df55a4e96b650e16798ef06a0 (patch) | |
tree | 8f82685be24fef97e715c6f5ca4c68d34d5074ee /sys/src/cmd/python/Tools/compiler/compile.py | |
parent | 3a742c699f6806c1145aea5149bf15de15a0afd7 (diff) |
add hg and python
Diffstat (limited to 'sys/src/cmd/python/Tools/compiler/compile.py')
-rw-r--r-- | sys/src/cmd/python/Tools/compiler/compile.py | 51 |
1 files changed, 51 insertions, 0 deletions
diff --git a/sys/src/cmd/python/Tools/compiler/compile.py b/sys/src/cmd/python/Tools/compiler/compile.py new file mode 100644 index 000000000..9d50425d3 --- /dev/null +++ b/sys/src/cmd/python/Tools/compiler/compile.py @@ -0,0 +1,51 @@ +import sys +import getopt + +from compiler import compileFile, visitor + +import profile + +def main(): + VERBOSE = 0 + DISPLAY = 0 + PROFILE = 0 + CONTINUE = 0 + opts, args = getopt.getopt(sys.argv[1:], 'vqdcp') + for k, v in opts: + if k == '-v': + VERBOSE = 1 + visitor.ASTVisitor.VERBOSE = visitor.ASTVisitor.VERBOSE + 1 + if k == '-q': + if sys.platform[:3]=="win": + f = open('nul', 'wb') # /dev/null fails on Windows... + else: + f = open('/dev/null', 'wb') + sys.stdout = f + if k == '-d': + DISPLAY = 1 + if k == '-c': + CONTINUE = 1 + if k == '-p': + PROFILE = 1 + if not args: + print "no files to compile" + else: + for filename in args: + if VERBOSE: + print filename + try: + if PROFILE: + profile.run('compileFile(%r, %r)' % (filename, DISPLAY), + filename + ".prof") + else: + compileFile(filename, DISPLAY) + + except SyntaxError, err: + print err + if err.lineno is not None: + print err.lineno + if not CONTINUE: + sys.exit(-1) + +if __name__ == "__main__": + main() |