fpc/rtl
2025-02-28 15:12:19 +02:00
..
aarch64 * 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
aix * update makefiles 2025-02-28 15:12:19 +02:00
amicommon
amiga * update makefiles 2025-02-28 15:12:19 +02:00
android * update makefiles 2025-02-28 15:12:19 +02:00
arm * apply patch by Michael Ring to fix compilation for ARM THUMB 2025-01-09 07:39:18 +01:00
aros * update makefiles 2025-02-28 15:12:19 +02:00
atari * update makefiles 2025-02-28 15:12:19 +02: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 * update makefiles 2025-02-28 15:12:19 +02:00
bsd
charmaps
darwin * update makefiles 2025-02-28 15:12:19 +02:00
dragonfly * update makefiles 2025-02-28 15:12:19 +02:00
embedded * update makefiles 2025-02-28 15:12:19 +02:00
emx * update makefiles 2025-02-28 15:12:19 +02:00
freebsd * update makefiles 2025-02-28 15:12:19 +02:00
freertos * update makefiles 2025-02-28 15:12:19 +02:00
gba * update makefiles 2025-02-28 15:12:19 +02:00
go32v2 * update makefiles 2025-02-28 15:12:19 +02:00
haiku * update makefiles 2025-02-28 15:12:19 +02:00
human68k * update makefiles 2025-02-28 15:12:19 +02:00
i386 Check for refcount = 1 first. 2025-02-16 15:17:48 +03: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 Check for refcount = 1 first. 2025-02-16 15:17:48 +03:00
java * update makefiles 2025-02-28 15:12:19 +02:00
jvm
linux * update makefiles 2025-02-28 15:12:19 +02: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 * update makefiles 2025-02-28 15:12:19 +02:00
mips Fix compilation of rtl for mipsel-ps1 target 2025-02-26 08:16:15 +00:00
mips64
mips64el
mipsel
morphos * update makefiles 2025-02-28 15:12:19 +02:00
msdos * update makefiles 2025-02-28 15:12:19 +02:00
msxdos * update makefiles 2025-02-28 15:12:19 +02:00
namespaced
nativent * update makefiles 2025-02-28 15:12:19 +02:00
nds * update makefiles 2025-02-28 15:12:19 +02:00
netbsd * update makefiles 2025-02-28 15:12:19 +02:00
netware * update makefiles 2025-02-28 15:12:19 +02:00
netwlibc * update makefiles 2025-02-28 15:12:19 +02:00
objpas * IInterfaceListEx 2025-02-27 17:36:43 +01:00
openbsd * update makefiles 2025-02-28 15:12:19 +02:00
os2 * update makefiles 2025-02-28 15:12:19 +02:00
palmos * update makefiles 2025-02-28 15:12:19 +02: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 * update makefiles 2025-02-28 15:12:19 +02:00
qnx * update makefiles 2025-02-28 15:12:19 +02:00
riscv * cleanup 2025-01-30 22:49:29 +01:00
riscv32 * cleanup 2025-01-30 22:49:29 +01:00
riscv64 + RiscV64: make use of rev8 instruction 2025-02-13 22:44:44 +01:00
sinclairql * update makefiles 2025-02-28 15:12:19 +02:00
solaris * update makefiles 2025-02-28 15:12:19 +02: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 * update makefiles 2025-02-28 15:12:19 +02:00
ucmaps
unix * Extend GetLocalTimeOffset to return Dst or not 2025-02-19 17:31:01 +01:00
wasip1 * update makefiles 2025-02-28 15:12:19 +02:00
wasm32 + added function fpc_wasm_invoke_helper to the WebAssembly RTL 2025-01-25 08:21:56 +02:00
watcom * update makefiles 2025-02-28 15:12:19 +02:00
wii * update makefiles 2025-02-28 15:12:19 +02:00
win * Extend GetLocalTimeOffset to return Dst or not 2025-02-19 17:31:01 +01:00
win16 * update makefiles 2025-02-28 15:12:19 +02:00
win32 * update makefiles 2025-02-28 15:12:19 +02:00
win64 * update makefiles 2025-02-28 15:12:19 +02:00
wince * update makefiles 2025-02-28 15:12:19 +02:00
x86_64 Shorten i386 and x86-64 atomic implementations to offset the LoC cost of the previous commit. 2024-12-19 19:42:25 +00: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 * update makefiles 2025-02-28 15:12:19 +02:00
COPYING.FPC
COPYING.txt
fpmake.inc
fpmake.pp
Makefile * update makefiles 2025-02-28 15:12:19 +02:00
Makefile.fpc * update makefiles 2025-02-28 15:12:19 +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.