cordova-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From aaron barnes <aa...@stasis.org>
Subject Re: plugman iOS + compiler flags
Date Fri, 21 Jun 2013 19:27:36 GMT
Holy sh*t guys, that's some fast work.


Much obliged,


--aaron


On 6/21/13 11:54 AM, "Shazron" <shaz...@gmail.com> wrote:


Filed: https://issues.apache.org/jira/browse/CB-3967

On Fri, Jun 21, 2013 at 11:58 AM, Filip Maj <fi...@adobe.com> wrote:

Sweet, let's file an issue as a feature request for this and I'll do my 
best to get this in time for 3.0.

On 6/21/13 11:54 AM, "Shazron" <shaz...@gmail.com> wrote:

Of course it should be considered. We did discuss this briefly, but I 
don't think we added it as a feature request in time for 3.0.0. What I 
did recommend however, is for plugins to use the __has_feature(objc_arc) 
macro to support both ARC and non-ARC. This way, including it in any 
kind of project setting it would work - without adding this flag. 
Pre-3.0.0, ARC is _not_ enabled by default in the project template (for 
plugin compatibility reasons), but in 3.0.0 we are enabling it in the 
default template: https://issues.apache.org/jira/browse/CB-2180

More info here:

http://shazronatadobe.wordpress.com/2012/09/05/automatic-reference-countin

g-arc-and-cordova-plugins/

For pre-compiled binaries it's no problem (say the TestFlightSDK ships 
with libTestFlight.a), and for small plugins to convert to use the 
macro, but I can see it being a problem if we had to include the 
Facebook SDK with its gajillion files that may or may not be ARC (since 
converting them may be a maintenance nightmare for newer versions).

For that last scenario, I would recommend having that new compiler flags 
attribute.

On Fri, Jun 21, 2013 at 11:37 AM, aaron barnes <aar...@stasis.org> wrote:

I've really been enjoying the cordova cli/plugin.xml definition.

I've been porting a bunch of old plugins to work with plugman's 
plugin.xml definition. Generally it's been going well, however one 
problem I've come across a few times particularly when trying to apply 
it to old code or adapting 3rd party code is that the code isn't ARC 
compliant. The preference would obviously be to make the code 
arc-compliant, but not being a pro in objective c, it's often easier to 
just add '-fno-objc-arc' as a compiler flag for the file in xcode.

It would be great to add as an option for iOS builders, I'm thinking 
something like:

<source-file src="src/ios/LegacyCode.m" compilerFlags="-fno-objc-arc"/**>

in plugin.xml

which would then insert something like :

93803FD21768C79200CB4E50 /* LegacyCode.m in Sources */ = {isa = 
PBXBuildFile; fileRef = 93803FCF1768C79200CB4E50 /* LegacyCode.m */; 
settings = {COMPILER_FLAGS = "-fno-objc-arc"; }; }

into the project.pbxproj.

would anybody else find this useful as a feature-request? can it be 
considered?

--aaron

© 2007-2011 MarkLogic Corporation. All rights reserved.Home 
<http://markmail.org/>|Browse <http://markmail.org/browse>|FAQ 
<http://markmail.org/docs/faq.xqy>|Advertising 
<http://markmail.org/docs/advertising.xqy>|Blog 
<http://markmail.blogspot.com/>|Feedback 
<http://markmail.org/docs/feedback.xqy>|MarkMail^(TM) Legalese 
<http://markmail.org/docs/terms-of-use.xqy>|About MarkLogic Server 
<http://www.marklogic.com/products/mmoverview.html>

Mime
  • Unnamed multipart/alternative (inline, None, 0 bytes)
View raw message