| .. _build_targets: |
| |
| ============= |
| Build Targets |
| ============= |
| |
| When you build with ``mach build``, there are some special targets that can be |
| built. This page attempts to document them. |
| |
| Partial Tree Targets |
| ==================== |
| |
| The targets in this section only build part of the tree. Please note that |
| partial tree builds can be unreliable. Use at your own risk. |
| |
| export |
| Build the *export* tier. The *export* tier builds everything that is |
| required for C/C++ compilation. It stages all header files, processes |
| IDLs, etc. |
| |
| compile |
| Build the *compile* tier. The *compile* tier compiles all C/C++ files. |
| |
| libs |
| Build the *libs* tier. The *libs* tier performs linking and performs |
| most build steps which aren't related to compilation. |
| |
| tools |
| Build the *tools* tier. The *tools* tier mostly deals with supplementary |
| tools and compiled tests. It will link tools against libXUL, including |
| compiled test binaries. |
| |
| binaries: |
| Recompiles and relinks C/C++ files. Only works after a complete normal |
| build, but allows for much faster rebuilds of C/C++ code. For performance |
| reasons, however, it skips nss, nspr, icu and ffi. This is targeted to |
| improve local developer workflow when touching C/C++ code. |
| |
| install-manifests |
| Process install manifests. Install manifests handle the installation of |
| files into the object directory. |
| |
| Unless ``NO_REMOVE=1`` is defined in the environment, files not accounted |
| in the install manifests will be deleted from the object directory. |
| |
| install-tests |
| Processes the tests install manifest. |
| |
| Common Actions |
| ============== |
| |
| The targets in this section correspond to common build-related actions. Many |
| of the actions in this section are effectively frontends to shell scripts. |
| These actions will likely all be replaced by mach commands someday. |
| |
| buildsymbols |
| Create a symbols archive for the current build. |
| |
| This must be performed after a successful build. |
| |
| check |
| Run build system tests. |