fpc/rtl
tom_at_work 8a2696eb24 * limit the number of string message methods per class to 2^31 independent of architecture width: this avoids lots of compiler changes when allowing 2^63 (for 64 bit targets)
* fix string message method handling data structures to reflect this change, and also use the correct types for accessing them (longint vs. dword)
* output proper alignment code for string message method data structures to avoid issues on big-endian 64 bit architectures or architectures requiring proper alignment
* same for integer message methods; also, like string message method data structures, do not use packed records for them when accessing
* extend the test case (tw14145) do do multiple message dispatches, both integer and string ones, to complete successfully

git-svn-id: trunk@16254 -
2010-10-29 13:26:50 +00:00
..
amiga * MorphOS, Amiga: changed definition of sLineBreak to match other system units, fixes fcl-base build 2010-10-21 02:13:57 +00:00
arm + initial implementation of iso style gotos in iso mode 2010-08-05 19:20:46 +00:00
atari * unicodestringmanager patch from r11743 extended to OS/2 and other platforms using system.pas instead of system.pp 2008-12-19 12:47:17 +00:00
avr + initial implementation of iso style gotos in iso mode 2010-08-05 19:20:46 +00:00
beos + i386/iphonesim target for the new iPhoneSimulator in Xcode 3.2.4 and 2010-09-29 21:56:47 +00:00
bsd * Avoid warning at compilation 2010-08-24 14:57:01 +00:00
darwin + i386/iphonesim target for the new iPhoneSimulator in Xcode 3.2.4 and 2010-09-29 21:56:47 +00:00
embedded + i386/iphonesim target for the new iPhoneSimulator in Xcode 3.2.4 and 2010-09-29 21:56:47 +00:00
emx * Fixed spell error revealed by lintian. 2010-10-06 20:33:57 +00:00
freebsd + i386/iphonesim target for the new iPhoneSimulator in Xcode 3.2.4 and 2010-09-29 21:56:47 +00:00
gba + i386/iphonesim target for the new iPhoneSimulator in Xcode 3.2.4 and 2010-09-29 21:56:47 +00:00
go32v2 + i386/iphonesim target for the new iPhoneSimulator in Xcode 3.2.4 and 2010-09-29 21:56:47 +00:00
haiku + i386/iphonesim target for the new iPhoneSimulator in Xcode 3.2.4 and 2010-09-29 21:56:47 +00:00
i386 * implementation of bit scan intrinsics by Richard Vida, resolves #17592 2010-10-16 15:03:30 +00:00
inc * limit the number of string message methods per class to 2^31 independent of architecture width: this avoids lots of compiler changes when allowing 2^63 (for 64 bit targets) 2010-10-29 13:26:50 +00:00
linux Moved global variables from .text section to .bss in ppc/linux startup code, improves position independency 2010-10-23 20:07:36 +00:00
m68k + initial implementation of iso style gotos in iso mode 2010-08-05 19:20:46 +00:00
macos + i386/iphonesim target for the new iPhoneSimulator in Xcode 3.2.4 and 2010-09-29 21:56:47 +00:00
mips + initial implementation of iso style gotos in iso mode 2010-08-05 19:20:46 +00:00
mipsel * more mipsel code 2009-12-06 12:12:15 +00:00
morphos * MorphOS, Amiga: changed definition of sLineBreak to match other system units, fixes fcl-base build 2010-10-21 02:13:57 +00:00
nativent * enables compilation of iso7185 unit on all targets 2010-08-06 17:45:42 +00:00
nds + i386/iphonesim target for the new iPhoneSimulator in Xcode 3.2.4 and 2010-09-29 21:56:47 +00:00
netbsd + i386/iphonesim target for the new iPhoneSimulator in Xcode 3.2.4 and 2010-09-29 21:56:47 +00:00
netware * Fixed spell error revealed by lintian. 2010-10-06 20:33:57 +00:00
netwlibc + i386/iphonesim target for the new iPhoneSimulator in Xcode 3.2.4 and 2010-09-29 21:56:47 +00:00
objpas * types.pp, applied a fix similar to r16224,16226 also to UnionRect function. It is very similar to IntersectRect and parameter aliasing issue applies to it as well (see Mantis #17722). 2010-10-28 04:18:53 +00:00
openbsd + i386/iphonesim target for the new iPhoneSimulator in Xcode 3.2.4 and 2010-09-29 21:56:47 +00:00
os2 * Fixed spell error revealed by lintian. 2010-10-06 20:33:57 +00:00
palmos + i386/iphonesim target for the new iPhoneSimulator in Xcode 3.2.4 and 2010-09-29 21:56:47 +00:00
powerpc + initial implementation of iso style gotos in iso mode 2010-08-05 19:20:46 +00:00
powerpc64 + initial implementation of iso style gotos in iso mode 2010-08-05 19:20:46 +00:00
qnx + i386/iphonesim target for the new iPhoneSimulator in Xcode 3.2.4 and 2010-09-29 21:56:47 +00:00
solaris + i386/iphonesim target for the new iPhoneSimulator in Xcode 3.2.4 and 2010-09-29 21:56:47 +00:00
sparc + initial implementation of iso style gotos in iso mode 2010-08-05 19:20:46 +00:00
symbian + i386/iphonesim target for the new iPhoneSimulator in Xcode 3.2.4 and 2010-09-29 21:56:47 +00:00
ucmaps
unix * Fixed synchronize/waitfor issue 2010-10-12 18:08:24 +00:00
watcom + i386/iphonesim target for the new iPhoneSimulator in Xcode 3.2.4 and 2010-09-29 21:56:47 +00:00
win * adds gwlp and gclp constants, mantis 17656 and 17655 2010-10-17 19:58:49 +00:00
win32 + i386/iphonesim target for the new iPhoneSimulator in Xcode 3.2.4 and 2010-09-29 21:56:47 +00:00
win64 + i386/iphonesim target for the new iPhoneSimulator in Xcode 3.2.4 and 2010-09-29 21:56:47 +00:00
wince * Fixed spell error revealed by lintian. 2010-10-06 20:33:57 +00:00
x86_64 + added {$asmmode gas} directives to fix compiling when fpc.cfg contains 2010-09-08 14:40:38 +00:00
COPYING.FPC
COPYING.txt * added .txt extensions to all README, TODO and COPYING files 2009-02-28 17:34:08 +00:00
fpmake.inc + unicode functions for sysutils, makes tunistr6.pp compiling 2009-07-17 14:05:19 +00:00
fpmake.pp + unicode functions for sysutils, makes tunistr6.pp compiling 2009-07-17 14:05:19 +00:00
Makefile + i386/iphonesim target for the new iPhoneSimulator in Xcode 3.2.4 and 2010-09-29 21:56:47 +00:00
Makefile.fpc + i386/iphonesim target for the new iPhoneSimulator in Xcode 3.2.4 and 2010-09-29 21:56:47 +00:00
README.txt * added .txt extensions to all README, TODO and COPYING files 2009-02-28 17:34:08 +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).

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.