diff options
author | Matt A. Tobin <mattatobin@localhost.localdomain> | 2018-02-02 04:16:08 -0500 |
---|---|---|
committer | Matt A. Tobin <mattatobin@localhost.localdomain> | 2018-02-02 04:16:08 -0500 |
commit | 5f8de423f190bbb79a62f804151bc24824fa32d8 (patch) | |
tree | 10027f336435511475e392454359edea8e25895d /build/docs/mozbuild | |
parent | 49ee0794b5d912db1f95dce6eb52d781dc210db5 (diff) | |
download | UXP-5f8de423f190bbb79a62f804151bc24824fa32d8.tar UXP-5f8de423f190bbb79a62f804151bc24824fa32d8.tar.gz UXP-5f8de423f190bbb79a62f804151bc24824fa32d8.tar.lz UXP-5f8de423f190bbb79a62f804151bc24824fa32d8.tar.xz UXP-5f8de423f190bbb79a62f804151bc24824fa32d8.zip |
Add m-esr52 at 52.6.0
Diffstat (limited to 'build/docs/mozbuild')
-rw-r--r-- | build/docs/mozbuild/dumbmake.rst | 38 | ||||
-rw-r--r-- | build/docs/mozbuild/index.rst | 41 |
2 files changed, 79 insertions, 0 deletions
diff --git a/build/docs/mozbuild/dumbmake.rst b/build/docs/mozbuild/dumbmake.rst new file mode 100644 index 000000000..7840695ad --- /dev/null +++ b/build/docs/mozbuild/dumbmake.rst @@ -0,0 +1,38 @@ +dumbmake +======== + +*dumbmake* is a simple dependency tracker for make. + +It turns lists of make targets into longer lists of make targets that +include dependencies. For example: + + netwerk, package + +might be turned into + + netwerk, netwerk/build, toolkit/library, package + +The dependency list is read from the plain text file +`topsrcdir/build/dumbmake-dependencies`. The format best described by +example: + + build_this + when_this_changes + +Interpret this to mean that `build_this` is a dependency of +`when_this_changes`. More formally, a line (CHILD) indented more than +the preceding line (PARENT) means that CHILD should trigger building +PARENT. That is, building CHILD will trigger building first CHILD and +then PARENT. + +This structure is recursive: + + build_this_when_either_change + build_this_only_when + this_changes + +This means that `build_this_when_either_change` is a dependency of +`build_this_only_when` and `this_changes`, and `build_this_only_when` +is a dependency of `this_changes`. Building `this_changes` will build +first `this_changes`, then `build_this_only_when`, and finally +`build_this_when_either_change`. diff --git a/build/docs/mozbuild/index.rst b/build/docs/mozbuild/index.rst new file mode 100644 index 000000000..86f38940b --- /dev/null +++ b/build/docs/mozbuild/index.rst @@ -0,0 +1,41 @@ +======== +mozbuild +======== + +mozbuild is a Python package providing functionality used by Mozilla's +build system. + +Modules Overview +================ + +* mozbuild.backend -- Functionality for producing and interacting with build + backends. A build backend is an entity that consumes build system metadata + (from mozbuild.frontend) and does something useful with it (typically writing + out files that can be used by a build tool to build the tree). +* mozbuild.compilation -- Functionality related to compiling. This + includes managing compiler warnings. +* mozbuild.frontend -- Functionality for reading build frontend files + (what defines the build system) and converting them to data structures + which are fed into build backends to produce backend configurations. +* mozpack -- Functionality related to packaging builds. + +Overview +======== + +The build system consists of frontend files that define what to do. They +say things like "compile X" "copy Y." + +The mozbuild.frontend package contains code for reading these frontend +files and converting them to static data structures. The set of produced +static data structures for the tree constitute the current build +configuration. + +There exist entities called build backends. From a high level, build +backends consume the build configuration and do something with it. They +typically produce tool-specific files such as make files which can be used +to build the tree. + +Piecing it all together, we have frontend files that are parsed into data +structures. These data structures are fed into a build backend. The output +from build backends is used by builders to build the tree. + |