Logo AND Algorithmique Numérique Distribuée

Public GIT Repository
f80fd224f190c3e65d8942bab536ea28fe8fdb9f
[simgrid.git] / src / win32 / config.h
1 #ifndef __XBT_WIN32_CONFIG_H__
2 #define __XBT_WIN32_CONFIG_H__
3
4
5 /* config.h - simgrid config selection for windows platforms. */
6
7 /* Copyright (c) 2006, 2007, 2008, 2010. The SimGrid Team.
8  * All rights reserved.                                                     */
9
10 /* This program is free software; you can redistribute it and/or modify it
11  * under the terms of the license (GNU LGPL) which comes with this package. */
12
13 /* 
14  * config selection. 
15 */
16 #include <win32/compiler/select_compiler_features.h>
17
18
19 #if defined(_XBT_BORLAND_COMPILER)
20 # include <win32/compiler/borland.h>
21
22 #elif defined(__GNUC__)
23   /* data comes from autoconf when using gnuc (cross-compiling?) */
24 # include "gras_config.h"
25 typedef unsigned int uint32_t;
26
27 #elif defined(_XBT_VISUALC_COMPILER)
28 # include <win32/compiler/visualc.h>
29 # else
30 # error "Unknown compiler - please report the problems to the main simgrid mailing list (http://gforge.inria.fr/mail/?group_id=12)"
31 #endif
32
33 typedef int socklen_t;
34 #define tcp_read( s, buf, len )         recv( s, buf, len, 0 )
35 #define tcp_write( s, buf, len )        send( s, buf, len, 0 )
36 #define ioctl( s, c, a )                ioctlsocket( (s), (c), (a) )
37 #define ioctl_t                                         u_long
38 #define AC_SOCKET_INVALID               ((unsigned int) ~0)
39
40 #ifdef SD_BOTH
41         #define tcp_close(s)    (shutdown( s, SD_BOTH ), closesocket(s))
42 #else
43         #define tcp_close( s )  closesocket( s )
44 #endif
45
46 #ifndef EWOULDBLOCK
47         #define EWOULDBLOCK WSAEWOULDBLOCK
48 #endif
49
50 #ifndef EINPROGRESS
51         #define EINPROGRESS WSAEINPROGRESS
52 #endif
53
54 #ifndef ETIMEDOUT
55         #define ETIMEDOUT   WSAETIMEDOUT
56 #endif
57
58 #ifdef sock_errno
59         #undef  sock_errno
60 #endif
61
62 #define sock_errno         WSAGetLastError()
63
64 #ifdef sock_errstr
65         #undef  sock_errstr
66 #endif
67
68 #define sock_errstr(err)   gras_wsa_err2string(err)
69
70 const char *gras_wsa_err2string(int errcode);
71
72 #ifdef S_IRGRP
73         #undef S_IRGRP
74 #endif
75
76 #define S_IRGRP 0
77
78 #ifdef S_IWGRP
79         #undef S_IWGRP
80 #endif
81
82 #define S_IWGRP 0
83
84
85
86 #endif /* #ifndef __XBT_WIN32_CONFIG_H__ */