You can customize your build by providing local versions of make.conf and/or src.conf, named ${arch}/${branch}/builds/${buildid}/make.conf.server and ${arch}/${branch}/builds/${buildid}/src.conf.server, respectively. These will be used in lieu of the default-named files on the server side.
Similarly, if you wish to also affect the client-side make.conf, you may use ${arch}/${branch}/builds/${buildid}/make.conf.client.
Note: Due to the fact that individual clients may each have their own per-host make.conf, the contents of ${arch}/${branch}/builds/${buildid}/make.conf.client will be appended to that make.conf, not supplant it, as is done for ${arch}/${branch}/builds/${buildid}/make.conf.server.
Note: There is no similar functionality for ${arch}/${branch}/builds/${buildid}/src.conf.client (what effect would it have?).
Example 1. Sample make.conf.target to test new default ruby version
(For this case, the contents are identical for both server and client.)
RUBY_DEFAULT_VER= 1.9
Example 2. Sample make.conf.target for clang builds
(For this case, the contents are also identical for both server and client.)
.if !defined(CC) || ${CC} == "cc" CC=clang .endif .if !defined(CXX) || ${CXX} == "c++" CXX=clang++ .endif .if !defined(CPP) || ${CPP} == "cpp" CPP=clang-cpp .endif # Do not die on warnings NO_WERROR= WERROR=