The RTL source tree is divided in many subdirectories, but is very structured and easy to
understand. It mainly consists of three parts:
- A OS-dependent directory. This contains the files that are different for each operating
system. When compiling the RTL, you should do it here. The following directories
exist:
- amiga for the Amiga.
- atari for the Atari.
- beos for BeOS. It has one subdirectory for each of the supported processors.
- bsd Common files for the various BSD platforms.
- darwin for the unix-compatibility layer on Mac OS.
- embedded A template for embedded targets.
- emx OS/2 using the EMX extender.
- freebsd for the FreeBSD platform.
- gba Game Boy Advanced.
- go32v2 For dos, using the GO32v2 extender.
- linux for linux platforms. It has one subdirectory for each of the supported
processors.
- macos for the Mac OS platform.
- morphos for the MorphOS platform.
- nds for the Nintendo DS platform.
- netbsd for NetBSD platforms. It has one subdirectory for each of the supported
processors.
- netware for the Novell netware platform.
- netwlibc for the Novell netware platform using the C library.
- openbsd for the OpenBSD platform.
- os2 for os/2.
- palmos for the PalmOS Dragonball processor based platform.
- posix for posix interfaces (used for easier porting).
- solaris for the Solaris platform. It has one subdirectory for each of the supported
processors.
- symbian for the symbian mobile phone OS.
- qnx for the QNX Realtime platform.
- unix for unix common interfaces (used for easier porting).
- win32 for Windows 32-bit platforms.
- win64 for Windows 64-bit platforms.
- wince for the Windows CE embedded platform (arm CPU).
- posix for posix interfaces (used for easier porting).
- A processor dependent directory. This contains files that are system independent, but
processor dependent. It contains mostly optimized routines for a specific processor. The
following directories exist:
- arm for the ARM series of processors.
- i386 for the Intel 80x86 series of processors.
- m68k for the Motorola 680x0 series of processors.
- powerpc for the PowerPC processor.
- powerpc64 for the PowerPC 64-bit processor.
- sparc for the SUN SPARC processor.
- x86_64 for Intel compatible 64-bit processors such as the AMD64.
- An OS-independent and Processor independent directory: inc. This contains complete units,
and include files containing interface parts of units as well as generic versions of processor
specific routines.
- The Object Pascal extensions (mainly Delphi compatibility units) are in the objpas
directory. The sysutils and classes units are in separate subdirectories of the objpas
directory.