Commit Graph

68 Commits

Author SHA1 Message Date
tom_at_work
92538bcb2a Fixed lineinfo compilation with -gl
git-svn-id: trunk@5723 -
2006-12-26 19:27:45 +00:00
Jonas Maebe
0c3afc0cf4 + implementation of cSemaphore* and BasicRTLEvent based on
sem_open/sem_close for Darwin (doesn't have sem_init/sem_destroy)
  + implementation of cSemaphore* based on pipes (for potential future
    systems that don't have either sem* routines)
  + test for basicrtlevent
  * fixed datarace whereby a TThread could be started, run and exit before
    TThread.AfterConstructor had been called (Mantis 6693, all platforms)
  * throw EThread exceptions in TThread.create if something during creating
    the tthread goes wrong (*nix)
  * don't crash in TThread.Destroy if the TThread throws an exception before
    it was fully initialised (*nix)
  * changed order of operations in TThread.Destroy so it doesn't perform
    invalid thread operations in some edge cases (*nix)
  * fixed usage of sem_wait/sem_trywait (can be interrupted) in Semaphore
    and RTLEvent implementations
  * fixed erroneous waiting for threads after they had already exited via
    pthread_detach/pthread_exit
  * fixed several memory leaks in case of thread intialisation errors
    (*nix)
  * unified tthread.inc for all Unices

git-svn-id: trunk@5662 -
2006-12-21 18:22:47 +00:00
michael
fa28889633 * Reverted dependency on fgl generics unit. fgl itself remains untouched.
git-svn-id: trunk@5651 -
2006-12-19 19:53:21 +00:00
tom_at_work
949aa60805 * DWARF debug lineinfo reader
git-svn-id: trunk@5632 -
2006-12-17 23:11:25 +00:00
micha
ea2beb3e8f * fix classes units of all targets to depend on fgl, also fix dependencies in Makefile.fpc for it
git-svn-id: trunk@5627 -
2006-12-17 17:37:34 +00:00
Almindor
50995f965c * fixes solaris and netbsd AF_ and PF_ defines
+ adds preliminary unxsockh.inc to openbsd

git-svn-id: trunk@5441 -
2006-11-22 11:09:32 +00:00
florian
ce620190a3 + fmtbcd
* regenerated makefiles

git-svn-id: trunk@5076 -
2006-10-29 21:46:44 +00:00
Jonas Maebe
f8b013187c * fixed semaphore init, caused endless loop when terminating any
thread

git-svn-id: trunk@4925 -
2006-10-15 14:46:36 +00:00
Almindor
f102f33426 * fix some gliches in inithreads
git-svn-id: trunk@4903 -
2006-10-14 12:47:42 +00:00
Almindor
2ee7e64a4a * adds semaphore support to ThreadManager, removes pipe hack from non linux
+ adds SemaphoreInit, SemaphorePost, SemaphoreWait and SemaphoreDestroy to TM

git-svn-id: trunk@4900 -
2006-10-14 11:39:47 +00:00
Almindor
0ce5904349 * cleans up linux leftovers in other BSD targets
git-svn-id: trunk@4844 -
2006-10-09 19:47:06 +00:00
florian
33baacbe04 * fixed leaking of TThread
git-svn-id: trunk@3519 -
2006-05-14 09:15:09 +00:00
peter
cba7504dec * use -P for cross compile
* support libimp*.a

git-svn-id: trunk@3321 -
2006-04-23 18:53:29 +00:00
peter
323d6cf640 * use -O2 for 2.1.1 compilers
git-svn-id: trunk@2966 -
2006-03-19 11:19:43 +00:00
florian
b9a0e2ead2 * makefile again regenerated
git-svn-id: trunk@2280 -
2006-01-13 20:32:53 +00:00
florian
40290348bc * Makefiles regenerated
git-svn-id: trunk@2279 -
2006-01-13 19:49:25 +00:00
florian
30fc11e7ca * makefiles regenerated
git-svn-id: trunk@2260 -
2006-01-11 21:46:28 +00:00
Jonas Maebe
f92f8501ff * applied r2098 change regarding threads destroying themselves to
the other bsd variants

git-svn-id: trunk@2158 -
2006-01-04 13:31:50 +00:00
marco
f7f14e4dee * CROSSOPT support
git-svn-id: trunk@1798 -
2005-11-20 22:19:50 +00:00
tom_at_work
367df58016 * stack related things (sizes, calculations, etc.) are now 64 bit on 64 bit platforms
* default stack size is now also 32k for Windows (allows the use of stack checking when using threads)

git-svn-id: trunk@1718 -
2005-11-10 17:06:25 +00:00
tom_at_work
324dd47e7e * added stacksize parameter for TThread.Create for some platforms left out in commit 1621
git-svn-id: trunk@1637 -
2005-11-03 15:44:22 +00:00
Jonas Maebe
f5083e8dfa * fixed FreeOnTerminate (was already fixed in Linux version)
* handle interrupted reads from the semaphore pipe in Darwin (should be
    applied to *BSD and Linux as well)
  + lots of extra debugging code in Darwin tthread.inc if DEBUG_MT defined

git-svn-id: trunk@1416 -
2005-10-16 13:59:19 +00:00
Jonas Maebe
b766a42e23 * fixed return value of IsATTY()
git-svn-id: trunk@1308 -
2005-10-07 09:29:13 +00:00
peter
230bd19451 * fixed 2.0.x compilation
git-svn-id: trunk@1241 -
2005-10-01 20:21:50 +00:00
marco
73e81ac45a * inlined few procs. Didn't inline makeraw since that triggers inline WITH bug.
git-svn-id: trunk@1221 -
2005-09-28 20:59:20 +00:00
peter
bb70f2f5cc * add fppkg and fpmkunit to the Makefile.fpc
git-svn-id: trunk@1063 -
2005-09-08 06:50:52 +00:00
florian
8602390d46 * Makefiles regenerated to propagate -Ur change of fpcmake
git-svn-id: trunk@844 -
2005-08-10 21:55:57 +00:00
michael
23ad0ae1ec + Removed HASINTF and VER1_0 defines
git-svn-id: trunk@239 -
2005-06-07 20:30:03 +00:00
peter
4ace790492 * remove $Log
git-svn-id: trunk@231 -
2005-06-07 09:47:55 +00:00
Jonas Maebe
619cbfd88b * definition of pthread_mutex_t moved to pmutext.inc
git-svn-id: trunk@186 -
2005-06-03 21:07:55 +00:00
Jonas Maebe
7a79e0f083 * use definition of pthread_mutex_t from ptypes.h instead of
the linux definition in the system unit

git-svn-id: trunk@185 -
2005-06-03 21:07:04 +00:00
fpc
790a4fe2d3 * log and id tags removed
git-svn-id: trunk@42 -
2005-05-21 09:42:41 +00:00
michael
ffb55c4254 + Removed VER1_0 defines
git-svn-id: trunk@33 -
2005-05-19 21:14:45 +00:00
fpc
50778076c3 initial import
git-svn-id: trunk@1 -
2005-05-16 18:37:41 +00:00
peter
6cf4eb98c3 * use current fpcmake instead of from 1.9.8 2005-05-05 13:28:47 +00:00
peter
7dadd64723 * 2.0.0 2005-05-05 12:59:59 +00:00
Tomas Hajny
4065965ed7 * more rtlconst/s fixes 2005-04-17 17:33:40 +00:00
Jonas Maebe
92a2ba07ad * fixed web bug #3387: if one called resume right after creating a
suspended thread, it was possible that resume was executed before
    that thread had completed its initialisation in BeginThread ->
    FInitialSuspended was set to false in resume and nevertheless a
    semafore was posted
  * second problem fixed: set FSuspended to false before waking up the
    thread, so that it doesn't get FSuspended = true right after waking
    up. This should be done atomically to be completely correct though.
2005-03-01 20:38:49 +00:00
florian
44b332f82a * generic tthread.synchronize
* delphi compatible wakemainthread
2005-02-25 21:41:09 +00:00
peter
aa5b73f3ec * 1.9.8 2005-02-15 22:28:29 +00:00
peter
e417e34496 * truncate log 2005-02-14 17:13:06 +00:00
peter
110fb12911 * regenerated 2005-02-03 20:33:26 +00:00
peter
ef3b19b316 * regenerated 2005-01-11 17:07:45 +00:00
peter
994ab51002 * regenerated to use cpu-os 2005-01-10 21:29:23 +00:00
peter
f52d2b2edf * regenerated 2004-12-20 18:37:51 +00:00
peter
3c3ec40b70 * regenerated 2004-12-19 17:42:32 +00:00
Tomas Hajny
c016de5709 * Makefiles regenerated 2004-12-05 19:26:19 +00:00
peter
86f78c7300 * units are now created in separate directory units/cpu-os/
* distclean uses cleanall rule and removes units dir
  * cross compile support fixed, it is now possible to cycle a ppcsparc
    without deleting ppc386
  * bintutilsperfix defaults to cpu-os-
2004-10-30 12:36:43 +00:00
Jonas Maebe
159912ec47 * fixed definition of pthread_mutex_t for non-linux targets (and for
linux as well, actually).
  * base libpthread definitions are now in ptypes.inc, included in unixtype
    They sometimes have an extra underscore in front of their name, in
    case they were also exported by the packages/base/pthreads unit, so
    they can keep their original name there
  * cthreadds unit now imports systuils, because it uses exceptions (it
    already did so before as well)
  * fixed many linux definitions of libpthread functions in pthrlinux.inc
    (integer -> cint etc)
  + added culonglong type to ctype.inc
2004-09-09 20:29:06 +00:00
Jonas Maebe
341d25bfb2 * fixed pthread type definitions for darwin and made them generic 2004-08-25 21:42:11 +00:00