Bug 1495593 - Use './mach' instead of 'mach' in tup docs; r=chmanchester
authorMike Shal <mshal@mozilla.com>
Mon, 01 Oct 2018 22:55:44 +0000
changeset 494917 0b4d8a1ecc764f1bd863641ef5c3548919345963
parent 494916 badcfa4ff756cf9b074d31d2d7c7003396337dcb
child 494918 1f4d7ab6cd6daceaa33c294c7c078ac0ccb7f708
push id9984
push userffxbld-merge
push dateMon, 15 Oct 2018 21:07:35 +0000
treeherdermozilla-beta@183d27ea8570 [default view] [failures only]
perfherder[talos] [build metrics] [platform microbench] (compared to previous push)
reviewerschmanchester
bugs1495593
milestone64.0a1
first release with
nightly linux32
nightly linux64
nightly mac
nightly win32
nightly win64
last release without
nightly linux32
nightly linux64
nightly mac
nightly win32
nightly win64
Bug 1495593 - Use './mach' instead of 'mach' in tup docs; r=chmanchester MozReview-Commit-ID: AXsQFqdIjqF Differential Revision: https://phabricator.services.mozilla.com/D7351
build/docs/tup.rst
--- a/build/docs/tup.rst
+++ b/build/docs/tup.rst
@@ -8,17 +8,17 @@ The Tup build backend is an alternative 
 build system <http://gittup.org/tup/>`_ is designed for fast and correct
 incremental builds. A top-level no-op build should be under 2 seconds, and
 clobbers should rarely be required. It is currently only available for Linux
 Desktop builds -- other platforms like Windows or OSX are planned for the
 future.
 
 As part of the mozbuild architecture, the Tup backend shares a significant
 portion of frontend (developer-facing) code in the build system. When using the
-Tup backend, ``mach build`` is still the entry point to run the build system,
+Tup backend, ``./mach build`` is still the entry point to run the build system,
 and moz.build files are still used for the build description. Familiar parts of
 the build system like configure and generating the build files (the
 ``Reticulating splines...`` step) are virtually identical in both backends. The
 difference is that ``mach`` invokes Tup instead of Make under the hood to do
 the actual work of determining what needs to be rebuilt. Tup is able to perform
 this work more efficiently by loading only the parts of the DAG that are
 required for an incremental build. Additionally, Tup instruments processes to
 see what files are read from and written to in order to verify that
@@ -27,40 +27,41 @@ dependencies are correct.
 For more detailed information on the rationale behind Tup, see the `Build
 System Rules and Algorithms
 <http://gittup.org/tup/build_system_rules_and_algorithms.pdf>`_ paper.
 
 Installation
 ============
 
 You'll need to install the Tup executable, as well as the nightly rust/cargo
-toolchain::
+toolchain (Note: Replace $topsrcdir with the path to your mozilla-central
+source tree)::
 
-   cd ~/.mozbuild && mach artifact toolchain --from-build linux64-tup
+   cd ~/.mozbuild && $topsrcdir/mach artifact toolchain --from-build linux64-tup
    rustup install nightly
    rustup default nightly
 
 Configuration
 =============
 
 Your mozconfig needs to describe how to find the executable if it's not in your
 PATH, and enable the Tup backend::
 
    export TUP=~/.mozbuild/tup/tup
    ac_add_options --enable-build-backends=Tup
 
 What Works
 ==========
 
 You should expect a Linux desktop build to generate a working Firefox binary
-from a ``mach build``, and be able to run test suites against it (eg:
+from a ``./mach build``, and be able to run test suites against it (eg:
 mochitests, xpcshell, gtest). Top-level incremental builds should be fast
 enough to use them during a regular compile/edit/test cycle. If you wish to
 stop compilation partway through the build to more quickly iterate on a
-particular file, you can expect ``mach build objdir/path/to/file.o`` to
+particular file, you can expect ``./mach build objdir/path/to/file.o`` to
 correctly produce all inputs required to build file.o before compiling it. For
 example, you don't have to run the build system in various subdirectories to
 get generated headers built in the right order.
 
 Currently Unsupported / Future Work
 ===================================
 
 There are a number of features that you may use in the Make backend that are