Chromium Code Reviews| OLD | NEW |
|---|---|
| 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 """Prints the lowest locally available SDK version greater than or equal to a | 6 """Prints the lowest locally available SDK version greater than or equal to a |
| 7 given minimum sdk version to standard output. | 7 given minimum sdk version to standard output. |
| 8 | 8 |
| 9 Usage: | 9 Usage: |
| 10 python find_sdk.py 10.6 # Ignores SDKs < 10.6 | 10 python find_sdk.py 10.6 # Ignores SDKs < 10.6 |
| (...skipping 22 matching lines...) Expand all Loading... | |
| 33 action="store", type="string", dest="sdk_path", default="", | 33 action="store", type="string", dest="sdk_path", default="", |
| 34 help="user-specified SDK path; bypasses verification") | 34 help="user-specified SDK path; bypasses verification") |
| 35 parser.add_option("--print_sdk_path", | 35 parser.add_option("--print_sdk_path", |
| 36 action="store_true", dest="print_sdk_path", default=False, | 36 action="store_true", dest="print_sdk_path", default=False, |
| 37 help="Additionaly print the path the SDK (appears first).") | 37 help="Additionaly print the path the SDK (appears first).") |
| 38 options, args = parser.parse_args() | 38 options, args = parser.parse_args() |
| 39 if len(args) != 1: | 39 if len(args) != 1: |
| 40 parser.error('Please specify a minimum SDK version') | 40 parser.error('Please specify a minimum SDK version') |
| 41 min_sdk_version = args[0] | 41 min_sdk_version = args[0] |
| 42 | 42 |
| 43 # Try using the toolchain in mac_files. | |
| 44 sys.path.append(os.path.dirname(os.path.dirname(__file__))) | |
| 45 import mac_toolchain | |
|
erikchen
2016/03/30 17:39:55
I've seen python files in our code base that would
justincohen
2016/03/30 21:14:26
Done.
| |
| 46 mac_toolchain_dir = mac_toolchain.GetToolchainDirectory() | |
| 47 if mac_toolchain_dir: | |
| 48 os.environ['DEVELOPER_DIR'] = mac_toolchain_dir | |
|
erikchen
2016/03/30 17:39:55
2 space indent?
Given that this logic is also pre
justincohen
2016/03/30 21:14:26
Done.
| |
| 49 | |
| 43 job = subprocess.Popen(['xcode-select', '-print-path'], | 50 job = subprocess.Popen(['xcode-select', '-print-path'], |
| 44 stdout=subprocess.PIPE, | 51 stdout=subprocess.PIPE, |
| 45 stderr=subprocess.STDOUT) | 52 stderr=subprocess.STDOUT) |
| 46 out, err = job.communicate() | 53 out, err = job.communicate() |
| 47 if job.returncode != 0: | 54 if job.returncode != 0: |
| 48 print >> sys.stderr, out | 55 print >> sys.stderr, out |
| 49 print >> sys.stderr, err | 56 print >> sys.stderr, err |
| 50 raise Exception(('Error %d running xcode-select, you might have to run ' | 57 raise Exception(('Error %d running xcode-select, you might have to run ' |
| 51 '|sudo xcode-select --switch /Applications/Xcode.app/Contents/Developer| ' | 58 '|sudo xcode-select --switch /Applications/Xcode.app/Contents/Developer| ' |
| 52 'if you are using Xcode 4.') % job.returncode) | 59 'if you are using Xcode 4.') % job.returncode) |
| (...skipping 31 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
| 84 'macosx' + best_sdk, 'Path']).strip() | 91 'macosx' + best_sdk, 'Path']).strip() |
| 85 | 92 |
| 86 return best_sdk | 93 return best_sdk |
| 87 | 94 |
| 88 | 95 |
| 89 if __name__ == '__main__': | 96 if __name__ == '__main__': |
| 90 if sys.platform != 'darwin': | 97 if sys.platform != 'darwin': |
| 91 raise Exception("This script only runs on Mac") | 98 raise Exception("This script only runs on Mac") |
| 92 print main() | 99 print main() |
| 93 sys.exit(0) | 100 sys.exit(0) |
| OLD | NEW |