From fa93bb20d72edf9f7635c63d46101edb206d3d6f Mon Sep 17 00:00:00 2001 From: Sebastian Schuberth Date: Wed, 11 Sep 2013 18:02:09 +0200 Subject: [PATCH] MinGW: Fix stat definitions to work with MinGW runtime version 4.0 For an overview of changes in mingwrt-4.0 see: http://sourceforge.net/p/mingw/mingw-org-wsl/ci/4.0.0/tree/NEWS Signed-off-by: Sebastian Schuberth Signed-off-by: Junio C Hamano --- compat/mingw.c | 1 - compat/mingw.h | 9 +++++++++ config.mak.uname | 2 +- 3 files changed, 10 insertions(+), 2 deletions(-) diff --git a/compat/mingw.c b/compat/mingw.c index 22ee9ef1cf..fecb98bcff 100644 --- a/compat/mingw.c +++ b/compat/mingw.c @@ -491,7 +491,6 @@ int mingw_stat(const char *file_name, struct stat *buf) return do_stat_internal(1, file_name, buf); } -#undef fstat int mingw_fstat(int fd, struct stat *buf) { HANDLE fh = (HANDLE)_get_osfhandle(fd); diff --git a/compat/mingw.h b/compat/mingw.h index 3c3a9d925e..19d82de41a 100644 --- a/compat/mingw.h +++ b/compat/mingw.h @@ -271,11 +271,20 @@ static inline int getrlimit(int resource, struct rlimit *rlp) #define lseek _lseeki64 /* use struct stat with 64 bit st_size */ +#ifdef stat +#undef stat +#endif #define stat _stati64 int mingw_lstat(const char *file_name, struct stat *buf); int mingw_stat(const char *file_name, struct stat *buf); int mingw_fstat(int fd, struct stat *buf); +#ifdef fstat +#undef fstat +#endif #define fstat mingw_fstat +#ifdef lstat +#undef lstat +#endif #define lstat mingw_lstat #ifndef _stati64 diff --git a/config.mak.uname b/config.mak.uname index 781dee4db7..82d549e48b 100644 --- a/config.mak.uname +++ b/config.mak.uname @@ -500,7 +500,7 @@ ifneq (,$(findstring MINGW,$(uname_S))) NO_INET_NTOP = YesPlease NO_POSIX_GOODIES = UnfortunatelyYes DEFAULT_HELP_FORMAT = html - COMPAT_CFLAGS += -D__USE_MINGW_ACCESS -DNOGDI -Icompat -Icompat/win32 + COMPAT_CFLAGS += -D__USE_MINGW_ACCESS -D_USE_32BIT_TIME_T -DNOGDI -Icompat -Icompat/win32 COMPAT_CFLAGS += -DSTRIP_EXTENSION=\".exe\" COMPAT_OBJS += compat/mingw.o compat/winansi.o \ compat/win32/pthread.o compat/win32/syslog.o \ -- 2.11.4.GIT