Commit Graph

62 Commits

Author SHA1 Message Date
pierre
afab9524f2 Add missing SharedSuffix constant to system unit
git-svn-id: trunk@36841 -
2017-08-04 14:17:28 +00:00
pierre
1aab7e7ee2 Fix compilation of netware system unit
git-svn-id: trunk@36838 -
2017-08-04 13:51:07 +00:00
Tomas Hajny
db7a9950d1 * unit name changed to System (starting with uppercase 'S') for improved compatibility to Delphi - see test tobject5.pp
git-svn-id: trunk@30025 -
2015-02-27 19:00:50 +00:00
svenbarth
2d454dc8fa Move DynLibs support to System unit using a manager approach like for Threads, WideStrings, etc.. This is needed so that we can support features like "delayed" and loading of dynamic packages.
Each port that allows the usage of dynamic libraries should call InitSystemDynLibs during initialization of the System unit.
The DynLibs unit has been adjusted to be a forwarder for the functions that now reside in the System unit (for backwards compatiblity just in case). Additionally the unit will register the DynLibsManager if it doesn't reside in the System unit anyway.
Currently only the Windows targets (Win32, Win64 and WinCE) implement the DynLibsManager inside the System unit. For other systems using the LoadLibrary, etc. functions will lead to a run error/exception.
If a port wants to implement its own DynLibsManager then it needs to define DISABLE_NO_DYNLIBS_MANAGER. TLibHandle, NilHandle and optionally TOrdinalEntry (it's set to SizeUInt otherwise) should be defined in sysdlh.inc which needs to be enabled using the define FPC_SYSTEM_HAS_SYSDLH (because there are targets which have FEATURE_DYNLIBS enabled, but don't support them... e.g. powerpc-wii -.-).
The DynLibsManager contains methods for loading a library based on a RawByteString and based on a UnicodeString. BOTH should be implemented, but internally one can forward to the other.
The loading by ordinal *can* be be implemented. If it is set to Nil then the implementation of GetProcAddress(lib,ordinal) will return Nil.

+ new functions SetDynLibsManager and GetDynLibsManager to set and retrieve the current DynLibsManager
* provide interface of DynLibs unit in unit System

git-svn-id: trunk@29613 -
2015-02-03 20:00:00 +00:00
sergei
3a5e6485b5 - RTL: removed InitVariantManager, it was an empty procedure since day 1.
git-svn-id: trunk@29114 -
2014-11-22 20:35:46 +00:00
Jonas Maebe
69c29a415f * pass the procdef to getintparaloc instead of only the proccalloption, so
that the type of the parameters can be determined automatically
   o added compilerproc declarations for all helpers called in the compiler
     via their assembler name, so we can look up the corresponding procdef

git-svn-id: trunk@23325 -
2013-01-06 15:05:40 +00:00
Tomas Hajny
d442d14e0c + FileNameCasePreserving added - see #18066 in Mantis
git-svn-id: trunk@20894 -
2012-04-15 20:56:13 +00:00
paul
1ccf16358c rtl: init widestring and unitcodestring managers before initialization of Standard IO files (stdin,stdout,stderr)
git-svn-id: trunk@19542 -
2011-10-25 02:29:29 +00:00
armin
03ca42d6e2 nwpre now initializes bss, use linker generated symbol to get address of .text (for lineinfo)
git-svn-id: trunk@17269 -
2011-04-07 19:39:51 +00:00
armin
8e7cf0c616 netware rtl support for internal linker
git-svn-id: trunk@17191 -
2011-03-27 14:45:33 +00:00
Jonas Maebe
d4d7b695c7 - removed all "islibrary:=false;" assignments from system unit
initialisation code, because that's a typed constant already initialised
    to that value and it interferes with a generic solution to set islibrary
    to true for libraries

git-svn-id: trunk@12376 -
2008-12-17 17:48:04 +00:00
florian
f97c2968f9 * fixed widestring/unicodemanager initialisiation
git-svn-id: trunk@11743 -
2008-09-10 21:02:50 +00:00
peter
f4f3ae84d0 * AllowDirectorySeparators and AllowDriveSeparators typed constants
added to allow customization of path and directory parsing in the rtl
  * Use the new sets instead of the hardcoded / and \

git-svn-id: trunk@10105 -
2008-01-29 23:04:56 +00:00
peter
5acb3649df * revert r9557, the performance impact is to big for an academic corner
case optimziation

