Merge topic 'file-GET_RUNTIME_DEPENDENCIES-matching'

bf3f69834d file(GET_RUNTIME_DEPENDENCIES): Normalize paths before matching

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: buildbot <buildbot@kitware.com>
Merge-request: !11351
This commit is contained in:
Brad King
2025-11-15 14:03:40 +00:00
committed by Kitware Robot
27 changed files with 297 additions and 8 deletions
+2
View File
@@ -1122,6 +1122,8 @@ Handling Runtime Binaries
The following arguments specify filters for including or excluding libraries
to be resolved. See below for a full description of how they work.
Directory separators in file paths may be matched using forward
slashes unless policy :policy:`CMP0207` is not set to ``NEW``.
``PRE_INCLUDE_REGEXES <regexes>...``
List of pre-include regexes through which to filter the names of
+1
View File
@@ -98,6 +98,7 @@ Policies Introduced by CMake 4.3
.. toctree::
:maxdepth: 1
CMP0207: file(GET_RUNTIME_DEPENDENCIES) normalizes paths before matching. </policy/CMP0207>
CMP0206: The CPack Archive Generator defaults to UID 0 and GID 0. </policy/CMP0206>
CMP0205: file(CREATE_LINK) with COPY_ON_ERROR copies directory content. </policy/CMP0205>
+26
View File
@@ -0,0 +1,26 @@
CMP0207
-------
.. versionadded:: 4.3
:command:`file(GET_RUNTIME_DEPENDENCIES)` normalizes paths before matching.
The :command:`file(GET_RUNTIME_DEPENDENCIES)` and
:command:`install(RUNTIME_DEPENDENCY_SET)` commands support filtering
resolved dependencies using regular expressions matching their paths.
In CMake 4.2 and below, callers were responsible for matching both forward
and backward slashes as path separators on Windows, e.g., via ``[\/]``.
CMake 4.3 and above prefer to normalize paths to use forward slashes before
matching. This policy provides compaitiblity for projects that may have
been relying on matching backslashes only.
The ``OLD`` behavior for this policy matches filters against paths that
may contain any combination of forward and backward slashes on Windows.
The ``NEW`` behavior for this policy to convert all paths to forward
slashes before matching filters.
.. |INTRODUCED_IN_CMAKE_VERSION| replace:: 4.3
.. |WARNS_OR_DOES_NOT_WARN| replace:: warns
.. include:: include/STANDARD_ADVICE.rst
.. include:: include/DEPRECATED.rst
@@ -0,0 +1,6 @@
file-GET_RUNTIME_DEPENDENCIES-matching
--------------------------------------
* The :command:`file(GET_RUNTIME_DEPENDENCIES)`
and :command:`install(RUNTIME_DEPENDENCY_SET)` commands now normalize
paths before matching filters. See policy :policy:`CMP0207`.