InstallRequiredSystemLibraries: MBCS MFC is optional on VS 12 (#14903)

The MBCS (Multi-Byte Character Set) has been deprecated with VS 2013,
and MSVC no longer ships with an MBCS-version of MFC by default.
However, it can be downloaded as an add-on.

Teach InstallRequiredSystemLibraries to install the MBCS MFC only
for VS < 12 or if it happens to exist on the system.
Merge branch 'InstallRequiredSystemLibraries-vs12-mfc' into release
KWSys SystemInformation: Include backtrace APIs whenever we use them

Include execinfo.h, cxxabi.h, and dlfcn.h under the same conditions
under which we use the APIs from them.  Move their inclusion out of
OS-specific blocks.
Merge branch 'backport-kwsys-compile-fix' into release
CompileFlags: Test for C++ features after selecting flags

Some flags we select may affect availability of C++ features.
CompileFlags: Add -AA +hpxstd98 on HP-UX 11.11 with aCC

These flags are needed to enable support for C++98.  Also teach the
'bootstrap' script to add them if necessary.
CompileFlags: add better selection which aCC version gets -AA +hpxstd98 flags
Merge branch 'hpux-compile' into release
FindCurses: Honor CURSES_NEED_NCURSES when curses is found

Take our CURSES_USE_NCURSES code path when CURSES_NEED_NCURSES is
enabled even if CURSES_CURSES_LIBRARY also happens to be found.

Applied-by: Rolf Eike Beer <eike@sf-mail.de>
FindCurses: Detect and satisfy ncurses dependency on tinfo

When ncurses is built with USE=tinfo we need to find "tinfo" as a
dependency of the main library.  Otherwise 'cbreak' is missing:

  ld: ...: undefined reference to symbol 'cbreak'
  ld: note: 'cbreak' is defined in DSO /lib/libtinfo.so.5 so try adding
            it to the linker command line

See https://bugs.gentoo.org/show_bug.cgi?id=468622 for more information.

Applied-by: Rolf Eike Beer <eike@sf-mail.de>
Merge branch 'ncurses-tinfo' into release
ctest_build: Do not crash on bad generator name

If creation of the global generator fails, return early with an error
message instead of trying to use the generator and crashing.

Add a CTestTestBadGenerator test to cover this case.

Reported-by: Mathieu Malaterre <malat@debian.org>
Bug-Debian: http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=747306
Merge branch 'ctest-bad-generator' into release
cmake-gui: Fix desktop file icon configuration

Drop the icon file extension.  This fixes the desktop file validation
message:

 "CMakeSetup32.png" for key "Icon" in group "Desktop Entry" is an icon
 name with an extension, but there should be no extension as described in
 the Icon Theme Specification if the value is not an absolute path

Applied-by: Rolf Eike Beer <eike@sf-mail.de>
Merge branch 'desktop-icon' into release
VS: Fix /MANIFESTUAC:NO linker option mapping

There are no versions of /MANIFESTUAC:NO where addition values are
appended.  Remove both of the MANIFESTUAC:NO entries from our flag
tables and replace them with one which would set EnableUAC to false and
immediately stop processing the /MANIFESTUAC:NO option.
Merge branch 'vs-fix-MANIFESTUAC' into release
cmTarget: Drop unused GetProperty signature

No callers use the second "scope" argument.  Drop this signature and
hard-code the default parameter value internally.
cmTarget: Evaluate CMP0026 in calling context

This policy should be checked at the call site that tries to access the
LOCATION property, not the directory scope containing the target.
Thread the caller context through cmTarget::GetProperty to use for
checking the policy setting and emitting a diagnostic with proper
backtrace.

Extend the RunCMake.CMP0026 test with a cross-directory case.
Merge branch 'backport-target-property-policy-context' into release