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

Issue 1806513002: Add config to enable ARC on iOS/OS X to //build/config. (Closed)

Created:
4 years, 9 months ago by sdefresne
Modified:
4 years, 9 months ago
Reviewers:
Dirk Pranke, erikchen, Nico
CC:
chromium-reviews, pkl (ping after 24h if needed)
Base URL:
https://chromium.googlesource.com/chromium/src.git@iossim
Target Ref:
refs/pending/heads/master
Project:
chromium
Visibility:
Public.

Description

Add config to enable ARC on iOS/OS X to //build/config. Add a new config //build/config/compiler:enable_arc that adds the required flag to enable ARC (automatic reference counting). BUG=594519 Committed: https://crrev.com/2461a73bb77217ef3bbb35a3f32ab5e73eae640b Cr-Commit-Position: refs/heads/master@{#381686}

Patch Set 1 #

Total comments: 5

Patch Set 2 : Remove //build/config/mac:macosx_version_min_10_9 config #

Total comments: 2
Unified diffs Side-by-side diffs Delta from patch set Stats (+22 lines, -14 lines) Patch
M build/config/compiler/BUILD.gn View 1 chunk +10 lines, -0 lines 0 comments Download
M ios/third_party/gcdwebserver/BUILD.gn View 3 chunks +8 lines, -5 lines 2 comments Download
M ios/third_party/ochamcrest/BUILD.gn View 1 chunk +4 lines, -9 lines 0 comments Download

Dependent Patchsets:

Messages

