|
|
Created:
4 years, 4 months ago by sdefresne Modified:
4 years, 4 months ago Reviewers:
Dirk Pranke CC:
chromium-reviews, justincohen Base URL:
https://chromium.googlesource.com/chromium/src.git@master Target Ref:
refs/pending/heads/master Project:
chromium Visibility:
Public. |
Description[iOS] Fix compilation of official build with Xcode 8.
When targeting iOS, do not enforce a specific version of the macOS
SDK (as the targets build with that SDK are only tool required for
the build using host_toolchain).
BUG=634373
Committed: https://crrev.com/750b90480e0fcc67e292444cfdc350171bdaed06
Cr-Commit-Position: refs/heads/master@{#410886}
Patch Set 1 #
Total comments: 3
Patch Set 2 : Address comments. #Patch Set 3 : Update to check target_os ... #Patch Set 4 : Add a TODO #Messages
Total messages: 34 (23 generated)
The CQ bit was checked by sdefresne@chromium.org to run a CQ dry run
sdefresne@chromium.org changed reviewers: + dpranke@chromium.org
Please take a look.
Dry run: CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/v2/patch-status/codereview.chromium.or...
Description was changed from ========== [iOS] Fix compilation of official build with Xcode 8. When targeting iOS, do not enforce a specific version of the macOS SDK (as the targets build with that SDK are only tool required for the build using host_toolchain). BUG=634373 ========== to ========== [iOS] Fix compilation of official build with Xcode 8. When targeting iOS, do not enforce a specific version of the macOS SDK (as the targets build with that SDK are only tool required for the build using host_toolchain). BUG=634373 ==========
+justincohen: FYI
The CQ bit was unchecked by commit-bot@chromium.org
Dry run: Try jobs failed on following builders: chromeos_amd64-generic_chromium_compile_only_ng on master.tryserver.chromium.linux (JOB_FAILED, http://build.chromium.org/p/tryserver.chromium.linux/builders/chromeos_amd64-...)
lgtm https://codereview.chromium.org/2225203003/diff/1/build/config/mac/mac_sdk.gni File build/config/mac/mac_sdk.gni (right): https://codereview.chromium.org/2225203003/diff/1/build/config/mac/mac_sdk.gn... build/config/mac/mac_sdk.gni:29: current_toolchain != host_toolchain I know we discussed this a bit back and forth over email, but I think you maybe drew the wrong conclusion, and I think it's fine to require the same sdk version for both target and host toolchains. It is reasonable to still guard this on something since we don't need to call things twice, though.
https://codereview.chromium.org/2225203003/diff/1/build/config/mac/mac_sdk.gni File build/config/mac/mac_sdk.gni (right): https://codereview.chromium.org/2225203003/diff/1/build/config/mac/mac_sdk.gn... build/config/mac/mac_sdk.gni:29: current_toolchain != host_toolchain On 2016/08/08 23:15:06, Dirk Pranke wrote: > I know we discussed this a bit back and forth over email, but I think you maybe > drew the wrong conclusion, and I think it's fine to require the same sdk version > for both target and host toolchains. > > It is reasonable to still guard this on something since we don't need to call > things twice, though. The issue is that Chrome on iOS wants to soon require Xcode 8 for the compilation. One of the bots we have sets both is_chrome_branded and is_official_build to true (it is used to build the version that is tested). The problem is that those flags are propagated from the main toolchain to the host toolchain. When building the tools for the host toolchain, we do not really care about building and official / branded version, we're fine with just building release. Since Xcode 8 does not contains 10.10 SDK, the "gn gen" steps fails with the following error: ERROR at //build/config/mac/mac_sdk.gni:43:34: Array subscript out of range. mac_sdk_version = find_sdk_lines[1] ^ You gave me 1 but I was expecting something from 0 to 1, inclusive. (issue https://codereview.chromium.org/2218773004/ is here to make the error cleaner). Maybe the correct check should be target_os != "ios" instead. WDYT?
lgtm https://codereview.chromium.org/2225203003/diff/1/build/config/mac/mac_sdk.gni File build/config/mac/mac_sdk.gni (right): https://codereview.chromium.org/2225203003/diff/1/build/config/mac/mac_sdk.gn... build/config/mac/mac_sdk.gni:29: current_toolchain != host_toolchain Change to current_toolchain == default_toolchain, maybe (as we discussed).
The CQ bit was checked by sdefresne@chromium.org to run a CQ dry run
Dry run: CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/v2/patch-status/codereview.chromium.or...
The CQ bit was unchecked by commit-bot@chromium.org
Dry run: Try jobs failed on following builders: chromeos_amd64-generic_chromium_compile_only_ng on master.tryserver.chromium.linux (JOB_FAILED, http://build.chromium.org/p/tryserver.chromium.linux/builders/chromeos_amd64-...)
The CQ bit was checked by sdefresne@chromium.org to run a CQ dry run
Dry run: CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/v2/patch-status/codereview.chromium.or...
The CQ bit was unchecked by commit-bot@chromium.org
Dry run: Try jobs failed on following builders: chromium_presubmit on master.tryserver.chromium.linux (JOB_FAILED, http://build.chromium.org/p/tryserver.chromium.linux/builders/chromium_presub...) linux_chromium_asan_rel_ng on master.tryserver.chromium.linux (JOB_FAILED, http://build.chromium.org/p/tryserver.chromium.linux/builders/linux_chromium_...) linux_chromium_chromeos_ozone_rel_ng on master.tryserver.chromium.linux (JOB_FAILED, http://build.chromium.org/p/tryserver.chromium.linux/builders/linux_chromium_...) linux_chromium_compile_dbg_ng on master.tryserver.chromium.linux (JOB_FAILED, http://build.chromium.org/p/tryserver.chromium.linux/builders/linux_chromium_...) mac_chromium_compile_dbg_ng on master.tryserver.chromium.mac (JOB_FAILED, http://build.chromium.org/p/tryserver.chromium.mac/builders/mac_chromium_comp...)
I tried to use "current_toolchain == default_toolchain" but it did not work because build/config/mac/mac_sdk.gni is always loaded on iOS. I then tried to avoid loading build/config/mac/mac_sdk.gni but the CL turned really large (as I had to move some shared config out of the file, duplicate a few things, ...). I've created https://bugs.chromium.org/p/chromium/issues/detail?id=635745 to clean this up. Until this is done, I think we should land this as is (to unblock official builder on iOS) and I'll revisit once the cleanup is done. WDYT?
Patchset #3 (id:40001) has been deleted
The CQ bit was checked by sdefresne@chromium.org to run a CQ dry run
Dry run: CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/v2/patch-status/codereview.chromium.or...
The CQ bit was unchecked by commit-bot@chromium.org
Dry run: This issue passed the CQ dry run.
okay, maybe add a TODO for the cleanup? lgtm.
The CQ bit was checked by sdefresne@chromium.org
The patchset sent to the CQ was uploaded after l-g-t-m from dpranke@chromium.org Link to the patchset: https://codereview.chromium.org/2225203003/#ps80001 (title: "Add a TODO")
CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/v2/patch-status/codereview.chromium.or...
Message was sent while issue was closed.
Description was changed from ========== [iOS] Fix compilation of official build with Xcode 8. When targeting iOS, do not enforce a specific version of the macOS SDK (as the targets build with that SDK are only tool required for the build using host_toolchain). BUG=634373 ========== to ========== [iOS] Fix compilation of official build with Xcode 8. When targeting iOS, do not enforce a specific version of the macOS SDK (as the targets build with that SDK are only tool required for the build using host_toolchain). BUG=634373 ==========
Message was sent while issue was closed.
Committed patchset #4 (id:80001)
Message was sent while issue was closed.
Description was changed from ========== [iOS] Fix compilation of official build with Xcode 8. When targeting iOS, do not enforce a specific version of the macOS SDK (as the targets build with that SDK are only tool required for the build using host_toolchain). BUG=634373 ========== to ========== [iOS] Fix compilation of official build with Xcode 8. When targeting iOS, do not enforce a specific version of the macOS SDK (as the targets build with that SDK are only tool required for the build using host_toolchain). BUG=634373 Committed: https://crrev.com/750b90480e0fcc67e292444cfdc350171bdaed06 Cr-Commit-Position: refs/heads/master@{#410886} ==========
Message was sent while issue was closed.
Patchset 4 (id:??) landed as https://crrev.com/750b90480e0fcc67e292444cfdc350171bdaed06 Cr-Commit-Position: refs/heads/master@{#410886} |