| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This was originally attempted by policy CMP0118, but its
implementation did not cover all intended use cases. We fixed its
documentation in commit 1dabbbb5e0 (CMP0118: Revise documentation to
describe actual behavior, 2024-03-20).
Add new policy CMP0163 to cover the remaining use cases. In particular,
make the `GENERATED` property visible to `get_property` calls in other
directories. In order to capture the original intention of CMP0118,
define CMP0163's NEW behavior to also imply CMP0118's NEW behavior.
Fixes: #25437
Fixes: #25058
|
|
|
|
|
|
|
|
| |
The policy was originally intended to make the `GENERATED` source file
property globally visible, but the implementation didn't fully achieve
that goal. Revise the documentation to describe what it actually does.
Issue: #25437
|
|\
| |
| |
| |
| |
| |
| |
| | |
eceb368ccc Help: Fix typos in 3.29 docs
31fb693d06 Help: Fix typos and grammar in pre-3.29 docs
Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !9353
|
| | |
|
|/
|
|
|
|
|
| |
Use heuristics to select a reasonable value. Add policy CMP0162
to provide compatibility with existing projects.
Fixes: #25327
|
|
|
|
| |
Fixes: #23351
|
|\
| |
| |
| |
| |
| |
| |
| | |
0cfd8fe8ad cmTarget: Don't allow setting read-only properties
Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: buildbot <buildbot@kitware.com>
Merge-request: !9133
|
| |
| |
| |
| |
| | |
Ensure that all documented read-only target properties now produce
errors when trying to set.
|
|/ |
|
|
|
|
| |
Avoid implying that a policy must always be set explicitly.
|
|
|
|
|
|
| |
Every policy documents whether CMake warns when it is not set.
This behavior does not change with the CMake version, so avoid
possibly confusing mention of the current CMake version.
|
|
|
|
|
|
|
|
| |
Every policy's documentation has a paragraph on what version of CMake
introduced it, how to set the policy, and whether CMake warns if the
policy is not set. The wording of this paragraph has diverged across
policies over time. Factor the paragraph out into a standard advice
document included by every policy.
|
|
|
|
| |
Signed-off-by: Cristian Le <cristian.le@mpsd.mpg.de>
|
|
|
|
|
|
| |
This was missed in commit ca5a300d7f (add_test: Honor
CROSSCOMPILING_EMULATOR only when cross-compiling, 2023-11-02) when it
slipped from the 3.28 release.
|
|
|
|
|
|
| |
Add policy CMP0158 to provide compatibility for existing projects.
Fixes: #23672
|
|\
| |
| |
| |
| |
| |
| | |
fe0d03b044 Help: Document that CMP0149 should be set before project()
Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !8990
|
| |
| |
| |
| | |
Issue: #25413
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Add a `CMAKE_Swift_COMPILATION_MODE` variable and corresponding
`Swift_COMPILATION_MODE` target property to control the compilation
mode. Select among `wholemodule`, `singlefile`, and `incremental`.
Add policy CMP0157 to remove the default `-wmo` flags in favor of the
abstract setting.
Issue: #25366
|
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Some platforms, Apple or Windows for instance, do not require to duplicate
static libraries to resolve mutual dependencies. Moreover, Xcode version 15
emits a warning if a library is duplicated.
On Windows, enable a better control of libraries order.
Fixes: #20722, #25297
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
This allows for a more graceful transition for projects using C++20
without scanner support (e.g., Clang 15 or GCC 13). While newer
compilers will (needlessly) scan, it allows C++20-using projects to use
older compilers without having to set `CMAKE_CXX_SCAN_FOR_MODULES` to
support newer CMake minimum versions.
Fixes: #25357
|
| |
| |
| |
| |
| |
| |
| |
| |
| | |
C++ module sources should not be included by any other TUs, so their
presence cannot matter for order-only dependencies of the entire target.
Exclude them.
Update CMP0154 to take this into consideration and add tests to the
`CXXModules` suite (which already deals with module support detection).
|
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Run the script:
Utilities/Sphinx/update_versions.py --since v3.27.0 --overwrite
Manually remove directives added to new documentation of existing
environment variables.
|
|\ \
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
437280b127 cxxmodules: scan C++ sources for imports by default
3cddd11649 Ninja: message about not compiled sources explicitly
068fde1c34 cmGeneratorTarget: use `this->` for method calls
197a6bf171 cxxmodules: rework control logic for scanning regular C++ sources
5eb7bd641a Tests/RunCMake/CXXModules: remove rules file requirement
ff18acc301 CXXModules: remove `EXPERIMENTAL` from C++ module variable names
0c07f39006 cmExperimental: remove the flag for C++ modules
68caec9137 Help: add a manpage for cxxmodule support
Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: Pavel Solodovnikov <hellyeahdominate@gmail.com>
Merge-request: !8828
|
| | |
| | |
| | |
| | |
| | | |
Existing projects are not using C++ modules in their sources,
so introduce policy CMP0155 to enable scanning by default.
|
|\ \ \
| |/ /
|/| /
| |/
| |
| |
| | |
55bf2a3494 Help: Document CMP0124 behavior on already-set variables
Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !8850
|
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Improve the documentation from commit 46896d98bb (foreach(): loop
variables are only available in the loop scope, 2021-04-25,
v3.21.0-rc1~245^2) to follow policy documentation convention.
Fixes: #25224
Inspired-by: Marius Messerschmidt <marius.messerschmidt@googlemail.com>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
This requires knowing when a generated header is public, which we can
model using file sets. Add policy CMP0154 to treat generated sources
as private by default in targets with file sets. Generated public
headers can be specified in public file sets.
Fixes: #24959
Issue: #15555
|
| | |
|
|/
|
|
|
|
|
|
| |
Previously REAL_PATH would collapse paths before resolving any symlinks
so if `..` crossed a symlink the output from `REAL_PATH` would be wrong.
It looked like REAL_PATH did this by mistake since it was a side-effect
of ensuring we had an absolute path before resolving symlinks.
|
|
|
|
| |
Add policy CMP0151 to preserve the old behavior by default.
|
|\
| |
| |
| |
| |
| |
| | |
550f63447d ExternalProject/FetchContent: Support relative remote URLs
Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !7988
|
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Teach `ExternalProject_Add` and `FetchContent_Declare` to resolve
relative remote URLs provided via `GIT_REPOSITORY`. Add policy
CMP0150 to maintain compatibility.
Fixes: #24211
Co-Authored-By: Craig Scott <craig.scott@crascit.com>
|
|\ \
| |/
|/| |
|
| | |
|
| |
| |
| |
| |
| |
| |
| | |
Add policy `CMP0149` to stop preferring SDKs exactly matching
`CMAKE_SYSTEM_VERSION` over the latest SDK.
Fixes: #16202
|
| |
| |
| |
| |
| |
| | |
The `FindPythonInterp` and `FindPythonLibs` modules have been deprecated
since CMake 3.12. Add a policy to pretend they do not exist in order to
encourage projects to port to `FindPython` or `FindPython{2,3}`.
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
In commit 33c15ae2b9 (VS: Build custom commands concurrently when
possible, 2023-01-19, v3.26.0-rc1~56^2) we added `BuildInParallel` to
custom commands in `.vcxproj` files, but that had to be reverted by
commit abb1c12162 (VS: Revert "Build custom commands concurrently when
possible", 2023-03-07, v3.26.0-rc6~3^2) because some projects may have
custom commands that accidentally rely on serial execution in MSBuild.
Add a policy to use `BuildInParallel` for custom commands in projects
that have been updated to set the policy to `NEW`.
Fixes: #18405
|
| |
| |
| |
| |
| |
| | |
The `FindCUDA` module has been deprecated since CMake 3.10.
Add a policy to pretend it doesn't exist in order to encourage
projects to port away from it.
|
| |
| |
| |
| |
| | |
These modules and the "DART" tool they support have long been replaced
by CTest.
|
|\ \
| |/
| |
| |
| |
| |
| |
| | |
b39b3e3bdb Help: Fix typos and grammar in 3.26 release notes
9f1360ae19 Help: Improve wording of FOLDER-related properties and policies
Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !8264
|
| | |
|
|/
|
|
|
|
|
|
|
| |
Extend commit eb35d8884b (find_package: Use PackageName_ROOT variables
as search prefixes, 2018-03-15, v3.12.0-rc1~349^2) to also check
upper-case `<PACKAGENAME>_ROOT` variables. Add policy `CMP0144` to
enable the behavior in a compatible way.
Fixes: #24403
|
| |
|
|
|
|
|
| |
At least the top-reference links. Internal `:ref:` usages have been left
intact.
|
|\
| |
| |
| |
| |
| |
| |
| | |
d3acd22380 USE_FOLDERS: Treat as on by default
Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: Amir Masoud Abdol <amirmasoudabdol@icloud.com>
Merge-request: !7830
|
| |
| |
| |
| |
| |
| |
| | |
Add a policy to treat the `USE_FOLDERS` global property as ON by default
if it is not set.
Fixes: #21695
|
|/
|
|
| |
Mostly it's about replace `http:` with `https:` protocol.
|
| |
|
|\
| |
| |
| |
| |
| |
| | |
00b788e85e Help:custom_command: link policy on BYPRODUCTS
Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !7662
|
| |
| |
| |
| |
| |
| | |
Link policy explaining BYPRODUCTS.
Fixes: #23786
|