Main Page | Modules | Namespace List | Class Hierarchy | Alphabetical List | Class List | File List | Class Members | File Members | Related Pages

Main Platforms

The main platforms we discriminate between are with the defines:

The testing and definition of these defines is in oofplat.h or you can define them in your makefile or IDE project to force a given platform, if OOFILE is not smart enough to infer it from the compiler's predefined macros.

Darwin

A Darwin build is a pure Unix build in terms of API's and file includes (the makefile may have different include paths to other FreeBSD builds but the source code should be kept in ignorance. Hence, it has _Unix defined.

OS/X

Whilst OS/X is built on a Unix core, you can target it with CFM or Mach-O projects so our current solution is to recognise it is a _Macintosh build but additionally define _Macintosh_OSX where finer platform-sensitivity is required for file handling issues.

Carbon

People may want to build an OOFILE application which targets the Carbon API's so it will work on both OS/X and OS 8.6 onwards with Carbon installed. This only affects a small number of includes and typedefs but is a necessary distinction because a Carbon build running on classic OS will NOT have the Unix file API's available. You can define, or leave to OOFILE to work out that it should define _Macintosh_Carbon.
Note:
If _Macintosh_OSX is defined then _Macintosh_Carbon is defined automatically.

Windows CE

Windows CE is a subset of the Win32 API with few differences as far as OOFILE is concerned. We therefore treat it as the same platform and just use _Windows_CE where necessary
Generated on Thu Jan 1 22:10:51 2004 for OOFILE by doxygen 1.3.5