| CARVIEW |
Select Language
HTTP/2 200
expires: Thu, 19 Nov 1981 08:52:00 GMT
cache-control: no-store, no-cache, must-revalidate
pragma: no-cache
set-cookie: PHPSESSID=o7qpuunn60pfeh4ehco6p7ntr7; path=/
content-type: text/html; charset=UTF-8
date: Sun, 28 Dec 2025 13:09:48 GMT
server: Apache
pkgsrc.se | The NetBSD package collection
archivers
audio
benchmarks
biology
cad
chat
comms
converters
cross
crosspkgtools
databases
devel
cmake
doc
editors
emulators
filesystems
finance
fonts
games
geography
graphics
ham
inputmethod
lang
mail
math
mbone
meta-pkgs
misc
multimedia
net
news
parallel
pkgtools
print
regress
security
shells
sysutils
textproc
time
wip
wm
www
x11
* = Virtual Category
Path to this page:
./devel/cmake, Cross platform make
[
Branch: CURRENT, Version: 4.2.1, Package name: cmake-4.2.1, Maintainer: pkgsrc-users
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.
Required to run:
[www/curl] [archivers/libarchive] [devel/libuv]
Required to build:
[misc/rhash] [pkgtools/cwrappers]
Navigation:
-
Browse pkgsrc
(this page)
archivers
audio
benchmarks
biology
cad
chat
comms
converters
cross
crosspkgtools
databases
devel
cmakedoc
editors
emulators
filesystems
finance
fonts
games
geography
graphics
ham
inputmethod
lang
math
mbone
meta-pkgs
misc
multimedia
net
news
parallel
pkgtools
regress
security
shells
sysutils
textproc
time
wip
wm
www
x11
* = Virtual Category
Path to this page:
./devel/cmake, Cross platform make
[
CVSweb ] [
Homepage ] [
RSS ] [
Required by ] [
Add to tracker ]
Branch: CURRENT, Version: 4.2.1, Package name: cmake-4.2.1, Maintainer: pkgsrc-users
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.
Required to run:
[www/curl] [archivers/libarchive] [devel/libuv]
Required to build:
[misc/rhash] [pkgtools/cwrappers]
Master sites:
Filesize: 12052.309 KBVersion history: (Expand)
- (2025-12-21) Updated to version: cmake-4.2.1
- (2025-10-24) Package has been reborn
- (2025-10-24) Package deleted from pkgsrc
- (2025-10-06) Updated to version: cmake-4.1.2
- (2025-10-05) Updated to version: cmake-4.1.1nb2
- (2025-09-10) Updated to version: cmake-4.1.1nb1
CVS history: (Expand)
| 2025-12-21 20:24:08 by Adam Ciarcinski | Files touched by this commit (7) | |
Log message:
cmake cmake-gui: updated to 4.2.1
4.2.1
Changes made since CMake 4.2.0:
MSVC: Restore pre-4.2 default PDB paths
ci: Update CMake version to 4.2.0
VS/Android: Use ApplicationTypeRevision 3.0 in VS2026
Tests/RunCMake/GeneratorToolset: Fix Visual Studio 18 2026 host arch on ARM64
Help: Fix CPack AppImage Generator heading capitalization
Help: Add 4.2 release note for CPack AppImage generator
ci: Tolerate sccache server stop failures on Windows
Tests/TryCompile: Improve error message formatting
ci: Fix LLVM/Clang nightly CI job tags on Windows
ci: Enable c++modules shared libraries test on VS ARM64 jobs
ci: Update Windows jobs to VS 2026
Source: Improve detection of Linux architectures requiring explicit libatomic
ExternalProject: Fix environment modification ops named with underscores
Emscripten: Restore placement of source files on compile command-lines
Emscripten: Drop hard-coded -fPIC flag
Tests/RunCMake/Emscripten: Add tests covering try_compile COPY_FILE
ci: Make node available to Emscripten tests
Emscripten: Fix try_run to run the `.js` file and not the adjacent `.wasm`
Emscripten: Provide CMAKE_<LANG>_COMPILER_ARCHITECTURE_ID
StdIo: Restore Windows Console I/O modes on Ctrl-C
Help: Replace QtCreator link with its permanent redirect
VS: Restore support for VS 2019 with toolset v142 versions before 14.29
FASTBuild: Add internal helper for intermediate directory creation
FASTBuild: Fix default MSVC compiler PDB paths
Help: Add 4.2 release note about VS flag suppression
fileAPI: Silently ignore non-target order dependencies
Help: Document Renesas compiler toolchain
CPS: Fix exporting definitions
cmExportCommand: Fix PACKAGE_INFO argument parsing
CPS: Fix exporting definitions in CMake 4.1
export: Improve error message consistency
cmake_file_api: Improve error message consistency
LLVMFlang-Fortran: Use -J instead of -module-dir
export: Fix exporting targets with multiple file sets
Some of the most significant changes in CMake 4.2 are:
The “Visual Studio 18 2026” generator was added.
The “FASTBuild” generator was added.
CMake now supports Cross Compiling for Emscripten with simple
toolchain files.
The “set(CACHE{<variable>})” and “unset(CACHE{<variable>})” \
commands
were added to explicitly set and unset cache entries.
The “INSTALL_OBJECT_NAME” source file property was added to control
names of installed object files for specific compiled sources.
Nearly all find modules now provide a “<PackageName>_VERSION” result
variable matching the casing of its module name. Existing variants
such as “<PackageName>_VERSION_STRING” and uppercased
“<PACKAGENAME>_VERSION” are deprecated. See documentation of each
find module for details.
The “ExternalProject” module’s “ExternalProject_Add()” and
“ExternalProject_Add_Step()” commands now provide options to set
environment variables on the configure, build, install, and test
steps.
The “Visual Studio 14 2015” generator is now deprecated and will be
removed in a future version of CMake.
|
| 2025-10-06 11:34:45 by Adam Ciarcinski | Files touched by this commit (5) | |
Log message: cmake cmake-gui: updated to 4.1.2 CMake 4.1.2 * Ninja: escape special characters in custom command comments * cmCTestCurl: Avoid using undocumented type for CURLOPT_PROXYTYPE values * ASM: Restore CMAKE_ASM_COMPILER_ARCHITECTURE_ID persistence * Tests: Extend RunCMake.ParseImplicitLinkInfo for LFortran 0.55.0 * Tests: Teach RunCMake to ignore Xcode an IDERunDestination warning * ci: update macOS jobs to use Xcode 26.0 * cmFileSet: Constify local generator usage * cmGeneratorExpressionEvaluationFile: Constify some local generator usage * cmGeneratorExpressionNode: Simplify EvaluateDependentExpression signature * GenEx: Rename cmGeneratorExpressionContext to cm::GenEx::Evaluation * GenEx: Factor out a dedicated evaluation Context structure * GenEx: Collect evaluation arguments into local Context structures * GenEx: Construct cmGeneratorExpressionDAGChecker with full evaluation context * GenEx: Consolidate target property evaluation context arguments * Help: Document when policy CMP0189 takes effect * cmGeneratorTarget: Pass genex evaluation context to IsTransitiveProperty * file(GENERATE): Record CMP0189 at each call site * bootstrap: Fix compilation with gcc 16 devirtualization * cmGeneratorTarget: Factor out helper to detect LINK_LIBRARIES evaluation * CMP0189: Restore support for linking `$<TARGET_PROPERTY:tgt,LINK_LIBRARIES>` * LFortran: Update flags renamed by version 0.55 * GNUInstallDirs: Fix regression on -DCMAKE_INSTALL_<dir>=<default> \ in /usr * cmLocalGenerator: check variables before usage * cmPropertySentinel: update definition * FindPython: Ensure correct handling of Python_FIND_ABI variable * project: Revert changes to VERSION handling |
| 2025-10-05 21:26:29 by Jonathan Schleifer | Files touched by this commit (485) |
Log message: *: rev bump for curl |
| 2025-09-12 11:51:01 by Ryo ONODERA | Files touched by this commit (2) |
Log message: devel/cmake: Fix build with curl-8.16.0 |
| 2025-09-10 16:40:02 by Jonathan Perkin | Files touched by this commit (3) |
Log message: cmake: Do not use LTO on SunOS. Bump PKGREVISION. |
| 2025-09-01 10:25:16 by Adam Ciarcinski | Files touched by this commit (3) | |
Log message: cmake cmake-gui: updated to 4.1.1 CMake 4.1.1 * cmGlobalVisualStudio7Generator: fix initialization typo * StdIo: Fix Terminal abstraction to avoid unnecessary VT100 escape sequences * Makefile: Fix regression that prints unnecessary VT100 escape sequences * ctest: Restore default of no time limit for command-line `-T Test` step * ctest: Restore default test timeout for command-line `-T Test` step * Ninja: Fix regression with `.bat` wrapper around `ninja` * cmList: fix swap function definition * string(GENEX_STRIP): Fix regression on nested generator expressions * Clang/CUDA: Support CUDA Toolkit 13 new include layout * PkgC: Allow system paths during IMPORT, POPULATE * PkgC: Only remove system paths which are exact matches |
| 2025-08-22 12:17:17 by Thomas Klausner | Files touched by this commit (3) |
Log message: cmake: add upstream patch for CVE-2025-9301 Bump PKGREVISION. |
| 2025-08-20 13:34:12 by Thomas Klausner | Files touched by this commit (8) | |
Log message:
cmake: update to 4.1.0.
New Features
File-Based API
The cmake-file-api(7) "codemodel" version 2 version field has
been updated to 2.8.
The cmake-file-api(7) "codemodel" version 2 "target" object
gained a new debugger field.
Command-Line
The cmake --link-no-warning-as-error option was added to suppress
the effects of the LINK_WARNING_AS_ERROR target property and
CMAKE_LINK_WARNING_AS_ERROR variable.
The cmake --project-file option was added to specify an alternate
filename for CMakeLists.txt files. This is intended for temporary
use by developers during an incremental transition and not for
publication of a final product. CMake will always emit a warning
when the project file is anything other than CMakeLists.txt.
Commands
The target_link_libraries() command now supports the LINKER:
prefix.
Variables
The AIX and CMAKE_HOST_AIX variables are now set to true when
the target or host system is AIX, respectively.
Linker flag variables learned to support the LINKER: prefix:
CMAKE_EXE_LINKER_FLAGS
CMAKE_EXE_LINKER_FLAGS_<CONFIG>
CMAKE_SHARED_LINKER_FLAGS
CMAKE_SHARED_LINKER_FLAGS_<CONFIG>
CMAKE_MODULE_LINKER_FLAGS
CMAKE_MODULE_LINKER_FLAGS_<CONFIG>
See policy CMP0181.
The CMAKE_EXECUTE_PROCESS_COMMAND_ERROR_IS_FATAL variable was
added to specify the execute_process() command's default
COMMAND_ERROR_IS_FATAL behavior.
The CMAKE_<LANG>_LINK_MODE and CMAKE_<LANG>_DEVICE_LINK_MODE
variables were added to provide information on how the link
step is done.
The CMAKE_LINK_WARNING_AS_ERROR variable and corresponding
LINK_WARNING_AS_ERROR target property were added to link using
a linker-specific flag to treat warnings as errors.
The CMAKE_MSVC_RUNTIME_CHECKS variable and MSVC_RUNTIME_CHECKS
target property were introduced to select runtime checks for
compilers targeting the MSVC ABI. See policy CMP0184.
The CMAKE_POLICY_VERSION_MINIMUM variable was added to help
packagers and end users try to configure existing projects that
have not been updated to work with supported CMake versions.
The CMAKE_POLICY_VERSION_MINIMUM environment variable was added
to initialize it.
The CMAKE_UNITY_BUILD_RELOCATABLE variable and corresponding
UNITY_BUILD_RELOCATABLE target property were added to make
sources generated for CMAKE_UNITY_BUILD to #include the original
source files using relative paths where possible.
The CMAKE_XCODE_SCHEME_LLDB_INIT_FILE variable and corresponding
XCODE_SCHEME_LLDB_INIT_FILE target property were added to tell
the Xcode generator what to put in the scheme's "LLDB Init
File" setting.
The CMAKE_XCODE_SCHEME_TEST_CONFIGURATION variable and
corresponding XCODE_SCHEME_TEST_CONFIGURATION target property
were added to tell the Xcode generator what to put in the
scheme's "Build Configuration" setting for the test action.
Properties
The DEBUGGER_WORKING_DIRECTORY target property and corresponding
CMAKE_DEBUGGER_WORKING_DIRECTORY variable were added to tell
generators what debugger working directory should be set for
targets.
The STATIC_LIBRARY_OPTIONS target property now supports an
ARCHIVER: prefix to pass options to the archiver through the
compiler driver in a portable way.
The Swift_MODULE_DIRECTORY target property now supports generator
expressions.
The VS_CUSTOM_COMMAND_DISABLE_PARALLEL_BUILD source file property
was added to tell Visual Studio Generators not to run a custom
command in parallel.
The VS_SOLUTION_ITEMS directory property was added to tell
Visual Studio Generators to attach files directly to the Solution
(.sln).
Modules
The ExternalData module gained a ExternalData_HTTPHEADERS
variable to specify HTTP headers.
The ExternalProject module's ExternalProject_Add() command
gained an INSTALL_JOB_SERVER_AWARE option to enable integration
of the GNU Make job server when using an explicit INSTALL_COMMAND
with Makefile Generators.
The FeatureSummary module add_feature_info() command now supports
full Condition Syntax. See policy CMP0183.
The FindBISON module bison_target() command gained an OPTIONS
option to specify Bison command-line options.
The FindCURL module now provides a CURL_VERSION result variable
to match upstream cURL's CMake package.
The FindFLEX module flex_target() command gained an OPTIONS
option to specify Flex command-line options.
The FindPatch module now supports running in cmake -P script
mode by skipping the creation of the imported target.
The FindProtobuf module protobuf_generate() command gained a
PROTOC_EXE option to specify a custom protoc executable.
The FindPython, FindPython2, and FindPython3 modules gained
the possibility to do multiple calls in the same directory by
using, respectively, the variables Python_ARTIFACTS_PREFIX,
Python2_ARTIFACTS_PREFIX, and Python3_ARTIFACTS_PREFIX.
The FindRuby module learned to find rbenv-provided installations.
Generator Expressions
The $<PATH> generator expression gained the NATIVE_PATH operation
to convert a CMake path into a native one.
CTest
The ctest --interactive-debug-mode option on Windows now enables
Windows Error Reporting by default in test processes, allowing
them to creating debug popup windows and core dumps. This
restores behavior previously removed by CMake 3.11 after updates
to libuv made it possible.
CPack
The CPack Archive Generator learned to generate .tar packages
without compression.
The CPack Archive Generator now honors the CPACK_ARCHIVE_FILE_NAME
variable for all packages. Previously, this variable worked
only for component-based packages.
Deprecated and Removed Features
Compatibility with versions of CMake older than 3.5 has been
removed. Calls to cmake_minimum_required() or cmake_policy()
that set the policy version to an older value now issue an
error. Note that calls to those commands can still support
older versions of CMake by using their VERSION arguments'
<min>...<max> syntax. This requires only the <min> version of
CMake, but when running a newer version, sets policies up to
the <max> version.
The Visual Studio 14 2015 and Visual Studio 15 2017 generators
no longer support specifying a platform as part of the generator
name. See Visual Studio Platform Selection.
The CMAKE_<LANG>_USING_LINKER_MODE variable is no longer used
to determine the type of the contents of the
CMAKE_<LANG>_USING_LINKER_<TYPE> variable. The \
CMAKE_<LANG>_LINK_MODE
variable, set by CMake, is used instead.
The FindGDAL module is now deprecated in favor of upstream
GDAL's official CMake package configuration file. Port projects
to the latter by calling find_package(GDAL CONFIG). For further
details, see GDAL's documentation on CMake integration.
The FindRuby module no longer provides variables with the
upper-case RUBY_ prefix. See policy CMP0185.
CTest's undocumented declarative scripting mode has been removed.
This mode used to be triggered by a ctest -S script which did
not call any CTest Commands unless CTEST_RUN_CURRENT_SCRIPT
was explicitly set to OFF.
The ctest_run_script() command may no longer be called without
any arguments.
Other Changes
On macOS with Ninja Generators and Makefile Generators, when
a compiler is found in /usr/bin, it is now used as-is and is
no longer mapped to the corresponding compiler inside Xcode.
The mapping was introduced by CMake 3.2 to allow build trees
to continue to work with their original compiler even when
xcode-select switches to a different Xcode installation. However,
the compilers inside Xcode cannot be used without explicit
-isysroot flags and are therefore not suitable for passing to
arbitrary third-party build systems. Furthermore, the mapping
behavior can override user-specified compiler paths. Therefore,
this behavior has been reverted.
In builds targeting macOS, CMAKE_OSX_SYSROOT now defaults to
empty, deferring to the compiler's default macOS SDK selection.
In order to pass an explicit macOS SDK via the compiler's
-isysroot flag, users may configure their build tree with
-DCMAKE_OSX_SYSROOT=macosx, or export SDKROOT="$(xcrun --sdk
macosx --show-sdk-path)" in their environment.
Notes:
macOS compilers in /usr/bin, when not invoked with -isysroot,
search for headers in /usr/local/include before system SDK
paths, matching the convention on many platforms. Users on
macOS-x86_64 hosts with Homebrew installed in /usr/local
should pass an explicit SDK, as described above, when not
building with Homebrew tools.
Some Clang compilers have no default macOS SDK selection.
For these, if CMAKE_OSX_SYSROOT is empty, CMake will
automatically pass -isysroot with the macOS SDK printed by
xcrun --show-sdk-path.
On Windows, file paths named in project code, e.g., in
CMakeLists.txt, are no longer automatically converted to their
on-disk upper/lower case. Projects are expected to spell source
file paths consistently using their canonical case, e.g., in
calls to add_library(), set_property(SOURCE), or
set_source_files_properties(). This matches the behavior on
platforms with case-sensitive filesystems.
On AIX, SHARED library targets now produce a shared library
archive by default. See policy CMP0182.
The cmake --preset command no longer outputs a summary of the
preset's CMake cache and environment variables by default. That
summary is now only shown when the message log level is set to
VERBOSE, DEBUG, or TRACE via the cmake --log-level option or
the CMAKE_MESSAGE_LOG_LEVEL cache variable.
Precompiled SunOS sparc64 and x86_64 binaries are now provided
on cmake.org.
|
