CoinSignal.hpp
Go to the documentation of this file.00001
00002
00003
00004
00005
00006 #ifndef _CoinSignal_hpp
00007 #define _CoinSignal_hpp
00008
00009
00010
00011
00012
00013
00014 #include <csignal>
00015
00016
00017
00018 #if defined(_MSC_VER)
00019 typedef void (__cdecl *CoinSighandler_t) (int);
00020 # define CoinSighandler_t_defined
00021 #endif
00022
00023
00024
00025 #if (defined(__GNUC__) && defined(__linux__))
00026 typedef sighandler_t CoinSighandler_t;
00027 # define CoinSighandler_t_defined
00028 #endif
00029
00030
00031
00032 #if defined(__CYGWIN__) && defined(__GNUC__)
00033 typedef __decltype(SIG_DFL) CoinSighandler_t;
00034 # define CoinSighandler_t_defined
00035 #endif
00036
00037
00038
00039 #if defined(__MINGW32__) && defined(__GNUC__)
00040 typedef __decltype(SIG_DFL) CoinSighandler_t;
00041 # define CoinSighandler_t_defined
00042 #endif
00043
00044
00045
00046 #if defined(__FreeBSD__) && defined(__GNUC__)
00047 typedef __decltype(SIG_DFL) CoinSighandler_t;
00048 # define CoinSighandler_t_defined
00049 #endif
00050
00051
00052
00053 #if defined(__NetBSD__) && defined(__GNUC__)
00054 typedef __decltype(SIG_DFL) CoinSighandler_t;
00055 # define CoinSighandler_t_defined
00056 #endif
00057
00058
00059
00060 #if defined(_AIX)
00061 # if defined(__GNUC__)
00062 typedef __decltype(SIG_DFL) CoinSighandler_t;
00063 # define CoinSighandler_t_defined
00064 # endif
00065 #endif
00066
00067
00068
00069 #if defined (__hpux)
00070 # define CoinSighandler_t_defined
00071 # if defined(__GNUC__)
00072 typedef __decltype(SIG_DFL) CoinSighandler_t;
00073 # else
00074 extern "C" {
00075 typedef void (*CoinSighandler_t) (int);
00076 }
00077 # endif
00078 #endif
00079
00080
00081
00082 #if defined(__sun)
00083 # if defined(__SUNPRO_CC)
00084 # include <signal.h>
00085 extern "C" {
00086 typedef void (*CoinSighandler_t) (int);
00087 }
00088 # define CoinSighandler_t_defined
00089 # endif
00090 # if defined(__GNUC__)
00091 typedef __decltype(SIG_DFL) CoinSighandler_t;
00092 # define CoinSighandler_t_defined
00093 # endif
00094 #endif
00095
00096
00097
00098 #if defined(__MACH__) && defined(__GNUC__)
00099 typedef __decltype(SIG_DFL) CoinSighandler_t;
00100 # define CoinSighandler_t_defined
00101 #endif
00102
00103
00104
00105 #ifndef CoinSighandler_t_defined
00106 # warning("OS and/or compiler is not recognized. Defaulting to:");
00107 # warning("extern 'C' {")
00108 # warning(" typedef void (*CoinSighandler_t) (int);")
00109 # warning("}")
00110 extern "C" {
00111 typedef void (*CoinSighandler_t) (int);
00112 }
00113 #endif
00114
00115
00116
00117 #endif