summaryrefslogtreecommitdiff
path: root/sal/osl/w32/system.h
diff options
context:
space:
mode:
Diffstat (limited to 'sal/osl/w32/system.h')
-rw-r--r--sal/osl/w32/system.h126
1 files changed, 126 insertions, 0 deletions
diff --git a/sal/osl/w32/system.h b/sal/osl/w32/system.h
new file mode 100644
index 000000000000..1bd86994e6ce
--- /dev/null
+++ b/sal/osl/w32/system.h
@@ -0,0 +1,126 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+
+#if OSL_DEBUG_LEVEL == 0
+# define NO_DEBUG_CRT
+#endif
+
+#ifndef _WIN32_WINNT
+# define _WIN32_WINNT 0x0400
+# define _CTYPE_DISABLE_MACROS /* wg. dynamischer C-Runtime MH */
+#endif
+
+#include <stdio.h>
+#include <stdlib.h>
+#include <stdarg.h>
+#include <ctype.h>
+#include <malloc.h>
+#include <limits.h>
+#include <process.h>
+#include <time.h>
+#include <fcntl.h>
+#include <sys/types.h>
+#include <sys/stat.h>
+#include <io.h>
+#include <share.h>
+#include <direct.h>
+
+/* Must define this else build breaks because Winsock2.h
+ includes Windows.h and without WIN32_LEAN_AND_MEAN
+ also includes mswsock.h which needs a forward typedef
+ of SOCKET ...
+*/
+#define WIN32_LEAN_AND_MEAN
+
+#ifdef GCC
+ // windows.h includes winsock2.h
+ // if _WIN32_WINNT > 0x0400
+ // so someone cannot include winsock.h
+ // at the same time without patching
+ // windows.h
+ #include <windows.h>
+#ifdef __MINGW32__
+ #include <winsock2.h>
+ #include <ws2tcpip.h>
+#endif
+ #include <shlobj.h>
+ #ifndef NO_DEBUG_CRT
+ #include <crtdbg.h>
+ #endif
+#else
+ // winsock2.h includes windows.h
+ #pragma warning(push,1) /* disable warnings within system headers */
+ #pragma warning(disable:4917)
+ #include <winsock2.h>
+ #include <wsipx.h>
+ #include <shlobj.h>
+ #ifndef NO_DEBUG_CRT
+ #include <crtdbg.h>
+ #endif
+ #pragma warning(pop)
+#endif
+
+#define _MAX_CMD 4096 /* maximum length of commandline */
+/* #define _MAX_ENV 4096 maximum length of environment var (isn't used anywhere) */
+
+#ifdef GCC
+ # ifndef SA_FAMILY_DECL
+ # define SA_FAMILY_DECL short sa_family
+ # endif
+
+ typedef struct sockaddr_ipx {
+ SA_FAMILY_DECL;
+ char sa_netnum[4];
+ char sa_nodenum[6];
+ unsigned short sa_socket;
+ } SOCKADDR_IPX;
+
+ # define NSPROTO_IPX 1000
+ # define NSPROTO_SPX 1256
+ # define NSPROTO_SPXII 1257
+#endif // #ifdef GCC
+
+#ifdef _DLL_
+
+#ifdef __cplusplus
+ extern "C" DWORD g_dwPlatformId;
+#else
+ extern DWORD g_dwPlatformId;
+#endif // #ifdef __cplusplus
+
+ #define IS_NT (g_dwPlatformId == VER_PLATFORM_WIN32_NT)
+#else
+
+#ifdef __cplusplus
+ extern "C" DWORD GetPlatformId(void);
+#else
+ extern DWORD GetPlatformId(void);
+#endif // #ifdef __cplusplus
+
+ #define IS_NT (GetPlatformId() == VER_PLATFORM_WIN32_NT)
+#endif // #ifdef _DLL_
+