diff --git a/docs/build.tex b/docs/build.tex
index 6ed4991..e8b564f 100644
--- a/docs/build.tex
+++ b/docs/build.tex
@@ -188,6 +188,65 @@
 Like the Linux build, you should now be able to run \texttt{examples/simple\_bundle\_adjuster}.
 
 
+\section{Building on Windows with Visual Studio}
+On Windows, we support building with Visual Studio 2010 or newer. Note that the
+Windows port is less featureful and less tested than the Linux or Mac OS X
+versions due to the unavaliability of SuiteSparse and CXSparse. Building is
+also more involved since there is no automated way to install the dependencies.
+
+\begin{enumerate}
+  \item Make a toplevel directory for deps \& build \& src somewhere: \texttt{ceres/}
+  \item Get dependencies; unpack them as subdirectories in \texttt{ceres/}
+        (\texttt{ceres/eigen}, \texttt{ceres/glog}, etc)
+        \begin{itemize}
+          \item Eigen 3.1 from eigen.tuxfamily.org (needed on Windows; 3.0.x will not
+                work). There is no need to build anything; just unpack the source
+                tarball.
+          \item Goolge Log. Open up the Visual Studio solution and build it.
+          \item Goolge Flags. Open up the Visual Studio solution and build it.
+        \end{itemize}
+  \item Unpack the Ceres tarball into \texttt{ceres}. For the tarball, you
+        should get a directory inside \texttt{ceres} similar to
+        \texttt{ceres-solver-1.3.0}. Alternately, checkout Ceres via git to get
+        \texttt{ceres-solver.git} inside \texttt{ceres}.
+  \item Install CMake.
+  \item Make a dir \texttt{ceres/ceres-bin} (for an out-of-tree build)
+  \item Run CMake; select the \texttt{ceres-solver-X.Y.Z} or
+        \texttt{ceres-solver.git} directory for the CMake file. Then select the
+        \texttt{ceres-bin} for the build dir.
+  \item Try running "Configure". It won't work. It'll show a bunch of options.
+        You'll need to set:
+        \begin{itemize}
+        \item \texttt{GLOG\_INCLUDE}
+        \item \texttt{GLOG\_LIB}
+        \item \texttt{GFLAGS\_LIB}
+        \item \texttt{GFLAGS\_INCLUDE}
+        \end{itemize}
+        to the appropriate place where you unpacked/built them.
+  \item You may have to tweak some more settings to generate a MSVC project.
+        After each adjustment, try pressing Configure \& Generate until it
+        generates successfully.
+  \item Open the solution and build it in MSVC
+\end{enumerate}
+
+To run the tests, select the \texttt{RUN\_TESTS} target and hit "Build RUN\_TESTS" from the build menu.
+
+Like the Linux build, you should now be able to run \texttt{examples/simple\_bundle\_adjuster}.
+
+Notes:
+\begin{itemize}
+\item The default build is Debug; consider switching it to release mode.
+\item Currently \texttt{system\_test} is not working properly.
+\item Building Ceres as a DLL is not supported; patches welcome.
+\item CMake puts the resulting test binaries in ceres-bin/examples/Debug by
+      default.
+\item The solvers supported on Windows are \texttt{DENSE\_QR},
+      \texttt{DENSE\_SCHUR}, \texttt{CGNR}, and \texttt{ITERATIVE\_SCHUR}.
+\item We're looking for someone to work with upstream SuiteSparse to port their
+      build system to something sane like CMake, and get a supported Windows
+      port.
+\end{itemize}
+
 \section{Compiler Flags to use when building your own applications}
 \label{sec:compiler-flags}
 TBD
@@ -255,3 +314,4 @@
 -DOPENMP=OFF.
 \end{minted}
 \end{enumerate}
+
