Mitch Capper wrote: > *Gating w/ CYGWIN support* > While I have gone back and tried to gate the changes with proper windows > only checks I generally use #ifdef _WIN32 and I don't know the effect > that would have on other windows systems (ie cygwin). It might mean code > that could work is skipped over on those environments or work arounds are > used when not needed. I am not sure if it is better to use a different > flag or go about it a different way. Some of the fixes are certainly valid > for cygwin, but others (like backslash paths) may not be). I know very > little about cygwin dev and I am not sure what should be gated to avoid > cygwin picking it up. Some things might already be pollyfilled by > mingw/gcc generally I try to use the most advanced implementation for > changes but it is possible they polyfill something better that I didn't > notice. I could try to gate against gcc/mingw but not sure if there is > much benefit to doing so.
Cygwin should be treated like a Unix platform. Windows APIs should not be used except where Cygwin lacks the corresponding Unix APIs. Therefore, generally, compiling with -D_WIN32 on Cygwin is discouraged. But we keep using the idiom #if defined _WIN32 && !defined __CYGWIN__ just to be safe. Bruno