2004-10-14 00:21:07 +04:00
|
|
|
/*
|
2004-11-22 04:38:40 +03:00
|
|
|
* Copyright (c) 2004-2005 The Trustees of Indiana University.
|
|
|
|
* All rights reserved.
|
|
|
|
* Copyright (c) 2004-2005 The Trustees of the University of Tennessee.
|
|
|
|
* All rights reserved.
|
2004-11-28 23:09:25 +03:00
|
|
|
* Copyright (c) 2004-2005 High Performance Computing Center Stuttgart,
|
|
|
|
* University of Stuttgart. All rights reserved.
|
2005-03-24 15:43:37 +03:00
|
|
|
* Copyright (c) 2004-2005 The Regents of the University of California.
|
|
|
|
* All rights reserved.
|
2004-11-22 04:38:40 +03:00
|
|
|
* $COPYRIGHT$
|
|
|
|
*
|
|
|
|
* Additional copyrights may follow
|
|
|
|
*
|
2004-11-22 03:37:56 +03:00
|
|
|
* $HEADER$
|
2004-10-14 00:21:07 +04:00
|
|
|
*/
|
|
|
|
|
|
|
|
#ifndef OMPI_WIN_COMPAT_H
|
|
|
|
#define OMPI_WIN_COMPAT_H
|
|
|
|
|
|
|
|
/* It is always better to include windows.h with the lean and mean option.
|
|
|
|
So, include it with that option and then include some which are required
|
|
|
|
for us in ompi. Note: this file is included only on windows */
|
|
|
|
|
|
|
|
#ifndef WIN32_LEAN_AND_MEAN
|
|
|
|
#define WIN32_LEAN_AND_MEAN
|
2004-10-22 20:06:05 +04:00
|
|
|
#include <windows.h>
|
2004-10-14 00:21:07 +04:00
|
|
|
#undef WIN32_LEAN_AND_MEAN
|
2004-10-22 20:06:05 +04:00
|
|
|
#endif
|
2004-10-14 00:21:07 +04:00
|
|
|
|
2005-01-20 03:03:23 +03:00
|
|
|
/* FD_SETSIZE determines how many sockets windows can select() on. If not defined
|
|
|
|
before including winsock2.h, it is defined to be 64. We are going to go ahead and
|
|
|
|
make it 1024 for now. PLEASE CHECK IF THIS IS RIGHT */
|
|
|
|
#define FD_SETSIZE 1024
|
|
|
|
|
2004-10-14 00:21:07 +04:00
|
|
|
/* other utility header files */
|
|
|
|
#include <cderr.h>
|
|
|
|
#include <dde.h>
|
|
|
|
#include <ddeml.h>
|
|
|
|
#include <dlgs.h>
|
|
|
|
#include <imm.h>
|
|
|
|
#include <lzexpand.h>
|
|
|
|
#include <mmsystem.h>
|
|
|
|
#include <nb30.h>
|
|
|
|
#include <rpc.h>
|
|
|
|
#include <shellapi.h>
|
|
|
|
#include <winperf.h>
|
|
|
|
#include <winsock2.h>
|
|
|
|
#include <ws2tcpip.h>
|
2004-10-28 22:13:43 +04:00
|
|
|
#include <process.h>
|
2004-10-14 00:21:07 +04:00
|
|
|
#include <io.h>
|
2005-04-13 06:29:33 +04:00
|
|
|
#include <signal.h>
|
2005-04-19 08:24:13 +04:00
|
|
|
/*#if defined(OMPI_BUILDING) && OMPI_BUILDING */
|
2004-10-14 00:21:07 +04:00
|
|
|
#include "win32/ompi_uio.h"
|
|
|
|
#include "win32/ompi_time.h"
|
|
|
|
#include "win32/ompi_utsname.h"
|
|
|
|
#include "win32/ompi_util.h"
|
2004-10-22 20:06:05 +04:00
|
|
|
#include "win32/ompi_misc.h"
|
2004-10-28 22:13:43 +04:00
|
|
|
#include "util/printf.h"
|
2005-04-19 08:24:13 +04:00
|
|
|
/*#endif*/
|
2004-10-14 00:21:07 +04:00
|
|
|
|
|
|
|
#define MAXPATHLEN MAX_PATH
|
|
|
|
#define MAXHOSTNAMELEN MAX_PATH
|
|
|
|
typedef unsigned short mode_t;
|
|
|
|
typedef long ssize_t;
|
2004-10-28 22:13:43 +04:00
|
|
|
typedef DWORD in_port_t;
|
2005-01-20 03:03:23 +03:00
|
|
|
typedef int caddr_t;
|
|
|
|
typedef unsigned int uint;
|
2004-10-14 00:21:07 +04:00
|
|
|
|
|
|
|
/* Anju: some random #defines which I know offhand, but need to configure it */
|
|
|
|
#define OMPI_ALIGNMENT_CXX_BOOL OMPI_ALIGNMENT_INT
|
|
|
|
#define SIZEOF_BOOL SIZEOF_INT
|
2004-10-28 22:13:43 +04:00
|
|
|
#define getpid _getpid
|
|
|
|
#define getcwd _getcwd
|
|
|
|
#define mkdir _mkdir
|
2004-10-22 20:06:05 +04:00
|
|
|
|
|
|
|
#define UINT32_MAX _UI32_MAX
|
2005-04-11 07:43:35 +04:00
|
|
|
#define INT32_MAX _I32_MAX
|
|
|
|
|
2005-04-11 09:00:26 +04:00
|
|
|
#define SIZEOF_SIZE_T 4
|
2005-04-11 07:43:35 +04:00
|
|
|
#define __func__ __FUNCTION__
|
2004-10-22 20:06:05 +04:00
|
|
|
|
2005-04-12 09:40:19 +04:00
|
|
|
/* Ugly signal mapping since windows doesn't support the full spectrum
|
|
|
|
* just a very small subset... :/
|
|
|
|
* http://msdn.microsoft.com/library/default.asp?url=/library/en-us/vclib/html/_crt_raise.asp
|
2005-06-22 02:48:57 +04:00
|
|
|
* http://msdn.microsoft.com/library/default.asp?url=/library/en-us/dnucmg/html/UCMGch09.asp
|
2005-04-12 09:40:19 +04:00
|
|
|
*/
|
|
|
|
#define SIGCHLD SIGILL
|
2005-06-22 02:48:57 +04:00
|
|
|
#define SIGKILL WM_QUIT
|
2005-04-12 09:40:19 +04:00
|
|
|
|
|
|
|
/* Note:
|
|
|
|
* The two defines below are likely to break the orte_wait
|
|
|
|
* functionality. The proper method of replacing these bits
|
|
|
|
* of functionality is left for further investigated.
|
|
|
|
*/
|
|
|
|
#define WUNTRACED 0
|
|
|
|
#define WNOHANG 0
|
|
|
|
|
2005-04-13 06:29:33 +04:00
|
|
|
#define sigset_t int
|
|
|
|
|
2005-06-14 00:28:44 +04:00
|
|
|
/*
|
|
|
|
* Mask these to Windows equlivants
|
|
|
|
*/
|
|
|
|
#define bzero(p, l) memset(p, 0, l)
|
|
|
|
#define bcopy(s, t, l) memmove(t, s, l)
|
|
|
|
|
2004-10-14 00:21:07 +04:00
|
|
|
#endif /* compat */
|