summaryrefslogtreecommitdiffstats
path: root/src/VBox/Devices/Graphics/shaderlib/wine/include/msvcrt
diff options
context:
space:
mode:
Diffstat (limited to 'src/VBox/Devices/Graphics/shaderlib/wine/include/msvcrt')
-rw-r--r--src/VBox/Devices/Graphics/shaderlib/wine/include/msvcrt/assert.h46
-rw-r--r--src/VBox/Devices/Graphics/shaderlib/wine/include/msvcrt/conio.h63
-rw-r--r--src/VBox/Devices/Graphics/shaderlib/wine/include/msvcrt/crtdbg.h140
-rw-r--r--src/VBox/Devices/Graphics/shaderlib/wine/include/msvcrt/crtdefs.h248
-rw-r--r--src/VBox/Devices/Graphics/shaderlib/wine/include/msvcrt/ctype.h85
-rw-r--r--src/VBox/Devices/Graphics/shaderlib/wine/include/msvcrt/direct.h59
-rw-r--r--src/VBox/Devices/Graphics/shaderlib/wine/include/msvcrt/dirent.h1
-rw-r--r--src/VBox/Devices/Graphics/shaderlib/wine/include/msvcrt/dos.h50
-rw-r--r--src/VBox/Devices/Graphics/shaderlib/wine/include/msvcrt/eh.h58
-rw-r--r--src/VBox/Devices/Graphics/shaderlib/wine/include/msvcrt/errno.h87
-rw-r--r--src/VBox/Devices/Graphics/shaderlib/wine/include/msvcrt/fcntl.h50
-rw-r--r--src/VBox/Devices/Graphics/shaderlib/wine/include/msvcrt/float.h158
-rw-r--r--src/VBox/Devices/Graphics/shaderlib/wine/include/msvcrt/io.h184
-rw-r--r--src/VBox/Devices/Graphics/shaderlib/wine/include/msvcrt/limits.h49
-rw-r--r--src/VBox/Devices/Graphics/shaderlib/wine/include/msvcrt/locale.h90
-rw-r--r--src/VBox/Devices/Graphics/shaderlib/wine/include/msvcrt/malloc.h99
-rw-r--r--src/VBox/Devices/Graphics/shaderlib/wine/include/msvcrt/math.h174
-rw-r--r--src/VBox/Devices/Graphics/shaderlib/wine/include/msvcrt/mbctype.h90
-rw-r--r--src/VBox/Devices/Graphics/shaderlib/wine/include/msvcrt/mbstring.h132
-rw-r--r--src/VBox/Devices/Graphics/shaderlib/wine/include/msvcrt/memory.h37
-rw-r--r--src/VBox/Devices/Graphics/shaderlib/wine/include/msvcrt/process.h126
-rw-r--r--src/VBox/Devices/Graphics/shaderlib/wine/include/msvcrt/search.h52
-rw-r--r--src/VBox/Devices/Graphics/shaderlib/wine/include/msvcrt/setjmp.h140
-rw-r--r--src/VBox/Devices/Graphics/shaderlib/wine/include/msvcrt/share.h42
-rw-r--r--src/VBox/Devices/Graphics/shaderlib/wine/include/msvcrt/signal.h63
-rw-r--r--src/VBox/Devices/Graphics/shaderlib/wine/include/msvcrt/stddef.h60
-rw-r--r--src/VBox/Devices/Graphics/shaderlib/wine/include/msvcrt/stdio.h272
-rw-r--r--src/VBox/Devices/Graphics/shaderlib/wine/include/msvcrt/stdlib.h301
-rw-r--r--src/VBox/Devices/Graphics/shaderlib/wine/include/msvcrt/string.h156
-rw-r--r--src/VBox/Devices/Graphics/shaderlib/wine/include/msvcrt/sys/locking.h42
-rw-r--r--src/VBox/Devices/Graphics/shaderlib/wine/include/msvcrt/sys/stat.h201
-rw-r--r--src/VBox/Devices/Graphics/shaderlib/wine/include/msvcrt/sys/timeb.h86
-rw-r--r--src/VBox/Devices/Graphics/shaderlib/wine/include/msvcrt/sys/types.h82
-rw-r--r--src/VBox/Devices/Graphics/shaderlib/wine/include/msvcrt/sys/unistd.h1
-rw-r--r--src/VBox/Devices/Graphics/shaderlib/wine/include/msvcrt/sys/utime.h88
-rw-r--r--src/VBox/Devices/Graphics/shaderlib/wine/include/msvcrt/time.h162
-rw-r--r--src/VBox/Devices/Graphics/shaderlib/wine/include/msvcrt/unistd.h2
-rw-r--r--src/VBox/Devices/Graphics/shaderlib/wine/include/msvcrt/wchar.h478
-rw-r--r--src/VBox/Devices/Graphics/shaderlib/wine/include/msvcrt/wctype.h92
39 files changed, 4346 insertions, 0 deletions
diff --git a/src/VBox/Devices/Graphics/shaderlib/wine/include/msvcrt/assert.h b/src/VBox/Devices/Graphics/shaderlib/wine/include/msvcrt/assert.h
new file mode 100644
index 00000000..c13067bd
--- /dev/null
+++ b/src/VBox/Devices/Graphics/shaderlib/wine/include/msvcrt/assert.h
@@ -0,0 +1,46 @@
+/*
+ * Assert support
+ *
+ * Copyright 2011 Alexandre Julliard
+ *
+ * This library is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU Lesser General Public
+ * License as published by the Free Software Foundation; either
+ * version 2.1 of the License, or (at your option) any later version.
+ *
+ * This library 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 for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this library; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA
+ */
+
+/*
+ * Oracle LGPL Disclaimer: For the avoidance of doubt, except that if any license choice
+ * other than GPL or LGPL is available it will apply instead, Oracle elects to use only
+ * the Lesser General Public License version 2.1 (LGPLv2) at this time for any software where
+ * a choice of LGPL license versions is made available with the language indicating
+ * that LGPLv2 or any later version may be used, or where a choice of which version
+ * of the LGPL is applied is otherwise unspecified.
+ */
+
+#include <crtdefs.h>
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+
+#undef assert
+#ifdef NDEBUG
+#define assert(_expr) ((void)0)
+#else
+extern void __cdecl _assert(const char *, const char *, unsigned int);
+#define assert(_expr) (void)((!!(_expr)) || (_assert(#_expr, __FILE__, __LINE__), 0))
+#endif
+
+#ifdef __cplusplus
+}
+#endif
diff --git a/src/VBox/Devices/Graphics/shaderlib/wine/include/msvcrt/conio.h b/src/VBox/Devices/Graphics/shaderlib/wine/include/msvcrt/conio.h
new file mode 100644
index 00000000..18f3d24b
--- /dev/null
+++ b/src/VBox/Devices/Graphics/shaderlib/wine/include/msvcrt/conio.h
@@ -0,0 +1,63 @@
+/*
+ * Console I/O definitions
+ *
+ * Derived from the mingw header written by Colin Peters.
+ * Modified for Wine use by Jon Griffiths and Francois Gouget.
+ * This file is in the public domain.
+ */
+#ifndef __WINE_CONIO_H
+#define __WINE_CONIO_H
+
+#include <crtdefs.h>
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+
+char* __cdecl _cgets(char*);
+int __cdecl _cprintf(const char*,...);
+int __cdecl _cputs(const char*);
+int __cdecl _cscanf(const char*,...);
+int __cdecl _getch(void);
+int __cdecl _getche(void);
+int __cdecl _kbhit(void);
+int __cdecl _putch(int);
+int __cdecl _ungetch(int);
+
+#ifdef _M_IX86
+int __cdecl _inp(unsigned short);
+__msvcrt_ulong __cdecl _inpd(unsigned short);
+unsigned short __cdecl _inpw(unsigned short);
+int __cdecl _outp(unsigned short, int);
+__msvcrt_ulong __cdecl _outpd(unsigned short, __msvcrt_ulong);
+unsigned short __cdecl _outpw(unsigned short, unsigned short);
+#endif
+
+#ifdef __cplusplus
+}
+#endif
+
+
+static inline char* cgets(char* str) { return _cgets(str); }
+static inline int cputs(const char* str) { return _cputs(str); }
+static inline int getch(void) { return _getch(); }
+static inline int getche(void) { return _getche(); }
+static inline int kbhit(void) { return _kbhit(); }
+static inline int putch(int c) { return _putch(c); }
+static inline int ungetch(int c) { return _ungetch(c); }
+#ifdef _M_IX86
+static inline int inp(unsigned short i) { return _inp(i); }
+static inline unsigned short inpw(unsigned short i) { return _inpw(i); }
+static inline int outp(unsigned short i, int j) { return _outp(i, j); }
+static inline unsigned short outpw(unsigned short i, unsigned short j) { return _outpw(i, j); }
+#endif
+
+#if defined(__GNUC__) && (__GNUC__ < 4)
+extern int __cdecl cprintf(const char*,...) __attribute__((alias("_cprintf"),format(printf,1,2)));
+extern int __cdecl cscanf(const char*,...) __attribute__((alias("_cscanf"),format(scanf,1,2)));
+#else
+#define cprintf _cprintf
+#define cscanf _cscanf
+#endif /* __GNUC__ */
+
+#endif /* __WINE_CONIO_H */
diff --git a/src/VBox/Devices/Graphics/shaderlib/wine/include/msvcrt/crtdbg.h b/src/VBox/Devices/Graphics/shaderlib/wine/include/msvcrt/crtdbg.h
new file mode 100644
index 00000000..8e5edb9f
--- /dev/null
+++ b/src/VBox/Devices/Graphics/shaderlib/wine/include/msvcrt/crtdbg.h
@@ -0,0 +1,140 @@
+/*
+ * Debug API
+ *
+ * Copyright 2001 Francois Gouget.
+ *
+ * This library is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU Lesser General Public
+ * License as published by the Free Software Foundation; either
+ * version 2.1 of the License, or (at your option) any later version.
+ *
+ * This library 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 for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this library; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA
+ */
+
+/*
+ * Oracle LGPL Disclaimer: For the avoidance of doubt, except that if any license choice
+ * other than GPL or LGPL is available it will apply instead, Oracle elects to use only
+ * the Lesser General Public License version 2.1 (LGPLv2) at this time for any software where
+ * a choice of LGPL license versions is made available with the language indicating
+ * that LGPLv2 or any later version may be used, or where a choice of which version
+ * of the LGPL is applied is otherwise unspecified.
+ */
+
+#ifndef __WINE_CRTDBG_H_
+#define __WINE_CRTDBG_H_
+
+#include <crtdefs.h>
+
+/* The debug API is not implemented in Winelib.
+ * Redirect everything to the regular APIs.
+ */
+
+#define _CRT_WARN 0
+#define _CRT_ERROR 1
+#define _CRT_ASSERT 2
+#define _CRT_ERRCNT 3
+
+#define _FREE_BLOCK 0
+#define _NORMAL_BLOCK 1
+#define _CRT_BLOCK 2
+#define _IGNORE_BLOCK 3
+#define _CLIENT_BLOCK 4
+#define _MAX_BLOCKS 5
+
+#define _BLOCK_TYPE(block) (block & 0xFFFF)
+#define _BLOCK_SUBTYPE(block) (block >> 16 & 0xFFFF)
+
+typedef struct _CrtMemState
+{
+ struct _CrtMemBlockHeader* pBlockHeader;
+ __msvcrt_ulong lCounts[_MAX_BLOCKS];
+ __msvcrt_ulong lSizes[_MAX_BLOCKS];
+ __msvcrt_ulong lHighWaterCount;
+ __msvcrt_ulong lTotalCount;
+} _CrtMemState;
+
+
+#ifndef _DEBUG
+
+#define _ASSERT(expr) ((void)0)
+#define _ASSERTE(expr) ((void)0)
+#define _CrtDbgBreak() ((void)0)
+
+#define _CrtCheckMemory() ((int)1)
+#define _CrtDbgReport(...) ((int)0)
+#define _CrtDumpMemoryLeaks() ((int)0)
+#define _CrtSetBreakAlloc(a) ((__msvcrt_long)0)
+#define _CrtSetDbgFlag(f) ((int)0)
+#define _CrtSetDumpClient(f) ((void)0)
+#define _CrtSetReportMode(t,m) ((int)0)
+
+#else /* _DEBUG */
+
+#include <assert.h>
+#define _ASSERT(expr) assert(expr)
+#define _ASSERTE(expr) assert(expr)
+#if defined(__GNUC__) && defined(__i386__)
+#define _CrtDbgBreak() __asm__ ("\tint $0x3\n")
+#else
+#define _CrtDbgBreak() ((void)0)
+#endif
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+
+extern int _crtAssertBusy;
+extern int _crtBreakAlloc;
+extern int _crtDbgFlag;
+
+int __cdecl _CrtCheckMemory(void);
+int __cdecl _CrtDbgReport(int reportType, const char *filename, int linenumber,
+ const char *moduleName, const char *format, ...);
+int __cdecl _CrtDumpMemoryLeaks(void);
+int __cdecl _CrtSetBreakAlloc(int);
+int __cdecl _CrtSetDbgFlag(int);
+void *__cdecl _CrtSetDumpClient(void *dumpClient);
+int __cdecl _CrtSetReportMode(int reportType, int reportMode);
+
+#ifdef __cplusplus
+}
+#endif
+
+#endif /* _DEBUG */
+
+#define _CrtDoForAllClientObjects(f,c) ((void)0)
+#define _CrtIsMemoryBlock(p,s,r,f,l) ((int)1)
+#define _CrtIsValidHeapPointer(p) ((int)1)
+#define _CrtIsValidPointer(p,s,a) ((int)1)
+#define _CrtMemCheckpoint(s) ((void)0)
+#define _CrtMemDifference(s1,s2,s3) ((int)0)
+#define _CrtMemDumpAllObjectsSince(s) ((void)0)
+#define _CrtMemDumpStatistics(s) ((void)0)
+#define _CrtSetAllocHook(f) ((void)0)
+
+#define _RPT0(t,m)
+#define _RPT1(t,m,p1)
+#define _RPT2(t,m,p1,p2)
+#define _RPT3(t,m,p1,p2,p3)
+#define _RPT4(t,m,p1,p2,p3,p4)
+#define _RPTF0(t,m)
+#define _RPTF1(t,m,p1)
+#define _RPTF2(t,m,p1,p2)
+#define _RPTF3(t,m,p1,p2,p3)
+#define _RPTF4(t,m,p1,p2,p3,p4)
+
+
+#define _malloc_dbg(s,t,f,l) malloc(s)
+#define _calloc_dbg(c,s,t,f,l) calloc(c,s)
+#define _expand_dbg(p,s,t,f,l) _expand(p,s)
+#define _free_dbg(p,t) free(p)
+#define _realloc_dbg(p,s,t,f,l) realloc(p,s)
+
+#endif /* __WINE_CRTDBG_H */
diff --git a/src/VBox/Devices/Graphics/shaderlib/wine/include/msvcrt/crtdefs.h b/src/VBox/Devices/Graphics/shaderlib/wine/include/msvcrt/crtdefs.h
new file mode 100644
index 00000000..f2764163
--- /dev/null
+++ b/src/VBox/Devices/Graphics/shaderlib/wine/include/msvcrt/crtdefs.h
@@ -0,0 +1,248 @@
+/*
+ * CRT definitions
+ *
+ * Copyright 2000 Francois Gouget.
+ *
+ * This library is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU Lesser General Public
+ * License as published by the Free Software Foundation; either
+ * version 2.1 of the License, or (at your option) any later version.
+ *
+ * This library 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 for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this library; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA
+ */
+
+/*
+ * Oracle LGPL Disclaimer: For the avoidance of doubt, except that if any license choice
+ * other than GPL or LGPL is available it will apply instead, Oracle elects to use only
+ * the Lesser General Public License version 2.1 (LGPLv2) at this time for any software where
+ * a choice of LGPL license versions is made available with the language indicating
+ * that LGPLv2 or any later version may be used, or where a choice of which version
+ * of the LGPL is applied is otherwise unspecified.
+ */
+
+#ifndef __WINE_CRTDEFS_H
+#define __WINE_CRTDEFS_H
+
+#ifndef __WINE_USE_MSVCRT
+#define __WINE_USE_MSVCRT
+#endif
+
+#ifdef __WINE_WINE_PORT_H
+# error You cannot use both wine/port.h and msvcrt headers
+#endif
+
+#if (defined(__x86_64__) || defined(__powerpc64__) || defined(__sparc64__) || defined(__aarch64__)) && !defined(_WIN64)
+#define _WIN64
+#endif
+
+#if !defined(_MSC_VER) && !defined(__int64)
+# if defined(_WIN64) && !defined(__MINGW64__)
+# define __int64 long
+# else
+# define __int64 long long
+# endif
+#endif
+
+#ifndef __stdcall
+# ifdef __i386__
+# ifdef __GNUC__
+# ifdef __APPLE__ /* Mac OS X uses a 16-byte aligned stack and not a 4-byte one */
+# define __stdcall __attribute__((__stdcall__)) __attribute__((__force_align_arg_pointer__))
+# else
+# define __stdcall __attribute__((__stdcall__))
+# endif
+# elif defined(_MSC_VER)
+ /* Nothing needs to be done. __stdcall already exists */
+# else
+# error You need to define __stdcall for your compiler
+# endif
+# elif defined(__x86_64__) && defined (__GNUC__)
+# define __stdcall __attribute__((ms_abi))
+# else
+# define __stdcall
+# endif
+#endif /* __stdcall */
+
+#ifndef __cdecl
+# if defined(__i386__) && defined(__GNUC__)
+# ifdef __APPLE__ /* Mac OS X uses 16-byte aligned stack and not a 4-byte one */
+# define __cdecl __attribute__((__cdecl__)) __attribute__((__force_align_arg_pointer__))
+# else
+# define __cdecl __attribute__((__cdecl__))
+# endif
+# elif defined(__x86_64__) && defined (__GNUC__)
+# define __cdecl __attribute__((ms_abi))
+# elif !defined(_MSC_VER)
+# define __cdecl
+# endif
+#endif /* __cdecl */
+
+#ifndef __ms_va_list
+# if defined(__x86_64__) && defined (__GNUC__)
+# define __ms_va_list __builtin_ms_va_list
+# define __ms_va_start(list,arg) __builtin_ms_va_start(list,arg)
+# define __ms_va_end(list) __builtin_ms_va_end(list)
+# else
+# define __ms_va_list va_list
+# define __ms_va_start(list,arg) va_start(list,arg)
+# define __ms_va_end(list) va_end(list)
+# endif
+#endif
+
+#ifndef DECLSPEC_ALIGN
+# if defined(_MSC_VER) && (_MSC_VER >= 1300) && !defined(MIDL_PASS)
+# define DECLSPEC_ALIGN(x) __declspec(align(x))
+# elif defined(__GNUC__)
+# define DECLSPEC_ALIGN(x) __attribute__((aligned(x)))
+# else
+# define DECLSPEC_ALIGN(x)
+# endif
+#endif
+
+#define _ARGMAX 100
+
+#ifndef _MSVCRT_LONG_DEFINED
+#define _MSVCRT_LONG_DEFINED
+/* we need 32-bit longs even on 64-bit */
+typedef int __msvcrt_long;
+typedef unsigned int __msvcrt_ulong;
+#endif
+
+#ifndef _INTPTR_T_DEFINED
+#ifdef _WIN64
+typedef __int64 intptr_t;
+#else
+typedef int intptr_t;
+#endif
+#define _INTPTR_T_DEFINED
+#endif
+
+#ifndef _UINTPTR_T_DEFINED
+#ifdef _WIN64
+typedef unsigned __int64 uintptr_t;
+#else
+typedef unsigned int uintptr_t;
+#endif
+#define _UINTPTR_T_DEFINED
+#endif
+
+#ifndef _PTRDIFF_T_DEFINED
+#ifdef _WIN64
+typedef __int64 ptrdiff_t;
+#else
+typedef int ptrdiff_t;
+#endif
+#define _PTRDIFF_T_DEFINED
+#endif
+
+#ifndef _SIZE_T_DEFINED
+#ifdef _WIN64
+typedef unsigned __int64 size_t;
+#else
+typedef unsigned int size_t;
+#endif
+#define _SIZE_T_DEFINED
+#endif
+
+#ifndef _TIME32_T_DEFINED
+typedef __msvcrt_long __time32_t;
+#define _TIME32_T_DEFINED
+#endif
+
+#ifndef _TIME64_T_DEFINED
+typedef __int64 DECLSPEC_ALIGN(8) __time64_t;
+#define _TIME64_T_DEFINED
+#endif
+
+#ifdef _USE_32BIT_TIME_T
+# ifdef _WIN64
+# error You cannot use 32-bit time_t in Win64
+# endif
+#elif !defined(_WIN64)
+# define _USE_32BIT_TIME_T
+#endif
+
+#ifndef _TIME_T_DEFINED
+#ifdef _USE_32BIT_TIME_T
+typedef __time32_t time_t;
+#else
+typedef __time64_t time_t;
+#endif
+#define _TIME_T_DEFINED
+#endif
+
+#ifndef _WCHAR_T_DEFINED
+#ifndef __cplusplus
+typedef unsigned short wchar_t;
+#endif
+#define _WCHAR_T_DEFINED
+#endif
+
+#ifndef _WCTYPE_T_DEFINED
+typedef unsigned short wint_t;
+typedef unsigned short wctype_t;
+#define _WCTYPE_T_DEFINED
+#endif
+
+#ifndef _ERRNO_T_DEFINED
+typedef int errno_t;
+#define _ERRNO_T_DEFINED
+#endif
+
+struct threadlocaleinfostruct;
+struct threadmbcinfostruct;
+typedef struct threadlocaleinfostruct *pthreadlocinfo;
+typedef struct threadmbcinfostruct *pthreadmbcinfo;
+
+typedef struct localeinfo_struct
+{
+ pthreadlocinfo locinfo;
+ pthreadmbcinfo mbcinfo;
+} _locale_tstruct, *_locale_t;
+
+#ifndef _TAGLC_ID_DEFINED
+typedef struct tagLC_ID {
+ unsigned short wLanguage;
+ unsigned short wCountry;
+ unsigned short wCodePage;
+} LC_ID, *LPLC_ID;
+#define _TAGLC_ID_DEFINED
+#endif
+
+#ifndef _THREADLOCALEINFO
+typedef struct threadlocaleinfostruct {
+ int refcount;
+ unsigned int lc_codepage;
+ unsigned int lc_collate_cp;
+ __msvcrt_ulong lc_handle[6];
+ LC_ID lc_id[6];
+ struct {
+ char *locale;
+ wchar_t *wlocale;
+ int *refcount;
+ int *wrefcount;
+ } lc_category[6];
+ int lc_clike;
+ int mb_cur_max;
+ int *lconv_intl_refcount;
+ int *lconv_num_refcount;
+ int *lconv_mon_refcount;
+ struct lconv *lconv;
+ int *ctype1_refcount;
+ unsigned short *ctype1;
+ const unsigned short *pctype;
+ const unsigned char *pclmap;
+ const unsigned char *pcumap;
+ struct __lc_time_data *lc_time_curr;
+} threadlocinfo;
+#define _THREADLOCALEINFO
+#endif
+
+#endif /* __WINE_CRTDEFS_H */
diff --git a/src/VBox/Devices/Graphics/shaderlib/wine/include/msvcrt/ctype.h b/src/VBox/Devices/Graphics/shaderlib/wine/include/msvcrt/ctype.h
new file mode 100644
index 00000000..b44e74cf
--- /dev/null
+++ b/src/VBox/Devices/Graphics/shaderlib/wine/include/msvcrt/ctype.h
@@ -0,0 +1,85 @@
+/*
+ * Character type definitions
+ *
+ * Derived from the mingw header written by Colin Peters.
+ * Modified for Wine use by Jon Griffiths and Francois Gouget.
+ * This file is in the public domain.
+ */
+#ifndef __WINE_CTYPE_H
+#define __WINE_CTYPE_H
+
+#include <crtdefs.h>
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+
+#ifndef WEOF
+#define WEOF (wint_t)(0xFFFF)
+#endif
+
+/* ASCII char classification table - binary compatible */
+#define _UPPER 0x0001 /* C1_UPPER */
+#define _LOWER 0x0002 /* C1_LOWER */
+#define _DIGIT 0x0004 /* C1_DIGIT */
+#define _SPACE 0x0008 /* C1_SPACE */
+#define _PUNCT 0x0010 /* C1_PUNCT */
+#define _CONTROL 0x0020 /* C1_CNTRL */
+#define _BLANK 0x0040 /* C1_BLANK */
+#define _HEX 0x0080 /* C1_XDIGIT */
+#define _LEADBYTE 0x8000
+#define _ALPHA (0x0100|_UPPER|_LOWER) /* (C1_ALPHA|_UPPER|_LOWER) */
+
+int __cdecl __isascii(int);
+int __cdecl __iscsym(int);
+int __cdecl __iscsymf(int);
+int __cdecl __toascii(int);
+int __cdecl _isctype(int,int);
+int __cdecl _tolower(int);
+int __cdecl _toupper(int);
+int __cdecl isalnum(int);
+int __cdecl isalpha(int);
+int __cdecl iscntrl(int);
+int __cdecl isdigit(int);
+int __cdecl isgraph(int);
+int __cdecl islower(int);
+int __cdecl isprint(int);
+int __cdecl ispunct(int);
+int __cdecl isspace(int);
+int __cdecl isupper(int);
+int __cdecl isxdigit(int);
+int __cdecl tolower(int);
+int __cdecl toupper(int);
+
+#ifndef _WCTYPE_DEFINED
+#define _WCTYPE_DEFINED
+int __cdecl is_wctype(wint_t,wctype_t);
+int __cdecl isleadbyte(int);
+int __cdecl iswalnum(wint_t);
+int __cdecl iswalpha(wint_t);
+int __cdecl iswascii(wint_t);
+int __cdecl iswcntrl(wint_t);
+int __cdecl iswctype(wint_t,wctype_t);
+int __cdecl iswdigit(wint_t);
+int __cdecl iswgraph(wint_t);
+int __cdecl iswlower(wint_t);
+int __cdecl iswprint(wint_t);
+int __cdecl iswpunct(wint_t);
+int __cdecl iswspace(wint_t);
+int __cdecl iswupper(wint_t);
+int __cdecl iswxdigit(wint_t);
+wchar_t __cdecl towlower(wchar_t);
+wchar_t __cdecl towupper(wchar_t);
+#endif /* _WCTYPE_DEFINED */
+
+#ifdef __cplusplus
+}
+#endif
+
+
+static inline int isascii(int c) { return __isascii(c); }
+static inline int iscsym(int c) { return __iscsym(c); }
+static inline int iscsymf(int c) { return __iscsymf(c); }
+static inline int toascii(int c) { return __toascii(c); }
+
+#endif /* __WINE_CTYPE_H */
diff --git a/src/VBox/Devices/Graphics/shaderlib/wine/include/msvcrt/direct.h b/src/VBox/Devices/Graphics/shaderlib/wine/include/msvcrt/direct.h
new file mode 100644
index 00000000..45db8e2f
--- /dev/null
+++ b/src/VBox/Devices/Graphics/shaderlib/wine/include/msvcrt/direct.h
@@ -0,0 +1,59 @@
+/*
+ * Path and directory definitions
+ *
+ * Derived from the mingw header written by Colin Peters.
+ * Modified for Wine use by Jon Griffiths and Francois Gouget.
+ * This file is in the public domain.
+ */
+#ifndef __WINE_DIRECT_H
+#define __WINE_DIRECT_H
+
+#include <crtdefs.h>
+
+#include <pshpack8.h>
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+
+#ifndef _DISKFREE_T_DEFINED
+#define _DISKFREE_T_DEFINED
+struct _diskfree_t {
+ unsigned int total_clusters;
+ unsigned int avail_clusters;
+ unsigned int sectors_per_cluster;
+ unsigned int bytes_per_sector;
+};
+#endif /* _DISKFREE_T_DEFINED */
+
+int __cdecl _chdir(const char*);
+int __cdecl _chdrive(int);
+char* __cdecl _getcwd(char*,int);
+char* __cdecl _getdcwd(int,char*,int);
+int __cdecl _getdrive(void);
+__msvcrt_ulong __cdecl _getdrives(void);
+int __cdecl _mkdir(const char*);
+int __cdecl _rmdir(const char*);
+
+#ifndef _WDIRECT_DEFINED
+#define _WDIRECT_DEFINED
+int __cdecl _wchdir(const wchar_t*);
+wchar_t* __cdecl _wgetcwd(wchar_t*,int);
+wchar_t* __cdecl _wgetdcwd(int,wchar_t*,int);
+int __cdecl _wmkdir(const wchar_t*);
+int __cdecl _wrmdir(const wchar_t*);
+#endif /* _WDIRECT_DEFINED */
+
+#ifdef __cplusplus
+}
+#endif
+
+
+static inline int chdir(const char* newdir) { return _chdir(newdir); }
+static inline char* getcwd(char * buf, int size) { return _getcwd(buf, size); }
+static inline int mkdir(const char* newdir) { return _mkdir(newdir); }
+static inline int rmdir(const char* dir) { return _rmdir(dir); }
+
+#include <poppack.h>
+
+#endif /* __WINE_DIRECT_H */
diff --git a/src/VBox/Devices/Graphics/shaderlib/wine/include/msvcrt/dirent.h b/src/VBox/Devices/Graphics/shaderlib/wine/include/msvcrt/dirent.h
new file mode 100644
index 00000000..5e042800
--- /dev/null
+++ b/src/VBox/Devices/Graphics/shaderlib/wine/include/msvcrt/dirent.h
@@ -0,0 +1 @@
+#include <direct.h>
diff --git a/src/VBox/Devices/Graphics/shaderlib/wine/include/msvcrt/dos.h b/src/VBox/Devices/Graphics/shaderlib/wine/include/msvcrt/dos.h
new file mode 100644
index 00000000..bc62188a
--- /dev/null
+++ b/src/VBox/Devices/Graphics/shaderlib/wine/include/msvcrt/dos.h
@@ -0,0 +1,50 @@
+/*
+ * DOS definitions
+ *
+ * Derived from the mingw header written by Colin Peters.
+ * Modified for Wine use by Jon Griffiths and Francois Gouget.
+ * This file is in the public domain.
+ */
+#ifndef __WINE_DOS_H
+#define __WINE_DOS_H
+
+#include <crtdefs.h>
+
+#include <pshpack8.h>
+
+/* The following are also defined in io.h */
+#define _A_NORMAL 0x00000000
+#define _A_RDONLY 0x00000001
+#define _A_HIDDEN 0x00000002
+#define _A_SYSTEM 0x00000004
+#define _A_VOLID 0x00000008
+#define _A_SUBDIR 0x00000010
+#define _A_ARCH 0x00000020
+
+#ifndef _DISKFREE_T_DEFINED
+#define _DISKFREE_T_DEFINED
+struct _diskfree_t {
+ unsigned int total_clusters;
+ unsigned int avail_clusters;
+ unsigned int sectors_per_cluster;
+ unsigned int bytes_per_sector;
+};
+#endif /* _DISKFREE_T_DEFINED */
+
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+
+unsigned int __cdecl _getdiskfree(unsigned int, struct _diskfree_t *);
+
+#ifdef __cplusplus
+}
+#endif
+
+
+#define diskfree_t _diskfree_t
+
+#include <poppack.h>
+
+#endif /* __WINE_DOS_H */
diff --git a/src/VBox/Devices/Graphics/shaderlib/wine/include/msvcrt/eh.h b/src/VBox/Devices/Graphics/shaderlib/wine/include/msvcrt/eh.h
new file mode 100644
index 00000000..0b421a1b
--- /dev/null
+++ b/src/VBox/Devices/Graphics/shaderlib/wine/include/msvcrt/eh.h
@@ -0,0 +1,58 @@
+/*
+ * C++ exception handling facility
+ *
+ * Copyright 2000 Francois Gouget.
+ *
+ * This library is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU Lesser General Public
+ * License as published by the Free Software Foundation; either
+ * version 2.1 of the License, or (at your option) any later version.
+ *
+ * This library 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 for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this library; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA
+ */
+
+/*
+ * Oracle LGPL Disclaimer: For the avoidance of doubt, except that if any license choice
+ * other than GPL or LGPL is available it will apply instead, Oracle elects to use only
+ * the Lesser General Public License version 2.1 (LGPLv2) at this time for any software where
+ * a choice of LGPL license versions is made available with the language indicating
+ * that LGPLv2 or any later version may be used, or where a choice of which version
+ * of the LGPL is applied is otherwise unspecified.
+ */
+
+#ifndef __WINE_EH_H
+#define __WINE_EH_H
+
+#include <crtdefs.h>
+
+#if !defined(__cplusplus) && !defined(__WINE_MSVCRT_TEST)
+#error "eh.h is meant only for C++ applications"
+#endif
+
+#include <pshpack8.h>
+
+struct _EXCEPTION_POINTERS;
+
+typedef void (__cdecl *terminate_handler)(void);
+typedef void (__cdecl *terminate_function)(void);
+typedef void (__cdecl *unexpected_handler)(void);
+typedef void (__cdecl *unexpected_function)(void);
+typedef void (__cdecl *_se_translator_function)(unsigned int code, struct _EXCEPTION_POINTERS *info);
+
+terminate_function __cdecl set_terminate(terminate_function func);
+unexpected_function __cdecl set_unexpected(unexpected_function func);
+_se_translator_function __cdecl set_se_translator(_se_translator_function func);
+
+void __cdecl terminate(void);
+void __cdecl unexpected(void);
+
+#include <poppack.h>
+
+#endif /* __WINE_EH_H */
diff --git a/src/VBox/Devices/Graphics/shaderlib/wine/include/msvcrt/errno.h b/src/VBox/Devices/Graphics/shaderlib/wine/include/msvcrt/errno.h
new file mode 100644
index 00000000..d7388684
--- /dev/null
+++ b/src/VBox/Devices/Graphics/shaderlib/wine/include/msvcrt/errno.h
@@ -0,0 +1,87 @@
+/*
+ * Copyright 2001 Jon Griffiths
+ *
+ * This library is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU Lesser General Public
+ * License as published by the Free Software Foundation; either
+ * version 2.1 of the License, or (at your option) any later version.
+ *
+ * This library 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 for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this library; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA
+ */
+
+/*
+ * Oracle LGPL Disclaimer: For the avoidance of doubt, except that if any license choice
+ * other than GPL or LGPL is available it will apply instead, Oracle elects to use only
+ * the Lesser General Public License version 2.1 (LGPLv2) at this time for any software where
+ * a choice of LGPL license versions is made available with the language indicating
+ * that LGPLv2 or any later version may be used, or where a choice of which version
+ * of the LGPL is applied is otherwise unspecified.
+ */
+
+#ifndef __WINE_ERRNO_H
+#define __WINE_ERRNO_H
+
+#include <crtdefs.h>
+
+# define EPERM 1
+# define ENOENT 2
+# define ESRCH 3
+# define EINTR 4
+# define EIO 5
+# define ENXIO 6
+# define E2BIG 7
+# define ENOEXEC 8
+# define EBADF 9
+# define ECHILD 10
+# define EAGAIN 11
+# define ENOMEM 12
+# define EACCES 13
+# define EFAULT 14
+# define EBUSY 16
+# define EEXIST 17
+# define EXDEV 18
+# define ENODEV 19
+# define ENOTDIR 20
+# define EISDIR 21
+# define EINVAL 22
+# define ENFILE 23
+# define EMFILE 24
+# define ENOTTY 25
+# define EFBIG 27
+# define ENOSPC 28
+# define ESPIPE 29
+# define EROFS 30
+# define EMLINK 31
+# define EPIPE 32
+# define EDOM 33
+# define ERANGE 34
+# define EDEADLK 36
+# define EDEADLOCK EDEADLK
+# define ENAMETOOLONG 38
+# define ENOLCK 39
+# define ENOSYS 40
+# define ENOTEMPTY 41
+# define EILSEQ 42
+
+# define STRUNCATE 80
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+
+extern int* __cdecl _errno(void);
+
+#ifdef __cplusplus
+}
+#endif
+
+#define errno (*_errno())
+
+#endif /* __WINE_ERRNO_H */
diff --git a/src/VBox/Devices/Graphics/shaderlib/wine/include/msvcrt/fcntl.h b/src/VBox/Devices/Graphics/shaderlib/wine/include/msvcrt/fcntl.h
new file mode 100644
index 00000000..267feed5
--- /dev/null
+++ b/src/VBox/Devices/Graphics/shaderlib/wine/include/msvcrt/fcntl.h
@@ -0,0 +1,50 @@
+/*
+ * File definitions
+ *
+ * Derived from the mingw header written by Colin Peters.
+ * Modified for Wine use by Jon Griffiths and Francois Gouget.
+ * This file is in the public domain.
+ */
+#ifndef __WINE_FCNTL_H
+#define __WINE_FCNTL_H
+
+#include <crtdefs.h>
+
+#define _O_RDONLY 0
+#define _O_WRONLY 1
+#define _O_RDWR 2
+#define _O_ACCMODE (_O_RDONLY|_O_WRONLY|_O_RDWR)
+#define _O_APPEND 0x0008
+#define _O_RANDOM 0x0010
+#define _O_SEQUENTIAL 0x0020
+#define _O_TEMPORARY 0x0040
+#define _O_NOINHERIT 0x0080
+#define _O_CREAT 0x0100
+#define _O_TRUNC 0x0200
+#define _O_EXCL 0x0400
+#define _O_SHORT_LIVED 0x1000
+#define _O_TEXT 0x4000
+#define _O_BINARY 0x8000
+#define _O_RAW _O_BINARY
+
+#define _O_WTEXT 0x10000
+#define _O_U16TEXT 0x20000
+#define _O_U8TEXT 0x40000
+
+#define O_RDONLY _O_RDONLY
+#define O_WRONLY _O_WRONLY
+#define O_RDWR _O_RDWR
+#define O_ACCMODE _O_ACCMODE
+#define O_APPEND _O_APPEND
+#define O_RANDOM _O_RANDOM
+#define O_SEQENTIAL _O_SEQUENTIAL
+#define O_TEMPORARY _O_TEMPORARY
+#define O_NOINHERIT _O_NOINHERIT
+#define O_CREAT _O_CREAT
+#define O_TRUNC _O_TRUNC
+#define O_EXCL _O_EXCL
+#define O_TEXT _O_TEXT
+#define O_BINARY _O_BINARY
+#define O_RAW _O_BINARY
+
+#endif /* __WINE_FCNTL_H */
diff --git a/src/VBox/Devices/Graphics/shaderlib/wine/include/msvcrt/float.h b/src/VBox/Devices/Graphics/shaderlib/wine/include/msvcrt/float.h
new file mode 100644
index 00000000..33ebb689
--- /dev/null
+++ b/src/VBox/Devices/Graphics/shaderlib/wine/include/msvcrt/float.h
@@ -0,0 +1,158 @@
+/*
+ * Floating point arithmetic.
+ *
+ * Derived from the mingw header written by Colin Peters.
+ * Modified for Wine use by Hans Leidekker.
+ * This file is in the public domain.
+ */
+
+#ifndef __WINE_FLOAT_H
+#define __WINE_FLOAT_H
+
+#include <crtdefs.h>
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+
+#define DBL_DIG 15
+#define DBL_EPSILON 2.2204460492503131e-016
+#define DBL_MANT_DIG 53
+#define DBL_MAX 1.7976931348623158e+308
+#define DBL_MAX_10_EXP 308
+#define DBL_MAX_EXP 1024
+#define DBL_MIN 2.2250738585072014e-308
+#define DBL_MIN_10_EXP (-307)
+#define DBL_MIN_EXP (-1021)
+
+#define _DBL_RADIX 2
+#define _DBL_ROUNDS 1
+
+#define DBL_RADIX _DBL_RADIX
+#define DBL_ROUNDS _DBL_ROUNDS
+
+#define FLT_DIG 6
+#define FLT_EPSILON 1.192092896e-07F
+#define FLT_MANT_DIG 24
+#define FLT_MAX 3.402823466e+38F
+#define FLT_MAX_10_EXP 38
+#define FLT_MAX_EXP 128
+#define FLT_MIN 1.175494351e-38F
+#define FLT_MIN_10_EXP (-37)
+#define FLT_MIN_EXP (-125)
+
+#define FLT_RADIX 2
+#define FLT_ROUNDS 1
+
+#define LDBL_DIG DBL_DIG
+#define LDBL_EPSILON DBL_EPSILON
+#define LDBL_MANT_DIG DBL_MANT_DIG
+#define LDBL_MAX DBL_MAX
+#define LDBL_MAX_10_EXP DBL_MAX_10_EXP
+#define LDBL_MAX_EXP DBL_MAX_EXP
+#define LDBL_MIN DBL_MIN
+#define LDBL_MIN_10_EXP DBL_MIN_10_EXP
+#define LDBL_MIN_EXP DBL_MIN_EXP
+
+#define _LDBL_RADIX _DBL_RADIX
+#define _LDBL_ROUNDS _DBL_ROUNDS
+
+#define LDBL_RADIX _LDBL_RADIX
+#define LDBL_ROUNDS _LDBL_ROUNDS
+
+/* Control word masks for unMask */
+#define _MCW_EM 0x0008001f
+#define _MCW_IC 0x00040000
+#define _MCW_RC 0x00000300
+#define _MCW_PC 0x00030000
+#define _MCW_DN 0x03000000
+
+/* Control word values for unNew (use with related unMask above) */
+#define _EM_INVALID 0x00000010
+#define _EM_DENORMAL 0x00080000
+#define _EM_ZERODIVIDE 0x00000008
+#define _EM_OVERFLOW 0x00000004
+#define _EM_UNDERFLOW 0x00000002
+#define _EM_INEXACT 0x00000001
+#define _IC_AFFINE 0x00040000
+#define _IC_PROJECTIVE 0x00000000
+#define _RC_CHOP 0x00000300
+#define _RC_UP 0x00000200
+#define _RC_DOWN 0x00000100
+#define _RC_NEAR 0x00000000
+#define _PC_24 0x00020000
+#define _PC_53 0x00010000
+#define _PC_64 0x00000000
+#define _DN_SAVE 0x00000000
+#define _DN_FLUSH 0x01000000
+#define _DN_FLUSH_OPERANDS_SAVE_RESULTS 0x02000000
+#define _DN_SAVE_OPERANDS_FLUSH_RESULTS 0x03000000
+#define _EM_AMBIGUOUS 0x80000000
+
+/* _statusfp bit flags */
+#define _SW_INEXACT 0x00000001 /* inexact (precision) */
+#define _SW_UNDERFLOW 0x00000002 /* underflow */
+#define _SW_OVERFLOW 0x00000004 /* overflow */
+#define _SW_ZERODIVIDE 0x00000008 /* zero divide */
+#define _SW_INVALID 0x00000010 /* invalid */
+
+#define _SW_UNEMULATED 0x00000040 /* unemulated instruction */
+#define _SW_SQRTNEG 0x00000080 /* square root of a neg number */
+#define _SW_STACKOVERFLOW 0x00000200 /* FP stack overflow */
+#define _SW_STACKUNDERFLOW 0x00000400 /* FP stack underflow */
+
+#define _SW_DENORMAL 0x00080000 /* denormal status bit */
+
+/* fpclass constants */
+#define _FPCLASS_SNAN 0x0001 /* Signaling "Not a Number" */
+#define _FPCLASS_QNAN 0x0002 /* Quiet "Not a Number" */
+#define _FPCLASS_NINF 0x0004 /* Negative Infinity */
+#define _FPCLASS_NN 0x0008 /* Negative Normal */
+#define _FPCLASS_ND 0x0010 /* Negative Denormal */
+#define _FPCLASS_NZ 0x0020 /* Negative Zero */
+#define _FPCLASS_PZ 0x0040 /* Positive Zero */
+#define _FPCLASS_PD 0x0080 /* Positive Denormal */
+#define _FPCLASS_PN 0x0100 /* Positive Normal */
+#define _FPCLASS_PINF 0x0200 /* Positive Infinity */
+
+/* floating point error signals */
+#define _FPE_INVALID 0x81
+#define _FPE_DENORMAL 0x82
+#define _FPE_ZERODIVIDE 0x83
+#define _FPE_OVERFLOW 0x84
+#define _FPE_UNDERFLOW 0x85
+#define _FPE_INEXACT 0x86
+#define _FPE_UNEMULATED 0x87
+#define _FPE_SQRTNEG 0x88
+#define _FPE_STACKOVERFLOW 0x8a
+#define _FPE_STACKUNDERFLOW 0x8b
+#define _FPE_EXPLICITGEN 0x8c
+
+#if defined(__i386__)
+#define _CW_DEFAULT (_RC_NEAR + _PC_53 + _EM_INVALID + _EM_ZERODIVIDE + _EM_OVERFLOW + _EM_UNDERFLOW + _EM_INEXACT + _EM_DENORMAL)
+#elif defined(__x86_64__)
+#define _CW_DEFAULT (_RC_NEAR + _PC_64 + _EM_INVALID + _EM_ZERODIVIDE + _EM_OVERFLOW + _EM_UNDERFLOW + _EM_INEXACT + _EM_DENORMAL)
+#endif
+
+unsigned int __cdecl _control87(unsigned int, unsigned int);
+unsigned int __cdecl _controlfp(unsigned int, unsigned int);
+errno_t __cdecl _controlfp_s(unsigned int *, unsigned int, unsigned int);
+
+double __cdecl _copysign (double, double);
+double __cdecl _chgsign (double);
+double __cdecl _scalb(double, __msvcrt_long);
+double __cdecl _logb(double);
+double __cdecl _nextafter(double, double);
+int __cdecl _finite(double);
+int __cdecl _isnan(double);
+int __cdecl _fpclass(double);
+
+#ifdef __x86_64__
+float __cdecl _scalbf(float, __msvcrt_long);
+#endif
+
+#ifdef __cplusplus
+}
+#endif
+
+#endif /* __WINE_FLOAT_H */
diff --git a/src/VBox/Devices/Graphics/shaderlib/wine/include/msvcrt/io.h b/src/VBox/Devices/Graphics/shaderlib/wine/include/msvcrt/io.h
new file mode 100644
index 00000000..09b615c8
--- /dev/null
+++ b/src/VBox/Devices/Graphics/shaderlib/wine/include/msvcrt/io.h
@@ -0,0 +1,184 @@
+/*
+ * System I/O definitions.
+ *
+ * Derived from the mingw header written by Colin Peters.
+ * Modified for Wine use by Jon Griffiths and Francois Gouget.
+ * This file is in the public domain.
+ */
+#ifndef __WINE_IO_H
+#define __WINE_IO_H
+
+#include <crtdefs.h>
+
+#include <pshpack8.h>
+
+/* The following are also defined in dos.h */
+#define _A_NORMAL 0x00000000
+#define _A_RDONLY 0x00000001
+#define _A_HIDDEN 0x00000002
+#define _A_SYSTEM 0x00000004
+#define _A_VOLID 0x00000008
+#define _A_SUBDIR 0x00000010
+#define _A_ARCH 0x00000020
+
+#ifndef _FSIZE_T_DEFINED
+typedef __msvcrt_ulong _fsize_t;
+#define _FSIZE_T_DEFINED
+#endif
+
+#ifndef _FINDDATA_T_DEFINED
+#define _FINDDATA_T_DEFINED
+struct _finddata_t
+{
+ unsigned attrib;
+ time_t time_create;
+ time_t time_access;
+ time_t time_write;
+ _fsize_t size;
+ char name[260];
+};
+
+struct _finddatai64_t
+{
+ unsigned attrib;
+ time_t time_create;
+ time_t time_access;
+ time_t time_write;
+ __int64 DECLSPEC_ALIGN(8) size;
+ char name[260];
+};
+
+struct _finddata64_t
+{
+ unsigned attrib;
+ __time64_t time_create;
+ __time64_t time_access;
+ __time64_t time_write;
+ __int64 DECLSPEC_ALIGN(8) size;
+ char name[260];
+};
+#endif /* _FINDDATA_T_DEFINED */
+
+#ifndef _WFINDDATA_T_DEFINED
+#define _WFINDDATA_T_DEFINED
+struct _wfinddata_t {
+ unsigned attrib;
+ time_t time_create;
+ time_t time_access;
+ time_t time_write;
+ _fsize_t size;
+ wchar_t name[260];
+};
+
+struct _wfinddatai64_t {
+ unsigned attrib;
+ time_t time_create;
+ time_t time_access;
+ time_t time_write;
+ __int64 DECLSPEC_ALIGN(8) size;
+ wchar_t name[260];
+};
+#endif /* _WFINDDATA_T_DEFINED */
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+
+int __cdecl _access(const char*,int);
+int __cdecl _chmod(const char*,int);
+int __cdecl _chsize(int,__msvcrt_ulong);
+int __cdecl _close(int);
+int __cdecl _commit(int);
+int __cdecl _creat(const char*,int);
+int __cdecl _dup(int);
+int __cdecl _dup2(int,int);
+int __cdecl _eof(int);
+__int64 __cdecl _filelengthi64(int);
+__msvcrt_long __cdecl _filelength(int);
+int __cdecl _findclose(intptr_t);
+intptr_t __cdecl _findfirst(const char*,struct _finddata_t*);
+intptr_t __cdecl _findfirsti64(const char*, struct _finddatai64_t*);
+intptr_t __cdecl _findfirst64(const char*, struct _finddata64_t*);
+int __cdecl _findnext(intptr_t,struct _finddata_t*);
+int __cdecl _findnexti64(intptr_t, struct _finddatai64_t*);
+int __cdecl _findnext64(intptr_t, struct _finddata64_t*);
+intptr_t __cdecl _get_osfhandle(int);
+int __cdecl _isatty(int);
+int __cdecl _locking(int,int,__msvcrt_long);
+__msvcrt_long __cdecl _lseek(int,__msvcrt_long,int);
+__int64 __cdecl _lseeki64(int,__int64,int);
+char* __cdecl _mktemp(char*);
+int __cdecl _mktemp_s(char*,size_t);
+int __cdecl _open(const char*,int,...);
+int __cdecl _open_osfhandle(intptr_t,int);
+int __cdecl _pipe(int*,unsigned int,int);
+int __cdecl _read(int,void*,unsigned int);
+int __cdecl _setmode(int,int);
+int __cdecl _sopen(const char*,int,int,...);
+__msvcrt_long __cdecl _tell(int);
+__int64 __cdecl _telli64(int);
+int __cdecl _umask(int);
+int __cdecl _unlink(const char*);
+int __cdecl _write(int,const void*,unsigned int);
+
+int __cdecl remove(const char*);
+int __cdecl rename(const char*,const char*);
+
+#ifndef _WIO_DEFINED
+#define _WIO_DEFINED
+int __cdecl _waccess(const wchar_t*,int);
+int __cdecl _wchmod(const wchar_t*,int);
+int __cdecl _wcreat(const wchar_t*,int);
+intptr_t __cdecl _wfindfirst(const wchar_t*,struct _wfinddata_t*);
+intptr_t __cdecl _wfindfirsti64(const wchar_t*, struct _wfinddatai64_t*);
+int __cdecl _wfindnext(intptr_t,struct _wfinddata_t*);
+int __cdecl _wfindnexti64(intptr_t, struct _wfinddatai64_t*);
+wchar_t * __cdecl _wmktemp(wchar_t*);
+int __cdecl _wopen(const wchar_t*,int,...);
+int __cdecl _wrename(const wchar_t*,const wchar_t*);
+int __cdecl _wsopen(const wchar_t*,int,int,...);
+int __cdecl _wunlink(const wchar_t*);
+#endif /* _WIO_DEFINED */
+
+#ifdef __cplusplus
+}
+#endif
+
+
+static inline int access(const char* path, int mode) { return _access(path, mode); }
+static inline int chmod(const char* path, int mode) { return _chmod(path, mode); }
+static inline int chsize(int fd, __msvcrt_long size) { return _chsize(fd, size); }
+static inline int close(int fd) { return _close(fd); }
+static inline int creat(const char* path, int mode) { return _creat(path, mode); }
+static inline int dup(int od) { return _dup(od); }
+static inline int dup2(int od, int nd) { return _dup2(od, nd); }
+static inline int eof(int fd) { return _eof(fd); }
+static inline __msvcrt_long filelength(int fd) { return _filelength(fd); }
+static inline int isatty(int fd) { return _isatty(fd); }
+static inline int locking(int fd, int mode, __msvcrt_long size) { return _locking(fd, mode, size); }
+static inline __msvcrt_long lseek(int fd, __msvcrt_long off, int where) { return _lseek(fd, off, where); }
+static inline char* mktemp(char* pat) { return _mktemp(pat); }
+static inline int read(int fd, void* buf, unsigned int size) { return _read(fd, buf, size); }
+static inline int setmode(int fd, int mode) { return _setmode(fd, mode); }
+static inline __msvcrt_long tell(int fd) { return _tell(fd); }
+#ifndef _UMASK_DEFINED
+static inline int umask(int fd) { return _umask(fd); }
+#define _UMASK_DEFINED
+#endif
+#ifndef _UNLINK_DEFINED
+static inline int unlink(const char* path) { return _unlink(path); }
+#define _UNLINK_DEFINED
+#endif
+static inline int write(int fd, const void* buf, unsigned int size) { return _write(fd, buf, size); }
+
+#if defined(__GNUC__) && (__GNUC__ < 4)
+extern int __cdecl open(const char*,int,...) __attribute__((alias("_open")));
+extern int __cdecl sopen(const char*,int,int,...) __attribute__((alias("_sopen")));
+#else
+#define open _open
+#define sopen _sopen
+#endif /* __GNUC__ */
+
+#include <poppack.h>
+
+#endif /* __WINE_IO_H */
diff --git a/src/VBox/Devices/Graphics/shaderlib/wine/include/msvcrt/limits.h b/src/VBox/Devices/Graphics/shaderlib/wine/include/msvcrt/limits.h
new file mode 100644
index 00000000..d0f058b1
--- /dev/null
+++ b/src/VBox/Devices/Graphics/shaderlib/wine/include/msvcrt/limits.h
@@ -0,0 +1,49 @@
+#ifndef __WINE_LIMITS_H
+#define __WINE_LIMITS_H
+
+#include <crtdefs.h>
+
+#define CHAR_BIT 8
+#define MB_LEN_MAX 2
+
+#define SCHAR_MIN (-0x80)
+#define SCHAR_MAX 0x7f
+#define UCHAR_MAX 0xff
+
+#ifdef __CHAR_UNSIGNED__
+# define CHAR_MIN 0
+# define CHAR_MAX UCHAR_MAX
+#else
+# define CHAR_MIN SCHAR_MIN
+# define CHAR_MAX SCHAR_MAX
+#endif
+
+#define SHRT_MIN (-0x8000)
+#define SHRT_MAX 0x7fff
+#define USHRT_MAX 0xffff
+
+#define INT_MIN (-0x80000000)
+#define INT_MAX 0x7fffffff
+#define UINT_MAX 0xffffffff
+
+#define LONG_MIN (-0x80000000L)
+#define LONG_MAX 0x7fffffffL
+#define ULONG_MAX 0xffffffffUL
+
+#define _I64_MAX (((__int64)0x7fffffff << 32) | 0xffffffff)
+#define _I64_MIN (-_I64_MAX-1)
+#define _UI64_MAX (((unsigned __int64)0xffffffff << 32) | 0xffffffff)
+
+#define I64_MIN _I64_MIN
+#define I64_MAX _I64_MAX
+#define UI64_MAX _UI64_MAX
+
+#ifndef SIZE_MAX
+# ifdef _WIN64
+# define SIZE_MAX UI64_MAX
+# else
+# define SIZE_MAX UINT_MAX
+# endif
+#endif
+
+#endif /* __WINE_LIMITS_H */
diff --git a/src/VBox/Devices/Graphics/shaderlib/wine/include/msvcrt/locale.h b/src/VBox/Devices/Graphics/shaderlib/wine/include/msvcrt/locale.h
new file mode 100644
index 00000000..6cc35fe6
--- /dev/null
+++ b/src/VBox/Devices/Graphics/shaderlib/wine/include/msvcrt/locale.h
@@ -0,0 +1,90 @@
+/*
+ * Locale definitions
+ *
+ * Copyright 2000 Francois Gouget.
+ *
+ * This library is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU Lesser General Public
+ * License as published by the Free Software Foundation; either
+ * version 2.1 of the License, or (at your option) any later version.
+ *
+ * This library 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 for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this library; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA
+ */
+
+/*
+ * Oracle LGPL Disclaimer: For the avoidance of doubt, except that if any license choice
+ * other than GPL or LGPL is available it will apply instead, Oracle elects to use only
+ * the Lesser General Public License version 2.1 (LGPLv2) at this time for any software where
+ * a choice of LGPL license versions is made available with the language indicating
+ * that LGPLv2 or any later version may be used, or where a choice of which version
+ * of the LGPL is applied is otherwise unspecified.
+ */
+
+#ifndef __WINE_LOCALE_H
+#define __WINE_LOCALE_H
+
+#include <crtdefs.h>
+
+#define LC_ALL 0
+#define LC_COLLATE 1
+#define LC_CTYPE 2
+#define LC_MONETARY 3
+#define LC_NUMERIC 4
+#define LC_TIME 5
+#define LC_MIN LC_ALL
+#define LC_MAX LC_TIME
+
+#ifndef _LCONV_DEFINED
+#define _LCONV_DEFINED
+struct lconv
+{
+ char* decimal_point;
+ char* thousands_sep;
+ char* grouping;
+ char* int_curr_symbol;
+ char* currency_symbol;
+ char* mon_decimal_point;
+ char* mon_thousands_sep;
+ char* mon_grouping;
+ char* positive_sign;
+ char* negative_sign;
+ char int_frac_digits;
+ char frac_digits;
+ char p_cs_precedes;
+ char p_sep_by_space;
+ char n_cs_precedes;
+ char n_sep_by_space;
+ char p_sign_posn;
+ char n_sign_posn;
+};
+#endif /* _LCONV_DEFINED */
+
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+
+char* __cdecl setlocale(int,const char*);
+struct lconv* __cdecl localeconv(void);
+int __cdecl _configthreadlocale(int);
+_locale_t __cdecl _get_current_locale(void);
+_locale_t __cdecl _create_locale(int, const char*);
+void __cdecl _free_locale(_locale_t);
+
+#ifndef _WLOCALE_DEFINED
+#define _WLOCALE_DEFINED
+wchar_t* __cdecl _wsetlocale(int,const wchar_t*);
+#endif /* _WLOCALE_DEFINED */
+
+#ifdef __cplusplus
+}
+#endif
+
+#endif /* __WINE_LOCALE_H */
diff --git a/src/VBox/Devices/Graphics/shaderlib/wine/include/msvcrt/malloc.h b/src/VBox/Devices/Graphics/shaderlib/wine/include/msvcrt/malloc.h
new file mode 100644
index 00000000..a92f12bc
--- /dev/null
+++ b/src/VBox/Devices/Graphics/shaderlib/wine/include/msvcrt/malloc.h
@@ -0,0 +1,99 @@
+/*
+ * Heap definitions
+ *
+ * Copyright 2001 Francois Gouget.
+ *
+ * This library is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU Lesser General Public
+ * License as published by the Free Software Foundation; either
+ * version 2.1 of the License, or (at your option) any later version.
+ *
+ * This library 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 for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this library; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA
+ */
+
+/*
+ * Oracle LGPL Disclaimer: For the avoidance of doubt, except that if any license choice
+ * other than GPL or LGPL is available it will apply instead, Oracle elects to use only
+ * the Lesser General Public License version 2.1 (LGPLv2) at this time for any software where
+ * a choice of LGPL license versions is made available with the language indicating
+ * that LGPLv2 or any later version may be used, or where a choice of which version
+ * of the LGPL is applied is otherwise unspecified.
+ */
+
+#ifndef __WINE_MALLOC_H
+#define __WINE_MALLOC_H
+
+#include <crtdefs.h>
+
+/* heap function constants */
+#define _HEAPEMPTY -1
+#define _HEAPOK -2
+#define _HEAPBADBEGIN -3
+#define _HEAPBADNODE -4
+#define _HEAPEND -5
+#define _HEAPBADPTR -6
+
+#define _FREEENTRY 0
+#define _USEDENTRY 1
+
+#ifndef _HEAPINFO_DEFINED
+#define _HEAPINFO_DEFINED
+typedef struct _heapinfo
+{
+ int* _pentry;
+ size_t _size;
+ int _useflag;
+} _HEAPINFO;
+#endif /* _HEAPINFO_DEFINED */
+
+#ifdef __i386__
+extern unsigned int* __cdecl __p__amblksiz(void);
+#define _amblksiz (*__p__amblksiz());
+#else
+extern unsigned int _amblksiz;
+#endif
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+
+void* __cdecl _expand(void*,size_t);
+int __cdecl _heapadd(void*,size_t);
+int __cdecl _heapchk(void);
+int __cdecl _heapmin(void);
+int __cdecl _heapset(unsigned int);
+size_t __cdecl _heapused(size_t*,size_t*);
+int __cdecl _heapwalk(_HEAPINFO*);
+size_t __cdecl _msize(void*);
+
+void* __cdecl calloc(size_t,size_t);
+void __cdecl free(void*);
+void* __cdecl malloc(size_t);
+void* __cdecl realloc(void*,size_t);
+
+void __cdecl _aligned_free(void*);
+void* __cdecl _aligned_malloc(size_t,size_t);
+void* __cdecl _aligned_offset_malloc(size_t,size_t,size_t);
+void* __cdecl _aligned_realloc(void*,size_t,size_t);
+void* __cdecl _aligned_offset_realloc(void*,size_t,size_t,size_t);
+
+size_t __cdecl _get_sbh_threshold(void);
+int __cdecl _set_sbh_threshold(size_t size);
+
+#ifdef __cplusplus
+}
+#endif
+
+# ifdef __GNUC__
+# define _alloca(x) __builtin_alloca((x))
+# define alloca(x) __builtin_alloca((x))
+# endif
+
+#endif /* __WINE_MALLOC_H */
diff --git a/src/VBox/Devices/Graphics/shaderlib/wine/include/msvcrt/math.h b/src/VBox/Devices/Graphics/shaderlib/wine/include/msvcrt/math.h
new file mode 100644
index 00000000..4d0655e4
--- /dev/null
+++ b/src/VBox/Devices/Graphics/shaderlib/wine/include/msvcrt/math.h
@@ -0,0 +1,174 @@
+/*
+ * Math functions.
+ *
+ * Derived from the mingw header written by Colin Peters.
+ * Modified for Wine use by Hans Leidekker.
+ * This file is in the public domain.
+ */
+
+#ifndef __WINE_MATH_H
+#define __WINE_MATH_H
+
+#include <crtdefs.h>
+
+#include <pshpack8.h>
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+
+#define _DOMAIN 1 /* domain error in argument */
+#define _SING 2 /* singularity */
+#define _OVERFLOW 3 /* range overflow */
+#define _UNDERFLOW 4 /* range underflow */
+#define _TLOSS 5 /* total loss of precision */
+#define _PLOSS 6 /* partial loss of precision */
+
+#ifndef _EXCEPTION_DEFINED
+#define _EXCEPTION_DEFINED
+struct _exception
+{
+ int type;
+ char *name;
+ double arg1;
+ double arg2;
+ double retval;
+};
+#endif /* _EXCEPTION_DEFINED */
+
+#ifndef _COMPLEX_DEFINED
+#define _COMPLEX_DEFINED
+struct _complex
+{
+ double x; /* Real part */
+ double y; /* Imaginary part */
+};
+#endif /* _COMPLEX_DEFINED */
+
+double __cdecl sin(double);
+double __cdecl cos(double);
+double __cdecl tan(double);
+double __cdecl sinh(double);
+double __cdecl cosh(double);
+double __cdecl tanh(double);
+double __cdecl asin(double);
+double __cdecl acos(double);
+double __cdecl atan(double);
+double __cdecl atan2(double, double);
+double __cdecl exp(double);
+double __cdecl log(double);
+double __cdecl log10(double);
+double __cdecl pow(double, double);
+double __cdecl sqrt(double);
+double __cdecl ceil(double);
+double __cdecl floor(double);
+double __cdecl fabs(double);
+double __cdecl ldexp(double, int);
+double __cdecl frexp(double, int*);
+double __cdecl modf(double, double*);
+double __cdecl fmod(double, double);
+
+double __cdecl hypot(double, double);
+double __cdecl j0(double);
+double __cdecl j1(double);
+double __cdecl jn(int, double);
+double __cdecl y0(double);
+double __cdecl y1(double);
+double __cdecl yn(int, double);
+
+#ifdef __x86_64__
+
+float __cdecl sinf(float);
+float __cdecl cosf(float);
+float __cdecl tanf(float);
+float __cdecl sinhf(float);
+float __cdecl coshf(float);
+float __cdecl tanhf(float);
+float __cdecl asinf(float);
+float __cdecl acosf(float);
+float __cdecl atanf(float);
+float __cdecl atan2f(float, float);
+float __cdecl expf(float);
+float __cdecl logf(float);
+float __cdecl log10f(float);
+float __cdecl powf(float, float);
+float __cdecl sqrtf(float);
+float __cdecl ceilf(float);
+float __cdecl floorf(float);
+float __cdecl fabsf(float);
+float __cdecl ldexpf(float, int);
+float __cdecl frexpf(float, int*);
+float __cdecl modff(float, float*);
+float __cdecl fmodf(float, float);
+
+#else
+
+#define sinf(x) ((float)sin((double)(x)))
+#define cosf(x) ((float)cos((double)(x)))
+#define tanf(x) ((float)tan((double)(x)))
+#define sinhf(x) ((float)sinh((double)(x)))
+#define coshf(x) ((float)cosh((double)(x)))
+#define tanhf(x) ((float)tanh((double)(x)))
+#define asinf(x) ((float)asin((double)(x)))
+#define acosf(x) ((float)acos((double)(x)))
+#define atanf(x) ((float)atan((double)(x)))
+#define atan2f(x,y) ((float)atan2((double)(x), (double)(y)))
+#define expf(x) ((float)exp((double)(x)))
+#define logf(x) ((float)log((double)(x)))
+#define log10f(x) ((float)log10((double)(x)))
+#define powf(x,y) ((float)pow((double)(x), (double)(y)))
+#define sqrtf(x) ((float)sqrt((double)(x)))
+#define ceilf(x) ((float)ceil((double)(x)))
+#define floorf(x) ((float)floor((double)(x)))
+#define frexpf(x) ((float)frexp((double)(x)))
+#define modff(x,y) ((float)modf((double)(x), (double*)(y)))
+#define fmodf(x,y) ((float)fmod((double)(x), (double)(y)))
+
+#endif
+
+#define fabsf(x) ((float)fabs((double)(x)))
+#define ldexpf(x,y) ((float)ldexp((double)(x),(y)))
+
+float __cdecl hypotf(float, float);
+
+int __cdecl _matherr(struct _exception*);
+double __cdecl _cabs(struct _complex);
+
+#ifndef HUGE_VAL
+# if defined(__GNUC__) && (__GNUC__ >= 3)
+# define HUGE_VAL (__extension__ 0x1.0p2047)
+# else
+static const union {
+ unsigned char __c[8];
+ double __d;
+} __huge_val = { { 0, 0, 0, 0, 0, 0, 0xf0, 0x7f } };
+# define HUGE_VAL (__huge_val.__d)
+# endif
+#endif
+
+#ifdef __cplusplus
+}
+#endif
+
+#include <poppack.h>
+
+#ifdef _USE_MATH_DEFINES
+#ifndef _MATH_DEFINES_DEFINED
+#define _MATH_DEFINES_DEFINED
+#define M_E 2.71828182845904523536
+#define M_LOG2E 1.44269504088896340736
+#define M_LOG10E 0.434294481903251827651
+#define M_LN2 0.693147180559945309417
+#define M_LN10 2.30258509299404568402
+#define M_PI 3.14159265358979323846
+#define M_PI_2 1.57079632679489661923
+#define M_PI_4 0.785398163397448309616
+#define M_1_PI 0.318309886183790671538
+#define M_2_PI 0.636619772367581343076
+#define M_2_SQRTPI 1.12837916709551257390
+#define M_SQRT2 1.41421356237309504880
+#define M_SQRT1_2 0.707106781186547524401
+#endif /* !_MATH_DEFINES_DEFINED */
+#endif /* _USE_MATH_DEFINES */
+
+#endif /* __WINE_MATH_H */
diff --git a/src/VBox/Devices/Graphics/shaderlib/wine/include/msvcrt/mbctype.h b/src/VBox/Devices/Graphics/shaderlib/wine/include/msvcrt/mbctype.h
new file mode 100644
index 00000000..fc481392
--- /dev/null
+++ b/src/VBox/Devices/Graphics/shaderlib/wine/include/msvcrt/mbctype.h
@@ -0,0 +1,90 @@
+/*
+ * Multibyte char definitions
+ *
+ * Copyright 2001 Francois Gouget.
+ *
+ * This library is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU Lesser General Public
+ * License as published by the Free Software Foundation; either
+ * version 2.1 of the License, or (at your option) any later version.
+ *
+ * This library 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 for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this library; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA
+ */
+
+/*
+ * Oracle LGPL Disclaimer: For the avoidance of doubt, except that if any license choice
+ * other than GPL or LGPL is available it will apply instead, Oracle elects to use only
+ * the Lesser General Public License version 2.1 (LGPLv2) at this time for any software where
+ * a choice of LGPL license versions is made available with the language indicating
+ * that LGPLv2 or any later version may be used, or where a choice of which version
+ * of the LGPL is applied is otherwise unspecified.
+ */
+
+#ifndef __WINE_MBCTYPE_H
+#define __WINE_MBCTYPE_H
+
+#include <crtdefs.h>
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+
+#ifdef __i386__
+unsigned char* __cdecl __p__mbctype(void);
+#define _mbctype (__p__mbctype())
+#else
+extern unsigned char MSVCRT_mbctype[];
+#endif
+
+#define _MS 0x01
+#define _MP 0x02
+#define _M1 0x04
+#define _M2 0x08
+
+#define _SBUP 0x10
+#define _SBLOW 0x20
+
+#define _MBC_SINGLE 0
+#define _MBC_LEAD 1
+#define _MBC_TRAIL 2
+#define _MBC_ILLEGAL -1
+
+#define _KANJI_CP 932
+
+#define _MB_CP_SBCS 0
+#define _MB_CP_OEM -2
+#define _MB_CP_ANSI -3
+#define _MB_CP_LOCALE -4
+
+int __cdecl _getmbcp(void);
+int __cdecl _ismbbalnum(unsigned int);
+int __cdecl _ismbbalpha(unsigned int);
+int __cdecl _ismbbgraph(unsigned int);
+int __cdecl _ismbbkalnum(unsigned int);
+int __cdecl _ismbbkana(unsigned int);
+int __cdecl _ismbbkprint(unsigned int);
+int __cdecl _ismbbkpunct(unsigned int);
+int __cdecl _ismbbprint(unsigned int);
+int __cdecl _ismbbpunct(unsigned int);
+int __cdecl _setmbcp(int);
+
+#ifndef _MBLEADTRAIL_DEFINED
+#define _MBLEADTRAIL_DEFINED
+int __cdecl _ismbblead(unsigned int);
+int __cdecl _ismbbtrail(unsigned int);
+int __cdecl _ismbslead(const unsigned char*,const unsigned char*);
+int __cdecl _ismbstrail(const unsigned char*,const unsigned char*);
+#endif /* _MBLEADTRAIL_DEFINED */
+
+#ifdef __cplusplus
+}
+#endif
+
+#endif /* __WINE_MBCTYPE_H */
diff --git a/src/VBox/Devices/Graphics/shaderlib/wine/include/msvcrt/mbstring.h b/src/VBox/Devices/Graphics/shaderlib/wine/include/msvcrt/mbstring.h
new file mode 100644
index 00000000..fd4a8e64
--- /dev/null
+++ b/src/VBox/Devices/Graphics/shaderlib/wine/include/msvcrt/mbstring.h
@@ -0,0 +1,132 @@
+/*
+ * Multibyte string definitions
+ *
+ * Copyright 2001 Francois Gouget.
+ *
+ * This library is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU Lesser General Public
+ * License as published by the Free Software Foundation; either
+ * version 2.1 of the License, or (at your option) any later version.
+ *
+ * This library 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 for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this library; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA
+ */
+
+/*
+ * Oracle LGPL Disclaimer: For the avoidance of doubt, except that if any license choice
+ * other than GPL or LGPL is available it will apply instead, Oracle elects to use only
+ * the Lesser General Public License version 2.1 (LGPLv2) at this time for any software where
+ * a choice of LGPL license versions is made available with the language indicating
+ * that LGPLv2 or any later version may be used, or where a choice of which version
+ * of the LGPL is applied is otherwise unspecified.
+ */
+
+#ifndef __WINE_MBSTRING_H
+#define __WINE_MBSTRING_H
+
+#include <crtdefs.h>
+
+#include <pshpack8.h>
+
+#ifndef _NLSCMP_DEFINED
+#define _NLSCMPERROR ((unsigned int)0x7fffffff)
+#define _NLSCMP_DEFINED
+#endif
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+
+int __cdecl _ismbcalnum(unsigned int);
+int __cdecl _ismbcalpha(unsigned int);
+int __cdecl _ismbcdigit(unsigned int);
+int __cdecl _ismbcgraph(unsigned int);
+int __cdecl _ismbchira(unsigned int);
+int __cdecl _ismbckata(unsigned int);
+int __cdecl _ismbcl0(unsigned int);
+int __cdecl _ismbcl1(unsigned int);
+int __cdecl _ismbcl2(unsigned int);
+int __cdecl _ismbclegal(unsigned int);
+int __cdecl _ismbclower(unsigned int);
+int __cdecl _ismbcprint(unsigned int);
+int __cdecl _ismbcpunct(unsigned int);
+int __cdecl _ismbcspace(unsigned int);
+int __cdecl _ismbcsymbol(unsigned int);
+int __cdecl _ismbcupper(unsigned int);
+unsigned int __cdecl _mbbtombc(unsigned int);
+int __cdecl _mbbtype(unsigned char,int);
+#define _mbccmp(_cpc1,_cpc2) _mbsncmp((_cpc1),(_cpc2),1)
+void __cdecl _mbccpy(unsigned char*,const unsigned char*);
+unsigned int __cdecl _mbcjistojms(unsigned int);
+unsigned int __cdecl _mbcjmstojis(unsigned int);
+size_t __cdecl _mbclen(const unsigned char*);
+unsigned int __cdecl _mbctohira(unsigned int);
+unsigned int __cdecl _mbctokata(unsigned int);
+unsigned int __cdecl _mbctolower(unsigned int);
+unsigned int __cdecl _mbctombb(unsigned int);
+unsigned int __cdecl _mbctoupper(unsigned int);
+int __cdecl _mbsbtype(const unsigned char*,size_t);
+unsigned char* __cdecl _mbscat(unsigned char*,const unsigned char*);
+unsigned char* __cdecl _mbschr(const unsigned char*,unsigned int);
+int __cdecl _mbscmp(const unsigned char*,const unsigned char*);
+int __cdecl _mbscoll(const unsigned char*,const unsigned char*);
+unsigned char* __cdecl _mbscpy(unsigned char*,const unsigned char*);
+size_t __cdecl _mbscspn(const unsigned char*,const unsigned char*);
+unsigned char* __cdecl _mbsdec(const unsigned char*,const unsigned char*);
+unsigned char* __cdecl _mbsdup(const unsigned char*);
+int __cdecl _mbsicmp(const unsigned char*,const unsigned char*);
+int __cdecl _mbsicoll(const unsigned char*,const unsigned char*);
+unsigned char* __cdecl _mbsinc(const unsigned char*);
+size_t __cdecl _mbslen(const unsigned char*);
+unsigned char* __cdecl _mbslwr(unsigned char*);
+unsigned char* __cdecl _mbsnbcat(unsigned char*,const unsigned char*,size_t);
+errno_t __cdecl _mbsnbcat_s(unsigned char*,size_t,const unsigned char*,size_t);
+int __cdecl _mbsnbcmp(const unsigned char*,const unsigned char*,size_t);
+int __cdecl _mbsnbcoll(const unsigned char*,const unsigned char*,size_t);
+size_t __cdecl _mbsnbcnt(const unsigned char*,size_t);
+unsigned char* __cdecl _mbsnbcpy(unsigned char*,const unsigned char*,size_t);
+int __cdecl _mbsnbicmp(const unsigned char*,const unsigned char*,size_t);
+int __cdecl _mbsnbicoll(const unsigned char*,const unsigned char*,size_t);
+unsigned char* __cdecl _mbsnbset(unsigned char*,unsigned int,size_t);
+unsigned char* __cdecl _mbsncat(unsigned char*,const unsigned char*, size_t);
+size_t __cdecl _mbsnccnt(const unsigned char*,size_t);
+int __cdecl _mbsncmp(const unsigned char*,const unsigned char*,size_t);
+int __cdecl _mbsncoll(const unsigned char*,const unsigned char*,size_t);
+unsigned char* __cdecl _mbsncpy(unsigned char*,const unsigned char*,size_t);
+unsigned int __cdecl _mbsnextc (const unsigned char*);
+int __cdecl _mbsnicmp(const unsigned char*,const unsigned char*,size_t);
+int __cdecl _mbsnicoll(const unsigned char*,const unsigned char*,size_t);
+unsigned char* __cdecl _mbsninc(const unsigned char*,size_t);
+unsigned char* __cdecl _mbsnset(unsigned char*,unsigned int,size_t);
+unsigned char* __cdecl _mbspbrk(const unsigned char*,const unsigned char*);
+unsigned char* __cdecl _mbsrchr(const unsigned char*,unsigned int);
+unsigned char* __cdecl _mbsrev(unsigned char*);
+unsigned char* __cdecl _mbsset(unsigned char*,unsigned int);
+size_t __cdecl _mbsspn(const unsigned char*,const unsigned char*);
+unsigned char* __cdecl _mbsspnp(const unsigned char*,const unsigned char*);
+unsigned char* __cdecl _mbsstr(const unsigned char*,const unsigned char*);
+unsigned char* __cdecl _mbstok(unsigned char*,const unsigned char*);
+unsigned char* __cdecl _mbstok_l(unsigned char*,const unsigned char*,_locale_t);
+unsigned char* __cdecl _mbsupr(unsigned char*);
+
+#ifndef _MBLEADTRAIL_DEFINED
+#define _MBLEADTRAIL_DEFINED
+int __cdecl _ismbblead(unsigned int);
+int __cdecl _ismbbtrail(unsigned int);
+int __cdecl _ismbslead(const unsigned char*,const unsigned char*);
+int __cdecl _ismbstrail(const unsigned char*,const unsigned char*);
+#endif /* _MBLEADTRAIL_DEFINED */
+
+#ifdef __cplusplus
+}
+#endif
+
+#include <poppack.h>
+
+#endif /* __WINE_MBSTRING_H */
diff --git a/src/VBox/Devices/Graphics/shaderlib/wine/include/msvcrt/memory.h b/src/VBox/Devices/Graphics/shaderlib/wine/include/msvcrt/memory.h
new file mode 100644
index 00000000..ecf13aa5
--- /dev/null
+++ b/src/VBox/Devices/Graphics/shaderlib/wine/include/msvcrt/memory.h
@@ -0,0 +1,37 @@
+/*
+ * Memory definitions
+ *
+ * Derived from the mingw header written by Colin Peters.
+ * Modified for Wine use by Jon Griffiths and Francois Gouget.
+ * This file is in the public domain.
+ */
+#ifndef __WINE_MEMORY_H
+#define __WINE_MEMORY_H
+
+#include <crtdefs.h>
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+
+#ifndef _CRT_MEMORY_DEFINED
+#define _CRT_MEMORY_DEFINED
+
+void* __cdecl memchr(const void*,int,size_t);
+int __cdecl memcmp(const void*,const void*,size_t);
+void* __cdecl memcpy(void*,const void*,size_t);
+errno_t __cdecl memcpy_s(void*,size_t,const void*,size_t);
+void* __cdecl memset(void*,int,size_t);
+void* __cdecl _memccpy(void*,const void*,int,unsigned int);
+int __cdecl _memicmp(const void*,const void*,unsigned int);
+
+static inline int memicmp(const void* s1, const void* s2, size_t len) { return _memicmp(s1, s2, len); }
+static inline void* memccpy(void *s1, const void *s2, int c, size_t n) { return _memccpy(s1, s2, c, n); }
+
+#endif /* _CRT_MEMORY_DEFINED */
+
+#ifdef __cplusplus
+}
+#endif
+
+#endif /* __WINE_MEMORY_H */
diff --git a/src/VBox/Devices/Graphics/shaderlib/wine/include/msvcrt/process.h b/src/VBox/Devices/Graphics/shaderlib/wine/include/msvcrt/process.h
new file mode 100644
index 00000000..f9ab2a41
--- /dev/null
+++ b/src/VBox/Devices/Graphics/shaderlib/wine/include/msvcrt/process.h
@@ -0,0 +1,126 @@
+/*
+ * Process definitions
+ *
+ * Derived from the mingw header written by Colin Peters.
+ * Modified for Wine use by Jon Griffiths and Francois Gouget.
+ * This file is in the public domain.
+ */
+#ifndef __WINE_PROCESS_H
+#define __WINE_PROCESS_H
+
+#include <crtdefs.h>
+
+/* Process creation flags */
+#define _P_WAIT 0
+#define _P_NOWAIT 1
+#define _P_OVERLAY 2
+#define _P_NOWAITO 3
+#define _P_DETACH 4
+
+#define _WAIT_CHILD 0
+#define _WAIT_GRANDCHILD 1
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+
+typedef void (__cdecl *_beginthread_start_routine_t)(void *);
+typedef unsigned int (__stdcall *_beginthreadex_start_routine_t)(void *);
+
+uintptr_t __cdecl _beginthread(_beginthread_start_routine_t,unsigned int,void*);
+uintptr_t __cdecl _beginthreadex(void*,unsigned int,_beginthreadex_start_routine_t,void*,unsigned int,unsigned int*);
+intptr_t __cdecl _cwait(int*,intptr_t,int);
+void __cdecl _endthread(void);
+void __cdecl _endthreadex(unsigned int);
+intptr_t __cdecl _execl(const char*,const char*,...);
+intptr_t __cdecl _execle(const char*,const char*,...);
+intptr_t __cdecl _execlp(const char*,const char*,...);
+intptr_t __cdecl _execlpe(const char*,const char*,...);
+intptr_t __cdecl _execv(const char*,const char* const *);
+intptr_t __cdecl _execve(const char*,const char* const *,const char* const *);
+intptr_t __cdecl _execvp(const char*,const char* const *);
+intptr_t __cdecl _execvpe(const char*,const char* const *,const char* const *);
+int __cdecl _getpid(void);
+intptr_t __cdecl _spawnl(int,const char*,const char*,...);
+intptr_t __cdecl _spawnle(int,const char*,const char*,...);
+intptr_t __cdecl _spawnlp(int,const char*,const char*,...);
+intptr_t __cdecl _spawnlpe(int,const char*,const char*,...);
+intptr_t __cdecl _spawnv(int,const char*,const char* const *);
+intptr_t __cdecl _spawnve(int,const char*,const char* const *,const char* const *);
+intptr_t __cdecl _spawnvp(int,const char*,const char* const *);
+intptr_t __cdecl _spawnvpe(int,const char*,const char* const *,const char* const *);
+
+void __cdecl _c_exit(void);
+void __cdecl _cexit(void);
+void __cdecl _exit(int);
+void __cdecl abort(void);
+void __cdecl exit(int);
+int __cdecl system(const char*);
+
+#ifndef _WPROCESS_DEFINED
+#define _WPROCESS_DEFINED
+intptr_t __cdecl _wexecl(const wchar_t*,const wchar_t*,...);
+intptr_t __cdecl _wexecle(const wchar_t*,const wchar_t*,...);
+intptr_t __cdecl _wexeclp(const wchar_t*,const wchar_t*,...);
+intptr_t __cdecl _wexeclpe(const wchar_t*,const wchar_t*,...);
+intptr_t __cdecl _wexecv(const wchar_t*,const wchar_t* const *);
+intptr_t __cdecl _wexecve(const wchar_t*,const wchar_t* const *,const wchar_t* const *);
+intptr_t __cdecl _wexecvp(const wchar_t*,const wchar_t* const *);
+intptr_t __cdecl _wexecvpe(const wchar_t*,const wchar_t* const *,const wchar_t* const *);
+intptr_t __cdecl _wspawnl(int,const wchar_t*,const wchar_t*,...);
+intptr_t __cdecl _wspawnle(int,const wchar_t*,const wchar_t*,...);
+intptr_t __cdecl _wspawnlp(int,const wchar_t*,const wchar_t*,...);
+intptr_t __cdecl _wspawnlpe(int,const wchar_t*,const wchar_t*,...);
+intptr_t __cdecl _wspawnv(int,const wchar_t*,const wchar_t* const *);
+intptr_t __cdecl _wspawnve(int,const wchar_t*,const wchar_t* const *,const wchar_t* const *);
+intptr_t __cdecl _wspawnvp(int,const wchar_t*,const wchar_t* const *);
+intptr_t __cdecl _wspawnvpe(int,const wchar_t*,const wchar_t* const *,const wchar_t* const *);
+int __cdecl _wsystem(const wchar_t*);
+#endif /* _WPROCESS_DEFINED */
+
+#ifdef __cplusplus
+}
+#endif
+
+
+#define P_WAIT _P_WAIT
+#define P_NOWAIT _P_NOWAIT
+#define P_OVERLAY _P_OVERLAY
+#define P_NOWAITO _P_NOWAITO
+#define P_DETACH _P_DETACH
+
+#define WAIT_CHILD _WAIT_CHILD
+#define WAIT_GRANDCHILD _WAIT_GRANDCHILD
+
+static inline intptr_t cwait(int *status, intptr_t pid, int action) { return _cwait(status, pid, action); }
+static inline int getpid(void) { return _getpid(); }
+static inline intptr_t execv(const char* name, const char* const* argv) { return _execv(name, argv); }
+static inline intptr_t execve(const char* name, const char* const* argv, const char* const* envv) { return _execve(name, argv, envv); }
+static inline intptr_t execvp(const char* name, const char* const* argv) { return _execvp(name, argv); }
+static inline intptr_t execvpe(const char* name, const char* const* argv, const char* const* envv) { return _execvpe(name, argv, envv); }
+static inline intptr_t spawnv(int flags, const char* name, const char* const* argv) { return _spawnv(flags, name, argv); }
+static inline intptr_t spawnve(int flags, const char* name, const char* const* argv, const char* const* envv) { return _spawnve(flags, name, argv, envv); }
+static inline intptr_t spawnvp(int flags, const char* name, const char* const* argv) { return _spawnvp(flags, name, argv); }
+static inline intptr_t spawnvpe(int flags, const char* name, const char* const* argv, const char* const* envv) { return _spawnvpe(flags, name, argv, envv); }
+
+#if defined(__GNUC__) && (__GNUC__ < 4)
+extern intptr_t __cdecl execl(const char*,const char*,...) __attribute__((alias("_execl")));
+extern intptr_t __cdecl execle(const char*,const char*,...) __attribute__((alias("_execle")));
+extern intptr_t __cdecl execlp(const char*,const char*,...) __attribute__((alias("_execlp")));
+extern intptr_t __cdecl execlpe(const char*,const char*,...) __attribute__((alias("_execlpe")));
+extern intptr_t __cdecl spawnl(int,const char*,const char*,...) __attribute__((alias("_spawnl")));
+extern intptr_t __cdecl spawnle(int,const char*,const char*,...) __attribute__((alias("_spawnle")));
+extern intptr_t __cdecl spawnlp(int,const char*,const char*,...) __attribute__((alias("_spawnlp")));
+extern intptr_t __cdecl spawnlpe(int,const char*,const char*,...) __attribute__((alias("_spawnlpe")));
+#else
+#define execl _execl
+#define execle _execle
+#define execlp _execlp
+#define execlpe _execlpe
+#define spawnl _spawnl
+#define spawnle _spawnle
+#define spawnlp _spawnlp
+#define spawnlpe _spawnlpe
+#endif /* __GNUC__ */
+
+#endif /* __WINE_PROCESS_H */
diff --git a/src/VBox/Devices/Graphics/shaderlib/wine/include/msvcrt/search.h b/src/VBox/Devices/Graphics/shaderlib/wine/include/msvcrt/search.h
new file mode 100644
index 00000000..c21e6def
--- /dev/null
+++ b/src/VBox/Devices/Graphics/shaderlib/wine/include/msvcrt/search.h
@@ -0,0 +1,52 @@
+/*
+ * Heap definitions
+ *
+ * Copyright 2001 Francois Gouget.
+ *
+ * This library is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU Lesser General Public
+ * License as published by the Free Software Foundation; either
+ * version 2.1 of the License, or (at your option) any later version.
+ *
+ * This library 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 for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this library; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA
+ */
+
+/*
+ * Oracle LGPL Disclaimer: For the avoidance of doubt, except that if any license choice
+ * other than GPL or LGPL is available it will apply instead, Oracle elects to use only
+ * the Lesser General Public License version 2.1 (LGPLv2) at this time for any software where
+ * a choice of LGPL license versions is made available with the language indicating
+ * that LGPLv2 or any later version may be used, or where a choice of which version
+ * of the LGPL is applied is otherwise unspecified.
+ */
+
+#ifndef __WINE_SEARCH_H
+#define __WINE_SEARCH_H
+
+#include <crtdefs.h>
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+
+void* __cdecl _lfind(const void*,const void*,unsigned int*,unsigned int,int (*)(const void*,const void*));
+void* __cdecl _lsearch(const void*,void*,unsigned int*,unsigned int,int (*)(const void*,const void*));
+void* __cdecl bsearch(const void*,const void*,size_t,size_t,int (*)(const void*,const void*));
+void __cdecl qsort(void*,size_t,size_t,int (*)(const void*,const void*));
+
+#ifdef __cplusplus
+}
+#endif
+
+
+static inline void* lfind(const void* match, const void* start, unsigned int* array_size, unsigned int elem_size, int (*cf)(const void*,const void*)) { return _lfind(match, start, array_size, elem_size, cf); }
+static inline void* lsearch(const void* match, void* start, unsigned int* array_size, unsigned int elem_size, int (*cf)(const void*,const void*) ) { return _lsearch(match, start, array_size, elem_size, cf); }
+
+#endif /* __WINE_SEARCH_H */
diff --git a/src/VBox/Devices/Graphics/shaderlib/wine/include/msvcrt/setjmp.h b/src/VBox/Devices/Graphics/shaderlib/wine/include/msvcrt/setjmp.h
new file mode 100644
index 00000000..7595f886
--- /dev/null
+++ b/src/VBox/Devices/Graphics/shaderlib/wine/include/msvcrt/setjmp.h
@@ -0,0 +1,140 @@
+/*
+ * Setjmp/Longjmp definitions
+ *
+ * Copyright 2001 Francois Gouget.
+ *
+ * This library is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU Lesser General Public
+ * License as published by the Free Software Foundation; either
+ * version 2.1 of the License, or (at your option) any later version.
+ *
+ * This library 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 for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this library; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA
+ */
+
+/*
+ * Oracle LGPL Disclaimer: For the avoidance of doubt, except that if any license choice
+ * other than GPL or LGPL is available it will apply instead, Oracle elects to use only
+ * the Lesser General Public License version 2.1 (LGPLv2) at this time for any software where
+ * a choice of LGPL license versions is made available with the language indicating
+ * that LGPLv2 or any later version may be used, or where a choice of which version
+ * of the LGPL is applied is otherwise unspecified.
+ */
+
+#ifndef __WINE_SETJMP_H
+#define __WINE_SETJMP_H
+
+#include <crtdefs.h>
+
+#include <pshpack8.h>
+
+#ifdef __i386__
+
+typedef struct __JUMP_BUFFER
+{
+ unsigned long Ebp;
+ unsigned long Ebx;
+ unsigned long Edi;
+ unsigned long Esi;
+ unsigned long Esp;
+ unsigned long Eip;
+ unsigned long Registration;
+ unsigned long TryLevel;
+ /* Start of new struct members */
+ unsigned long Cookie;
+ unsigned long UnwindFunc;
+ unsigned long UnwindData[6];
+} _JUMP_BUFFER;
+
+#define _JBLEN 16
+#define _JBTYPE int
+
+#elif defined(__x86_64__)
+
+typedef struct _SETJMP_FLOAT128
+{
+ unsigned __int64 DECLSPEC_ALIGN(16) Part[2];
+} SETJMP_FLOAT128;
+
+typedef struct _JUMP_BUFFER
+{
+ unsigned __int64 Frame;
+ unsigned __int64 Rbx;
+ unsigned __int64 Rsp;
+ unsigned __int64 Rbp;
+ unsigned __int64 Rsi;
+ unsigned __int64 Rdi;
+ unsigned __int64 R12;
+ unsigned __int64 R13;
+ unsigned __int64 R14;
+ unsigned __int64 R15;
+ unsigned __int64 Rip;
+ unsigned __int64 Spare;
+ SETJMP_FLOAT128 Xmm6;
+ SETJMP_FLOAT128 Xmm7;
+ SETJMP_FLOAT128 Xmm8;
+ SETJMP_FLOAT128 Xmm9;
+ SETJMP_FLOAT128 Xmm10;
+ SETJMP_FLOAT128 Xmm11;
+ SETJMP_FLOAT128 Xmm12;
+ SETJMP_FLOAT128 Xmm13;
+ SETJMP_FLOAT128 Xmm14;
+ SETJMP_FLOAT128 Xmm15;
+} _JUMP_BUFFER;
+
+#define _JBLEN 16
+typedef SETJMP_FLOAT128 _JBTYPE;
+
+#elif defined(__arm__)
+
+typedef struct _JUMP_BUFFER
+{
+ unsigned long Frame;
+ unsigned long R4;
+ unsigned long R5;
+ unsigned long R6;
+ unsigned long R7;
+ unsigned long R8;
+ unsigned long R9;
+ unsigned long R10;
+ unsigned long R11;
+ unsigned long Sp;
+ unsigned long Pc;
+ unsigned long Fpscr;
+ unsigned long long D[8];
+} _JUMP_BUFFER;
+
+#define _JBLEN 28
+#define _JBTYPE int
+
+#else
+
+#define _JBLEN 1
+#define _JBTYPE int
+
+#endif
+
+typedef _JBTYPE jmp_buf[_JBLEN];
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+
+int __cdecl _setjmp(jmp_buf);
+void __cdecl longjmp(jmp_buf,int);
+
+#ifdef __cplusplus
+}
+#endif
+
+#define setjmp _setjmp
+
+#include <poppack.h>
+
+#endif /* __WINE_SETJMP_H */
diff --git a/src/VBox/Devices/Graphics/shaderlib/wine/include/msvcrt/share.h b/src/VBox/Devices/Graphics/shaderlib/wine/include/msvcrt/share.h
new file mode 100644
index 00000000..3813e769
--- /dev/null
+++ b/src/VBox/Devices/Graphics/shaderlib/wine/include/msvcrt/share.h
@@ -0,0 +1,42 @@
+/*
+ * share.h
+ *
+ * Constants for file sharing functions.
+ *
+ * Derived from the Mingw32 header written by Colin Peters.
+ * Modified for Wine use by Bill Medland
+ * This file is in the public domain.
+ *
+ * Original header contained the following
+ *
+ * THIS SOFTWARE IS NOT COPYRIGHTED
+ *
+ * This source code is offered for use in the public domain. You may
+ * use, modify or distribute it freely.
+ *
+ * This code is distributed in the hope that it will be useful but
+ * WITHOUT ANY WARRANTY. ALL WARRANTIES, EXPRESS OR IMPLIED ARE HEREBY
+ * DISCLAIMED. This includes but is not limited to warranties of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+ *
+ */
+
+#ifndef __WINE_SHARE_H
+#define __WINE_SHARE_H
+#ifndef __WINE_USE_MSVCRT
+#define __WINE_USE_MSVCRT
+#endif
+
+#define SH_COMPAT 0x00 /* Compatibility */
+#define SH_DENYRW 0x10 /* Deny read/write */
+#define SH_DENYWR 0x20 /* Deny write */
+#define SH_DENYRD 0x30 /* Deny read */
+#define SH_DENYNO 0x40 /* Deny nothing */
+
+#define _SH_COMPAT SH_COMPAT
+#define _SH_DENYRW SH_DENYRW
+#define _SH_DENYWR SH_DENYWR
+#define _SH_DENYRD SH_DENYRD
+#define _SH_DENYNO SH_DENYNO
+
+#endif /* __WINE_SHARE_H_ */
diff --git a/src/VBox/Devices/Graphics/shaderlib/wine/include/msvcrt/signal.h b/src/VBox/Devices/Graphics/shaderlib/wine/include/msvcrt/signal.h
new file mode 100644
index 00000000..7a3ffa35
--- /dev/null
+++ b/src/VBox/Devices/Graphics/shaderlib/wine/include/msvcrt/signal.h
@@ -0,0 +1,63 @@
+/*
+ * Signal definitions
+ *
+ * Copyright 2005 Juan Lang
+ *
+ * This library is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU Lesser General Public
+ * License as published by the Free Software Foundation; either
+ * version 2.1 of the License, or (at your option) any later version.
+ *
+ * This library 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 for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this library; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA
+ */
+
+/*
+ * Oracle LGPL Disclaimer: For the avoidance of doubt, except that if any license choice
+ * other than GPL or LGPL is available it will apply instead, Oracle elects to use only
+ * the Lesser General Public License version 2.1 (LGPLv2) at this time for any software where
+ * a choice of LGPL license versions is made available with the language indicating
+ * that LGPLv2 or any later version may be used, or where a choice of which version
+ * of the LGPL is applied is otherwise unspecified.
+ */
+
+#ifndef _WINE_SIGNAL_H
+#define _WINE_SIGNAL_H
+
+#include <crtdefs.h>
+
+#define SIGINT 2
+#define SIGILL 4
+#define SIGFPE 8
+#define SIGSEGV 11
+#define SIGTERM 15
+#define SIGBREAK 21
+#define SIGABRT 22
+
+#define NSIG (SIGABRT + 1)
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+
+typedef void (__cdecl *__sighandler_t)(int);
+
+#define SIG_DFL ((__sighandler_t)0)
+#define SIG_IGN ((__sighandler_t)1)
+#define SIG_ERR ((__sighandler_t)-1)
+
+void** __cdecl __pxcptinfoptrs(void);
+__sighandler_t __cdecl signal(int sig, __sighandler_t func);
+int __cdecl raise(int sig);
+
+#ifdef __cplusplus
+}
+#endif
+
+#endif /* _WINE_SIGNAL_H */
diff --git a/src/VBox/Devices/Graphics/shaderlib/wine/include/msvcrt/stddef.h b/src/VBox/Devices/Graphics/shaderlib/wine/include/msvcrt/stddef.h
new file mode 100644
index 00000000..b229cc6f
--- /dev/null
+++ b/src/VBox/Devices/Graphics/shaderlib/wine/include/msvcrt/stddef.h
@@ -0,0 +1,60 @@
+/*
+ * Copyright 2000 Francois Gouget.
+ *
+ * This library is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU Lesser General Public
+ * License as published by the Free Software Foundation; either
+ * version 2.1 of the License, or (at your option) any later version.
+ *
+ * This library 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 for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this library; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA
+ */
+
+/*
+ * Oracle LGPL Disclaimer: For the avoidance of doubt, except that if any license choice
+ * other than GPL or LGPL is available it will apply instead, Oracle elects to use only
+ * the Lesser General Public License version 2.1 (LGPLv2) at this time for any software where
+ * a choice of LGPL license versions is made available with the language indicating
+ * that LGPLv2 or any later version may be used, or where a choice of which version
+ * of the LGPL is applied is otherwise unspecified.
+ */
+
+#ifndef __WINE_STDDEF_H
+#define __WINE_STDDEF_H
+
+#include <crtdefs.h>
+
+#ifndef NULL
+#ifdef __cplusplus
+#define NULL 0
+#else
+#define NULL ((void *)0)
+#endif
+#endif
+
+#ifdef _WIN64
+#define offsetof(s,m) (size_t)((ptrdiff_t)&(((s*)NULL)->m))
+#else
+#define offsetof(s,m) (size_t)&(((s*)NULL)->m)
+#endif
+
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+
+__msvcrt_ulong __cdecl __threadid(void);
+__msvcrt_ulong __cdecl __threadhandle(void);
+#define _threadid (__threadid())
+
+#ifdef __cplusplus
+}
+#endif
+
+#endif /* __WINE_STDDEF_H */
diff --git a/src/VBox/Devices/Graphics/shaderlib/wine/include/msvcrt/stdio.h b/src/VBox/Devices/Graphics/shaderlib/wine/include/msvcrt/stdio.h
new file mode 100644
index 00000000..737003d9
--- /dev/null
+++ b/src/VBox/Devices/Graphics/shaderlib/wine/include/msvcrt/stdio.h
@@ -0,0 +1,272 @@
+/*
+ * Standard I/O definitions.
+ *
+ * Derived from the mingw header written by Colin Peters.
+ * Modified for Wine use by Jon Griffiths and Francois Gouget.
+ * This file is in the public domain.
+ */
+#ifndef __WINE_STDIO_H
+#define __WINE_STDIO_H
+
+#include <crtdefs.h>
+
+#ifndef RC_INVOKED
+#include <stdarg.h>
+#endif
+
+#include <pshpack8.h>
+
+/* file._flag flags */
+#define _IOREAD 0x0001
+#define _IOWRT 0x0002
+#define _IOMYBUF 0x0008
+#define _IOEOF 0x0010
+#define _IOERR 0x0020
+#define _IOSTRG 0x0040
+#define _IORW 0x0080
+
+#ifndef NULL
+#ifdef __cplusplus
+#define NULL 0
+#else
+#define NULL ((void *)0)
+#endif
+#endif
+
+#define STDIN_FILENO 0
+#define STDOUT_FILENO 1
+#define STDERR_FILENO 2
+
+/* more file._flag flags, but these conflict with Unix */
+#define _IOFBF 0x0000
+#define _IONBF 0x0004
+#define _IOLBF 0x0040
+
+#define EOF (-1)
+#define FILENAME_MAX 260
+#define TMP_MAX 0x7fff
+#define FOPEN_MAX 20
+#define L_tmpnam 260
+
+#define BUFSIZ 512
+
+#ifndef SEEK_SET
+#define SEEK_SET 0
+#define SEEK_CUR 1
+#define SEEK_END 2
+#endif
+
+#ifndef _FILE_DEFINED
+#define _FILE_DEFINED
+typedef struct _iobuf
+{
+ char* _ptr;
+ int _cnt;
+ char* _base;
+ int _flag;
+ int _file;
+ int _charbuf;
+ int _bufsiz;
+ char* _tmpfname;
+} FILE;
+#endif /* _FILE_DEFINED */
+
+#ifndef _FPOS_T_DEFINED
+typedef __int64 DECLSPEC_ALIGN(8) fpos_t;
+#define _FPOS_T_DEFINED
+#endif
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+
+#ifndef _STDIO_DEFINED
+# ifdef __i386__
+FILE* __cdecl __p__iob(void);
+# define _iob (__p__iob())
+# else
+FILE* __cdecl __iob_func(void);
+# define _iob (__iob_func())
+# endif
+#endif /* _STDIO_DEFINED */
+
+#define stdin (_iob+STDIN_FILENO)
+#define stdout (_iob+STDOUT_FILENO)
+#define stderr (_iob+STDERR_FILENO)
+
+/* return value for _get_output_format */
+#define _TWO_DIGIT_EXPONENT 0x1
+
+#ifndef _STDIO_DEFINED
+#define _STDIO_DEFINED
+int __cdecl _fcloseall(void);
+FILE* __cdecl _fdopen(int,const char*);
+int __cdecl _fgetchar(void);
+int __cdecl _filbuf(FILE*);
+int __cdecl _fileno(FILE*);
+int __cdecl _flsbuf(int,FILE*);
+int __cdecl _flushall(void);
+int __cdecl _fputchar(int);
+FILE* __cdecl _fsopen(const char*,const char*,int);
+int __cdecl _get_printf_count_output(void);
+int __cdecl _getmaxstdio(void);
+int __cdecl _getw(FILE*);
+int __cdecl _pclose(FILE*);
+FILE* __cdecl _popen(const char*,const char*);
+int __cdecl _putw(int,FILE*);
+int __cdecl _rmtmp(void);
+int __cdecl _set_printf_count_output(int);
+int __cdecl _setmaxstdio(int);
+int __cdecl _snprintf(char*,size_t,const char*,...);
+int __cdecl _snprintf_s(char*,size_t,size_t,const char*,...);
+char* __cdecl _tempnam(const char*,const char*);
+int __cdecl _unlink(const char*);
+int __cdecl _scprintf(const char*,...);
+int __cdecl _vscprintf(const char*,__ms_va_list);
+int __cdecl _vsnprintf(char*,size_t,const char*,__ms_va_list);
+int __cdecl _vsnprintf_s(char*,size_t,size_t,const char*,__ms_va_list);
+int __cdecl _vsprintf_p_l(char*,size_t,const char*,_locale_t,__ms_va_list);
+
+void __cdecl clearerr(FILE*);
+int __cdecl fclose(FILE*);
+int __cdecl feof(FILE*);
+int __cdecl ferror(FILE*);
+int __cdecl fflush(FILE*);
+int __cdecl fgetc(FILE*);
+int __cdecl fgetpos(FILE*,fpos_t*);
+char* __cdecl fgets(char*,int,FILE*);
+FILE* __cdecl fopen(const char*,const char*);
+errno_t __cdecl fopen_s(FILE**,const char*,const char*);
+int __cdecl fprintf(FILE*,const char*,...);
+int __cdecl fprintf_s(FILE*,const char*,...);
+int __cdecl fputc(int,FILE*);
+int __cdecl fputs(const char*,FILE*);
+size_t __cdecl fread(void*,size_t,size_t,FILE*);
+FILE* __cdecl freopen(const char*,const char*,FILE*);
+int __cdecl fscanf(FILE*,const char*,...);
+int __cdecl fscanf_s(FILE*,const char*,...);
+int __cdecl fseek(FILE*,__msvcrt_long,int);
+int __cdecl _fseeki64(FILE*,__int64,int);
+int __cdecl fsetpos(FILE*,fpos_t*);
+__msvcrt_long __cdecl ftell(FILE*);
+__int64 __cdecl _ftelli64(FILE*);
+size_t __cdecl fwrite(const void*,size_t,size_t,FILE*);
+int __cdecl getc(FILE*);
+int __cdecl getchar(void);
+char* __cdecl gets(char*);
+void __cdecl perror(const char*);
+int __cdecl printf(const char*,...);
+int __cdecl printf_s(const char*,...);
+int __cdecl putc(int,FILE*);
+int __cdecl putchar(int);
+int __cdecl puts(const char*);
+int __cdecl remove(const char*);
+int __cdecl rename(const char*,const char*);
+void __cdecl rewind(FILE*);
+int __cdecl scanf(const char*,...);
+int __cdecl scanf_s(const char*,...);
+void __cdecl setbuf(FILE*,char*);
+int __cdecl setvbuf(FILE*,char*,int,size_t);
+int __cdecl sprintf(char*,const char*,...);
+int __cdecl sprintf_s(char*,size_t,const char*,...);
+int __cdecl _scprintf(const char *, ...);
+int __cdecl sscanf(const char*,const char*,...);
+int __cdecl sscanf_s(const char*,const char*,...);
+FILE* __cdecl tmpfile(void);
+char* __cdecl tmpnam(char*);
+int __cdecl ungetc(int,FILE*);
+int __cdecl vfprintf(FILE*,const char*,__ms_va_list);
+int __cdecl vfprintf_s(FILE*,const char*,__ms_va_list);
+int __cdecl vprintf(const char*,__ms_va_list);
+int __cdecl vprintf_s(const char*,__ms_va_list);
+int __cdecl vsprintf(char*,const char*,__ms_va_list);
+int __cdecl vsprintf_s(char*,size_t,const char*,__ms_va_list);
+unsigned int __cdecl _get_output_format(void);
+unsigned int __cdecl _set_output_format(void);
+
+#ifndef _WSTDIO_DEFINED
+#define _WSTDIO_DEFINED
+wint_t __cdecl _fgetwchar(void);
+wint_t __cdecl _fputwchar(wint_t);
+wchar_t* __cdecl _getws(wchar_t*);
+int __cdecl _putws(const wchar_t*);
+int __cdecl _snwprintf(wchar_t*,size_t,const wchar_t*,...);
+int __cdecl _snwprintf_s(wchar_t*,size_t,size_t,const wchar_t*,...);
+int __cdecl _scwprintf(const wchar_t*,...);
+int __cdecl _vscwprintf(const wchar_t*,__ms_va_list);
+int __cdecl _vscwprintf_p_l(const wchar_t*,_locale_t,__ms_va_list);
+int __cdecl _vsnwprintf(wchar_t*,size_t,const wchar_t*,__ms_va_list);
+int __cdecl _vsnwprintf_s(wchar_t*,size_t,size_t,const wchar_t*,__ms_va_list);
+int __cdecl _vswprintf_p_l(wchar_t*,size_t,const wchar_t*,_locale_t,__ms_va_list);
+FILE* __cdecl _wfdopen(int,const wchar_t*);
+FILE* __cdecl _wfopen(const wchar_t*,const wchar_t*);
+errno_t __cdecl _wfopen_s(FILE**,const wchar_t*,const wchar_t*);
+FILE* __cdecl _wfreopen(const wchar_t*,const wchar_t*,FILE*);
+FILE* __cdecl _wfsopen(const wchar_t*,const wchar_t*,int);
+void __cdecl _wperror(const wchar_t*);
+FILE* __cdecl _wpopen(const wchar_t*,const wchar_t*);
+int __cdecl _wremove(const wchar_t*);
+wchar_t* __cdecl _wtempnam(const wchar_t*,const wchar_t*);
+wchar_t* __cdecl _wtmpnam(wchar_t*);
+
+wint_t __cdecl fgetwc(FILE*);
+wchar_t* __cdecl fgetws(wchar_t*,int,FILE*);
+wint_t __cdecl fputwc(wint_t,FILE*);
+int __cdecl fputws(const wchar_t*,FILE*);
+int __cdecl fwprintf(FILE*,const wchar_t*,...);
+int __cdecl fwprintf_s(FILE*,const wchar_t*,...);
+int __cdecl fputws(const wchar_t*,FILE*);
+int __cdecl fwscanf(FILE*,const wchar_t*,...);
+int __cdecl fwscanf_s(FILE*,const wchar_t*,...);
+wint_t __cdecl getwc(FILE*);
+wint_t __cdecl getwchar(void);
+wchar_t* __cdecl getws(wchar_t*);
+wint_t __cdecl putwc(wint_t,FILE*);
+wint_t __cdecl putwchar(wint_t);
+int __cdecl putws(const wchar_t*);
+int __cdecl swprintf(wchar_t*,const wchar_t*,...);
+int __cdecl swprintf_s(wchar_t*,size_t,const wchar_t*,...);
+int __cdecl swscanf(const wchar_t*,const wchar_t*,...);
+int __cdecl swscanf_s(const wchar_t*,const wchar_t*,...);
+wint_t __cdecl ungetwc(wint_t,FILE*);
+int __cdecl vfwprintf(FILE*,const wchar_t*,__ms_va_list);
+int __cdecl vfwprintf_s(FILE*,const wchar_t*,__ms_va_list);
+int __cdecl vswprintf(wchar_t*,const wchar_t*,__ms_va_list);
+int __cdecl vswprintf_s(wchar_t*,size_t,const wchar_t*,__ms_va_list);
+int __cdecl vwprintf(const wchar_t*,__ms_va_list);
+int __cdecl vwprintf_s(const wchar_t*,__ms_va_list);
+int __cdecl wprintf(const wchar_t*,...);
+int __cdecl wprintf_s(const wchar_t*,...);
+int __cdecl wscanf(const wchar_t*,...);
+int __cdecl wscanf_s(const wchar_t*,...);
+#endif /* _WSTDIO_DEFINED */
+
+#endif /* _STDIO_DEFINED */
+
+#ifdef __cplusplus
+}
+#endif
+
+
+static inline FILE* fdopen(int fd, const char *mode) { return _fdopen(fd, mode); }
+static inline int fgetchar(void) { return _fgetchar(); }
+static inline int fileno(FILE* file) { return _fileno(file); }
+static inline int fputchar(int c) { return _fputchar(c); }
+static inline int pclose(FILE* file) { return _pclose(file); }
+static inline FILE* popen(const char* command, const char* mode) { return _popen(command, mode); }
+static inline char* tempnam(const char *dir, const char *prefix) { return _tempnam(dir, prefix); }
+#ifndef _UNLINK_DEFINED
+static inline int unlink(const char* path) { return _unlink(path); }
+#define _UNLINK_DEFINED
+#endif
+static inline int vsnprintf(char *buffer, size_t size, const char *format, __ms_va_list args) { return _vsnprintf(buffer,size,format,args); }
+
+static inline wint_t fgetwchar(void) { return _fgetwchar(); }
+static inline wint_t fputwchar(wint_t wc) { return _fputwchar(wc); }
+static inline int getw(FILE* file) { return _getw(file); }
+static inline int putw(int val, FILE* file) { return _putw(val, file); }
+static inline FILE* wpopen(const wchar_t* command,const wchar_t* mode) { return _wpopen(command, mode); }
+
+#include <poppack.h>
+
+#endif /* __WINE_STDIO_H */
diff --git a/src/VBox/Devices/Graphics/shaderlib/wine/include/msvcrt/stdlib.h b/src/VBox/Devices/Graphics/shaderlib/wine/include/msvcrt/stdlib.h
new file mode 100644
index 00000000..e88ffa3f
--- /dev/null
+++ b/src/VBox/Devices/Graphics/shaderlib/wine/include/msvcrt/stdlib.h
@@ -0,0 +1,301 @@
+/*
+ * Standard library definitions
+ *
+ * Derived from the mingw header written by Colin Peters.
+ * Modified for Wine use by Jon Griffiths and Francois Gouget.
+ * This file is in the public domain.
+ */
+#ifndef __WINE_STDLIB_H
+#define __WINE_STDLIB_H
+
+#include <crtdefs.h>
+
+#include <pshpack8.h>
+
+#ifndef NULL
+#ifdef __cplusplus
+#define NULL 0
+#else
+#define NULL ((void*)0)
+#endif
+#endif
+
+typedef struct
+{
+ float f;
+} _CRT_FLOAT;
+
+typedef struct
+{
+ double x;
+} _CRT_DOUBLE;
+
+typedef struct
+{
+ unsigned char ld[10];
+} _LDOUBLE;
+
+#define EXIT_SUCCESS 0
+#define EXIT_FAILURE -1
+#define RAND_MAX 0x7FFF
+
+#ifndef _MAX_PATH
+#define _MAX_DRIVE 3
+#define _MAX_FNAME 256
+#define _MAX_DIR _MAX_FNAME
+#define _MAX_EXT _MAX_FNAME
+#define _MAX_PATH 260
+#endif
+
+/* Make the secure string functions (names end in "_s") truncate their output */
+#define _TRUNCATE ((size_t)-1)
+
+typedef struct _div_t {
+ int quot;
+ int rem;
+} div_t;
+
+typedef struct _ldiv_t {
+ __msvcrt_long quot;
+ __msvcrt_long rem;
+} ldiv_t;
+
+#define __max(a,b) (((a) > (b)) ? (a) : (b))
+#define __min(a,b) (((a) < (b)) ? (a) : (b))
+#ifndef __cplusplus
+#define max(a,b) (((a) > (b)) ? (a) : (b))
+#define min(a,b) (((a) < (b)) ? (a) : (b))
+#endif
+
+/* _set_error_mode() constants */
+#define _OUT_TO_DEFAULT 0
+#define _OUT_TO_STDERR 1
+#define _OUT_TO_MSGBOX 2
+#define _REPORT_ERRMODE 3
+
+/* _set_abort_behavior codes */
+#define _WRITE_ABORT_MSG 1
+#define _CALL_REPORTFAULT 2
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+
+#ifdef __i386__
+
+extern unsigned int* __cdecl __p__osver(void);
+#define _osver (*__p__osver())
+extern unsigned int* __cdecl __p__winver(void);
+#define _winver (*__p__winver())
+extern unsigned int* __cdecl __p__winmajor(void);
+#define _winmajor (*__p__winmajor())
+extern unsigned int* __cdecl __p__winminor(void);
+#define _winminor (*__p__winminor())
+extern int* __cdecl __p___argc(void);
+#define __argc (*__p___argc())
+extern char*** __cdecl __p___argv(void);
+#define __argv (*__p___argv())
+extern wchar_t*** __cdecl __p___wargv(void);
+#define __wargv (*__p___wargv())
+extern char*** __cdecl __p__environ(void);
+#define _environ (*__p__environ())
+extern wchar_t*** __cdecl __p__wenviron(void);
+#define _wenviron (*__p__wenviron())
+extern unsigned int* __cdecl __p__fmode(void);
+#define _fmode (*__p__fmode())
+
+#else /* __i386__ */
+
+extern unsigned int _osver;
+extern unsigned int _winver;
+extern unsigned int _winmajor;
+extern unsigned int _winminor;
+extern int __argc;
+extern char **__argv;
+extern wchar_t **__wargv;
+extern char **_environ;
+extern wchar_t **_wenviron;
+extern unsigned int _fmode;
+
+#endif /* __i386__ */
+
+extern int* __cdecl ___mb_cur_max_func(void);
+#define __mb_cur_max (*___mb_cur_max_func())
+extern __msvcrt_ulong* __cdecl __doserrno(void);
+#define _doserrno (*__doserrno())
+extern int* __cdecl _errno(void);
+#define errno (*_errno())
+
+/* FIXME: We need functions to access these:
+ * int _sys_nerr;
+ * char** _sys_errlist;
+ */
+
+errno_t __cdecl _get_doserrno(int*);
+errno_t __cdecl _get_errno(int*);
+errno_t __cdecl _set_doserrno(int);
+errno_t __cdecl _set_errno(int);
+
+typedef int (__cdecl *_onexit_t)(void);
+
+
+int __cdecl _atodbl(_CRT_DOUBLE*,char*);
+int __cdecl _atodbl_l(_CRT_DOUBLE*,char*,_locale_t);
+int __cdecl _atoflt(_CRT_FLOAT*,char*);
+int __cdecl _atoflt_l(_CRT_FLOAT*,char*,_locale_t);
+__int64 __cdecl _atoi64(const char*);
+long double __cdecl _atold(const char*);
+int __cdecl _atoldbl(_LDOUBLE*,char*);
+void __cdecl _beep(unsigned int,unsigned int);
+char* __cdecl _ecvt(double,int,int*,int*);
+char* __cdecl _fcvt(double,int,int*,int*);
+char* __cdecl _fullpath(char*,const char*,size_t);
+char* __cdecl _gcvt(double,int,char*);
+char* __cdecl _i64toa(__int64,char*,int);
+char* __cdecl _itoa(int,char*,int);
+errno_t __cdecl _itoa_s(int,char*,size_t,int);
+char* __cdecl _ltoa(__msvcrt_long,char*,int);
+__msvcrt_ulong __cdecl _lrotl(__msvcrt_ulong,int);
+__msvcrt_ulong __cdecl _lrotr(__msvcrt_ulong,int);
+void __cdecl _makepath(char*,const char*,const char*,const char*,const char*);
+int __cdecl _makepath_s(char*,size_t,const char*,const char*,const char*,const char*);
+size_t __cdecl _mbstrlen(const char*);
+_onexit_t __cdecl _onexit(_onexit_t);
+int __cdecl _putenv(const char*);
+unsigned int __cdecl _rotl(unsigned int,int);
+unsigned int __cdecl _rotr(unsigned int,int);
+void __cdecl _searchenv(const char*,const char*,char*);
+int __cdecl _set_error_mode(int);
+void __cdecl _seterrormode(int);
+void __cdecl _sleep(__msvcrt_ulong);
+void __cdecl _splitpath(const char*,char*,char*,char*,char*);
+long double __cdecl _strtold(const char*,char**);
+void __cdecl _swab(char*,char*,int);
+char* __cdecl _ui64toa(unsigned __int64,char*,int);
+errno_t __cdecl _ui64toa_s(unsigned __int64,char*,size_t,int);
+char* __cdecl _ultoa(__msvcrt_ulong,char*,int);
+errno_t __cdecl _ultoa_s(__msvcrt_ulong,char*,size_t,int);
+
+void __cdecl _exit(int);
+void __cdecl abort(void);
+int __cdecl abs(int);
+int __cdecl atexit(void (*)(void));
+double __cdecl atof(const char*);
+int __cdecl atoi(const char*);
+int __cdecl _atoi_l(const char*,_locale_t);
+__msvcrt_long __cdecl atol(const char*);
+void* __cdecl calloc(size_t,size_t);
+#ifndef __i386__
+div_t __cdecl div(int,int);
+ldiv_t __cdecl ldiv(__msvcrt_long,__msvcrt_long);
+#endif
+void __cdecl exit(int);
+void __cdecl free(void*);
+char* __cdecl getenv(const char*);
+__msvcrt_long __cdecl labs(__msvcrt_long);
+void* __cdecl malloc(size_t);
+int __cdecl mblen(const char*,size_t);
+void __cdecl perror(const char*);
+int __cdecl rand(void);
+errno_t __cdecl rand_s(unsigned int*);
+void* __cdecl realloc(void*,size_t);
+void __cdecl srand(unsigned int);
+double __cdecl strtod(const char*,char**);
+__msvcrt_long __cdecl strtol(const char*,char**,int);
+__msvcrt_ulong __cdecl strtoul(const char*,char**,int);
+__int64 __cdecl _strtoi64(const char*,char**,int);
+__int64 __cdecl _strtoi64_l(const char*,char**,int,_locale_t);
+unsigned __int64 __cdecl _strtoui64(const char*,char**,int);
+unsigned __int64 __cdecl _strtoui64_l(const char*,char**,int,_locale_t);
+int __cdecl system(const char*);
+void* __cdecl bsearch(const void*,const void*,size_t,size_t,int (*)(const void*,const void*));
+void __cdecl qsort(void*,size_t,size_t,int (*)(const void*,const void*));
+
+#ifndef _WSTDLIB_DEFINED
+#define _WSTDLIB_DEFINED
+wchar_t* __cdecl _itow(int,wchar_t*,int);
+wchar_t* __cdecl _i64tow(__int64,wchar_t*,int);
+wchar_t* __cdecl _ltow(__msvcrt_long,wchar_t*,int);
+wchar_t* __cdecl _ui64tow(unsigned __int64,wchar_t*,int);
+wchar_t* __cdecl _ultow(__msvcrt_ulong,wchar_t*,int);
+wchar_t* __cdecl _wfullpath(wchar_t*,const wchar_t*,size_t);
+wchar_t* __cdecl _wgetenv(const wchar_t*);
+void __cdecl _wmakepath(wchar_t*,const wchar_t*,const wchar_t*,const wchar_t*,const wchar_t*);
+int __cdecl _wmakepath_s(wchar_t*,size_t,const wchar_t*,const wchar_t*,const wchar_t*,const wchar_t*);
+void __cdecl _wperror(const wchar_t*);
+int __cdecl _wputenv(const wchar_t*);
+void __cdecl _wsearchenv(const wchar_t*,const wchar_t*,wchar_t*);
+void __cdecl _wsplitpath(const wchar_t*,wchar_t*,wchar_t*,wchar_t*,wchar_t*);
+errno_t __cdecl _wsplitpath_s(const wchar_t*,wchar_t*,size_t,wchar_t*,size_t,
+ wchar_t*,size_t,wchar_t*,size_t);
+int __cdecl _wsystem(const wchar_t*);
+double __cdecl _wtof(const wchar_t*);
+int __cdecl _wtoi(const wchar_t*);
+__int64 __cdecl _wtoi64(const wchar_t*);
+__msvcrt_long __cdecl _wtol(const wchar_t*);
+
+size_t __cdecl mbstowcs(wchar_t*,const char*,size_t);
+errno_t __cdecl mbstowcs_s(size_t*,wchar_t*,size_t,const char*,size_t);
+int __cdecl mbtowc(wchar_t*,const char*,size_t);
+double __cdecl wcstod(const wchar_t*,wchar_t**);
+__msvcrt_long __cdecl wcstol(const wchar_t*,wchar_t**,int);
+size_t __cdecl wcstombs(char*,const wchar_t*,size_t);
+errno_t __cdecl wcstombs_s(size_t*,char*,size_t,const wchar_t*,size_t);
+__msvcrt_ulong __cdecl wcstoul(const wchar_t*,wchar_t**,int);
+int __cdecl wctomb(char*,wchar_t);
+__int64 __cdecl _wcstoi64(const wchar_t*,wchar_t**,int);
+__int64 __cdecl _wcstoi64_l(const wchar_t*,wchar_t**,int,_locale_t);
+unsigned __int64 __cdecl _wcstoui64(const wchar_t*,wchar_t**,int);
+unsigned __int64 __cdecl _wcstoui64_l(const wchar_t*,wchar_t**,int,_locale_t);
+#endif /* _WSTDLIB_DEFINED */
+
+typedef void (__cdecl *_invalid_parameter_handler)(const wchar_t*, const wchar_t*, const wchar_t*, unsigned, uintptr_t);
+_invalid_parameter_handler __cdecl _set_invalid_parameter_handler(_invalid_parameter_handler);
+_invalid_parameter_handler __cdecl _get_invalid_parameter_handler(void);
+void __cdecl _invalid_parameter(const wchar_t *expr, const wchar_t *func, const wchar_t *file,
+ unsigned int line, uintptr_t arg);
+
+#ifdef __cplusplus
+}
+#endif
+
+
+#define environ _environ
+#define onexit_t _onexit_t
+
+static inline char* ecvt(double value, int ndigit, int* decpt, int* sign) { return _ecvt(value, ndigit, decpt, sign); }
+static inline char* fcvt(double value, int ndigit, int* decpt, int* sign) { return _fcvt(value, ndigit, decpt, sign); }
+static inline char* gcvt(double value, int ndigit, char* buf) { return _gcvt(value, ndigit, buf); }
+static inline char* itoa(int value, char* str, int radix) { return _itoa(value, str, radix); }
+static inline char* ltoa(__msvcrt_long value, char* str, int radix) { return _ltoa(value, str, radix); }
+static inline _onexit_t onexit(_onexit_t func) { return _onexit(func); }
+static inline int putenv(const char* str) { return _putenv(str); }
+static inline void swab(char* src, char* dst, int len) { _swab(src, dst, len); }
+static inline char* ultoa(__msvcrt_ulong value, char* str, int radix) { return _ultoa(value, str, radix); }
+
+#ifdef __i386__
+static inline div_t __wine_msvcrt_div(int num, int denom)
+{
+ extern unsigned __int64 div(int,int);
+ div_t ret;
+ unsigned __int64 res = div(num,denom);
+ ret.quot = (int)res;
+ ret.rem = (int)(res >> 32);
+ return ret;
+}
+static inline ldiv_t __wine_msvcrt_ldiv(__msvcrt_long num, __msvcrt_long denom)
+{
+ extern unsigned __int64 ldiv(__msvcrt_long,__msvcrt_long);
+ ldiv_t ret;
+ unsigned __int64 res = ldiv(num,denom);
+ ret.quot = (__msvcrt_long)res;
+ ret.rem = (__msvcrt_long)(res >> 32);
+ return ret;
+}
+#define div(num,denom) __wine_msvcrt_div(num,denom)
+#define ldiv(num,denom) __wine_msvcrt_ldiv(num,denom)
+#endif
+
+#include <poppack.h>
+
+#endif /* __WINE_STDLIB_H */
diff --git a/src/VBox/Devices/Graphics/shaderlib/wine/include/msvcrt/string.h b/src/VBox/Devices/Graphics/shaderlib/wine/include/msvcrt/string.h
new file mode 100644
index 00000000..d1dca89a
--- /dev/null
+++ b/src/VBox/Devices/Graphics/shaderlib/wine/include/msvcrt/string.h
@@ -0,0 +1,156 @@
+/*
+ * String definitions
+ *
+ * Derived from the mingw header written by Colin Peters.
+ * Modified for Wine use by Jon Griffiths and Francois Gouget.
+ * This file is in the public domain.
+ */
+#ifndef __WINE_STRING_H
+#define __WINE_STRING_H
+
+#include <crtdefs.h>
+
+#ifndef _NLSCMP_DEFINED
+#define _NLSCMPERROR ((unsigned int)0x7fffffff)
+#define _NLSCMP_DEFINED
+#endif
+
+#ifndef NULL
+#ifdef __cplusplus
+#define NULL 0
+#else
+#define NULL ((void *)0)
+#endif
+#endif
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+
+#ifndef _CRT_MEMORY_DEFINED
+#define _CRT_MEMORY_DEFINED
+void* __cdecl memchr(const void*,int,size_t);
+int __cdecl memcmp(const void*,const void*,size_t);
+void* __cdecl memcpy(void*,const void*,size_t);
+errno_t __cdecl memcpy_s(void*,size_t,const void*,size_t);
+void* __cdecl memset(void*,int,size_t);
+void* __cdecl _memccpy(void*,const void*,int,unsigned int);
+int __cdecl _memicmp(const void*,const void*,unsigned int);
+
+static inline int memicmp(const void* s1, const void* s2, size_t len) { return _memicmp(s1, s2, len); }
+static inline void* memccpy(void *s1, const void *s2, int c, size_t n) { return _memccpy(s1, s2, c, n); }
+#endif /* _CRT_MEMORY_DEFINED */
+
+int __cdecl _strcmpi(const char*,const char*);
+int __cdecl _strcoll_l(const char*, const char*, _locale_t);
+char* __cdecl _strdup(const char*);
+char* __cdecl _strerror(const char*);
+errno_t __cdecl strerror_s(char*,size_t,int);
+int __cdecl _stricmp(const char*,const char*);
+int __cdecl _stricoll(const char*,const char*);
+int __cdecl _stricoll_l(const char*, const char*, _locale_t);
+char* __cdecl _strlwr(char*);
+errno_t __cdecl _strlwr_s(char*,size_t);
+int __cdecl _strncoll(const char*, const char*, size_t);
+int __cdecl _strncoll_l(const char*, const char*, size_t, _locale_t);
+int __cdecl _strnicmp(const char*,const char*,size_t);
+int __cdecl _strnicoll(const char*, const char*, size_t);
+int __cdecl _strnicoll_l(const char*, const char*, size_t, _locale_t);
+char* __cdecl _strnset(char*,int,size_t);
+char* __cdecl _strrev(char*);
+char* __cdecl _strset(char*,int);
+char* __cdecl _strupr(char*);
+
+void* __cdecl memmove(void*,const void*,size_t);
+errno_t __cdecl memmove_s(void*,size_t,const void*,size_t);
+char* __cdecl strcat(char*,const char*);
+errno_t __cdecl strcat_s(char*,size_t,const char*);
+char* __cdecl strchr(const char*,int);
+int __cdecl strcmp(const char*,const char*);
+int __cdecl strcoll(const char*,const char*);
+char* __cdecl strcpy(char*,const char*);
+errno_t __cdecl strcpy_s(char*,size_t,const char*);
+size_t __cdecl strcspn(const char*,const char*);
+char* __cdecl strerror(int);
+size_t __cdecl strlen(const char*);
+char* __cdecl strncat(char*,const char*,size_t);
+errno_t __cdecl strncat_s(char*,size_t,const char*,size_t);
+int __cdecl strncmp(const char*,const char*,size_t);
+char* __cdecl strncpy(char*,const char*,size_t);
+errno_t __cdecl strncpy_s(char*,size_t,const char*,size_t);
+size_t __cdecl strnlen(const char*,size_t);
+char* __cdecl strpbrk(const char*,const char*);
+char* __cdecl strrchr(const char*,int);
+size_t __cdecl strspn(const char*,const char*);
+char* __cdecl strstr(const char*,const char*);
+char* __cdecl strtok(char*,const char*);
+char* __cdecl strtok_s(char*,const char*,char**);
+size_t __cdecl strxfrm(char*,const char*,size_t);
+
+#ifndef _WSTRING_DEFINED
+#define _WSTRING_DEFINED
+wchar_t* __cdecl _wcsdup(const wchar_t*);
+int __cdecl _wcsicmp(const wchar_t*,const wchar_t*);
+int __cdecl _wcsicoll(const wchar_t*,const wchar_t*);
+int __cdecl _wcsicoll_l(const wchar_t*, const wchar_t*, _locale_t);
+wchar_t* __cdecl _wcslwr(wchar_t*);
+int __cdecl _wcscoll_l(const wchar_t*, const wchar_t*, _locale_t);
+int __cdecl _wcsncoll(const wchar_t*, const wchar_t*, size_t);
+int __cdecl _wcsncoll_l(const wchar_t*, const wchar_t*, size_t, _locale_t);
+int __cdecl _wcsnicmp(const wchar_t*,const wchar_t*,size_t);
+int __cdecl _wcsnicoll(const wchar_t*,const wchar_t*,size_t);
+int __cdecl _wcsnicoll_l(const wchar_t*, const wchar_t*, size_t, _locale_t);
+wchar_t* __cdecl _wcsnset(wchar_t*,wchar_t,size_t);
+wchar_t* __cdecl _wcsrev(wchar_t*);
+wchar_t* __cdecl _wcsset(wchar_t*,wchar_t);
+wchar_t* __cdecl _wcsupr(wchar_t*);
+
+wchar_t* __cdecl wcscat(wchar_t*,const wchar_t*);
+errno_t __cdecl wcscat_s(wchar_t*,size_t,const wchar_t*);
+wchar_t* __cdecl wcschr(const wchar_t*,wchar_t);
+int __cdecl wcscmp(const wchar_t*,const wchar_t*);
+int __cdecl wcscoll(const wchar_t*,const wchar_t*);
+wchar_t* __cdecl wcscpy(wchar_t*,const wchar_t*);
+errno_t __cdecl wcscpy_s(wchar_t*,size_t,const wchar_t*);
+size_t __cdecl wcscspn(const wchar_t*,const wchar_t*);
+size_t __cdecl wcslen(const wchar_t*);
+wchar_t* __cdecl wcsncat(wchar_t*,const wchar_t*,size_t);
+int __cdecl wcsncmp(const wchar_t*,const wchar_t*,size_t);
+wchar_t* __cdecl wcsncpy(wchar_t*,const wchar_t*,size_t);
+errno_t __cdecl wcsncpy_s(wchar_t*,size_t,const wchar_t*,size_t);
+wchar_t* __cdecl wcspbrk(const wchar_t*,const wchar_t*);
+wchar_t* __cdecl wcsrchr(const wchar_t*,wchar_t wcFor);
+size_t __cdecl wcsspn(const wchar_t*,const wchar_t*);
+wchar_t* __cdecl wcsstr(const wchar_t*,const wchar_t*);
+wchar_t* __cdecl wcstok(wchar_t*,const wchar_t*);
+size_t __cdecl wcsxfrm(wchar_t*,const wchar_t*,size_t);
+#endif /* _WSTRING_DEFINED */
+
+#ifdef __cplusplus
+}
+#endif
+
+
+static inline int strcasecmp(const char* s1, const char* s2) { return _stricmp(s1, s2); }
+static inline int strcmpi(const char* s1, const char* s2) { return _strcmpi(s1, s2); }
+static inline char* strdup(const char* buf) { return _strdup(buf); }
+static inline int stricmp(const char* s1, const char* s2) { return _stricmp(s1, s2); }
+static inline int stricoll(const char* s1, const char* s2) { return _stricoll(s1, s2); }
+static inline char* strlwr(char* str) { return _strlwr(str); }
+static inline int strncasecmp(const char *str1, const char *str2, size_t n) { return _strnicmp(str1, str2, n); }
+static inline int strnicmp(const char* s1, const char* s2, size_t n) { return _strnicmp(s1, s2, n); }
+static inline char* strnset(char* str, int value, unsigned int len) { return _strnset(str, value, len); }
+static inline char* strrev(char* str) { return _strrev(str); }
+static inline char* strset(char* str, int value) { return _strset(str, value); }
+static inline char* strupr(char* str) { return _strupr(str); }
+
+static inline wchar_t* wcsdup(const wchar_t* str) { return _wcsdup(str); }
+static inline int wcsicoll(const wchar_t* str1, const wchar_t* str2) { return _wcsicoll(str1, str2); }
+static inline wchar_t* wcslwr(wchar_t* str) { return _wcslwr(str); }
+static inline int wcsnicmp(const wchar_t* str1, const wchar_t* str2, size_t n) { return _wcsnicmp(str1, str2, n); }
+static inline wchar_t* wcsnset(wchar_t* str, wchar_t c, size_t n) { return _wcsnset(str, c, n); }
+static inline wchar_t* wcsrev(wchar_t* str) { return _wcsrev(str); }
+static inline wchar_t* wcsset(wchar_t* str, wchar_t c) { return _wcsset(str, c); }
+static inline wchar_t* wcsupr(wchar_t* str) { return _wcsupr(str); }
+
+#endif /* __WINE_STRING_H */
diff --git a/src/VBox/Devices/Graphics/shaderlib/wine/include/msvcrt/sys/locking.h b/src/VBox/Devices/Graphics/shaderlib/wine/include/msvcrt/sys/locking.h
new file mode 100644
index 00000000..223cb969
--- /dev/null
+++ b/src/VBox/Devices/Graphics/shaderlib/wine/include/msvcrt/sys/locking.h
@@ -0,0 +1,42 @@
+/*
+ * _locking constants
+ *
+ * Copyright 2002 Bill Medland
+ *
+ * This library is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU Lesser General Public
+ * License as published by the Free Software Foundation; either
+ * version 2.1 of the License, or (at your option) any later version.
+ *
+ * This library 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 for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this library; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA
+ */
+
+/*
+ * Oracle LGPL Disclaimer: For the avoidance of doubt, except that if any license choice
+ * other than GPL or LGPL is available it will apply instead, Oracle elects to use only
+ * the Lesser General Public License version 2.1 (LGPLv2) at this time for any software where
+ * a choice of LGPL license versions is made available with the language indicating
+ * that LGPLv2 or any later version may be used, or where a choice of which version
+ * of the LGPL is applied is otherwise unspecified.
+ */
+
+#ifndef __WINE_SYS_LOCKING_H__
+#define __WINE_SYS_LOCKING_H__
+#ifndef __WINE_USE_MSVCRT
+#define __WINE_USE_MSVCRT
+#endif
+
+#define _LK_UNLCK 0
+#define _LK_LOCK 1
+#define _LK_NBLCK 2
+#define _LK_RLCK 3
+#define _LK_NBRLCK 4
+
+#endif /* __WINE_SYS_LOCKING_H__ : Do not place anything after this #endif */
diff --git a/src/VBox/Devices/Graphics/shaderlib/wine/include/msvcrt/sys/stat.h b/src/VBox/Devices/Graphics/shaderlib/wine/include/msvcrt/sys/stat.h
new file mode 100644
index 00000000..6509e04b
--- /dev/null
+++ b/src/VBox/Devices/Graphics/shaderlib/wine/include/msvcrt/sys/stat.h
@@ -0,0 +1,201 @@
+/*
+ * _stat() definitions
+ *
+ * Derived from the mingw header written by Colin Peters.
+ * Modified for Wine use by Jon Griffiths and Francois Gouget.
+ * This file is in the public domain.
+ */
+#ifndef __WINE_SYS_STAT_H
+#define __WINE_SYS_STAT_H
+
+#include <crtdefs.h>
+#include <sys/types.h>
+
+#include <pshpack8.h>
+
+#ifndef _DEV_T_DEFINED
+typedef unsigned int _dev_t;
+#define _DEV_T_DEFINED
+#endif
+
+#ifndef _INO_T_DEFINED
+typedef unsigned short _ino_t;
+#define _INO_T_DEFINED
+#endif
+
+#ifndef _OFF_T_DEFINED
+typedef int _off_t;
+#define _OFF_T_DEFINED
+#endif
+
+#ifndef DECLSPEC_ALIGN
+# if defined(_MSC_VER) && (_MSC_VER >= 1300) && !defined(MIDL_PASS)
+# define DECLSPEC_ALIGN(x) __declspec(align(x))
+# elif defined(__GNUC__)
+# define DECLSPEC_ALIGN(x) __attribute__((aligned(x)))
+# else
+# define DECLSPEC_ALIGN(x)
+# endif
+#endif
+
+#define _S_IEXEC 0x0040
+#define _S_IWRITE 0x0080
+#define _S_IREAD 0x0100
+#define _S_IFIFO 0x1000
+#define _S_IFCHR 0x2000
+#define _S_IFDIR 0x4000
+#define _S_IFREG 0x8000
+#define _S_IFMT 0xF000
+
+/* for FreeBSD */
+#undef st_atime
+#undef st_ctime
+#undef st_mtime
+
+#ifndef _STAT_DEFINED
+#define _STAT_DEFINED
+
+struct _stat {
+ _dev_t st_dev;
+ _ino_t st_ino;
+ unsigned short st_mode;
+ short st_nlink;
+ short st_uid;
+ short st_gid;
+ _dev_t st_rdev;
+ _off_t st_size;
+ time_t st_atime;
+ time_t st_mtime;
+ time_t st_ctime;
+};
+
+struct stat {
+ _dev_t st_dev;
+ _ino_t st_ino;
+ unsigned short st_mode;
+ short st_nlink;
+ short st_uid;
+ short st_gid;
+ _dev_t st_rdev;
+ _off_t st_size;
+ time_t st_atime;
+ time_t st_mtime;
+ time_t st_ctime;
+};
+
+struct _stat32 {
+ _dev_t st_dev;
+ _ino_t st_ino;
+ unsigned short st_mode;
+ short st_nlink;
+ short st_uid;
+ short st_gid;
+ _dev_t st_rdev;
+ _off_t st_size;
+ __time32_t st_atime;
+ __time32_t st_mtime;
+ __time32_t st_ctime;
+};
+
+struct _stat32i64 {
+ _dev_t st_dev;
+ _ino_t st_ino;
+ unsigned short st_mode;
+ short st_nlink;
+ short st_uid;
+ short st_gid;
+ _dev_t st_rdev;
+ __int64 DECLSPEC_ALIGN(8) st_size;
+ time_t st_atime;
+ time_t st_mtime;
+ time_t st_ctime;
+};
+
+struct _stat64i32 {
+ _dev_t st_dev;
+ _ino_t st_ino;
+ unsigned short st_mode;
+ short st_nlink;
+ short st_uid;
+ short st_gid;
+ _dev_t st_rdev;
+ _off_t st_size;
+ __time64_t st_atime;
+ __time64_t st_mtime;
+ __time64_t st_ctime;
+};
+
+struct _stati64 {
+ _dev_t st_dev;
+ _ino_t st_ino;
+ unsigned short st_mode;
+ short st_nlink;
+ short st_uid;
+ short st_gid;
+ _dev_t st_rdev;
+ __int64 DECLSPEC_ALIGN(8) st_size;
+ time_t st_atime;
+ time_t st_mtime;
+ time_t st_ctime;
+};
+
+struct _stat64 {
+ _dev_t st_dev;
+ _ino_t st_ino;
+ unsigned short st_mode;
+ short st_nlink;
+ short st_uid;
+ short st_gid;
+ _dev_t st_rdev;
+ __int64 DECLSPEC_ALIGN(8) st_size;
+ __time64_t st_atime;
+ __time64_t st_mtime;
+ __time64_t st_ctime;
+};
+#endif /* _STAT_DEFINED */
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+
+int __cdecl _fstat(int,struct _stat*);
+int __cdecl _stat(const char*,struct _stat*);
+int __cdecl _fstat32(int, struct _stat32*);
+int __cdecl _stat32(const char*, struct _stat32*);
+int __cdecl _fstati64(int,struct _stati64*);
+int __cdecl _stati64(const char*,struct _stati64*);
+int __cdecl _fstat64(int,struct _stat64*);
+int __cdecl _stat64(const char*,struct _stat64*);
+int __cdecl _umask(int);
+
+#ifndef _WSTAT_DEFINED
+#define _WSTAT_DEFINED
+int __cdecl _wstat(const wchar_t*,struct _stat*);
+int __cdecl _wstat32(const wchar_t*, struct _stat32*);
+int __cdecl _wstati64(const wchar_t*,struct _stati64*);
+int __cdecl _wstat64(const wchar_t*,struct _stat64*);
+#endif /* _WSTAT_DEFINED */
+
+#ifdef __cplusplus
+}
+#endif
+
+
+#define S_IFMT _S_IFMT
+#define S_IFDIR _S_IFDIR
+#define S_IFCHR _S_IFCHR
+#define S_IFREG _S_IFREG
+#define S_IREAD _S_IREAD
+#define S_IWRITE _S_IWRITE
+#define S_IEXEC _S_IEXEC
+
+static inline int fstat(int fd, struct stat* ptr) { return _fstat(fd, (struct _stat*)ptr); }
+static inline int stat(const char* path, struct stat* ptr) { return _stat(path, (struct _stat*)ptr); }
+#ifndef _UMASK_DEFINED
+static inline int umask(int fd) { return _umask(fd); }
+#define _UMASK_DEFINED
+#endif
+
+#include <poppack.h>
+
+#endif /* __WINE_SYS_STAT_H */
diff --git a/src/VBox/Devices/Graphics/shaderlib/wine/include/msvcrt/sys/timeb.h b/src/VBox/Devices/Graphics/shaderlib/wine/include/msvcrt/sys/timeb.h
new file mode 100644
index 00000000..07c32b97
--- /dev/null
+++ b/src/VBox/Devices/Graphics/shaderlib/wine/include/msvcrt/sys/timeb.h
@@ -0,0 +1,86 @@
+/*
+ * Path and directory definitions
+ *
+ * Copyright 2000 Francois Gouget.
+ *
+ * This library is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU Lesser General Public
+ * License as published by the Free Software Foundation; either
+ * version 2.1 of the License, or (at your option) any later version.
+ *
+ * This library 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 for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this library; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA
+ */
+
+/*
+ * Oracle LGPL Disclaimer: For the avoidance of doubt, except that if any license choice
+ * other than GPL or LGPL is available it will apply instead, Oracle elects to use only
+ * the Lesser General Public License version 2.1 (LGPLv2) at this time for any software where
+ * a choice of LGPL license versions is made available with the language indicating
+ * that LGPLv2 or any later version may be used, or where a choice of which version
+ * of the LGPL is applied is otherwise unspecified.
+ */
+
+#ifndef __WINE_SYS_TIMEB_H
+#define __WINE_SYS_TIMEB_H
+
+#include <crtdefs.h>
+
+#include <pshpack8.h>
+
+#ifndef _TIMEB_DEFINED
+#define _TIMEB_DEFINED
+struct _timeb
+{
+ time_t time;
+ unsigned short millitm;
+ short timezone;
+ short dstflag;
+};
+struct __timeb32
+{
+ __time32_t time;
+ unsigned short millitm;
+ short timezone;
+ short dstflag;
+};
+struct __timeb64
+{
+ __time64_t time;
+ unsigned short millitm;
+ short timezone;
+ short dstflag;
+};
+#endif /* _TIMEB_DEFINED */
+
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+
+void __cdecl _ftime32(struct __timeb32*);
+void __cdecl _ftime64(struct __timeb64*);
+
+#ifdef __cplusplus
+}
+#endif
+
+#ifdef _USE_32BIT_TIME_T
+static inline void __cdecl _ftime(struct _timeb *tb) { return _ftime32((struct __timeb32*)tb); }
+#else
+static inline void __cdecl _ftime(struct _timeb *tb) { return _ftime64((struct __timeb64*)tb); }
+#endif
+
+#define timeb _timeb
+
+static inline void ftime(struct _timeb* ptr) { return _ftime(ptr); }
+
+#include <poppack.h>
+
+#endif /* __WINE_SYS_TIMEB_H */
diff --git a/src/VBox/Devices/Graphics/shaderlib/wine/include/msvcrt/sys/types.h b/src/VBox/Devices/Graphics/shaderlib/wine/include/msvcrt/sys/types.h
new file mode 100644
index 00000000..db90547c
--- /dev/null
+++ b/src/VBox/Devices/Graphics/shaderlib/wine/include/msvcrt/sys/types.h
@@ -0,0 +1,82 @@
+/*
+ * _stat() definitions
+ *
+ * Copyright 2000 Francois Gouget.
+ *
+ * This library is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU Lesser General Public
+ * License as published by the Free Software Foundation; either
+ * version 2.1 of the License, or (at your option) any later version.
+ *
+ * This library 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 for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this library; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA
+ */
+
+/*
+ * Oracle LGPL Disclaimer: For the avoidance of doubt, except that if any license choice
+ * other than GPL or LGPL is available it will apply instead, Oracle elects to use only
+ * the Lesser General Public License version 2.1 (LGPLv2) at this time for any software where
+ * a choice of LGPL license versions is made available with the language indicating
+ * that LGPLv2 or any later version may be used, or where a choice of which version
+ * of the LGPL is applied is otherwise unspecified.
+ */
+
+#ifndef __WINE_SYS_TYPES_H
+#define __WINE_SYS_TYPES_H
+
+#include <crtdefs.h>
+
+#ifndef _DEV_T_DEFINED
+typedef unsigned int _dev_t;
+#define _DEV_T_DEFINED
+#endif
+
+#ifndef _INO_T_DEFINED
+typedef unsigned short _ino_t;
+#define _INO_T_DEFINED
+#endif
+
+#ifndef _MODE_T_DEFINED
+typedef unsigned short _mode_t;
+#define _MODE_T_DEFINED
+#endif
+
+#ifndef _OFF_T_DEFINED
+typedef int _off_t;
+#define _OFF_T_DEFINED
+#endif
+
+#ifndef _BSDTYPES_DEFINED
+typedef unsigned char u_char;
+typedef unsigned short u_short;
+typedef unsigned int u_int;
+typedef __msvcrt_ulong u_long;
+#define _BSDTYPES_DEFINED
+#endif
+
+#define dev_t _dev_t
+#define ino_t _ino_t
+#define mode_t _mode_t
+#define off_t _off_t
+
+#ifndef _PID_T_DEFINED
+typedef int pid_t;
+#define _PID_T_DEFINED
+#endif
+
+#ifndef _SSIZE_T_DEFINED
+#ifdef _WIN64
+typedef __int64 ssize_t;
+#else
+typedef int ssize_t;
+#endif
+#define _SSIZE_T_DEFINED
+#endif
+
+#endif /* __WINE_SYS_TYPES_H */
diff --git a/src/VBox/Devices/Graphics/shaderlib/wine/include/msvcrt/sys/unistd.h b/src/VBox/Devices/Graphics/shaderlib/wine/include/msvcrt/sys/unistd.h
new file mode 100644
index 00000000..1e823fbd
--- /dev/null
+++ b/src/VBox/Devices/Graphics/shaderlib/wine/include/msvcrt/sys/unistd.h
@@ -0,0 +1 @@
+#include <unistd.h>
diff --git a/src/VBox/Devices/Graphics/shaderlib/wine/include/msvcrt/sys/utime.h b/src/VBox/Devices/Graphics/shaderlib/wine/include/msvcrt/sys/utime.h
new file mode 100644
index 00000000..4b250fca
--- /dev/null
+++ b/src/VBox/Devices/Graphics/shaderlib/wine/include/msvcrt/sys/utime.h
@@ -0,0 +1,88 @@
+/*
+ * Path and directory definitions
+ *
+ * Copyright 2000 Francois Gouget.
+ *
+ * This library is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU Lesser General Public
+ * License as published by the Free Software Foundation; either
+ * version 2.1 of the License, or (at your option) any later version.
+ *
+ * This library 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 for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this library; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA
+ */
+
+/*
+ * Oracle LGPL Disclaimer: For the avoidance of doubt, except that if any license choice
+ * other than GPL or LGPL is available it will apply instead, Oracle elects to use only
+ * the Lesser General Public License version 2.1 (LGPLv2) at this time for any software where
+ * a choice of LGPL license versions is made available with the language indicating
+ * that LGPLv2 or any later version may be used, or where a choice of which version
+ * of the LGPL is applied is otherwise unspecified.
+ */
+
+#ifndef __WINE_SYS_UTIME_H
+#define __WINE_SYS_UTIME_H
+
+#include <crtdefs.h>
+
+#include <pshpack8.h>
+
+#ifndef _UTIMBUF_DEFINED
+#define _UTIMBUF_DEFINED
+struct _utimbuf
+{
+ time_t actime;
+ time_t modtime;
+};
+struct __utimbuf32
+{
+ __time32_t actime;
+ __time32_t modtime;
+};
+struct __utimbuf64
+{
+ __time64_t actime;
+ __time64_t modtime;
+};
+#endif /* _UTIMBUF_DEFINED */
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+
+int __cdecl _futime32(int,struct __utimbuf32*);
+int __cdecl _futime64(int,struct __utimbuf64*);
+int __cdecl _utime32(const char*,struct __utimbuf32*);
+int __cdecl _utime64(const char*,struct __utimbuf64*);
+int __cdecl _wutime32(const wchar_t*,struct __utimbuf32*);
+int __cdecl _wutime64(const wchar_t*,struct __utimbuf64*);
+
+#ifdef _USE_32BIT_TIME_T
+static inline int _futime(int fd, struct _utimbuf *buf) { return _futime32(fd, (struct __utimbuf32*)buf); }
+static inline int _utime(const char *s, struct _utimbuf *buf) { return _utime32(s, (struct __utimbuf32*)buf); }
+static inline int _wutime(const wchar_t *s, struct _utimbuf *buf) { return _wutime32(s, (struct __utimbuf32*)buf); }
+#else
+static inline int _futime(int fd, struct _utimbuf *buf) { return _futime64(fd, (struct __utimbuf64*)buf); }
+static inline int _utime(const char *s, struct _utimbuf *buf) { return _utime64(s, (struct __utimbuf64*)buf); }
+static inline int _wutime(const wchar_t *s, struct _utimbuf *buf) { return _wutime64(s, (struct __utimbuf64*)buf); }
+#endif
+
+#ifdef __cplusplus
+}
+#endif
+
+
+#define utimbuf _utimbuf
+
+static inline int utime(const char* path, struct _utimbuf* buf) { return _utime(path, buf); }
+
+#include <poppack.h>
+
+#endif /* __WINE_SYS_UTIME_H */
diff --git a/src/VBox/Devices/Graphics/shaderlib/wine/include/msvcrt/time.h b/src/VBox/Devices/Graphics/shaderlib/wine/include/msvcrt/time.h
new file mode 100644
index 00000000..6d5e0ed7
--- /dev/null
+++ b/src/VBox/Devices/Graphics/shaderlib/wine/include/msvcrt/time.h
@@ -0,0 +1,162 @@
+/*
+ * Time definitions
+ *
+ * Copyright 2000 Francois Gouget.
+ *
+ * This library is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU Lesser General Public
+ * License as published by the Free Software Foundation; either
+ * version 2.1 of the License, or (at your option) any later version.
+ *
+ * This library 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 for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this library; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA
+ */
+
+/*
+ * Oracle LGPL Disclaimer: For the avoidance of doubt, except that if any license choice
+ * other than GPL or LGPL is available it will apply instead, Oracle elects to use only
+ * the Lesser General Public License version 2.1 (LGPLv2) at this time for any software where
+ * a choice of LGPL license versions is made available with the language indicating
+ * that LGPLv2 or any later version may be used, or where a choice of which version
+ * of the LGPL is applied is otherwise unspecified.
+ */
+
+#ifndef __WINE_TIME_H
+#define __WINE_TIME_H
+
+#include <crtdefs.h>
+
+#include <pshpack8.h>
+
+#ifndef _CLOCK_T_DEFINED
+typedef __msvcrt_long clock_t;
+#define _CLOCK_T_DEFINED
+#endif
+
+#ifndef NULL
+#ifdef __cplusplus
+#define NULL 0
+#else
+#define NULL ((void *)0)
+#endif
+#endif
+
+#ifndef CLOCKS_PER_SEC
+#define CLOCKS_PER_SEC 1000
+#endif
+
+#ifndef _TM_DEFINED
+#define _TM_DEFINED
+struct tm {
+ int tm_sec;
+ int tm_min;
+ int tm_hour;
+ int tm_mday;
+ int tm_mon;
+ int tm_year;
+ int tm_wday;
+ int tm_yday;
+ int tm_isdst;
+};
+#endif /* _TM_DEFINED */
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+
+#ifdef __i386__
+#define _daylight (*__p__daylight())
+#define _dstbias (*__p__dstbias())
+#define _timezone (*__p__timezone())
+#define _tzname (__p__tzname())
+
+int * __cdecl __p__daylight(void);
+__msvcrt_long * __cdecl __p__dstbias(void);
+__msvcrt_long * __cdecl __p__timezone(void);
+char ** __cdecl __p__tzname(void);
+#else
+extern int _daylight;
+extern __msvcrt_long _dstbias;
+extern __msvcrt_long _timezone;
+extern char *_tzname;
+#endif
+
+#ifdef _USE_32BIT_TIME_T
+#define _ctime32 ctime
+#define _difftime32 difftime
+#define _gmtime32 gmtime
+#define _localtime32 localtime
+#define _mktime32 mktime
+#define _time32 time
+#endif
+
+unsigned __cdecl _getsystime(struct tm*);
+unsigned __cdecl _setsystime(struct tm*,unsigned);
+char* __cdecl _strdate(char*);
+errno_t __cdecl _strdate_s(char*,size_t);
+char* __cdecl _strtime(char*);
+errno_t __cdecl _strtime_s(char*,size_t);
+void __cdecl _tzset(void);
+
+char* __cdecl asctime(const struct tm*);
+clock_t __cdecl clock(void);
+char* __cdecl _ctime32(const __time32_t*);
+char* __cdecl _ctime64(const __time64_t*);
+double __cdecl _difftime32(__time32_t,__time32_t);
+double __cdecl _difftime64(__time64_t,__time64_t);
+struct tm* __cdecl _gmtime32(const __time32_t*);
+struct tm* __cdecl _gmtime64(const __time64_t*);
+struct tm* __cdecl _localtime32(const __time32_t*);
+errno_t __cdecl _localtime32_s(struct tm*, const __time64_t*);
+struct tm* __cdecl _localtime64(const __time64_t*);
+errno_t __cdecl _localtime64_s(struct tm*, const __time64_t*);
+__time32_t __cdecl _mktime32(struct tm*);
+__time64_t __cdecl _mktime64(struct tm*);
+size_t __cdecl strftime(char*,size_t,const char*,const struct tm*);
+__time32_t __cdecl _time32(__time32_t*);
+__time64_t __cdecl _time64(__time64_t*);
+
+#ifndef _USE_32BIT_TIME_T
+static inline char* ctime(const time_t *t) { return _ctime64(t); }
+static inline double difftime(time_t t1, time_t t2) { return _difftime64(t1, t2); }
+static inline struct tm* gmtime(const time_t *t) { return _gmtime64(t); }
+static inline struct tm* localtime(const time_t *t) { return _localtime64(t); }
+static inline time_t mktime(struct tm *tm) { return _mktime64(tm); }
+static inline time_t time(time_t *t) { return _time64(t); }
+#endif
+
+#ifndef _WTIME_DEFINED
+#define _WTIME_DEFINED
+
+#ifdef _USE_32BIT_TIME_T
+#define _wctime32 _wctime
+#endif
+
+wchar_t* __cdecl _wasctime(const struct tm*);
+size_t __cdecl wcsftime(wchar_t*,size_t,const wchar_t*,const struct tm*);
+wchar_t* __cdecl _wctime32(const __time32_t*);
+wchar_t* __cdecl _wctime64(const __time64_t*);
+wchar_t* __cdecl _wstrdate(wchar_t*);
+errno_t __cdecl _wstrdate_s(wchar_t*,size_t);
+wchar_t* __cdecl _wstrtime(wchar_t*);
+errno_t __cdecl _wstrtime_s(wchar_t*,size_t);
+
+#ifndef _USE_32BIT_TIME_T
+static inline wchar_t* _wctime(const time_t *t) { return _wctime64(t); }
+#endif
+
+#endif /* _WTIME_DEFINED */
+
+#ifdef __cplusplus
+}
+#endif
+
+#include <poppack.h>
+
+#endif /* __WINE_TIME_H */
diff --git a/src/VBox/Devices/Graphics/shaderlib/wine/include/msvcrt/unistd.h b/src/VBox/Devices/Graphics/shaderlib/wine/include/msvcrt/unistd.h
new file mode 100644
index 00000000..eca5c5eb
--- /dev/null
+++ b/src/VBox/Devices/Graphics/shaderlib/wine/include/msvcrt/unistd.h
@@ -0,0 +1,2 @@
+#include <io.h>
+#include <process.h>
diff --git a/src/VBox/Devices/Graphics/shaderlib/wine/include/msvcrt/wchar.h b/src/VBox/Devices/Graphics/shaderlib/wine/include/msvcrt/wchar.h
new file mode 100644
index 00000000..d936dc3d
--- /dev/null
+++ b/src/VBox/Devices/Graphics/shaderlib/wine/include/msvcrt/wchar.h
@@ -0,0 +1,478 @@
+/*
+ * Unicode definitions
+ *
+ * Derived from the mingw header written by Colin Peters.
+ * Modified for Wine use by Jon Griffiths and Francois Gouget.
+ * This file is in the public domain.
+ */
+#ifndef __WINE_WCHAR_H
+#define __WINE_WCHAR_H
+
+#include <crtdefs.h>
+#include <stdarg.h>
+
+#include <pshpack8.h>
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+
+#ifndef NULL
+#ifdef __cplusplus
+#define NULL 0
+#else
+#define NULL ((void *)0)
+#endif
+#endif
+
+#define WCHAR_MIN 0
+#define WCHAR_MAX ((wchar_t)-1)
+
+#ifndef DECLSPEC_ALIGN
+# if defined(_MSC_VER) && (_MSC_VER >= 1300) && !defined(MIDL_PASS)
+# define DECLSPEC_ALIGN(x) __declspec(align(x))
+# elif defined(__GNUC__)
+# define DECLSPEC_ALIGN(x) __attribute__((aligned(x)))
+# else
+# define DECLSPEC_ALIGN(x)
+# endif
+#endif
+
+typedef int mbstate_t;
+
+#ifndef WEOF
+#define WEOF (wint_t)(0xFFFF)
+#endif
+
+#ifndef _FSIZE_T_DEFINED
+typedef __msvcrt_ulong _fsize_t;
+#define _FSIZE_T_DEFINED
+#endif
+
+#ifndef _DEV_T_DEFINED
+typedef unsigned int _dev_t;
+#define _DEV_T_DEFINED
+#endif
+
+#ifndef _INO_T_DEFINED
+typedef unsigned short _ino_t;
+#define _INO_T_DEFINED
+#endif
+
+#ifndef _OFF_T_DEFINED
+typedef int _off_t;
+#define _OFF_T_DEFINED
+#endif
+
+#ifndef _TM_DEFINED
+#define _TM_DEFINED
+struct tm {
+ int tm_sec;
+ int tm_min;
+ int tm_hour;
+ int tm_mday;
+ int tm_mon;
+ int tm_year;
+ int tm_wday;
+ int tm_yday;
+ int tm_isdst;
+};
+#endif /* _TM_DEFINED */
+
+#ifndef _FILE_DEFINED
+#define _FILE_DEFINED
+typedef struct _iobuf
+{
+ char* _ptr;
+ int _cnt;
+ char* _base;
+ int _flag;
+ int _file;
+ int _charbuf;
+ int _bufsiz;
+ char* _tmpfname;
+} FILE;
+#endif /* _FILE_DEFINED */
+
+#ifndef _WFINDDATA_T_DEFINED
+#define _WFINDDATA_T_DEFINED
+
+struct _wfinddata_t {
+ unsigned attrib;
+ time_t time_create;
+ time_t time_access;
+ time_t time_write;
+ _fsize_t size;
+ wchar_t name[260];
+};
+
+struct _wfinddatai64_t {
+ unsigned attrib;
+ time_t time_create;
+ time_t time_access;
+ time_t time_write;
+ __int64 DECLSPEC_ALIGN(8) size;
+ wchar_t name[260];
+};
+
+#endif /* _WFINDDATA_T_DEFINED */
+
+#ifndef _STAT_DEFINED
+#define _STAT_DEFINED
+
+struct _stat {
+ _dev_t st_dev;
+ _ino_t st_ino;
+ unsigned short st_mode;
+ short st_nlink;
+ short st_uid;
+ short st_gid;
+ _dev_t st_rdev;
+ _off_t st_size;
+ time_t st_atime;
+ time_t st_mtime;
+ time_t st_ctime;
+};
+
+struct stat {
+ _dev_t st_dev;
+ _ino_t st_ino;
+ unsigned short st_mode;
+ short st_nlink;
+ short st_uid;
+ short st_gid;
+ _dev_t st_rdev;
+ _off_t st_size;
+ time_t st_atime;
+ time_t st_mtime;
+ time_t st_ctime;
+};
+
+struct _stat32 {
+ _dev_t st_dev;
+ _ino_t st_ino;
+ unsigned short st_mode;
+ short st_nlink;
+ short st_uid;
+ short st_gid;
+ _dev_t st_rdev;
+ _off_t st_size;
+ __time32_t st_atime;
+ __time32_t st_mtime;
+ __time32_t st_ctime;
+};
+
+struct _stat32i64 {
+ _dev_t st_dev;
+ _ino_t st_ino;
+ unsigned short st_mode;
+ short st_nlink;
+ short st_uid;
+ short st_gid;
+ _dev_t st_rdev;
+ __int64 DECLSPEC_ALIGN(8) st_size;
+ time_t st_atime;
+ time_t st_mtime;
+ time_t st_ctime;
+};
+
+struct _stat64i32 {
+ _dev_t st_dev;
+ _ino_t st_ino;
+ unsigned short st_mode;
+ short st_nlink;
+ short st_uid;
+ short st_gid;
+ _dev_t st_rdev;
+ _off_t st_size;
+ __time64_t st_atime;
+ __time64_t st_mtime;
+ __time64_t st_ctime;
+};
+
+struct _stati64 {
+ _dev_t st_dev;
+ _ino_t st_ino;
+ unsigned short st_mode;
+ short st_nlink;
+ short st_uid;
+ short st_gid;
+ _dev_t st_rdev;
+ __int64 DECLSPEC_ALIGN(8) st_size;
+ time_t st_atime;
+ time_t st_mtime;
+ time_t st_ctime;
+};
+
+struct _stat64 {
+ _dev_t st_dev;
+ _ino_t st_ino;
+ unsigned short st_mode;
+ short st_nlink;
+ short st_uid;
+ short st_gid;
+ _dev_t st_rdev;
+ __int64 DECLSPEC_ALIGN(8) st_size;
+ __time64_t st_atime;
+ __time64_t st_mtime;
+ __time64_t st_ctime;
+};
+#endif /* _STAT_DEFINED */
+
+/* ASCII char classification table - binary compatible */
+#define _UPPER 0x0001 /* C1_UPPER */
+#define _LOWER 0x0002 /* C1_LOWER */
+#define _DIGIT 0x0004 /* C1_DIGIT */
+#define _SPACE 0x0008 /* C1_SPACE */
+#define _PUNCT 0x0010 /* C1_PUNCT */
+#define _CONTROL 0x0020 /* C1_CNTRL */
+#define _BLANK 0x0040 /* C1_BLANK */
+#define _HEX 0x0080 /* C1_XDIGIT */
+#define _LEADBYTE 0x8000
+#define _ALPHA (0x0100|_UPPER|_LOWER) /* (C1_ALPHA|_UPPER|_LOWER) */
+
+#ifndef _WCTYPE_DEFINED
+#define _WCTYPE_DEFINED
+int __cdecl is_wctype(wint_t,wctype_t);
+int __cdecl isleadbyte(int);
+int __cdecl iswalnum(wint_t);
+int __cdecl iswalpha(wint_t);
+int __cdecl iswascii(wint_t);
+int __cdecl iswcntrl(wint_t);
+int __cdecl iswctype(wint_t,wctype_t);
+int __cdecl iswdigit(wint_t);
+int __cdecl iswgraph(wint_t);
+int __cdecl iswlower(wint_t);
+int __cdecl iswprint(wint_t);
+int __cdecl iswpunct(wint_t);
+int __cdecl iswspace(wint_t);
+int __cdecl iswupper(wint_t);
+int __cdecl iswxdigit(wint_t);
+wchar_t __cdecl towlower(wchar_t);
+wchar_t __cdecl towupper(wchar_t);
+#endif /* _WCTYPE_DEFINED */
+
+#ifndef _WDIRECT_DEFINED
+#define _WDIRECT_DEFINED
+int __cdecl _wchdir(const wchar_t*);
+wchar_t* __cdecl _wgetcwd(wchar_t*,int);
+wchar_t* __cdecl _wgetdcwd(int,wchar_t*,int);
+int __cdecl _wmkdir(const wchar_t*);
+int __cdecl _wrmdir(const wchar_t*);
+#endif /* _WDIRECT_DEFINED */
+
+#ifndef _WIO_DEFINED
+#define _WIO_DEFINED
+int __cdecl _waccess(const wchar_t*,int);
+int __cdecl _wchmod(const wchar_t*,int);
+int __cdecl _wcreat(const wchar_t*,int);
+intptr_t __cdecl _wfindfirst(const wchar_t*,struct _wfinddata_t*);
+intptr_t __cdecl _wfindfirsti64(const wchar_t*, struct _wfinddatai64_t*);
+int __cdecl _wfindnext(intptr_t,struct _wfinddata_t*);
+int __cdecl _wfindnexti64(intptr_t, struct _wfinddatai64_t*);
+wchar_t* __cdecl _wmktemp(wchar_t*);
+int __cdecl _wopen(const wchar_t*,int,...);
+int __cdecl _wrename(const wchar_t*,const wchar_t*);
+int __cdecl _wsopen(const wchar_t*,int,int,...);
+int __cdecl _wunlink(const wchar_t*);
+#endif /* _WIO_DEFINED */
+
+#ifndef _WLOCALE_DEFINED
+#define _WLOCALE_DEFINED
+wchar_t* __cdecl _wsetlocale(int,const wchar_t*);
+#endif /* _WLOCALE_DEFINED */
+
+#ifndef _WPROCESS_DEFINED
+#define _WPROCESS_DEFINED
+int __cdecl _wexecl(const wchar_t*,const wchar_t*,...);
+int __cdecl _wexecle(const wchar_t*,const wchar_t*,...);
+int __cdecl _wexeclp(const wchar_t*,const wchar_t*,...);
+int __cdecl _wexeclpe(const wchar_t*,const wchar_t*,...);
+int __cdecl _wexecv(const wchar_t*,const wchar_t* const *);
+int __cdecl _wexecve(const wchar_t*,const wchar_t* const *,const wchar_t* const *);
+int __cdecl _wexecvp(const wchar_t*,const wchar_t* const *);
+int __cdecl _wexecvpe(const wchar_t*,const wchar_t* const *,const wchar_t* const *);
+int __cdecl _wspawnl(int,const wchar_t*,const wchar_t*,...);
+int __cdecl _wspawnle(int,const wchar_t*,const wchar_t*,...);
+int __cdecl _wspawnlp(int,const wchar_t*,const wchar_t*,...);
+int __cdecl _wspawnlpe(int,const wchar_t*,const wchar_t*,...);
+int __cdecl _wspawnv(int,const wchar_t*,const wchar_t* const *);
+int __cdecl _wspawnve(int,const wchar_t*,const wchar_t* const *,const wchar_t* const *);
+int __cdecl _wspawnvp(int,const wchar_t*,const wchar_t* const *);
+int __cdecl _wspawnvpe(int,const wchar_t*,const wchar_t* const *,const wchar_t* const *);
+int __cdecl _wsystem(const wchar_t*);
+#endif /* _WPROCESS_DEFINED */
+
+#ifndef _WSTAT_DEFINED
+#define _WSTAT_DEFINED
+int __cdecl _wstat(const wchar_t*,struct _stat*);
+int __cdecl _wstat32(const wchar_t*, struct _stat32*);
+int __cdecl _wstati64(const wchar_t*,struct _stati64*);
+int __cdecl _wstat64(const wchar_t*,struct _stat64*);
+#endif /* _WSTAT_DEFINED */
+
+#ifndef _WSTDIO_DEFINED
+#define _WSTDIO_DEFINED
+wint_t __cdecl _fgetwchar(void);
+wint_t __cdecl _fputwchar(wint_t);
+wchar_t* __cdecl _getws(wchar_t*);
+int __cdecl _putws(const wchar_t*);
+int __cdecl _snwprintf(wchar_t*,size_t,const wchar_t*,...);
+int __cdecl _snwprintf_s(wchar_t*,size_t,size_t,const wchar_t*,...);
+int __cdecl _vscwprintf(const wchar_t*,__ms_va_list);
+int __cdecl _vscwprintf_p_l(const wchar_t*,_locale_t,__ms_va_list);
+int __cdecl _vsnwprintf(wchar_t*,size_t,const wchar_t*,__ms_va_list);
+int __cdecl _vsnwprintf_s(wchar_t*,size_t,size_t,const wchar_t*,__ms_va_list);
+int __cdecl _vswprintf_p_l(wchar_t*,size_t,const wchar_t*,_locale_t,__ms_va_list);
+FILE* __cdecl _wfdopen(int,const wchar_t*);
+FILE* __cdecl _wfopen(const wchar_t*,const wchar_t*);
+errno_t __cdecl _wfopen_s(FILE**,const wchar_t*,const wchar_t*);
+FILE* __cdecl _wfreopen(const wchar_t*,const wchar_t*,FILE*);
+FILE* __cdecl _wfsopen(const wchar_t*,const wchar_t*,int);
+void __cdecl _wperror(const wchar_t*);
+FILE* __cdecl _wpopen(const wchar_t*,const wchar_t*);
+int __cdecl _wremove(const wchar_t*);
+wchar_t* __cdecl _wtempnam(const wchar_t*,const wchar_t*);
+wchar_t* __cdecl _wtmpnam(wchar_t*);
+
+wint_t __cdecl fgetwc(FILE*);
+wchar_t* __cdecl fgetws(wchar_t*,int,FILE*);
+wint_t __cdecl fputwc(wint_t,FILE*);
+int __cdecl fputws(const wchar_t*,FILE*);
+int __cdecl fwprintf(FILE*,const wchar_t*,...);
+int __cdecl fwprintf_s(FILE*,const wchar_t*,...);
+int __cdecl fputws(const wchar_t*,FILE*);
+int __cdecl fwscanf(FILE*,const wchar_t*,...);
+int __cdecl fwscanf_s(FILE*,const wchar_t*,...);
+wint_t __cdecl getwc(FILE*);
+wint_t __cdecl getwchar(void);
+wchar_t* __cdecl getws(wchar_t*);
+wint_t __cdecl putwc(wint_t,FILE*);
+wint_t __cdecl putwchar(wint_t);
+int __cdecl putws(const wchar_t*);
+int __cdecl swprintf(wchar_t*,const wchar_t*,...);
+int __cdecl swprintf_s(wchar_t*,size_t,const wchar_t*,...);
+int __cdecl swscanf(const wchar_t*,const wchar_t*,...);
+int __cdecl swscanf_s(const wchar_t*,const wchar_t*,...);
+wint_t __cdecl ungetwc(wint_t,FILE*);
+int __cdecl vfwprintf(FILE*,const wchar_t*,__ms_va_list);
+int __cdecl vfwprintf_s(FILE*,const wchar_t*,__ms_va_list);
+int __cdecl vswprintf(wchar_t*,const wchar_t*,__ms_va_list);
+int __cdecl vswprintf_s(wchar_t*,size_t,const wchar_t*,__ms_va_list);
+int __cdecl vwprintf(const wchar_t*,__ms_va_list);
+int __cdecl vwprintf_s(const wchar_t*,__ms_va_list);
+int __cdecl wprintf(const wchar_t*,...);
+int __cdecl wprintf_s(const wchar_t*,...);
+int __cdecl wscanf(const wchar_t*,...);
+int __cdecl wscanf_s(const wchar_t*,...);
+#endif /* _WSTDIO_DEFINED */
+
+#ifndef _WSTDLIB_DEFINED
+#define _WSTDLIB_DEFINED
+wchar_t* __cdecl _itow(int,wchar_t*,int);
+wchar_t* __cdecl _i64tow(__int64,wchar_t*,int);
+wchar_t* __cdecl _ltow(__msvcrt_long,wchar_t*,int);
+wchar_t* __cdecl _ui64tow(unsigned __int64,wchar_t*,int);
+wchar_t* __cdecl _ultow(__msvcrt_ulong,wchar_t*,int);
+wchar_t* __cdecl _wfullpath(wchar_t*,const wchar_t*,size_t);
+wchar_t* __cdecl _wgetenv(const wchar_t*);
+void __cdecl _wmakepath(wchar_t*,const wchar_t*,const wchar_t*,const wchar_t*,const wchar_t*);
+void __cdecl _wperror(const wchar_t*);
+int __cdecl _wputenv(const wchar_t*);
+void __cdecl _wsearchenv(const wchar_t*,const wchar_t*,wchar_t*);
+void __cdecl _wsplitpath(const wchar_t*,wchar_t*,wchar_t*,wchar_t*,wchar_t*);
+errno_t __cdecl _wsplitpath_s(const wchar_t*,wchar_t*,size_t,wchar_t*,size_t,
+ wchar_t*,size_t,wchar_t*,size_t);
+int __cdecl _wsystem(const wchar_t*);
+double __cdecl _wtof(const wchar_t*);
+int __cdecl _wtoi(const wchar_t*);
+__int64 __cdecl _wtoi64(const wchar_t*);
+__msvcrt_long __cdecl _wtol(const wchar_t*);
+
+size_t __cdecl mbstowcs(wchar_t*,const char*,size_t);
+errno_t __cdecl mbstowcs_s(size_t*,wchar_t*,size_t,const char*,size_t);
+int __cdecl mbtowc(wchar_t*,const char*,size_t);
+double __cdecl wcstod(const wchar_t*,wchar_t**);
+__msvcrt_long __cdecl wcstol(const wchar_t*,wchar_t**,int);
+size_t __cdecl wcstombs(char*,const wchar_t*,size_t);
+errno_t __cdecl wcstombs_s(size_t*,char*,size_t,const wchar_t*,size_t);
+__msvcrt_ulong __cdecl wcstoul(const wchar_t*,wchar_t**,int);
+int __cdecl wctomb(char*,wchar_t);
+#endif /* _WSTDLIB_DEFINED */
+
+#ifndef _WSTRING_DEFINED
+#define _WSTRING_DEFINED
+int __cdecl _wcscoll_l(const wchar_t*,const wchar_t*,_locale_t);
+wchar_t* __cdecl _wcsdup(const wchar_t*);
+int __cdecl _wcsicmp(const wchar_t*,const wchar_t*);
+int __cdecl _wcsicoll(const wchar_t*,const wchar_t*);
+int __cdecl _wcsicoll_l(const wchar_t*,const wchar_t*,_locale_t);
+wchar_t* __cdecl _wcslwr(wchar_t*);
+int __cdecl _wcsncoll(const wchar_t*,const wchar_t*,size_t);
+int __cdecl _wcsncoll_l(const wchar_t*,const wchar_t*,size_t,_locale_t);
+int __cdecl _wcsnicmp(const wchar_t*,const wchar_t*,size_t);
+int __cdecl _wcsnicoll(const wchar_t*,const wchar_t*,size_t);
+int __cdecl _wcsnicoll_l(const wchar_t*,const wchar_t*,size_t,_locale_t);
+wchar_t* __cdecl _wcsnset(wchar_t*,wchar_t,size_t);
+wchar_t* __cdecl _wcsrev(wchar_t*);
+wchar_t* __cdecl _wcsset(wchar_t*,wchar_t);
+wchar_t* __cdecl _wcsupr(wchar_t*);
+
+wchar_t* __cdecl wcscat(wchar_t*,const wchar_t*);
+errno_t __cdecl wcscat_s(wchar_t*,size_t,const wchar_t*);
+wchar_t* __cdecl wcschr(const wchar_t*,wchar_t);
+int __cdecl wcscmp(const wchar_t*,const wchar_t*);
+int __cdecl wcscoll(const wchar_t*,const wchar_t*);
+wchar_t* __cdecl wcscpy(wchar_t*,const wchar_t*);
+errno_t __cdecl wcscpy_s(wchar_t*,size_t,const wchar_t*);
+size_t __cdecl wcscspn(const wchar_t*,const wchar_t*);
+size_t __cdecl wcslen(const wchar_t*);
+wchar_t* __cdecl wcsncat(wchar_t*,const wchar_t*,size_t);
+int __cdecl wcsncmp(const wchar_t*,const wchar_t*,size_t);
+wchar_t* __cdecl wcsncpy(wchar_t*,const wchar_t*,size_t);
+errno_t __cdecl wcsncpy_s(wchar_t*,size_t,const wchar_t*,size_t);
+wchar_t* __cdecl wcspbrk(const wchar_t*,const wchar_t*);
+wchar_t* __cdecl wcsrchr(const wchar_t*,wchar_t wcFor);
+size_t __cdecl wcsspn(const wchar_t*,const wchar_t*);
+wchar_t* __cdecl wcsstr(const wchar_t*,const wchar_t*);
+wchar_t* __cdecl wcstok(wchar_t*,const wchar_t*);
+size_t __cdecl wcsxfrm(wchar_t*,const wchar_t*,size_t);
+#endif /* _WSTRING_DEFINED */
+
+#ifndef _WTIME_DEFINED
+#define _WTIME_DEFINED
+
+#ifdef _USE_32BIT_TIME_T
+#define _wctime32 _wctime
+#endif
+
+wchar_t* __cdecl _wasctime(const struct tm*);
+size_t __cdecl wcsftime(wchar_t*,size_t,const wchar_t*,const struct tm*);
+wchar_t* __cdecl _wctime32(const __time32_t*);
+wchar_t* __cdecl _wctime64(const __time64_t*);
+wchar_t* __cdecl _wstrdate(wchar_t*);
+errno_t __cdecl _wstrdate_s(wchar_t*,size_t);
+wchar_t* __cdecl _wstrtime(wchar_t*);
+errno_t __cdecl _wstrtime_s(wchar_t*,size_t);
+
+#ifndef _USE_32BIT_TIME_T
+static inline wchar_t* _wctime(const time_t *t) { return _wctime64(t); }
+#endif
+
+#endif /* _WTIME_DEFINED */
+
+wchar_t __cdecl btowc(int);
+size_t __cdecl mbrlen(const char *,size_t,mbstate_t*);
+size_t __cdecl mbrtowc(wchar_t*,const char*,size_t,mbstate_t*);
+size_t __cdecl mbsrtowcs(wchar_t*,const char**,size_t,mbstate_t*);
+size_t __cdecl wcrtomb(char*,wchar_t,mbstate_t*);
+size_t __cdecl wcsrtombs(char*,const wchar_t**,size_t,mbstate_t*);
+int __cdecl wctob(wint_t);
+
+#ifdef __cplusplus
+}
+#endif
+
+#include <poppack.h>
+
+#endif /* __WINE_WCHAR_H */
diff --git a/src/VBox/Devices/Graphics/shaderlib/wine/include/msvcrt/wctype.h b/src/VBox/Devices/Graphics/shaderlib/wine/include/msvcrt/wctype.h
new file mode 100644
index 00000000..907e6312
--- /dev/null
+++ b/src/VBox/Devices/Graphics/shaderlib/wine/include/msvcrt/wctype.h
@@ -0,0 +1,92 @@
+/*
+ * Unicode definitions
+ *
+ * Copyright 2000 Francois Gouget.
+ *
+ * This library is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU Lesser General Public
+ * License as published by the Free Software Foundation; either
+ * version 2.1 of the License, or (at your option) any later version.
+ *
+ * This library 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 for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this library; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA
+ */
+
+/*
+ * Oracle LGPL Disclaimer: For the avoidance of doubt, except that if any license choice
+ * other than GPL or LGPL is available it will apply instead, Oracle elects to use only
+ * the Lesser General Public License version 2.1 (LGPLv2) at this time for any software where
+ * a choice of LGPL license versions is made available with the language indicating
+ * that LGPLv2 or any later version may be used, or where a choice of which version
+ * of the LGPL is applied is otherwise unspecified.
+ */
+
+#ifndef __WINE_WCTYPE_H
+#define __WINE_WCTYPE_H
+
+#include <crtdefs.h>
+
+#include <pshpack8.h>
+
+/* ASCII char classification table - binary compatible */
+#define _UPPER 0x0001 /* C1_UPPER */
+#define _LOWER 0x0002 /* C1_LOWER */
+#define _DIGIT 0x0004 /* C1_DIGIT */
+#define _SPACE 0x0008 /* C1_SPACE */
+#define _PUNCT 0x0010 /* C1_PUNCT */
+#define _CONTROL 0x0020 /* C1_CNTRL */
+#define _BLANK 0x0040 /* C1_BLANK */
+#define _HEX 0x0080 /* C1_XDIGIT */
+#define _LEADBYTE 0x8000
+#define _ALPHA (0x0100|_UPPER|_LOWER) /* (C1_ALPHA|_UPPER|_LOWER) */
+
+#ifndef WEOF
+#define WEOF (wint_t)(0xFFFF)
+#endif
+
+/* FIXME: there's something to do with __p__pctype and __p__pwctype */
+
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+
+#ifndef _WCTYPE_DEFINED
+#define _WCTYPE_DEFINED
+int __cdecl is_wctype(wint_t,wctype_t);
+int __cdecl isleadbyte(int);
+int __cdecl iswalnum(wint_t);
+int __cdecl iswalpha(wint_t);
+int __cdecl iswascii(wint_t);
+int __cdecl iswcntrl(wint_t);
+int __cdecl iswctype(wint_t,wctype_t);
+int __cdecl iswdigit(wint_t);
+int __cdecl iswgraph(wint_t);
+int __cdecl iswlower(wint_t);
+int __cdecl iswprint(wint_t);
+int __cdecl iswpunct(wint_t);
+int __cdecl iswspace(wint_t);
+int __cdecl iswupper(wint_t);
+int __cdecl iswxdigit(wint_t);
+wchar_t __cdecl towlower(wchar_t);
+wchar_t __cdecl towupper(wchar_t);
+#endif /* _WCTYPE_DEFINED */
+
+typedef wchar_t wctrans_t;
+wint_t __cdecl towctrans(wint_t,wctrans_t);
+wctrans_t __cdecl wctrans(const char *);
+wctype_t __cdecl wctype(const char *);
+
+#ifdef __cplusplus
+}
+#endif
+
+#include <poppack.h>
+
+#endif /* __WINE_WCTYPE_H */