cmake: Fixes for version check helper programs (Cygwin)

It appears that although CMake no longer defines WIN32 for Cygwin,
the libusb headers may be defining this macro, causing the code intended for
MSVC builds to be used in libusb_version.c and fail to compile. Hence,
we need to explicitly check for __CYGWIN__ in this program. Thank you to
Jeremy Quirke for pointing out this issue and providing fixes.

The libc version check doesn't make sense for Cygwin builds, so it is now
skipped.