47c784ba8a Help: Add release note for Visual Studio 18 2026 generator
cd46d8ec84 Merge branch 'backport-vs2026' into vs2026
3392b371e2 VS: Add Visual Studio 18 2026 generator
7f0883ac04 VS: Remove unused generator code
6f0d245083 VS: Fix `/dynamicdeopt` flag table entry order for v145 toolset
398ce8af72 VS: Remove `/guard:cf` from v145 link flag table
5c9085d876 VS: Remove `/MERGE` from v145 link flag table
fe5c78310c VS: Map the link `/debug` flag for v145 toolset
...
Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !11168
ca072e3734 cmListFileLexer: Test for broken UTF-32-(BE|LE) BOM
3b8ddf3f45 cmListFileLexer: Handle null character in the grammar
7040406f86 cmListFileLexer: Do not require null-terminated input
0a26c08004 cm/string_view: Prevent find access past string end
63328f01f8 Utilities/Scripts: Drop CommandArgument lexer/parser generation step
Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !11173
85e536b5eb gitlab-ci: test `CMAKE_CXX_STDLIB_MODULES_JSON` in CI
42621a232b Tests/CXXModules: add a label
2f101b2c8c Tests/CXXModules: support testing with custom stdlib json locations
6c178a4ae3 Tests/RunCMake: add newlines in CXXModules options
2b85541e39 cxximportstd: support setting the `import std` metadata location
Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !11175
9ad31a0d88 cmGlobalGenerator: mark intermediate directory strategy variables as used
Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !11178
Some deployments may not be able to discover the metadata file reliably
(e.g., custom `clang` builds on macOS while using the SDK's stdlib or
distribution bugs). Allow users to force the location so that
compiler-driven detection doesn't have to bend over backwards for
unforeseen bugs.
Avoid generating empty / conflicting directory components for
the installation root which is shared across components and
(except for the degenerate case of an empty installer)
will always be created implicitly.
b5e06311c0 Ninja: Avoid non-standard output from `ninja` during `try_compile`
fe0e2fcaff ScopedEnv: add a RAII helper to temporarily manipulate the environment
Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: Alex Turbov <i.zaufi@gmail.com>
Merge-request: !11143
By setting CPACK_WIX_CAB_PER_COMPONENT users can generate one
.cab per component instead of one .cab per installer.
WiX compresses .cab files in parallel.
This may potentially speed up installer creation.
May also allow larger installers (there is a 2GB per .cab limit).
There's no control over the object base name implemented in the
FASTBuild generator. Rather than expecting some half-supported behavior,
just ignore it completely there.
Similarly, Xcode ends up making its own object paths internally
regardless of what CMake would like.
Projects which ship object files as artifacts may want to control the
object names as much as possible. Support setting explicit object names
as source file properties to support such use cases.
`cmLocalGenerator::GetObjectFileNameWithoutTarget` used a heuristic to
detect PCH sources. Use the new special source types to detect them
reliably instead.
These source file types don't necessarily show up in the CMake code, but
are side effects of other behaviors in CMake. Support tracking them
specially so that heuristics are not required to figure out if a given
`cmSourceFile` is one of them.