Im trying to create a LITE version of my app. Id like to use the preprocessor directives so I can use
#ifdef LITE_VERSION
// Code here
#endif
Heres what Ive done, so far

I have duplicated the target and renamed to ChecklistsLite.
I added the Preprocessor Macro, LITE_VERSION
I changed the name and location of the ChecklistsLite-Info.plist file
I added some code to the ChecklistTableView.m file…
#ifdef LITE_VERSION
NSLog(@"Lite Version");
#elifdef FULL_VERSION
NSLog(@"Full Version");
#else
NSLog(@"No Version");
#endif
I built ChecklistsLite -> iPhone 4.3 Sim.
And when ran, it spits out “No Version”, when it should say its “Lite Version”.
Now why is it doing that?
Is there something that I am missing?
What is a scheme?
Why is the ChecklistsLite.app appear in red in the products list?
Your build option for ‘Any architecture | Any SDK’ is overwriting the build option set at the target-level. Xcode has some strange quirks in the build options dialog, in this case you’ll need to add
LITEVERSIONto the preprocessor macros for the sub-option ‘Any architecture | Any SDK’, or just remove this sub-option.