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

Side by Side Diff: native_client_sdk/src/tools/getos.py

Issue 720233003: [NaCl SDK] Convert python scripts from optparse to argparse. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Created 5 years, 11 months 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
« no previous file with comments | « native_client_sdk/src/tools/genhttpfs.py ('k') | native_client_sdk/src/tools/httpd.py » ('j') | 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 # Copyright (c) 2012 The Chromium Authors. All rights reserved. 2 # Copyright (c) 2012 The Chromium Authors. All rights reserved.
3 # Use of this source code is governed by a BSD-style license that can be 3 # Use of this source code is governed by a BSD-style license that can be
4 # found in the LICENSE file. 4 # found in the LICENSE file.
5 5
6 """Determine OS and various other system properties. 6 """Determine OS and various other system properties.
7 7
8 Determine the name of the platform used and other system properties such as 8 Determine the name of the platform used and other system properties such as
9 the location of Chrome. This is used, for example, to determine the correct 9 the location of Chrome. This is used, for example, to determine the correct
10 Toolchain to invoke. 10 Toolchain to invoke.
11 """ 11 """
12 12
13 import optparse 13 import argparse
14 import os 14 import os
15 import re 15 import re
16 import subprocess 16 import subprocess
17 import sys 17 import sys
18 18
19 import oshelpers 19 import oshelpers
20 20
21 21
22 SCRIPT_DIR = os.path.dirname(os.path.abspath(__file__)) 22 SCRIPT_DIR = os.path.dirname(os.path.abspath(__file__))
23 CHROME_DEFAULT_PATH = { 23 CHROME_DEFAULT_PATH = {
(...skipping 185 matching lines...) Expand 10 before | Expand all | Expand 10 after
209 Raises: 209 Raises:
210 Error: The SDK version is older than required_version. 210 Error: The SDK version is older than required_version.
211 """ 211 """
212 version = GetSDKVersion()[:2] 212 version = GetSDKVersion()[:2]
213 if version < required_version: 213 if version < required_version:
214 raise Error("SDK version too old (current: %d.%d, required: %d.%d)" 214 raise Error("SDK version too old (current: %d.%d, required: %d.%d)"
215 % (version[0], version[1], required_version[0], required_version[1])) 215 % (version[0], version[1], required_version[0], required_version[1]))
216 216
217 217
218 def main(args): 218 def main(args):
219 parser = optparse.OptionParser() 219 parser = argparse.ArgumentParser()
220 parser.add_option('--arch', action='store_true', 220 parser.add_argument('--arch', action='store_true',
221 help='Print architecture of current machine (x86_32, x86_64 or arm).') 221 help='Print architecture of current machine (x86_32, x86_64 or arm).')
222 parser.add_option('--chrome', action='store_true', 222 parser.add_argument('--chrome', action='store_true',
223 help='Print the path chrome (by first looking in $CHROME_PATH and ' 223 help='Print the path chrome (by first looking in $CHROME_PATH and '
224 'then $PATH).') 224 'then $PATH).')
225 parser.add_option('--nacl-arch', action='store_true', 225 parser.add_argument('--nacl-arch', action='store_true',
226 help='Print architecture used by NaCl on the current machine.') 226 help='Print architecture used by NaCl on the current machine.')
227 parser.add_option('--sdk-version', action='store_true', 227 parser.add_argument('--sdk-version', action='store_true',
228 help='Print major version of the NaCl SDK.') 228 help='Print major version of the NaCl SDK.')
229 parser.add_option('--sdk-revision', action='store_true', 229 parser.add_argument('--sdk-revision', action='store_true',
230 help='Print revision number of the NaCl SDK.') 230 help='Print revision number of the NaCl SDK.')
231 parser.add_option('--sdk-commit-position', action='store_true', 231 parser.add_argument('--sdk-commit-position', action='store_true',
232 help='Print commit position of the NaCl SDK.') 232 help='Print commit position of the NaCl SDK.')
233 parser.add_option('--check-version', 233 parser.add_argument('--check-version',
234 metavar='MAJOR.POSITION', 234 metavar='MAJOR.POSITION',
235 help='Check that the SDK version is at least as great as the ' 235 help='Check that the SDK version is at least as great as the '
236 'version passed in. MAJOR is the major version number and POSITION ' 236 'version passed in. MAJOR is the major version number and POSITION '
237 'is the Cr-Commit-Position number.') 237 'is the Cr-Commit-Position number.')
238 238
239 options, _ = parser.parse_args(args) 239 if len(args) > 1:
240 parser.error('Only one option can be specified at a time.')
241
242 options = parser.parse_args(args)
240 243
241 platform = GetPlatform() 244 platform = GetPlatform()
242 245
243 if len(args) > 1:
244 parser.error('Only one option can be specified at a time.')
245
246 if not args:
247 print platform
248 return 0
249
250 if options.arch: 246 if options.arch:
251 out = GetSystemArch(platform) 247 out = GetSystemArch(platform)
252 elif options.nacl_arch: 248 elif options.nacl_arch:
253 out = GetNaClArch(platform) 249 out = GetNaClArch(platform)
254 elif options.chrome: 250 elif options.chrome:
255 out = GetChromePath(platform) 251 out = GetChromePath(platform)
256 elif options.sdk_version: 252 elif options.sdk_version:
257 out = GetSDKVersion()[0] 253 out = GetSDKVersion()[0]
258 elif options.sdk_revision: 254 elif options.sdk_revision:
259 out = GetSDKVersion()[1] 255 out = GetSDKVersion()[1]
260 elif options.sdk_commit_position: 256 elif options.sdk_commit_position:
261 out = GetSDKVersion()[2] 257 out = GetSDKVersion()[2]
262 elif options.check_version: 258 elif options.check_version:
263 required_version = ParseVersion(options.check_version) 259 required_version = ParseVersion(options.check_version)
264 CheckVersion(required_version) 260 CheckVersion(required_version)
265 out = None 261 out = None
262 else:
263 out = platform
266 264
267 if out: 265 if out:
268 print out 266 print out
269 return 0 267 return 0
270 268
271 269
272 if __name__ == '__main__': 270 if __name__ == '__main__':
273 try: 271 try:
274 sys.exit(main(sys.argv[1:])) 272 sys.exit(main(sys.argv[1:]))
275 except Error as e: 273 except Error as e:
276 sys.stderr.write(str(e) + '\n') 274 sys.stderr.write(str(e) + '\n')
277 sys.exit(1) 275 sys.exit(1)
OLDNEW
« no previous file with comments | « native_client_sdk/src/tools/genhttpfs.py ('k') | native_client_sdk/src/tools/httpd.py » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698