📄 news
字号:
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.distcc-2.11 "Sugar fix" 2003-09-23 INCOMPATIBILITIES: * The GNOME monitor is now configured using --with-gnome (not --enable-gnome) to be more consistent with GNU standards. * The state file format has changed, so old distcc monitor programs will not see new compiler processes and vice versa. FEATURES: * Nice new GNOME monitor, showing strip-charts (or "scarves") of the state of each processor slot over time. * --allow 0.0.0.0/0 is accepted as meaning "allow access from anywhere". Debian #207831, suggested by Matthijs Kooijman. BUG FIXES: * If we fail to determine the number of CPUs on the machine, assume it is 1. This may fix problems on exotic machines where the detection call is almost but not quite right. * In non-forking mode, make sure to close the accepted fd after processing a request. * Use "safe" LZO1 decompression for protection against program or network errors. * Lock and state files are created with the weakest permissions permitted by the umask. This is intended to reduce problems seen when $DISTCC_DIR is shared between two users, such as when compiling as root during program installation. * Client deletes temporary files when interrupted. INTERNAL: * Add debugging option DISTCC_MMAP, which can be set to 0 to disable use of mmap for receiving files. * New --enable-profile configure option to turn on gprof. * Many changes to the representation of the client state to make it easier to draw a history. State is now stored as a natively encoded struct in a disk file, rather than using our network protocol. PERFORMANCE: * Sleep only one second when blocked waiting for a CPU, to try to reduce idle time when recovering from an overloaded period. DOCUMENTATION: * Document problems with "no_subtree_check" on NFS. * The GNU Free Documentation License is no longer distributed, because the documentation is now included under the GNU GPL. * Document bad Makefiles or mismatched compilers as common causes of failure. * Describe where to put "localhost" in the host list. PORTABILITY: * Fixes for BSD/OS (BSDi) from Nick Amato. * Fixes for portability issues in autogen.sh from Lisa Seelye and Alexandre Oliva.distcc-2.10.1 2003-08-12 BUG FIXES: * Fix problem in "make clean" reported by Lisa Seelye.distcc-2.10 "Hunger is the best sauce" 2003-08-11 SECURITY: * Fix issues in temporary file handling that could allow a local attacker to interfere with another user's distcc processes. FEATURES: * 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". BUG FIXES: * 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. PORTABILITY: * 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. DOCUMENTATION: * Various man page updates. INTERNAL: * 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. TESTING: * Test cases are more robust in choosing a daemon port number.distcc-2.9 "Grace under pressure" 2003-07-21 FEATURES: * 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. Both client and server must be updated for this to work. Old clients and servers are supported when compression is off, which is the default. Compression is probably only worthwhile on networks slower than 100Mbps, but it will depend on the usual factors of CPU, network and code complexity. Thanks to Markus F.X.J. Oberhumer for the LZO library. BUG FIXES: * Handle invocations like "distcc foo.o -o foo", which can be generated by Mozilla. * Handle invocations like "distcc -Wa,-al=foo.lst -c foo.c", which write an assembler listing to a file and cannot be run remotely. * When trimming the path to avoid recursive invocations, stop as soon as we find one non-symlink compiler. This should help avoid the path getting trimmed down far too much on the server. Patch from Wayne Davison. PERFORMANCE: * 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. DOCUMENTATION: * Convert the documentation to a series of regular Unix manpages for easier reference and so they can be used more easily on diverse platforms. The Linuxdoc-SGML manual has been removed from the distribution. Thanks to Tim Potter for review suggestions. TESTING: * Add tests for new -o and -Wa,-al handling.distcc-2.8 "Play in the traffic" 2003-07-09 FEATURES: * Small enhancements to GNOME monitor appearance. BUG FIXES: * Fix problem with nonblocking IO for SSH connections that causes a busy spin. SSH connections are now far more efficient. Reported by Marcelo Matus. * distccmon-text flushes output after each line, even if stdout is not a terminal. This allows it to more easily be run in polling mode under another program. Suggestion from Hamish Rodda. * distccd now works properly with SSH servers that use pipes rather than socketpairs to run the daemon. Previously it would fail with an error when trying to write to stdin. Suggestion from Felix Lee. * Correctly handle invocations like "gcc -ofoo.o -c foo.c", where the output filename is run on to the -o option. Based on a patch from Tsutomu Yasuda. INTERNAL: * mon.h is now safe for inclusion in C++ programs, and protected against multiple inclusion. Suggestion from Fr閐閞ick Forjan. * Increased timeout for nonblocking network IO apart from connections to 5 minutes. PORTABILITY: * Detect and avoid Apple gcc cpp-precomp brokenness. Patch from Matt Watson. * Better handling of builds on machines which do not have the linuxdoc-sgml toolchain. Suggestion from Frerich Raabe. DOCUMENTATION: * Include an example xinetd configuration file from Andrew Morton.distcc-2.7.1 "Expedition" 2003-06-25 PORTABILITY: * distccmon-gnome now depends only on GTK+ 2.0, not on the GNOME libraries. * Fix for compilation of the GNOME monitor on BSD. * Fix for compilation of the monitor on Cygwin.distcc-2.7 "The Hard Way" 2003-06-16 FEATURES: * Graphical compile monitor for GNOME 2.x. Configure with --enable-gnome to build it. PORTABILITY: * Possible fix for compilation on HP-UX. INTERNAL: * Sanity check GNOME libraries during configuration if --enable-gnome was specified.distcc-2.6 "The Watcher in the Water" 2003-06-12 FEATURES: * 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. * New environment variable $UNCACHED_ERR_FD allows client errors to be redirected from stderr to another file descriptor, so that distcc errors are not cached by ccache. This is an improvment because (almost?) all distcc messages are transient things such as failure to connect to a remote host, and it is confusing to have them cached. (This needs a corresponding patch to ccache to set this, or for it to be assigned to a duplicate of stderr before invoking cccache.) * In compilation log message, just show the basename of the file to make it more compact. BUG FIXES: * If an compiler cannot be executed then try searching the path for the basename of the compiler. This can fix cases where the compiler is invoked with an absolute name but it is in a different directory on the server. Patch from Paul Russell. PORTABILITY: * Fix build on platforms that don't have hstrerror(), such as Solaris 2.6. * Handle sysconf(_SC_NPROCESSORS_ONLN) returning 0 processors, which has been observed on ARM Linux and previously threw distccd into a spin. Patch from Sean MacLennan. INTERNAL: * New mon.c interface for writing compilation monitors. * State directory name includes hostname for robustness when the temporary directory is shared. * Client writes out notes about its state to files that can be watched by external monitor programs. * Partial GNOME-based monitor interface, built when distcc is configured with --enable-gnome. TESTING * Fix silly typo that made maintainer-check give a false failure in ParseHostSpec_Case.distcc-2.5.1 "disable extra paranoia" 2003-06-05 FEATURES: * Fifteen second timeout on connection attempts. Hosts that are unreachable in this time are blacklisted for another minute. BUG FIXES: * Fix setpgid() failure when started directly from init(8). Reported by George Garvey. * Correct parsing of old-style TCP multiplier specification (e.g. "phathost/10:3600"). Patch from Wayne Davison. PORTABILITY: * Fix socklen_t compilation problem on Darwin. * Fix compilation problems on Solaris 8. Report from Tomas 謌ren. * Fix compilation problems on IRIX. (IRIX cannot accept a variable named "sa_len".) Report from Peter Naulls. * Fix compilation on SuSE Linux 7.1 for Alpha. DOCUMENTATION: * Add more details about starting distccd to the user manual. TESTING: * Add test for correct parsing of old-style TCP multiplier specification (e.g. "phathost/10:3600").distcc-2.5 "give them heaps" 2003-05-27 FEATURES: * 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. * Restrict the number of jobs accepted onto the server at any time. By default this is determined automatically depending on the number of CPUs on the server, but it can be set using the --jobs, -j option. Replaces never-used --concurrent, -n option.
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -