Subsections
B. Compiler and RTL source tree structure
All compiler source files are in several directories, normally the
non-processor specific parts are in source/compiler. Subdirectories
are present for each of the supported processors and target operating systems.
For more informations about the structure of the compiler have a look at the
Compiler Manual which contains also some informations about
compiler internals.
The compiler directory also contains a subdirectory utils,
which contains mainly the utilities for creation and maintainance of the
message files.
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:
- atari for the ATARI.
- amiga for the AMIGA.
- beos for . It has one subdirectory for each of the
supported processors.
- freebsd for the FREEBSD platform.
- go32v1 For DOS, using the GO32v1 extender. Not maintained any
more.
- go32v2 For DOS, using the GO32v2 extender.
- linux for LINUX platforms. It has one subdirectory for each of the supported
processors.
- netbsd for platforms. It has one subdirectory for each of the supported
processors.
- palmos for the Dragonball processor based platform.
- os2 for OS/2.
- sunos for the platform. It has one subdirectory for each of the supported
processors.
- qnx for the .
- win32 for Win32 platforms.
- posix for posix interfaces (used for easier porting).
- unix for unix common 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:
- i386 for the Intel 80x86 series of processors.
- m68k for the Motorola 680x0 series of processors.
- 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.
Free Pascal Compiler
2001-09-22