aboutsummaryrefslogtreecommitdiffhomepage
diff options
context:
space:
mode:
-rw-r--r--site/user/quick/gn.md42
1 files changed, 42 insertions, 0 deletions
diff --git a/site/user/quick/gn.md b/site/user/quick/gn.md
new file mode 100644
index 0000000000..93f7680a85
--- /dev/null
+++ b/site/user/quick/gn.md
@@ -0,0 +1,42 @@
+GN
+=====
+
+[GN](https://chromium.googlesource.com/chromium/src/tools/gn/)
+is a new meta-build system originally designed to replace GYP in Chromium.
+
+You can build Skia using GN in a limited number of configurations. We expect
+that as that limited number rises, GN will become the preferred, and then only,
+way to build Skia.
+
+Supported Features
+----------
+
+ * Linux, Mac
+ * Software rendering
+ * libskia.a, libskia.so
+ * DM, nanobench
+
+Quickstart
+----------
+
+Please check out Skia using the instructions in one of the other quick start
+guides. We diverge where they'd first run some command with "gyp" in it.
+
+<!--?prettify lang=sh?-->
+
+ # After gclient sync, run fetch-gn to make sure you have GN.
+ gclient sync && bin/fetch-gn
+
+ # Run GN to generate your build files. Some examples.
+ gn gen out/Release
+ gn gen out/Debug --args=is_debug=true
+ gn gen out/Clang --args='cc="clang" cxx="clang++"'
+ gn gen out/Shared --args=is_component_build=true
+
+ # Build
+ ninja -C out/Release
+ ninja -C out/Debug
+ ninja -C out/Clang
+ ninja -C out/Shared
+
+From here everything is pretty much business as usual.