Build order causes errors when booting from HC files
When booting from HC files using
./distrib/hc-build --enable-hc-boot-unregisterised, compilation fails when linking the stage-1 compiler. The linker prints the message
/usr/bin/ld: cannot find -lghccompat. This happens because the library (in ghc/lib) has not been built.
In ghc/Makefile, the order in which subdirectories are compiled is set specially when booting from HC files:
ifeq "$(BootingFromHc)" "YES" SUBDIRS = includes rts docs compiler lib utils driver else # assign SUBDIRS = something else
A solution is to change the order to:
includes rts docs lib compiler utils driver.