fpc/rtl
Jonas Maebe 58381ff7b6 * made chararray handling 98% TP-compatible, fixes web bugs 3012
and 4080. The compatibility differences are:
      a) writing a chararray which is zero-based but not zero-
         terminated does not cause a buffer overflow
      b) non-zero-based chararrays can also be read

    The difference was that previously, all chararrays were treated
    as pchars. In TP/Delphi (and now also in FPC), this is only done
    for zero-based chararrays. For non-zero-based ones, the entire
    contents of the array should always be used (including #0's).

    The default parameters in the system unit for the chararray
    helpers are to avoid having to use a define for bootstrapping.

git-svn-id: trunk@2152 -
2006-01-04 10:05:10 +00:00
..
amiga * graph and ggigraph unit moved to packages/base 2005-12-29 14:36:22 +00:00
arm * ifdef for WinCE was added. 2005-09-28 06:44:56 +00:00
atari * CheckInitialStkLen and/or StackLength initialization added to previously omitted targets 2005-11-13 19:13:16 +00:00
beos * updated makefiles for ppc64/linux to allow successful snapshot building on that platform 2005-12-16 20:37:08 +00:00
bsd * fixed RLIMIT_VMEM gotcha 2005-11-15 11:15:27 +00:00
common + No longer needed. 2005-09-02 07:51:31 +00:00
darwin * updated makefiles for ppc64/linux to allow successful snapshot building on that platform 2005-12-16 20:37:08 +00:00
emx * updated makefiles for ppc64/linux to allow successful snapshot building on that platform 2005-12-16 20:37:08 +00:00
freebsd * Indy fix (freeonterminate workaround) 2005-12-31 15:40:19 +00:00
gba * added CheckInitialStkLen() function which checks whether the given stack size value is valid on the OS when creating a thread, fixing stack checking 2005-11-11 12:16:08 +00:00
go32v2 * graph and ggigraph unit moved to packages/base 2005-12-29 14:36:22 +00:00
i386 * first implementation of pic for i386 2006-01-01 20:14:48 +00:00
inc * made chararray handling 98% TP-compatible, fixes web bugs 3012 2006-01-04 10:05:10 +00:00
linux * ffinish patch 2006-01-03 19:09:25 +00:00
m68k * reverted r2037 because of braindead "out" semantics for refcounted 2005-12-24 01:06:05 +00:00
macos * updated makefiles for ppc64/linux to allow successful snapshot building on that platform 2005-12-16 20:37:08 +00:00
morphos * updated makefiles for ppc64/linux to allow successful snapshot building on that platform 2005-12-16 20:37:08 +00:00
netbsd * updated makefiles for ppc64/linux to allow successful snapshot building on that platform 2005-12-16 20:37:08 +00:00
netware * updated makefiles for ppc64/linux to allow successful snapshot building on that platform 2005-12-16 20:37:08 +00:00
netwlibc * updated makefiles for ppc64/linux to allow successful snapshot building on that platform 2005-12-16 20:37:08 +00:00
objpas + StrToQWord patch from Vincent Snijders 2006-01-03 22:15:22 +00:00
openbsd * CROSSOPT support 2005-11-20 22:19:50 +00:00
os2 * fixed occassional crash during InitArguments 2006-01-01 23:28:25 +00:00
palmos * CheckInitialStkLen and/or StackLength initialization added to previously omitted targets 2005-11-13 19:13:16 +00:00
powerpc * set result of SetPrecisionMode() 2005-12-26 15:52:57 +00:00
powerpc64 * set result of SetPrecisionMode() 2005-12-26 15:52:57 +00:00
solaris * CROSSOPT support 2005-11-20 22:19:50 +00:00
sparc * reverted r2037 because of braindead "out" semantics for refcounted 2005-12-24 01:06:05 +00:00
ucmaps
unix * remove command about quotes in array version of executeprocess, which doesn't 2005-12-30 09:19:23 +00:00
watcom * CROSSOPT support 2005-11-20 22:19:50 +00:00
win *arm/wince lib import corrected for Loadlibrary, GetProcAddress 2005-12-28 15:09:52 +00:00
win32 * initialise windmax (web bug #4654) 2006-01-03 21:24:03 +00:00
win64 * updated makefiles for ppc64/linux to allow successful snapshot building on that platform 2005-12-16 20:37:08 +00:00
wince +arm/wince more rtl units : winsock, sockets 2005-12-27 15:37:15 +00:00
x86_64 * fixed exp to be pic safe 2005-10-23 13:37:08 +00:00
COPYING
COPYING.FPC
fpmake.inc + Moved AllOSs and AllCPUs to fpmkunit 2005-09-02 07:43:59 +00:00
fpmake.pp
Makefile * updated makefiles for ppc64/linux to allow successful snapshot building on that platform 2005-12-16 20:37:08 +00:00
Makefile.fpc
README

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.