create_test_sourcelist: Suppress MSVC warnings in test driver (#15066)

Suggested-by: Ken Moreland <kmorel@sandia.gov>
FindMPI: Honor MPI_HOME for MPIEXEC (#14347)

We already use MPI_HOME and ENV{MPI_HOME} as hints for the location
of the MPI compilers.  Do the same for mpiexec, and then use the
location of mpiexec as a hint to find the compilers.
VS: Re-arrange WriteExtraSource to support tool configuration

Add a code path to write the tool open and close elements separately
so that we can add content in between to configure it.
VS: Add a source file property to mark content for Windows App deployment

Create a VS_DEPLOYMENT_CONTENT source file property, supporting
generator expressions, to compute whether a source file should be marked
as DeploymentContent or ExcludedFromBuild in Windows Phone and Windows
Store projects.

Inspired-by: Minmin Gong <minmin.gong@gmail.com>
VS: Add a source file property to set the hlsl shader type

Create a VS_SHADER_TYPE source file property.

Inspired-by: Gilles Khouzam <gillesk@microsoft.com>
Help: Add notes for topic 'vs-special-source-file-properties'
Makefile: Handle '#' in COMPILE_OPTIONS (#15070)

Teach the Makefile generators to escape '#' characters on the right hand
side of variable assignments in flags.make.  This is needed for flags
like '-Wno-error=#warnings'.  Otherwise the make tool treats them as
comments and leaves them out of the _FLAGS variable value.

Add a case to the CompileOptions test covering '#' in a COMPILE_OPTIONS
value, at least on compilers where it is known to be supported.
CPackIFW: Revise this generator

CPack IFW generator updates:
- Group now can have script;
- Root package (for monolithic or one package installers) can be
  configured from group.

CMake updates:
- Native installation (no Unspecified component).
CMake Nightly Date Stamp
cmake-gui: Pass CMAKE_SYSTEM_VERSION from cross-compile configuration

Although this value can be configured in the dialog, it was simply not
passed to the project as CMAKE_SYSTEM_VERSION.  Fix that.
ExternalProject: Clarify SVN_REVISION format in docs (#15081)

Show the explicit '-r' that is required.
CMP0022: Fix version documented to support LINK_PUBLIC/LINK_PRIVATE

These have been available since 2.8.7, not 2.8.9 as the docs said.
Merge branch 'doc-CMP0022-compat-version-typo' into release
Merge topic 'doc-CMP0022-compat-version-typo'

91857e04 CMP0022: Fix version documented to support LINK_PUBLIC/LINK_PRIVATE
Merge branch 'release'
cmIDEOptions: Add an AppendFlag overload to append multiple values
cmIDEOptions: Add HasFlag method to test if a flag is set
VS: Refactor include directory slash conversion

Convert each include directory to windows slashes once instead of
repeating it each time they are written out to the project file.
VS: Refactor include directory generation in .vcxproj files

Use the cmVisualStudioGeneratorOptions flag map to add the
AdditionalIncludeDirectories element to the project file.
Move appending of %(AdditionalIncludeDirectories) to the
locations that populate the flag vectors instead of where
they are written out.
cmLocalVisualStudio7Generator: Rename local 'lang' var

In the WriteGroup method, rename the 'lang' var to 'ppLang' since
it is specifically for the preprocessor definitions language selection.