]> git.proxmox.com Git - mirror_edk2.git/blame - EmulatorPkg/Win/Host/WinInclude.h
CryptoPkg/BaseCryptLib: Make HMAC_CTX size backward compatible
[mirror_edk2.git] / EmulatorPkg / Win / Host / WinInclude.h
CommitLineData
3c859dfe
RN
1/**@file\r
2 Public include file for the WinNt Library\r
3\r
4Copyright (c) 2006 - 2014, Intel Corporation. All rights reserved.<BR>\r
e3ba31da 5SPDX-License-Identifier: BSD-2-Clause-Patent\r
3c859dfe
RN
6**/\r
7\r
8#ifndef __WIN_NT_INCLUDE_H__\r
9#define __WIN_NT_INCLUDE_H__\r
10\r
11//\r
12// Win32 include files do not compile clean with /W4, so we use the warning\r
13// pragma to suppress the warnings for Win32 only. This way our code can stil\r
14// compile at /W4 (highest warning level) with /WX (warnings cause build\r
15// errors).\r
16//\r
17#pragma warning(disable : 4115)\r
18#pragma warning(disable : 4201)\r
19#pragma warning(disable : 4028)\r
20#pragma warning(disable : 4133)\r
21\r
22#define GUID _WINNT_DUP_GUID_____\r
23#define _LIST_ENTRY _WINNT_DUP_LIST_ENTRY_FORWARD\r
24#define LIST_ENTRY _WINNT_DUP_LIST_ENTRY\r
25#if defined (MDE_CPU_IA32) && (_MSC_VER < 1800)\r
26#define InterlockedIncrement _WINNT_DUP_InterlockedIncrement\r
27#define InterlockedDecrement _WINNT_DUP_InterlockedDecrement\r
28#define InterlockedCompareExchange64 _WINNT_DUP_InterlockedCompareExchange64\r
29#endif\r
30#undef UNALIGNED\r
31#undef CONST\r
32#undef VOID\r
33#undef DEBUG_EVENT\r
34\r
35// WQBugBug: This typedef is to make "windows.h" buildable.\r
36// It should be removed after the root cause why\r
37// size_t is undefined when go into the line below is found.\r
38#if defined (MDE_CPU_IA32)\r
39typedef UINT32 size_t ;\r
40#endif\r
41\r
42#include "windows.h"\r
43\r
44#undef GUID\r
45#undef _LIST_ENTRY\r
46#undef LIST_ENTRY\r
47#undef InterlockedIncrement\r
48#undef InterlockedDecrement\r
49#undef InterlockedCompareExchange64\r
50#undef InterlockedCompareExchangePointer\r
51#undef CreateEventEx\r
52\r
53#define VOID void\r
54\r
55//\r
56// Prevent collisions with Windows API name macros that deal with Unicode/Not issues\r
57//\r
58#undef LoadImage\r
59#undef CreateEvent\r
60#undef FAR\r
61\r
62//\r
63// Set the warnings back on as the EFI code must be /W4.\r
64//\r
65#pragma warning(default : 4115)\r
66#pragma warning(default : 4201)\r
67\r
68\r
69#endif\r