Merge branch 'ExternalProject-check-hash-before-download' into release
Fix link line order when shared libraries are de-duplicated

Since commit v3.1.0-rc1~227^2~1 (De-duplicate shared library targets in
generated link lines, 2014-07-30) we de-duplicate shared library targets
on the link line.  However, some toolchains will fail linking if an
executable is linking to a shared library that is not used directly and
a static library that depends on the shared one.  The linker may not
keep the reference to the shared library the first time and then the
symbols needed by the static library may not be found.

Fix this by reversing the direction of the for loop that removes the
duplicate shared libraries, in order to ensure that the last occurrence
of the library is left instead of the first one.

Extend Tests/Dependency with a case covering this behavior.  Create an
executable that links to a shared library and a static library but only
needs the shared library as a dependency of the static library.

Co-Author: Brad King <brad.king@kitware.com>
CMake Nightly Date Stamp
Suppress deprecation warnings for GetVersionEx

Visual Studio 12 (2013) deprecated GetVersionEx:

  warning C4996: 'GetVersionExW': was declared deprecated

in favor of either "versionhelpers.h" or VerifyVersionInfo, neither of
which exist in some of the older compilers we support.  Rather than
try to port conditionally to VerifyVersionInfo, simply suppress the
warning for now.
Merge topic 'fix-vs12-GetVersionEx-warning' into next

3a6c3599 Suppress deprecation warnings for GetVersionEx
dd563e1e CMake Nightly Date Stamp
curl: Disable warnings to avoid changing 3rd party code

Tell MSVC to use its lowest warning level inside curl sources.
Merge topic 'update-curl' into next

3dd26463 curl: Disable warnings to avoid changing 3rd party code
Merge topic 'fix_link-line-dedup_regression' into next

4db31095 Fix link line order when shared libraries are de-duplicated
Merge topic 'fix_link-line-dedup_regression'

4db31095 Fix link line order when shared libraries are de-duplicated
Merge topic 'ExternalProject-check-hash-before-download'

ee7405a6 ExternalProject: Restore logic to not download already-existing file
Merge branch 'fix_link-line-dedup_regression' into release
Merge branch 'release'
Merge branch 'master' into next
FindIntl: New module to find Gettext libintl

Add support for Sun/Uniforum/GNU gettext libintl.  This belongs in CMake
rather than upstream because:

* There are multiple upstreams (Sun, GNU).

* It may or may not be in the glibc C library depending
  upon the platform and build options used.

Although we already have a FindGettext module, that is for the tools.
This module is for the library, and is independent because it's
perfectly OK to use libintl without the gettext tools (and vice versa),
and they might not all be found.  Add cross references between the two
modules in notes to make the relationship clearer.
Merge topic 'add-FindIntl' into next

c5e797db FindIntl: New module to find Gettext libintl
Refactor and seperate search path construction for find commands

Prior to this commit, the set of search paths to traverse for find commands
was incrementally constructed.  This change allows each group of paths, i.e.
CMakeVariablePaths, UserHintsPaths, SystemEnvironmentPaths, etc. to be
constructed and manipulated independently, and then all combined togethor.
Encapsulate search path manipulation functions into a seperate class.

The functions for adding the various different types of paths have been
factored out into a new class, cmSearchPath.  It is to be used as a helper
container class for the various find_* commands.
Use containers of labeled search paths instead of individual members

Manage classes of search paths in labeled containers.  This removes the
need to have a seperate member variable for each type of search path, but
also allows path types to be grouped togethor in various different ways
and manipulated as subsets of the full set of search paths.
Merge topic 'refactor-search-path-construction' into next

e4483008 Use containers of labeled search paths instead of individual members
2a9ac4bd Encapsulate search path manipulation functions into a seperate class.
32922840 Refactor and seperate search path construction for find commands
Remove leftovers from an already merged parisc bug fix