Hadrian

Alp Mestanogullari alp at well-typed.com
Wed Jan 9 11:54:46 UTC 2019


The patch is up on Gitlab: 
https://gitlab.haskell.org/ghc/ghc/merge_requests/96

On 09/01/2019 12:28, Alp Mestanogullari wrote:
>
> Sure thing, I'll push a patch today.
>
> On 09/01/2019 12:24, Simon Peyton Jones wrote:
>>
>> A quick note about that 'make.md' document: it's meant as a quick 
>> reference/cheatsheet (hence the _very_ lightweight format) for people 
>> familiar with the make build system. Hadrian's README [1] is a better 
>> place to start from in general
>>
>> OK super: can you say that at the start of 
>> https://gitlab.haskell.org/ghc/ghc/blob/master/hadrian/doc/make.md?
>>
>> And point to 
>> https://gitlab.haskell.org/ghc/ghc/blob/master/hadrian/doc/make.md 
>> from the more comprehensive page.
>>
>> So in the end they both refer to each other
>>
>> S
>>
>> *From:*Alp Mestanogullari <alp at well-typed.com>
>> *Sent:* 09 January 2019 11:10
>> *To:* Simon Peyton Jones <simonpj at microsoft.com>
>> *Cc:* ghc-devs <ghc-devs at haskell.org>
>> *Subject:* Re: Hadrian
>>
>> Hello,
>>
>> A quick note about that 'make.md' document: it's meant as a quick 
>> reference/cheatsheet (hence the _very_ lightweight format) for people 
>> familiar with the make build system. Hadrian's README [1] is a better 
>> place to start from in general and in fact answers or points to 
>> documents that answer some of your questions. I would perhaps 
>> recommend that you (and others) wander through that document and any 
>> other doc that seems relevant to your interests/workflow (e.g 
>> testsuite.md, user-settings.md in your case)
>>
>> Hadrian is however currently lacking some knobs that are needed to 
>> support some of the things you're asking about. None of this implies 
>> a lot of work and they're all on my TODO. I will certainly make sure 
>> to post an update once this is taken care of, in addition to 
>> augmenting the relevant documents of course. For instance, we don't 
>> have a 'validate' rule at the moment, but we've now got all the 
>> pieces we need to write it.
>>
>> Once I get around to adding those knobs, I'll make sure that all your 
>> questions are answered in the documentation.
>>
>> Thanks for your initial feedback on this document!
>>
>> [1] https://gitlab.haskell.org/ghc/ghc/blob/master/hadrian/README.md 
>> <https://nam06.safelinks.protection.outlook.com/?url=https%3A%2F%2Fgitlab.haskell.org%2Fghc%2Fghc%2Fblob%2Fmaster%2Fhadrian%2FREADME.md&data=02%7C01%7Csimonpj%40microsoft.com%7C3025665679274a8486c808d676230b41%7C72f988bf86f141af91ab2d7cd011db47%7C1%7C0%7C636826290225890158&sdata=3ujKmq%2Ftj20oEEsTswgP2DRkXJ5bLHFSfGiMmBQKmZo%3D&reserved=0>
>>
>> On 08/01/2019 17:29, Simon Peyton Jones wrote:
>>
>>     Alp
>>
>>     You’ve written a helpful wiki page describing how to use Hadrian
>>
>>     https://gitlab.haskell.org/ghc/ghc/blob/master/hadrian/doc/make.md
>>     <https://nam06.safelinks.protection.outlook.com/?url=https%3A%2F%2Fgitlab.haskell.org%2Fghc%2Fghc%2Fblob%2Fmaster%2Fhadrian%2Fdoc%2Fmake.md&data=02%7C01%7Csimonpj%40microsoft.com%7C3025665679274a8486c808d676230b41%7C72f988bf86f141af91ab2d7cd011db47%7C1%7C0%7C636826290225890158&sdata=Hbk97%2B6Au9uC9YSWzDvLRDry25x9FxWxTVsgVVALONA%3D&reserved=0>
>>
>>     Could you document where build-products live?  I often look at
>>     .hi files.
>>
>>     Could you add
>>
>>       * How to do the equivalent of “sh validate”
>>       * When validating, how to do things like this:
>>
>>     GhcStage1HcOpts += -DDEBUG -O
>>
>>     GhcStage2HcOpts += -Wwarn -ticky
>>
>>     GhcLibHcOpts +=  -ticky -Wwarn
>>
>>     BUILD_PROF_LIBS = NO
>>
>>     SplitObjs       = YES
>>
>>     HADDOCK_DOCS = NO
>>
>>     BUILD_SPHINX_HTML = NO
>>
>>     BUILD_SPHINX_PDF  = NO
>>
>>       * After modifying the source code, how to make stage1 compiler
>>         (only). In ‘make’ it is
>>
>>     $ cd compiler; make 1
>>
>>       * After modifying the source code, build the stage2 compiler
>>         (only).  In ‘make’ it is
>>
>>     $ cd compiler; make 2
>>
>>     Perhaps you say build –freeze1?
>>
>>       * In the testsuite, how to use the stage1 compiler
>>
>>     $ make stage=1 TEST=T2543
>>
>>       * In nofib, how to build one benchmark, with extra flags,
>>         perhaps even with the stage1 compiler
>>
>>     $ make stage=1 EXTRA_HC_OPTS=”-ticky -ddump-simpl -ddump-stg”
>>
>>     Thanks!
>>
>>     Simon
>>
>> -- 
>> Alp Mestanogullari, Haskell Consultant
>> Well-Typed LLP,https://www.well-typed.com/  <https://nam06.safelinks.protection.outlook.com/?url=https%3A%2F%2Fwww.well-typed.com%2F&data=02%7C01%7Csimonpj%40microsoft.com%7C3025665679274a8486c808d676230b41%7C72f988bf86f141af91ab2d7cd011db47%7C1%7C0%7C636826290225900167&sdata=Oau6Enlm1yNMWM61U%2F8rUIwyTMQubwM3oEGXOQwNAS4%3D&reserved=0>
>> Registered in England and Wales, OC335890
>> 118 Wymering Mansions, Wymering Road, London, W9 2NF, England
> -- 
> Alp Mestanogullari, Haskell Consultant
> Well-Typed LLP,https://www.well-typed.com/
>
> Registered in England and Wales, OC335890
> 118 Wymering Mansions, Wymering Road, London, W9 2NF, England
>
> _______________________________________________
> ghc-devs mailing list
> ghc-devs at haskell.org
> http://mail.haskell.org/cgi-bin/mailman/listinfo/ghc-devs

-- 
Alp Mestanogullari, Haskell Consultant
Well-Typed LLP, https://www.well-typed.com/

Registered in England and Wales, OC335890
118 Wymering Mansions, Wymering Road, London, W9 2NF, England

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.haskell.org/pipermail/ghc-devs/attachments/20190109/7970624f/attachment.html>


More information about the ghc-devs mailing list