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

Issue 2807283002: [Cronet] Build static libcronet.a for iOS with complete dependencies. (Closed)

Created:
3 years, 8 months ago by mef
Modified:
3 years, 6 months ago
CC:
chromium-reviews, cbentzel+watch_chromium.org, ios-reviews_chromium.org, net-reviews_chromium.org
Target Ref:
refs/heads/master
Project:
chromium
Visibility:
Public.

Description

[Cronet] Build static libcronet.a for iOS with complete dependencies. - Hide dependencies inside of the library to avoid symbol conflicts. - Add cronet_consumer_static target that builds consumer app with static library. BUG=721922 CQ_INCLUDE_TRYBOTS=master.tryserver.chromium.android:android_cronet_tester Review-Url: https://codereview.chromium.org/2807283002 Cr-Original-Commit-Position: refs/heads/master@{#475158} Committed: https://chromium.googlesource.com/chromium/src/+/3412c3c60b69798430b3a3cc9d2834f5d44e6042 Review-Url: https://codereview.chromium.org/2807283002 Cr-Commit-Position: refs/heads/master@{#476986} Committed: https://chromium.googlesource.com/chromium/src/+/f035c8c0053e7bcec27f968bf7fbbfc062369e0f

Patch Set 1 #

Total comments: 3

Patch Set 2 : Change package_ios.py to build per architecture and skip x86. #

Total comments: 3

Patch Set 3 : Sync #

Patch Set 4 : Remove cronet_sample, make cronet_consumer_static buildable with lib_cronet. #

Total comments: 13

Patch Set 5 : Working fat libcronet.a #

Patch Set 6 : Cleanup and address some comments. #

Patch Set 7 : Sync #

Total comments: 2

Patch Set 8 : Workaround i386 debug failure by using input library without dependencies. #

Total comments: 2

Patch Set 9 : Define and use public configs for include_dirs and libs. #

Patch Set 10 : Create cronet_consumer_template and use it for static and regular consumer. #

Total comments: 13

Patch Set 11 : Clean up and add static framework. #

Total comments: 3

Patch Set 12 : Add rudimentary ios_static_framework template. #

Total comments: 7

Patch Set 13 : Use libtool to combine i386 Cronet library and its dependencies. #

Total comments: 15

Patch Set 14 : More generic ios_static_framework template. #

Patch Set 15 : Back to x64. #

Patch Set 16 : Make cronet_consumer_static work without cronet_framework+link. #

Patch Set 17 : Use dummy action to move from CronetStatic.framework to Static/Cronet.framework #

Patch Set 18 : Sync and format. #

Patch Set 19 : Define bundle_resources_dir, etc to fix build on regular ios bots. #

Patch Set 20 : Only build cronet_consumer_static on Cronet builders (is_cronet_build). #

Patch Set 21 : Disable cronet_consumer_static target for fat builds. #

Total comments: 4
Unified diffs Side-by-side diffs Delta from patch set Stats (+360 lines, -52 lines) Patch
M components/cronet/ios/BUILD.gn View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 6 chunks +195 lines, -33 lines 3 comments Download
M components/cronet/ios/cronet_consumer/BUILD.gn View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 1 chunk +51 lines, -16 lines 1 comment Download
A components/cronet/tools/dummy.py View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 1 chunk +7 lines, -0 lines 0 comments Download
A components/cronet/tools/hide_symbols.py View 1 2 3 4 5 6 7 8 9 10 11 12 1 chunk +101 lines, -0 lines 0 comments Download
M components/cronet/tools/package_ios.py View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 2 chunks +6 lines, -3 lines 0 comments Download

Messages

