aboutsummaryrefslogtreecommitdiffhomepage
path: root/site/user/quick/nacl.md
diff options
context:
space:
mode:
authorGravatar hcm <hcm@google.com>2015-01-08 10:43:34 -0800
committerGravatar Commit bot <commit-bot@chromium.org>2015-01-08 10:43:34 -0800
commit343c2f4dfbabb9cadacd524e07006b1adc9446c2 (patch)
treed5b43c8a6f60c3eadd2fc07d633a450ff62cfbab /site/user/quick/nacl.md
parent36a86db5f9eed6ce114090bd842f0156bf7c5eca (diff)
Adding user doc section and core files for new site
- Updated QSGs with relative links to download page, removed outdated and googler-only iOS instructions. - Will add "contributing" page and update project roles link in next batch with developer section Preview link: http://skiadocs.com:8000/user/quick/android?cl=834353003 BUG=skia: Review URL: https://codereview.chromium.org/834353003
Diffstat (limited to 'site/user/quick/nacl.md')
-rw-r--r--site/user/quick/nacl.md93
1 files changed, 93 insertions, 0 deletions
diff --git a/site/user/quick/nacl.md b/site/user/quick/nacl.md
new file mode 100644
index 0000000000..2d88d8878e
--- /dev/null
+++ b/site/user/quick/nacl.md
@@ -0,0 +1,93 @@
+NaCl (Experimental)
+===================
+
+Important Notes
+---------------
+
+ * This process has only been verified to work on Linux
+ * Skia for NaCl is new and currently under development. Therefore, some features are not (yet) supported:
+ * GPU backend
+ * Fonts - Currently, NaCl has no way to access system fonts. This means
+ that text drawn in Skia will not display. A Pepper font API is in the
+ works and should be available in the near future, but for now your best
+ bet is to either package font data with your nexe or to send font data
+ from javascript to your plugin at runtime. Note that this will be the
+ case with any graphics library in NaCl until the font API is finished.
+
+Prerequisites
+-------------
+
+Execute the following commands in whatever directory you want to hold the NaCl SDK directory:
+
+ wget http://storage.googleapis.com/nativeclient-mirror/nacl/nacl_sdk/nacl_sdk.zip
+ unzip nacl_sdk.zip
+ rm nacl_sdk.zip
+ nacl_sdk/naclsdk update pepper_32
+ export NACL_SDK_ROOT=/path/to/nacl_sdk
+
+Check out the Skia source
+-------------------------
+
+We use the "gclient" script (part of the depot_tools toolkit) to manage the
+Skia source code. Follow the instructions at
+http://www.chromium.org/developers/how-tos/depottools to get the gclient
+script from depot_tools.
+
+Instead of checking out trunk directly you will use gclient to checkout the
+nacl directory, which will automatically pull the trunk directory for you.
+Execute the following commands in whatever directory you want to be the root
+for your Skia on NaCl development:
+
+ gclient config https://skia.googlesource.com/skia.git
+ gclient sync
+
+Building the Skia libraries for NaCl
+------------------------------------
+
+The nacl_make script is used to compile Skia targets for NaCl. It sets the
+appropriate environment variables, calls GYP to generate makefiles, and runs
+Make to build both 32 and 64-bit targets as required by NaCl. To build the
+Skia libraries, run the following from the trunk directory:
+
+ platform_tools/nacl/nacl_make skia_lib
+
+This will result in a set of static libraries being built into the out/nacl32
+and out/nacl64 directories. You can use these libraries in external NaCl
+apps.
+
+Building and running Skia's Apps in NaCl (Experimental)
+-------------------------------------------------------
+
+It is possible to run some of Skia's console apps in the browser.
+
+### Skia Unit Tests
+
+Build Skia tests from the trunk directory:
+
+ platform_tools/nacl/bin/nacl_make tests
+
+This will build the tests executable. We include a tiny HTTP server (borrowed
+from the NaCl SDK) in order to run the apps:
+
+ cd platform_tools/nacl
+ ./httpd.py
+
+The HTTP server runs on port 5103 by default. In Chrome, navigate to
+`http://localhost:5103/` and click on the link for "unit tests." After the
+module downloads, you should see the tests begin to run.
+
+### Sample App
+
+The sample app relies on the GPU backend. Therefore, it will compile but will not yet run.
+
+ platform_tools/nacl/bin/nacl_make SampleApp
+
+You can access the sample app at http://localhost:5103/SampleApp.
+
+### Debugger
+
+The debugger is currently in a partially-working state:
+
+ platform_tools/nacl/bin/nacl_make debugger
+
+You can access it at http://localhost:5103/debugger.