Add notes on using ccache

* Don't provide notes for ccache on MacOS
* Provide a link on the downloading page to the initializing
  page so that users can set the correct after
  they have ccache.

Change-Id: Ice1898c7464b25e1ddba7ee494d2b063c75d612c
diff --git a/src/source/downloading.md b/src/source/downloading.md
index 174f008..6a199c7 100644
--- a/src/source/downloading.md
+++ b/src/source/downloading.md
@@ -115,6 +115,8 @@
 
     $ git tag -v TAG_NAME
 
+If you haven't [set up ccache](initializing.html#ccache) yet,
+now would be a good time to do it.
 
 # Next: Build the code #
 
diff --git a/src/source/initializing.md b/src/source/initializing.md
index a5a2df5..ce414e9 100644
--- a/src/source/initializing.md
+++ b/src/source/initializing.md
@@ -127,6 +127,32 @@
 Lucid Lynx (10.04.x LTS). Other versions of Ubuntu or other
 variants of GNU/linux might require different configurations.
 
+<a name="ccache"></a>
+## Setting up ccache ##
+
+You can optionally tell the build to use the ccache compilation tool.
+Ccache acts as a compiler cache that can be used to speed-up rebuilds.
+This works very well if you do "make clean" often, or if you frequently
+switch between different build products.
+
+Put the following in your .bashrc or equivalent.
+
+    export USE_CCACHE=1
+
+By default the cache will be stored in ~/.ccache.
+If your home directory is on NFS or some other non-local filesystem,
+you will want to specify the directory in your .bashrc as well.
+
+    export CCACHE_DIR=<path-to-your-cache-directory>
+
+The suggested cache size is 50-100GB.
+You will need to run the following command once you have downloaded
+the source code.
+
+    prebuilt/linux-x86/ccache/ccache -M 50G
+
+This setting is stored in the CCACHE_DIR and is persistent.
+
 
 # Setting up a Mac OS X build environment #