Total messages: 84 (42 generated)
mef
Hi Hiroshi, this is my prototype CL, and I have 2 unresolved questions / issues. ...
3 years, 8 months ago (2017-04-11 21:05:09 UTC) #6
Hiroshi Ichikawa
https://codereview.chromium.org/2807283002/diff/1/components/cronet/tools/hide_symbols.py File components/cronet/tools/hide_symbols.py (right): https://codereview.chromium.org/2807283002/diff/1/components/cronet/tools/hide_symbols.py#newcode61 components/cronet/tools/hide_symbols.py:61: '-arch', GN_CPU_TO_LD_ARCH[options.current_cpu], On 2017/04/11 21:05:09, mef wrote: > This ...
3 years, 8 months ago (2017-04-12 04:35:26 UTC) #9
mef
Thanks for your comments! https://codereview.chromium.org/2807283002/diff/1/components/cronet/tools/hide_symbols.py File components/cronet/tools/hide_symbols.py (right): https://codereview.chromium.org/2807283002/diff/1/components/cronet/tools/hide_symbols.py#newcode61 components/cronet/tools/hide_symbols.py:61: '-arch', GN_CPU_TO_LD_ARCH[options.current_cpu], On 2017/04/12 04:35:25, ...
3 years, 8 months ago (2017-04-12 15:57:50 UTC) #10
jzw1
On 2017/04/12 15:57:50, mef wrote: > Thanks for your comments! > > https://codereview.chromium.org/2807283002/diff/1/components/cronet/tools/hide_symbols.py > File ...
3 years, 7 months ago (2017-05-17 07:24:54 UTC) #13
kapishnikov
https://codereview.chromium.org/2807283002/diff/60001/components/cronet/ios/BUILD.gn File components/cronet/ios/BUILD.gn (right): https://codereview.chromium.org/2807283002/diff/60001/components/cronet/ios/BUILD.gn#newcode187 components/cronet/ios/BUILD.gn:187: static_library("deps_complete") { Should we add "cronet_" prefix in front ...
3 years, 7 months ago (2017-05-17 16:02:49 UTC) #14
mef
On 2017/05/17 07:24:54, jzw1 wrote: > On 2017/04/12 15:57:50, mef wrote: > > Thanks for ...
3 years, 7 months ago (2017-05-17 18:54:59 UTC) #15
mef
PTAL, we've got this to work for fat arm32+arm64 builds, so this should be able ...
3 years, 7 months ago (2017-05-19 18:07:59 UTC) #18
Robert Sesek
https://codereview.chromium.org/2807283002/diff/120001/components/cronet/ios/BUILD.gn File components/cronet/ios/BUILD.gn (right): https://codereview.chromium.org/2807283002/diff/120001/components/cronet/ios/BUILD.gn#newcode145 components/cronet/ios/BUILD.gn:145: static_library("cronet_static") { Why not use a public_deps on :cronet_sources ...
3 years, 7 months ago (2017-05-19 20:01:41 UTC) #20
mef
https://codereview.chromium.org/2807283002/diff/60001/components/cronet/ios/cronet_consumer/BUILD.gn File components/cronet/ios/cronet_consumer/BUILD.gn (right): https://codereview.chromium.org/2807283002/diff/60001/components/cronet/ios/cronet_consumer/BUILD.gn#newcode34 components/cronet/ios/cronet_consumer/BUILD.gn:34: ios_app_bundle("cronet_consumer_static") { On 2017/05/19 18:07:59, mef wrote: > On ...
3 years, 7 months ago (2017-05-22 15:12:31 UTC) #21
kapishnikov
https://codereview.chromium.org/2807283002/diff/180001/components/cronet/ios/BUILD.gn File components/cronet/ios/BUILD.gn (right): https://codereview.chromium.org/2807283002/diff/180001/components/cronet/ios/BUILD.gn#newcode108 components/cronet/ios/BUILD.gn:108: include_dirs = [ "//components/grpc_support/include" ] Is it still needed ...
3 years, 7 months ago (2017-05-22 17:15:57 UTC) #22
mef
Thanks, PTAL! https://codereview.chromium.org/2807283002/diff/180001/components/cronet/ios/BUILD.gn File components/cronet/ios/BUILD.gn (right): https://codereview.chromium.org/2807283002/diff/180001/components/cronet/ios/BUILD.gn#newcode108 components/cronet/ios/BUILD.gn:108: include_dirs = [ "//components/grpc_support/include" ] On 2017/05/22 ...
3 years, 7 months ago (2017-05-22 20:53:53 UTC) #23
Hiroshi Ichikawa
https://codereview.chromium.org/2807283002/diff/180001/components/cronet/tools/hide_symbols.py File components/cronet/tools/hide_symbols.py (right): https://codereview.chromium.org/2807283002/diff/180001/components/cronet/tools/hide_symbols.py#newcode83 components/cronet/tools/hide_symbols.py:83: '-arch', 'i386', options.input_libs, On 2017/05/22 20:53:53, mef wrote: > ...
3 years, 7 months ago (2017-05-22 23:42:36 UTC) #24
Hiroshi Ichikawa
https://codereview.chromium.org/2807283002/diff/200001/components/cronet/tools/hide_symbols.py File components/cronet/tools/hide_symbols.py (right): https://codereview.chromium.org/2807283002/diff/200001/components/cronet/tools/hide_symbols.py#newcode1 components/cronet/tools/hide_symbols.py:1: #!/usr/bin/env python It would be great if you put ...
3 years, 7 months ago (2017-05-22 23:46:39 UTC) #25
jzw1
On 2017/05/22 23:46:39, Hiroshi Ichikawa wrote: > https://codereview.chromium.org/2807283002/diff/200001/components/cronet/tools/hide_symbols.py > File components/cronet/tools/hide_symbols.py (right): > > https://codereview.chromium.org/2807283002/diff/200001/components/cronet/tools/hide_symbols.py#newcode1 ...
3 years, 7 months ago (2017-05-23 07:05:19 UTC) #26
mef
On 2017/05/23 07:05:19, jzw1 wrote: > On 2017/05/22 23:46:39, Hiroshi Ichikawa wrote: > > > ...
3 years, 7 months ago (2017-05-23 12:30:42 UTC) #27
mef
Thanks for your comments! I think I've addressed them all, so PTAL. https://codereview.chromium.org/2807283002/diff/180001/components/cronet/tools/hide_symbols.py File components/cronet/tools/hide_symbols.py ...
3 years, 7 months ago (2017-05-23 20:56:36 UTC) #28
kapishnikov
https://codereview.chromium.org/2807283002/diff/220001/components/cronet/ios/BUILD.gn File components/cronet/ios/BUILD.gn (right): https://codereview.chromium.org/2807283002/diff/220001/components/cronet/ios/BUILD.gn#newcode234 components/cronet/ios/BUILD.gn:234: "{{bundle_root_dir}}/Cronet", Can we somehow parameterize the binary name? Target ...
3 years, 7 months ago (2017-05-23 21:37:47 UTC) #29
Hiroshi Ichikawa
https://codereview.chromium.org/2807283002/diff/180001/components/cronet/tools/hide_symbols.py File components/cronet/tools/hide_symbols.py (right): https://codereview.chromium.org/2807283002/diff/180001/components/cronet/tools/hide_symbols.py#newcode83 components/cronet/tools/hide_symbols.py:83: '-arch', 'i386', options.input_libs, On 2017/05/23 20:56:36, mef wrote: > ...
3 years, 7 months ago (2017-05-24 05:10:24 UTC) #30
jzw1
https://codereview.chromium.org/2807283002/diff/240001/components/cronet/ios/cronet_consumer/BUILD.gn File components/cronet/ios/cronet_consumer/BUILD.gn (right): https://codereview.chromium.org/2807283002/diff/240001/components/cronet/ios/cronet_consumer/BUILD.gn#newcode48 components/cronet/ios/cronet_consumer/BUILD.gn:48: # TODO(mef): This dep is used to make #import ...
3 years, 7 months ago (2017-05-24 06:15:26 UTC) #32
mef
Thanks for your comments! PTAL. https://codereview.chromium.org/2807283002/diff/220001/components/cronet/ios/BUILD.gn File components/cronet/ios/BUILD.gn (right): https://codereview.chromium.org/2807283002/diff/220001/components/cronet/ios/BUILD.gn#newcode234 components/cronet/ios/BUILD.gn:234: "{{bundle_root_dir}}/Cronet", On 2017/05/23 21:37:46, ...
3 years, 7 months ago (2017-05-24 21:36:59 UTC) #33
Hiroshi Ichikawa
https://codereview.chromium.org/2807283002/diff/240001/components/cronet/tools/cr_cronet.py File components/cronet/tools/cr_cronet.py (right): https://codereview.chromium.org/2807283002/diff/240001/components/cronet/tools/cr_cronet.py#newcode90 components/cronet/tools/cr_cronet.py:90: gn_args += ' target_cpu="x86" ' On 2017/05/24 21:36:59, mef ...
3 years, 7 months ago (2017-05-25 02:28:32 UTC) #34
mef
Thanks! https://codereview.chromium.org/2807283002/diff/240001/components/cronet/tools/cr_cronet.py File components/cronet/tools/cr_cronet.py (right): https://codereview.chromium.org/2807283002/diff/240001/components/cronet/tools/cr_cronet.py#newcode90 components/cronet/tools/cr_cronet.py:90: gn_args += ' target_cpu="x86" ' On 2017/05/25 02:28:32, ...
3 years, 6 months ago (2017-05-25 14:53:27 UTC) #35
mef
PTAL.
3 years, 6 months ago (2017-05-25 19:23:47 UTC) #36
Hiroshi Ichikawa
lgtm
3 years, 6 months ago (2017-05-26 02:09:10 UTC) #37
kapishnikov
lgtm
3 years, 6 months ago (2017-05-26 14:13:30 UTC) #38
commit-bot: I haz the power
CQ is trying da patch. Follow status at: https://chromium-cq-status.appspot.com/v2/patch-status/codereview.chromium.org/2807283002/340001
3 years, 6 months ago (2017-05-26 15:02:38 UTC) #41
commit-bot: I haz the power
Try jobs failed on following builders: ios-simulator on master.tryserver.chromium.mac (JOB_FAILED, http://build.chromium.org/p/tryserver.chromium.mac/builders/ios-simulator/builds/224443)
3 years, 6 months ago (2017-05-26 15:10:42 UTC) #43
commit-bot: I haz the power
CQ is trying da patch. Follow status at: https://chromium-cq-status.appspot.com/v2/patch-status/codereview.chromium.org/2807283002/380001
3 years, 6 months ago (2017-05-26 21:27:23 UTC) #56
commit-bot: I haz the power
Committed patchset #20 (id:380001) as https://chromium.googlesource.com/chromium/src/+/3412c3c60b69798430b3a3cc9d2834f5d44e6042
3 years, 6 months ago (2017-05-26 22:15:47 UTC) #59
mef
A revert of this CL (patchset #20 id:380001) has been created in https://codereview.chromium.org/2907023002/ by mef@chromium.org. ...
3 years, 6 months ago (2017-05-27 14:54:43 UTC) #60
mef
IIUIC the problem is that in builds with additional_target_cpus the cronet_consumer_static target is built for ...
3 years, 6 months ago (2017-06-01 21:44:25 UTC) #65
sdefresne
On 2017/06/01 21:44:25, mef wrote: > IIUIC the problem is that in builds with additional_target_cpus ...
3 years, 6 months ago (2017-06-02 08:21:34 UTC) #68
sdefresne
On 2017/06/02 08:21:34, sdefresne wrote: > On 2017/06/01 21:44:25, mef wrote: > > IIUIC the ...
3 years, 6 months ago (2017-06-02 13:53:38 UTC) #69
sdefresne
On 2017/06/02 13:53:38, sdefresne wrote: > On 2017/06/02 08:21:34, sdefresne wrote: > > On 2017/06/01 ...
3 years, 6 months ago (2017-06-02 13:57:35 UTC) #70
mef
On 2017/06/02 08:21:34, sdefresne wrote: > On 2017/06/01 21:44:25, mef wrote: > > IIUIC the ...
3 years, 6 months ago (2017-06-02 14:36:52 UTC) #71
mef
On 2017/06/02 13:53:38, sdefresne wrote: > On 2017/06/02 08:21:34, sdefresne wrote: > > On 2017/06/01 ...
3 years, 6 months ago (2017-06-02 14:38:09 UTC) #72
mef
On 2017/06/02 13:57:35, sdefresne wrote: > On 2017/06/02 13:53:38, sdefresne wrote: > > On 2017/06/02 ...
3 years, 6 months ago (2017-06-02 14:40:03 UTC) #73
mef
Hi Sylvain and Robert, these are 3 main open questions where we could use your ...
3 years, 6 months ago (2017-06-02 16:26:18 UTC) #74
commit-bot: I haz the power
CQ is trying da patch. Follow status at: https://chromium-cq-status.appspot.com/v2/patch-status/codereview.chromium.org/2807283002/400001
3 years, 6 months ago (2017-06-02 21:16:44 UTC) #77
commit-bot: I haz the power
Try jobs failed on following builders: linux_android_rel_ng on master.tryserver.chromium.android (JOB_FAILED, https://build.chromium.org/p/tryserver.chromium.android/builders/linux_android_rel_ng/builds/309705)
3 years, 6 months ago (2017-06-02 23:26:47 UTC) #79
commit-bot: I haz the power
CQ is trying da patch. Follow status at: https://chromium-cq-status.appspot.com/v2/patch-status/codereview.chromium.org/2807283002/400001
3 years, 6 months ago (2017-06-05 13:55:14 UTC) #81
commit-bot: I haz the power
3 years, 6 months ago (2017-06-05 15:22:50 UTC) #84
Message was sent while issue was closed.
Committed patchset #21 (id:400001) as
https://chromium.googlesource.com/chromium/src/+/f035c8c0053e7bcec27f968bf7fb...

Powered by Google App Engine
This is Rietveld 408576698