Provide a way for hadrian users to always pass some options to hadrian itself
And more generally, is there any chance that we could make something like our builder
Args/predicate logic work for specifying arguments to hadrian itself?
Regardless of the answer to that last question, it seems only natural to have a simple/trivial solution for the case where we are always passing the same options to hadrian, over and over again, while working on GHC. "Yes, hadrian, I still want to build with the
perf flavour, still with
integer-simple, and you should still put all the build artifacts under
./ghc-prof-build/ while using all of my 4 cores", is something that I often told hadrian myself, while investigating a particular problem a few weeks ago, for example.
Ryan in particular has expressed interested in having a slightly cleaner solution than writing a tiny wrapper script that just does
hadrian/build.sh --flavour=perf -oghc-prof-build $@ or something along those lines. Especially given that our
Args infrastructure seems perfect to specify that kind of thing. It does seem a little bit circular though, of course.
An alternative would be look at a build.mk-ish file, without support for any Make construct, just the good old key=value syntax + comments, and reconstruct a
Flavour and everything else out of it. This way, instead of "implicitly" passing the same arguments on the CLI, we would "implicitly" look them up from some file, without having to create a wrapper script.
(This build.mk-ish file is something I discussed with hvr some time ago, which he would like so as to programmatically specify how he wants his GHCs. He can't reasonably programmatically edit the settings file.)
|Component||Build System (Hadrian)|