cmake: Fix --build crash on bad CMAKE_GENERATOR in cache

If we fail to create the generator named by CMAKE_GENERATOR, exit
with an error message instead of crashing.  While at it, fix the
wording of the error message when CMAKE_GENERATOR is not set.

Extend the RunCMake.CommandLine test with cases covering the
"cmake --build" option when the named directory does not provide
a CMakeCache.txt with a valid CMAKE_GENERATOR.
Merge branch 'fix-build-crash-on-bad-generator' into release
Help: Add placeholder documents for CTest Script variables

Provide a minimal explanation of each variable by simply naming
the corresponding ctest(1) setting and linking to the ctest(1)
manual.
Help: Convert CTest Script variable references to cross-references

In the ctest(1) manual and ctest_start() command documentation, convert
mentions of CTest Script variables to cross-references so they will be
rendered as links.
Merge topic 'doc-ctest-variables'

34c6fd3a Help: Convert CTest Script variable references to cross-references
de710f37 Help: Add placeholder documents for CTest Script variables
Encoding: Add setlocale() to applications.

See also bug #14934 where chinese characters could not be used with cpack.
CMake Nightly Date Stamp
Merge topic 'fix-build-crash-on-bad-generator'

44e2923f cmake: Fix --build crash on bad CMAKE_GENERATOR in cache
Merge branch 'release'
CTest: Rename coverage implementation for "Python" to "Cobertura"

The coverage.py tool writes out an XML that conforms to the Cobertura
Coverage tool standard.  Rename the cmParsePythonCoverage files to
instead be cmParseCoberturaCoverage.
CTest: Generalize Cobertura coverage format handling

Add support for Cobertura coverage files written by Java.

Add a test which uses the report from a Java run of Cobertura to calculate coverage.

In the documentation of CTEST_COVERAGE_COMMAND, give a sample .sh file to merge
the Cobertura .ser files and generate the XML report from the merged file.
Xcode: Rename internal variable {Platform => Generator}Toolset

The latter matches with CMAKE_GENERATOR_TOOLSET better.
VS: Split user- and generator-provided PlatformToolset

Divide the cmGlobalVisualStudio10Generator "PlatformToolset" member into
two members representing the generator-selected default toolset and the
user-specified CMAKE_GENERATOR_TOOLSET value.  Prefer the user-specified
value, if any, and then fall back to the generator-selected default.
Allow a toolchain file to specify a generator toolset

Delay use of CMAKE_GENERATOR_TOOLSET until the CMakeSystem.cmake
file has been configured and loaded during the first project() or
enable_language() command.  This gives the toolchain file named by
CMAKE_TOOLCHAIN_FILE a chance to set CMAKE_GENERATOR_TOOLSET.  This
point is still early enough to set the generator toolset prior to
the initialization of any languages that might use the toolset.

The cmake::GeneratorToolset member variable remains an indication
of what was specified by the -T option or loaded from the cache.
It does not need to be updated based on the toolchain file setting.
The cmMakefile::TryCompile can still pass cmake::GeneratorToolset
into the inner instance because the try-compiled project will do
platform and language initialization using the CMakeSystem module
configured for the outer project.

Extend the RunCMake.GeneratorToolset test with cases that use a
toolchain file to set CMAKE_GENERATOR_TOOLSET.
CMake Nightly Date Stamp
Help: Add missing external link marker.
Help: Document that file(GENERATE) re-writes only when needed.
Help: Add comma to assist parsing of ctest_build command docs.
WCDH: Issue a better message for version compatibility.
Project: Separate simulated compiler id from version detection.