fpc/rtl
sergei ea1e44c036 * Hacking TLS callbacks into proper shape, part 2:
- Completely removed DLL_PROCESS_DETACH callback for executables. Reason: 1) it is executed after RTL has been shut down and called ExitProcess(), at which point it is really not a good idea to do the cleanup. 2) In executable (in contrast with DLL) it is just fine to leave remaining resources alone and let OS reclaim them.
* Using 'cvar' for _tls_used and _tls_index to get proper prefixing without $ifdef's.

git-svn-id: trunk@17943 -
2011-07-06 16:43:13 +00:00
..
amiga * Added share mode argument to FileCreate call 2011-05-23 21:11:07 +00:00
arm * Promoted result type of FPC_PCHAR_LENGTH and FPC_PWIDECHAR_LENGTH to SizeInt. 2011-06-13 04:59:17 +00:00
atari
avr * fixed compilation of assembler helpers 2011-02-27 21:11:03 +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 * fix type of fourth parameter of msgrcv function 2010-11-23 23:44:34 +00:00
darwin + cpu unit for x86-64 containing a CAS128 implementation 2010-11-01 08:20:31 +00:00
embedded * initial atmega128 reg. definition and startup code implementation 2011-04-10 18:42:18 +00:00
emx * real implementation for FileCreate with ShareMode (plus fix for ShareMode in FileOpen) 2011-05-26 21:19:20 +00:00
freebsd * pathname functions 2011-06-08 10:44:56 +00:00
gba * Added share mode argument to FileCreate call 2011-05-23 21:11:07 +00:00
go32v2 * Prevent propagation of ' !proxy' environment variable to programs launched by Dos.exec by renaming it to '_!proxy' after handling in startup code 2011-07-05 06:54:24 +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 * Promoted result type of FPC_PCHAR_LENGTH and FPC_PWIDECHAR_LENGTH to SizeInt. 2011-06-13 04:59:17 +00:00
inc * heaptrc.pp: In case of early multithreading initialization, initialize all related items (namely, main_relo_todolist), not just the critical section. main_relo_todolist is used later without assigned checks, and it is also used as a flag to destroy the critical section. 2011-07-05 08:49:24 +00:00
linux * declared external fpc_geteipasebx , with local suffix to avoid clashes. 2011-06-07 15:12:31 +00:00
m68k + initial implementation of iso style gotos in iso mode 2010-08-05 19:20:46 +00:00
macos * Added share mode argument to FileCreate call 2011-05-23 21:11:07 +00:00
mips * don't change the fpu control word in the initialisation code of dynamic 2010-11-14 16:00:25 +00:00
mipsel
morphos * Added share mode argument to FileCreate call 2011-05-23 21:11:07 +00:00
nativent * Promoted result type of FPC_PCHAR_LENGTH and FPC_PWIDECHAR_LENGTH to SizeInt. 2011-06-13 04:59:17 +00:00
nds * nds: implemented write(ln) output on the screen (it needs flush tough...) 2011-07-03 08:34:52 +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 * Added share mode argument to FileCreate call 2011-05-23 21:11:07 +00:00
netwlibc * Added share mode argument to FileCreate call 2011-05-23 21:11:07 +00:00
objpas * Second patch from Mattias Gaertner (bug 19623, should fix 19633 as well) 2011-06-27 18:34:25 +00:00
openbsd * update of openbsd sysnr by Jasper Lievisse Adriaanse 2011-01-07 14:13:16 +00:00
os2 * more complete/safer checking of sharing mode values allowed by OS/2 2011-05-26 21:11:09 +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 * Promoted result type of FPC_PCHAR_LENGTH and FPC_PWIDECHAR_LENGTH to SizeInt. 2011-06-13 04:59:17 +00:00
powerpc64 * don't overwrite the target value of interlockedcompareexchange*() if the 2010-11-29 12:53:10 +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 * clocale fixed for Solaris, Patch by Ludo Brands, mantis #19675 2011-07-03 18:05:40 +00:00
sparc + initial implementation of iso style gotos in iso mode 2010-08-05 19:20:46 +00:00
symbian - removes Thread_count from the system unit of several OSes: the value of this variable was unpredictable and the hebaviour was not fixable, resolves #18089 2010-11-28 20:46:50 +00:00
ucmaps
unix * LongdateFormat equals shortdateformat (no longdateformat is available in langinfo) Bug #19616. 2011-07-02 13:42:44 +00:00
watcom * Added share mode argument to FileCreate call 2011-05-23 21:11:07 +00:00
wii * Added share mode argument to FileCreate call 2011-05-23 21:11:07 +00:00
win * Hacking TLS callbacks into proper shape, part 2: 2011-07-06 16:43:13 +00:00
win32 sysinit*.pp: Factored common code into include file. 2011-07-05 13:25:51 +00:00
win64 * More dummy code to avoid removal of required labels 2011-07-01 14:21:50 +00:00
wince * Added share mode argument to FileCreate call 2011-05-23 21:11:07 +00:00
x86_64 * Reverted r17343, and IFDEF'ed out the newer assembler procedures for FreeBSD for now. They require fixes to assembler writer, and after it's done they still have to be disabled during bootstrapping. 2011-04-19 15:28:53 +00:00
COPYING.FPC
COPYING.txt
fpmake.inc
fpmake.pp
Makefile + i386/iphonesim target for the new iPhoneSimulator in Xcode 3.2.4 and 2010-09-29 21:56:47 +00:00
Makefile.fpc Rebase to revision 16888 2011-02-07 20:30:48 +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.