Changes made since CMake 3.4 include the following.
- The cmake-gui(1) gained options to control warnings about
deprecated functionality.
- The cmake-gui(1) learned an option to set the toolset
to be used with VS IDE and Xcode generators, much like the
existing -T option to cmake(1).
- The cmake-gui(1) gained a Regular Expression Explorer which
may be used to create and evaluate regular expressions in real-time.
The explorer window is available via the Tools menu.
- The -Wdev and -Wno-dev cmake(1) options now also enable
and suppress the deprecated warnings output by default.
- The suppression of developer warnings as errors can now be controlled with
the new -Werror=dev and -Wno-error=dev cmake(1) options.
- The cmake(1) -E command-line tools copy,
copy_if_different, copy_directory, and make_directory
learned to support multiple input files or directories.
- The VS_GLOBAL_<variable> target property is now implemented
for VS 2010 and above. Previously it worked only in VS 2008 and below.
- The ExternalProject module learned a new GIT_REMOTE_NAME
option to control the git clone --origin value.
- The FindBoost module now provides imported targets
such as Boost::boost and Boost::filesystem.
- The FindFLEX module FLEX_TARGET macro learned a
new DEFINES_FILE option to specify a custom output header
to be generated.
- The FindGTest module now provides imported targets.
- The FindGTK2 module, when GTK2_USE_IMPORTED_TARGETS is
enabled, now sets GTK2_LIBRARIES to contain the list of imported
targets instead of the paths to the libraries. Moreover it now sets
a new GTK2_TARGETS variable containing all the targets imported.
- The FindOpenMP module learned to support Clang.
- The FindOpenSSL module gained a new
OPENSSL_MSVC_STATIC_RT option to search for libraries using
the MSVC static runtime.
- The FindPNG module now provides imported targets.
- The FindTIFF module now provides imported targets.
- A FindXalanC module was introduced to find the
Apache Xalan-C++ XSL transform processing library.
- The FindXercesC module now provides imported targets.
- Warnings about deprecated functionality are now enabled by default.
They may be suppressed with -Wno-deprecated or by setting the
CMAKE_WARN_DEPRECATED variable to false.
- The cmake(1) -E time command now properly passes arguments
with spaces or special characters through to the child process. This
may break scripts that worked around the bug with their own extra
quoting or escaping.
- The Xcode generator was fixed to escape backslashes in
strings consistently with other generators. Projects that previously
worked around the inconsistecy with an extra level of backslashes
conditioned on the Xcode generator must be updated to remove the
workaround for CMake 3.5 and greater.
- The Visual Studio 14 2015 generator learned to map the
/debug:fastlink linker flag to the .vcxproj file property.
- The FindGTK2 module now configures the GTK2::sigc++ imported
target to enable c++11 on its dependents when using sigc++ 2.5.1 or higher.
- The precompiled Windows binary provided on cmake.org is now a
.msi package instead of an installer executable. One may need
to manually uninstall CMake versions lower than 3.5 before installing
the new package.