fpc/rtl
nickysn 248fd313f8 + introduced unit SortBase, which implements the foundation for pluggable
sorting algorithms. A default QuickSort implementation is provided by the
  unit. Other units can be added, to provide other sorting algorithms (e.g.
  HeapSort, MergeSort, IntroSort, etc.)
* TList and TFPList updated to use the current default sorting algorithm defined
  in SortBase for their .Sort method.

git-svn-id: trunk@41167 -
2019-02-02 20:06:50 +00:00
..
aarch64 * cpu specific header file for the system unit: cpuh.inc, moved several declarations into it 2017-11-01 16:33:30 +00:00
aix + introduced unit SortBase, which implements the foundation for pluggable 2019-02-02 20:06:50 +00:00
amicommon amicommon/lineinfo: fixed copy-paste error in PowerPC codepath 2019-01-28 12:45:19 +00:00
amiga amiga: enable building of heaptrc unit, enable building lineinfo and exeinfo for OS4/PowerPC 2019-01-28 13:19:26 +00:00
android + introduced unit SortBase, which implements the foundation for pluggable 2019-02-02 20:06:50 +00:00
arm Fix cycling of arm compiler starting with release ppcarm 3.0.4 2019-01-30 10:48:21 +00:00
aros + introduced unit SortBase, which implements the foundation for pluggable 2019-02-02 20:06:50 +00:00
atari + introduced unit SortBase, which implements the foundation for pluggable 2019-02-02 20:06:50 +00:00
avr + implemented some AVR specific intrinsics 2017-11-01 16:33:34 +00:00
beos + introduced unit SortBase, which implements the foundation for pluggable 2019-02-02 20:06:50 +00:00
bsd * fixes sysctl also with 3.0.4 as starting compiler. 2018-02-16 17:58:20 +00:00
charmaps + support the KOI8-R and KOI8-U Cyrillic encodings 2017-06-07 13:51:53 +00:00
darwin + introduced unit SortBase, which implements the foundation for pluggable 2019-02-02 20:06:50 +00:00
dragonfly + introduced unit SortBase, which implements the foundation for pluggable 2019-02-02 20:06:50 +00:00
embedded + introduced unit SortBase, which implements the foundation for pluggable 2019-02-02 20:06:50 +00:00
emx + introduced unit SortBase, which implements the foundation for pluggable 2019-02-02 20:06:50 +00:00
freebsd + introduced unit SortBase, which implements the foundation for pluggable 2019-02-02 20:06:50 +00:00
gba + introduced unit SortBase, which implements the foundation for pluggable 2019-02-02 20:06:50 +00:00
go32v2 + introduced unit SortBase, which implements the foundation for pluggable 2019-02-02 20:06:50 +00:00
haiku + introduced unit SortBase, which implements the foundation for pluggable 2019-02-02 20:06:50 +00:00
i386 + added x86 (i8086, i386 and x86_64) intrinsics fpc_x86_get_cs/ss/ds/es/fs/gs 2018-07-11 14:19:40 +00:00
i8086 * updated the CSeg, DSeg and SSeg rtl functions on i8086 to use the new x86 2018-07-11 14:34:05 +00:00
inc + introduced unit SortBase, which implements the foundation for pluggable 2019-02-02 20:06:50 +00:00
java haiku-x86_64: regenerated all Makefiles, take 2 2019-01-04 03:18:42 +00:00
jvm * cpu specific header file for the system unit: cpuh.inc, moved several declarations into it 2017-11-01 16:33:30 +00:00
linux + introduced unit SortBase, which implements the foundation for pluggable 2019-02-02 20:06:50 +00:00
m68k m68k: on setjmp/longjmp also save/restore the FPCR register when FPU support is enabled 2018-03-13 23:44:54 +00:00
macos haiku-x86_64: regenerated all Makefiles, take 2 2019-01-04 03:18:42 +00:00
mips * cpu specific header file for the system unit: cpuh.inc, moved several declarations into it 2017-11-01 16:33:30 +00:00
mipsel * cpu specific header file for the system unit: cpuh.inc, moved several declarations into it 2017-11-01 16:33:30 +00:00
morphos + introduced unit SortBase, which implements the foundation for pluggable 2019-02-02 20:06:50 +00:00
msdos + introduced unit SortBase, which implements the foundation for pluggable 2019-02-02 20:06:50 +00:00
nativent haiku-x86_64: regenerated all Makefiles, take 2 2019-01-04 03:18:42 +00:00
nds + introduced unit SortBase, which implements the foundation for pluggable 2019-02-02 20:06:50 +00:00
netbsd + introduced unit SortBase, which implements the foundation for pluggable 2019-02-02 20:06:50 +00:00
netware + introduced unit SortBase, which implements the foundation for pluggable 2019-02-02 20:06:50 +00:00
netwlibc + introduced unit SortBase, which implements the foundation for pluggable 2019-02-02 20:06:50 +00:00
objpas + introduced unit SortBase, which implements the foundation for pluggable 2019-02-02 20:06:50 +00:00
openbsd + introduced unit SortBase, which implements the foundation for pluggable 2019-02-02 20:06:50 +00:00
os2 + introduced unit SortBase, which implements the foundation for pluggable 2019-02-02 20:06:50 +00:00
palmos haiku-x86_64: regenerated all Makefiles, take 2 2019-01-04 03:18:42 +00:00
powerpc Disable dcbz code for AIX also 2018-05-11 15:49:35 +00:00
powerpc64 * cpu specific header file for the system unit: cpuh.inc, moved several declarations into it 2017-11-01 16:33:30 +00:00
qnx haiku-x86_64: regenerated all Makefiles, take 2 2019-01-04 03:18:42 +00:00
riscv32 Update packages with information about RiscV. 2018-07-20 10:40:28 +00:00
riscv64 * fix SetRoundingMode on RiscV64 2018-08-19 15:26:44 +00:00
solaris + introduced unit SortBase, which implements the foundation for pluggable 2019-02-02 20:06:50 +00:00
sparc * cpu specific header file for the system unit: cpuh.inc, moved several declarations into it 2017-11-01 16:33:30 +00:00
sparc64 * cpu specific header file for the system unit: cpuh.inc, moved several declarations into it 2017-11-01 16:33:30 +00:00
symbian + introduced unit SortBase, which implements the foundation for pluggable 2019-02-02 20:06:50 +00:00
ucmaps + support the KOI8-R and KOI8-U Cyrillic encodings 2017-06-07 13:51:53 +00:00
unix + introduced unit SortBase, which implements the foundation for pluggable 2019-02-02 20:06:50 +00:00
watcom + introduced unit SortBase, which implements the foundation for pluggable 2019-02-02 20:06:50 +00:00
wii + introduced unit SortBase, which implements the foundation for pluggable 2019-02-02 20:06:50 +00:00
win * problems reported by nanobit mantis #34850 corrected. 2019-01-11 14:01:15 +00:00
win16 + introduced unit SortBase, which implements the foundation for pluggable 2019-02-02 20:06:50 +00:00
win32 + introduced unit SortBase, which implements the foundation for pluggable 2019-02-02 20:06:50 +00:00
win64 + introduced unit SortBase, which implements the foundation for pluggable 2019-02-02 20:06:50 +00:00
wince + introduced unit SortBase, which implements the foundation for pluggable 2019-02-02 20:06:50 +00:00
x86_64 + added x86 (i8086, i386 and x86_64) intrinsics fpc_x86_get_cs/ss/ds/es/fs/gs 2018-07-11 14:19:40 +00:00
COPYING.FPC
COPYING.txt * updated FSF address (mantis #30198, patch by Paul Gevers) 2016-10-02 12:56:59 +00:00
fpmake.inc
fpmake.pp * trunk to 3.3.1 2018-08-18 15:47:44 +00:00
Makefile haiku-x86_64: regenerated all Makefiles, take 2 2019-01-04 03:18:42 +00:00
Makefile.fpc Add missing dirs_wdosx 2018-10-24 21:11:45 +00:00
README.txt rtl: removed the long obsolete README section mentioning FPC 1.0 2018-02-12 10:58:54 +00: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.