cmake: updated to 3.15.0
3.15.0:
New Features
============
Generators
----------
* The "Xcode" generator now supports per-target schemes. See the
"CMAKE_XCODE_GENERATE_SCHEME" variable and "XCODE_GENERATE_SCHEME"
target property.
* The "Green Hills MULTI" generator has been updated:
* It now supports the "add_custom_command()" and
"add_custom_target()" commands.
* It is now available on Linux.
Languages
---------
* Preliminary support for the "Swift" language was added to the
"Ninja" generator:
* Use the "SWIFTC" environment variable to specify a compiler.
* The "Swift_DEPENDENCIES_FILE" target property and
"Swift_DEPENDENCIES_FILE" source file property were added to
customize dependency files.
* The "Swift_MODULE_NAME" target property was added to customize
the Swift module name.
* The "Swift_DIAGNOSTICS_FILE" source property was added to
indicate where to write the serialised Swift diagnostics.
The Swift support is experimental, not considered stable, and may
change in future releases of CMake.
Compilers
---------
* The "Clang" compiler variant on Windows that targets the MSVC ABI
but has a GNU-like command line is now supported.
* Support for the Clang-based ARM compiler was added with compiler
id "ARMClang".
* Support was added for the IAR compiler architectures Renesas RX,
RL78, RH850 and Texas Instruments MSP430.
* Support was added for the IAR compilers built for Linux (IAR
BuildLx).
Command-Line
------------
* The "CMAKE_GENERATOR" environment variable was added to specify a
default generator to use when "cmake(1)" is run without a "-G"
option. Additionally, environment variables
"CMAKE_GENERATOR_PLATFORM", "CMAKE_GENERATOR_TOOLSET", and
"CMAKE_GENERATOR_INSTANCE" were created to configure the generator.
* The "cmake(1)" "--build" tool "--target" parameter gained support
for multiple targets, e.g. "cmake --build . --target Library1
Library2". It now also has a short form "-t" alias, e.g. "cmake
--build . -t Library1 Library2".
* The "cmake(1)" command gained a new "--install" option. This may
be used after building a project to run installation without using
the generated build system or the native build tool.
* The "cmake(1)" command learned a new CLI option "--loglevel".
* The "cmake(1)" "-E remove_directory" command-line tool learned to
support removing multiple directories.
* The "cmake(1)" "-E tar" tool has been improved:
* It now continues adding files to an archive even if some of the
files are not readable. This behavior is more consistent with the
classic "tar" tool.
* It now parses all flags, and if an invalid flag was provided, a
warning is issued.
* It now displays an error if no action flag was specified, along
with a list of possible actions: "t" (list), "c" (create) or "x"
(extract).
* It now supports extracting ("-x") or listing ("-t") only
specific files or directories.
* It now supports Zstandard compression with a "--zstd" option.
Zstandard was designed to give a compression ratio comparable to
that of the DEFLATE (zip) algorithm, but faster, especially for
decompression.
Commands
--------
* The "add_custom_command()" and "add_custom_target()" commands
gained a new "JOB_POOL" option that works with the "Ninja" generator
to set the pool variable on the build statement.
* The "add_library()" command "ALIAS" option learned to support
import libraries of the "UNKNOWN" type.
* The "cmake_parse_arguments()" command gained an additional
"_KEYWORDS_MISSING_VALUES" output variable to report keyword
arguments that were given by the caller with no values.
* The "execute_process()" command gained a "COMMAND_ECHO" option and
supporting "CMAKE_EXECUTE_PROCESS_COMMAND_ECHO" variable to enable
echoing of the command-line string before execution.
* The "file(INSTALL)" command learned a new argument,
"FOLLOW_SYMLINK_CHAIN", which can be used to recursively resolve and
install symlinks.
* "list()" learned new sub-commands: "PREPEND", "POP_FRONT" and
"POP_BACK".
* The "message()" command learned new types: "NOTICE", "VERBOSE",
"DEBUG" and "TRACE".
* The "string()" learned a new sub-command "REPEAT".
Variables
---------
* The "CMAKE_CROSSCOMPILING_EMULATOR" variable and corresponding
"CROSSCOMPILING_EMULATOR" target property learned to support
arguments to the emulator.
* The "CMAKE_FIND_PACKAGE_PREFER_CONFIG" variable was added to tell
"find_package()" calls to look for a package configuration file
first even if a find module is available.
* The "CMAKE_FRAMEWORK" variable was added to initialize the
"FRAMEWORK" property on all targets.
* The "CMAKE_VS_JUST_MY_CODE_DEBUGGING" variable and
"VS_JUST_MY_CODE_DEBUGGING" target property were added to enable the
Just My Code feature of the Visual Studio Debugger when compiling
with MSVC cl 19.05 and higher.
* The "CMAKE_MSVC_RUNTIME_LIBRARY" variable and
"MSVC_RUNTIME_LIBRARY" target property were introduced to select the
runtime library used by compilers targeting the MSVC ABI. See policy
"CMP0091".
* The "CMAKE_PROJECT_INCLUDE" and "CMAKE_PROJECT_INCLUDE_BEFORE"
variables were added to allow injection of custom code at the sites
of "project()" calls without knowing the project name a priori.
Properties
----------
* The "ADDITIONAL_CLEAN_FILES" target property and
"ADDITIONAL_CLEAN_FILES" directory property were added. They allow
to register additional files that should be removed during the clean
stage.
* The "PUBLIC_HEADER" and "PRIVATE_HEADER" properties may now be set
on Interface Libraries. The headers specified by those properties
can be installed using the "install(TARGETS)" command by passing the
"PUBLIC_HEADER" and "PRIVATE_HEADER" arguments respectively.
* The "VS_PACKAGE_REFERENCES" target property was added to tell
Visual Studio Generators to add references to "nuget" packages.
* The "VS_PROJECT_IMPORT" target property was added to allow managed
Visual Studio project files to import external ".props" files.
* The "VS_NO_SOLUTION_DEPLOY" target property was added to tell
Visual Studio Generators whether to deploy an artifact to the WinCE
or Windows Phone target device.
Modules
-------
* The "FindBoost" module was reworked to expose a more consistent
user experience between its “Config” and “Module” modes and with
other find modules in general.
* A new imported target "Boost::headers" is now defined (same as
"Boost::boost").
* New output variables "Boost_VERSION_MACRO",
"Boost_VERSION_MAJOR", "Boost_VERSION_MINOR",
"Boost_VERSION_PATCH", and "Boost_VERSION_COUNT" were added.
* The "QUIET" argument passed to "find_package()" is no longer
ignored in config mode. Note that the CMake package shipped with
Boost "1.70.0" ignores the "QUIET" argument passed to
"find_package()". This is fixed in the next Boost release.
* The input switch "Boost_DETAILED_FAILURE_MSG" was removed.
* "Boost_VERSION" now reports the version in "x.y.z" format in
module mode. See policy "CMP0093".
* The "FindCups" module now provides imported targets.
* The "FindEnvModules" module was added to use Lua- and TCL-based
environment modules in CTest Scripts.
* The "FindGLEW" module now provides an interface more consistent
with what upstream GLEW provides in its own CMake package files.
* The "FindPkgConfig" now populates "INTERFACE_LINK_OPTIONS"
property of imported targets with other (non-library) linker flags.
* The "FindPostgreSQL" module learned to find debug and release
variants separately.
* Modules "FindPython3", "FindPython2" and "FindPython" gained
additional lookup strategies and controls, and a new default. See
policy "CMP0094".
* Modules "FindPython", "FindPython2" and "FindPython3" gain a new
target (respectively "Python::Module", "Python2::Module" and
"Python3::Module") which can be used to develop Python modules.
* Modules "FindPython3", "FindPython2" and "FindPython" gain
capability to control how virtual environments are handled.
* The "UseSWIG" module learned to manage alternate library names by
passing "-interface " for "python" language or
"-dllimport " for "CSharp" language to the "SWIG"
compiler.
Generator Expressions
---------------------
* The "generator expressions" "C_COMPILER_ID", "CXX_COMPILER_ID",
"CUDA_COMPILER_ID", "Fortran_COMPILER_ID", "COMPILE_LANGUAGE",
"COMPILE_LANG_AND_ID", and "PLATFORM_ID" learned to support matching
one value from a comma-separated list.
CTest
-----
* The "ctest_submit()" command learned a new option: "BUILD_ID".
This can be used to store the ID assigned to this build by CDash to
a variable.
* The "ctest_update()" command learned to honor a new variable:
"CTEST_UPDATE_VERSION_OVERRIDE". This can be used to specify the
current version of your source tree rather than using the update
command to discover the current version that is checked out.
CPack
-----
* The "CPack IFW Generator" gained a new
"CPACK_IFW_PACKAGE_STYLE_SHEET" variable to customize the installer
stylesheet.
Deprecated and Removed Features
===============================
* The "cmake-server(7)" mode has been deprecated and will be removed
from a future version of CMake. Please port clients to use the
"cmake-file-api(7)" instead.
* The "ADDITIONAL_MAKE_CLEAN_FILES" directory property is now
deprecated. Use the "ADDITIONAL_CLEAN_FILES" directory property
instead.
* The variable "CMAKE_AUTOMOC_RELAXED_MODE" is considered
deprecated. Support still exists but will be removed in future
versions.
* The "export(PACKAGE)" command now does nothing unless enabled via
"CMAKE_EXPORT_PACKAGE_REGISTRY". See policy "CMP0090".
* The "Xcode" generator now requires at least Xcode 5.
* An explicit deprecation diagnostic was added for policy "CMP0066"
("CMP0065" and below were already deprecated). The "cmake-
policies(7)" manual explains that the OLD behaviors of all policies
are deprecated and that projects should port to the NEW behaviors.
Other Changes
=============
* CMake learned how to compile C++14 with the IBM AIX XL compiler
and the SunPro compiler and to compile C++20 with the AppleClang
compiler.
* With MSVC-like compilers the value of "CMAKE__FLAGS" no
longer contains warning flags like "/W3" by default. See policy
"CMP0092".
* IBM Clang-based XL compilers that define "__ibmxl__" now use the
compiler id "XLClang" instead of "XL". See policy "CMP0089".
* The "file(REMOVE)" and "file(REMOVE_RECURSE)" commands were
changed to ignore empty arguments with a warning instead of treating
them as a relative path and removing the contents of the current
directory.
2019-07-19 11:06:23 +02:00
|
|
|
$NetBSD: distinfo,v 1.143 2019/07/19 09:06:23 adam Exp $
|
import cmake-1.6.6
CMake is an extensible, open-source system that manages the build
process in an operating system and compiler independent manner. Unlike
many cross-platform systems, CMake is designed to be used in
conjunction with the native build environment. Simple configuration
files placed in each source directory (called CMakeLists.txt files)
are used to generate standard build files (e.g., makefiles on Unix and
projects/workspaces in Windows MSVC) which are used in the usual
way. CMake can compile source code, create libraries, generate
wrappers, and build executables in arbitrary combinations. CMake
supports in-place and out-of-place builds, and can therefore support
multiple builds from a single source tree. CMake also supports static
and dynamic library builds. Another nice feature of CMake is that it
generates a cache file that is designed to be used with a graphical
editor. For example, when CMake runs, it locates include files,
libraries, and executable, and may encounter optional build
directives. This information is gathered into the cache, which may be
changed by the user prior to the generation of the native build files.
2003-05-07 13:55:03 +02:00
|
|
|
|
cmake: updated to 3.15.0
3.15.0:
New Features
============
Generators
----------
* The "Xcode" generator now supports per-target schemes. See the
"CMAKE_XCODE_GENERATE_SCHEME" variable and "XCODE_GENERATE_SCHEME"
target property.
* The "Green Hills MULTI" generator has been updated:
* It now supports the "add_custom_command()" and
"add_custom_target()" commands.
* It is now available on Linux.
Languages
---------
* Preliminary support for the "Swift" language was added to the
"Ninja" generator:
* Use the "SWIFTC" environment variable to specify a compiler.
* The "Swift_DEPENDENCIES_FILE" target property and
"Swift_DEPENDENCIES_FILE" source file property were added to
customize dependency files.
* The "Swift_MODULE_NAME" target property was added to customize
the Swift module name.
* The "Swift_DIAGNOSTICS_FILE" source property was added to
indicate where to write the serialised Swift diagnostics.
The Swift support is experimental, not considered stable, and may
change in future releases of CMake.
Compilers
---------
* The "Clang" compiler variant on Windows that targets the MSVC ABI
but has a GNU-like command line is now supported.
* Support for the Clang-based ARM compiler was added with compiler
id "ARMClang".
* Support was added for the IAR compiler architectures Renesas RX,
RL78, RH850 and Texas Instruments MSP430.
* Support was added for the IAR compilers built for Linux (IAR
BuildLx).
Command-Line
------------
* The "CMAKE_GENERATOR" environment variable was added to specify a
default generator to use when "cmake(1)" is run without a "-G"
option. Additionally, environment variables
"CMAKE_GENERATOR_PLATFORM", "CMAKE_GENERATOR_TOOLSET", and
"CMAKE_GENERATOR_INSTANCE" were created to configure the generator.
* The "cmake(1)" "--build" tool "--target" parameter gained support
for multiple targets, e.g. "cmake --build . --target Library1
Library2". It now also has a short form "-t" alias, e.g. "cmake
--build . -t Library1 Library2".
* The "cmake(1)" command gained a new "--install" option. This may
be used after building a project to run installation without using
the generated build system or the native build tool.
* The "cmake(1)" command learned a new CLI option "--loglevel".
* The "cmake(1)" "-E remove_directory" command-line tool learned to
support removing multiple directories.
* The "cmake(1)" "-E tar" tool has been improved:
* It now continues adding files to an archive even if some of the
files are not readable. This behavior is more consistent with the
classic "tar" tool.
* It now parses all flags, and if an invalid flag was provided, a
warning is issued.
* It now displays an error if no action flag was specified, along
with a list of possible actions: "t" (list), "c" (create) or "x"
(extract).
* It now supports extracting ("-x") or listing ("-t") only
specific files or directories.
* It now supports Zstandard compression with a "--zstd" option.
Zstandard was designed to give a compression ratio comparable to
that of the DEFLATE (zip) algorithm, but faster, especially for
decompression.
Commands
--------
* The "add_custom_command()" and "add_custom_target()" commands
gained a new "JOB_POOL" option that works with the "Ninja" generator
to set the pool variable on the build statement.
* The "add_library()" command "ALIAS" option learned to support
import libraries of the "UNKNOWN" type.
* The "cmake_parse_arguments()" command gained an additional
"_KEYWORDS_MISSING_VALUES" output variable to report keyword
arguments that were given by the caller with no values.
* The "execute_process()" command gained a "COMMAND_ECHO" option and
supporting "CMAKE_EXECUTE_PROCESS_COMMAND_ECHO" variable to enable
echoing of the command-line string before execution.
* The "file(INSTALL)" command learned a new argument,
"FOLLOW_SYMLINK_CHAIN", which can be used to recursively resolve and
install symlinks.
* "list()" learned new sub-commands: "PREPEND", "POP_FRONT" and
"POP_BACK".
* The "message()" command learned new types: "NOTICE", "VERBOSE",
"DEBUG" and "TRACE".
* The "string()" learned a new sub-command "REPEAT".
Variables
---------
* The "CMAKE_CROSSCOMPILING_EMULATOR" variable and corresponding
"CROSSCOMPILING_EMULATOR" target property learned to support
arguments to the emulator.
* The "CMAKE_FIND_PACKAGE_PREFER_CONFIG" variable was added to tell
"find_package()" calls to look for a package configuration file
first even if a find module is available.
* The "CMAKE_FRAMEWORK" variable was added to initialize the
"FRAMEWORK" property on all targets.
* The "CMAKE_VS_JUST_MY_CODE_DEBUGGING" variable and
"VS_JUST_MY_CODE_DEBUGGING" target property were added to enable the
Just My Code feature of the Visual Studio Debugger when compiling
with MSVC cl 19.05 and higher.
* The "CMAKE_MSVC_RUNTIME_LIBRARY" variable and
"MSVC_RUNTIME_LIBRARY" target property were introduced to select the
runtime library used by compilers targeting the MSVC ABI. See policy
"CMP0091".
* The "CMAKE_PROJECT_INCLUDE" and "CMAKE_PROJECT_INCLUDE_BEFORE"
variables were added to allow injection of custom code at the sites
of "project()" calls without knowing the project name a priori.
Properties
----------
* The "ADDITIONAL_CLEAN_FILES" target property and
"ADDITIONAL_CLEAN_FILES" directory property were added. They allow
to register additional files that should be removed during the clean
stage.
* The "PUBLIC_HEADER" and "PRIVATE_HEADER" properties may now be set
on Interface Libraries. The headers specified by those properties
can be installed using the "install(TARGETS)" command by passing the
"PUBLIC_HEADER" and "PRIVATE_HEADER" arguments respectively.
* The "VS_PACKAGE_REFERENCES" target property was added to tell
Visual Studio Generators to add references to "nuget" packages.
* The "VS_PROJECT_IMPORT" target property was added to allow managed
Visual Studio project files to import external ".props" files.
* The "VS_NO_SOLUTION_DEPLOY" target property was added to tell
Visual Studio Generators whether to deploy an artifact to the WinCE
or Windows Phone target device.
Modules
-------
* The "FindBoost" module was reworked to expose a more consistent
user experience between its “Config” and “Module” modes and with
other find modules in general.
* A new imported target "Boost::headers" is now defined (same as
"Boost::boost").
* New output variables "Boost_VERSION_MACRO",
"Boost_VERSION_MAJOR", "Boost_VERSION_MINOR",
"Boost_VERSION_PATCH", and "Boost_VERSION_COUNT" were added.
* The "QUIET" argument passed to "find_package()" is no longer
ignored in config mode. Note that the CMake package shipped with
Boost "1.70.0" ignores the "QUIET" argument passed to
"find_package()". This is fixed in the next Boost release.
* The input switch "Boost_DETAILED_FAILURE_MSG" was removed.
* "Boost_VERSION" now reports the version in "x.y.z" format in
module mode. See policy "CMP0093".
* The "FindCups" module now provides imported targets.
* The "FindEnvModules" module was added to use Lua- and TCL-based
environment modules in CTest Scripts.
* The "FindGLEW" module now provides an interface more consistent
with what upstream GLEW provides in its own CMake package files.
* The "FindPkgConfig" now populates "INTERFACE_LINK_OPTIONS"
property of imported targets with other (non-library) linker flags.
* The "FindPostgreSQL" module learned to find debug and release
variants separately.
* Modules "FindPython3", "FindPython2" and "FindPython" gained
additional lookup strategies and controls, and a new default. See
policy "CMP0094".
* Modules "FindPython", "FindPython2" and "FindPython3" gain a new
target (respectively "Python::Module", "Python2::Module" and
"Python3::Module") which can be used to develop Python modules.
* Modules "FindPython3", "FindPython2" and "FindPython" gain
capability to control how virtual environments are handled.
* The "UseSWIG" module learned to manage alternate library names by
passing "-interface " for "python" language or
"-dllimport " for "CSharp" language to the "SWIG"
compiler.
Generator Expressions
---------------------
* The "generator expressions" "C_COMPILER_ID", "CXX_COMPILER_ID",
"CUDA_COMPILER_ID", "Fortran_COMPILER_ID", "COMPILE_LANGUAGE",
"COMPILE_LANG_AND_ID", and "PLATFORM_ID" learned to support matching
one value from a comma-separated list.
CTest
-----
* The "ctest_submit()" command learned a new option: "BUILD_ID".
This can be used to store the ID assigned to this build by CDash to
a variable.
* The "ctest_update()" command learned to honor a new variable:
"CTEST_UPDATE_VERSION_OVERRIDE". This can be used to specify the
current version of your source tree rather than using the update
command to discover the current version that is checked out.
CPack
-----
* The "CPack IFW Generator" gained a new
"CPACK_IFW_PACKAGE_STYLE_SHEET" variable to customize the installer
stylesheet.
Deprecated and Removed Features
===============================
* The "cmake-server(7)" mode has been deprecated and will be removed
from a future version of CMake. Please port clients to use the
"cmake-file-api(7)" instead.
* The "ADDITIONAL_MAKE_CLEAN_FILES" directory property is now
deprecated. Use the "ADDITIONAL_CLEAN_FILES" directory property
instead.
* The variable "CMAKE_AUTOMOC_RELAXED_MODE" is considered
deprecated. Support still exists but will be removed in future
versions.
* The "export(PACKAGE)" command now does nothing unless enabled via
"CMAKE_EXPORT_PACKAGE_REGISTRY". See policy "CMP0090".
* The "Xcode" generator now requires at least Xcode 5.
* An explicit deprecation diagnostic was added for policy "CMP0066"
("CMP0065" and below were already deprecated). The "cmake-
policies(7)" manual explains that the OLD behaviors of all policies
are deprecated and that projects should port to the NEW behaviors.
Other Changes
=============
* CMake learned how to compile C++14 with the IBM AIX XL compiler
and the SunPro compiler and to compile C++20 with the AppleClang
compiler.
* With MSVC-like compilers the value of "CMAKE__FLAGS" no
longer contains warning flags like "/W3" by default. See policy
"CMP0092".
* IBM Clang-based XL compilers that define "__ibmxl__" now use the
compiler id "XLClang" instead of "XL". See policy "CMP0089".
* The "file(REMOVE)" and "file(REMOVE_RECURSE)" commands were
changed to ignore empty arguments with a warning instead of treating
them as a relative path and removing the contents of the current
directory.
2019-07-19 11:06:23 +02:00
|
|
|
SHA1 (cmake-3.15.0.tar.gz) = 0a1c3870d566061da8b9ed02bbfe17a39c7bf3cd
|
|
|
|
RMD160 (cmake-3.15.0.tar.gz) = 7f765e330737c04e99473804cacab752b7609233
|
|
|
|
SHA512 (cmake-3.15.0.tar.gz) = f7286513a215a9b9094c1f630761995dbc7f4e33c38bc5585ddc89d9b4742630962921aff59570e0de39887e0cc66df6eebc83ab478796876364d2de5d2c0d6f
|
|
|
|
Size (cmake-3.15.0.tar.gz) = 9266870 bytes
|
2018-10-16 18:37:21 +02:00
|
|
|
SHA1 (patch-CMakeLists.txt) = 01329182725814e27bc3945d1d62555b3a4a4033
|
add CMAKE_PKGSRC_BUILD_FLAGS for pkgsrc build to set opts
With pkgsrc built packages, the goal is to have the user's compiler
optimization flags set by the user using CFLAGS, etc. To that end,
the cmake Makefile has subst.mk code to "sed -e 's,-O.,,'" out opt.
flags in Modules/Compiler/*.cmake for cmake compiles with the
CMAKE_BUILD_TYPE set (e.g. to Release).
Unfortunately, this sed-based approach has two drawbacks: First, it
gets applied to packages build with cmake outside of pkgsrc (changing
the semantics of -DCMAKE_BUILD_TYPE=Release in an unexpected way by
remove -O flags from it). Second, the sed expression damages some
of the Modules/Compiler/*.cmake as not all opt flags match the "-O."
regular expression.
To address this we:
1. remove the subst.mk sed operation on Modules/Compiler/*.cmake
2. add a new config variable CMAKE_PKGSRC_BUILD_FLAGS that should
be set for pkgsrc-based cmake builds (e.g. in mk/configure/cmake.mk)
3. we add a patch for Modules/Compiler/GNU.cmake to look for
CMAKE_PKGSRC_BUILD_FLAGS and choose a set of non-opt compiler
flags when this is set (to provide the desired behavior under pksrc).
note that the GNU.cmake file is also used by clang. We can
make the corresponding changes to other compilers if desired.
The result is that cmake compiles under pkgsrc set CMAKE_PKGSRC_BUILD_FLAGS
and follow CFLAGS, etc. (bypassing CMAKE_BUILD_TYPE), but cmake compiles
outside of pkgsrc follow the standard cmake semantics for CMAKE_BUILD_TYPE.
Also, we no longer damage Modules/Compiler/*.cmake with sed.
2018-04-08 21:09:45 +02:00
|
|
|
SHA1 (patch-Modules_Compiler_GNU.cmake) = e091c53ac3f3a6cd811119d3231563df32e76bf9
|
2019-01-04 18:47:12 +01:00
|
|
|
SHA1 (patch-Modules_FindCurses.cmake) = 1372faaf1b7a1b5f5f592c797f39e1a9002a24a6
|
|
|
|
SHA1 (patch-Modules_FindGTK2.cmake) = 51b7520d35fdec2a7bfcf494fe35ce0e3863e4ee
|
2017-07-19 19:44:34 +02:00
|
|
|
SHA1 (patch-Modules_FindPythonInterp.cmake) = d1b39bdcd654f2a4fc63463cd20de656cce3cf8f
|
|
|
|
SHA1 (patch-Modules_FindPythonLibs.cmake) = b5cedc6a2354beaf08e06d416c150154a7dc1f05
|
2015-06-12 20:50:03 +02:00
|
|
|
SHA1 (patch-Modules_FindX11.cmake) = 124a2d51155cb4455e8b829dc74598cbd50a4e1c
|
2017-07-19 19:44:34 +02:00
|
|
|
SHA1 (patch-Modules_Platform_UnixPaths.cmake) = 38720e11b7b62cb702e80da19e044f070298f2db
|
2018-04-26 19:30:36 +02:00
|
|
|
SHA1 (patch-Source_CMakeLists.txt) = 533667d43048b8bc2be17a766b5dc32f3101866e
|
2018-10-16 18:37:21 +02:00
|
|
|
SHA1 (patch-Source_Checks_Curses_CMakeLists.txt) = 37d95c6162cc1f4c0e47b537ac8204cb9fe75b8c
|
2018-09-08 08:55:51 +02:00
|
|
|
SHA1 (patch-Source_Checks_Curses_CheckCurses.c) = c86cae48f7b39fb735eba4788d4e9d595b2ccf3b
|
cmake: updated to 3.15.0
3.15.0:
New Features
============
Generators
----------
* The "Xcode" generator now supports per-target schemes. See the
"CMAKE_XCODE_GENERATE_SCHEME" variable and "XCODE_GENERATE_SCHEME"
target property.
* The "Green Hills MULTI" generator has been updated:
* It now supports the "add_custom_command()" and
"add_custom_target()" commands.
* It is now available on Linux.
Languages
---------
* Preliminary support for the "Swift" language was added to the
"Ninja" generator:
* Use the "SWIFTC" environment variable to specify a compiler.
* The "Swift_DEPENDENCIES_FILE" target property and
"Swift_DEPENDENCIES_FILE" source file property were added to
customize dependency files.
* The "Swift_MODULE_NAME" target property was added to customize
the Swift module name.
* The "Swift_DIAGNOSTICS_FILE" source property was added to
indicate where to write the serialised Swift diagnostics.
The Swift support is experimental, not considered stable, and may
change in future releases of CMake.
Compilers
---------
* The "Clang" compiler variant on Windows that targets the MSVC ABI
but has a GNU-like command line is now supported.
* Support for the Clang-based ARM compiler was added with compiler
id "ARMClang".
* Support was added for the IAR compiler architectures Renesas RX,
RL78, RH850 and Texas Instruments MSP430.
* Support was added for the IAR compilers built for Linux (IAR
BuildLx).
Command-Line
------------
* The "CMAKE_GENERATOR" environment variable was added to specify a
default generator to use when "cmake(1)" is run without a "-G"
option. Additionally, environment variables
"CMAKE_GENERATOR_PLATFORM", "CMAKE_GENERATOR_TOOLSET", and
"CMAKE_GENERATOR_INSTANCE" were created to configure the generator.
* The "cmake(1)" "--build" tool "--target" parameter gained support
for multiple targets, e.g. "cmake --build . --target Library1
Library2". It now also has a short form "-t" alias, e.g. "cmake
--build . -t Library1 Library2".
* The "cmake(1)" command gained a new "--install" option. This may
be used after building a project to run installation without using
the generated build system or the native build tool.
* The "cmake(1)" command learned a new CLI option "--loglevel".
* The "cmake(1)" "-E remove_directory" command-line tool learned to
support removing multiple directories.
* The "cmake(1)" "-E tar" tool has been improved:
* It now continues adding files to an archive even if some of the
files are not readable. This behavior is more consistent with the
classic "tar" tool.
* It now parses all flags, and if an invalid flag was provided, a
warning is issued.
* It now displays an error if no action flag was specified, along
with a list of possible actions: "t" (list), "c" (create) or "x"
(extract).
* It now supports extracting ("-x") or listing ("-t") only
specific files or directories.
* It now supports Zstandard compression with a "--zstd" option.
Zstandard was designed to give a compression ratio comparable to
that of the DEFLATE (zip) algorithm, but faster, especially for
decompression.
Commands
--------
* The "add_custom_command()" and "add_custom_target()" commands
gained a new "JOB_POOL" option that works with the "Ninja" generator
to set the pool variable on the build statement.
* The "add_library()" command "ALIAS" option learned to support
import libraries of the "UNKNOWN" type.
* The "cmake_parse_arguments()" command gained an additional
"_KEYWORDS_MISSING_VALUES" output variable to report keyword
arguments that were given by the caller with no values.
* The "execute_process()" command gained a "COMMAND_ECHO" option and
supporting "CMAKE_EXECUTE_PROCESS_COMMAND_ECHO" variable to enable
echoing of the command-line string before execution.
* The "file(INSTALL)" command learned a new argument,
"FOLLOW_SYMLINK_CHAIN", which can be used to recursively resolve and
install symlinks.
* "list()" learned new sub-commands: "PREPEND", "POP_FRONT" and
"POP_BACK".
* The "message()" command learned new types: "NOTICE", "VERBOSE",
"DEBUG" and "TRACE".
* The "string()" learned a new sub-command "REPEAT".
Variables
---------
* The "CMAKE_CROSSCOMPILING_EMULATOR" variable and corresponding
"CROSSCOMPILING_EMULATOR" target property learned to support
arguments to the emulator.
* The "CMAKE_FIND_PACKAGE_PREFER_CONFIG" variable was added to tell
"find_package()" calls to look for a package configuration file
first even if a find module is available.
* The "CMAKE_FRAMEWORK" variable was added to initialize the
"FRAMEWORK" property on all targets.
* The "CMAKE_VS_JUST_MY_CODE_DEBUGGING" variable and
"VS_JUST_MY_CODE_DEBUGGING" target property were added to enable the
Just My Code feature of the Visual Studio Debugger when compiling
with MSVC cl 19.05 and higher.
* The "CMAKE_MSVC_RUNTIME_LIBRARY" variable and
"MSVC_RUNTIME_LIBRARY" target property were introduced to select the
runtime library used by compilers targeting the MSVC ABI. See policy
"CMP0091".
* The "CMAKE_PROJECT_INCLUDE" and "CMAKE_PROJECT_INCLUDE_BEFORE"
variables were added to allow injection of custom code at the sites
of "project()" calls without knowing the project name a priori.
Properties
----------
* The "ADDITIONAL_CLEAN_FILES" target property and
"ADDITIONAL_CLEAN_FILES" directory property were added. They allow
to register additional files that should be removed during the clean
stage.
* The "PUBLIC_HEADER" and "PRIVATE_HEADER" properties may now be set
on Interface Libraries. The headers specified by those properties
can be installed using the "install(TARGETS)" command by passing the
"PUBLIC_HEADER" and "PRIVATE_HEADER" arguments respectively.
* The "VS_PACKAGE_REFERENCES" target property was added to tell
Visual Studio Generators to add references to "nuget" packages.
* The "VS_PROJECT_IMPORT" target property was added to allow managed
Visual Studio project files to import external ".props" files.
* The "VS_NO_SOLUTION_DEPLOY" target property was added to tell
Visual Studio Generators whether to deploy an artifact to the WinCE
or Windows Phone target device.
Modules
-------
* The "FindBoost" module was reworked to expose a more consistent
user experience between its “Config” and “Module” modes and with
other find modules in general.
* A new imported target "Boost::headers" is now defined (same as
"Boost::boost").
* New output variables "Boost_VERSION_MACRO",
"Boost_VERSION_MAJOR", "Boost_VERSION_MINOR",
"Boost_VERSION_PATCH", and "Boost_VERSION_COUNT" were added.
* The "QUIET" argument passed to "find_package()" is no longer
ignored in config mode. Note that the CMake package shipped with
Boost "1.70.0" ignores the "QUIET" argument passed to
"find_package()". This is fixed in the next Boost release.
* The input switch "Boost_DETAILED_FAILURE_MSG" was removed.
* "Boost_VERSION" now reports the version in "x.y.z" format in
module mode. See policy "CMP0093".
* The "FindCups" module now provides imported targets.
* The "FindEnvModules" module was added to use Lua- and TCL-based
environment modules in CTest Scripts.
* The "FindGLEW" module now provides an interface more consistent
with what upstream GLEW provides in its own CMake package files.
* The "FindPkgConfig" now populates "INTERFACE_LINK_OPTIONS"
property of imported targets with other (non-library) linker flags.
* The "FindPostgreSQL" module learned to find debug and release
variants separately.
* Modules "FindPython3", "FindPython2" and "FindPython" gained
additional lookup strategies and controls, and a new default. See
policy "CMP0094".
* Modules "FindPython", "FindPython2" and "FindPython3" gain a new
target (respectively "Python::Module", "Python2::Module" and
"Python3::Module") which can be used to develop Python modules.
* Modules "FindPython3", "FindPython2" and "FindPython" gain
capability to control how virtual environments are handled.
* The "UseSWIG" module learned to manage alternate library names by
passing "-interface " for "python" language or
"-dllimport " for "CSharp" language to the "SWIG"
compiler.
Generator Expressions
---------------------
* The "generator expressions" "C_COMPILER_ID", "CXX_COMPILER_ID",
"CUDA_COMPILER_ID", "Fortran_COMPILER_ID", "COMPILE_LANGUAGE",
"COMPILE_LANG_AND_ID", and "PLATFORM_ID" learned to support matching
one value from a comma-separated list.
CTest
-----
* The "ctest_submit()" command learned a new option: "BUILD_ID".
This can be used to store the ID assigned to this build by CDash to
a variable.
* The "ctest_update()" command learned to honor a new variable:
"CTEST_UPDATE_VERSION_OVERRIDE". This can be used to specify the
current version of your source tree rather than using the update
command to discover the current version that is checked out.
CPack
-----
* The "CPack IFW Generator" gained a new
"CPACK_IFW_PACKAGE_STYLE_SHEET" variable to customize the installer
stylesheet.
Deprecated and Removed Features
===============================
* The "cmake-server(7)" mode has been deprecated and will be removed
from a future version of CMake. Please port clients to use the
"cmake-file-api(7)" instead.
* The "ADDITIONAL_MAKE_CLEAN_FILES" directory property is now
deprecated. Use the "ADDITIONAL_CLEAN_FILES" directory property
instead.
* The variable "CMAKE_AUTOMOC_RELAXED_MODE" is considered
deprecated. Support still exists but will be removed in future
versions.
* The "export(PACKAGE)" command now does nothing unless enabled via
"CMAKE_EXPORT_PACKAGE_REGISTRY". See policy "CMP0090".
* The "Xcode" generator now requires at least Xcode 5.
* An explicit deprecation diagnostic was added for policy "CMP0066"
("CMP0065" and below were already deprecated). The "cmake-
policies(7)" manual explains that the OLD behaviors of all policies
are deprecated and that projects should port to the NEW behaviors.
Other Changes
=============
* CMake learned how to compile C++14 with the IBM AIX XL compiler
and the SunPro compiler and to compile C++20 with the AppleClang
compiler.
* With MSVC-like compilers the value of "CMAKE__FLAGS" no
longer contains warning flags like "/W3" by default. See policy
"CMP0092".
* IBM Clang-based XL compilers that define "__ibmxl__" now use the
compiler id "XLClang" instead of "XL". See policy "CMP0089".
* The "file(REMOVE)" and "file(REMOVE_RECURSE)" commands were
changed to ignore empty arguments with a warning instead of treating
them as a relative path and removing the contents of the current
directory.
2019-07-19 11:06:23 +02:00
|
|
|
SHA1 (patch-Source_Checks_cm__cxx17__check.cpp) = 69619695a17798e7bcf1416a2eb2abbca0369481
|
cmake: updated to 3.14.0
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.
2019-03-18 10:05:59 +01:00
|
|
|
SHA1 (patch-Source_Checks_cm_cxx_features.cmake) = 3ae61236f065729a5cf719abbad0f5be618a0548
|
2017-07-19 19:44:34 +02:00
|
|
|
SHA1 (patch-Source_CursesDialog_ccmake.cxx) = d7baafe6612b6ac9b0542ed10ffcf90cd8d1df87
|
cmake: updated to 3.14.0
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.
2019-03-18 10:05:59 +01:00
|
|
|
SHA1 (patch-Source_cmAlgorithms.h) = c51cc61b1a95c07bd903363d4a04e1430e510516
|
cmake: updated to 3.15.0
3.15.0:
New Features
============
Generators
----------
* The "Xcode" generator now supports per-target schemes. See the
"CMAKE_XCODE_GENERATE_SCHEME" variable and "XCODE_GENERATE_SCHEME"
target property.
* The "Green Hills MULTI" generator has been updated:
* It now supports the "add_custom_command()" and
"add_custom_target()" commands.
* It is now available on Linux.
Languages
---------
* Preliminary support for the "Swift" language was added to the
"Ninja" generator:
* Use the "SWIFTC" environment variable to specify a compiler.
* The "Swift_DEPENDENCIES_FILE" target property and
"Swift_DEPENDENCIES_FILE" source file property were added to
customize dependency files.
* The "Swift_MODULE_NAME" target property was added to customize
the Swift module name.
* The "Swift_DIAGNOSTICS_FILE" source property was added to
indicate where to write the serialised Swift diagnostics.
The Swift support is experimental, not considered stable, and may
change in future releases of CMake.
Compilers
---------
* The "Clang" compiler variant on Windows that targets the MSVC ABI
but has a GNU-like command line is now supported.
* Support for the Clang-based ARM compiler was added with compiler
id "ARMClang".
* Support was added for the IAR compiler architectures Renesas RX,
RL78, RH850 and Texas Instruments MSP430.
* Support was added for the IAR compilers built for Linux (IAR
BuildLx).
Command-Line
------------
* The "CMAKE_GENERATOR" environment variable was added to specify a
default generator to use when "cmake(1)" is run without a "-G"
option. Additionally, environment variables
"CMAKE_GENERATOR_PLATFORM", "CMAKE_GENERATOR_TOOLSET", and
"CMAKE_GENERATOR_INSTANCE" were created to configure the generator.
* The "cmake(1)" "--build" tool "--target" parameter gained support
for multiple targets, e.g. "cmake --build . --target Library1
Library2". It now also has a short form "-t" alias, e.g. "cmake
--build . -t Library1 Library2".
* The "cmake(1)" command gained a new "--install" option. This may
be used after building a project to run installation without using
the generated build system or the native build tool.
* The "cmake(1)" command learned a new CLI option "--loglevel".
* The "cmake(1)" "-E remove_directory" command-line tool learned to
support removing multiple directories.
* The "cmake(1)" "-E tar" tool has been improved:
* It now continues adding files to an archive even if some of the
files are not readable. This behavior is more consistent with the
classic "tar" tool.
* It now parses all flags, and if an invalid flag was provided, a
warning is issued.
* It now displays an error if no action flag was specified, along
with a list of possible actions: "t" (list), "c" (create) or "x"
(extract).
* It now supports extracting ("-x") or listing ("-t") only
specific files or directories.
* It now supports Zstandard compression with a "--zstd" option.
Zstandard was designed to give a compression ratio comparable to
that of the DEFLATE (zip) algorithm, but faster, especially for
decompression.
Commands
--------
* The "add_custom_command()" and "add_custom_target()" commands
gained a new "JOB_POOL" option that works with the "Ninja" generator
to set the pool variable on the build statement.
* The "add_library()" command "ALIAS" option learned to support
import libraries of the "UNKNOWN" type.
* The "cmake_parse_arguments()" command gained an additional
"_KEYWORDS_MISSING_VALUES" output variable to report keyword
arguments that were given by the caller with no values.
* The "execute_process()" command gained a "COMMAND_ECHO" option and
supporting "CMAKE_EXECUTE_PROCESS_COMMAND_ECHO" variable to enable
echoing of the command-line string before execution.
* The "file(INSTALL)" command learned a new argument,
"FOLLOW_SYMLINK_CHAIN", which can be used to recursively resolve and
install symlinks.
* "list()" learned new sub-commands: "PREPEND", "POP_FRONT" and
"POP_BACK".
* The "message()" command learned new types: "NOTICE", "VERBOSE",
"DEBUG" and "TRACE".
* The "string()" learned a new sub-command "REPEAT".
Variables
---------
* The "CMAKE_CROSSCOMPILING_EMULATOR" variable and corresponding
"CROSSCOMPILING_EMULATOR" target property learned to support
arguments to the emulator.
* The "CMAKE_FIND_PACKAGE_PREFER_CONFIG" variable was added to tell
"find_package()" calls to look for a package configuration file
first even if a find module is available.
* The "CMAKE_FRAMEWORK" variable was added to initialize the
"FRAMEWORK" property on all targets.
* The "CMAKE_VS_JUST_MY_CODE_DEBUGGING" variable and
"VS_JUST_MY_CODE_DEBUGGING" target property were added to enable the
Just My Code feature of the Visual Studio Debugger when compiling
with MSVC cl 19.05 and higher.
* The "CMAKE_MSVC_RUNTIME_LIBRARY" variable and
"MSVC_RUNTIME_LIBRARY" target property were introduced to select the
runtime library used by compilers targeting the MSVC ABI. See policy
"CMP0091".
* The "CMAKE_PROJECT_INCLUDE" and "CMAKE_PROJECT_INCLUDE_BEFORE"
variables were added to allow injection of custom code at the sites
of "project()" calls without knowing the project name a priori.
Properties
----------
* The "ADDITIONAL_CLEAN_FILES" target property and
"ADDITIONAL_CLEAN_FILES" directory property were added. They allow
to register additional files that should be removed during the clean
stage.
* The "PUBLIC_HEADER" and "PRIVATE_HEADER" properties may now be set
on Interface Libraries. The headers specified by those properties
can be installed using the "install(TARGETS)" command by passing the
"PUBLIC_HEADER" and "PRIVATE_HEADER" arguments respectively.
* The "VS_PACKAGE_REFERENCES" target property was added to tell
Visual Studio Generators to add references to "nuget" packages.
* The "VS_PROJECT_IMPORT" target property was added to allow managed
Visual Studio project files to import external ".props" files.
* The "VS_NO_SOLUTION_DEPLOY" target property was added to tell
Visual Studio Generators whether to deploy an artifact to the WinCE
or Windows Phone target device.
Modules
-------
* The "FindBoost" module was reworked to expose a more consistent
user experience between its “Config” and “Module” modes and with
other find modules in general.
* A new imported target "Boost::headers" is now defined (same as
"Boost::boost").
* New output variables "Boost_VERSION_MACRO",
"Boost_VERSION_MAJOR", "Boost_VERSION_MINOR",
"Boost_VERSION_PATCH", and "Boost_VERSION_COUNT" were added.
* The "QUIET" argument passed to "find_package()" is no longer
ignored in config mode. Note that the CMake package shipped with
Boost "1.70.0" ignores the "QUIET" argument passed to
"find_package()". This is fixed in the next Boost release.
* The input switch "Boost_DETAILED_FAILURE_MSG" was removed.
* "Boost_VERSION" now reports the version in "x.y.z" format in
module mode. See policy "CMP0093".
* The "FindCups" module now provides imported targets.
* The "FindEnvModules" module was added to use Lua- and TCL-based
environment modules in CTest Scripts.
* The "FindGLEW" module now provides an interface more consistent
with what upstream GLEW provides in its own CMake package files.
* The "FindPkgConfig" now populates "INTERFACE_LINK_OPTIONS"
property of imported targets with other (non-library) linker flags.
* The "FindPostgreSQL" module learned to find debug and release
variants separately.
* Modules "FindPython3", "FindPython2" and "FindPython" gained
additional lookup strategies and controls, and a new default. See
policy "CMP0094".
* Modules "FindPython", "FindPython2" and "FindPython3" gain a new
target (respectively "Python::Module", "Python2::Module" and
"Python3::Module") which can be used to develop Python modules.
* Modules "FindPython3", "FindPython2" and "FindPython" gain
capability to control how virtual environments are handled.
* The "UseSWIG" module learned to manage alternate library names by
passing "-interface " for "python" language or
"-dllimport " for "CSharp" language to the "SWIG"
compiler.
Generator Expressions
---------------------
* The "generator expressions" "C_COMPILER_ID", "CXX_COMPILER_ID",
"CUDA_COMPILER_ID", "Fortran_COMPILER_ID", "COMPILE_LANGUAGE",
"COMPILE_LANG_AND_ID", and "PLATFORM_ID" learned to support matching
one value from a comma-separated list.
CTest
-----
* The "ctest_submit()" command learned a new option: "BUILD_ID".
This can be used to store the ID assigned to this build by CDash to
a variable.
* The "ctest_update()" command learned to honor a new variable:
"CTEST_UPDATE_VERSION_OVERRIDE". This can be used to specify the
current version of your source tree rather than using the update
command to discover the current version that is checked out.
CPack
-----
* The "CPack IFW Generator" gained a new
"CPACK_IFW_PACKAGE_STYLE_SHEET" variable to customize the installer
stylesheet.
Deprecated and Removed Features
===============================
* The "cmake-server(7)" mode has been deprecated and will be removed
from a future version of CMake. Please port clients to use the
"cmake-file-api(7)" instead.
* The "ADDITIONAL_MAKE_CLEAN_FILES" directory property is now
deprecated. Use the "ADDITIONAL_CLEAN_FILES" directory property
instead.
* The variable "CMAKE_AUTOMOC_RELAXED_MODE" is considered
deprecated. Support still exists but will be removed in future
versions.
* The "export(PACKAGE)" command now does nothing unless enabled via
"CMAKE_EXPORT_PACKAGE_REGISTRY". See policy "CMP0090".
* The "Xcode" generator now requires at least Xcode 5.
* An explicit deprecation diagnostic was added for policy "CMP0066"
("CMP0065" and below were already deprecated). The "cmake-
policies(7)" manual explains that the OLD behaviors of all policies
are deprecated and that projects should port to the NEW behaviors.
Other Changes
=============
* CMake learned how to compile C++14 with the IBM AIX XL compiler
and the SunPro compiler and to compile C++20 with the AppleClang
compiler.
* With MSVC-like compilers the value of "CMAKE__FLAGS" no
longer contains warning flags like "/W3" by default. See policy
"CMP0092".
* IBM Clang-based XL compilers that define "__ibmxl__" now use the
compiler id "XLClang" instead of "XL". See policy "CMP0089".
* The "file(REMOVE)" and "file(REMOVE_RECURSE)" commands were
changed to ignore empty arguments with a warning instead of treating
them as a relative path and removing the contents of the current
directory.
2019-07-19 11:06:23 +02:00
|
|
|
SHA1 (patch-Source_cmArchiveWrite.cxx) = 01977c6033a849de52b086aa4227107df3cde04e
|
cmake: updated to 3.14.0
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.
2019-03-18 10:05:59 +01:00
|
|
|
SHA1 (patch-Source_cm__string__view.hxx) = 9f2fa518d26dcaebb1e988c8027fb16456e1b80d
|
2016-03-14 11:49:55 +01:00
|
|
|
SHA1 (patch-Utilities_KWIML_CMakeLists.txt) = e4bdf9fc58757e87bf7e3e3e195839eededbc796
|
2017-12-14 23:13:34 +01:00
|
|
|
SHA1 (patch-bootstrap) = 9d99cfe9f9ae826250f94bc297f5a22b8de09e84
|