|Version 119 (modified by thoughtpolice, 3 months ago) (diff)|
Release plans for GHC 7.8
Note that anything not listed here is off Austin's radar.
Things to do
- Builds cleanly
- validate runs OK
- The compiler can bootstrap itself and the testsuite is the same.
|Linux (i386)||Linux (x86_64)||OS X 10.7 (x86_64)||OS X 10.8 (x86_64)||OS X 10.9 (x86_64)||Windows i386||Windows x86_64|
|validate||In progress||OK||OK||OK||NOT OK||OK||OK|
|bootstrap||In progress||OK||OK||OK||OK||OK||In progress|
-  The testsuite performance numbers need to be updated for 32 bit platforms.
-  Mavericks was tested using Clang, and there are some make fast failures (mostly minor driver related things, but not critical.)
-  Austin is hitting a validation error while building xhtml, which might be due to some interaction with the new Haddock. Otherwise, the compiler builds fine and the testsuite works.
-  Some of Herbert's latest patches to integer-gmp seem to have broke the 64bit build and need to be re-investigated, but once reverted the build goes smoothly.
The Dynamic Story
The dynamic story is complex. Here's the breakdown:
|Linux (i386)||Linux (x86_64)||FreeBSD||OS X 10.7 (x86_64)||OS X 10.8 (x86_64)||OS X 10.9 (x86_64)||Windows i386||Windows x86_64|
-  Dynamic GHCi is disabled due to a bug in FreeBSD's rtld, but we're waiting for it to make it into a release.
- Dynamic GHCi:
- YES: ghci uses the system linker to link .so or .dll dynamic libraries, to avoid linker bugs. This is controlled by DYNAMIC_GHC_PROGRAMS=YES.
- NO: ghci uses GHC's hand-written linker to link .o files.
- -dynamic: makes GHC produce .so/.dll files rather than .o files.
- -dynamic-too: strictly an optimization, -dynamic-too allows the compiler to build static and dynamic object files at once. This is convenient for Dynamic GHCi support.
The Windows Conundrum
- Windows is a bit difficult right now.
- Good news: 64bit builds work using the fancy new MSYS2 environment with a few (~6) failures!
- Bad news: 32bit builds work well using the old environment
- Austin confirmed the latest HEAD worked in the old 32bit environment, but not the msys2 one: the ghc-stage2.exe segfaults, and Austin hasn't tracked down why.
- Obvious theory: msys2 environment is incorrectly configured somewhere
- On the upside, 32bit in the old environment seems quite stable (~3 test failures,) even if make is a bit nutty.
- It seems -dynamic is busted, as well as -dynamic-too
- Consequently, GHCi can't be dynamically linked.
- We're punting all three of them for the RC.
- This leaves GHC in the same place it was before essentially (but 64bit is in a difficult spot, see #7134)
- Austin Seipp needs to upload the primops compatibility package for 7.8. This is is easy: mostly a copy of compiler/utils/ExtsCompat64.hs into a Cabal package. See also the compatibility module page.