Fixes for cygwin

This commit is contained in:
Juan Jose Garcia Ripoll 2009-07-24 11:19:39 +02:00
parent ef5b830f61
commit df67606f77
3 changed files with 4 additions and 2 deletions

View file

@ -582,7 +582,7 @@ init_stacks(cl_env_ptr env, char *new_cs_org)
#endif
cs_set_size(env, ecl_get_option(ECL_OPT_C_STACK_SIZE));
#if defined(HAVE_SIGPROCMASK) && defined(SA_SIGINFO)
#if defined(HAVE_SIGPROCMASK) && defined(SA_SIGINFO) && defined(SA_ONSTACK)
if (ecl_get_option(ECL_OPT_SIGALTSTACK_SIZE)) {
stack_t new_stack;
cl_index size = ecl_get_option(ECL_OPT_SIGALTSTACK_SIZE);

View file

@ -161,9 +161,11 @@ mysignal(int code, void (*handler)(int, siginfo_t *, void*))
new_action.sa_sigaction = handler;
sigemptyset(&new_action.sa_mask);
new_action.sa_flags = SA_SIGINFO;
# ifdef SA_ONSTACK
if (code == SIGSEGV) {
new_action.sa_flags |= SA_ONSTACK;
}
# endif
#else
new_action.sa_handler = handler;
sigemptyset(&new_action.sa_mask);

View file

@ -178,7 +178,7 @@
;;;
;;; * PROFILE
;;;
#+WANTS-PROFILE
#+(and WANTS-PROFILE (not cygwin))
(build-module "profile"
'("ext:profile;profile.lisp")
:dir "build:ext;"