and copy it to the client. This has two benefits:
1) Avoids spamming the master with dozens of md5 processes when
dosetupnode is spawned for all client machines at ocne
2) Avoids silly copy attempts on disconnected nodes for which the file
is copied to itself
portbuild.conf, builds will each be done in a separate swap-backed md.
This dramatically improves build performance since
* Every transaction is not written to disk, so disk bandwidth is not
a bottleneck
* Multiple builds do not contend with each other for the same set of
filesystem locks and other per-device resources
The size of the md devices is controlled by the md_size variable. '2g'
seems to be a good size.
Currently we mdconfig -u each device after each port build, since
otherwise dirty blocks accumulate and the md eventually uses a full
amount of backing store (2g in the above example). This is a problem
if there is unsufficient swap backing to accomodate them all.
XXX This should be made configurable to avoid the performance penalty on
systems that do have enough swap backing
around silly failures in some ports when it is present
* Add a footer to completed builds that is recognised by pdispatch to
retry truncated builds
* If ALWAYS_KEEP_DISTFILES is not present in the environment or port
makefile, then clean up DISTDIR after the build finishes, to prevent
collection of distfiles for this port.
* Finish flipping the switch on -noplistcheck - this is activated by
passing in the NOPLISTCHECK environment variable instead of
using PLISTCHECK in the opposite case
passing in the NOPLISTCHECK environment variable instead of
using PLISTCHECK in the opposite case
* Remove the unused -nodummy function
* Pass in ALWAYS_KEEP_DISTFILES when -distfiles is set
* Finish flipping the switch on -noplistcheck - this is activated by
passing in the NOPLISTCHECK environment variable instead of
using PLISTCHECK in the opposite case
* Always pull in the distfiles from the client if they exist (needed
for forthcoming ports tree changes to satisfy GPL license requirements)
* If the build did not complete "cleanly", e.g. it was interrupted by a
network outage or client machine panic, then retry it until it succeeds
instead of just leaving a dirty truncated log
* Finish flipping the switch on -noplistcheck; set NOPLISTCHECK instead
of PLISTCHECK in the opposite case
* Clean up the distfiles/ directory when starting build, so it is not
contaminated by old distfiles
* Remove commented-out code to don't back up old distfiles/ directory,
it's just too big to do this.
of ports which are depending on a port with a changed shared lib version.
Edwin dedicates this script to his son Dirk, born few days ago :)
Congrats (again) !
PR: ports/63915
Submitted by: edwin
look for processes holding open references within the FS and kill
them, then use regular umount. This is necessary now that devfs
cannot be force-unmounted, and has the benefit that processes can't
hang around holding references to files between port builds.
* Preliminary work to support using ccache to accelerate builds.
processes holding open references within the FS and kill them, then use
regular umount. This is necessary now that devfs cannot be force-unmounted,
and has the benefit that processes can't hang around holding references to
files between port builds.
look for processes holding open references within the FS and kill
them, then use regular umount. This is necessary now that devfs
cannot be force-unmounted, and has the benefit that processes can't
hang around holding references to files between port builds.
* Reduce possibility for error by testing for presence of executable
ldconfig inside the chroot before attempting to run it (e.g. it may not
be there if the chroot was not completely initialized)
which are copied to www.freebsd.org for use by 'make fetchindex', as well
as the source of build failure reports on ports@FreeBSD.org when it is
broken.