in the process. (More information on tech-pkg.)
Bump PKGREVISION and BUILDLINK_DEPENDS of all packages using libtool and
installing .la files.
Bump PKGREVISION (only) of all packages depending directly on the above
via a buildlink3 include.
* Fix crash bug in receiving LZO compressed data into a mmapped file.
* Remove redundant temporary file cleanup in non-forking mode.
* Client calculates and can display the overall throughput in preprocessed
bytes per second for remote jobs.
* The deprecated fork-after-exec mode controlled by the --no-prefork option
has been removed.
* mmap is no longer used for compressed data to simplify the code.
* Daemon now chdirs to $TMPDIR at startup rather than /. This allows dumping
core, among other things.
Changes:
distcc-2.14 "Lake Albina" 2004-05-02
FEATURES:
* The host file is looked up in $DISTCC_DIR/hosts, not hardcoded
to ~/.distcc/hosts. The default for $DISTCC_DIR is still
~/.distcc. Suggested by Sebastien Perochon.
* Source file name is included in success/failure messages, e.g.
distcc[6655] ERROR: compile ./cases/bad.c on cardhu failed
* distcc can now be built with a build directory separate from the
source directory. Patch from Dennis Henriksen.
DOCUMENTATION:
* Add documentation of DISTCC_DIR, and other fixes. Patch from
Thomas Schwinge.
* Slightly improved distcc --help.
BUG FIXES:
* Decompression buffer can dynamically resize to allow for very
gassy files. From a patch by Joe Buehler.
PORTABILITY:
* Add sample scripts for Red Hat / Fedora, by Colin Walters.
* mmap is always disabled on HP-UX, because the inconsistent page
case is a bit dangerous for the way distcc uses mmap. Suggested
by Joe Buehler.
distcc-2.13 "Carnal Bunt" 2004-03-02
SECURITY:
* Enforce IPv4 access control lists when the daemon is listening
on an IPv6 port. This only applies when the server was compiled
using --enable-rfc2553 and run with --allow.
FEATURES:
* Hash comments are allowed in host list files.
INTERNAL:
* Use TCP_DEFER_ACCEPT on Linux to avoid some wasted context
switching when a new connection comes in to the server.
BUG FIXES:
* Some fixes for connections over SSH when built using
--enable-rfc2553. Reported by Jeff Rizzo.
* Handle arguments like "-xcpp" and "-Wa,-xarch=v8". Suggested by
Ben Scarlet.
* Fix resource exhaustion when DISTCC_SAVE_TEMPS is set. Reported
by Mark DeGeorge.
* Fix problems in running IPv6-enabled builds on kernels without
IPv6 support. Reported by Lisa Seelye.
DOCUMENTATION:
* More instructions for distributors/packagers.
PORTABILITY:
* Many portability patches from Albert Chin. These patches were
tested on: AIX 4.3.2, 5.1; HP-UX 10.20, 11.00, 11i; IRIX 6.5;
Redhat Linux 7.1, 9; Solaris 2.5.1, 2.6, 7, 8, 9; Tru64 UNIX
4.0D, 5.1.
* Possibly fix mmap problem on HP-UX with compressed transfers.
Reported by Joe Buehler.
TESTING:
* Add test for compilation with compression.
* Testsuite portability patch from Albert Chin. The tests pass
on: HP-UX 10.20, 11.00, 11i; IRIX 6.5; Redhat Linux7.1, 9;
Solaris 7, 8, 9; Tru64 UNIX 4.0d, 5.1.
pkgsrc changes:
o Add a rc.d script to start distccd, by default this runs
as user "nobody".
o Use subst.mk instead of patching multiple files.
Changes:
BUG FIXES:
* When checking if a process exists, accept EPERM as indicating it
exists but isn't ours. This allows watching the directory of a
different user, subject only to filesystem permissions.
Reported by Ernst Bachmann.
* Correct a bug introduced in 2.12 that made distccd fail to start
when run by root because setgid failed. Fix from Wayne Davison.
* --without-gnome, --without-gtk now turn those options off rather
than on.
DOCUMENTATION:
* New man page for distccmon-text, by Shri Shrikumar and Martin
Pool.
distcc-2.12 "Figgy Pudding" 2003-12-19
FEATURES:
* New --log-level feature allows logging of only errors rather
than messages for each connection.
* IPv6 support now works better when distcc is configured with
--enable-rfc2553. The server can normally accept either IPv4 or
IPv6 connections.
* New --with-docdir configure option to set install location for
documents. The default is the same as previously. Patch from
Harold L Hunt II.
INTERNAL:
* GNU-style ChangeLog is now included in the package. Please keep
it up to date if you make your own changes!
PORTABILITY:
* setgroups() was broken by Mac OS X Panther so that it will not
accept setgroups(0, NULL) to clear the group list. Instead we
now set the group list to our single primary gid. Suggestion
from Wayne Davison.
* sendfile problems on FreeBSD 4.9-RC fixed. Patch from Allan
Saddi.
* MAXPATHLEN is provided if it's not defined, which is the case on
GNU Hurd. Reported by Santiago Vila as Debian #219600.
BUG FIXES:
* Check pkg-config information GNOME/GTK+ is now checked at
configure time, not build time. This is a bit quicker than
running the script for every file we build, and means that
PKG_CONFIG_PATH only needs to be set for configure.
DOCUMENTATION:
* Small documentation corrections.
Changes since 2.11:
distcc-2.11.2 "Muscovado" 2003-10-23
BUG FIXES:
* Correct the handling of --without-gnome. Reported by Dimitri
Papadopoulos.
* Fatal signal handlers for client and daemon should reset the
signal vector before doing anything else, to protect against an
(unlikely) spin if the signal is re-sent.
* Corrections to .desktop file from Dag Wieers.
INTERNAL:
* Remove dependency on libglade for GTK+ and GNOME monitor
programs.
PORTABILITY:
* IRIX portability fixes from Dimitri Papadopoulos.
* Use AC_TYPE_SIGNAL to generate correct signal handler return
types. (It can be either int or void.)
DOCUMENTATION:
* Various manual updates.
* Update to xinetd example from Dag Wieers.
distcc-2.11.1 "Burnt sugar" 2003-10-08
FEATURES:
* The graphical monitor can now be configured with either
--with-gnome or --with-gtk. In the second case, the GNOME
libraries are not used. In both cases the resulting program is
called distccmon-gnome and the functional differences are fairly
small.
BUG FIXES:
* An error message is emitted and compilation fails if distcc
cannot use the specified TMPDIR. This can happen if distccd is
started by root with a TMPDIR only accessible to root.
Reported by Brett Dikeman.
* GNOME data files are now only installed when the application is
configured with --with-gnome or --with-gtk. Files are installed
into a distcc/ subdirectory of the configured data directory.
(By default this is /usr/local/share/distcc/). Reported by Erik
Jan Tromp and Noe`l Ko"the.
* Fix bug in sending compressed files where errors were ignored.
* C++ compilation using -frepo must be local. Reported by Andrew
Slater.
PORTABILITY:
* Don't use stdint.h, which is not available on FreeBSD 4-STABLE,
IRIX or Solaris. Reported by Frerich Raabe.
DOCUMENTATION:
* Corrections to distcc manpage reported by Lionel Sausin.
* Documentation of how to write monitor programs, from Frerich
Raabe.
INTERNAL:
* Fix state.h for use with C++. Patch from Frerich Raabe.
* Fix problem in "make clean" reported by Lisa Seelye.
* Fix issues in temporary file handling that could allow a local
attacker to interfere with another user's distcc processes.
* Daemon niceness is incremented by +5 by default. (This can be
changed by --nice.)
* The per-user configuration directory can be set by $DISTCC_DIR.
It defaults to the old value of ~/.distcc/.
* For regular compile failure, don't say "with exit code 1".
* The server now emits warnings to the log and to the client if
its PATH is set such that it will recursively run a distcc
client. This check is done at run time for the requested
compiler name. The server's $PATH is not modified in other
ways. This may help reduce problems with finding the right
remote compiler.
* SCO/Caldera operating systems are no longer supported due to
their recent absurd attacks against Linux and IBM.
* TMPDIR is no longer required to start with '/', so that Cygwin
paths starting with a drive letter may be used. Reported by
Heiko Elger.
* Various man page updates.
* Daemon now sits in the root directory while running, not the
temporary directory.
* Temporary directory is gone. Working files are created directly
under $TMPDIR.
* Lock files and state files are stored under DISTCC_DIR, rather
than in /tmp.
* Test cases are more robust in choosing a daemon port number.
* Optional LZO1X compression of network traffic, to make distcc
faster on slow or overloaded networks. This is turned on by
appending ",lzo" to each host specification.
* The daemon by default allows 2+NCPUS, rather than 3*NCPUS. The
two extras are to allow for some processes to be blocked on
network IO, but allowing more than two of them is probably not
useful on multiprocessor machines.
* Larger files are sent and received using memory mappings where
possible.
* Use of mmap and compression makes distcc substantially faster in
at least some cases.
* Bug fixes
* New program distccmon-text shows the state of any distcc
processes run by the current user. It can be run by hand or
read by a shell script. Should be popular with vmstat fans.
* The standalone daemon now "preforks" before accepting
connections to reduce per-request overhead. Can be disabled by
--no-prefork, which restores the standard Unix behaviour.
* Bug fixes
* And much more..
* If $DISTCC_HOSTS is not set, the host list is taken from from
~/.distcc/hosts, if that exists, or otherwise $sysconfdir/distcc/hosts.
* Add --listen option to distccd, to control which IP address is
used to listen for connections. May be useful for access
control on dual-homed machines.
distcc is a program to distribute compilation of C or C++ code across
several machines on a network. distcc should always generate the same
results as a local compile, is simple to install and use, and is often
two or more times faster than a local compile.
distcc does not require all machines to share a filesystem, have
synchronized clocks, or to have the same libraries or header files
installed. Machines can be running different operating systems, as long
as they have compatible binary formats or cross-compilers.