Per stage headers
The generated headers are now generated per stage, which means we can skip hacks like ghc_boot_platform.h
and just have that be the stage 0 header as proper. In general, stages are to be embraced: freely generate everything in each stage but then just build what you depend on, and everything is symmetrical and efficient. Trying to avoid stages because bootstrapping is a mind bender just creates tons of bespoke mini-mind-benders that add up to something far crazier.
A next step could be making a small cabal package just for those headers with install-includes
. I hope that would lead to more disentangling in make/hadrian.
Another possibile next step is separating the richer RTS/settings configure stuff from GHC.
CC @angerman @snowleopard @alp
-
are either individually buildable or squashed -
have commit messages which describe what they do (referring to Notes and tickets using #NNNN
syntax when appropriate) -
have added source comments describing your change. For larger changes you likely should add a Note and cross-reference it from the relevant places. -
add a testcase to the testsuite. -
if your MR affects library interfaces (e.g. changes base
) please add the ~"user facing" label.
If you have any questions don't hesitate to open your merge request and inquire
in a comment. If your patch isn't quite done yet please do add prefix your MR
title with WIP:
.