fpc/rtl
2018-07-06 09:06:19 +00:00
..
aarch64 * cpu specific header file for the system unit: cpuh.inc, moved several declarations into it 2017-11-01 16:33:30 +00:00
aix * updated dependencies of unit ports (objpas and x86 is no longer required on 2018-07-04 00:33:12 +00:00
amicommon athreads: add a custom API to retrieve underlying process ID from AThreads. this makes it possible to combine some Amiga API features like Signaling with FPC's thread handling 2018-04-26 11:28:38 +00:00
amiga * updated dependencies of unit ports (objpas and x86 is no longer required on 2018-07-04 00:33:12 +00:00
android * updated dependencies of unit ports (objpas and x86 is no longer required on 2018-07-04 00:33:12 +00:00
arm * cpu specific header file for the system unit: cpuh.inc, moved several declarations into it 2017-11-01 16:33:30 +00:00
aros * updated dependencies of unit ports (objpas and x86 is no longer required on 2018-07-04 00:33:12 +00:00
atari * updated dependencies of unit ports (objpas and x86 is no longer required on 2018-07-04 00:33:12 +00:00
avr + implemented some AVR specific intrinsics 2017-11-01 16:33:34 +00:00
beos * updated dependencies of unit ports (objpas and x86 is no longer required on 2018-07-04 00:33:12 +00:00
bsd * fixes sysctl also with 3.0.4 as starting compiler. 2018-02-16 17:58:20 +00:00
charmaps + support the KOI8-R and KOI8-U Cyrillic encodings 2017-06-07 13:51:53 +00:00
darwin * updated dependencies of unit ports (objpas and x86 is no longer required on 2018-07-04 00:33:12 +00:00
dragonfly * updated dependencies of unit ports (objpas and x86 is no longer required on 2018-07-04 00:33:12 +00:00
embedded * updated dependencies of unit ports (objpas and x86 is no longer required on 2018-07-04 00:33:12 +00:00
emx * updated dependencies of unit ports (objpas and x86 is no longer required on 2018-07-04 00:33:12 +00:00
freebsd Add --32 or --64 to GNU assembler call for i386 or x86_64 cpu 2018-07-06 09:06:19 +00:00
gba * updated dependencies of unit ports (objpas and x86 is no longer required on 2018-07-04 00:33:12 +00:00
go32v2 + use the new cli/sti intrinsics in go32.enable and go32.disable 2018-07-04 17:02:07 +00:00
haiku * updated dependencies of unit ports (objpas and x86 is no longer required on 2018-07-04 00:33:12 +00:00
i386 + added x86 compiler intrinsics fpc_x86_sti and fpc_x86_cli, which generate the 2018-07-04 16:48:34 +00:00
i8086 + added x86 compiler intrinsics fpc_x86_sti and fpc_x86_cli, which generate the 2018-07-04 16:48:34 +00:00
inc * moved the fpc_in_x86_*port* constants to the system unit in cpuinnr.inc in the 2018-07-03 21:30:43 +00:00
java * updated dependencies of unit ports (objpas and x86 is no longer required on 2018-07-04 00:33:12 +00:00
jvm * cpu specific header file for the system unit: cpuh.inc, moved several declarations into it 2017-11-01 16:33:30 +00:00
linux * updated dependencies of unit ports (objpas and x86 is no longer required on 2018-07-04 00:33:12 +00:00
m68k m68k: on setjmp/longjmp also save/restore the FPCR register when FPU support is enabled 2018-03-13 23:44:54 +00:00
macos * target classic MacOS builds again 2018-05-31 19:31:36 +00:00
mips * cpu specific header file for the system unit: cpuh.inc, moved several declarations into it 2017-11-01 16:33:30 +00:00
mipsel * cpu specific header file for the system unit: cpuh.inc, moved several declarations into it 2017-11-01 16:33:30 +00:00
morphos * updated dependencies of unit ports (objpas and x86 is no longer required on 2018-07-04 00:33:12 +00:00
msdos * updated dependencies of unit ports (objpas and x86 is no longer required on 2018-07-04 00:33:12 +00:00
nativent * updated dependencies of unit ports (objpas and x86 is no longer required on 2018-07-04 00:33:12 +00:00
nds * updated dependencies of unit ports (objpas and x86 is no longer required on 2018-07-04 00:33:12 +00:00
netbsd * updated dependencies of unit ports (objpas and x86 is no longer required on 2018-07-04 00:33:12 +00:00
netware * updated dependencies of unit ports (objpas and x86 is no longer required on 2018-07-04 00:33:12 +00:00
netwlibc * updated dependencies of unit ports (objpas and x86 is no longer required on 2018-07-04 00:33:12 +00:00
objpas * Actually observe TStringStream.OwnsEncoding in destructor 2018-07-04 11:03:21 +00:00
openbsd * updated dependencies of unit ports (objpas and x86 is no longer required on 2018-07-04 00:33:12 +00:00
os2 * updated dependencies of unit ports (objpas and x86 is no longer required on 2018-07-04 00:33:12 +00:00
palmos * updated dependencies of unit ports (objpas and x86 is no longer required on 2018-07-04 00:33:12 +00:00
powerpc Disable dcbz code for AIX also 2018-05-11 15:49:35 +00:00
powerpc64 * cpu specific header file for the system unit: cpuh.inc, moved several declarations into it 2017-11-01 16:33:30 +00:00
qnx Add explicit FPC_SYSTEM_OPT variable that is only used for compilation of system units, thus allowing to explicitly pass -Sf option 2018-01-02 16:50:58 +00:00
solaris * updated dependencies of unit ports (objpas and x86 is no longer required on 2018-07-04 00:33:12 +00:00
sparc * cpu specific header file for the system unit: cpuh.inc, moved several declarations into it 2017-11-01 16:33:30 +00:00
sparc64 * cpu specific header file for the system unit: cpuh.inc, moved several declarations into it 2017-11-01 16:33:30 +00:00
symbian * updated dependencies of unit ports (objpas and x86 is no longer required on 2018-07-04 00:33:12 +00:00
ucmaps + support the KOI8-R and KOI8-U Cyrillic encodings 2017-06-07 13:51:53 +00:00
unix + use the x86 inline intrinsics for port access in the unix ports unit as well 2018-07-04 00:17:18 +00:00
watcom * updated dependencies of unit ports (objpas and x86 is no longer required on 2018-07-04 00:33:12 +00:00
wii * updated dependencies of unit ports (objpas and x86 is no longer required on 2018-07-04 00:33:12 +00:00
win * consistent naming of lData field in NEWCPLINFO 2018-04-06 09:59:22 +00:00
win16 * updated dependencies of unit ports (objpas and x86 is no longer required on 2018-07-04 00:33:12 +00:00
win32 * updated dependencies of unit ports (objpas and x86 is no longer required on 2018-07-04 00:33:12 +00:00
win64 * updated dependencies of unit ports (objpas and x86 is no longer required on 2018-07-04 00:33:12 +00:00
wince * updated dependencies of unit ports (objpas and x86 is no longer required on 2018-07-04 00:33:12 +00:00
x86_64 + added x86 compiler intrinsics fpc_x86_sti and fpc_x86_cli, which generate the 2018-07-04 16:48:34 +00:00
COPYING.FPC
COPYING.txt
fpmake.inc
fpmake.pp
Makefile * updated dependencies of unit ports (objpas and x86 is no longer required on 2018-07-04 00:33:12 +00:00
Makefile.fpc Add missing watcom directory entry 2017-09-25 21:06:42 +00:00
README.txt rtl: removed the long obsolete README section mentioning FPC 1.0 2018-02-12 10:58:54 +00:00

This is the Run-Time Library (RTL) tree for Free Pascal.

To recompile the RTL, edit the main makefile. The makefiles NEED a GNU make
compatible make, they need unix-like 'rm' and 'mv' commands, as well as some
others. You can find these in the gnuutils package on the ftp site.

The main makefile is located ABOVE the RTL tree. It uses the FPC
makefile.fpc to guess reasonable defaults for everything it needs.
(these files can be found in base.zip on the FTP site)

The only variable that you may want to set are
FPC             - What compiler to use. Use an absolute path. 
                  (default is ppc386)
INSTALL_UNITDIR - Where to install the RTL units 
OPT             - any special options you want to set for the compiler.

In principle, you can also descend into the subdirectory of your OS, and
type 'make' there, that should also compile everything.

The tree contains subdirectories for all the supported operating systems,
as well as all processor architectures. The processor directories contain
low-level routines which are required for the system unit (if they are not 
available in high-level language form), as well as optimized versions of
the pascal generic routines (the generic routine source code is localed in
the inc subdirectory).

Enjoy.