Difference between revisions of "Platform defines"
From Free Pascal wiki
Jump to navigationJump to searchLine 44: | Line 44: | ||
|GO32V2|| MSDos (using go32v2 extender) | |GO32V2|| MSDos (using go32v2 extender) | ||
|} | |} | ||
+ | |||
+ | == See also == | ||
+ | * http://delphi.wikia.com/wiki/FreePascal_detection_and_versioning |
Revision as of 14:49, 11 October 2013
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 want to provide a spare field (like tag in Tcomponent) that may be used to store a pointer use ptrint as signed type, or better ptruint as unsigned type.
Architecture defines
define(s) | meaning |
---|---|
General | |
ENDIAN_BIG | big endian |
ENDIAN_LITTLE | little endian |
Specific | |
CPU386,i386 | 386 and compatible (32 bit PC) |
Operating system defines
define(s) | meaning |
---|---|
General | |
BSD | *BSD and Darwin |
UNIX | any UNIX or UNIX-like system. |
MSWINDOWS | all variants of windows |
Specific | |
LINUX | linux |
WIN32 | 32 bit windows |
WIN64 | 64 bit windows |
GO32V2 | MSDos (using go32v2 extender) |