fpc/rtl
2023-11-18 22:47:47 +01:00
..
aarch64 * fix #40421: implement assembly variants of the SwapEndian functions for Aarch64 2023-09-08 15:03:51 +02:00
aix * Regen Makefiles with correct defines for some lineinfo units 2023-11-08 18:15:52 +01:00
amicommon * Add delphi-compatible observers to classes 2023-11-08 00:04:18 +01:00
amiga * Regen Makefiles with correct defines for some lineinfo units 2023-11-08 18:15:52 +01:00
android * Regen Makefiles with correct defines for some lineinfo units 2023-11-08 18:15:52 +01:00
arm * Dotted RTL compiles 2023-07-27 19:04:03 +02:00
aros * Regen Makefiles with correct defines for some lineinfo units 2023-11-08 18:15:52 +01:00
atari * Regen Makefiles with correct defines for some lineinfo units 2023-11-08 18:15:52 +01:00
avr * Dotted RTL compiles 2023-07-27 19:04:03 +02:00
beos * Regen Makefiles with correct defines for some lineinfo units 2023-11-08 18:15:52 +01:00
bsd * Dotted RTL compiles 2023-07-27 19:04:03 +02:00
charmaps * Dotted RTL compiles 2023-07-27 19:04:03 +02:00
darwin * Regen Makefiles with correct defines for some lineinfo units 2023-11-08 18:15:52 +01:00
dragonfly * Regen Makefiles with correct defines for some lineinfo units 2023-11-08 18:15:52 +01:00
embedded RP2040 support based on modification by Michael Ring (https://github.com/michael-ring/freepascal). 2023-11-11 17:45:23 +00:00
emx * Regen Makefiles with correct defines for some lineinfo units 2023-11-08 18:15:52 +01:00
freebsd * Add pthread_mutex_timedlock, sem_timedwait may be needed in future 2023-11-10 14:13:23 +01:00
freertos * Regen Makefiles with correct defines for some lineinfo units 2023-11-08 18:15:52 +01:00
gba * Regen Makefiles with correct defines for some lineinfo units 2023-11-08 18:15:52 +01:00
go32v2 * Regen Makefiles with correct defines for some lineinfo units 2023-11-08 18:15:52 +01:00
haiku * Regen Makefiles with correct defines for some lineinfo units 2023-11-08 18:15:52 +01:00
i386 * detect avx support also in the i386 system unit 2023-11-18 22:47:47 +01:00
i8086 * Dotted RTL compiles 2023-07-27 19:04:03 +02:00
inc * Regen Makefiles with correct defines for some lineinfo units 2023-11-08 18:15:52 +01:00
java * Regen Makefiles with correct defines for some lineinfo units 2023-11-08 18:15:52 +01:00
jvm * Char -> AnsiChar 2023-07-14 17:26:10 +02:00
linux * Add pthread_mutex_timedlock, sem_timedwait may be needed in future 2023-11-10 14:13:23 +01:00
loongarch64 Applied fix for binutils 2.41 for loongarch64 suggested by Jinyang He 2023-08-11 08:58:40 +00:00
m68k FPU exception mask: generlised system unit interface 2022-10-17 19:43:01 +00:00
macos * Regen Makefiles with correct defines for some lineinfo units 2023-11-08 18:15:52 +01: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
mipsel
morphos * Regen Makefiles with correct defines for some lineinfo units 2023-11-08 18:15:52 +01:00
msdos * Regen Makefiles with correct defines for some lineinfo units 2023-11-08 18:15:52 +01:00
msxdos * Regen Makefiles with correct defines for some lineinfo units 2023-11-08 18:15:52 +01:00
namespaced Remove unwanted space in EmbeddedApi.sc32442b.pp name 2023-08-09 00:33:15 +02:00
nativent * Regen Makefiles with correct defines for some lineinfo units 2023-11-08 18:15:52 +01:00
nds * Regen Makefiles with correct defines for some lineinfo units 2023-11-08 18:15:52 +01:00
netbsd * Regen Makefiles with correct defines for some lineinfo units 2023-11-08 18:15:52 +01:00
netware * Regen Makefiles with correct defines for some lineinfo units 2023-11-08 18:15:52 +01:00
netwlibc * Regen Makefiles with correct defines for some lineinfo units 2023-11-08 18:15:52 +01:00
objpas * Add unicode AnsiLastChar overload 2023-11-14 10:26:49 +01:00
openbsd * Regen Makefiles with correct defines for some lineinfo units 2023-11-08 18:15:52 +01:00
os2 * Regen Makefiles with correct defines for some lineinfo units 2023-11-08 18:15:52 +01:00
palmos * Regen Makefiles with correct defines for some lineinfo units 2023-11-08 18:15:52 +01:00
powerpc * string -> shortstring 2023-07-14 17:26:11 +02:00
powerpc64 * string -> shortstring 2023-07-14 17:26:11 +02:00
ppcgen AIX: fix inverted fpu exception masking 2023-01-20 21:59:57 +01:00
qnx Remove OS specific SYSTEMUNIT variable setting 2023-10-09 01:02:28 +02:00
riscv FPU exception mask: generlised system unit interface 2022-10-17 19:43:01 +00:00
riscv32 Added changes that didn't commit in merge 427 2023-08-28 22:14:46 +02:00
riscv64 FPU exception mask: generlised system unit interface 2022-10-17 19:43:01 +00:00
sinclairql * Regen Makefiles with correct defines for some lineinfo units 2023-11-08 18:15:52 +01:00
solaris * Regen Makefiles with correct defines for some lineinfo units 2023-11-08 18:15:52 +01: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 * Regen Makefiles with correct defines for some lineinfo units 2023-11-08 18:15:52 +01:00
ucmaps
unix * Add delphi-compatible observers to classes 2023-11-08 00:04:18 +01:00
wasi * Regen Makefiles with correct defines for some lineinfo units 2023-11-08 18:15:52 +01:00
wasm32 * Dotted RTL compiles 2023-07-27 19:04:03 +02:00
watcom * Regen Makefiles with correct defines for some lineinfo units 2023-11-08 18:15:52 +01:00
wii * Regen Makefiles with correct defines for some lineinfo units 2023-11-08 18:15:52 +01:00
win * add pointer variant fo createconsolescreenbuffer, move old VAR definition to redef for compat. 2023-11-09 14:17:14 +01:00
win16 * Regen Makefiles with correct defines for some lineinfo units 2023-11-08 18:15:52 +01:00
win32 * Regen Makefiles with correct defines for some lineinfo units 2023-11-08 18:15:52 +01:00
win64 * Regen Makefiles with correct defines for some lineinfo units 2023-11-08 18:15:52 +01:00
wince * Regen Makefiles with correct defines for some lineinfo units 2023-11-08 18:15:52 +01:00
x86_64 + centralized cpu capability detection 2023-11-18 22:28:50 +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 * Regen Makefiles with correct defines for some lineinfo units 2023-11-08 18:15:52 +01:00
COPYING.FPC
COPYING.txt
fpmake.inc
fpmake.pp
Makefile * Fixes based on feedback of team, fixes issue #40368 2023-07-30 11:19:47 +02:00
Makefile.fpc
README.txt
regenmakefiles.sh Handle path conversion using cygpath utility on Cygwin system 2023-08-02 09:16:42 +02: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.