Remove generator *= [ninja|xcode] and re_run_targets from gyp |
||||||
Issue descriptionNow that all bots are in ninja, these can go away. This should wait until after M51 goes to stable for iOS. From thakis: Can we get rid of these now? https://code.google.com/p/chromium/codesearch#search/&q=generator.*==.*ninja%20file:gyp&sq=package:chromium&type=cs https://code.google.com/p/chromium/codesearch#search/&q=generator.*==.*xcode%20file:gyp&sq=package:chromium&type=cs (in particular, https://code.google.com/p/chromium/codesearch#chromium/src/build/ios/mac_build.gypi&q=re_run_targets&sq=package:chromium&type=cs&l=79)
,
May 2 2016
Does this bug have to be private?
,
May 2 2016
,
May 9 2016
,
Jun 13 2016
https://codereview.chromium.org/2066533002/
,
Jun 13 2016
Also, I spent some time explaining why target_arch doesn't work for iOS to someone today -- now that we're on ninja everywhere, it _could_ work for iOS, right?
,
Jun 13 2016
The following revision refers to this bug: https://chromium.googlesource.com/chromium/src.git/+/128c298a0f9cf518d341a785d25d2709bfe5ee6b commit 128c298a0f9cf518d341a785d25d2709bfe5ee6b Author: thakis <thakis@chromium.org> Date: Mon Jun 13 16:20:27 2016 gyp: <(GENERATOR) is now always ninja, so simplify some conditionals. No intended behavior change. BUG= 608380 TBR=rohitrao,thestig Review-Url: https://codereview.chromium.org/2066533002 Cr-Commit-Position: refs/heads/master@{#399465} [modify] https://crrev.com/128c298a0f9cf518d341a785d25d2709bfe5ee6b/breakpad/breakpad.gyp [modify] https://crrev.com/128c298a0f9cf518d341a785d25d2709bfe5ee6b/build/common.gypi [delete] https://crrev.com/8c0ac8d882561cca77d5184248708b0ce9c851d4/build/ios/mac_build.gypi [modify] https://crrev.com/128c298a0f9cf518d341a785d25d2709bfe5ee6b/ios/chrome/tools/strings/generate_localizable_strings.gyp [modify] https://crrev.com/128c298a0f9cf518d341a785d25d2709bfe5ee6b/testing/iossim/iossim.gyp [modify] https://crrev.com/128c298a0f9cf518d341a785d25d2709bfe5ee6b/third_party/protobuf/protobuf.gyp
,
Jun 13 2016
,
Jun 13 2016
I think that's correct, but sdefresne@ can speak to it more authoritatively. Are you interested in making these changes on gyp even with the GN changes coming?
,
Jun 13 2016
Regarding comment #6: even with ninja it would be pretty hard to support target_arch on iOS (as ninja gyp generator still abuses "Configurations"). I'd say that we probably won't fix it before migration to gn is complete (and that already supports target_cpu correctly on iOS).
,
Jun 13 2016
What do you mean by "abuses 'Configurations'"? I agree that it doesn't make sense to invest too much time given that gn is coming, but every day with surprising stuff in the tree costs people who try to understand that stuff time. (For example, someone updated libpng today and had to spend some time reading about iOS peculiarities.) So if it would take 1h to make iOS look like the rest of the world and this saves 3 people 1h not having to learn about it, it'd be kind of worth it. Sounds like it might not be easy to change though.
,
Jun 13 2016
It does this after parsing, variable substitutions and condition evaluations have been performed:
def _AddIOSDeviceConfigurations(targets):
"""Clone all targets and append -iphoneos to the name. Configure these targets
to build for iOS devices and use correct architectures for those builds."""
for target_dict in targets.itervalues():
toolset = target_dict['toolset']
configs = target_dict['configurations']
for config_name, config_dict in dict(configs).iteritems():
iphoneos_config_dict = copy.deepcopy(config_dict)
configs[config_name + '-iphoneos'] = iphoneos_config_dict
configs[config_name + '-iphonesimulator'] = config_dict
if toolset == 'target':
iphoneos_config_dict['xcode_settings']['SDKROOT'] = 'iphoneos'
return targets
This is to be able to generate a single Xcode project that build for device and simulator, but it also means that we cannot select the file list based on the target_cpu (in particular skia wants to use this to select either assembly language source file with optimisation for either arm, arm64, x86 or x64).
,
Jun 13 2016
I'd say that fixing this would takes more than a few hours (it would probably takes weeks if we want to keep the developer workflow unchanged).
,
Jun 13 2016
Thanks for explaining! Doesn't look like it's worth it then :-)
,
Jun 15 2016
The following revision refers to this bug: https://chromium.googlesource.com/chromium/src.git/+/128c298a0f9cf518d341a785d25d2709bfe5ee6b commit 128c298a0f9cf518d341a785d25d2709bfe5ee6b Author: thakis <thakis@chromium.org> Date: Mon Jun 13 16:20:27 2016 gyp: <(GENERATOR) is now always ninja, so simplify some conditionals. No intended behavior change. BUG= 608380 TBR=rohitrao,thestig Review-Url: https://codereview.chromium.org/2066533002 Cr-Commit-Position: refs/heads/master@{#399465} [modify] https://crrev.com/128c298a0f9cf518d341a785d25d2709bfe5ee6b/breakpad/breakpad.gyp [modify] https://crrev.com/128c298a0f9cf518d341a785d25d2709bfe5ee6b/build/common.gypi [delete] https://crrev.com/8c0ac8d882561cca77d5184248708b0ce9c851d4/build/ios/mac_build.gypi [modify] https://crrev.com/128c298a0f9cf518d341a785d25d2709bfe5ee6b/ios/chrome/tools/strings/generate_localizable_strings.gyp [modify] https://crrev.com/128c298a0f9cf518d341a785d25d2709bfe5ee6b/testing/iossim/iossim.gyp [modify] https://crrev.com/128c298a0f9cf518d341a785d25d2709bfe5ee6b/third_party/protobuf/protobuf.gyp |
||||||
►
Sign in to add a comment |
||||||
Comment 1 by justincohen@chromium.org
, May 2 2016