From: Junio C Hamano Date: Sat, 26 Jan 2013 00:11:46 GMT Subject: Re: Version 1.8.1 does not compile on Cygwin 1.7.14 Message-ID: <7v38xo3irh.fsf@alter.siamese.dyndns.org> In-Reply-To: <51031C43.5030307@gmail.com> Mark Levedahl writes: > Cygwin and Windows should be treated as completely separate platforms: > if __CYGWIN__ is defined, do one thing, if not, go ahead and check > WIN32, but the WIN32 macro should never be tested once we know the > platform is CYGWIN - these really are different platforms (if you are > unsure of this, consider that Cygwin includes a cross-compiler to > target native Win32 as the Cygwin maintainers recognized the platforms > are different). Not disagreeing with your conclusion (they should be treated as different), why does it define WIN32 in the first place? Perhaps we would want #ifdef __CYGWIN__ #undef WIN32 #endif very early in some include file before nothing else is included? Just being curious.