Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(59)

Side by Side Diff: tools/clean_output_directory.py

Issue 11419005: Cleanup the clobber tool (tools/clean_output_directory.py) (Closed) Base URL: http://dart.googlecode.com/svn/branches/bleeding_edge/dart/
Patch Set: Created 8 years, 1 month ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch | Annotate | Revision Log
« no previous file with comments | « no previous file | no next file » | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 #!/usr/bin/env python 1 #!/usr/bin/env python
2 # 2 #
3 # Copyright (c) 2012, the Dart project authors. Please see the AUTHORS file 3 # Copyright (c) 2012, the Dart project authors. Please see the AUTHORS file
4 # for details. All rights reserved. Use of this source code is governed by a 4 # for details. All rights reserved. Use of this source code is governed by a
5 # BSD-style license that can be found in the LICENSE file. 5 # BSD-style license that can be found in the LICENSE file.
6 # 6 #
7 7
8 import optparse
9 import shutil 8 import shutil
10 import sys 9 import sys
11 import utils 10 import utils
12 11
13 HOST_OS = utils.GuessOS()
14
15 def BuildOptions():
16 result = optparse.OptionParser()
17 result.add_option("-m", "--mode",
18 help='Build variants (comma-separated).',
19 metavar='[all,debug,release]',
20 default='all')
21 result.add_option("--arch",
22 help='Target architectures (comma-separated).',
23 metavar='[all,ia32,x64,simarm,arm]',
24 default='all')
25 result.add_option("--os",
26 help='Target OSs (comma-separated).',
27 metavar='[all,host,android]',
28 default='all')
29 return result
30
31
32 def ProcessOsOption(os):
33 if os == 'host':
34 return HOST_OS
35 return os
36
37
38 def ProcessOptions(options):
39 if options.arch == 'all':
40 options.arch = 'ia32,x64'
41 if options.mode == 'all':
42 options.mode = 'release,debug'
43 if options.os == 'all':
44 options.os = 'host,android'
45 options.mode = options.mode.split(',')
46 options.arch = options.arch.split(',')
47 options.os = options.os.split(',')
48 for mode in options.mode:
49 if not mode in ['debug', 'release']:
50 print "Unknown mode %s" % mode
51 return False
52 for arch in options.arch:
53 if not arch in ['ia32', 'x64', 'simarm', 'arm']:
54 print "Unknown arch %s" % arch
55 return False
56 options.os = [ProcessOsOption(os) for os in options.os]
57 for os in options.os:
58 if not os in ['android', 'freebsd', 'linux', 'macos', 'win32']:
59 print "Unknown os %s" % os
60 return False
61 return True
62
63 def Main(): 12 def Main():
64 parser = BuildOptions() 13 build_root = utils.GetBuildRoot(utils.GuessOS())
65 (options, args) = parser.parse_args()
66 if not ProcessOptions(options):
67 parser.print_help()
68 return 1
69
70 build_root = utils.GetBuildDir(HOST_OS, None)
71 shutil.rmtree(build_root, ignore_errors=True) 14 shutil.rmtree(build_root, ignore_errors=True)
72 return 0 15 return 0
73 16
74 if __name__ == '__main__': 17 if __name__ == '__main__':
75 sys.exit(Main()) 18 sys.exit(Main())
OLDNEW
« no previous file with comments | « no previous file | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698