Total messages: 19 (5 generated)
sdefresne
Please take a look.
4 years, 9 months ago (2016-03-15 14:01:14 UTC) #2
Dirk Pranke
+erikchen, +thakis for thoughts on the new configs ... https://codereview.chromium.org/1806513002/diff/1/build/config/mac/BUILD.gn File build/config/mac/BUILD.gn (right): https://codereview.chromium.org/1806513002/diff/1/build/config/mac/BUILD.gn#newcode98 build/config/mac/BUILD.gn:98: ...
4 years, 9 months ago (2016-03-16 01:34:30 UTC) #4
erikchen
https://codereview.chromium.org/1806513002/diff/1/build/config/mac/BUILD.gn File build/config/mac/BUILD.gn (right): https://codereview.chromium.org/1806513002/diff/1/build/config/mac/BUILD.gn#newcode92 build/config/mac/BUILD.gn:92: # than that. Your comment doesn't match the behavior ...
4 years, 9 months ago (2016-03-16 01:59:23 UTC) #5
Dirk Pranke
https://codereview.chromium.org/1806513002/diff/1/build/config/mac/BUILD.gn File build/config/mac/BUILD.gn (right): https://codereview.chromium.org/1806513002/diff/1/build/config/mac/BUILD.gn#newcode98 build/config/mac/BUILD.gn:98: } On 2016/03/16 01:59:22, erikchen wrote: > On 2016/03/16 ...
4 years, 9 months ago (2016-03-16 02:25:38 UTC) #6
sdefresne
https://codereview.chromium.org/1806513002/diff/1/build/config/mac/BUILD.gn File build/config/mac/BUILD.gn (right): https://codereview.chromium.org/1806513002/diff/1/build/config/mac/BUILD.gn#newcode98 build/config/mac/BUILD.gn:98: } On 2016/03/16 at 02:25:38, Dirk Pranke wrote: > ...
4 years, 9 months ago (2016-03-16 08:40:44 UTC) #7
sdefresne
I've removed //build/config/mac:macosx_version_min_10_9. As you've pointed out, it it too risky to have such a ...
4 years, 9 months ago (2016-03-16 12:39:28 UTC) #9
Dirk Pranke
lgtm
4 years, 9 months ago (2016-03-16 22:26:43 UTC) #10
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/patch-status/1806513002/20001 View timeline at https://chromium-cq-status.appspot.com/patch-timeline/1806513002/20001
4 years, 9 months ago (2016-03-17 09:38:28 UTC) #12
commit-bot: I haz the power
Committed patchset #2 (id:20001)
4 years, 9 months ago (2016-03-17 10:25:53 UTC) #13
commit-bot: I haz the power
Patchset 2 (id:??) landed as https://crrev.com/2461a73bb77217ef3bbb35a3f32ab5e73eae640b Cr-Commit-Position: refs/heads/master@{#381686}
4 years, 9 months ago (2016-03-17 10:26:41 UTC) #15
Nico
Out of interest, why do iossim and class_dump need a 10.9 deployment target? (please cc ...
4 years, 9 months ago (2016-03-18 21:52:07 UTC) #16
sdefresne
https://codereview.chromium.org/1806513002/diff/20001/ios/third_party/gcdwebserver/BUILD.gn File ios/third_party/gcdwebserver/BUILD.gn (right): https://codereview.chromium.org/1806513002/diff/20001/ios/third_party/gcdwebserver/BUILD.gn#newcode25 ios/third_party/gcdwebserver/BUILD.gn:25: # This should be removed once all deprecation violations ...
4 years, 9 months ago (2016-03-19 13:34:27 UTC) #17
sdefresne
On 2016/03/18 at 21:52:07, thakis wrote: > Out of interest, why do iossim and class_dump ...
4 years, 9 months ago (2016-03-19 13:44:54 UTC) #18
erikchen
4 years, 9 months ago (2016-03-21 17:06:46 UTC) #19
Message was sent while issue was closed.
On 2016/03/19 13:44:54, sdefresne wrote:
> On 2016/03/18 at 21:52:07, thakis wrote:
> > Out of interest, why do iossim and class_dump need a 10.9 deployment target?
> (please cc me on the changes that add the flag there)
> 
> To be exact, they only requires 10.8 deployment target (but gyp forces 10.9 so
I
> used the same version for gn, see testing/iossim/iossim.gyp and
> third_party/class-dump/class-dump.gyp).
> 
> For iossim, The 10.8 deployment target is required because the generated
> CoreSimulator.h generated by dumping symbols from private
> CoreSimulator.framework uses OS_dispatch_source which is only available from
> 10.8 SDK apparenly.

Ok. It looks like dispatch objects can be treated as ObjC objects, which
requires a 10.8 deployment target:
http://stackoverflow.com/questions/8618632/does-arc-support-dispatch-queues

> 
> Without the deployment target, I'm getting the following errors building
iossim:
> 
> clang_x64/gen/testing/iossim/CoreSimulator.h:35:68: error: no type or protocol
> named 'OS_dispatch_queue'
> - (unsigned long
> long)registerNotificationHandlerOnQueue:(NSObject<OS_dispatch_queue> *)arg1
> handler:(void (^)(NSDictionary *))arg2;
> 
> For class-dump, this is because the code 1. is compiled with -fobjc-arc (which
> requires 10.7 or higher deployment target) and because the code uses the new
> NSArray/NSDictionary subscripting syntax introducing with OS X 10.8 SDK.
Without
> this, we get the following kind of errors:
> 
> ../../third_party/class-dump/src/Source/CDType.m:701:34: error:
> 'objectAtIndexedSubscript:' is partial: introduced in OS X 10.8
> [-Werror,-Wpartial-availability]
>             CDType *thisMember = _members[index];
> 
> 
> >
>
https://codereview.chromium.org/1806513002/diff/20001/ios/third_party/gcdwebs...
> > File ios/third_party/gcdwebserver/BUILD.gn (right):
> > 
> >
>
https://codereview.chromium.org/1806513002/diff/20001/ios/third_party/gcdwebs...
> > ios/third_party/gcdwebserver/BUILD.gn:25: # This should be removed once all
> deprecation violations have been fixed.
> > Somewhat drive-by: FWIW, I feel pretty strongly that this shouldn't have
been
> added in the first place; see also our previous discussion of this on
> https://codereview.chromium.org/1180583002/
> > 
> > Please fix this very soon.

Powered by Google App Engine
This is Rietveld 408576698