Here’s a couple tips for finding what macros are defined/available in Xcode that showed up on xcode-users for the question
Hi, I’m looking for information on Xcode or the preprocessor that would indicate whether or not my code is being compiled for a non Mac GNU target or Mac OS X or iPhone OS…
You might have known this answer, how to print out a list of gcc predefined macros from the command line:
gcc -E -dM -x c /dev/null
But we’ll just bet you didn’t know how to extract them for a particular file in compilation context!
The easier way to do this (and get more precise, per-target-per-configuration results from Xcode) is to select a source file, Get Info, click the Build tab, add -dM to it, then Preprocess that source file.
You know, there’s been times when porting particularly convoluted befuddlements of allegedly cross-platform libraries that having known that tip would have saved us literally days of flailing around…
