Merge branch 'ml/cygwin-mingw-headers'
authorJunio C Hamano <gitster@pobox.com>
Tue, 20 Nov 2012 18:44:29 +0000 (10:44 -0800)
committerJunio C Hamano <gitster@pobox.com>
Tue, 20 Nov 2012 18:44:29 +0000 (10:44 -0800)
Make git compile on cygwin with newer header files.

* ml/cygwin-mingw-headers:
USE CGYWIN_V15_WIN32API as macro to select api for cygwin
Update cygwin.c for new mingw-64 win32 api headers

Makefile
compat/cygwin.c
index ea5c106bb293b4068bdcdfe434fd60f8e76d70bc..9bc5e403650d171f1b5e5a6868fdd66009739b7d 100644 (file)
--- a/Makefile
+++ b/Makefile
@@ -1086,6 +1086,7 @@ ifeq ($(uname_O),Cygwin)
                NO_SYMLINK_HEAD = YesPlease
                NO_IPV6 = YesPlease
                OLD_ICONV = UnfortunatelyYes
+               CYGWIN_V15_WIN32API = YesPlease
        endif
        NO_THREAD_SAFE_PREAD = YesPlease
        NEEDS_LIBICONV = YesPlease
@@ -1897,6 +1898,9 @@ ifdef NO_REGEX
        COMPAT_CFLAGS += -Icompat/regex
        COMPAT_OBJS += compat/regex/regex.o
 endif
+ifdef CYGWIN_V15_WIN32API
+       COMPAT_CFLAGS += -DCYGWIN_V15_WIN32API
+endif
 
 ifdef USE_NED_ALLOCATOR
        COMPAT_CFLAGS += -Icompat/nedmalloc
index dfe9b3084ffbfd6c41a648e32a1857e78b566215..5428858875a20b89411d3662e777586d9d798fab 100644 (file)
@@ -1,6 +1,13 @@
 #define WIN32_LEAN_AND_MEAN
+#ifdef CYGWIN_V15_WIN32API
 #include "../git-compat-util.h"
 #include "win32.h"
+#else
+#include <sys/stat.h>
+#include <sys/errno.h>
+#include "win32.h"
+#include "../git-compat-util.h"
+#endif
 #include "../cache.h" /* to read configuration */
 
 static inline void filetime_to_timespec(const FILETIME *ft, struct timespec *ts)