Difference between revisions of "Platform defines"

From Free Pascal wiki
Jump to navigationJump to search
Line 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 wan't 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.
+
* 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

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)