[PATCH] eal/windows: fix mingw build
Bruce Richardson
bruce.richardson at intel.com
Wed Nov 22 17:32:28 CET 2023
When compiling with mingw on Ubuntu 23.10, I get the following compiler
error:
../../lib/eal/windows/eal_memory.c:77: error: "MEM_REPLACE_PLACEHOLDER" redefined [-Werror]
77 | #define MEM_REPLACE_PLACEHOLDER 0x00004000
|
In file included from /usr/share/mingw-w64/include/minwindef.h:163,
from /usr/share/mingw-w64/include/windef.h:9,
from /usr/share/mingw-w64/include/windows.h:69,
from ../../lib/eal/windows/include/rte_windows.h:32,
from ../../lib/eal/windows/include/rte_os_shim.h:9,
from ../../lib/eal/common/eal_internal_cfg.h:14,
from ../../lib/eal/windows/eal_memory.c:11:
/usr/share/mingw-w64/include/winnt.h:5710: note: this is the location of the previous definition
5710 | #define MEM_REPLACE_PLACEHOLDER 0x4000
and a similar error for MEM_RESERVE_PLACEHOLDER. These errors can be
fixed by wrapping the two defines in #ifndef .. #endif blocks.
Fixes: 2a5d547a4a9b ("eal/windows: implement basic memory management")
Cc: dmitry.kozliuk at gmail.com
Cc: stable at dpdk.org
Signed-off-by: Bruce Richardson <bruce.richardson at intel.com>
---
lib/eal/windows/eal_memory.c | 5 +++++
1 file changed, 5 insertions(+)
diff --git a/lib/eal/windows/eal_memory.c b/lib/eal/windows/eal_memory.c
index 215d768e2c..64598745de 100644
--- a/lib/eal/windows/eal_memory.c
+++ b/lib/eal/windows/eal_memory.c
@@ -74,8 +74,13 @@ static VirtualAlloc2_type VirtualAlloc2_ptr;
#define MEM_COALESCE_PLACEHOLDERS 0x00000001
#define MEM_PRESERVE_PLACEHOLDER 0x00000002
+
+#ifndef MEM_REPLACE_PLACEHOLDER
#define MEM_REPLACE_PLACEHOLDER 0x00004000
+#endif
+#ifndef MEM_RESERVE_PLACEHOLDER
#define MEM_RESERVE_PLACEHOLDER 0x00040000
+#endif
int
eal_mem_win32api_init(void)
--
2.40.1
More information about the stable
mailing list