Problem: A library I use won't support ARC (Automatic Reference Counting).
Background (for those unfamiliar to ARC): http://developer.apple.com/library/ios/#releasenotes/ObjectiveC/RN-TransitioningToARC/_index.html
Manual Solution: Add the -fno-objc-arc option for each implementation file of the library, and otherwise use ARC normally in my application code.
Observation: The following template file can be copied and most likely be used to either turn ARC completely ON or OFF (without adding the compiler flags above -- the in-between solution that I need):
"/Developer/Platforms/iPhoneOS.platform/Developer/Library/Xcode/Templates/Project Templates/iOS Reference Counting.xctemplate"
Question Restatement: Is there a way to avoid the manual solution? (Copy and Pasting in the -fno-objc-arc option over 100 times is inconvenient. I hope Apple exposes a programmatic solution. I would not want to use Automator.app to do the copy/pasting since the Xcode UI will very likely change.)
Example Xcode4 template Generator: https://github.com/MrGando/Xcode-4-Template-Generator/blob/master/template_generator.py
Note template_generator.py has experimental Shared Build Settings. I want selectively shared (partially shared) settings. In addition it would be desirable to change the NSAutoreleasePool in main() to an @autorelease block, either with a macro substitution, or by providing a 2nd main.m file.
no, but you're doing it the hard way... simply create a static library target for these MRC sources (if one does not already exist -- it is a 3rd party library), then set the appropriate build settings per target. then link the library with your final executable.
You can select multiple files in the Compile Sources list and apply the
-fno-objc-arc
tag to all of them at once by pressing Enter > Paste > Enter.