OLD | NEW |
1 #!/usr/bin/env python | 1 #!/usr/bin/env python |
2 # Copyright (c) 2011, the Dart project authors. Please see the AUTHORS file | 2 # Copyright (c) 2011, the Dart project authors. Please see the AUTHORS file |
3 # for details. All rights reserved. Use of this source code is governed by a | 3 # for details. All rights reserved. Use of this source code is governed by a |
4 # BSD-style license that can be found in the LICENSE file. | 4 # BSD-style license that can be found in the LICENSE file. |
5 | 5 |
6 import imp | 6 import imp |
7 import os | 7 import os |
8 import sys | 8 import sys |
9 | 9 |
10 def main(args): | 10 def main(args): |
11 # Try to find frog.py from the current location. | 11 # Try to find frog.py from the current location. |
12 home = os.path.join(os.curdir, 'frog.py') | 12 home = os.path.join(os.curdir, 'frog.py') |
13 if not os.path.exists(home): | 13 if not os.path.exists(home): |
14 home = os.path.join(os.curdir, 'frog', 'frog.py') | 14 home = os.path.join(os.curdir, 'frog', 'frog.py') |
15 | 15 |
16 if not os.path.exists(home): | 16 if not os.path.exists(home): |
17 print "Could not find frog" | 17 print "Could not find frog" |
18 return 1 | 18 return 1 |
19 | 19 |
20 frog_args = ['frog.py', '--vm=' + VM] | 20 frog_args = ['frog.py', '--vm=' + VM, '--'] |
21 frog_args += args[2:len(args)] | 21 frog_args += args[2:len(args)] |
22 | 22 |
23 filename = None | 23 filename = None |
24 exit_code = 1 | 24 exit_code = 1 |
25 try: | 25 try: |
26 # Load frog.py and invoke it. | 26 # Load frog.py and invoke it. |
27 paths = [os.path.dirname(home)] | 27 paths = [os.path.dirname(home)] |
28 (filename, pathname, description) = imp.find_module('frog', paths) | 28 (filename, pathname, description) = imp.find_module('frog', paths) |
29 module = imp.load_module('frog', filename, pathname, description) | 29 module = imp.load_module('frog', filename, pathname, description) |
30 exit_code = module.main(args) | 30 exit_code = module.main(frog_args) |
31 finally: | 31 finally: |
32 if filename: | 32 if filename: |
33 filename.close() | 33 filename.close() |
34 | 34 |
35 return exit_code | 35 return exit_code |
OLD | NEW |