Path to this page:
./
devel/cmake,
Cross platform make
Branch: CURRENT,
Version: 3.31.1,
Package name: cmake-3.31.1,
Maintainer: pkgsrc-usersCMake 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.
Required to run:[
www/curl] [
archivers/libarchive] [
devel/libuv]
Required to build:[
misc/rhash] [
pkgtools/cwrappers]
Master sites:
Filesize: 11430.099 KB
Version history: (Expand)
- (2024-12-11) Updated to version: cmake-3.31.1
- (2024-12-11) Updated to version: cmake-3.31.2
- (2024-11-27) Updated to version: cmake-3.31.1
- (2024-11-15) Updated to version: cmake-3.31.0nb1
- (2024-11-10) Updated to version: cmake-3.31.0
- (2024-11-01) Updated to version: cmake-3.30.5nb2
CVS history: (Expand)
2024-12-11 14:44:31 by Adam Ciarcinski | Files touched by this commit (2) |
Log message:
cmake: downgraded to 3.31.1 for the sake of 1 December
|
2024-12-11 12:34:32 by Adam Ciarcinski | Files touched by this commit (2) | |
Log message:
cmake cmake-gui: updated to 3.31.2
CMake 3.31.2
* AIX: Disallow TARGET_SONAME_* genex for AIX_SHARED_LIBRARY_ARCHIVE targets
* AIX: Propagate AIX_SHARED_LIBRARY_ARCHIVE through exports
* GNU linker: Use single-argument form of --dependency-file flag
* fileapi: Do not expose flags for linker-generated dependencies
* LINK_OPTIONS: Fix crash on empty LINKER: prefix
* ci: Update to ROCm 6 HIP on Fedora 41
* Tutorial: Restore TODO 4 comment in step 7
* Intel/Classic: deactivate linker dependency file support
* FindPython: Ensure SABIModule is found in all cases
* Autogen: Restore <target_name>_autogen_timestamp_deps target
* Autogen: Fix Ninja Multi-Config dependency graph regression
* Autogen: Revert adding ui files to byproducts of the timestamp target
* FindRuby: Add support for 3.4
|
2024-11-27 08:02:35 by Adam Ciarcinski | Files touched by this commit (5) | |
Log message:
cmake cmake-gui: updated to 3.31.1
3.31.1
This version made no changes to documented features or interfaces. Some
implementation updates were made to support ecosystem changes and/or fix
regressions.
|
2024-11-14 23:22:33 by Thomas Klausner | Files touched by this commit (2429) |
Log message:
*: recursive bump for icu 76 shlib major version bump
|
2024-11-10 20:58:31 by Adam Ciarcinski | Files touched by this commit (8) | |
Log message:
cmake cmake-gui: updated to 3.31.0
CMake 3.31 Release Notes
************************
Changes made since CMake 3.30 include the following.
New Features
============
Presets
-------
* "cmake-presets(7)" files may now include comments using the key
"$comment" at any level within the JSON object to provide
documentation.
* "cmake-presets(7)" files may now request graphviz output using the
"graphviz" key in a configure preset.
Generators
----------
* The Ninja Generators and Makefile Generators now produce a "codegen"
build target. See policy "CMP0171". It drives a subset of the
build graph sufficient to run custom commands created with
"add_custom_command()"'s new "CODEGEN" option.
Command-Line
------------
* The "cmake --workflow" mode now accepts a preset name as the first
argument, allowing the simpler command line "cmake --workflow
<preset>".
* The "cmake -LR[A][H]" option was added to list cache entries whose
names match a regular expression.
Compilers
---------
* The LFortran compiler is now supported with "compiler id"
"LFortran".
Commands
--------
* The "add_custom_command()" command gained a "CODEGEN" \
option to mark
a custom command's outputs as dependencies of a "codegen" target.
See policy "CMP0171".
* The "cmake_pkg_config()" command was added as an endpoint for using
CMake's native pkg-config format parser. The only supported option
in this release is "EXTRACT", which provides low-level access to the
values produced by parsing a pkg-config file. For most users, this
is not yet a suitable replacement for the "FindPkgConfig" module.
* The "file(ARCHIVE_CREATE)" command gained a "WORKING_DIRECTORY"
option to specify a working directory for the archiving process.
* The "file(MAKE_DIRECTORY)" command gained a "RESULT" option to
capture failure in a result variable.
* The "install(FILES)" and "install(DIRECTORY)" commands' \
"TYPE"
argument gained support for a "LIBEXEC" type.
Variables
---------
* The "CMAKE_AIX_SHARED_LIBRARY_ARCHIVE" variable and corresponding
"AIX_SHARED_LIBRARY_ARCHIVE" target property were added to create
shared libraries on AIX as shared library archives.
* The "CMAKE_EXPORT_BUILD_DATABASE" variable, a corresponding
"CMAKE_EXPORT_BUILD_DATABASE" environment variable, and an
"EXPORT_BUILD_DATABASE" target property, were added to enable
exporting C++ module compile commands. This is only supported with
Ninja Generators.
* The "CMAKE_HOST_EXECUTABLE_SUFFIX" variable was added to provide the
suffix for executable names on the host platform.
* The "CMAKE_<LANG>_HOST_COMPILER_ID" and
"CMAKE_<LANG>_HOST_COMPILER_VERSION" variables were added, where
"<LANG>" is either "CUDA" or "HIP". They \
are populated when
"CMAKE_<LANG>_COMPILER_ID" is "NVIDIA" to identify \
NVCC's host
compiler.
* The "CMAKE_<LANG>_STANDARD_LINK_DIRECTORIES" variable was added.
Toolchain files can set this variable to control which link library
directory paths are always passed to the compiler for the specified
language.
* The "CMAKE_LINK_LIBRARIES_STRATEGY" variable and corresponding
"LINK_LIBRARIES_STRATEGY" target property were added to optionally
specify the strategy CMake uses to generate link lines.
Properties
----------
* The "MACOSX_FRAMEWORK_BUNDLE_NAME" target property was added to set
the "CFBundleName" key in an Apple "FRAMEWORK"'s \
"Info.plist" file.
* The "UNITY_BUILD" target property now supports the "CUDA" \
language.
* The "VS_FRAMEWORK_REFERENCES" target property was added to tell
Visual Studio Generators to add framework references.
Modules
-------
* Check modules now support a "CMAKE_REQUIRED_LINK_DIRECTORIES"
variable. The following modules gained this support:
* "CMakePushCheckState"
* "CheckCCompilerFlag"
* "CheckCSourceCompiles"
* "CheckCSourceRuns"
* "CheckCXXCompilerFlag"
* "CheckCXXSourceCompiles"
* "CheckCXXSourceRuns"
* "CheckCXXSymbolExists"
* "CheckCompilerFlag"
* "CheckFortranCompilerFlag"
* "CheckFortranFunctionExists"
* "CheckFortranSourceCompiles"
* "CheckFortranSourceRuns"
* "CheckFunctionExists"
* "CheckIncludeFile"
* "CheckIncludeFileCXX"
* "CheckIncludeFiles"
* "CheckOBJCCompilerFlag"
* "CheckLibraryExists"
* "CheckOBJCCompilerFlag"
* "CheckOBJCSourceCompiles"
* "CheckOBJCSourceRuns"
* "CheckOBJCXXCompilerFlag"
* "CheckOBJCXXSourceCompiles"
* "CheckOBJCXXSourceRuns"
* "CheckPrototypeDefinition"
* "CheckSourceCompiles"
* "CheckSourceRuns"
* "CheckStructHasMember"
* "CheckSymbolExists"
* "CheckTypeSize"
* "CheckVariableExists"
* The "CMakePackageConfigHelpers" module's
"generate_apple_platform_selection_file()" function gained support
for iOS Mac Catalyst.
* The "GoogleTest" module "gtest_discover_tests()" command \
gained a
new "DISCOVERY_EXTRA_ARGS" keyword. It allows extra arguments to be
appended to the command line when querying for the list of tests.
* The "FindCUDAToolkit" module now provides a "CUDA::nvml_static"
target.
* The "FindOpenMP" module gained support for the "CUDA" language.
CTest
-----
* The "ctest_submit()" command and "ctest -T Submit" step \
now verify
TLS server certificates for connections to "https://" URLs by
default. See the "CTEST_TLS_VERIFY" variable for details.
* The "ctest_submit()" command and "ctest -T Submit" step \
now require
TLS 1.2 or higher for connections to "https://" URLs by default.
See the "CTEST_TLS_VERSION" variable for details.
CPack
-----
* The "CPack DEB Generator" gained a \
"CPACK_DEBIAN_PACKAGE_MULTIARCH"
option to support multi-arch packages.
* The "CPack IFW Generator" gained the new
"CPACK_IFW_PACKAGE_PRODUCT_IMAGE_URLS" variable to specify images
associated with entries of "CPACK_IFW_PACKAGE_PRODUCT_IMAGES". This
feature is available for QtIFW 4.0 and newer.
* The "CPack RPM Generator" gained support for "zstd" as a
"CPACK_RPM_COMPRESSION_TYPE" value.
* The "CPack" module enables per-machine installation by default in
the "CPack WIX Generator". See policy "CMP0172" and the
"CPACK_WIX_INSTALL_SCOPE" variable.
Deprecated and Removed Features
===============================
* Compatibility with versions of CMake older than 3.10 is now
deprecated and will be removed from a future version. Calls to
"cmake_minimum_required()" or "cmake_policy()" that set \
the policy
version to an older value now issue a deprecation diagnostic.
* The "CMakeFindFrameworks" module has been deprecated via \
"CMP0173".
Projects should use "find_library()" instead.
* The "Visual Studio 12 2013" generator has been removed.
Other Changes
=============
* When static libraries on link lines are de-duplicated (by policy
"CMP0156"), the first occurrence is now kept on all platforms. See
policy "CMP0179".
* Empty list elements in the "TEST_LAUNCHER" and
"CROSSCOMPILING_EMULATOR" target properties are now preserved by:
* The "add_test()" command.
* The "ExternalData_Add_Test()" command from the "ExternalData"
module.
* The "gtest_add_tests()" and "gtest_discover_tests()" \
commands from
the "GoogleTest" module. Empty list elements after the
"EXTRA_ARGS" keyword of these two commands are also now preserved.
See policy "CMP0178".
* The "execute_process()" command's "ENCODING" option, \
meaningful on
Windows, now defaults to "UTF-8". See policy "CMP0176".
* The "file(DOWNLOAD)" and "file(UPLOAD)" commands now verify TLS
server certificates for connections to "https://" URLs by default.
See the "CMAKE_TLS_VERIFY" variable for details. This change was
made without a policy so that users are protected even when building
projects that have not been updated. Users may set the
"CMAKE_TLS_VERIFY" environment variable to "0" to restore \
the old
default.
* The "file(DOWNLOAD)" and "file(UPLOAD)" commands now \
require TLS 1.2
or higher for connections to "https://" URLs by default. See the
"CMAKE_TLS_VERSION" variable for details.
* The "file(GET_RUNTIME_DEPENDENCIES)" command was updated to more
closely match the dynamic loader's behavior on Linux.
* The "install()" command's "DESTINATION" arguments are now
normalized, with the exception of "INCLUDES DESTINATION" arguments
in "install(TARGETS)". See policy "CMP0177".
* The "project()" command now always sets \
"<PROJECT-NAME>_SOURCE_DIR",
"<PROJECT-NAME>_BINARY_DIR", and \
"<PROJECT-NAME>_IS_TOP_LEVEL" as
both normal variables and cache entries. See policy "CMP0180".
* The "cmake_parse_arguments(PARSE_ARGV)" command now defines a
variable for an empty string after a single-value keyword. See
policy "CMP0174".
|
2024-11-01 13:55:19 by Thomas Klausner | Files touched by this commit (2426) |
Log message:
*: revbump for icu downgrade
|
2024-11-01 01:54:33 by Thomas Klausner | Files touched by this commit (2427) |
Log message:
*: recursive bump for icu 76.1 shlib bump
|
2024-10-10 10:56:32 by Adam Ciarcinski | Files touched by this commit (2) | |
Log message:
cmake: updated to 3.30.5
CMake 3.30.5
* project: Only check non-cache vars when setting project vars
|