fpc/rtl
2025-04-03 17:12:20 +02:00
..
aarch64 + Aarch64: UMul64x64_128 assembler implementation 2025-03-16 10:33:03 +01:00
aix Revert "Add missing dependency on types unit for math unit" 2025-04-03 12:07:18 +00:00
amicommon
amiga Revert "Add missing dependency on types unit for math unit" 2025-04-03 12:07:18 +00:00
android Revert "Add missing dependency on types unit for math unit" 2025-04-03 12:07:18 +00:00
arm * apply patch by Michael Ring to fix compilation for ARM THUMB 2025-01-09 07:39:18 +01:00
aros Revert "Add missing dependency on types unit for math unit" 2025-04-03 12:07:18 +00:00
atari Revert "Add missing dependency on types unit for math unit" 2025-04-03 12:07:18 +00:00
avr * with all existing RTLs switched over to the atomic intrinsics, the define FPC_SYSTEM_INTERLOCKED_USE_INTRIN can be removed again 2024-12-12 22:05:20 +01:00
beos Revert "Add missing dependency on types unit for math unit" 2025-04-03 12:07:18 +00:00
bsd + implement System.CPUCount on darwin, resolves #41187 2025-03-15 11:58:45 +01:00
charmaps
darwin Revert "Add missing dependency on types unit for math unit" 2025-04-03 12:07:18 +00:00
dragonfly Revert "Add missing dependency on types unit for math unit" 2025-04-03 12:07:18 +00:00
embedded Revert "Add missing dependency on types unit for math unit" 2025-04-03 12:07:18 +00:00
emx Revert "Add missing dependency on types unit for math unit" 2025-04-03 12:07:18 +00:00
freebsd Revert "Add missing dependency on types unit for math unit" 2025-04-03 12:07:18 +00:00
freertos Revert "Add missing dependency on types unit for math unit" 2025-04-03 12:07:18 +00:00
gba Revert "Add missing dependency on types unit for math unit" 2025-04-03 12:07:18 +00:00
go32v2 Revert "Add missing dependency on types unit for math unit" 2025-04-03 12:07:18 +00:00
haiku Revert "Add missing dependency on types unit for math unit" 2025-04-03 12:07:18 +00:00
human68k Revert "Add missing dependency on types unit for math unit" 2025-04-03 12:07:18 +00:00
i386 Shortcut Compare*(a, a) before entering the aligned loop. 2025-03-29 22:07:03 +01:00
i8086 * with all existing RTLs switched over to the atomic intrinsics, the define FPC_SYSTEM_INTERLOCKED_USE_INTRIN can be removed again 2024-12-12 22:05:20 +01:00
inc Revert "Add missing dependency on types unit for math unit" 2025-04-03 12:07:18 +00:00
java Revert "Add missing dependency on types unit for math unit" 2025-04-03 12:07:18 +00:00
jvm
linux Revert "Add missing dependency on types unit for math unit" 2025-04-03 12:07:18 +00:00
loongarch64 * with all existing RTLs switched over to the atomic intrinsics, the define FPC_SYSTEM_INTERLOCKED_USE_INTRIN can be removed again 2024-12-12 22:05:20 +01:00
m68k * with all existing RTLs switched over to the atomic intrinsics, the define FPC_SYSTEM_INTERLOCKED_USE_INTRIN can be removed again 2024-12-12 22:05:20 +01:00
macos Revert "Add missing dependency on types unit for math unit" 2025-04-03 12:07:18 +00:00
mips Fix compilation of mips-linux rtl using 3.2.X compiler 2025-03-10 21:01:54 +00:00
mips64
mips64el
mipsel
morphos Revert "Add missing dependency on types unit for math unit" 2025-04-03 12:07:18 +00:00
msdos Revert "Add missing dependency on types unit for math unit" 2025-04-03 12:07:18 +00:00
msxdos Revert "Add missing dependency on types unit for math unit" 2025-04-03 12:07:18 +00:00
namespaced
nativent Revert "Add missing dependency on types unit for math unit" 2025-04-03 12:07:18 +00:00
nds Revert "Add missing dependency on types unit for math unit" 2025-04-03 12:07:18 +00:00
netbsd Revert "Add missing dependency on types unit for math unit" 2025-04-03 12:07:18 +00:00
netware Revert "Add missing dependency on types unit for math unit" 2025-04-03 12:07:18 +00:00
netwlibc Revert "Add missing dependency on types unit for math unit" 2025-04-03 12:07:18 +00:00
objpas const for TFormatSettings 2025-03-09 14:53:24 +00:00
openbsd Revert "Add missing dependency on types unit for math unit" 2025-04-03 12:07:18 +00:00
os2 Revert "Add missing dependency on types unit for math unit" 2025-04-03 12:07:18 +00:00
palmos Revert "Add missing dependency on types unit for math unit" 2025-04-03 12:07:18 +00:00
powerpc * with all existing RTLs switched over to the atomic intrinsics, the define FPC_SYSTEM_INTERLOCKED_USE_INTRIN can be removed again 2024-12-12 22:05:20 +01:00
powerpc64 * with all existing RTLs switched over to the atomic intrinsics, the define FPC_SYSTEM_INTERLOCKED_USE_INTRIN can be removed again 2024-12-12 22:05:20 +01:00
ppcgen
ps1 Revert "Add missing dependency on types unit for math unit" 2025-04-03 12:07:18 +00:00
qnx * regen makefiles 2025-03-10 22:39:51 +02:00
riscv * cleanup 2025-01-30 22:49:29 +01:00
riscv32 * cleanup 2025-01-30 22:49:29 +01:00
riscv64 + RiscV: UMul64x64_128 assembler implementation 2025-03-15 23:10:48 +01:00
sinclairql Revert "Add missing dependency on types unit for math unit" 2025-04-03 12:07:18 +00:00
solaris Revert "Add missing dependency on types unit for math unit" 2025-04-03 12:07:18 +00:00
sparc * with all existing RTLs switched over to the atomic intrinsics, the define FPC_SYSTEM_INTERLOCKED_USE_INTRIN can be removed again 2024-12-12 22:05:20 +01:00
sparc64 * with all existing RTLs switched over to the atomic intrinsics, the define FPC_SYSTEM_INTERLOCKED_USE_INTRIN can be removed again 2024-12-12 22:05:20 +01:00
symbian Revert "Add missing dependency on types unit for math unit" 2025-04-03 12:07:18 +00:00
ucmaps
unix * Extend GetLocalTimeOffset to return Dst or not 2025-02-19 17:31:01 +01:00
wasicommon * Wake main thread when a thread is auto freed 2025-04-03 17:12:20 +02:00
wasip1 Revert "Add missing dependency on types unit for math unit" 2025-04-03 12:07:18 +00:00
wasip1threads Revert "Add missing dependency on types unit for math unit" 2025-04-03 12:07:18 +00:00
wasip2 Revert "Add missing dependency on types unit for math unit" 2025-04-03 12:07:18 +00:00
wasm32 + added function fpc_wasm_invoke_helper to the WebAssembly RTL 2025-01-25 08:21:56 +02:00
watcom Revert "Add missing dependency on types unit for math unit" 2025-04-03 12:07:18 +00:00
wii Revert "Add missing dependency on types unit for math unit" 2025-04-03 12:07:18 +00:00
win * Extend GetLocalTimeOffset to return Dst or not 2025-02-19 17:31:01 +01:00
win16 Revert "Add missing dependency on types unit for math unit" 2025-04-03 12:07:18 +00:00
win32 Revert "Add missing dependency on types unit for math unit" 2025-04-03 12:07:18 +00:00
win64 Revert "Add missing dependency on types unit for math unit" 2025-04-03 12:07:18 +00:00
wince Revert "Add missing dependency on types unit for math unit" 2025-04-03 12:07:18 +00:00
x86_64 Shortcut Compare*(a, a) before entering the aligned loop. 2025-03-29 22:07:03 +01:00
xtensa * with all existing RTLs switched over to the atomic intrinsics, the define FPC_SYSTEM_INTERLOCKED_USE_INTRIN can be removed again 2024-12-12 22:05:20 +01:00
z80 * with all existing RTLs switched over to the atomic intrinsics, the define FPC_SYSTEM_INTERLOCKED_USE_INTRIN can be removed again 2024-12-12 22:05:20 +01:00
zxspectrum Revert "Add missing dependency on types unit for math unit" 2025-04-03 12:07:18 +00:00
COPYING.FPC
COPYING.txt
fpmake.inc
fpmake.pp
Makefile + initial wasip2 rtl, most things are not implemented 2025-03-10 23:30:11 +02:00
Makefile.fpc + initial wasip2 rtl, most things are not implemented 2025-03-10 23:30:11 +02:00
README.txt
regenmakefiles.bat
regenmakefiles.sh

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.