[PATCH v1] setup: allow building with i686-w64-mingw32

Christopher Faylor cgf-use-the-mailinglist-please@cygwin.com
Sun Jun 3 15:03:00 GMT 2012

On Sun, Jun 03, 2012 at 09:19:29AM -0500, Yaakov (Cygwin/X) wrote:
>On 2012-06-01 02:45, Yaakov (Cygwin/X) wrote:
>> Fedora has switched from the i686-pc-mingw32 toolchain to the
>> {i686,x86_64}-w64-mingw32 toolchains in F17. This means that setup
>> cannot currently be built on F17.
>The attached draft patches for setup and mingw64-headers (r4913) allow 
>setup to be built cleanly and work correctly (AFAICS) with both i686 
>The code also compiles cleanly on x86_64-w64-mingw32 but needs some 
>additional LIBS as I circumvented autoload.c, which is clearly 32-bit 
>specific and should be unnecessary on 64-bit Windows (being new enough 
>to have all these functions).  This probably needs further functional 
>changes and probably isn't useful until we have a 64-bit Cygwin, but it 
>did expose some type incompatibilities.
>These are NOT ready to commit right now; they are being posted to help 
>collaboration with mingw-w64 to make this work.

I didn't look at this in great detail but it seems like you are using
random styles for coercion, i.e., sometimes:

(unsigned int)foo

and others:

(int) foo.

(and since unsigned implies int there is no reason for unsigned int).

Also you seem to have added a new conditional for #ifndef __CYGWIN__.
I'm not sure what there is about this toolchain which requires that but
we shouldn't be adding new code which conditionalizes using __CYGWIN__.
I've just checked in a change which gets rid of the last vestige of
__CYGWIN__ in the source code.


More information about the Cygwin-apps mailing list