snowleopard / hadrian

Hadrian: a new build system for the Glasgow Haskell Compiler. Now merged into the GHC tree!
https://gitlab.haskell.org/ghc/ghc/tree/master/hadrian
MIT License
208 stars 39 forks source link

Build with --quickest didn't produce stage1/touchy #653

Closed ndmitchell closed 5 years ago

ndmitchell commented 5 years ago

I built with hadrian\build.bat -j --flavour=quickest --configure. I then tried to start ghci and got:

GHCi, version 8.7.20180808: http://www.haskell.org/ghc/  :? for help
package flags have changed, resetting and loading new packages...
Loaded GHCi configuration from ./utils/ghc-in-ghci/settings.ghci
[  8 of 493] Compiling Fingerprint      ( _build\stage1\compiler\build\Fingerprint.hs, .ghci-objects\Fingerprint.o )
[  9 of 493] Compiling Config           ( _build\stage1\compiler\build\Config.hs, .ghci-objects\Config.o )
[ 10 of 493] Compiling Constants        ( compiler\main\Constants.hs, .ghci-objects\Constants.o )
[ 11 of 493] Compiling Ar               ( compiler\main\Ar.hs, .ghci-objects\Ar.o )
[ 12 of 493] Compiling Hooks[boot]      ( compiler\main\Hooks.hs-boot, .ghci-objects\Hooks.o-boot )
ghc.exe: could not execute: C:\Neil\ghc\sep2018\ghc\_build\stage1\lib/bin/touchy.exe
Loaded GHCi configuration from ./utils/ghc-in-ghci/load-main.ghci

I copied touchy from stage0 to stage1 and it worked. Does Hadrian ever build touchy in stage1? Should it do so in quickest?

snowleopard commented 5 years ago

Aha, I didn't realise we need both binaries. We can surely build both, it should be a simple change in GHC/GHC.Packages.

There is also this issue: https://github.com/snowleopard/hadrian/issues/595. Do we need to build unlit twice too? If yes, we should close it.

snowleopard commented 5 years ago

Fixed in #659.