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

Side by Side Diff: build/config/mac/sdk_info.py

Issue 1877523002: Mac/iOS/GN: Generate Info.plist files for Mac apps and frameworks with gn. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Delete version information to be populated elsewhere, fix assert string. Created 4 years, 8 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 | « build/config/mac/rules.gni ('k') | 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 # Copyright 2014 The Chromium Authors. All rights reserved. 1 # Copyright 2014 The Chromium Authors. All rights reserved.
2 # Use of this source code is governed by a BSD-style license that can be 2 # Use of this source code is governed by a BSD-style license that can be
3 # found in the LICENSE file. 3 # found in the LICENSE file.
4 4
5 import os 5 import os
6 import subprocess 6 import subprocess
7 import sys 7 import sys
8 8
9 # This script prints information about the build system, the operating 9 # This script prints information about the build system, the operating
10 # system and the iOS SDK (depending on the platform "iphonesimulator" 10 # system and the iOS or Mac SDK (depending on the platform "iphonesimulator",
11 # or "iphoneos" generally). 11 # "iphoneos" or "macosx" generally).
12 # 12 #
13 # In the GYP build, this is done inside GYP itself based on the SDKROOT 13 # In the GYP build, this is done inside GYP itself based on the SDKROOT
14 # variable. 14 # variable.
15 15
16 def FormatVersion(version): 16 def FormatVersion(version):
17 """Converts Xcode version to a format required for Info.plist.""" 17 """Converts Xcode version to a format required for Info.plist."""
18 version = version.replace('.', '') 18 version = version.replace('.', '')
19 version = version + '0' * (3 - len(version)) 19 version = version + '0' * (3 - len(version))
20 return version.zfill(4) 20 return version.zfill(4)
21 21
22 22
23 def FillXcodeVersion(settings): 23 def FillXcodeVersion(settings):
24 """Fills the Xcode version and build number into |settings|.""" 24 """Fills the Xcode version and build number into |settings|."""
25 lines = subprocess.check_output(['xcodebuild', '-version']).splitlines() 25 lines = subprocess.check_output(['xcodebuild', '-version']).splitlines()
26 settings['xcode_version'] = FormatVersion(lines[0].split()[-1]) 26 settings['xcode_version'] = FormatVersion(lines[0].split()[-1])
27 settings['xcode_build'] = lines[-1].split()[-1] 27 settings['xcode_build'] = lines[-1].split()[-1]
28 28
29 29
30 def FillMachineOSBuild(settings): 30 def FillMachineOSBuild(settings):
31 """Fills OS build number into |settings|.""" 31 """Fills OS build number into |settings|."""
32 settings['machine_os_build'] = subprocess.check_output( 32 settings['machine_os_build'] = subprocess.check_output(
33 ['sw_vers', '-buildVersion']).strip() 33 ['sw_vers', '-buildVersion']).strip()
34 34
35 35
36 def FillSDKPathAndVersion(settings, platform): 36 def FillSDKPathAndVersion(settings, platform):
37 """Fills the SDK path and version for |platform| into |settings|.""" 37 """Fills the SDK path and version for |platform| into |settings|."""
38 lines = subprocess.check_output(['xcodebuild', '-version', '-sdk', 38 lines = subprocess.check_output(['xcodebuild', '-version', '-sdk',
39 platform, 'Path', 'SDKVersion', 'ProductBuildVersion']).splitlines() 39 platform, 'Path', 'SDKVersion', 'ProductBuildVersion']).splitlines()
40 settings['ios_sdk_path'] = lines[0] 40 settings['sdk_path'] = lines[0]
41 settings['ios_sdk_version'] = lines[1] 41 settings['sdk_version'] = lines[1]
42 settings['ios_sdk_build'] = lines[2] 42 settings['sdk_build'] = lines[2]
43 43
44 44
45 if __name__ == '__main__': 45 if __name__ == '__main__':
46 if len(sys.argv) != 2: 46 if len(sys.argv) != 2:
47 sys.stderr.write( 47 sys.stderr.write(
48 'usage: %s [iphoneos|iphonesimulator]\n' % 48 'usage: %s [iphoneos|iphonesimulator|macosx]\n' %
49 os.path.basename(sys.argv[0])) 49 os.path.basename(sys.argv[0]))
50 sys.exit(1) 50 sys.exit(1)
51 51
52 settings = {} 52 settings = {}
53 FillSDKPathAndVersion(settings, sys.argv[1]) 53 FillSDKPathAndVersion(settings, sys.argv[1])
54 FillMachineOSBuild(settings) 54 FillMachineOSBuild(settings)
55 FillXcodeVersion(settings) 55 FillXcodeVersion(settings)
56 56
57 for key in sorted(settings): 57 for key in sorted(settings):
58 print '%s="%s"' % (key, settings[key]) 58 print '%s="%s"' % (key, settings[key])
OLDNEW
« no previous file with comments | « build/config/mac/rules.gni ('k') | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698