[GHC] #16242: Hadrian is too aggressive in rebuilding
GHC
ghc-devs at haskell.org
Thu Jan 31 17:05:44 UTC 2019
#16242: Hadrian is too aggressive in rebuilding
-------------------------------------+-------------------------------------
Reporter: goldfire | Owner: (none)
Type: bug | Status: new
Priority: normal | Milestone:
Component: Build System | Version: 8.6.3
(Hadrian) |
Resolution: | Keywords:
Operating System: Unknown/Multiple | Architecture:
| Unknown/Multiple
Type of failure: None/Unknown | Test Case:
Blocked By: | Blocking:
Related Tickets: | Differential Rev(s):
Wiki Page: |
-------------------------------------+-------------------------------------
Comment (by bgamari):
IIRC part of the reason that the `make` build system behaves "correctly"
here is that the testsuite rule is essentially decoupled from the rest of
the build system: it has no dependencies whatsoever.
You can observe this by running `make test` in a clean tree. You will find
that it makes no attempt to build anything but rather just starts in on
running the testsuite, using whatever GHC it finds on the path. There is
actually a good reason for this: the testsuite can be run against any GHC,
not only one from a GHC working directory.
As to whether Hadrian should emulate this, I'm torn. Certainly we should
have **some** target for running the testsuite against an arbitrary out-
of-tree GHC. However, it would make sense if `hadrian test` tested the
current working directory.
I think the real root of the problem here is that it's very easy to forget
adding `--freeze1` to the command line. Perhaps having a way to persist
this setting would alleviate much of the pain associated with unintended
rebuilds.
--
Ticket URL: <http://ghc.haskell.org/trac/ghc/ticket/16242#comment:4>
GHC <http://www.haskell.org/ghc/>
The Glasgow Haskell Compiler
More information about the ghc-tickets
mailing list