Improve master-specific CMake behavior.
- Make GMX_BUILD_UNITTESTS independent of GMX_XML. It now gets it
default value based on whether libxml2 is found. Also, if it is
explicitly set, but libxml2 is not found, give a fatal error instead
of silently disabling the tests.
- Mark GMX_XML as advanced and make it a no-op that it currently is
(nothing in libgromacs actually depends on libxml2).
- Rename GMX_INTERNAL_BOOST to GMX_EXTERNAL_BOOST to match BLAS/LAPACK
settings. Set the default for it based on whether Boost is
actually found. Print the existing message on the first run if
GMX_EXTERNAL_BOOST was not explicitly set. Give a fatal error if
boost is not found and GMX_EXTERNAL_BOOST=ON instead of silently
changing to use the internal boost.
- Move installation rules etc. for boost towards the end of the
CMakeLists.txt file to use INCL_INSTALL_DIR in them.
Now, cached values for these variables really describe what is going to
get build. Also, explicit user choices are never overridden, but result
in fatal errors if they cannot be satisfied.
Change-Id: I5b3f93eecff2ccc4bf8d348392dd4ae30efd9f92