[GHC] #15890: Provide a way for hadrian users to always pass some options to hadrian itself

GHC ghc-devs at haskell.org
Tue Nov 13 14:09:39 UTC 2018


#15890: Provide a way for hadrian users to always pass some options to hadrian
itself
-------------------------------------+-------------------------------------
           Reporter:  alpmestan      |             Owner:  (none)
               Type:  feature        |            Status:  new
  request                            |
           Priority:  normal         |         Milestone:  8.8.1
          Component:  Build System   |           Version:  8.7
  (Hadrian)                          |
           Keywords:                 |  Operating System:  Unknown/Multiple
       Architecture:                 |   Type of failure:  None/Unknown
  Unknown/Multiple                   |
          Test Case:                 |        Blocked By:
           Blocking:                 |   Related Tickets:
Differential Rev(s):                 |         Wiki Page:
-------------------------------------+-------------------------------------
 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.)

 Thoughts?

-- 
Ticket URL: <http://ghc.haskell.org/trac/ghc/ticket/15890>
GHC <http://www.haskell.org/ghc/>
The Glasgow Haskell Compiler


More information about the ghc-tickets mailing list