Build config

From MozillaWiki
Jump to: navigation, search

Build config refers to a module that governs the maintenance of mozilla-central's build system.

For active and future projects in the module, see /Projects.

Review Policy

In addition to files in known build config paths (such as /config and /build), the build config module's review policy extends to build-related files all over the tree. This additional review policy is as follows:

  1. All files evaluated by make (commonly Makefile.in, Makefile, and .mk) must be reviewed by a build config module peer.
  2. Additions and removals from existing *list* variables in make files are exempt from the previous rule.

If these policies are not followed, the build config module reserves the right to back out a patch for not adhering to the review policy.

Reasoning

Make files can be complex and hard to understand. Doing something wrong can mean regressing build times or introducing required clobber builds. History has taught us that a watchful eye is necessary to ensure bad make files aren't introduced into the build system.

When to ask for review

Please ask for build peer review as early as possible in a patch lifecycle, especially if you will be doing something new with the build system (such as introducing a new script that needs to run as part of the build). This helps ensure build peers won't be the long pole in the review process. Also, chances are that build system integration doesn't change too often during patch development and a build peer review can be carried forward to subsequent patch versions.

If you are not receiving a timely review, try pinging other build peers on the bug or requesting attention in #build. If all else fails, contact the build config module owner and/or their manager.