That is an excellent idea: You could use (I3D_ARCH_X86 || I3D_ARCH_ARM) as a test for the Marmalade platform. It would be nice to remove the predefines from the MKB makefile if possible. I found out about these defines from the Marmalade forum; they are not in the documentation, although they have been around for a long time. (Unfortunately there are quite a few of these little Marmalade "tricks" that are completely undocumented except for the occasional insightful forum post from Marmalade staff.)
Edit: It's worth mentioning that Marmalade also supports other platforms (although they're not nearly as popular as x86 and ARM); their preprocessor definitions are: I3D_ARCH_AMD64, I3D_ARCH_MIPS, I3D_ARCH_PS3, I3D_ARCH_X360, and I3D_ARCH_PSP. I've never worked with any of those other platforms. The full list of symbols can be seen in the "temp_defines_debug.h" file that Marmalade's makefile_builder creates during the build process.
Edit 2: Upon looking at that file further, I see that you could also detect the Marmalade platform by looking for "IW_SDK", "__S3E__", or any number of other definitions. Check out this copy of an example temp_defines_debug.h file to see.
Braden MMember Since 29 Nov 2012
Offline Last Active Apr 02 2013 10:32 AM
- Group Members
- Active Posts 6
- Profile Views 498
- Submitted Links 0
- Member Title Member
- Age Age Unknown
- Birthday Birthday Unknown