ExternalProject: Fix download retry logic

Do not check file's hash in download script.  If hash will not match
command ``file(DOWNLOAD ...)`` will fail with FATAL_ERROR, ``cmake -P``
will exit with unsuccessful code, and the build will stop.  Leave hash
checking to the existing implementation in the verify step.
VS: Teach VS >= 10 generator about Windows CE

When CMAKE_SYSTEM_NAME is 'WindowsCE':

* Set the Subsystem and EntryPointSymbol accordingly.
* When CMAKE_SYSTEM_VERSION is 8.0 (Windows CE 2013),
  select the CE800 toolset by default.
ExternalProject: Fix CMP0054 warning in _ep_parse_arguments

Fix the CMP0054 warning:

 CMake Warning (dev) at .../Modules/ExternalProject.cmake:242 (if):
   Policy CMP0054 is not set: Only interpret if() arguments as variables or
   keywords when unquoted.  Run "cmake --help-policy CMP0054" for policy
   details.  Use the cmake_policy command to set the policy and suppress this
   warning.

   Quoted keywords like "COMMAND" will no longer be interpreted as keywords
   when the policy is set to NEW.  Since the policy is not set the OLD
   behavior will be used.
 Call Stack (most recent call first):
   .../Modules/ExternalProject.cmake:1938 (_ep_parse_arguments)
   CMakeLists.txt:5 (ExternalProject_Add)

by avoiding a reference to "${key}" or "COMMAND" in quotes.
CMake Nightly Date Stamp
CheckPrototypeDefinition: Avoid if() auto-dereference

Convert from the old if(MATCHES) hack to if(DEFINED) to check whether
the result variable is already set.
Tests: Fix CMP0054 warnings

Hack the CMP0054 warning locally to be an error and run the test suite.
Resolve CMP0054 in Tests/* code as appropriate for each case.
Merge topic 'vs10-wince'

a3298f77 VS: Teach VS >= 10 generator about Windows CE
CMake Nightly Date Stamp
QtAutogen: Add source files to target when only AUTORCC is used.

Add missing entry to if condition.
Clang: Don't overwrite c++11 compile option value with c++14 flag.
Clang: Enable c++14 dialect flag with Clang 3.5.
Remove const char string comparison helper.

It is now unused.
Simplify use of binary_search.

A local string was created when dir was a const char*. Now dir is a
std::string already so the dirString is vestigal.
CMake Nightly Date Stamp
QtAutogen: Process all ui files in a source file (#14981).

Use a vector to store a list of matched ui_ includes, instead of
overwriting the previous match.
FindOpenSceneGraph: Do not add unfound OSG libs if not required
FindProtobuf: Make outputs depend on protoc executable

After updating from Protocol Buffers 2.5.0 to 2.6.0 compilation of the
generated source failed: "This file was generated by an older version of
protoc which is incompatible with your Protocol Buffer headers. Please
regenerate this file with a newer version of protoc.".

Turns out the source and headers generated by way of
FindProtobuf.cmake:PROTOBUF_GENERATE_CPP aren't updated. Adding a
dependency on the compiler executable fixes this issue.
enable_language: Fix error messages on missing modules (#15155)

In cmGlobalGenerator::EnableLanguage, fix error messages for missing
module files to actually name the missing module instead of using the
empty string returned by GetModulesFile.
FindGettext: Fix name of GETTEXT_PROCESS_POT_FILE in docs (#15162)

Rename GETTEXT_PROCESS_POT to GETTEXT_PROCESS_POT_FILE.

Patch-by: maahnat@gmail.com
CMake Nightly Date Stamp