backslashes anymore. A single backslash is enough. Changed the
definition in all affected packages. For those that are not caught, an
additional check is placed into bsd.pkginstall.mk.
And always is defined as share/examples/rc.d
which was the default before.
This rc.d scripts are not automatically added to PLISTs now also.
So add to each corresponding PLIST as required.
This was discussed on tech-pkg in late January and late April.
Todo: remove the RCD_SCRIPTS_EXAMPLEDIR uses in MESSAGES and elsewhere
and remove the RCD_SCRIPTS_EXAMPLEDIR itself.
under share/examples/rc.d. The variable name already was named
RCD_SCRIPTS_EXAMPLEDIR.
This is from ideas from Greg Woods and others.
Also bumped PKGREVISION for all packages using RCD_SCRIPTS mechanism
(as requested by wiz).
"No files should be owned by "nobody" because that defeats the purpose of
having a "nobody" account."
Make this use a specific user/group called distcc to run the daemon.
Bump PKGREVISION.
distcc-2.18.2 "Bees and lavender" 2004-11-12
BUG FIXES:
* Fix problem in checking errno after connect(). Fix by Jean
Delvare and Dan Kegel.
PORTABILITY:
* Fix prototype problem causing build failure on amd64. Patch
from Andreas Jochens. (Debian #280399, #280644).
distcc-2.18.1 "Reality-based computing" 2004-11-03
BUG FIXES:
* Fix run-time warnings about gtk_tree_model_row_changed() when
built with recent versions of GTK+.
* gcc option -specs= must be run locally so that it can read the
local spec file. Reported by Chris Yeoh.
PORTABILITY:
* Fix Solaris build problem reported by Dimitri Papadopoulos.
* Fix problem with reading hosts files in DOS CRLF format.
Reported by Sebastien Perochon.
distcc-2.18 "Billionaires on stilts" 2004-10-12
BUG FIXES:
* Fix longjmp() bug that can cause distcc to crash when a timeout
elapses.
* Fix compile-time problem with dcc_trace when configured with
--enable-rfc2553. Reported by Greg Earle.
* Fix warning about warn_unused_result for older versions of gcc.
* No timeout on local preprocessing or on compilation. No
timeouts on DNS lookups other than whatever is built in to the
DNS resolver. There are timeouts on network transmission and on
opening connections.
* Remove mmap() for receive of uncompressed data, to avoid various
problems.
CHANGES:
* The --allow option is now mandatory for daemon mode. As a
security feature, distccd will refuse to run without an IP
access control list.
* conftest.* built by autoconf is always done locally, to make
configure tests faster and safer.
DOCUMENTATION:
* Better description of use with ccache.
PORTABILITY:
* Fix various warnings reported by Dimitri Papadopoulos.
* Fix Tru64 build problem reported by Gary V. Vaughan.
distcc-2.17 "Divers Alarums" 2004-07-31
FEATURES:
* Performance improvements for distccmon-gnome.
* Added timeous for connection to servers, transmission of jobs
and remote compilation. If the timeout expires, the job is run
locally. This should make distcc cope better if some or all of
the servers are unreachable or failing.
* Also add timeouts in server to kick out stalled or disconnected
clients.
BUG FIXES:
* If remote compilation fails because of a signal in a later phase
of the compilation causing an exit with code >=128, retry
compilation locally. Patch from Jakub Stachowski.
DOCUMENTATION:
* Manpage fix from Jean Delvare.
PORTABILITY:
* Cygwin portability fix for WCOREDUMP, reported by Eric Frias.
distcc-2.16 "Salt" 2004-07-08
SECURITY:
* Fix bug that might cause IP-based access control rules not to be
interpreted correctly on 64-bit platforms. (CAN-2004-0601)
BUG FIXES:
* Fix small memory leaks in distccmon-gnome and distccmon-text.
FEATURES:
* Use a GNOME status bar with a grab handle for distccmon-gnome.
Patch from Nathan Fredrickson.
PORTABILITY:
* Better detection of systems with a popt library installed but
no popt.h. Reported by Sean Kelly.
* Fix bug in reporting crashed daemon children that showed up on
systems without strsignal, such as Mac OS 10.2. Reported by
Benjamin Reed.
* Update testdistcc.py to work on ia64 linux.
INTERNAL:
* Simplify dcc_log_child_exited.
* Include copyright and licence in --version output, as suggested
by GNU programs.
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.