Difference between revisions of "Distcc mozilla tutorial"

From CDOT Wiki
Jump to: navigation, search
(MOZCONFIG)
(Environment)
Line 22: Line 22:
  
 
=Environment=
 
=Environment=
 +
This section explains some usefull environment variables that you can use.
 +
 +
==Master==
 +
The master machine is the machine in which the mozilla directory is located.
 +
<dl>
 +
<dt> DISTCC_CL_HOSTS
 +
<dd>the ip addresses of the slave machines. Usually localhost is the first host. '''THIS IS REQUIRED'''
 +
 +
''Example :'' export DISTCC_CL_HOSTS="localhost 10.0.0.2 10.0.0.4
 +
 +
<dt>DISTCC_VERBOSE
 +
<dd>Verbose output.
 +
 +
Values : 1 for true
 +
 +
<dt>DISTCC_LOG
 +
<dd>A path to a file that distcc will output to
 +
 +
<dt>DISTCC_FALLBACK
 +
<dd>Whether distcc should fallback to localhost if it fails to find a slave. The compile will fail if fallback are disabled and no slaves are found.
 +
 +
Values : 1 for allow fallback
 +
</dl>
 +
 +
===Slave===
 +
The slaves take preprocessed file and send back the object file. They do not need the source code.
 +
<dl>
 +
<dt> DISTCC_CL_HOSTS
 +
<dd>the ip addresses of the slave machines. Usually localhost is the first host.
 +
 +
'''Example :''' export DISTCC_CL_HOSTS="localhost 10.0.0.2 10.0.0.4
 +
<dd>
 +
</dl>
 +
 +
 +
==Optional==
 +
 +
DISTCC_FALLBACK
 +
 
=Check out=
 
=Check out=
 
=Build=
 
=Build=

Revision as of 16:11, 20 March 2007

What is this?

This is a tutorial to get distcc to compile Mozilla Firefox on cygwin.

Requirements

  1. Window machines. For distcc to be of any use, there should be at least 2 machines
  2. Cygwin. You will need gcc to build distcc. We built using gcc-3.4.4
  3. Mozilla requirements
  4. Patience

MOZCONFIG

Currently, distcc does not transmit debug .pdb files. So you cannot currently do a debug build. Here is a sample MOZCONFIG file. All you need to do is modify the object directory (MOZ_OBJDIR).

Note the last line, which is required for any MOZCONFIG file that wants to build using distcc.

mk_add_options MOZ_OBJDIR=/cygdrive/c/home/cesar/mozobj
ac_add_options --enable-application=browser
ac_add_options --enable-optimize
ac_add_options --disable-debug
ac_add_options --enable-debugger-info-modules=no
mk_add_options MOZ_CO_PROJECT=browser
mk_add_options MOZ_MAKE_FLAGS="CC='distcc cl' CXX='distcc cl' -j4"

Environment

This section explains some usefull environment variables that you can use.

Master

The master machine is the machine in which the mozilla directory is located.

DISTCC_CL_HOSTS
the ip addresses of the slave machines. Usually localhost is the first host. THIS IS REQUIRED Example : export DISTCC_CL_HOSTS="localhost 10.0.0.2 10.0.0.4
DISTCC_VERBOSE
Verbose output. Values : 1 for true
DISTCC_LOG
A path to a file that distcc will output to
DISTCC_FALLBACK
Whether distcc should fallback to localhost if it fails to find a slave. The compile will fail if fallback are disabled and no slaves are found. Values : 1 for allow fallback

Slave

The slaves take preprocessed file and send back the object file. They do not need the source code.

DISTCC_CL_HOSTS
the ip addresses of the slave machines. Usually localhost is the first host. Example : export DISTCC_CL_HOSTS="localhost 10.0.0.2 10.0.0.4


Optional

DISTCC_FALLBACK

Check out

Build