Commit graph

3349 commits

Author SHA1 Message Date
Juan Jose Garcia Ripoll
d09cd99f4f src/lsp/top.lsp:
* When pressing Ctrl-C (SIGINT, interrupt, etc), if there is only one thread running
  that thread is interrupted.
* The list of process that can be interrupted is filtered, changing the interfaces of
  si::query-process and si::show-processes.
2009-10-07 15:40:18 +02:00
Juan Jose Garcia Ripoll
a66d58d6b5 When returning from a signal handler, ECL left a sigmask in which all signals were allowed. Now we just restore the default sigmask. 2009-10-07 15:39:23 +02:00
Juan Jose Garcia Ripoll
ffe8e14d18 src/c/unixint.d:
* Install the synchronous signal handlers before calling GC_init()
  so that they can be overwritten.
* Under Linux, access to mprotect'ed memory causes SIGSEGV, not SIGBUS.
2009-10-07 11:25:43 +02:00
Juan Jose Garcia Ripoll
7507191ad1 src/lsp/top.lsp: (continue) did not work from within the interrupt handler. 2009-10-07 11:24:26 +02:00
Juan Jose Garcia Ripoll
0f3a7d4eb1 src/CHANGELOG: note last fix of si_process_declarations 2009-10-06 14:26:40 +02:00
Juan Jose Garcia Ripoll
1bb7f6e807 si::process-declarations did not identify extended strings as documentation. 2009-10-06 14:24:58 +02:00
Juan Jose Garcia Ripoll
84f0e7906a The value of *print-level* has to be reset when printing a structure. 2009-10-05 21:54:59 +02:00
Juan Jose Garcia Ripoll
dafd831fef src/h/config.h.in: define only GC_THREADS. Supposedly the garbage collector with define GC_PTHREADS, GC_WIN32_THREADS, etc, depending on the compiler and platform. 2009-10-05 18:31:25 +02:00
Juan Jose Garcia Ripoll
a5d5c7d3f6 src/cmp/cmpmain.lsp: clean up the files we create (*.c, *.h) before writing onto them. 2009-10-05 15:54:46 +02:00
Juan Jose Garcia Ripoll
b88755c6b4 src/h/config.h.in: in Darwin we have to define GC_DARWIN_THREADS because the garbage
does not store its settings.
2009-10-05 14:41:31 +02:00
Juan Jose Garcia Ripoll
d2fbd4da69 Mark the new release number 2009-10-05 14:13:35 +02:00
Juan Jose Garcia Ripoll
fe000b075a src/cmp/cmpmain.lsp: silence the program "mt" that embeds the manifest in a Windows executable. 2009-10-05 12:12:05 +02:00
Juan Jose Garcia Ripoll
6d54621001 src/c/unixint.d: define _WIN32_WINNT=0x400 to get QueueUserAPC 2009-10-05 12:07:18 +02:00
Juanjo
70ae473d9b src/CHANGELOG: note down the latest changes in the Windows port. 2009-10-05 11:01:01 +02:00
Juanjo
bedd620359 src/cmp/cmpmain.lsp: in Windows, embed the manifest file into the executable, dll or fasl, and delete any other automatically generated files (*.exp, *.lib, etc). 2009-10-05 11:00:50 +02:00
Juanjo
c37757d262 src/compile.lsp.in: removed unused statements that conflict with the real ones for building sb-bsd-sockets. 2009-10-05 11:00:44 +02:00
Juanjo
8685d8beb7 msvc/Makefile, msvc/c/Makefile: hard-code the value of ECL_UNICODE and add new flags to prevent incremental linking. 2009-10-05 11:00:40 +02:00
Juanjo
1f74500b31 msvc/ecl/confg.h.msvc6: the value of UNICODE is now hardcoded in the header file, just like in other ports. 2009-10-05 11:00:36 +02:00
Juanjo
25c9b636e1 contrib/sockets/sockets.lisp: remove unused conditionalization. 2009-10-05 11:00:32 +02:00
Juanjo
f908de7ac0 src/c/dpp.c: change label names to prevent conflicts with some macros. 2009-10-05 11:00:27 +02:00
Juanjo
e39a9044ec src/c/load.d: windows fasls were not marked as self-destructing. 2009-10-05 11:00:22 +02:00
Juanjo
2d639b4850 src/h/ecl-cmp.h: define _WINSOCKAPI_ to avoid that windows.h includes winsock.h. Needed to build sb-bsd-sockets. 2009-10-05 11:00:13 +02:00
Juan Jose Garcia Ripoll
d4e0d72e9d threads.d: fixed two typos in the error checks for condition variables. 2009-10-02 10:02:05 +02:00
Juan Jose Garcia Ripoll
e3a8f6aec5 * msvc/ecl/config.msvc6: export ECL_WINDOWS_THREADS macro
* src/h/config.h: define GC_THREADS when using the garbage collector and threads.
2009-10-01 16:04:13 +02:00
Juan Jose Garcia Ripoll
5823093301 threads_mutex.d: fixed wait duration in mp_get_lock_wait(). 2009-10-01 15:55:31 +02:00
Juan Jose Garcia Ripoll
511d3b1945 src/c/hash.d: conditionalize another use of hash.lock. 2009-10-01 12:48:02 +02:00
Juan Jose Garcia Ripoll
5ae1c96929 The gc library does not remember its settings: we have to define GC_PTHREADS or GC_WIN32_THREADS before including the gc.h header. 2009-10-01 12:01:26 +02:00
Juan Jose Garcia Ripoll
5618cc648b src/c/threads.d: we cannot create locks until the environment is set up 2009-10-01 11:36:34 +02:00
Juan Jose Garcia Ripoll
2bee22b015 Note the last change in the configuration process, related to the detection of GC_register_my_thread. 2009-10-01 10:27:31 +02:00
Juan Jose Garcia Ripoll
5d2002432a The test for an existing Boehm-Weiser garbage collector must include function GC_register_my_thread 2009-10-01 10:20:21 +02:00
Juan Jose Garcia Ripoll
3913c4464e Functions returning "void" can not use "return something" in Sun's compiler, even if that something is (void). 2009-09-29 21:31:02 +02:00
Juan Jose Garcia Ripoll
d498548b07 src/c/package.d: field hash.lock is not defined in single-threaded versions 2009-09-29 17:04:34 +02:00
Juan Jose Garcia Ripoll
0e7563952e Change needed for OS X 10.6 Leopard: ucontext.h is deprecated and produces an error. 2009-09-29 17:04:11 +02:00
Juan Jose Garcia Ripoll
04c7b4e67b threads_mutex.d was not added in the previous commit 2009-09-27 21:52:04 +02:00
Juan Jose Garcia Ripoll
d3ce2ef931 Split the code for mutexes into a separate file and use these lock objects in cl_core, instead of the raw versions. 2009-09-27 21:20:01 +02:00
Juan Jose Garcia Ripoll
037cc67c48 Sometimes file_listen() returns that there exist characters, but actually there is an EOF. 2009-09-27 21:19:16 +02:00
Juan Jose Garcia Ripoll
500f324754 Following SBCL, use a single global lock for packages, instead of one lock per package. 2009-09-27 13:19:30 +02:00
Juan Jose Garcia Ripoll
dc6d0659b2 ecl_extend_hashtable() now does not destructively modify a package hash table. Instead, it returns a new object. This affects ecl_sethash() and all package functions that modify the package tables. 2009-09-27 10:46:54 +02:00
Juan Jose Garcia Ripoll
ae9515ee2b Reorganize the list of latest changes. 2009-09-27 10:44:25 +02:00
Juan Jose Garcia Ripoll
95f98db71c When we are using an alternative stack for processing SIGSEGV, we cannot execute arbitrary lisp code there -- instead, jump to the outermost prompt. 2009-09-25 18:44:15 +02:00
Juan Jose Garcia Ripoll
c36eb22e73 Stack overflows now jump to the outermost toplevel. 2009-09-25 17:45:34 +02:00
Juan Jose Garcia Ripoll
5f2e473d36 Remove debug statements from last commit 2009-09-25 16:59:36 +02:00
Juan Jose Garcia Ripoll
f8817cda45 SIGSEGV and SIGBUS must be handled synchronously. 2009-09-25 16:58:55 +02:00
Juan Jose Garcia Ripoll
8082cd6010 _ecl_win32_... has to be declared as using WINAPI. 2009-09-25 08:58:34 +02:00
Juan Jose Garcia Ripoll
28f2f9f4ca Export ECL_THREADS configuration flag when processing msvc/ecl/config.h.msvc6 2009-09-25 08:49:04 +02:00
Juan Jose Garcia Ripoll
8edb94230e We have to export _ecl_w32_exception_filter() for users of CL_CATCH_ALL. 2009-09-25 08:42:20 +02:00
Juan Jose Garcia Ripoll
ac8b96db2b We can only wait for the signals that have been blocked, not for SIGUSR1, SIGUSR2, etc. 2009-09-24 19:45:12 +02:00
Juan Jose Garcia Ripoll
bdf8d9d037 Initial version of semaphores both for POSIX and Windows. Includes test that detects failure of unnamed semaphores under Darwin. The whole code is still inactive. 2009-09-23 23:52:47 +02:00
Juan Jose Garcia Ripoll
cc052cb792 Added two new functions mp:lock-mine-p and mp:lock-count-mine which are used to implement mp:with-lock 2009-09-23 22:25:57 +02:00
Juan Jose Garcia Ripoll
9c416fbaa1 wakeup_function() only has to be defined under Windows. 2009-09-23 22:19:40 +02:00