git-svn-id: trunk@9603 -
2007-12-31 13:36:16 +00:00
yury
c4e60fd1a5 - Removed systhrd.inc from targets where thread manager is stub by default. Stub is installed in common thread.inc file if DISABLE_NO_THREAD_MANAGER is not defined.
git-svn-id: trunk@9558 -
2007-12-28 15:21:02 +00:00
yury
0dcad4d822 * Implemented late thread manager initialization. Thread manager code is not included to executable if thread stuff are not used. WinCE executable size is reduced by 4KB, Win32 executable size is reduced by 3KB. No testsuite regressions.
git-svn-id: trunk@9557 -
2007-12-28 14:40:28 +00:00
Tomas Hajny
3b3849c02c + AllFilesMask constant added
git-svn-id: trunk@8492 -
2007-09-15 12:09:25 +00:00
peter
5e860919f8 * removed initfpu
git-svn-id: trunk@5296 -
2006-11-09 07:48:31 +00:00
tom_at_work
cc2873232f * forgot to add CheckInitialStkLen function
* fixed two unitinitialized StackLength variables

git-svn-id: trunk@1727 -
2005-11-12 11:34:15 +00:00
michael
21425e303c + Removed HASVARIANT define
git-svn-id: trunk@244 -
2005-06-07 20:48:31 +00:00
michael
8a226bba52 + Removed HASWIDESTRING/HASWIDECHAR defines
git-svn-id: trunk@241 -
2005-06-07 20:42:22 +00:00
fpc
790a4fe2d3 * log and id tags removed
git-svn-id: trunk@42 -
2005-05-21 09:42:41 +00:00
peter
b68af1b0e3 * post 2.0.0 fixes from cvs
git-svn-id: trunk@7 -
2005-05-16 20:59:02 +00:00
fpc
50778076c3 initial import
git-svn-id: trunk@1 -
2005-05-16 18:37:41 +00:00
michael
2e48181661 + Added maxpathlen constant (maximum length of filename path) 2005-05-12 20:29:04 +00:00
Tomas Hajny
d3c103dfd7 * EOF_CTRLZ conditional define replaced with CtrlZMarksEOF, #26 handling made more consistent (fix for bug #2453) 2005-04-03 21:10:59 +00:00
peter
e417e34496 * truncate log 2005-02-14 17:13:06 +00:00
peter
e49fa4bd08 * threads for go32v2,os,emx,netware 2005-02-06 16:57:18 +00:00
florian
4f7560d89e * improved widestring infrastructure manager 2005-02-01 20:22:49 +00:00
armin
6173c21df0 * fixed GetProcessId 2004-12-07 11:04:42 +00:00
Tomas Hajny
353d5cc3de + GetProcessID added 2004-12-05 14:36:37 +00:00
armin
af7a983b6a * adapted to new compiler check for externals 2004-11-25 12:32:08 +00:00
peter
dbc2025604 ErrOutput added 2004-11-04 09:32:31 +00:00
armin
ad45adbb6e * saveregisters no longer supported by compiler, for now save all registers in stackcheck 2004-10-25 18:11:49 +00:00
peter
869b0ecc85 * compiler defined HEAP and HEAPSIZE removed 2004-10-25 15:38:59 +00:00
armin
0f1fec0de1 * exiting threads at nlm unload 2004-09-26 19:25:49 +00:00
armin
38a0e5688a * added NWGetCodeStart, needed for lineinfo 2004-09-17 18:29:07 +00:00
olle
9a4855aa43 + added maxExitCode to all System.pp
* constrained error code to be below maxExitCode in RunError et. al.
2004-09-03 19:25:21 +00:00
armin
bd9e93087c * changed dir separator from \ to /
* long namespace by default
* dos.exec implemented
* getenv ('PATH') is now supported
* changed FExpand to global version
* fixed heaplist growth error
* support SysOSFree
* stackcheck was without saveregisters
* fpc can compile itself on netware
2004-08-01 20:02:48 +00:00
armin
8d1c71a835 make netware rtl compilable under 1.9.5 2004-07-30 15:05:25 +00:00
peter
2ed14823c5 * New heapmanager that releases memory back to the OS, donated
by Micha Nelissen
2004-06-17 16:16:13 +00:00
Tomas Hajny
e0f9297e01 * ExecuteProcess fixes, ProcessID and ThreadID added 2004-01-20 23:05:31 +00:00
Tomas Hajny
57538cb669 * THandle in sysutils common using System.THandle 2003-10-25 23:42:35 +00:00
olle
527a79b0dc * changed i386 to cpui386 2003-10-17 22:10:30 +00:00
peter
3d8d9c96f8 * sbrk returns pointer 2003-09-27 11:52:35 +00:00
armin
cc769a33ea * support for fcl, support for linking without debug info
* renamed winsock2 to winsock for win32 compatinility
* new sockets unit for netware
* changes for compiler warnings
2003-03-25 18:17:54 +00:00
armin
abb6577ccd * changes for new threadvar support 2003-02-15 19:12:54 +00:00
florian
495cb55113 + call to initvariantmanager inserted 2002-10-13 09:25:14 +00:00
peter
9f31783a0a * old logs removed and tabs fixed 2002-09-07 16:01:16 +00:00
peter
71a1ae2136 * sLineBreak changed to normal constant like Kylix 2002-07-01 16:29:05 +00:00