64 bit Cygwin target and _WIN64

Larry Hall (Cygwin Developers) lhall@cygwin.com
Thu Jul 19 15:56:00 GMT 2012

On 7/19/2012 11:07 AM, Corinna Vinschen wrote:
> On Jul 19 10:52, Christopher Faylor wrote:
>> On Thu, Jul 19, 2012 at 10:33:05AM +0200, Corinna Vinschen wrote:
>>> On Jul 18 16:52, Christopher Faylor wrote:
>>>> On Wed, Jul 18, 2012 at 03:11:05PM -0500, Yaakov (Cygwin/X) wrote:
>>>>> BTW, __CYGWIN32__ will still be defined on x64, right?
>>>> Maybe it's time to retire that one.
>>> I would prefer it as well, but I am a bit concerned that there are still
>>> projects using it.  I just googled for __CYGWIN32__ and the third hit
>>> was this one:
>>> http://boinc.berkeley.edu/svn/trunk/boinc/lib/boinc_win.h
>>> I don't know if that's representative, but still...
>> I know that there is stuff that probably uses it but keeping it around
>> for a 64-bit Windows compiler doesn't make any sense.
> Well, _WIN32 is defined on 64 bit windows as well.  If you build an
> application which uses __CYGWIN32__ to decide whether it's built for
> Cygwin, it will be broken when built under 64 bit Cygwin.
> The question is if we deliberately don't define it to enforce using
> __CYGWIN__.  I have no strong opinion, but I'm wondering if it's
> worth the hassle.  It doesn't cost us anything but might help other
> projects along which worked fine the last couple of years.

I'd vote for removing __CYGWIN32__ unless there's a need to keep it.
Having multiple defines available that effectively mean the same thing
makes it confusing to anyone picking this stuff up, either in old code
or working on a new port.  Better to have a minimal set of defines so
it's clear what they are there for.  But that's just my opinion.


More information about the Cygwin-developers mailing list