summaryrefslogtreecommitdiffstats
path: root/build/gyp_chromium
diff options
context:
space:
mode:
authorbrettw@chromium.org <brettw@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2014-02-03 12:04:33 +0000
committerbrettw@chromium.org <brettw@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2014-02-03 12:04:33 +0000
commit8d039c687b148a4db2b93b93f2c702106ce947d7 (patch)
tree092c1166377476f7b9c4d0f7cab75abb20ef20b9 /build/gyp_chromium
parentb4b591bcefaf17fc1e1aa9ae6a447952078b03ae (diff)
downloadchromium_src-8d039c687b148a4db2b93b93f2c702106ce947d7.zip
chromium_src-8d039c687b148a4db2b93b93f2c702106ce947d7.tar.gz
chromium_src-8d039c687b148a4db2b93b93f2c702106ce947d7.tar.bz2
Work on GN iOS build.
Separates out some "SDK" related setup on Mac land Linux like we do on Windows. I'm trying to make the "compiler" BUILD file just compiler warnings and CPU options, and have system library stuff on the platform directories. This adds the capability for GN to produce GYP files on Mac that vary according to the GYP generator as well as target-vs-host. I added a bunch of logic to the GN iOS build to set up stuff accordingly based on my current knowledge of what's required. Sadly, this means we now have an 8-way GN build (all combinations of debug/release, host/target, and xcode/ninja). I did some refactoring of the GYP code in GN to make this less unreasonable. I checked that the GYP files look the way I want, but I didn't actually test the resulting builds yet. There is still likely to be some conditions wrong or things not being set properly. I'm going to follow up with a second pass based on actual testing. I believe, however, that with this new GYP generator code in GN, we can express in the .gn files what we need to do the iOS build. Review URL: https://codereview.chromium.org/149163005 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@248476 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'build/gyp_chromium')
-rwxr-xr-xbuild/gyp_chromium11
1 files changed, 10 insertions, 1 deletions
diff --git a/build/gyp_chromium b/build/gyp_chromium
index 8713b43..9034c82 100755
--- a/build/gyp_chromium
+++ b/build/gyp_chromium
@@ -223,7 +223,8 @@ def GetArgsStringForGN(supplemental_files):
gn_args += ' ' + i[2]
# These string arguments get passed directly as GN strings.
- for v in ['android_src', 'windows_sdk_path', 'arm_float_abi']:
+ for v in ['android_src', 'arm_float_abi', 'ios_deployment_target',
+ 'ios_sdk_path', 'windows_sdk_path']:
if v in vars_dict:
gn_args += ' ' + v + '=' + EscapeStringForGN(vars_dict[v])
@@ -231,6 +232,14 @@ def GetArgsStringForGN(supplemental_files):
if 'gomadir' in vars_dict:
gn_args += ' goma_dir=%s' % EscapeStringForGN(vars_dict['gomadir'])
+ # Clear the "use_ios_simulator" flag if the ios_sdk_path is set and is
+ # not a simulator SDK. This duplicates code done in GYP's xcode emulation.
+ if 'ios_sdk_path' in vars_dict:
+ if not os.path.basename(vars_dict['ios_sdk_path']).lower().startswith(
+ 'iphonesimulator'):
+ gn_args += ' use_ios_simulator=false'
+
+
# These arguments get passed directly as integers (avoiding the quoting and
# escaping of the string ones above).
for v in ['arm_version']: