| Commit message (Collapse) | Author | Age | Files | Lines |
|\
| |
| |
| |
| |
| |
| | |
315a8f88cc Help: Add 3.31 release note for file(MAKE_DIRECTORY)'s RESULT option
Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !9904
|
| |
| |
| |
| |
| |
| |
| |
| | |
In commit 95323c90a1 (file(MAKE_DIRECTORY): Add optional RESULT keyword
to capture failure., 2024-06-16, v3.31.0-rc1~414^2) the release note was
added in the wrong directory so it was not gathered for the 3.31 release.
Fixes: #26377
|
|\ \
| |/
|/|
| |
| |
| |
| | |
0e81c12483 Help: Add 3.29 release note for try_compile LINKER_LANGUAGE option
Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !9905
|
| |
| |
| |
| |
| |
| | |
In commit 0f37000304 (try_{compile,run}: add LINKER_LANGUAGE option,
2023-10-12, v3.29.0-rc1~567^2) a release note was accidentally added in
the wrong directory and so was not included in the 3.29 release notes.
|
| |
| |
| |
| |
| | |
Provide a way to run CI with a new release version number
before merging it.
|
| |
| |
| |
| |
| | |
Given that the feature currently only supports C++ sources and is not
formally accepted by ISO yet, gate it behind a flag.
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Add initial support for exporting (install only, for now) Common Package
Specification (https://cps-org.github.io/cps/) format package
descriptions. This has some limitations, such as not supporting
generator expressions (as these cannot be portably exported), and only
partially supporting transitive dependencies, but should be usable for
at least some simple cases. (Actually, $<LINK_ONLY> is theoretically
supportable, but is not yet implemented.)
This still needs tests; these will be added in the next commit. Other
potential improvements include support for language-specific compile
definitions and inferring some package properties from project
properties. Additionally, there is no module support yet; this is partly
pending on having a tool agnostic format for providing the necessary
information.
|
| | |
|
| |
| |
| |
| | |
Fixes: #26041
|
| |
| |
| |
| |
| |
| |
| | |
Document how developers working on CMake itself may run the test suite
locally.
Fixes: #26001
|
| |
| |
| |
| |
| | |
Avoid breaking existing links to `Help/dev/testing.rst` by keeping
the document with minimal text to direct readers to the new one.
|
| | |
|
| |
| |
| |
| | |
Fixes: #25980
|
|/ |
|
|
|
|
|
|
|
| |
Some design concerns have been raised after trying the 3.29 release
candidates. Avoid committing to a stable public interface for now.
Issue: #25767
|
| |
|
|
|
|
| |
Document the status quo w.r.t. governance.
|
| |
|
|\ |
|
| | |
|
|/
|
|
| |
Fixes: #25326
|
|
|
|
|
|
|
| |
All the major compilers now have scheduled releases with support for
scanning, so remove the experimental gate.
Fixes: #18355
|
|
|
|
| |
Supporting modules on IMPORTED targets is worth an update.
|
|
|
|
|
| |
This will be required when dealing with imported targets which contain
modules.
|
|\
| |
| |
| |
| |
| |
| | |
21c45a81c3 Help/experimental: fix UUID documentation
Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !8692
|
| |
| |
| |
| |
| | |
This was missed in be53c75852 (cmExperimental: recycle the C++ modules
API UUID, 2023-07-21) from !8639.
|
|/ |
|
|
|
|
|
| |
The transitive support for Clang is a change in support for the
ecosystem.
|
|
|
|
| |
It is now subsumed by the UUID setting completely.
|
|
|
|
|
| |
Syntactic support for C++ header units has been removed, so a new UUID
is warranted.
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Add a role that can be used to create local links (a la '`LINK`_'), but
that also applies literal style. This is particularly useful for
referring to subcommands within the command's documentation in a style
that is consistent with ':command:`BAR <foo(BAR)>`' but is much less
verbose.
Although this is intended for subcommands, it works with any local
reference.
Co-authored-by: Brad King <brad.king@kitware.com>
|
|\
| |
| |
| |
| |
| |
| | |
39ecaa5da1 Utilities/Sphinx: Improve word wrap of signatures
Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !8317
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Implement logic to support several styles of parsing in the new
signature directive that control where line breaks are allowed in a
signature.
The default is 'smart', which forbids breaks inside of square- or
angle-brackets. The 'verbatim' option forbids all breaks. In all cases,
breaks are always allowed where a newline appears in the source.
This seems to Just Work for most writers, but HTML needs some special
handling that is accomplished by a new CSS rule and assigning the 'nbsp'
class to spaces that are not allowed to break. (ROFF's line wrapping is
rather unfortunate here, as it prefers splitting and hyphenating words
rather than breaking at a space.)
|
|/
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Split the genex directive into its own class, allowing a slight
simplification of CMakeObject. Add ability to specify an explicit target
name for the same.
Use this to provide a target for the `$<TARGET_PROPERTY:prop>` generator
expression which is otherwise missing one (due to overlap with
`$<TARGET_PROPERTY:tgt,prop>`). With this one can write:
:genex:`$<TARGET_PROPERTY:prop> <TARGET_PROPERTY:prop>`
to link the second variant.
Fixes: #24573
|
|
|
|
|
|
|
|
|
|
|
| |
Add signatures to the collection of observed objects (which can be
referenced elsewhere). Don't automatically strip parameters from a
:command: reference, as these may now link signatures. (Do, however,
munge them into 'text <ref>' form if they aren't already, as not doing
so adds an extra '()' for some reason.) Correspondingly, change xref
resolution to try to match 'command' when a ref like 'command(args)' is
not matched, so that existing links to commands that have not been
converted to use the new signature directive don't immediately break.
|
|\
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
533ebb072b Help: Use signature directive for string command
cd33f461a6 Help: Use signature directive for cmake_language command
74e3c1d313 Utilities/Sphinx: Add a directive to document command signatures
c09b760484 Utilities/Sphinx: Drop commented-out code from cmake domain impl
6e85ad7f8b Help/dev: Add per-directive sections in CMake Documentation Guide
Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !8243
|
| |
| |
| |
| |
| |
| |
| | |
Add a `signature` directive to offer a CMake version of Sphinx's
`function` directive, similar to that found in other domains (py, cpp,
etc.). Like others, this takes one or more signatures as arguments and
creates dt/dd nodes from the signatures and the directive contents.
|
| | |
|
| |
| |
| |
| | |
LLVM/Clang 16.0 now contains official support for what CMake needs.
|
|/
|
|
|
| |
This should have been part of commit d6b811fb82 (Require CMake 3.13+ to
configure CMake itself, 2022-02-22, v3.24.0-rc1~605^2~1).
|
| |
|
|
|
|
|
|
|
|
|
|
| |
These patches now support the `-MF` output, so remove the `none` support
added just for the old patchset which did not use it.
Also update the flag name to `-fmodule-output=`.
Due to the new Clang module mapper flag, use a new experimental support
UUID as well.
|
|\
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
2c558cfd1b gitlab-ci: add CI jobs for Clang with C++20 modules
abd42e9cfc ci: add a Docker container for clang support of C++20 modules
51093f3002 Clang-FindBinUtils: also find `clang-scan-deps`
0b333de923 ci: add C++ module rules file for Clang
21b9fb1e8c cmCxxModuleMapper: support the `clang` module map format
9c66224668 cmNinjaTargetGenerator: skip setting `depfile` for `none` scantypes
9123a0991f cmNinjaTargetGenerator: use `.clear()` to empty out some strings
Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: Cristian Adam <cristian.adam@gmail.com>
Merge-request: !7978
|
| | |
|
| |
| |
| |
| | |
Visual Studio support warrants a new ID.
|
|/ |
|
|
|
|
|
|
|
| |
Instead, just set the variables for how scanning works since that is
part of the compiler mechanisms.
Fixes: #24198
|
| |
|
|
|
|
| |
Visual Studio 17.4 now contains official support for what CMake needs.
|
|
|
|
| |
This adds the `is-interface` key on provides fields.
|