This directory contains a partial implementation of the xlocale APIs for
Solaris.  Some portions are lifted from FreeBSD libc, and so are covered by a
2-clause BSD license instead of the MIT/UUIC license that the rest of libc++ is
distributed under.
