fpc/rtl
paul f285948fcb rtl, utils: apply patch of Inoussa:
This patch implements collation'loading at runtime. This reduce the final executable' size as the collation's data are now externaly stored. Note that It requires the external collation files to be shipped and the program to load the collations it needs using the "LoadCollation"/"RegisterCollation" procedure(s).

The external collation files are produced by "cldrparser" (while producing the static files). The root collation "ducet" 's external file is produced by "unihelper".

It is important to note that these files are endian specific :
 * collation_*_be.bco for big endian systems
 * collation_*_le.bco for little endian system.

The root collation should at be registered, be it staticaly by using the "unicodeducet" unit or dynamicaly by making a call sush as RegisterCollation(<collation dir>,'ducet'). 
It is possible, in the same application, to make use of static and dynamic.

git-svn-id: trunk@25295 -
2013-08-19 13:42:11 +00:00
..
aix Regenerate all Makefiles with an up-to-date fpcmake binary (dummy commit) 2013-04-29 12:30:54 +00:00
amiga dummy GetLastOSerror to make fcl-whatever build, and header cleanup/fixes 2013-07-19 22:55:44 +00:00
android * Android: There are cases when libc "environ" var may be NULL. Check for such case and provide fake valid environment. Bug #24519. 2013-06-04 15:21:29 +00:00
arm * disable assembler versions of string routines for arm thumb 2013-03-25 17:54:32 +00:00
atari + FileNameCasePreserving added - see #18066 in Mantis 2012-04-15 21:21:53 +00:00
avr + Added additional addr pointer parameter to 2012-06-24 21:22:09 +00:00
beos * updated address of FSF (mantis #24646, patch by Alexey Svistunov) 2013-06-27 14:01:18 +00:00
bsd * updated address of FSF (mantis #24646, patch by Alexey Svistunov) 2013-06-27 14:01:18 +00:00
charmaps rtl: add missing windows codepages (mantis #0024294) 2013-04-22 01:48:12 +00:00
darwin rtl: add unicodenumtable to install units 2013-05-13 02:19:46 +00:00
embedded patch by Michael Ring: 2013-04-29 19:57:08 +00:00
emx Regenerate all Makefiles with an up-to-date fpcmake binary (dummy commit) 2013-04-29 12:30:54 +00:00
freebsd Regenerate all Makefiles with an up-to-date fpcmake binary (dummy commit) 2013-04-29 12:30:54 +00:00
gba Regenerate all Makefiles with an up-to-date fpcmake binary (dummy commit) 2013-04-29 12:30:54 +00:00
go32v2 Regenerate all Makefiles with an up-to-date fpcmake binary (dummy commit) 2013-04-29 12:30:54 +00:00
haiku * updated address of FSF (mantis #24646, patch by Alexey Svistunov) 2013-06-27 14:01:18 +00:00
i386 + has_sse2_support for i386 2013-08-18 18:54:56 +00:00
i8086 * fpc_setjmp and fpc_longjmp updated to support far code memory models 2013-06-11 23:59:30 +00:00
inc Fix shift128Right in rtl/inc/softfpu.pp 2013-08-18 21:12:53 +00:00
java compiler, rtl, tests: write Delphi compatible (more or less) type information for Class Reference and Pointer types (mantis #0024367) 2013-05-04 12:47:05 +00:00
jvm * Revert changes to java-related files by r23604. 2013-02-13 13:13:21 +00:00
linux * updated address of FSF (mantis #24646, patch by Alexey Svistunov) 2013-06-27 14:01:18 +00:00
m68k rtl/m68k/m68k.inc: 2013-01-17 21:19:27 +00:00
macos Regenerate all Makefiles with an up-to-date fpcmake binary (dummy commit) 2013-04-29 12:30:54 +00:00
mips * MIPS: handle get_frame internally, so it sets pi_needs_stackframe flag on current procedure. This makes possible not to force pi_needs_stackframe on every procedure and thus omit saving/restoring $fp register when it is not necessary. 2013-07-24 15:25:12 +00:00
mipsel MIPS RTL: 2013-07-05 14:03:18 +00:00
morphos implemented FileSetDate, improved FileCreate 2013-06-11 06:02:28 +00:00
msdos * fix msdos rtl makefile for newer makes 2013-08-11 16:12:43 +00:00
nativent Regenerate all Makefiles with an up-to-date fpcmake binary (dummy commit) 2013-04-29 12:30:54 +00:00
nds Regenerate all Makefiles with an up-to-date fpcmake binary (dummy commit) 2013-04-29 12:30:54 +00:00
netbsd * add CPU prefix to some defines 2013-06-01 08:17:30 +00:00
netware Regenerate all Makefiles with an up-to-date fpcmake binary (dummy commit) 2013-04-29 12:30:54 +00:00
netwlibc Regenerate all Makefiles with an up-to-date fpcmake binary (dummy commit) 2013-04-29 12:30:54 +00:00
objpas rtl, utils: apply patch of Inoussa: 2013-08-19 13:42:11 +00:00
openbsd * updated address of FSF (mantis #24646, patch by Alexey Svistunov) 2013-06-27 14:01:18 +00:00
os2 * SHUT_* constants added for improved compatibility to other platforms 2013-08-01 20:42:40 +00:00
palmos Regenerate all Makefiles with an up-to-date fpcmake binary (dummy commit) 2013-04-29 12:30:54 +00:00
powerpc + Added additional addr pointer parameter to 2012-06-24 21:22:09 +00:00
powerpc64 + Added additional addr pointer parameter to 2012-06-24 21:22:09 +00:00
qnx * updated address of FSF (mantis #24646, patch by Alexey Svistunov) 2013-06-27 14:01:18 +00:00
solaris * updated address of FSF (mantis #24646, patch by Alexey Svistunov) 2013-06-27 14:01:18 +00:00
sparc * use membar only for sparcv9(+) 2012-12-03 21:55:51 +00:00
symbian Regenerate all Makefiles with an up-to-date fpcmake binary (dummy commit) 2013-04-29 12:30:54 +00:00
ucmaps - remove maps with unclear header 2012-09-18 18:46:23 +00:00
unix * ordered the declarations the same was as in bunxh.inc, so it's easier 2013-07-24 13:49:35 +00:00
watcom Regenerate all Makefiles with an up-to-date fpcmake binary 2013-04-29 12:40:50 +00:00
wii Regenerate all Makefiles with an up-to-date fpcmake binary (dummy commit) 2013-04-29 12:30:54 +00:00
win * added layout constants. 2013-07-06 20:46:30 +00:00
win32 Fix compilation of WinCE. Change the fixed UNICODE define of WinCE to FPC_OS_UNICODE, so that it won't be undefined when changing the mode/string type and that the usage of a UNICODE API is independant of the mode. 2013-05-04 11:06:32 +00:00
win64 Fix compilation of WinCE. Change the fixed UNICODE define of WinCE to FPC_OS_UNICODE, so that it won't be undefined when changing the mode/string type and that the usage of a UNICODE API is independant of the mode. 2013-05-04 11:06:32 +00:00
wince Fix compilation of WinCE. Change the fixed UNICODE define of WinCE to FPC_OS_UNICODE, so that it won't be undefined when changing the mode/string type and that the usage of a UNICODE API is independant of the mode. 2013-05-04 11:06:32 +00:00
x86_64 * Fix win64 math unit compilation 2013-04-26 09:37:48 +00:00
COPYING.FPC
COPYING.txt * updated address of FSF (mantis #24646, patch by Alexey Svistunov) 2013-06-27 14:01:18 +00:00
fpmake.inc rtl: enable character unit compilation for win32 2011-09-22 02:07:05 +00:00
fpmake.pp bugfixes: 2012-04-26 13:15:52 +00:00
Makefile Regenerate all Makefiles with an up-to-date fpcmake binary (dummy commit) 2013-04-29 12:30:54 +00:00
Makefile.fpc * merge i8086 branch by Nikolay Nikolov 2013-04-25 20:23:51 +00:00
README.txt

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).

The following directories are not supported officially and may not work
correctly with FreePascal v1.0:

go32v1 - The DJGPP go32v1 DOS extender (no longer supported)
palmos - The PalmOS directory for the Dragonball (incomplete)


Enjoy.