fpc/rtl
florian bed356b305 + basemath for aarch64
+ adapted darwin Makefile
2024-07-17 22:06:03 +02:00
..
aarch64 + basemath for aarch64 2024-07-17 22:06:03 +02:00
aix Merge branch 'main' into basemath 2024-07-15 20:00:14 +02:00
amicommon * Add delphi-compatible observers to classes 2023-11-08 00:04:18 +01:00
amiga Merge branch 'main' into basemath 2024-07-15 20:00:14 +02:00
android Merge branch 'main' into basemath 2024-07-15 20:00:14 +02:00
arm + basemath for arm 2024-07-16 22:28:16 +02:00
aros Merge branch 'main' into basemath 2024-07-15 20:00:14 +02:00
atari Merge branch 'main' into basemath 2024-07-15 20:00:14 +02:00
avr * Dotted RTL compiles 2023-07-27 19:04:03 +02:00
beos Merge branch 'main' into basemath 2024-07-15 20:00:14 +02:00
bsd * Allow to disable monitor 2024-06-18 14:51:34 +02:00
charmaps * Dotted RTL compiles 2023-07-27 19:04:03 +02:00
darwin + basemath for aarch64 2024-07-17 22:06:03 +02:00
dragonfly Merge branch 'main' into basemath 2024-07-15 20:00:14 +02:00
embedded Merge branch 'main' into basemath 2024-07-15 20:00:14 +02:00
emx Merge branch 'main' into basemath 2024-07-15 20:00:14 +02:00
freebsd Merge branch 'main' into basemath 2024-07-15 20:00:14 +02:00
freertos Merge branch 'main' into basemath 2024-07-15 20:00:14 +02:00
gba Merge branch 'main' into basemath 2024-07-15 20:00:14 +02:00
go32v2 Merge branch 'main' into basemath 2024-07-15 20:00:14 +02:00
haiku Merge branch 'main' into basemath 2024-07-15 20:00:14 +02:00
human68k Merge branch 'main' into basemath 2024-07-15 20:00:14 +02:00
i386 Merge branch 'main' into basemath 2024-07-15 20:03:48 +02:00
i8086 + basemath for i8086 2024-07-16 22:48:36 +02:00
inc Merge branch 'main' into basemath 2024-07-15 20:03:48 +02:00
java Merge branch 'main' into basemath 2024-07-15 20:00:14 +02:00
jvm * Char -> AnsiChar 2023-07-14 17:26:10 +02:00
linux Merge branch 'main' into basemath 2024-07-15 20:00:14 +02: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 Merge branch 'main' into basemath 2024-07-15 20:00:14 +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 Merge branch 'main' into basemath 2024-07-15 20:00:14 +02:00
msdos Merge branch 'main' into basemath 2024-07-15 20:00:14 +02:00
msxdos Merge branch 'main' into basemath 2024-07-15 20:00:14 +02:00
namespaced Merge branch 'main' into basemath 2024-07-15 20:00:14 +02:00
nativent Merge branch 'main' into basemath 2024-07-15 20:00:14 +02:00
nds Merge branch 'main' into basemath 2024-07-15 20:00:14 +02:00
netbsd Merge branch 'main' into basemath 2024-07-15 20:00:14 +02:00
netware Merge branch 'main' into basemath 2024-07-15 20:00:14 +02:00
netwlibc Merge branch 'main' into basemath 2024-07-15 20:00:14 +02:00
objpas Merge branch 'main' into basemath 2024-07-15 20:03:48 +02:00
openbsd Merge branch 'main' into basemath 2024-07-15 20:00:14 +02:00
os2 Merge branch 'main' into basemath 2024-07-15 20:00:14 +02:00
palmos Merge branch 'main' into basemath 2024-07-15 20:00:14 +02:00
powerpc + basemath support for powerpc 2024-07-15 20:13:42 +02:00
powerpc64 + basemath for powerpc64 2024-07-15 20:21:03 +02:00
ppcgen + basemath support for powerpc 2024-07-15 20:13:42 +02:00
qnx human68k: regenerated Makefiles 2023-11-30 23:43:27 +00: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 * rtl part of #35433 2024-05-01 23:15:12 +02:00
sinclairql Merge branch 'main' into basemath 2024-07-15 20:00:14 +02:00
solaris Merge branch 'main' into basemath 2024-07-15 20:00:14 +02:00
sparc * rtl part of #35433 2024-05-01 23:15:12 +02:00
sparc64 * rtl part of #35433 2024-05-01 23:15:12 +02:00
symbian Merge branch 'main' into basemath 2024-07-15 20:00:14 +02:00
ucmaps
unix Fix reading past the end of the string in Unix.FSearch. 2024-06-20 01:02:40 +03:00
wasi Merge branch 'main' into basemath 2024-07-15 20:00:14 +02:00
wasm32 + added WASI multithreading helper for setting the stack pointer for the linear stack 2024-05-13 14:00:36 +02:00
watcom Merge branch 'main' into basemath 2024-07-15 20:00:14 +02:00
wii Merge branch 'main' into basemath 2024-07-15 20:00:14 +02:00
win Fix wince compilation using FPC_HAS_SYSRELOCATETHREADVAR_ASM macro. 2024-07-09 17:43:58 +02:00
win16 Merge branch 'main' into basemath 2024-07-15 20:00:14 +02:00
win32 Merge branch 'main' into basemath 2024-07-15 20:00:14 +02:00
win64 Merge branch 'main' into basemath 2024-07-15 20:00:14 +02:00
wince Merge branch 'main' into basemath 2024-07-15 20:00:14 +02:00
x86_64 Merge branch 'main' into basemath 2024-07-15 20:03:48 +02:00
xtensa + set pi_do_call on xtensa as well if we check for fpu exceptions 2024-02-14 23:04:25 +01:00
z80 FPU exception mask: generlised system unit interface 2022-10-17 19:43:01 +00:00
zxspectrum Merge branch 'main' into basemath 2024-07-15 20:00:14 +02:00
COPYING.FPC
COPYING.txt
fpmake.inc
fpmake.pp + missing dependency on objpas added 2024-02-04 23:22:36 +01:00
Makefile human68k: regenerated Makefiles 2023-11-30 23:43:27 +00:00
Makefile.fpc human68k: actually tell the build system where the rtl directory is 2023-11-30 23:43:27 +00:00
README.txt
regenmakefiles.bat + add a batch file to also regenerate the RTL makefiles on Windows 2024-04-19 16:45:59 +02:00
regenmakefiles.sh * Fix typo 2024-03-21 10:32:23 +01: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.