[System] Use GZipStream from corefx
[mono-project.git] / mono / io-layer / io-layer.h
blobe9096e25580ee216938e36854d2668b6325b4a45
1 /*
2 * io-layer.h: Include the right files depending on platform. This
3 * file is the only entry point into the io-layer library.
5 * Author:
6 * Dick Porter (dick@ximian.com)
8 * (C) 2002 Ximian, Inc.
9 */
11 #ifndef _MONO_IOLAYER_IOLAYER_H_
12 #define _MONO_IOLAYER_IOLAYER_H_
14 #include <config.h>
15 #include <glib.h>
17 #if defined(__WIN32__) || defined(_WIN32)
18 /* Native win32 */
19 #define __USE_W32_SOCKETS
20 #include <winsock2.h>
21 #include <windows.h>
22 #include <winbase.h>
24 * The mingw version says:
25 * /usr/i686-pc-mingw32/sys-root/mingw/include/ws2tcpip.h:38:2: error: #error "ws2tcpip.h is not compatible with winsock.h. Include winsock2.h instead."
27 #ifdef _MSC_VER
28 #include <ws2tcpip.h>
29 #endif
30 #include <psapi.h>
33 * Workaround for missing WSAPOLLFD typedef in mingw's winsock2.h that is required for mswsock.h below.
34 * Remove once http://sourceforge.net/p/mingw/bugs/1980/ is fixed.
36 #if defined(__MINGW_MAJOR_VERSION) && __MINGW_MAJOR_VERSION == 4
37 typedef struct pollfd {
38 SOCKET fd;
39 short events;
40 short revents;
41 } WSAPOLLFD, *PWSAPOLLFD, *LPWSAPOLLFD;
42 #endif
44 #if G_HAVE_API_SUPPORT(HAVE_CLASSIC_WINAPI_SUPPORT)
45 #include <mswsock.h>
46 #endif
48 #else /* EVERYONE ELSE */
49 #include "mono/io-layer/wapi.h"
50 #include "mono/io-layer/uglify.h"
51 #endif /* HOST_WIN32 */
53 #ifdef __native_client__
54 #include "mono/metadata/nacl-stub.h"
55 #endif
57 #endif /* _MONO_IOLAYER_IOLAYER_H_ */