From: Eric Biggers <ebiggers@xxxxxxxxxx> To compile for Windows, this file needs MinGW's implementation of alarm(). To expose that definition, some macros must be defined before including the system headers. This was done in Android.bp, but it was not done in the autotools-based build system. Define these macros in the source file itself so that all build systems work. Signed-off-by: Eric Biggers <ebiggers@xxxxxxxxxx> --- misc/Android.bp | 2 -- misc/util.c | 5 +++++ 2 files changed, 5 insertions(+), 2 deletions(-) diff --git a/misc/Android.bp b/misc/Android.bp index 2baeac2ad..2b1620ac6 100644 --- a/misc/Android.bp +++ b/misc/Android.bp @@ -83,8 +83,6 @@ cc_binary { windows: { include_dirs: [ "external/e2fsprogs/include/mingw" ], cflags: [ - "-D_POSIX", - "-D__USE_MINGW_ALARM", // mke2fs.c has a warning from gcc which cannot be suppressed: // passing argument 3 of 'ext2fs_get_device_size' from // incompatible pointer type diff --git a/misc/util.c b/misc/util.c index e84ebab5b..3e83169f1 100644 --- a/misc/util.c +++ b/misc/util.c @@ -16,6 +16,11 @@ #define _LARGEFILE64_SOURCE #endif +#ifdef _WIN32 +#define _POSIX +#define __USE_MINGW_ALARM +#endif + #include "config.h" #include <fcntl.h> #include <setjmp.h> -- 2.39.0