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: RFC: Cygwin 64 bit?


Hi Jon,

On Jun 27 11:08, JonY wrote:
> Yes, using only the win32api headers is possible, see the --disable-crt
> option in the mingw-w64-headers configure. The headers are very much
> LLP64 though.
> 
> Though mingw-w64-crt doesn't have this facility yet, it is possible to
> use only dlltool to build the stub w32api equivalent link libraries for
> win64 linking, but without mingw bits like libmingwex.
> [...]
> The hairy parts would be the LP64/LLP64 ABI difference. For now we need
> to decide which ABI to go with, the rest of the work will rest on this
> decision.

Here's a question to warm up this age-old thread.

Consider we would like to have Cygwin-64 being LP64, and consider we
would like to use the mingw64 headers and libs to build Cygwin.

In that case, all mingw64 headers have a problem in conjunction with
a Cygwin 64 bit compiler:  All definitions in the headers which are
based on 'long' or 'unsigned long' are wrong.  All of them would have
to use 'int' or 'unsigned int' instead.

So, here's my question:  Would it be acceptable upstream to add changes
along the lines of this one, for instance, in winnt.h:

  #if defined (__CYGWIN__) && defined (__x86_64__)
    typedef int LONG;
  #else
    typedef long LONG;
  #endif

?


Corinna

-- 
Corinna Vinschen                  Please, send mails regarding Cygwin to
Cygwin Project Co-Leader          cygwin AT cygwin DOT com
Red Hat


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