# External Libraries

The preferred method to using external dependencies is the
[Bazel](http://bazel.io) [WORKSPACE](../WORKSPACE) file. For situations where
that workflow is not well supported, this directory contains copies of libraries
that belong to external sources.
