[CMake] [ANNOUNCE] CMake 3.0.0 Released.
Robert Maynard
robert.maynard at kitware.com
Tue Jun 10 17:14:31 EDT 2014
On behalf of myself, Ken, Bill, Brad, David, Alex, Eike, Steve, Zach, Ben,
Peter, Nils, and the rest of the CMake team from all around the world, we are
pleased to announce that CMake 3.0.0 is now available for download at:
http://www.cmake.org/files/v3.0/?C=M;O=D
Documentation is available at:
http://www.cmake.org/cmake/help/v3.0
Full release notes are published at
http://www.cmake.org/cmake/help/v3.0/release/3.0.0.html
Some of the more significant features of CMake 3.0 are:
* Compatibility options supporting code written for CMake versions
prior to 2.4 have been removed.
* The CMake language has been extended with *Bracket Argument* and
*Bracket Comment* syntax inspired by Lua long brackets.
* The CMake documentation has been converted to reStructuredText and
uses Sphinx generation.
* Generators for Visual Studio 10 (2010) and later were renamed to
include the product year like generators for older VS versions:
* "Visual Studio 10" -> "Visual Studio 10 2010"
* "Visual Studio 11" -> "Visual Studio 11 2012"
* "Visual Studio 12" -> "Visual Studio 12 2013"
This clarifies which generator goes with each Visual Studio version.
The old names are recognized for compatibility.
* A new "CodeLite" extra generator is available for use with the
Makefile or Ninja generators.
* A new "Kate" extra generator is available for use with the
Makefile or Ninja generators.
* The "add_library()" command learned a new "INTERFACE" library
type. Interface libraries have no build rules but may have
properties defining "usage requirements" and may be installed,
exported, and imported. This is useful to create header-only
libraries that have concrete link dependencies on other libraries.
* The "export()" command learned a new "EXPORT" mode that retrieves
the list of targets to export from an export set configured by the
"install(TARGETS)" command "EXPORT" option. This makes it easy to
export from the build tree the same targets that are exported from
the install tree.
* The "project()" command learned to set some version variables to
values specified by the new "VERSION" option or to empty strings.
See policy "CMP0048".
* Several long-outdated commands that should no longer be called
have been disallowed in new code by policies:
* Policy "CMP0029" disallows "subdir_depends()"
* Policy "CMP0030" disallows "use_mangled_mesa()"
* Policy "CMP0031" disallows "load_command()"
* Policy "CMP0032" disallows "output_required_files()"
* Policy "CMP0033" disallows "export_library_dependencies()"
* Policy "CMP0034" disallows "utility_source()"
* Policy "CMP0035" disallows "variable_requires()"
* Policy "CMP0036" disallows "build_name()"
Bug tracker change log page for 3.0.0 is at:
http://public.kitware.com/Bug/changelog_page.php?version_id=112
More information about the CMake
mailing list