8119d99d1e
3.14.0: New Features Generators * The Visual Studio 16 2019 generator was added. This is experimental and based on “Visual Studio 2019 Preview 4” because this version of VS has not been released. * The Green Hills MULTI generator has been updated: File-Based API * A file-based api for clients to get semantic buildsystem information has been added. Platforms * CMake now supports Cross Compiling for iOS, tvOS, or watchOS using simple toolchain files. Command-Line * The cmake(1) Build Tool Mode (cmake --build) gained --verbose and -v options to specify verbose build output. Some generators such as Xcode don’t support this option currently. * The cmake(1) -E compare_files command learned a new --ignore-eol option to specify that end-of-line differences (e.g. LF vs CRLF) should be ignored when comparing files. * The cmake-gui(1) dialog gained new -S and -B arguments to explicitly specify source and build directories. Commands * The file() command learned a new sub-command, CREATE_LINK, which can be used to create hard or symbolic links. * The file() command learned a new sub-command, READ_SYMLINK, which can be used to determine the path that a symlink points to. * The file() command gained a SIZE mode to get the size of a file on disk. * The find_package() command learned to optionally resolve symbolic links in the paths to package configuration files. See the CMAKE_FIND_PACKAGE_RESOLVE_SYMLINKS variable. * The get_filename_component() command gained new LAST_EXT and NAME_WLE variants to work with the extension after the last . in the name. * The if() command gained support for checking if cache variables are defined with the DEFINED CACHE{VAR} syntax. * The install(CODE) and install(SCRIPT) commands learned to support generator expressions. See policy CMP0087. * The install(TARGETS) command learned how to install to an appropriate default directory for a given target type, based on variables from the GNUInstallDirs module and built-in defaults, in lieu of a DESTINATION argument. * The install(FILES) and install(DIRECTORY) commands learned a new set of parameters for installing files as a file type, setting the destination based on the appropriate variables from GNUInstallDirs and built-in defaults, in lieu of a DESTINATION argument. * The list() operations REMOVE_ITEM, REMOVE_DUPLICATES, SORT, REVERSE, and FILTER all now accept a non-existent variable as the list since these operations on empty lists is also the empty list. * The list() operation REMOVE_AT now indicates that the given indices are invalid for a non-existent variable or empty list. * The try_compile() and try_run() commands gained a new LINK_OPTIONS option. Variables * A CMAKE_BUILD_RPATH_USE_ORIGIN variable and corresponding BUILD_RPATH_USE_ORIGIN target property were added to enable use of relative runtime paths (RPATHs). This helps achieving relocatable and reproducible builds that are invariant of the build directory. Properties * A CMAKE_ROLE global property was added to allow scripts to determine whether they’re running in project mode, script mode, find-package mode, CTest, or CPack. * The CUDA_RESOLVE_DEVICE_SYMBOLS target property is now supported on shared library, module library, and executable targets. Previously it was only honored on static libraries. * The EXCLUDE_FROM_ALL target property was created to override the setting of its directory. A target will now be built as part of “all” if its EXCLUDE_FROM_ALL property is set to OFF, even if its containing directory is marked as EXCLUDE_FROM_ALL. * INTERFACE_POSITION_INDEPENDENT_CODE target property gains the support of generator expressions. |
||
---|---|---|
.. | ||
files | ||
patches | ||
buildlink3.mk | ||
DESCR | ||
distinfo | ||
Makefile | ||
Makefile.version | ||
PLIST | ||
PLIST.Cygwin | ||
PLIST.Darwin |