This is the mail archive of the
cygwin-apps
mailing list for the Cygwin project.
Re: [PATCH v1] setup: allow building with i686-w64-mingw32
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
>toolchains.
>
>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.
cgf