]> git.proxmox.com Git - mirror_edk2.git/blame - Nt32Pkg/Include/Common/WinNTInclude.h
We enabled X64 native version NT32, and made it works on Windows 7 X64 OS.
[mirror_edk2.git] / Nt32Pkg / Include / Common / WinNTInclude.h
CommitLineData
6ae81428 1/**@file\r
45a20a7f 2\r
f66a43b2 3Copyright (c) 2006 - 2013, Intel Corporation. All rights reserved.<BR>\r
8f2a5f80 4This program and the accompanying materials\r
45a20a7f 5are licensed and made available under the terms and conditions of the BSD License\r
6which accompanies this distribution. The full text of the license may be found at\r
7http://opensource.org/licenses/bsd-license.php\r
8\r
9THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,\r
10WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.\r
11\r
12Module Name:\r
13 WinNtLib.h\r
14\r
15Abstract:\r
16 Public include file for the WinNt Library\r
17\r
6ae81428 18**/\r
45a20a7f 19\r
20#ifndef __WIN_NT_INCLUDE_H__\r
21#define __WIN_NT_INCLUDE_H__\r
22\r
23//\r
24// Win32 include files do not compile clean with /W4, so we use the warning\r
25// pragma to suppress the warnings for Win32 only. This way our code can stil\r
26// compile at /W4 (highest warning level) with /WX (warnings cause build\r
27// errors).\r
28//\r
29#pragma warning(disable : 4115)\r
30#pragma warning(disable : 4201)\r
45a20a7f 31#pragma warning(disable : 4028)\r
32#pragma warning(disable : 4133)\r
33\r
34#define GUID _WINNT_DUP_GUID_____\r
35#define _LIST_ENTRY _WINNT_DUP_LIST_ENTRY_FORWARD\r
36#define LIST_ENTRY _WINNT_DUP_LIST_ENTRY\r
f66a43b2 37#if defined (MDE_CPU_IA32)\r
45a20a7f 38#define InterlockedIncrement _WINNT_DUP_InterlockedIncrement\r
39#define InterlockedDecrement _WINNT_DUP_InterlockedDecrement\r
40#define InterlockedCompareExchange64 _WINNT_DUP_InterlockedCompareExchange64\r
f66a43b2 41#endif\r
45a20a7f 42#undef UNALIGNED\r
43#undef CONST\r
44#undef VOID\r
97ccbf27 45#undef DEBUG_EVENT\r
45a20a7f 46\r
5fd5fcd3 47// WQBugBug: This typedef is to make "windows.h" buildable.\r
48// It should be removed after the root cause why\r
49// size_t is undefined when go into the line below is found.\r
f66a43b2 50#if defined (MDE_CPU_IA32)\r
5fd5fcd3 51typedef UINT32 size_t ;\r
f66a43b2 52#endif\r
5fd5fcd3 53\r
45a20a7f 54#include "windows.h"\r
55\r
56#undef GUID\r
57#undef _LIST_ENTRY\r
58#undef LIST_ENTRY\r
59#undef InterlockedIncrement\r
60#undef InterlockedDecrement\r
61#undef InterlockedCompareExchange64\r
62#undef InterlockedCompareExchangePointer\r
781bd432 63#undef CreateEventEx\r
45a20a7f 64\r
65#define VOID void\r
66\r
67//\r
68// Prevent collisions with Windows API name macros that deal with Unicode/Not issues\r
69//\r
70#undef LoadImage\r
71#undef CreateEvent\r
72\r
73//\r
74// Set the warnings back on as the EFI code must be /W4.\r
75//\r
76#pragma warning(default : 4115)\r
77#pragma warning(default : 4201)\r
45a20a7f 78\r
79\r
80#endif\r