COMPMID-417: Instructions how to build with Windows

Change-Id: I2acabd57571d14527450ec416b7dda9d3c167d93
Reviewed-on: http://mpd-gerrit.cambridge.arm.com/81270
Tested-by: Kaizen <jeremy.johnson+kaizengerrit@arm.com>
Reviewed-by: Anthony Barbier <anthony.barbier@arm.com>
diff --git a/docs/00_introduction.dox b/docs/00_introduction.dox
index c4674a2..529667a 100644
--- a/docs/00_introduction.dox
+++ b/docs/00_introduction.dox
@@ -365,7 +365,7 @@
 
 @sa arm_compute::Scheduler::set
 
-@subsection S3_2_linux Linux
+@subsection S3_2_linux Building for Linux
 
 @subsubsection S3_2_1_library How to build the library ?
 
@@ -459,7 +459,7 @@
 
 @note If you built the library with support for both OpenCL and NEON you will need to link against OpenCL even if your application only uses NEON.
 
-@subsection S3_3_android Android
+@subsection S3_3_android Building for Android
 
 For Android, the library was successfully built and tested using Google's standalone toolchains:
  - arm-linux-androideabi-4.9 for armv7a (clang++)
@@ -537,7 +537,35 @@
 	adb shell /data/local/tmp/neon_convolution_aarch64
 	adb shell /data/local/tmp/cl_convolution_aarch64
 
-@subsection S3_4_cl_stub_library The OpenCL stub library
+@subsection S3_4_windows_host Building on a Windows host system
+
+Using `scons` directly from the Windows command line is known to cause
+problems. The reason seems to be that if `scons` is setup for cross-compilation
+it gets confused about Windows style paths (using backslashes). Thus it is
+recommended to follow one of the options outlined below.
+
+@subsubsection S3_4_1_ubuntu_on_windows Bash on Ubuntu on Windows
+
+The best and easiest option is to use 
+<a href="https://msdn.microsoft.com/en-gb/commandline/wsl/about">Ubuntu on Windows</a>. 
+This feature is still marked as *beta* and thus might not be available.
+However, if it is building the library is as simple as opening a *Bash on
+Ubuntu on Windows* shell and following the general guidelines given above.
+
+@subsubsection S3_4_2_cygwin Cygwin
+
+If the Windows subsystem for Linux is not available <a href="https://www.cygwin.com/">Cygwin</a> 
+can be used to install and run `scons`. In addition to the default packages
+installed by Cygwin `scons` has to be selected in the installer. (`git` might
+also be useful but is not strictly required if you already have got the source
+code of the library.) Linaro provides pre-built versions of 
+<a href="http://releases.linaro.org/components/toolchain/binaries/">GCC cross-compilers</a> 
+that can be used from the Cygwin terminal. When building for Android the
+compiler is included in the Android standalone toolchain. After everything has
+been set up in the Cygwin terminal the general guide on building the library
+can be followed.
+
+@subsection S3_5_cl_stub_library The OpenCL stub library
 
 In the opencl-1.2-stubs folder you will find the sources to build a stub OpenCL library which then can be used to link your application or arm_compute against.