$(GHC) is always the installed compiler, $(HC) changes depending on
the stage. This has the nice effect that we build stage2/ghc-inplace
using the stage1 compiler, and get to take advantage of bugfixes in
stage1 relative to $(GHC) (in particular I want the non-blocking stdin
fix for stage2, otherwise piping the testsuite output through tee
fails).
echo "main = do args <- getArgs; rawSystem \"$(TOP_ABS)/$(GHC_COMPILER_DIR_REL)/$(GHC_PROG)\" (\"-B$(TOP_ABS)\":args) >>= exitWith" >> $@
$(INPLACE_PROG): $(INPLACE_HS)
- $(GHC) --make $< -o $@
+ $(HC) --make $< -o $@
all :: $(INPLACE_PROG)