igloo at earth.li
Wed Sep 5 15:03:09 EDT 2007
On Wed, Sep 05, 2007 at 04:08:23PM +0100, Simon Peyton-Jones wrote:
> 1. If you have lots of libraries in your tree, 'sh validate' will try to compile them. But they are not -Wall clean, so the -Werror kills the validation.
> Solution: we should say what libraries validate will validate; and validate should make build.mk compile only them.
> The easiest way to do this looks to be: make GhcBootLibs=YES work, and specify that those are the libs that are validated.
Is there a reason you're building all (?) the extra libs by default?
I find it quite convenient to be able to just symlink them into a tree
when I want to test them and have it Just Work, but to have a faster
build by default.
You could always put "GhcBootLibs=YES" in mk/validate.mk. On the other
hand, I could put "GhcBootLibs=NO" in mine; I don't really mind
> Incidentally are GhcBootLibs the same as "core libs"?
Yes, I think so.
> Do we have this terminology Wiki'd somewhere?
We should probably just rename the variable.
> 2. 'sh validate' copies build.mk to build.mk.bak, but doesn't restore it (ever). The next time you run it, you lose even the backup.
> Solution: make 'sh validate' use a different build.mk altogether, perhaps build.mk.validate. I'm not sure how to make the build system slurp in a different build.mk though!
OK, it now uses mk/validate-settings.mk when validating. mk/build.mk is
ignored, with mk/validate.mk taking on its role.
> 3. On Windows I'm getting warnings from utils/genprimopcode/Lexer.hs which kill the validation. There's no -w at the top, and Simon and I aren't sure if there should be. But it's getting compiled with -Werror nevertheless. Dump below.
I've added a -w pragma; strange that it worked for me, though. I have
alex 2.1.0; what version do you have?
(I'll be pushing patches for the things I mention above once I've
More information about the Cvs-ghc