Ah, Gintautas!
Since I don't follow Phabricator I didn't even suspect you are making
all this work.
I had a patch to migrate to mingw-w64 gcc 4.8.x (and even 4.9.x, which
requires extra runtime linker support) both for 64-bit and 32-bit for
more than half of the year already. That patch is not such a thorough as
yours is (I didn't bother with downloading the tarball and all that
stuff), but regarding Linker.c I think it is perhaps more systematic
than yours.
Why I didn't exposed it to a broad audience was that I believed there
was not much interest and also because starting at some moment I didn't
bother to maintain several patches per issue and combined them in one
big patch (including some nonportable things) and I didn't want to spend
a time to break it apart to per-issue parts.
During a couple of days I'll extract my patch to Linker.c and put it to
Phabricator then, and also I'll comment on Linker.c issues.
Btw, I wonder what the problem does "#define _MSVCRT_ 1" solve? I didn't
need it at all (I never run validate.sh though).
Cheers,
Kyra
On 10/27/2014 12:54 AM, Gintautas Miliauskas wrote:
The patch to migrate to mingw-w64 / gcc 4.8.3 is finally starting to
look reasonable (Phab:D339 <https://phabricator.haskell.org/D339>). Whew!
The part about downloading the tarball was relatively straightforward,
but the mingw migration has been really tricky, in part due to the gcc
version bump, but mostly, I think, due to use of mingw-w64 on i686 as
well (which is a supported configuration). In particular, "#define
_MSVCRT_ 1" took ages to figure out after digging through heaps of
headers and weird errors. I am not sure I would have signed on if I
had an idea of how much effort this needed... Jeez.
On the bright side, now that we have standartised on mingw-w64,
further gcc version upgrades should be relatively straightforward.
Could people with some experience in Windows matters take a look at
the patch? In particular, rts/Linker.c has been a problem; my fixes
there seem to work but I have no idea if the approach is right (the
whole file does seem like a grabbag of ad-hocness though).
The patch also could use some more testing (both for x86 and for
x86-64). There are still some validate.sh failures (although I am
actually seeing fewer than with the legacy setup), some of which could
probably be fixed easily. Some additional eyes and fingers on
keyboards would be very welcome there.
If you want to experiment with the patch, make sure to also patch in
the related changes listed in the last comment on the Phab page.
--
Gintautas Miliauskas
_______________________________________________
ghc-devs mailing list
[email protected]
http://www.haskell.org/mailman/listinfo/ghc-devs
_______________________________________________
ghc-devs mailing list
[email protected]
http://www.haskell.org/mailman/listinfo/ghc-devs