BRL-CAD on Windows README
=========================

The usual way to build BRL-CAD for Windows is to use the CMake build
system generator and the Microsoft Visual Studio C++ (MSVC) compiler.
Recent versions of both (as of this writing, MSVC 2010 and CMake
2.8.6+) are recommended.  If generating an installer, the Nullsoft
Scriptable Install System (NSIS) tool is also required.

In principle, BRL-CAD can be built using CMake and environments like
Cygwin and/or Mingw/Msys, but the is largely untested and infrequently
supported.  Enhancements or bug reports are welcome.

To build with CMake and Visual Studio, the first step is to obtain the
BRL-CAD sources and create a build directory.  In principle, it is not
*required* to have a separate build directory, but with Windows and
Visual Studio this is the only tested configuration.  Once those the
sources are obtained and the build directory is created, run the CMake
application and specify the source and build directories.

Once CMake has the correct directory settings, select Configure.  If
this is the first time running Configure with this build directory,
CMake will prompt you to select a generator.  Look for your version of
Visual Studio and select it.  Configuration should now proceed.

It is normal for configuration to be a long process on Windows.  Once
it is complete, you should see a list of red highlighted entries
appear in the CMake interface.  Change any settings that appear to
need changing and press Configure again.  The second pass should be
shorter.  If no new red lines appear, the configuration is complete.

The final CMake step, after completing Configuration, is to select
Generate to create Visual Studio project files in the build directory.
Once this is done, you may quit CMake.

Navigate to your build directory.  You should see a BRLCAD solution
file for Visual Studio.  Double-click that file, and Visual Studio
should launch.  It will load the targets (a default configuration of
BRL-CAD on Windows will generate over 800 of them) and a large list of
targets will appear.  To build everything look for a target named
ALL_BUILD.  Start compiling that target.

Once compilation is successfully complete, you may want to produce an
NSIS installer.  If so, locate a target named PACKAGE and run it.  The
end result should be an .exe file capable of installing BRL-CAD.
