Package Building Procedures
Prev |  | Next

# 4 Customizing Your Build

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=

Example 3. Sample `make.conf.server` for pkgng

    WITH_PKGNG=yes
    PKG_BIN=/usr/local/sbin/pkg

Example 4. Sample `make.conf.client` for pkgng

    WITH_PKGNG=yes

Example 5. Sample `src.conf.server` to test new sort codebase

    WITH_BSD_SORT=yes

Prev | Home | Next
Jail Build Environment Setup |  | Starting the Build