Use SIGPROF only if it is available
authorJonas 'Sortie' Termansen <sortie@maxsi.org>
Mon, 23 Jun 2014 23:28:30 +0000 (01:28 +0200)
committerRodrigo Kumpera <kumpera@gmail.com>
Thu, 26 Jun 2014 14:09:08 +0000 (10:09 -0400)
The SIGPROF signal is an XSI option and obsolescent in XSI. POSIX systems
are not required to have it.

This change is released under the MIT/X11 license.

mono/mini/mini-posix.c
support/old-map.c

index 67f5725de6ae2db75799a1b7a7f980ed203a4de6..d26b4af4e92b4f23f34af747865109a140a43c2a 100644 (file)
@@ -296,6 +296,7 @@ SIG_HANDLER_FUNC (static, sigusr1_signal_handler)
 #define FULL_STAT_PROFILER_BACKTRACE 0
 #endif
 
+#ifdef SIGPROF
 #if defined(__ia64__) || defined(__sparc__) || defined(sparc) || defined(__s390__) || defined(s390)
 
 SIG_HANDLER_FUNC (static, sigprof_signal_handler)
@@ -384,6 +385,7 @@ SIG_HANDLER_FUNC (static, sigprof_signal_handler)
        mono_chain_signal (SIG_HANDLER_PARAMS);
 }
 
+#endif
 #endif
 
 SIG_HANDLER_FUNC (static, sigquit_signal_handler)
index 9b2a2e907d775a3710f1d1cadefd514196d69cd8..8d733b21cc74072158c90ec661768dc9c6f546bf 100644 (file)
@@ -155,8 +155,10 @@ int map_Mono_Posix_Signals (int x)
                 return SIGXFSZ;
        if (x == Mono_Posix_Signals_SIGVTALRM)
                 return SIGVTALRM;
+#ifdef SIGPROF
        if (x == Mono_Posix_Signals_SIGPROF)
                 return SIGPROF;
+#endif
        if (x == Mono_Posix_Signals_SIGWINCH)
                 return SIGWINCH;
 #ifdef SIGIO