Mercurial > emacs
view src/s/sol2-5.h @ 58818:f8cddae7d959
* gtkutil.c: Include signal.h and syssignal.h.
(xg_get_file_name): Block and unblock __SIGRTMIN if defined.
* alloc.c: If HAVE_GTK_AND_PTHREAD, include pthread.h,
new variables main_thread and alloc_mutex,
define (UN)BLOCK_INPUT_ALLOC to use alloc_mutex to protect
emacs_blocked_* calls and only do (UN)BLOCK_INPUT in the main thread.
If not HAVE_GTK_AND_PTHREAD, (UN)BLOCK_INPUT_ALLOC is the same as
(UN)BLOCK_INPUT.
(emacs_blocked_free, emacs_blocked_malloc)
(emacs_blocked_realloc): Use (UN)BLOCK_INPUT_ALLOC.
(uninterrupt_malloc): Initialize main_thread and alloc_mutex.
(reset_malloc_hooks): New function.
* lisp.h: Declare reset_malloc_hooks.
* emacs.c (Fdump_emacs): Call reset_malloc_hooks.
* keyboard.c: Conditionally include pthread.h
(handle_async_inpu, input_available_signalt): If not in the main
thread, block signal, send signal to main thread and return.
author | Jan Djärv <jan.h.d@swipnet.se> |
---|---|
date | Tue, 07 Dec 2004 08:25:43 +0000 |
parents | 695cf19ef79e |
children | 375f2633d815 82045a035109 |
line wrap: on
line source
/* Handle Solaris 2.5. */ #include "sol2-4.h" #if 0 /* Klaus Zeitler <kzeitler@lucent.com> says SIGIO still fails. */ #undef BROKEN_SIGIO #endif /* -lgen is needed for the regex and regcmp functions which are used by Motif. In the future we can try changing regex.c to provide them in Emacs, but this is safer for now. */ #define LIB_MOTIF -lXm -lgen /* This is the only known way to avoid some crashes that seem to relate to screwed up malloc data after deleting a frame. */ /* rms: I think the problems using ralloc had to do with system libraries that called the system malloc even if we linked in the GNU malloc. I could not see any way to fix the problem except to have just one malloc and that had to be the system one. */ /* This is not always necessary. Turned off at present for testers to identify any problems with gmalloc more accurately. */ /* #define SYSTEM_MALLOC */ /* There have problems reported with mmap at least on Solaris 2.6 and 2.7. For simplicity, let's not use mmap for anything >= 2.5. We can optimize this later. */ #undef USE_MMAP_FOR_BUFFERS /* Probably OK also on earlier versions. */ #define GC_SETJMP_WORKS 1 #define GC_MARK_STACK GC_MAKE_GCPROS_NOOPS /* arch-tag: 96d65526-21c9-4547-a797-2bd575c05be7 (do not change this comment) */