Welcome to the exim-build-farm-client wiki!

The Exim Build Farm Client software is run on machines to build and test the Exim MTA software. It uses the current development tree and rebuilds/tests Exim when new commits are added to the Exim source repository. The result are recorded and reported back to the Exim Build Farm website where developers and interested parties can review builds and tests across various distros and versions.

View the Installation page for info on how to install the Build Farm Client. There is an additional separate page on preparing your system to build documentation.

Overview

In the default configuration, a full rebuild of Exim will occur when a new commit to the monitored branches occurs or every 7 days, and it will also build and run the test suite. You can choose to have it also build the docs, but there are several extra package requirements for building the documentation.

Review your enabled features in the Makefile and make adjustments to your build-farm.conf to enable those features, using either the makefile_set, makefile_add, or makefile_regex. You may also receive requests from the developers to enable specific features on your build. Documentation for enabling these in build-config.conf is elsewhere.

The default build configuration will build all branches specified in a text file on the server. Most of the time this will only be HEAD, but occasionally the developers may have an interest in building some experimental code on a different branch. The above configuration will do all of it automatically for you. The run_cron will also check the master repo at of the Exim Build Farm Client Software and update itself.

Credits

This code is derived from the excellent PostgreSQL Build Farm client and server code. Many thanks to them for a fantastic collection which serves such a useful function.