It is advisable to do this after
rebasing, especially if the rebase involves changes to the module
structure or build system.

But *any* commit could involve such a change.  Isn't it a goal of Hadrian to respond to, well, changes?   For example, it is clever enough to rebuild Hadrian itself when it changes.

It's a bit unsatisfying to say "it'll usually work, but if anything strange happens, just make clean and try again".  Understandable perhaps, but not satisfying.

Simon

On Mon, 11 Jul 2022 at 16:19, Sylvain Henry <sylvain@haskus.fr> wrote:

Hi Simon,

You have to re-run `./configure` in cases like this. It's because `compiler/ghc.cabal` is generated from `compiler/ghc.cabal.in` by `./configure`. This isn't tracked by Hadrian.

>Surely that should not happen? I'll try make clean; but isn't this a bug?

Hopefully when `make` build system will be removed it should be easy to make Hadrian (instead of `./configure`) generate and track this file. In fact I already did this in a MR more than a year ago but it was blocked on make-removal.

Sylvain


On 11/07/2022 17:09, Simon Peyton Jones wrote:
(apols for premature send)

I am working on a branch of GHC, actually on !8210.  I have rebased on master.  Then I say
hadrian/build
and I get the log below.  It falls over saying
No generator for _build/stage0/compiler/build/GHC/Unit/Module/Name.hs.

Surely that should not happen?

I'll try make clean; but isn't this a bug?

Simon

_______________________________________________
ghc-devs mailing list
ghc-devs@haskell.org
http://mail.haskell.org/cgi-bin/mailman/listinfo/ghc-devs
_______________________________________________
ghc-devs mailing list
ghc-devs@haskell.org
http://mail.haskell.org/cgi-bin/mailman/listinfo/ghc-devs