Bug 1874684 - Part 28: Return DateDuration from DifferenceISODateTime. r=mgaudet
[gecko.git] / remote / doc / Building.md
blob210510cc1452cde30d9ae933a645bbab2d9dfbe0
1 # Building
3 The Remote Agent is included in the default Firefox build, but only
4 ships on the Firefox Nightly release channel:
6 ```shell
7 % ./mach run --remote-debugging-port
8 ```
10 The source code can be found under [remote/ in central].
12 There are two build modes to choose from:
14 ## Full build mode
16 The Remote Agent is included when you build in the usual way:
18 ```shell
19 % ./mach build
20 ```
22 When you make changes to XPCOM component files you need to rebuild
23 in order for the changes to take effect.  The most efficient way to
24 do this, provided you haven’t touched any compiled code (C++ or Rust):
26 ```shell
27 % ./mach build faster
28 ```
30 Component files include the likes of components.conf,
31 RemoteAgent.manifest, moz.build files, and jar.mn.
32 All the JS modules (files ending with `.sys.mjs`) are symlinked into
33 the build and can be changed without rebuilding.
35 You may also opt out of building all the WebDriver specific components
36 ([Marionette], and the Remote Agent) by setting the following flag in
37 your [mozconfig]:
39 ```make
40 ac_add_options --disable-webdriver
41 ```
43 ## Artifact mode
45 You may also use [artifact builds] when working on the Remote Agent.
46 This fast build mode downloads pre-built components from the Mozilla
47 build servers, rendering local compilation unnecessary.  To use
48 them, place this in your [mozconfig]:
50 ```make
51 ac_add_options --enable-artifact-builds
52 ```
54 [remote/ in central]: https://searchfox.org/mozilla-central/source/remote
55 [mozconfig]: /build/buildsystem/mozconfigs.rst
56 [artifact builds]: /contributing/build/artifact_builds.rst
57 [Marionette]: /testing/marionette/index.rst