description of distcc status indicators, version 1 Copyright (C) 2003 by Martin Pool purpose ------- This file describes a mooted design for a mechanism for distcc to indicate its status for the benefit of a separate display program. This is an external protocol so that there can be different implementations of status monitors to suit different purposes. The protocol is supposed to stay stable for some time to allow people to write their own monitors. interface --------- The programming interface to this is through the functions in mon.c/mon.h. Monitor applications should not access the files directly. state ----- The state of a compiler process is described in a few variables cpid Process ID of the client state String describing its progress in compilation file Short source filename host Host definition being used File or host may be empty strings if they are not yet known. states ------ The following states are defined. The list may change in later releases. In 2.6 the client progresses through these states in order, although not all states may be reached by any particular process. Startup Examining command line, host definition and other settings, and finding a host to use. Starved Waiting because all defined hosts are completely busy. Connect Opening a TCP or SSH connection to the host and sending the first part of the request. Preprocessor Waiting for the preprocessor to complete. Send Sending the preprocessed source. Compile Waiting for a local or remote compiler to complete. Receive Receiving compilation results.