FindLATEX: Find ps2pdf with MikTeX.
VS: Map /Fd to ProgramDataBaseFileName for VS 7,8,9 (#14577)

Since commit 42ba1b08 (VS: Separate compiler and linker PDB files,
2013-04-05) the VS generators no longer add ProgramDataBaseFileName.
Therefore we should allow projects to do so by mapping the /Fd option.
For VS >= 10 our flag tables map /Fd to ProgramDataBaseFileName already.
Add the mapping for VS 7, 8, and 9.
cmDocumentation: Fix exit after help output format warnings

After warning that a help output format is no longer supported, fix the
return value from cmDocumentation::CheckOptions to indicate that it was
still a help option that was parsed.  Otherwise CMake moves on to treat
the help output file name as a source tree and complains that it does
not exist.
Notify extra generators about languages

Some generators can use the any enabled languages to add extra support
in the relevant build tool. One such is Eclipse since there are many
plugins available for various languages.
eclipse: Add natures for Eclipse based on enabled languages

Also adds support for the Java nature if Java is being used.
eclipse: Support custom natures via a global property

This is useful for enabling natures not recognized by the Eclipse
generator directly in a project.
cmGeneratorTarget: Make GetIncludeDirectories const.
KDevelop: Use GetLocation(0) instead of LOCATION property.

This can be migrated to use cmGeneratorTarget later.
Tests: Don't read the LOCATION property from build targets.
cmTarget: Make custom command accessors API const.

Add specific mutators instead of providing non-const refs.
cmTarget: Make GetTargetSourceFileFlags const.
cmTarget: Make GetInterfaceLinkLibraries const.
cmMakefile: Make IsAlias const.
cmMakefile: Make FindTarget const.
cmGlobalGenerator: Make NameResolvesToFramework const.
cmTarget: Make NameResolvesToFramework const.
cmTarget: Make GetExportMacro const.

The std::string member is only used for memory management.
cmTarget: Trivially make more API const.
CPackComponent: handle the documented PARENT_GROUP parameter
CMake Nightly Date Stamp