diff --git a/Help/release/3.3.rst b/Help/release/3.3.rst new file mode 100644 index 000000000..711400862 --- /dev/null +++ b/Help/release/3.3.rst @@ -0,0 +1,263 @@ +CMake 3.3 Release Notes +*********************** + +.. only:: html + + .. contents:: + +Changes made since CMake 3.2 include the following. + +* The :module:`CheckFortranCompilerFlag` module was introduced + to check ``Fortran`` compiler flags, much like the + :module:`CheckCCompilerFlag` module already does for ``C``. + +* The :command:`add_dependencies` command learned to allow dependencies + to be added to :ref:`interface libraries `. + Dependencies added to an interface library are followed transitively + in its place since the target itself does not build. + +* A new experimental :generator:`Green Hills MULTI` generator was + added on Windows. `Green Hills MULTI`_ is an IDE for embedded + real-time systems. + +.. _`Green Hills MULTI`: http://www.ghs.com/products/MULTI_IDE.html + +* On OS X the :manual:`cmake-gui(1)` no longer has the + ``Install For Command Line Use`` menu item. Instead there + is a ``How to Install For Command Line Use`` menu item + that shows an informational dialog box explaining how to + make the command line tools available. For example:: + + /Applications/CMake.app/Contents/bin/cmake-gui --install + +* The version of some Fortran compilers is now detected and stored in the + :variable:`CMAKE_Fortran_COMPILER_VERSION _COMPILER_VERSION>` + variable. + +* The :module:`CPackDeb` module learned a new + :variable:`CPACK_DEBIAN__PACKAGE_SHLIBDEPS` + variable to specify per-component use of ``dpkg-shlibdeps``. + +* The :module:`CPackDeb` module learned a new + :variable:`CPACK_DEBIAN__PACKAGE_DEPENDS` + option to specify per-component dependencies. + +* The :manual:`cpack(1)` ``IFW`` generator and the :module:`CPackIFW` + module learned to support Qt Framework Installer 2.0 tools. + +* The :module:`CPackRPM` module learned to package symbolic links + more cleanly and now supports directory symlinks with recent + ``rpmbuild`` versions. + +* The :module:`CPackRPM` module learned a new + :variable:`CPACK_RPM_ADDITIONAL_MAN_DIRS` variable to specify + directories containing man pages for the brp-compress RPM macro. + +* The :command:`ctest_build` and :command:`build_command` commands + no longer tell ``make`` tools to ignore errors with the ``-i`` option. + Previously this was done for :ref:`Makefile Generators` but not others. + See policy :policy:`CMP0061`. + +* The :manual:`ctest(1)` tool learned a new ``--repeat-until-fail `` + option to help find sporadic test failures. + +* Using the output of :command:`export()` with the :command:`install(FILES)` + command is no longer allowed. See policy :policy:`CMP0062` for details. + +* A :prop_tgt:`CROSSCOMPILING_EMULATOR` target property and supporting + :variable:`CMAKE_CROSSCOMPILING_EMULATOR` variable were introduced + to allow target platform binaries to run on the host during cross + compiling. + +* The :command:`execute_process` command learned to support specifying + the same file for ``OUTPUT_FILE`` and ``ERROR_FILE``. + +* It is now possible to export targets which populate the + :prop_tgt:`INTERFACE_SOURCES` target property using the + :command:`install(EXPORT)` and :command:`export()` commands. + +* The :prop_tgt:`_VISIBILITY_PRESET` and + :prop_tgt:`VISIBILITY_INLINES_HIDDEN` target properties now + affect compilation in sources of all target types. See + policy :policy:`CMP0063`. + +* The :module:`ExternalData` module learned a new + :variable:`ExternalData_NO_SYMLINKS` option to disable use of + symbolic links to populate the real data files and use copies + instead. + +* The :module:`ExternalData` module learned a new ``RECURSE:`` + option in ``DATA{}`` references specifying directories. + This allows an entire directory tree of associated files + to be matched. + +* The :module:`ExternalData` module learned a new URL template + placeholder ``%(algo:)`` to allow custom mapping from + algorithm name to URL component through configuration of new + :variable:`ExternalData_URL_ALGO__` variables. + This allows more flexibility in remote URLs. + +* The :module:`ExternalProject` module learned to replace tokens + like ```` in the ``BYPRODUCTS`` of each step. + +* The :module:`ExternalProject` module APIs learned to support + :manual:`generator expressions ` + when using ``LOG_*`` options and in CMake initial cache options. + +* The :command:`file(GLOB)` and :command:`file(GLOB_RECURSE)` commands + learned a new ``LIST_DIRECTORIES `` option to specify whether + the glob result should include directories. + +* The :module:`FindBoost` module now tracks the directories containing + libraries separately for RELEASE and DEBUG configurations. + +* The :command:`find_library`, :command:`find_path`, and :command:`find_file` + commands now search in installation prefixes derived from the ``PATH`` + environment variable. + +* The :module:`FindCUDA` module now defaults to using the static + CUDA runtime library if it is available. A new + ``CUDA_USE_STATIC_CUDA_RUNTIME`` option is offered to control + this behavior. + +* The :module:`FindMatlab` module was completely rewritten. It learned + about versions and components and to find Matlab in a more precise and + multiplatform way. The module now offers APIs to create mex extensions, + documentation, and unit tests. + +* The :command:`find_package` command no longer considers project + build trees recently configured in a :manual:`cmake-gui(1)`. + This was previously done only on Windows and is now never done. + The ``NO_CMAKE_BUILDS_PATH`` option is now ignored if given + and effectively always on. + Projects may populate the :ref:`User Package Registry` to aid + users building multiple dependent projects one after another. + +* The :module:`FindPackageHandleStandardArgs` module + ``FIND_PACKAGE_HANDLE_STANDARD_ARGS`` function now + always populates the both ``_FOUND`` + and ``_FOUND`` variables (the latter + for backwards compatibility). The ``FOUND_VAR`` + option is now ignored except to enforce its allowed + values. + +* The :module:`CTestCoverageCollectGCOV` module learned to support + the same ``CTEST_CUSTOM_COVERAGE_EXCLUDE`` option as the + :command:`ctest_coverage` command. + +* Add a new IN_LIST operator to if() that evaluates true + if a given element is contained in a named list. + +* The :command:`install(TARGETS)` command learned to support + generator expressions in the ``DESTINATION`` value. + +* The :module:`InstallRequiredSystemLibraries` module learned a new + ``CMAKE_INSTALL_SYSTEM_RUNTIME_COMPONENT`` option to specify the + installation component. + +* Linking to library files by a full path in an implicit linker search + directory (e.g. ``/usr/lib/libfoo.a``) no longer asks the linker to + search for the library (e.g. ``-lfoo``). See policy :policy:`CMP0060`. + +* The Makefile generators now add ``.DELETE_ON_ERROR`` to the + makefiles that contain the actual build rules for files on disk. + This tells GNU make to remove rule outputs when their recipe + modifies an output but fails. + +* With Makefile generators, the build-time progress output has been improved. + It no longer mixes progress and build rule messages during parallel builds. + The link rule messages now have progress and are displayed as bold green + instead of bold red (since red is often associated with an error message). + +* The :manual:`Compile Features ` functionality + is now aware of features supported by GNU compilers on Windows, versions + 4.4 through 5.0. + +* When building with GNU tools on Windows (MinGW tools), the + :command:`find_library` command will no longer consider + ``.dll`` files to be linkable libraries. All dynamic link + libraries are expected to provide separate ``.dll.a`` or + ``.lib`` import libraries. + +* The :generator:`Ninja` generator now requires that calls to the + :command:`add_custom_command` and :command:`add_custom_target` + commands use the ``BYPRODUCTS`` option to explicitly specify any + files generated by the custom commands that are not listed as + outputs (perhaps because their timestamps are allowed to be older + than the inputs). See policy :policy:`CMP0058`. + +* The :command:`add_definitions()` command no longer causes a + :prop_dir:`DEFINITIONS` directory property to be populated. See policy + :policy:`CMP0059`. + +* The :module:`CPackRPM` module learned a new + :variable:`CPACK_RPM__PACKAGE_ARCHITECTURE` variable + to specify a component-specific package architecture. + +* The :ref:`Makefile Generators` and the :generator:`Ninja` generator + learned to optionally run ``include-what-you-use`` along with the + compiler for ``C`` and ``CXX`` languages. See the + :variable:`CMAKE__INCLUDE_WHAT_YOU_USE` variable and + :prop_tgt:`_INCLUDE_WHAT_YOU_USE` target property for details. + +* A new ``COMPILE_LANGUAGE`` generator expression was introduced to + allow specification of compile options for target files based on the + :prop_sf:`LANGUAGE` of each source file. Due to limitations of the + underlying native build tools, this feature has varying support across + generators. See the :manual:`cmake-generator-expressions(7)` manual + for details. + +* The :manual:`cmake(1)` ``-E tar`` command learned a new + ``--format`` option to specify the archive format to + be written. + +* The :module:`UseSWIG` module ``SWIG_ADD_MODULE`` macro no + longer attaches the swig invocation custom command to the + ``.i`` source file in IDE projects. This is because only + one custom command can be safely attached to a given source + file, and adding multiple modules with the same ``.i`` file + for different languages requires more than one such command. + +* The :generator:`Visual Studio 10 2010` generator no longer checks + for running VS IDEs with the project open or asks them to reload. + This was originally done for VS 10 because it had been done for + VS 7 through 9 to avoid prompting for every project in a solution. + Since VS >= 10 allow the whole solution to reload at once they + do not need CMake to help them. + +* The :generator:`Visual Studio 6` generator is now deprecated + and will be removed in a future version of CMake. + +* The :generator:`Visual Studio 7` generator (.NET 2002) is now + deprecated and will be removed in a future version of CMake. + +* The :variable:`CMAKE_CFG_INTDIR` variable value for Visual Studio + 7, 8, and 9 is now ``$(ConfigurationName)`` instead of ``$(OutDir)``. + This should have no effect on the intended use cases of the variable. + +* With Visual Studio 7, 8, and 9 generators the value of the ``$(OutDir)`` + placeholder no longer evaluates to the configuration name. Projects + should use ``$(ConfigurationName)`` for that instead. + +* The :ref:`Visual Studio Generators` learned a new + :variable:`CMAKE_VS_INCLUDE_INSTALL_TO_DEFAULT_BUILD` option + to put the ``INSTALL`` target in the default build of a + solution (``.sln``) file. + +* The :ref:`Visual Studio Generators` learned to support ``.xaml`` + source files and automatically associate them with corresponding + ``.h`` and ``.cpp`` sources. + +* The CPack WIX generator learned the new + :prop_inst:`CPACK_START_MENU_SHORTCUTS`, + :prop_inst:`CPACK_DESKTOP_SHORTCUTS` and + :prop_inst:`CPACK_STARTUP_SHORTCUTS` installed file properties which can + be used to install shorcuts in the Start Menu, on the Desktop and + in the Startup Folder respectively. + +* The :prop_tgt:`XCODE_ATTRIBUTE_` target property learned + to support generator expressions. + +* On OS X, CMake learned to create XCTest bundles to test Frameworks + and App Bundles within Xcode. The :module:`FindXCTest` module + provides convenience functions to handle :prop_tgt:`XCTEST` bundles. diff --git a/Help/release/dev/ExternalData-no-symlinks.rst b/Help/release/dev/ExternalData-no-symlinks.rst deleted file mode 100644 index 9323cca62..000000000 --- a/Help/release/dev/ExternalData-no-symlinks.rst +++ /dev/null @@ -1,7 +0,0 @@ -ExternalData-no-symlinks ------------------------- - -* The :module:`ExternalData` module learned a new - :variable:`ExternalData_NO_SYMLINKS` option to disable use of - symbolic links to populate the real data files and use copies - instead. diff --git a/Help/release/dev/ExternalData-recursive-match.rst b/Help/release/dev/ExternalData-recursive-match.rst deleted file mode 100644 index 4d8c7899f..000000000 --- a/Help/release/dev/ExternalData-recursive-match.rst +++ /dev/null @@ -1,7 +0,0 @@ -ExternalData-recursive-match ----------------------------- - -* The :module:`ExternalData` module learned a new ``RECURSE:`` - option in ``DATA{}`` references specifying directories. - This allows an entire directory tree of associated files - to be matched. diff --git a/Help/release/dev/ExternalData-url-algo-map.rst b/Help/release/dev/ExternalData-url-algo-map.rst deleted file mode 100644 index baf661f65..000000000 --- a/Help/release/dev/ExternalData-url-algo-map.rst +++ /dev/null @@ -1,8 +0,0 @@ -ExternalData-url-algo-map -------------------------- - -* The :module:`ExternalData` module learned a new URL template - placeholder ``%(algo:)`` to allow custom mapping from - algorithm name to URL component through configuration of new - :variable:`ExternalData_URL_ALGO__` variables. - This allows more flexibility in remote URLs. diff --git a/Help/release/dev/ExternalProject-byproducts-tokens.rst b/Help/release/dev/ExternalProject-byproducts-tokens.rst deleted file mode 100644 index 20b4dd468..000000000 --- a/Help/release/dev/ExternalProject-byproducts-tokens.rst +++ /dev/null @@ -1,5 +0,0 @@ -ExternalProject-byproducts-tokens ---------------------------------- - -* The :module:`ExternalProject` module learned to replace tokens - like ```` in the ``BYPRODUCTS`` of each step. diff --git a/Help/release/dev/ExternalProject-genex.rst b/Help/release/dev/ExternalProject-genex.rst deleted file mode 100644 index 2c7bf8adb..000000000 --- a/Help/release/dev/ExternalProject-genex.rst +++ /dev/null @@ -1,6 +0,0 @@ -ExternalProject-genex ---------------------- - -* The :module:`ExternalProject` module APIs learned to support - :manual:`generator expressions ` - when using ``LOG_*`` options and in CMake initial cache options. diff --git a/Help/release/dev/FPHSA-ExactCase-name.rst b/Help/release/dev/FPHSA-ExactCase-name.rst deleted file mode 100644 index 675547cff..000000000 --- a/Help/release/dev/FPHSA-ExactCase-name.rst +++ /dev/null @@ -1,10 +0,0 @@ -FPHSA-ExactCase-name --------------------- - -* The :module:`FindPackageHandleStandardArgs` module - ``FIND_PACKAGE_HANDLE_STANDARD_ARGS`` function now - always populates the both ``_FOUND`` - and ``_FOUND`` variables (the latter - for backwards compatibility). The ``FOUND_VAR`` - option is now ignored except to enforce its allowed - values. diff --git a/Help/release/dev/FindBoost-per-config-libraries.rst b/Help/release/dev/FindBoost-per-config-libraries.rst deleted file mode 100644 index e6ef70fcf..000000000 --- a/Help/release/dev/FindBoost-per-config-libraries.rst +++ /dev/null @@ -1,5 +0,0 @@ -FindBoost-per-config-libraries ------------------------------- - -* The :module:`FindBoost` module now tracks the directories containing - libraries separately for RELEASE and DEBUG configurations. diff --git a/Help/release/dev/FindCUDA-StaticRuntime.rst b/Help/release/dev/FindCUDA-StaticRuntime.rst deleted file mode 100644 index 112596c20..000000000 --- a/Help/release/dev/FindCUDA-StaticRuntime.rst +++ /dev/null @@ -1,7 +0,0 @@ -FindCUDA-StaticRuntime ----------------------- - -* The :module:`FindCUDA` module now defaults to using the static - CUDA runtime library if it is available. A new - ``CUDA_USE_STATIC_CUDA_RUNTIME`` option is offered to control - this behavior. diff --git a/Help/release/dev/FindMatlab-rewrite.rst b/Help/release/dev/FindMatlab-rewrite.rst deleted file mode 100644 index 07727b816..000000000 --- a/Help/release/dev/FindMatlab-rewrite.rst +++ /dev/null @@ -1,7 +0,0 @@ -FindMatlab-rewrite ------------------- - -* The :module:`FindMatlab` module was completely rewritten. It learned - about versions and components and to find Matlab in a more precise and - multiplatform way. The module now offers APIs to create mex extensions, - documentation, and unit tests. diff --git a/Help/release/dev/InstallRequiredSystemLibraries-COMPONENT.rst b/Help/release/dev/InstallRequiredSystemLibraries-COMPONENT.rst deleted file mode 100644 index e6ebc2de6..000000000 --- a/Help/release/dev/InstallRequiredSystemLibraries-COMPONENT.rst +++ /dev/null @@ -1,6 +0,0 @@ -InstallRequiredSystemLibraries-COMPONENT ----------------------------------------- - -* The :module:`InstallRequiredSystemLibraries` module learned a new - ``CMAKE_INSTALL_SYSTEM_RUNTIME_COMPONENT`` option to specify the - installation component. diff --git a/Help/release/dev/UseSWIG-no-MAIN_DEPENDENCY.rst b/Help/release/dev/UseSWIG-no-MAIN_DEPENDENCY.rst deleted file mode 100644 index 5311cf105..000000000 --- a/Help/release/dev/UseSWIG-no-MAIN_DEPENDENCY.rst +++ /dev/null @@ -1,9 +0,0 @@ -UseSWIG-no-MAIN_DEPENDENCY --------------------------- - -* The :module:`UseSWIG` module ``SWIG_ADD_MODULE`` macro no - longer attaches the swig invocation custom command to the - ``.i`` source file in IDE projects. This is because only - one custom command can be safely attached to a given source - file, and adding multiple modules with the same ``.i`` file - for different languages requires more than one such command. diff --git a/Help/release/dev/add-CheckFortranCompilerFlag.rst b/Help/release/dev/add-CheckFortranCompilerFlag.rst deleted file mode 100644 index 718b53e9d..000000000 --- a/Help/release/dev/add-CheckFortranCompilerFlag.rst +++ /dev/null @@ -1,6 +0,0 @@ -add-CheckFortranCompilerFlag ----------------------------- - -* The :module:`CheckFortranCompilerFlag` module was introduced - to check ``Fortran`` compiler flags, much like the - :module:`CheckCCompilerFlag` module already does for ``C``. diff --git a/Help/release/dev/add-GreenHills-MULTI-generator.rst b/Help/release/dev/add-GreenHills-MULTI-generator.rst deleted file mode 100644 index b4c5c5ad3..000000000 --- a/Help/release/dev/add-GreenHills-MULTI-generator.rst +++ /dev/null @@ -1,8 +0,0 @@ -add-GreenHills-MULTI-generator ------------------------------- - -* A new experimental :generator:`Green Hills MULTI` generator was - added on Windows. `Green Hills MULTI`_ is an IDE for embedded - real-time systems. - -.. _`Green Hills MULTI`: http://www.ghs.com/products/MULTI_IDE.html diff --git a/Help/release/dev/add_dependencies-INTERFACE-libraries.rst b/Help/release/dev/add_dependencies-INTERFACE-libraries.rst deleted file mode 100644 index dfac2aff7..000000000 --- a/Help/release/dev/add_dependencies-INTERFACE-libraries.rst +++ /dev/null @@ -1,7 +0,0 @@ -add_dependencies-INTERFACE-libraries ------------------------------------- - -* The :command:`add_dependencies` command learned to allow dependencies - to be added to :ref:`interface libraries `. - Dependencies added to an interface library are followed transitively - in its place since the target itself does not build. diff --git a/Help/release/dev/cmake-gui-osx-install-command-line.rst b/Help/release/dev/cmake-gui-osx-install-command-line.rst deleted file mode 100644 index e0f0369fe..000000000 --- a/Help/release/dev/cmake-gui-osx-install-command-line.rst +++ /dev/null @@ -1,10 +0,0 @@ -cmake-gui-osx-install-command-line ----------------------------------- - -* On OS X the :manual:`cmake-gui(1)` no longer has the - ``Install For Command Line Use`` menu item. Instead there - is a ``How to Install For Command Line Use`` menu item - that shows an informational dialog box explaining how to - make the command line tools available. For example:: - - /Applications/CMake.app/Contents/bin/cmake-gui --install diff --git a/Help/release/dev/compiler-version-Fortran.rst b/Help/release/dev/compiler-version-Fortran.rst deleted file mode 100644 index e10b2066d..000000000 --- a/Help/release/dev/compiler-version-Fortran.rst +++ /dev/null @@ -1,6 +0,0 @@ -compiler-version-Fortran ------------------------- - -* The version of some Fortran compilers is now detected and stored in the - :variable:`CMAKE_Fortran_COMPILER_VERSION _COMPILER_VERSION>` - variable. diff --git a/Help/release/dev/cpack-deb-component-auto-discovery.rst b/Help/release/dev/cpack-deb-component-auto-discovery.rst deleted file mode 100644 index cc74db2ce..000000000 --- a/Help/release/dev/cpack-deb-component-auto-discovery.rst +++ /dev/null @@ -1,6 +0,0 @@ -cpack-deb-component-auto-discovery ----------------------------------- - -* The :module:`CPackDeb` module learned a new - :variable:`CPACK_DEBIAN__PACKAGE_SHLIBDEPS` - variable to specify per-component use of ``dpkg-shlibdeps``. diff --git a/Help/release/dev/cpack-deb-component-dependencies.rst b/Help/release/dev/cpack-deb-component-dependencies.rst deleted file mode 100644 index de9f457a2..000000000 --- a/Help/release/dev/cpack-deb-component-dependencies.rst +++ /dev/null @@ -1,6 +0,0 @@ -cpack-deb-component-dependencies --------------------------------- - -* The :module:`CPackDeb` module learned a new - :variable:`CPACK_DEBIAN__PACKAGE_DEPENDS` - option to specify per-component dependencies. diff --git a/Help/release/dev/cpack-ifw-updates.rst b/Help/release/dev/cpack-ifw-updates.rst deleted file mode 100644 index c01f04bde..000000000 --- a/Help/release/dev/cpack-ifw-updates.rst +++ /dev/null @@ -1,5 +0,0 @@ -cpack-ifw-updates ------------------ - -* The :manual:`cpack(1)` ``IFW`` generator and the :module:`CPackIFW` - module learned to support Qt Framework Installer 2.0 tools. diff --git a/Help/release/dev/cpack-rpm-basic-symlink-handling.rst b/Help/release/dev/cpack-rpm-basic-symlink-handling.rst deleted file mode 100644 index 3af4cf139..000000000 --- a/Help/release/dev/cpack-rpm-basic-symlink-handling.rst +++ /dev/null @@ -1,6 +0,0 @@ -cpack-rpm-basic-symlink-handling --------------------------------- - -* The :module:`CPackRPM` module learned to package symbolic links - more cleanly and now supports directory symlinks with recent - ``rpmbuild`` versions. diff --git a/Help/release/dev/cpack-rpm-refactored-file-listing.rst b/Help/release/dev/cpack-rpm-refactored-file-listing.rst deleted file mode 100644 index b4a502546..000000000 --- a/Help/release/dev/cpack-rpm-refactored-file-listing.rst +++ /dev/null @@ -1,6 +0,0 @@ -cpack-rpm-refactored-file-listing ---------------------------------- - -* The :module:`CPackRPM` module learned a new - :variable:`CPACK_RPM_ADDITIONAL_MAN_DIRS` variable to specify - directories containing man pages for the brp-compress RPM macro. diff --git a/Help/release/dev/ctest-no-make-i.rst b/Help/release/dev/ctest-no-make-i.rst deleted file mode 100644 index 96da0bdab..000000000 --- a/Help/release/dev/ctest-no-make-i.rst +++ /dev/null @@ -1,7 +0,0 @@ -ctest-no-make-i ---------------- - -* The :command:`ctest_build` and :command:`build_command` commands - no longer tell ``make`` tools to ignore errors with the ``-i`` option. - Previously this was done for :ref:`Makefile Generators` but not others. - See policy :policy:`CMP0061`. diff --git a/Help/release/dev/ctest-repeat-until-fail.rst b/Help/release/dev/ctest-repeat-until-fail.rst deleted file mode 100644 index 8a679c61c..000000000 --- a/Help/release/dev/ctest-repeat-until-fail.rst +++ /dev/null @@ -1,5 +0,0 @@ -ctest-repeat-until-fail ------------------------ - -* The :manual:`ctest(1)` tool learned a new ``--repeat-until-fail `` - option to help find sporadic test failures. diff --git a/Help/release/dev/disallow-install-of-export.rst b/Help/release/dev/disallow-install-of-export.rst deleted file mode 100644 index baee26d37..000000000 --- a/Help/release/dev/disallow-install-of-export.rst +++ /dev/null @@ -1,5 +0,0 @@ -disallow-install-of-export --------------------------- - -* Using the output of :command:`export()` with the :command:`install(FILES)` - command is no longer allowed. See policy :policy:`CMP0062` for details. diff --git a/Help/release/dev/emulator-property.rst b/Help/release/dev/emulator-property.rst deleted file mode 100644 index 1bc2f2d97..000000000 --- a/Help/release/dev/emulator-property.rst +++ /dev/null @@ -1,7 +0,0 @@ -emulator-property ------------------ - -* A :prop_tgt:`CROSSCOMPILING_EMULATOR` target property and supporting - :variable:`CMAKE_CROSSCOMPILING_EMULATOR` variable were introduced - to allow target platform binaries to run on the host during cross - compiling. diff --git a/Help/release/dev/execute_process-merge-output.rst b/Help/release/dev/execute_process-merge-output.rst deleted file mode 100644 index 4c80cdd0f..000000000 --- a/Help/release/dev/execute_process-merge-output.rst +++ /dev/null @@ -1,5 +0,0 @@ -execute_process-merge-output ----------------------------- - -* The :command:`execute_process` command learned to support specifying - the same file for ``OUTPUT_FILE`` and ``ERROR_FILE``. diff --git a/Help/release/dev/export-interface-source-files.rst b/Help/release/dev/export-interface-source-files.rst deleted file mode 100644 index 00dcd251c..000000000 --- a/Help/release/dev/export-interface-source-files.rst +++ /dev/null @@ -1,6 +0,0 @@ -export-interface-source-files ------------------------------ - -* It is now possible to export targets which populate the - :prop_tgt:`INTERFACE_SOURCES` target property using the - :command:`install(EXPORT)` and :command:`export()` commands. diff --git a/Help/release/dev/extend-visibility-properties.rst b/Help/release/dev/extend-visibility-properties.rst deleted file mode 100644 index 6b4489d2d..000000000 --- a/Help/release/dev/extend-visibility-properties.rst +++ /dev/null @@ -1,7 +0,0 @@ -extend-visibility-properties ----------------------------- - -* The :prop_tgt:`_VISIBILITY_PRESET` and - :prop_tgt:`VISIBILITY_INLINES_HIDDEN` target properties now - affect compilation in sources of all target types. See - policy :policy:`CMP0063`. diff --git a/Help/release/dev/file-globbing-directory-listing.rst b/Help/release/dev/file-globbing-directory-listing.rst deleted file mode 100644 index c4d7ba500..000000000 --- a/Help/release/dev/file-globbing-directory-listing.rst +++ /dev/null @@ -1,6 +0,0 @@ -file-globbing-directory-listing -------------------------------- - -* The :command:`file(GLOB)` and :command:`file(GLOB_RECURSE)` commands - learned a new ``LIST_DIRECTORIES `` option to specify whether - the glob result should include directories. diff --git a/Help/release/dev/find-command-prefix-from-PATH.rst b/Help/release/dev/find-command-prefix-from-PATH.rst deleted file mode 100644 index f9aae2a93..000000000 --- a/Help/release/dev/find-command-prefix-from-PATH.rst +++ /dev/null @@ -1,6 +0,0 @@ -find-command-prefix-from-PATH ------------------------------ - -* The :command:`find_library`, :command:`find_path`, and :command:`find_file` - commands now search in installation prefixes derived from the ``PATH`` - environment variable. diff --git a/Help/release/dev/find_package-no-cmake-gui-paths.rst b/Help/release/dev/find_package-no-cmake-gui-paths.rst deleted file mode 100644 index 39145599f..000000000 --- a/Help/release/dev/find_package-no-cmake-gui-paths.rst +++ /dev/null @@ -1,10 +0,0 @@ -find_package-no-cmake-gui-paths -------------------------------- - -* The :command:`find_package` command no longer considers project - build trees recently configured in a :manual:`cmake-gui(1)`. - This was previously done only on Windows and is now never done. - The ``NO_CMAKE_BUILDS_PATH`` option is now ignored if given - and effectively always on. - Projects may populate the :ref:`User Package Registry` to aid - users building multiple dependent projects one after another. diff --git a/Help/release/dev/gcov-module-coverage-exclude.rst b/Help/release/dev/gcov-module-coverage-exclude.rst deleted file mode 100644 index ee4ebae7d..000000000 --- a/Help/release/dev/gcov-module-coverage-exclude.rst +++ /dev/null @@ -1,6 +0,0 @@ -gcov-module-coverage-exclude ----------------------------- - -* The :module:`CTestCoverageCollectGCOV` module learned to support - the same ``CTEST_CUSTOM_COVERAGE_EXCLUDE`` option as the - :command:`ctest_coverage` command. diff --git a/Help/release/dev/if-IN_LIST.rst b/Help/release/dev/if-IN_LIST.rst deleted file mode 100644 index 9dd07253d..000000000 --- a/Help/release/dev/if-IN_LIST.rst +++ /dev/null @@ -1,5 +0,0 @@ -if-IN_LIST ----------- - -* Add a new IN_LIST operator to if() that evaluates true - if a given element is contained in a named list. diff --git a/Help/release/dev/install-DESTINATION-genex.rst b/Help/release/dev/install-DESTINATION-genex.rst deleted file mode 100644 index 4c4bbedf6..000000000 --- a/Help/release/dev/install-DESTINATION-genex.rst +++ /dev/null @@ -1,5 +0,0 @@ -install-DESTINATION-genex -------------------------- - -* The :command:`install(TARGETS)` command learned to support - generator expressions in the ``DESTINATION`` value. diff --git a/Help/release/dev/link-implicit-libs-full-path.rst b/Help/release/dev/link-implicit-libs-full-path.rst deleted file mode 100644 index 7ed724525..000000000 --- a/Help/release/dev/link-implicit-libs-full-path.rst +++ /dev/null @@ -1,6 +0,0 @@ -link-implicit-libs-full-path ----------------------------- - -* Linking to library files by a full path in an implicit linker search - directory (e.g. ``/usr/lib/libfoo.a``) no longer asks the linker to - search for the library (e.g. ``-lfoo``). See policy :policy:`CMP0060`. diff --git a/Help/release/dev/makefile-DELETE_ON_ERROR.rst b/Help/release/dev/makefile-DELETE_ON_ERROR.rst deleted file mode 100644 index c7c45fd5e..000000000 --- a/Help/release/dev/makefile-DELETE_ON_ERROR.rst +++ /dev/null @@ -1,7 +0,0 @@ -makefile-DELETE_ON_ERROR ------------------------- - -* The Makefile generators now add ``.DELETE_ON_ERROR`` to the - makefiles that contain the actual build rules for files on disk. - This tells GNU make to remove rule outputs when their recipe - modifies an output but fails. diff --git a/Help/release/dev/makefile-progress-improvements.rst b/Help/release/dev/makefile-progress-improvements.rst deleted file mode 100644 index 9cc970610..000000000 --- a/Help/release/dev/makefile-progress-improvements.rst +++ /dev/null @@ -1,7 +0,0 @@ -makefile-progress-improvements ------------------------------- - -* With Makefile generators, the build-time progress output has been improved. - It no longer mixes progress and build rule messages during parallel builds. - The link rule messages now have progress and are displayed as bold green - instead of bold red (since red is often associated with an error message). diff --git a/Help/release/dev/mingw-compile-features.rst b/Help/release/dev/mingw-compile-features.rst deleted file mode 100644 index e2ed30b1e..000000000 --- a/Help/release/dev/mingw-compile-features.rst +++ /dev/null @@ -1,6 +0,0 @@ -mingw-compile-features ----------------------- - -* The :manual:`Compile Features ` functionality - is now aware of features supported by GNU compilers on Windows, versions - 4.4 through 5.0. diff --git a/Help/release/dev/mingw-no-find_library-dll.rst b/Help/release/dev/mingw-no-find_library-dll.rst deleted file mode 100644 index 1b0c19ba2..000000000 --- a/Help/release/dev/mingw-no-find_library-dll.rst +++ /dev/null @@ -1,8 +0,0 @@ -mingw-no-find_library-dll -------------------------- - -* When building with GNU tools on Windows (MinGW tools), the - :command:`find_library` command will no longer consider - ``.dll`` files to be linkable libraries. All dynamic link - libraries are expected to provide separate ``.dll.a`` or - ``.lib`` import libraries. diff --git a/Help/release/dev/ninja-require-byproducts.rst b/Help/release/dev/ninja-require-byproducts.rst deleted file mode 100644 index ccde4bc69..000000000 --- a/Help/release/dev/ninja-require-byproducts.rst +++ /dev/null @@ -1,9 +0,0 @@ -ninja-require-byproducts ------------------------- - -* The :generator:`Ninja` generator now requires that calls to the - :command:`add_custom_command` and :command:`add_custom_target` - commands use the ``BYPRODUCTS`` option to explicitly specify any - files generated by the custom commands that are not listed as - outputs (perhaps because their timestamps are allowed to be older - than the inputs). See policy :policy:`CMP0058`. diff --git a/Help/release/dev/remove-DEFINITIONS-directory-property.rst b/Help/release/dev/remove-DEFINITIONS-directory-property.rst deleted file mode 100644 index d8e50f042..000000000 --- a/Help/release/dev/remove-DEFINITIONS-directory-property.rst +++ /dev/null @@ -1,6 +0,0 @@ -remove-DEFINITIONS-property ---------------------------- - -* The :command:`add_definitions()` command no longer causes a - :prop_dir:`DEFINITIONS` directory property to be populated. See policy - :policy:`CMP0059`. diff --git a/Help/release/dev/rpm_package_architecture.rst b/Help/release/dev/rpm_package_architecture.rst deleted file mode 100644 index 5bec51dd6..000000000 --- a/Help/release/dev/rpm_package_architecture.rst +++ /dev/null @@ -1,6 +0,0 @@ -rpm_package_architecture ------------------------- - -* The :module:`CPackRPM` module learned a new - :variable:`CPACK_RPM__PACKAGE_ARCHITECTURE` variable - to specify a component-specific package architecture. diff --git a/Help/release/dev/run-include-what-you-use.rst b/Help/release/dev/run-include-what-you-use.rst deleted file mode 100644 index baac21ffa..000000000 --- a/Help/release/dev/run-include-what-you-use.rst +++ /dev/null @@ -1,8 +0,0 @@ -run-include-what-you-use ------------------------- - -* The :ref:`Makefile Generators` and the :generator:`Ninja` generator - learned to optionally run ``include-what-you-use`` along with the - compiler for ``C`` and ``CXX`` languages. See the - :variable:`CMAKE__INCLUDE_WHAT_YOU_USE` variable and - :prop_tgt:`_INCLUDE_WHAT_YOU_USE` target property for details. diff --git a/Help/release/dev/tar-write-format.rst b/Help/release/dev/tar-write-format.rst deleted file mode 100644 index 004df211a..000000000 --- a/Help/release/dev/tar-write-format.rst +++ /dev/null @@ -1,6 +0,0 @@ -tar-write-format ----------------- - -* The :manual:`cmake(1)` ``-E tar`` command learned a new - ``--format`` option to specify the archive format to - be written. diff --git a/Help/release/dev/target-language-genex.rst b/Help/release/dev/target-language-genex.rst deleted file mode 100644 index ed4cb5e78..000000000 --- a/Help/release/dev/target-language-genex.rst +++ /dev/null @@ -1,9 +0,0 @@ -target-language-genex ---------------------- - -* A new ``COMPILE_LANGUAGE`` generator expression was introduced to - allow specification of compile options for target files based on the - :prop_sf:`LANGUAGE` of each source file. Due to limitations of the - underlying native build tools, this feature has varying support across - generators. See the :manual:`cmake-generator-expressions(7)` manual - for details. diff --git a/Help/release/dev/vs-install-in-default-build.rst b/Help/release/dev/vs-install-in-default-build.rst deleted file mode 100644 index b57592e37..000000000 --- a/Help/release/dev/vs-install-in-default-build.rst +++ /dev/null @@ -1,7 +0,0 @@ -vs-install-in-default-build ---------------------------- - -* The :ref:`Visual Studio Generators` learned a new - :variable:`CMAKE_VS_INCLUDE_INSTALL_TO_DEFAULT_BUILD` option - to put the ``INSTALL`` target in the default build of a - solution (``.sln``) file. diff --git a/Help/release/dev/vs-xaml.rst b/Help/release/dev/vs-xaml.rst deleted file mode 100644 index 575899ff8..000000000 --- a/Help/release/dev/vs-xaml.rst +++ /dev/null @@ -1,6 +0,0 @@ -vs-xaml -------- - -* The :ref:`Visual Studio Generators` learned to support ``.xaml`` - source files and automatically associate them with corresponding - ``.h`` and ``.cpp`` sources. diff --git a/Help/release/dev/vs10-no-macros.rst b/Help/release/dev/vs10-no-macros.rst deleted file mode 100644 index 89377dcc2..000000000 --- a/Help/release/dev/vs10-no-macros.rst +++ /dev/null @@ -1,9 +0,0 @@ -vs10-no-macros --------------- - -* The :generator:`Visual Studio 10 2010` generator no longer checks - for running VS IDEs with the project open or asks them to reload. - This was originally done for VS 10 because it had been done for - VS 7 through 9 to avoid prompting for every project in a solution. - Since VS >= 10 allow the whole solution to reload at once they - do not need CMake to help them. diff --git a/Help/release/dev/vs6-deprecate.rst b/Help/release/dev/vs6-deprecate.rst deleted file mode 100644 index 83f9afb09..000000000 --- a/Help/release/dev/vs6-deprecate.rst +++ /dev/null @@ -1,5 +0,0 @@ -vs6-deprecate -------------- - -* The :generator:`Visual Studio 6` generator is now deprecated - and will be removed in a future version of CMake. diff --git a/Help/release/dev/vs7-OutputDirectory.rst b/Help/release/dev/vs7-OutputDirectory.rst deleted file mode 100644 index 2725d0c59..000000000 --- a/Help/release/dev/vs7-OutputDirectory.rst +++ /dev/null @@ -1,10 +0,0 @@ -vs7-OutputDirectory -------------------- - -* The :variable:`CMAKE_CFG_INTDIR` variable value for Visual Studio - 7, 8, and 9 is now ``$(ConfigurationName)`` instead of ``$(OutDir)``. - This should have no effect on the intended use cases of the variable. - -* With Visual Studio 7, 8, and 9 generators the value of the ``$(OutDir)`` - placeholder no longer evaluates to the configuration name. Projects - should use ``$(ConfigurationName)`` for that instead. diff --git a/Help/release/dev/vs70-deprecate.rst b/Help/release/dev/vs70-deprecate.rst deleted file mode 100644 index fb9411027..000000000 --- a/Help/release/dev/vs70-deprecate.rst +++ /dev/null @@ -1,5 +0,0 @@ -vs70-deprecate --------------- - -* The :generator:`Visual Studio 7` generator (.NET 2002) is now - deprecated and will be removed in a future version of CMake. diff --git a/Help/release/dev/wix-shortcut-properties.rst b/Help/release/dev/wix-shortcut-properties.rst deleted file mode 100644 index bdd648565..000000000 --- a/Help/release/dev/wix-shortcut-properties.rst +++ /dev/null @@ -1,9 +0,0 @@ -wix-shortcut-properties ------------------------ - -* The CPack WIX generator learned the new - :prop_inst:`CPACK_START_MENU_SHORTCUTS`, - :prop_inst:`CPACK_DESKTOP_SHORTCUTS` and - :prop_inst:`CPACK_STARTUP_SHORTCUTS` installed file properties which can - be used to install shorcuts in the Start Menu, on the Desktop and - in the Startup Folder respectively. diff --git a/Help/release/dev/xcode-attribute-genex.rst b/Help/release/dev/xcode-attribute-genex.rst deleted file mode 100644 index 3fd5b1c68..000000000 --- a/Help/release/dev/xcode-attribute-genex.rst +++ /dev/null @@ -1,5 +0,0 @@ -xcode-attribute-genex ---------------------- - -* The :prop_tgt:`XCODE_ATTRIBUTE_` target property learned - to support generator expressions. diff --git a/Help/release/dev/xcode-xctest.rst b/Help/release/dev/xcode-xctest.rst deleted file mode 100644 index 7a2f07b97..000000000 --- a/Help/release/dev/xcode-xctest.rst +++ /dev/null @@ -1,6 +0,0 @@ -xcode-xctest ------------- - -* On OS X, CMake learned to create XCTest bundles to test Frameworks - and App Bundles within Xcode. The :module:`FindXCTest` module - provides convenience functions to handle :prop_tgt:`XCTEST` bundles. diff --git a/Help/release/index.rst b/Help/release/index.rst index 45d0a692d..b558e9df9 100644 --- a/Help/release/index.rst +++ b/Help/release/index.rst @@ -13,6 +13,7 @@ Releases .. toctree:: :maxdepth: 1 + 3.3 <3.3> 3.2 <3.2> 3.1 <3.1> 3.0 <3.0>