Provided by: distcc-pump_3.3.3-1_amd64 bug

NAME

       distcc-pump - accelerate remote compilation with distcc

SYNOPSIS

       distcc-pump BUILD-COMMAND [ARGS]  ...

       eval ` distcc-pump --startup `; BUILD-COMMAND [ARGS]  ...  ; distcc-pump --shutdown

DESCRIPTION

       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
              distcc-pump COMMAND [ARG]  ...
       This  will  start  an  include server for distcc's "pump" mode; optionally run lsdistcc to
       compute the distcc host list; set some auxiliary environment variables; change PATH to use
       the  distcc client in the same directory as the "distcc-pump" script; execute COMMAND with
       the specified ARG(s)  ; and then shut down the include server.  The COMMAND is typically a
       parallel  build  command, such as "make -j80", that will do many concurrent invocations of
       distcc.

       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:
              eval `distcc-pump --startup`
              make -j80
              distcc-pump --shutdown

       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.

INVOKING LSDISTCC

       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.

OPTIONS

       --help Displays summary instructions.

       --startup
              Starts  an include server, and outputs the environment variable settings needed for
              distcc(1) or distcc-pump --shutdown to access it.

       --shutdown
              Shuts down an include server started up by distcc-pump --startup.

ENVIRONMENT VARIABLES

       The following environment variables are all optional.

       DISTCC_LOCATION
              The location of the distcc bin directory, which is normally inferred from the link-
              resolved  dirname  of argv[0]. If this location is in fact the bin directory inside
              an installation (as will be the case when  the  pump  script  in  the  installation
              executes),  then  Python  executables  and distcc itself will be retrieved from the
              parent directory of the location.

       DISTCC_MAX_DISCREPANCY
              see the distcc(1) man page.

       DISTCC_POTENTIAL_HOSTS
              The distcc servers that will be queried by lsdistcc in order to produce a value for
              DISTCC_HOSTS.  This value may be unset or null. In such cases, lsdistcc will not be
              invoked, and distcc will use DISTCC_HOSTS or the distcc hosts  configuration  file,
              as described in the "Host Specifications" section of distcc(1).

       DISTCC_HOSTS
              This variable is passed through to distcc but only if DISTCC_POTENTIAL_HOSTS is not
              set.

       LSDISTCC_ARGS
              Extra arguments to pass to lsdistcc.  See lsdistcc --help for more details.

       INCLUDE_SERVER_ARGS
              Extra arguments to pass to the include server.

       PYTHONOPTIMIZE
              If set to "", then Python optimization is disabled.

EXAMPLE

       distcc-pump make -j20

BUGS

       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.

AUTHORS

       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>.

LICENCE

       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.

SEE ALSO

       distcc(1), distccd(1), include_server(1), gcc(1), and make(1)

                                           9 June 2008                                    pump(1)