| pump(1) | General Commands Manual | pump(1) |
distcc-pump - accelerate remote compilation with distcc
distcc-pump BUILD-COMMAND [ARGS] ...
eval ` distcc-pump --startup `; BUILD-COMMAND [ARGS] ... ; distcc-pump --shutdown
distcc-pump is part of distcc. It is used for distcc's pump mode. Distcc's pump mode accelerates remote compilation with distcc by also distributing preprocessing to the servers.
For a detailed description of pump mode, including most notably some important restrictions, see the distcc(1) man page, in particular the HOW PUMP-MODE WORKS section and the RESTRICTIONS ON PUMP MODE section.
The simplest usage is the form
An alternative way of invoking distcc-pump is to explicitly invoke "distcc-pump --startup" to start the include server and "distcc-pump --shutdown" to stop the include server. The "distcc-pump --startup" command will start up the include server, and will print out some environment variable settings. These environment variables are used to communicate between the pump-mode "distcc" client and the include server, and to communicate between "distcc-pump --startup" and "distcc-pump --shutdown". The caller of "distcc-pump --startup" is responsible for setting those environment variables before invoking "distcc" or "distcc-pump --shutdown".
For example:
Note that distcc's pump-mode assumes that sources files will not
be
modified during the lifetime of the include server, so modifying source files
during a build may cause inconsistent results.
When invoked in either the simple " distcc-pump COMMAND [ARG] ... " form, or as " distcc-pump --startup ", the distcc-pump script will invoke lsdistcc whenever DISTCC_POTENTIAL_HOSTS is set and DISTCC_HOSTS isn't. It will pass the value of DISTCC_POTENTIAL_HOSTS to lsdistcc and use the output of lsdistcc to set DISTCC_HOSTS.
The following environment variables are all optional.
distcc-pump make -j20
If you think you have found a distcc bug, please see the file reporting-bugs.txt in the documentation directory for information on how to report it.
The distcc-pump script and distcc's pump mode were written by Nils Klarlund, Manos Renieris, Fergus Henderson, and Craig Silverstein. Please report bugs to <distcc@lists.samba.org>.
distcc-pump is part of distcc. You are free to use distcc. distcc (including this manual) may be copied, modified or distributed only under the terms of the GNU General Public Licence version 2 or later. distcc comes with absolutely no warranty. A copy of the GPL is included in the file COPYING.
distcc(1), distccd(1), include_server(1), gcc(1), and make(1)
| 9 June 2008 |