Build settings with make/Hadrian rather than configure
This blocks to !655 (merged), which is the first step towards #16503 (closed).
To be clear it's unclear whether this is actually needed to get rid of Config.hs and just use settings, but given that Config.hs references paths built by make, I think this is the more natural way to do things ensuring that the proper dependencies exist. Put another, I think 1) get rid of compile-time configuration state (i.e. settings is runtime wrt to the GHC that uses it.) 2) once the configuration state is reduced, figure out how things really ought to work.
I'm mainly opening this separately from !655 (merged) so as to get some CI results that what's done so far works. It makes perfect sense to just merge !655 (merged) containing this as only then will settings be depending on make/Hadrian-only state.
Please take a few moments to verify that your commits fulfill the following:
-
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. -
replace this message with a description motivating your change
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:
.