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