> How do I "pass --verbose to Hadrian"?

Like this:

cabal new-run hadrian -- -c -j4 --flavour=quick --directory=".." -V

Everything after "--" in this command line are flags passed to Hadrian. 
Everything before are flags passed to Cabal. (I hope we'll fix the "build.sh" 
script for you soon, so you don't need to go via Cabal.)

I just tried this with {-# OPTIONS_GHC -dverbose-core2core #-} and this did 
also print out a lot of Core. And a lot more stuff (somehow this seems to cause 
further recompilation).


> https://ghc.haskell.org/trac/ghc/wiki/Building/Hadrian/QuickStart

Artem -- thanks! I forgot to mention this wiki page, which indeed looks 


Cheers,
Andrey

-----Original Message-----
From: Simon Peyton Jones [mailto:simo...@microsoft.com] 
Sent: 30 August 2018 13:00
To: Andrey Mokhov <andrey.mok...@newcastle.ac.uk>; Alp Mestanogullari 
<a...@well-typed.com>
Cc: ghc-devs <ghc-devs@haskell.org>
Subject: RE: Hadrian

|  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 I am not invoking Hadrian.  I am saying (on your instructions)

        cabal new-run hadrian -- -c -j4 --flavour=quick --directory=".."

How do I "pass --verbose to Hadrian"?


|  -----Original Message-----
|  From: Andrey Mokhov <andrey.mok...@newcastle.ac.uk>
|  Sent: 30 August 2018 12:26
|  To: Simon Peyton Jones <simo...@microsoft.com>; Alp Mestanogullari
|  <a...@well-typed.com>
|  Cc: ghc-devs <ghc-devs@haskell.org>
|  Subject: RE: Hadrian
|  
|  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://na01.safelinks.protection.outlook.com/?url=https%3A%2F%2Fgithub.c
|  om%2Fsnowleopard%2Fhadrian%2Fblob%2Fmaster%2Fdoc%2Fuser-
|  settings.md%23verbose-command-
|  lines&amp;data=02%7C01%7Csimonpj%40microsoft.com%7C0c6118a504f74269efd508
|  d60e6b4fe7%7C72f988bf86f141af91ab2d7cd011db47%7C1%7C0%7C63671225140342623
|  1&amp;sdata=tMYhmIGMeVbBYjAtxWQTY5%2F4Kyfc4m981N4OTowGkbQ%3D&amp;reserved
|  =0
|  
|  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://na01.safelinks.protection.outlook.com/?url=https%3A%2F%2Fgithub.c
|  om%2Fsnowleopard%2Fhadrian%2Fblob%2Fmaster%2FREADME.md&amp;data=02%7C01%7
|  Csimonpj%40microsoft.com%7C0c6118a504f74269efd508d60e6b4fe7%7C72f988bf86f
|  141af91ab2d7cd011db47%7C1%7C0%7C636712251403426231&amp;sdata=7WigmQG7lbDd
|  eyhYCSaKOQEb0eeZcn0iXAbAKdwZ5A4%3D&amp;reserved=0
|  How to use UserSettings:
|  https://na01.safelinks.protection.outlook.com/?url=https%3A%2F%2Fgithub.c
|  om%2Fsnowleopard%2Fhadrian%2Fblob%2Fmaster%2Fdoc%2Fuser-
|  settings.md&amp;data=02%7C01%7Csimonpj%40microsoft.com%7C0c6118a504f74269
|  efd508d60e6b4fe7%7C72f988bf86f141af91ab2d7cd011db47%7C1%7C0%7C63671225140
|  3426231&amp;sdata=tRu2lO%2F6TNV3ao5tzNKO%2FAHJMWsxKX%2BqExHn78nuCvU%3D&am
|  p;reserved=0
|  An overview of build flavours:
|  https://na01.safelinks.protection.outlook.com/?url=https%3A%2F%2Fgithub.c
|  om%2Fsnowleopard%2Fhadrian%2Fblob%2Fmaster%2Fdoc%2Fflavours.md&amp;data=0
|  2%7C01%7Csimonpj%40microsoft.com%7C0c6118a504f74269efd508d60e6b4fe7%7C72f
|  988bf86f141af91ab2d7cd011db47%7C1%7C0%7C636712251403426231&amp;sdata=Esye
|  DdAKLV9DC3PUwkqsuQ4zGoOYKcaJeEov1BAH8lU%3D&amp;reserved=0
|  
|  I hope the more Hadrian gets used, the more complete the documentation
|  will become.
|  
|  Cheers,
|  Andrey
|  
|  From: Simon Peyton Jones [mailto:simo...@microsoft.com]
|  Sent: 30 August 2018 12:19
|  To: Simon Peyton Jones <simo...@microsoft.com>; Alp Mestanogullari
|  <a...@well-typed.com>; Andrey Mokhov <andrey.mok...@newcastle.ac.uk>
|  Cc: ghc-devs <ghc-devs@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-boun...@haskell.org> On Behalf Of Simon Peyton
|  Jones via ghc-devs
|  Sent: 30 August 2018 12:12
|  To: Alp Mestanogullari <a...@well-typed.com>; Andrey Mokhov
|  <andrey.mok...@newcastle.ac.uk>
|  Cc: ghc-devs <ghc-devs@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
_______________________________________________
ghc-devs mailing list
ghc-devs@haskell.org
http://mail.haskell.org/cgi-bin/mailman/listinfo/ghc-devs

Reply via email to