[Haskell-cafe] Become a GHC build slave!

Simon Marlow simonmarhaskell at gmail.com
Mon Feb 5 10:28:15 EST 2007


Neil Mitchell wrote:
> Hi Simon,
> 
>> Thanks largely to Ian Lynagh, GHC now has a BuildBot infrastructure to 
>> automate
>> nightly builds on multiple platforms.  This replaces the old set of shell
>> scripts that we used to run nightly builds; now adding new clients to 
>> the setup
>> is relatively easy, instructions are here:
>>
>>    http://hackage.haskell.org/trac/ghc/wiki/BuildBot
> 
> Good news! Do you have any idea of how much time a build might take 
> roughly?

It depends how much you want to do: as a rough guide, our really-do-everything 
builds take about 8 hours on a fast machine, that includes

   - 3 compiler stages (only 2 are necessary, the 3rd is a sanity check)
   - the "extra libraries"
   - all libraries built for profiling and "unregisterised"
   - split objects
   - a full testsuite run, in all the supported ways
   - 5 runs of the nofib benchmark suite, with various flag settings
   - build & upload distributions

We can do a "fast" build in much less time: probably about 1 hour for

   - 2 compiler stages
   - core libraries only
   - no profiled libraries
   - no split objects
   - a "fast" testsuite run
   - no benchmarks

You tell us how much time you have, we can keep your machine busy :-)

> As a second point, the Yhc team do a variety of builds - some from
> clean, some from fullclean, some from delete the directory and a
> completely fresh darcs pull etc. We've found that can help catch
> things like interface changes, dependancies etc earlier. If you have
> (or can find) too many Windows/Linux machines etc that might be worth
> doing - and is pretty easy with buildbot.

All our builds start with a fresh checkout right now.  There are certainly 
things that can go wrong if you don't fully clean the tree and re-configure 
after updates (e.g. modifications to the configure.ac files), so I'm not sure it 
would be useful to start from an partially-clean tree.

Cheers,
	Simon


More information about the Glasgow-haskell-users mailing list