Re: iPhone Platform Compiler Symbol?
Re: iPhone Platform Compiler Symbol?
- Subject: Re: iPhone Platform Compiler Symbol?
- From: Gwynne Raskind <email@hidden>
- Date: Thu, 14 May 2009 21:18:14 -0400
On May 14, 2009, at 8:54 PM, Philip Aker wrote:
# gcc -dM -E -x c /dev/null > gccdefs.txt
and
# cpp -dM < /dev/null > cppdefs.txt
Show no difference in the output files.
I think cpp is currently a call through to gcc so theoretically they
should always produce the same set of defines given equivalent
options.
True or false?
True, though the whole story is slightly more complicated. A little
fiddling about with the -v flag actually shows the following:
1. cpp is a wrapper for gcc-4.0 -E
2. gcc-4.0 -E in turn calls through to cc1 -E -traditional-cpp
3. cpp-4.2 and gcc-4.2 call through to cc1 -E
As a side note, one of the correct answers to the OP's question is:
#if defined(TARGET_OS_IPHONE) && TARGET_OS_IPHONE == 1
Which follows from the constants given in:
/usr/include/TargetConditionals.h
/Developer/SDKs/MacOSX<anything>.sdk/usr/include/TargetConditionals.h
/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/
iPhoneOS<anything>.sdk/usr/include/TargetConditionals.h
Philip Aker
echo email@hidden@nl | tr a-z@. p-za-o.@
May I say as another side note that this is delightfully clever! :)
-- Gwynne, Daughter of the Code
"This whole world is an asylum for the incurable."
_______________________________________________
Do not post admin requests to the list. They will be ignored.
Xcode-users mailing list (email@hidden)
Help/Unsubscribe/Update your Subscription:
This email sent to email@hidden