build/docs/mozconfigs.rst

Tue, 06 Jan 2015 21:39:09 +0100

author
Michael Schloh von Bennewitz <michael@schloh.com>
date
Tue, 06 Jan 2015 21:39:09 +0100
branch
TOR_BUG_9701
changeset 8
97036ab72558
permissions
-rw-r--r--

Conditionally force memory storage according to privacy.thirdparty.isolate;
This solves Tor bug #9701, complying with disk avoidance documented in
https://www.torproject.org/projects/torbrowser/design/#disk-avoidance.

     1 .. _mozconfig:
     3 ===============
     4 mozconfig Files
     5 ===============
     7 mozconfig files are used to configure how a build works.
     9 mozconfig files are actually shell scripts. They are executed in a
    10 special context with specific variables and functions exposed to them.
    12 API
    13 ===
    15 Functions
    16 ---------
    18 The following special functions are available to a mozconfig script.
    20 ac_add_options
    21 ^^^^^^^^^^^^^^
    23 This function is used to declare extra options/arguments to pass into
    24 configure.
    26 e.g.::
    28     ac_add_options --disable-tests
    29     ac_add_options --enable-optimize
    31 mk_add_options
    32 ^^^^^^^^^^^^^^
    34 This function is used to inject statements into client.mk for execution.
    35 It is typically used to define variables, notably the object directory.
    37 e.g.::
    39     mk_add_options AUTOCLOBBER=1
    41 ac_add_options
    42 ^^^^^^^^^^^^^^
    44 This is a variant of ac_add_options() which only adds configure options
    45 for a specified application. This is only used when building multiple
    46 applications through client.mk. This function is typically not needed.
    48 Special mk_add_options Variables
    49 --------------------------------
    51 For historical reasons, the method for communicating certain
    52 well-defined variables is via mk_add_options(). In this section, we
    53 document what those special variables are.
    55 MOZ_OBJDIR
    56 ^^^^^^^^^^
    58 This variable is used to define the :term:`object directory` for the current
    59 build.
    61 Finding the active mozconfig
    62 ============================
    64 Multiple mozconfig files can exist to provide different configuration
    65 options for different tasks. The rules for finding the active mozconfig
    66 are defined in the
    67 :py:func:`mozbuild.mozconfig.MozconfigLoader.find_mozconfig` method:
    69 .. autoclass:: mozbuild.mozconfig.MozconfigLoader
    70    :members: find_mozconfig

mercurial