Hadrian

Andrey Mokhov andrey.mokhov at newcastle.ac.uk
Thu Aug 30 11:25:34 UTC 2018


Simon,

If you want to see all command lines, you can pass '--verbose' or '-V' flag to Hadrian and it will then print out everything it does.

But you can also choose which particular command lines to print in UserSettings, see:

https://github.com/snowleopard/hadrian/blob/master/doc/user-settings.md#verbose-command-lines 

So, you can do:

verboseCommand = input "//GHC/Real.hs"

Or, alternatively, 

verboseCommand = output "//GHC/Real.hi"

Both should produce the same result (in theory).

In general, we have the following documents on Hadrian: 

The README: https://github.com/snowleopard/hadrian/blob/master/README.md 
How to use UserSettings: https://github.com/snowleopard/hadrian/blob/master/doc/user-settings.md 
An overview of build flavours: https://github.com/snowleopard/hadrian/blob/master/doc/flavours.md 

I hope the more Hadrian gets used, the more complete the documentation will become.

Cheers,
Andrey

From: Simon Peyton Jones [mailto:simonpj at microsoft.com] 
Sent: 30 August 2018 12:19
To: Simon Peyton Jones <simonpj at microsoft.com>; Alp Mestanogullari <alp at well-typed.com>; Andrey Mokhov <andrey.mokhov at newcastle.ac.uk>
Cc: ghc-devs <ghc-devs at haskell.org>
Subject: RE: Hadrian

Sigh.  As an inconvenient workaround, I tried adding {-# OPTIONS_GHC -dverbose-core2core #-} to GHC.Real, and then doing
        cabal new-run hadrian -- -c -j4 --flavour=quick --directory=".."
in hadrian/
That did recompile GHC.Real - but all the debug output disappeared!
I tried adding {-# OPTIONS_GHC -ddebug-output #-} as well, but that didn't work.
I'm stuck - any ideas?
Simon

From: ghc-devs <ghc-devs-bounces at haskell.org> On Behalf Of Simon Peyton Jones via ghc-devs
Sent: 30 August 2018 12:12
To: Alp Mestanogullari <alp at well-typed.com>; Andrey Mokhov <andrey.mokhov at newcastle.ac.uk>
Cc: ghc-devs <ghc-devs at haskell.org>
Subject: Hadrian

Alp, Andrey
The old build system printed out every command line; and I often copy-paste that info to build single modules.
Eg currently, when trying to understand #15570 I see a suspicious GHC.Real.hi.  So I want to manually recompile GHC.Real (from base), adding some debug flags.  How can I get the right command line to do that from the build log?
Where is the "how to use Hadrian" wiki page?  I know you've been writing one.
Simon


More information about the ghc-devs mailing list