Wed, 31 Dec 2014 06:09:35 +0100
Cloned upstream origin tor-browser at tor-browser-31.3.0esr-4.5-1-build1
revision ID fc1c9ff7c1b2defdbc039f12214767608f46423f for hacking purpose.
1 .. _build_targets:
3 =============
4 Build Targets
5 =============
7 When you build with ``mach build``, there are some special targets that can be
8 built. This page attempts to document them.
10 Partial Tree Targets
11 ====================
13 The targets in this section only build part of the tree. Please note that
14 partial tree builds can be unreliable. Use at your own risk.
16 export
17 Build the *export* tier. The *export* tier builds everything that is
18 required for C/C++ compilation. It stages all header files, processes
19 IDLs, etc.
21 compile
22 Build the *compile* tier. The *compile* tier compiles all C/C++ files.
23 Only applies to builds with ``MOZ_PSEUDO_DERECURSE``.
25 libs
26 Build the *libs* tier. The *libs* tier performs linking and performs
27 most build steps which aren't related to compilation.
29 tools
30 Build the *tools* tier. The *tools* tier mostly deals with supplementary
31 tools and compiled tests. It will link tools against libXUL, including
32 compiled test binaries.
34 binaries:
35 Recompiles and relinks C/C++ files. Only works after a complete normal
36 build, but allows for much faster rebuilds of C/C++ code. For performance
37 reasons, however, it skips nss, nspr, icu and ffi. This is targeted to
38 improve local developer workflow when touching C/C++ code.
39 Only applies to builds with ``MOZ_PSEUDO_DERECURSE``.
41 install-manifests
42 Process install manifests. Install manifests handle the installation of
43 files into the object directory.
45 Unless ``NO_REMOVE=1`` is defined in the environment, files not accounted
46 in the install manifests will be deleted from the object directory.
48 install-tests
49 Processes the tests install manifest.
51 Common Actions
52 ==============
54 The targets in this section correspond to common build-related actions. Many
55 of the actions in this section are effectively frontends to shell scripts.
56 These actions will likely all be replaced by mach commands someday.
58 buildsymbols
59 Create a symbols archive for the current build.
61 This must be performed after a successful build.
63 check
64 Run build system tests.