
On 2016-01-23 at 14:05:56 +0100, Andrey Mokhov wrote:
Are there any plans as to how to include it in the GHC tree? Does it ship with all the libraries required to build the build system, will we have a mini-build system to bootstrap it? If I recall correctly, we rely on Cabal sandboxes on Linux/OSX and global Cabal library installations on Windows in order to run it.
The simplest way is to add the 'shake-build' folder to the GHC tree and ask first adopters of the new build system to globally install the dependencies (ansi-terminal, mtl, shake, QuickCheck). Then 'build.sh' and 'build.bat' scripts should work.
I am open to suggestions on how to make this more convenient and robust. I've never used anything more advanced than a global cabal installation, so I'd appreciate input from more experienced users.
I think it's already quite convenient. After all, you're expected to have a minimum GHC bootstrapping environment anyway. So having the tools installed (as already do now, e.g. you need alex, happy, and ghc to be able to work on GHC). And the new cabal nix-store feature to show-case as tech-preview together with GHC 8.0 makes this even more robust by avoiding pkg-db breakages due to reinstalls, which would be the main reason not to rely on "global installed dependency". The shake-build.sh script simply needs to invoke `cabal new-build` to generate the ghc shake build-tool executable.