Re: What's cooking in git.git (Nov 2012, #03; Tue, 13)
From: Torsten Bögershausen <hidden>
Date: 2016-06-15 22:55:17
On 14.11.12 20:02, Jeff King wrote:
On Tue, Nov 13, 2012 at 08:18:53PM -0500, Mark Levedahl wrote:quoted
On 11/13/2012 03:45 PM, Torsten Bögershausen wrote:quoted
quoted
* ml/cygwin-mingw-headers (2012-11-12) 1 commit - Update cygwin.c for new mingw-64 win32 api headers Make git work on newer cygwin. Will merge to 'next'.(Sorry for late answer, I managed to test the original patch minutes before Peff merged it to pu) (And thanks for maintaining git) Is everybody using cygwin happy with this? I managed to compile on a fresh installed cygwin, but failed to compile under 1.7.7, see below. Is there a way we can achieve to compile git both under "old" and "new" cygwin 1.7 ? Or is this not worth the effort?I found no version info defined that could be used to automatically switch between the old and current headers. You can always make V15_MINGW_HEADERS=1 ... to force using the old set if you do not wish to update your installation.Should we keep the code change, then, but not flip the default (i.e., make people on the newer version opt into it)? I am not clear on how common the newer include system is. Of course, auto-detecting would be the ideal. -Peff
There are a couple of things which we may want consider: a) the name V15_MINGW_HEADERS: It indicates that this is true for Version 1.5 (of what?) If I assume Cygwin version 1.5 , then this name is confusing. Even cygwin versions like 1.7.7 use the same (or similar) include files as 1.5 A better name could be CYGWIN_USE_MINGW_HEADERS (or the like) and to revert the logic. b) Autodetection: (Just loud thinking), running $grep mingw /usr/include/w32api/winsock2.h * This file is part of the mingw-w64 runtime package. #include <_mingw_unicode.h> on cygwin 1.7.17 indicates that we can use grep in the Makefile to autodetect the "mingw headers" Something like this in Makefile: +ifeq ($(shell grep mingw /usr/include/w32api/winsock2.h />/dev/null 2>/dev/null && echo y),y) + CYGWIN_USE_MINGW_HEADERS=YesPlease +endif c) I'm not sure if we want to change cygwin.c or git-compat-util.h for this. I can prepare a proper patch within the next couple of days /Torsten