summaryrefslogtreecommitdiff
path: root/ace/OS.h
diff options
context:
space:
mode:
Diffstat (limited to 'ace/OS.h')
-rw-r--r--ace/OS.h19
1 files changed, 14 insertions, 5 deletions
diff --git a/ace/OS.h b/ace/OS.h
index 0f6b3ba77cc..8393201b032 100644
--- a/ace/OS.h
+++ b/ace/OS.h
@@ -1927,7 +1927,7 @@ struct stat
#else
# if defined (ACE_HAS_EXCEPTIONS)
# define ACE_THROW_SPEC(X) throw X
-# if defined (ACE_WIN32) && !defined (ghs)
+# if defined (ACE_WIN32) && defined(_MSC_VER) && !defined (ghs)
// @@ MSVC "supports" the keyword but doesn't implement it (Huh?).
// Therefore, we simply supress the warning for now.
# pragma warning( disable : 4290 )
@@ -3128,7 +3128,8 @@ typedef void (*ACE_SignalHandlerV)(...);
// Turn off warnings for /W4
// To resume any of these warning: #pragma warning(default: 4xxx)
// which should be placed after these defines
-# if !defined (ALL_WARNINGS) && !defined(ghs)
+
+# if !defined (ALL_WARNINGS) && !defined(ghs) && !defined(__MINGW32__)
// #pragma warning(disable: 4101) // unreferenced local variable
# pragma warning(disable: 4127) /* constant expression for TRACE/ASSERT */
# pragma warning(disable: 4134) /* message map member fxn casts */
@@ -3230,7 +3231,11 @@ typedef void (*ACE_SignalHandlerV)(...);
# define ACE_LD_SEARCH_PATH ACE_LIB_TEXT ("PATH")
# define ACE_LD_SEARCH_PATH_SEPARATOR_STR ACE_LIB_TEXT (";")
# define ACE_DLL_SUFFIX ACE_LIB_TEXT (".dll")
-# define ACE_DLL_PREFIX ACE_LIB_TEXT ("")
+# if defined (__MINGW32__)
+# define ACE_DLL_PREFIX ACE_LIB_TEXT ("lib")
+# else /* __MINGW32__ */
+# define ACE_DLL_PREFIX ACE_LIB_TEXT ("")
+# endif /* __MINGW32__ */
// This will help until we figure out everything:
# define NFDBITS 32 /* only used in unused functions... */
@@ -3353,7 +3358,9 @@ PAGE_NOCACHE */
typedef OVERLAPPED ACE_OVERLAPPED;
typedef DWORD ACE_thread_t;
+# if !defined(__MINGW32__)
typedef long pid_t;
+# endif /* __MINGW32__ */
typedef HANDLE ACE_hthread_t;
#define ACE_INVALID_PID ((pid_t) -1)
@@ -3386,7 +3393,9 @@ typedef pace_uid_t uid_t;
typedef pace_gid_t gid_t;
# else /* !ACE_HAS_PACE */
typedef DWORD nlink_t;
+# if !defined(__MINGW32__)
typedef int mode_t;
+# endif /* !__MINGW32__ */
typedef int uid_t;
typedef int gid_t;
# endif /* ACE_HAS_PACE */
@@ -4124,9 +4133,9 @@ typedef fd_set ACE_FD_SET_TYPE;
# if defined (ACE_LACKS_SIGSET)
# if defined (ACE_HAS_PACE) && !defined (ACE_WIN32)
typedef pace_sigset_t sigset_t;
-# else
+# elif !defined(__MINGW32__)
typedef u_int sigset_t;
-# endif /* ACE_HAS_PACE */
+# endif /* !ACE_HAS_PACE && !__MINGW32__*/
# endif /* ACE_LACKS_SIGSET */
# if defined (ACE_LACKS_SIGACTION)