I was about to ask the same question. MinGW is already the lightweight alternative to Cygwin, and has largely taken over for the task of compiling unixy things on Windows.
The major difference between MinGW and Cygwin is MinGW tries to use native Microsoft libs by dummy wrapping them (like, MS's libc is often compatible with POSIX standard stuff, the POSIX version merely starts with _ frequently, MinGW uses this fact).
Most stuff that won't compile "natively" on Windows through Visual C's compiler, those projects use MinGW, I never hear of anyone using Cygwin especially because of the requirement of shipping the Cygwin runtime dll (of which MinGW has none).
Even Strawberry Perl, the Perl distro for Windows, uses MinGW to compile XS perl modules from CPAN.
The major difference between MinGW and Cygwin is MinGW tries to use native Microsoft libs by dummy wrapping them (like, MS's libc is often compatible with POSIX standard stuff, the POSIX version merely starts with _ frequently, MinGW uses this fact).
Most stuff that won't compile "natively" on Windows through Visual C's compiler, those projects use MinGW, I never hear of anyone using Cygwin especially because of the requirement of shipping the Cygwin runtime dll (of which MinGW has none).
Even Strawberry Perl, the Perl distro for Windows, uses MinGW to compile XS perl modules from CPAN.