build/docs/mozconfigs.rst

Wed, 31 Dec 2014 06:09:35 +0100

author
Michael Schloh von Bennewitz <michael@schloh.com>
date
Wed, 31 Dec 2014 06:09:35 +0100
changeset 0
6474c204b198
permissions
-rw-r--r--

Cloned upstream origin tor-browser at tor-browser-31.3.0esr-4.5-1-build1
revision ID fc1c9ff7c1b2defdbc039f12214767608f46423f for hacking purpose.

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

mercurial