Skip to content

Latest commit

 

History

History
187 lines (134 loc) · 6.73 KB

3.5.rst

File metadata and controls

187 lines (134 loc) · 6.73 KB

CMake 3.5 Release Notes

.. only:: html

  .. contents::

Changes made since CMake 3.4 include the following.

New Features

GUI

  • The :manual:`cmake-gui(1)` gained options to control warnings about deprecated functionality.
  • The :manual:`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 :manual:`cmake(1)`.
  • The :manual:`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.

Command-Line

  • The -Wdev and -Wno-dev :manual:`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 :manual:`cmake(1)` options.
  • The :manual:`cmake(1)` -E command-line tools copy, copy_if_different, copy_directory, and make_directory learned to support multiple input files or directories.

Commands

Variables

Properties

Modules

  • The :module:`ExternalProject` module learned a new GIT_REMOTE_NAME option to control the git clone --origin value.
  • The :module:`FindBoost` module now provides imported targets such as Boost::boost and Boost::filesystem.
  • The :module:`FindFLEX` module FLEX_TARGET macro learned a new DEFINES_FILE option to specify a custom output header to be generated.
  • The :module:`FindGTest` module now provides imported targets.
  • The :module:`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 :module:`FindOpenMP` module learned to support Clang.
  • The :module:`FindOpenSSL` module gained a new OPENSSL_MSVC_STATIC_RT option to search for libraries using the MSVC static runtime.
  • The :module:`FindPNG` module now provides imported targets.
  • The :module:`FindTIFF` module now provides imported targets.
  • A :module:`FindXalanC` module was introduced to find the Apache Xalan-C++ XSL transform processing library.
  • The :module:`FindXercesC` module now provides imported targets.

Platforms

CPack

Other

  • Warnings about deprecated functionality are now enabled by default. They may be suppressed with -Wno-deprecated or by setting the :variable:`CMAKE_WARN_DEPRECATED` variable to false.

Deprecated and Removed Features

  • The :manual:`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 :generator:`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.

Other Changes

  • The :generator:`Visual Studio 14 2015` generator learned to map the /debug:fastlink linker flag to the .vcxproj file property.
  • The :module:`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.