Difference between revisions of "Platform defines"
From Free Pascal wiki
Jump to navigationJump to searchLine 4: | Line 4: | ||
* http://www.stack.nl/~marcov/buildfaq.pdf - general building guidelines | * http://www.stack.nl/~marcov/buildfaq.pdf - general building guidelines | ||
* http://www.stack.nl/~marcov/porting.pdf - general porting 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 | + | * 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== | ==Architecture defines== |
Revision as of 15:06, 12 June 2009
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) |