From f4840adf3d6ff539241e2db3548b96a96585b138 Mon Sep 17 00:00:00 2001 From: liquidaty Date: Thu, 8 Sep 2022 09:59:37 -0700 Subject: [PATCH] fix to enable successful build with mingw64 --- src/util/alloc.cpp | 14 +++++++++++++- 1 file changed, 13 insertions(+), 1 deletion(-) diff --git a/src/util/alloc.cpp b/src/util/alloc.cpp index f3a2a259..40004932 100644 --- a/src/util/alloc.cpp +++ b/src/util/alloc.cpp @@ -47,7 +47,15 @@ namespace ue2 { #endif /* get us a posix_memalign from somewhere */ -#if !defined(HAVE_POSIX_MEMALIGN) +#if defined(__MINGW32__) || defined(__MINGW64__) + #include + #include + #include + #include + + #define posix_memalign(A, B, C) ((*A = (void *)__mingw_aligned_malloc(C, B)) == nullptr) + +#elif !defined(HAVE_POSIX_MEMALIGN) # if defined(HAVE_MEMALIGN) #define posix_memalign(A, B, C) ((*A = (void *)memalign(B, C)) == nullptr) # elif defined(HAVE__ALIGNED_MALLOC) @@ -77,7 +85,11 @@ void aligned_free_internal(void *ptr) { return; } +#if defined(__MINGW32__) || defined(__MINGW64__) + __mingw_aligned_free(ptr); +#else free(ptr); +#endif } /** \brief 64-byte aligned, zeroed malloc.