The design principle behind
poudriere was to have a package builder which allows:
A. Package building for all versions (8-9-10) - and hence the build environments witch are fetched from source
B. Package building for the same version but with different flavors - so as example gnome style, kde style or stripped.
As a result,
poudriere can have a matrix of [versions x flavours] of build environments, and can builk-build for all of them.
Because of this design, it can be a bit difficult to incorporate the principles and understand how to manipulate
poudriere if you are just trying to build packages for your host environment or for a set of PC/servers with same version + pkg options. Here is what you can do to simplify things:
1. place in
/etc/fstab of the build machine:
Code:
/var/db/ports /usr/local/etc/poudriere.d/options nullfs rw 0 0
That way all existing port options will get passed to
poudriere, and any changes you make on host with
# make config will be preserved into
poudriere builds.
2. Before building for a previously uninstalled port (new install) you need to run
# make config-recursive or
# poudriere options -c JAILNAME so that you can set preferences.
3. None of the "native host" environment settings will be passed to
poudriere, so any build options you want to use must be placed in
/usr/local/etc/poudriere.d/make.conf, which will be copied to the
poudriere build environment when the build-jail is started.
4, If you want to pass any settings to
poudriere build environment/jail, you can place those variables in
/usr/local/etc/poudriere.conf by using "export". so for example, suppose your
ccache partition is on ufs instead of zfs and you would like to use
ccache compression in the
poudriere build-jail? Place this in
poudriere.conf:
Code:
export CCACHE_COMPRESS=yes
Good Luck