OLD | NEW |
1 Mojo | 1 Mojo |
2 ==== | 2 ==== |
3 | 3 |
4 Mojo is an effort to extract a common platform out of Chrome's renderer and | 4 Mojo is an effort to extract a common platform out of Chrome's renderer and |
5 plugin processes that can support multiple types of sandboxed content, such as | 5 plugin processes that can support multiple types of sandboxed content, such as |
6 HTML, Pepper, or NaCl. | 6 HTML, Pepper, or NaCl. |
7 | 7 |
8 ## Set-up and code check-out | 8 ## Set-up and code check-out |
9 | 9 |
10 The instructions below only need to be done once. Note that a simple "git clone" | 10 The instructions below only need to be done once. Note that a simple "git clone" |
(...skipping 194 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
205 Because the dart analyzer is a bit slow, we don't run it unless the user | 205 Because the dart analyzer is a bit slow, we don't run it unless the user |
206 specifically asks for it. To run the dart analyzer against the list of dart | 206 specifically asks for it. To run the dart analyzer against the list of dart |
207 targets in the toplevel BUILD.gn file, run: | 207 targets in the toplevel BUILD.gn file, run: |
208 | 208 |
209 ``` | 209 ``` |
210 $ mojo/tools/mojob.py dartcheck | 210 $ mojo/tools/mojob.py dartcheck |
211 ``` | 211 ``` |
212 | 212 |
213 ## Run Mojo Shell | 213 ## Run Mojo Shell |
214 | 214 |
215 Devtools script `mojo_run` is a universal shell runner abstracting away the | 215 Devtools `mojo_run` is a universal shell runner abstracting away the differences |
216 differences between running on Linux and Android. Having built Mojo as | 216 between running on Linux and Android. Having built Mojo as described above, a |
217 described above, a demo app can be run as follows: | 217 demo app can be run as follows: |
218 | 218 |
219 ``` | 219 ``` |
220 mojo/devtools/common/mojo_run mojo:spinning_cube # Linux. | 220 mojo/devtools/common/mojo_run mojo:spinning_cube # Linux. |
221 mojo/devtools/common/mojo_run mojo:spinning_cube --android # Android. | 221 mojo/devtools/common/mojo_run mojo:spinning_cube --android # Android. |
222 ``` | 222 ``` |
223 | 223 |
224 Pass `--sky path_to_sky_file` to run a | |
225 [Sky](https://github.com/domokit/mojo/tree/master/sky) app on either platform: | |
226 ``` | |
227 mojo/devtools/common/mojo_run --sky sky/examples/raw/hello_world.dart | |
228 mojo/devtools/common/mojo_run --sky sky/examples/raw/hello_world.dart --android | |
229 ``` | |
230 | |
231 Passing the `-v` flag will increase the output verbosity. In particular, it will | 224 Passing the `-v` flag will increase the output verbosity. In particular, it will |
232 also print all arguments passed by `mojo_run` to the shell binary. | 225 also print all arguments passed by `mojo_run` to the shell binary. |
233 | 226 |
234 ### Chromoting | 227 For additional information refer to the built-in help and the |
235 | 228 [documentation](https://github.com/domokit/devtools/blob/master/README.md#runner
). |
236 Some Mojo apps (Sky apps in particular) will need the --use-osmesa flag to run | |
237 over [chromoting](https://support.google.com/chrome/answer/1649523?hl=en): | |
238 | |
239 ``` | |
240 mojo/devtools/common/mojo_run --sky sky/examples/raw/hello_world.dart --use-osme
sa | |
241 ``` | |
242 | 229 |
243 ### <a name="debugging"></a>Debugging, tracing, profiling | 230 ### <a name="debugging"></a>Debugging, tracing, profiling |
244 | 231 |
245 Devtools `mojo_debug` script allows you to interactively inspect a running | 232 Devtools `mojo_debug` allows you to interactively inspect a running shell, |
246 shell, collect performance traces and attach a gdb debugger. Refer to the | 233 collect performance traces and attach a gdb debugger. |
247 [documentation](https://github.com/domokit/devtools/blob/master/README.md#debugg
er) | 234 |
248 for details. | 235 For additional information refer to the built-in help and the |
| 236 [documentation](https://github.com/domokit/devtools/blob/master/README.md#debugg
er). |
249 | 237 |
250 ### Android set-up | 238 ### Android set-up |
251 | 239 |
252 #### Adb | 240 #### Adb |
253 | 241 |
254 For the Android tooling to work, you will need to have `adb` in your PATH. For | 242 For the Android tooling to work, you will need to have `adb` in your PATH. For |
255 that, you can either run: | 243 that, you can either run: |
256 ``` | 244 ``` |
257 source build/android/envsetup.sh | 245 source build/android/envsetup.sh |
258 ``` | 246 ``` |
(...skipping 13 matching lines...) Expand all Loading... |
272 running shell on the device) will not work unless the device is rooted and | 260 running shell on the device) will not work unless the device is rooted and |
273 running a userdebug build. For Googlers, [follow the instructions at this | 261 running a userdebug build. For Googlers, [follow the instructions at this |
274 link](http://go/mojo-internal-build-instructions). | 262 link](http://go/mojo-internal-build-instructions). |
275 | 263 |
276 ### Running manually on Linux | 264 ### Running manually on Linux |
277 | 265 |
278 If you wish to, you can also run the Linux Mojo shell directly with no wrappers: | 266 If you wish to, you can also run the Linux Mojo shell directly with no wrappers: |
279 ``` | 267 ``` |
280 ./out/Debug/mojo_shell mojo:spinning_cube | 268 ./out/Debug/mojo_shell mojo:spinning_cube |
281 ``` | 269 ``` |
OLD | NEW |