fpc/rtl
2022-11-17 23:11:23 +01:00
..
aarch64 FPU exception mask: generlised system unit interface 2022-10-17 19:43:01 +00:00
aix FPU exception mask: generlised system unit interface 2022-10-17 19:43:01 +00:00
amicommon m68k-amiga: print offsets during stacktraces, instead of absolute addresses, which are not really helpful in a single address space 2022-08-26 18:42:24 +02:00
amiga powerpc-amiga: fix build after ecbd5840 2022-08-26 20:29:53 +02:00
android * regenerate makefiles with latest fpcmake 2022-05-24 14:01:59 +03:00
arm Thumb(2): fix compilation after FPU control word changes 2022-10-20 22:25:29 +02:00
aros AROS: Make sure opaque SMP extension is used for ABIv11 only 2022-06-26 19:03:18 +00:00
atari * fix missing ifdef for the non win32/64/unix targets. 2022-06-01 16:56:02 +02:00
avr Rewrite fpc_shortstr_concat_multi for AVR to not use a temporary shortstring to reduce RAM usage. 2022-10-19 20:18:56 +00:00
beos * fix missing ifdef for the non win32/64/unix targets. 2022-06-01 16:56:02 +02:00
bsd Darwin: use recent versions of stat(fs) records when available 2022-07-06 22:25:05 +02:00
charmaps
darwin Darwin/AArch64: future-proof version check 2022-10-23 22:25:29 +02:00
dragonfly Cleanup bsd and sysctl units make rules 2022-07-17 21:12:14 +00:00
embedded Split startup code into different .init sections according to avr-libs convention. 2022-06-29 20:25:21 +00:00
emx * regenerate makefiles with latest fpcmake 2022-05-24 14:01:59 +03:00
freebsd * fixed ambiguity between pipe(2) with two params and pipe(3) with one that broke -dFPC_USE_LIBC 2022-08-22 13:22:57 +02:00
freertos * fix missing ifdef for the non win32/64/unix targets. 2022-06-01 16:56:02 +02:00
gba * fix missing ifdef for the non win32/64/unix targets. 2022-06-01 16:56:02 +02:00
go32v2 * fix missing ifdef for the non win32/64/unix targets. 2022-06-01 16:56:02 +02:00
haiku * fix missing ifdef for the non win32/64/unix targets. 2022-06-01 16:56:02 +02:00
i386 * new cpu feature tests 2022-11-09 23:09:07 +01:00
i8086 FPU exception mask: generlised system unit interface 2022-10-17 19:43:01 +00:00
inc * first (modified, added a comment) patch by Rika to improve generic Index*, part of #39996 2022-11-17 23:11:23 +01:00
java FPU exception mask: generlised system unit interface 2022-10-17 19:43:01 +00:00
jvm FPU exception mask: generlised system unit interface 2022-10-17 19:43:01 +00:00
linux * Extra linux fcntl constants 2022-11-13 23:46:59 +01:00
m68k FPU exception mask: generlised system unit interface 2022-10-17 19:43:01 +00:00
macos * fix missing ifdef for the non win32/64/unix targets. 2022-06-01 16:56:02 +02:00
mips FPU exception mask: generlised system unit interface 2022-10-17 19:43:01 +00:00
mips64 FPU exception mask: generlised system unit interface 2022-10-17 19:43:01 +00:00
mips64el + some more cpu specfic files for mips64(el) 2022-05-25 22:41:22 +02:00
mipsel
morphos powerpc-morphos: enable 'section' keyword support, and force the startup code to be in the .text section, to fix linking external objects with unnamed sections on this platform 2022-08-27 19:19:42 +02:00
msdos * fix missing ifdef for the non win32/64/unix targets. 2022-06-01 16:56:02 +02:00
msxdos * regenerate makefiles with latest fpcmake 2022-05-24 14:01:59 +03:00
nativent * fix missing ifdef for the non win32/64/unix targets. 2022-06-01 16:56:02 +02:00
nds Fix compilation ofrtl/nds/classes.pp unit 2022-06-02 17:54:59 +00:00
netbsd Cleanup bsd and sysctl units make rules 2022-07-17 21:12:14 +00:00
netware * fix missing ifdef for the non win32/64/unix targets. 2022-06-01 16:56:02 +02:00
netwlibc * fix missing ifdef for the non win32/64/unix targets. 2022-06-01 16:56:02 +02:00
objpas * more robust calculation of TBITS_SHIFT 2022-11-06 22:33:38 +01:00
openbsd Cleanup bsd and sysctl units make rules 2022-07-17 21:12:14 +00:00
os2 * fix missing ifdef for the non win32/64/unix targets. 2022-06-01 16:56:02 +02:00
palmos * regenerate makefiles with latest fpcmake 2022-05-24 14:01:59 +03:00
powerpc FPU exception mask: generlised system unit interface 2022-10-17 19:43:01 +00:00
powerpc64 FPU exception mask: generlised system unit interface 2022-10-17 19:43:01 +00:00
ppcgen powerpc64le: fix reading FPU control word after 0758aa1143 2022-10-18 21:55:53 +02:00
qnx * regenerate makefiles with latest fpcmake 2022-05-24 14:01:59 +03:00
riscv FPU exception mask: generlised system unit interface 2022-10-17 19:43:01 +00:00
riscv32 FPU exception mask: generlised system unit interface 2022-10-17 19:43:01 +00:00
riscv64 FPU exception mask: generlised system unit interface 2022-10-17 19:43:01 +00:00
sinclairql * fix missing ifdef for the non win32/64/unix targets. 2022-06-01 16:56:02 +02:00
solaris * regenerate makefiles with latest fpcmake 2022-05-24 14:01:59 +03:00
sparc FPU exception mask: generlised system unit interface 2022-10-17 19:43:01 +00:00
sparc64 FPU exception mask: generlised system unit interface 2022-10-17 19:43:01 +00:00
symbian * fix missing ifdef for the non win32/64/unix targets. 2022-06-01 16:56:02 +02:00
ucmaps
unix * fixed ambiguity between pipe(2) with two params and pipe(3) with one that broke -dFPC_USE_LIBC 2022-08-22 13:22:57 +02:00
wasi + setup a thread manager (functions are still not yet implemented), when the WASI RTL is compiled with multithreading support 2022-07-14 05:14:20 +03:00
wasm32 FPU exception mask: generlised system unit interface 2022-10-17 19:43:01 +00:00
watcom * fix missing ifdef for the non win32/64/unix targets. 2022-06-01 16:56:02 +02:00
wii * fix missing ifdef for the non win32/64/unix targets. 2022-06-01 16:56:02 +02:00
win * getlongpath as per https://forum.lazarus.freepascal.org/index.php/topic,60972.0/topicseen.html 2022-11-10 10:42:11 +01:00
win16 * fix missing ifdef for the non win32/64/unix targets. 2022-06-01 16:56:02 +02:00
win32 * anonymous method overloads for synchronize/queue. 2022-06-01 13:54:06 +02:00
win64 * anonymous method overloads for synchronize/queue. 2022-06-01 13:54:06 +02:00
wince * fix missing ifdef for the non win32/64/unix targets. 2022-06-01 16:56:02 +02:00
x86_64 * new cpu feature tests 2022-11-09 23:09:07 +01:00
xtensa FPU exception mask: generlised system unit interface 2022-10-17 19:43:01 +00:00
z80 FPU exception mask: generlised system unit interface 2022-10-17 19:43:01 +00:00
zxspectrum
COPYING.FPC
COPYING.txt
fpmake.inc
fpmake.pp
Makefile
Makefile.fpc
README.txt

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.