Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(223)

Side by Side Diff: docs/closure_compilation.md

Issue 1776423002: Closure: update doc to advocate for v2 and deprecate v1 (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: spelling nit Created 4 years, 9 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
« no previous file with comments | « no previous file | no next file » | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 # Closure Compilation 1 # Closure Compilation
2 2
3 ## I just need to fix the compile! 3 ## I just need to fix the compile!
4 4
5 To locally run closure compiler like the bots, do this: 5 ### Pre-requisites
6 6
7 You'll need Java 7 (preferably the OpenJDK version). To install on Ubuntu:
7 ```shell 8 ```shell
8 cd $CHROMIUM_SRC 9 sudo apt-get install openjdk-7-jre
9 # sudo apt-get install openjdk-7-jre # may be required 10 ```
10 GYP_GENERATORS=ninja tools/gyp/gyp --depth . third_party/closure_compiler/compil ed_resources.gyp 11
12 On Mac or Windows, visit:
13 [http://www.oracle.com/technetwork/java/javase/downloads/index.html](http://www. oracle.com/technetwork/java/javase/downloads/index.html)
14
15 ### Using ninja to compile the code
16
17 We use GYP and ninja as our build system. To generate the ninja files from GYP:
18 ```shell
19 # notice the 2 in compiled_resources.gyp
20 GYP_GENERATORS=ninja tools/gyp/gyp --depth . third_party/closure_compiler/compil ed_resources2.gyp
21 ```
22
23 To compile the JavaScript:
24 ```shell
11 ninja -C out/Default 25 ninja -C out/Default
12 ``` 26 ```
13 27
14 To run the v2 gyp format, change the last 2 lines to: 28 The output should look something like this:
29 ```shell
30 ninja: Entering directory `out/Default/'
31 [30/106] ACTION Compiling chrome/browser/resources/md_history/constants.js
32 ```
15 33
34 To generate and run the **deprecated** v1 gyp format, remove the "2" from "compi led_resources2.gyp":
16 ```shell 35 ```shell
17 # notice the 2 in compiled_resources2.gyp 36 $ GYP_GENERATORS=ninja tools/gyp/gyp --depth . third_party/closure_compiler/comp iled_resources.gyp
18 GYP_GENERATORS=ninja tools/gyp/gyp --depth . third_party/closure_compiler/compil ed_resources2.gyp 37 ```
38
39 Compiling works the same way for both v1 and v2 systems:
40 ```shell
19 ninja -C out/Default 41 ninja -C out/Default
dpapad 2016/03/09 20:19:22 Nit(optional): You might want to add a note of *ne
Dan Beam 2016/03/09 21:53:55 Done.
20 ``` 42 ```
21 43
22 ## Background 44 ## Background
23 45
24 In C++ and Java, compiling the code gives you _some_ level of protection against 46 In C++ and Java, compiling the code gives you _some_ level of protection against
25 misusing variables based on their type information. JavaScript is loosely typed 47 misusing variables based on their type information. JavaScript is loosely typed
26 and therefore doesn't offer this safety. This makes writing JavaScript more 48 and therefore doesn't offer this safety. This makes writing JavaScript more
27 error prone as it's _one more thing_ to mess up. 49 error prone as it's _one more thing_ to mess up.
28 50
29 Because having this safety is handy, Chrome now has a way to optionally 51 Because having this safety is handy, Chrome now has a way to optionally
(...skipping 249 matching lines...) Expand 10 before | Expand all | Expand 10 after
279 'jscomp_error=duplicate', 301 'jscomp_error=duplicate',
280 'jscomp_error=misplacedTypeAnnotation', 302 'jscomp_error=misplacedTypeAnnotation',
281 ], 303 ],
282 'disabled_closure_args': [], # remove the disabled closure args for more strict compilation 304 'disabled_closure_args': [], # remove the disabled closure args for more strict compilation
283 }, 305 },
284 'includes': ['../third_party/closure_compiler/compile_js.gypi'], 306 'includes': ['../third_party/closure_compiler/compile_js.gypi'],
285 }, 307 },
286 ], 308 ],
287 } 309 }
288 ``` 310 ```
OLDNEW
« no previous file with comments | « no previous file | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698