Add bulkbuild-rebuild which can be used to build packages individually.
It assumes that all dependencies are built and the results of the scan
phase exists. That means it can be used after a bulk build to try to
rebuild a failing package. Fixes PR 37407.
When all jobs are processed in master mode, close the listen socket
and shutdown(2) all peers. Give them a second to close(2) the
connection themselve, so that the port remains usable on the master.
This is the standard compliant fix for PR 37002.
- run checksum stage of a build with the privileged user, as DISTDIR
might not be writeable
- create the actual package as privileged user as well
- pre-create work.log when using user-destdir
- in pre-build, only wait if the meta subdirectory exists. bulklog itself
can often be a mount point.
- If not running on NetBSD or not using /usr/bin/make, set the default
of pbulk's make to ${prefix}/bin/bmake.
- Make path to neato an option and don't install it on demand.
- Fix a bug in the master mode that should fix the strange faults seen
with native libevent on NetBSD.
- Add option to skip checksum computation. Don't upload a checksum file
if that option is active.
substitution (and any substitution warnings) run before the build starts,
rather than after building libnbcompat. The reason for this is that
libnbcompat is _built_ in the pre-configure stage when in inplace mode.
Don't depend on date to implement %s or even %F and %R or support -r,
compute dates as one comment and split. This works even with the very
special HP-UX date. Requested and tested by tnn@
Bump to pbulk-0.7.
Discussion of various parts of the design with jlam@, wiz@, tls@
and many other developers. Special thanks to David Maxwell for
testing the initial prototype and finding some bugs with
Coverity Prevent.
Supported by Google's Summer of Code 2007 project.
OK for import during the freeze: jlam@
From DESCR:
pbulk is the modular bulk build framework for pkgsrc.
This package contains:
- pbulk-scan, a program to scan the entire pkgsrc tree
or a list of directories therein for packages and
dependencies. Distributed operation using a master/client
mode is supported.
- pbulk-resolve, a program to resolve the dependencies
from the output of pbulk-scan
- pbulk-build, the build scheduler. Distributed builds via TCP
are supported.
- bulkbuild and related scripts to implement full and limited
bulk builds on top of those programs.
The pbulk framework is considered experimental.