This is the mail archive of the cygwin-developers mailing list for the Cygwin project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: 64 bit Cygwin target and _WIN64


On Thu, Jul 19, 2012 at 11:55:45AM -0400, Larry Hall (Cygwin Developers) wrote:
>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.

Yeah.  It's a legacy define.  At some point you have to get rid of the
legacy cruft.  If you don't then it isn't really legacy at all.

cgf


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]