Planning for the 7.12 release
Simon Peyton Jones
simonpj at microsoft.com
Fri Aug 28 12:24:05 UTC 2015
| If this is intended to be an immediate wholesale switch to Shake I
| would be very skeptical of merging for 7.12 as three months is, in my
| opinion, very little time to test such a sweeping change.
No there is no chance that we switch over to Shake for 7.12. At the moment it's nowhere near ready for prime time.
But I do hope that we'll have material progress on a side-by-side build system before 7.12 comes out. It probably won't do everything but it should do some things well. I hope.
Simon
|
| However, a long transition time is also not terribly desirable as
| maintaining two largely independent build systems potentially carries
| significant cost.
|
| Can we in principle expect the Shake build system to build all of the
| configurations GHC currently supports from day-one (including, for
| instance, cross compilation)? The batch files in the repository
| suggest that it has been used on Windows but has it been tested on our
| other Tier 1 platforms?
|
| I just attempted to use the current state of the repository and sadly
| found that things fell apart pretty quickly [1].
|
| I would love to see this happen, but obviously we need to tread
| carefully when performing such a major overhaul to code so central to
| the project. Moreover, I would really like to minimize the probability
| that we increase the maintenance burden of our build infrastructure.
|
| I think if there is clear communication regarding what remains to be
| done and motivation to quickly finish these items then Shakification
| is still an possibility for 7.12.
|
| Otherwise I personally think we may want to be a bit conservative. End
| users can always check out the shaking-up-ghc repository into their
| GHC trees themselves if they want to try using it. I'm certainly
| willing to consider other opinions, however.
|
| Cheers,
|
| - Ben
|
|
| [1] After I manually ran ./boot,
|
| $ _shake/build --lint --directory ".." $@
| ... # various output from ./configure
| Reading shake/cfg/system.config...
| Reading package dependencies...
| Error when running Shake build system:
| * OracleQ (PackageDataKey ("libraries/bin-package-db/dist-
| boot/package-data.mk","libraries_bin-package-db_dist-boot_LIB_NAME"))
| * libraries/bin-package-db/dist-boot/package-data.mk
| * libraries/bin-package-db/dist-boot/package-data.mk
| libraries/bin-package-db/dist-boot/haddock-prologue.txt libraries/bin-
| package-db/dist-boot/inplace-pkg-config libraries/bin-package-db/dist-
| boot/setup-config libraries/bin-package-db/dist-
| boot/build/autogen/cabal_macros.h
| * libraries/binary/dist-boot/package-data.mk
| * libraries/binary/dist-boot/package-data.mk
| libraries/binary/dist-boot/haddock-prologue.txt libraries/binary/dist-
| boot/inplace-pkg-config libraries/binary/dist-boot/setup-config
| libraries/binary/dist-boot/build/autogen/cabal_macros.h
| * /mnt/work/ghc/ghc-shake/inplace/bin/ghc-cabal
| Error, file does not exist and no rule available:
| /mnt/work/ghc/ghc-shake/inplace/bin/ghc-cabal
More information about the ghc-devs
mailing list