/** Version constant which ensures to increase monotonically. */
#define UCX_VERSION (((UCX_VERSION_MAJOR)<<16)|UCX_VERSION_MINOR)
+// Common Includes
+
#include <stdlib.h>
#include <stddef.h>
#include <stdbool.h>
#include <stdint.h>
+#include <sys/types.h>
/**
* Function pointer compatible with fwrite-like functions.
void *
);
-#ifdef _WIN32
-
-#ifdef __MINGW32__
-#include <sys/types.h>
-#endif // __MINGW32__
-
-#else // !_WIN32
-
-#include <sys/types.h>
-#endif // _WIN32
+// Compiler specific stuff
#ifndef __GNUC__
/**
#define __attribute__(x)
#endif
+#ifdef _MSC_VER
+
+// fix missing ssize_t definition
+#include <BaseTsd.h>
+typedef SSIZE_T ssize_t;
+
+// fix missing _Thread_local support
+#define _Thread_local __declspec(thread)
+
+#endif
+
#endif // UCX_COMMON_H