Difference between revisions of "Platform defines"
From Free Pascal wiki
Jump to navigationJump to searchLine 25: | Line 25: | ||
|- | |- | ||
!colspan=2!General | !colspan=2!General | ||
+ | |- | ||
+ | |BSD||*BSD and Darwin | ||
|- | |- | ||
|UNIX||any UNIX or UNIX-like system. | |UNIX||any UNIX or UNIX-like system. | ||
Line 37: | Line 39: | ||
|- | |- | ||
|WIN64||64 bit windows | |WIN64||64 bit windows | ||
+ | |- | ||
+ | |GO32V2|| MSDos (using go32v2 extender) | ||
|} | |} |
Revision as of 23:08, 19 June 2006
note: the tables in this article may not be complete
Useful tips before using platform defines
- http://www.stack.nl/~marcov/buildfaq.pdf - general building guidelines
- http://www.stack.nl/~marcov/porting.pdf - general porting guidelines
- if you need to cast a pointer to an integer for arithmetic or you wan't to provide a spare field (like tag in Tcomponent) that may be used to store a pointer use ptrint.
Architecture defines
define(s) | meaning |
---|---|
colspan=2!General | |
ENDIAN_BIG | big endian |
ENDIAN_LITTLE | little endian |
CPU386,i386 | 386 and compatible (32 bit PC) |
Operating system defines
define(s) | meaning |
---|---|
colspan=2!General | |
BSD | *BSD and Darwin |
UNIX | any UNIX or UNIX-like system. |
MSWINDOWS | all variants of windows |
colspan=2!Specific | |
LINUX | linux |
WIN32 | 32 bit windows |
WIN64 | 64 bit windows |
GO32V2 | MSDos (using go32v2 extender) |