Tests: Activate tests accidentally excluded from Xcode

The generator name is "Xcode", not "XCode".  Fix this typo.  Explicitly
exclude the SubDirSpaces test on Xcode because it does not work.  Also
tell the RunCMake.File_Generate test when Xcode is not multi-config so
it can exlcude the OutputConflict case.

Inspired-by: Daniele E. Domenichelli <daniele.domenichelli@iit.it>
Help: Identify more artifact types in QtHelp documentation.

Add identifiers for variables, properties, policies and modules.
This will allow QtCreator to show relevant documentation if it learns
more about the context of the contents of cmake files.
Tell generators about CMAKE_SYSTEM_NAME as soon as it is known

Add a cmGlobalGenerator::SetSystemName virtual method.  Call it from
cmGlobalGenerator::EnableLanguage as soon as CMAKE_SYSTEM_NAME is known.
This will give generators a chance to adapt themselves to the target
system.  Pass the cmMakefile instance to the method so that the
generator can update it accordingly.  Return early from EnableLanguage
if SetSystemName returns false.
VS: Refactor CMAKE_FORCE_*64 platform definitions

Remove the general infrastructure for these additional platform
definitions and hard-code the only two special cases that used
it.  They are only for historical reasons so no new such cases
should be added.
VS: Remove unused method from VS 9 generator
VS: Delay platform definitions until system name is known

Move the definition of CMAKE_VS_PLATFORM_NAME and other variables that
are not needed by CMakeDetermineSystem out of the AddPlatformDefinitions
method and into a SetSystemName method.  The latter may later use
CMAKE_SYSTEM_NAME to decide what platform-specific definitions to add.
VS: Delay detection of VS 10 Express 64-bit tools

Wait until SetSystemName when the CMAKE_SYSTEM_NAME is known.
Later the decision to use 64-bit tools may depend on it.
VS: Delay getting platform name in local generator

Ask the global generator during generation instead of trying
to store it up front.  Later the global generator may not know
the platform name when it is creating the local generator.
CMake Nightly Date Stamp
Encoding:  Fix a few encoding problems with ctest.

This also fixes some test failures on Windows when the
name of the build directory contains non-ascii characters.
Merge topic 'encoding-ctest-fixes'

09b2ac38 Encoding:  Fix a few encoding problems with ctest.
Merge topic 'identify-qthelp-artifacts'

376ba935 Help: Identify more artifact types in QtHelp documentation.
Merge topic 'fix_Xcode_generator_name'

3526478c Tests: Activate tests accidentally excluded from Xcode
Merge topic 'vs-MSTool-condition'

7a9909db VS: Make MS-tool-specific options conditional
Merge topic 'delay-generator-platform'

7a526c35 VS: Delay getting platform name in local generator
e7fdb44b VS: Delay detection of VS 10 Express 64-bit tools
6e176e6d VS: Delay platform definitions until system name is known
d3d9218a VS: Remove unused method from VS 9 generator
eeb60102 VS: Refactor CMAKE_FORCE_*64 platform definitions
ecb34faa Tell generators about CMAKE_SYSTEM_NAME as soon as it is known
VS: Teach VS >= 10 to recognize CMAKE_SYSTEM_NAME 'Android'

When CMAKE_SYSTEM_NAME is 'Android', check for an installation of
'NVIDIA Nsight Tegra Visual Studio Edition' and generate .vcxproj
files for the "Tegra-Android" platform.  Also make the installed
version available in a CMAKE_VS_NsightTegra_VERSION variable.
VS: Detect compiler id of Nsight Tegra-Android toolchains

Teach CMakeDetermineCompilerId to recognize the Tegra-Android platform
and generate a test project for Nsight Tegra tools.  Locate the full
path to CMAKE_<LANG>_COMPILER by computing it within the test project
build environment.

Also teach CMakeFindBinUtils that this variant of the Visual Studio
generator uses UNIX-like instead of MS-like archiving and linking tools.
VS: Teach vcxproj generation about the Tegra-Android platform

Complete the basic implementation of the VS Tegra-Android generators
by replacing parts of vcxproj files that are specific to MS tools
with settings defined for the NVIDIA Nsight Tegra tools.

Current limitations include:

* We have no "flag table" so flags will be passed in the additional
  options fields instead of mapped to the vcxproj elements defined
  by Nsight Tegra msbuild platform definition files.

* We have no interface to set the AndroidArch, AndroidStlType, or
  AndroidTargetAPI fields so defaults will be used.

* The Nsight Tegra msbuild platform definition files do not provide
  a working "Utility" target type so for add_custom_target we need
  to use a "StaticLibrary" target type and leave out ClCompile rules.

* There is also no target type for plain command-line executables
  so for add_executable we need to use a "DynamicLibrary" target.
  Full application bundles will likely require new CMake target
  properties (like WIN32_EXECUTABLE for Windows GUI executables).