Commit Graph

69675 Commits

Author SHA1 Message Date
Brad King
d8242c2d46 Merge topic 'patch-CheckIPOSupported'
a04fd272c2 CheckIPOSupported: Update documentation

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !10443
2025-03-11 09:50:25 -04:00
Brad King
4492908f74 Merge topic 'FindHDF5-h5hl'
a869b79c59 FindHDF5: Prefer h5hl* compilers for HDF5_FIND_HL

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !10450
2025-03-11 09:46:06 -04:00
Brad King
8500ca00b9 Merge branch 'release-4.0' 2025-03-11 09:42:32 -04:00
Brad King
27ee7ed289 Merge topic 'realpath-windows'
0a5efe8489 cmSystemTools: Fix GetRealPath implementation on Windows
5910bf0b40 cmSystemTools: Restore GetRealPathResolvingWindowsSubst

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: buildbot <buildbot@kitware.com>
Merge-request: !10452
2025-03-11 09:42:32 -04:00
Brad King
9a81fcb8b8 Merge topic 'realpath-windows' into release-4.0
0a5efe8489 cmSystemTools: Fix GetRealPath implementation on Windows
5910bf0b40 cmSystemTools: Restore GetRealPathResolvingWindowsSubst

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: buildbot <buildbot@kitware.com>
Merge-request: !10452
2025-03-11 09:42:29 -04:00
Brad King
3b9a867521 Merge branch 'release-4.0' 2025-03-11 09:40:28 -04:00
Brad King
6d260533e7 Merge topic 'link-information-with-decorated-diagnostics'
ee066d2271 LinkerId: Suppress decorated diagnostics during linker inspection

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: buildbot <buildbot@kitware.com>
Acked-by: Nils Gladitz <nilsgladitz@gmail.com>
Merge-request: !10442
2025-03-11 09:40:28 -04:00
Brad King
dfbcaa9ee1 Merge topic 'link-information-with-decorated-diagnostics' into release-4.0
ee066d2271 LinkerId: Suppress decorated diagnostics during linker inspection

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: buildbot <buildbot@kitware.com>
Acked-by: Nils Gladitz <nilsgladitz@gmail.com>
Merge-request: !10442
2025-03-11 09:40:24 -04:00
Brad King
5a10e0ef70 Merge branch 'release-4.0' 2025-03-11 09:27:23 -04:00
Brad King
05e0e6e7bf Merge topic 'ci-test-apple-silicon'
a44a2d2579 ci: Explicitly enable or disable RunCMake.AppleSilicon test in macos jobs

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !10454
2025-03-11 09:27:23 -04:00
Brad King
6e3a4139aa Merge topic 'ci-test-apple-silicon' into release-4.0
a44a2d2579 ci: Explicitly enable or disable RunCMake.AppleSilicon test in macos jobs

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !10454
2025-03-11 09:27:21 -04:00
Brad King
7be470cd86 Merge branch 'release-4.0' 2025-03-11 09:23:58 -04:00
Brad King
00e03de8b3 Merge branch 'release-3.31' 2025-03-11 09:23:52 -04:00
Brad King
d10a875b21 Merge branch 'release-3.31' into release-4.0 2025-03-11 09:23:41 -04:00
Brad King
40b95b1aeb Merge branch 'release-4.0' 2025-03-11 09:22:46 -04:00
Brad King
1e759e0bb7 Merge topic 'curl-opt-netrc'
1b0c92a3a1 cmCurl: Avoid using undocumented type for CURLOPT_NETRC values

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !10449
2025-03-11 09:22:46 -04:00
Brad King
1150091f61 Merge topic 'curl-opt-netrc' into release-4.0
1b0c92a3a1 cmCurl: Avoid using undocumented type for CURLOPT_NETRC values

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !10449
2025-03-11 09:22:43 -04:00
Brad King
a682a95b31 Merge topic 'curl-opt-netrc' into release-3.31
1b0c92a3a1 cmCurl: Avoid using undocumented type for CURLOPT_NETRC values

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !10449
2025-03-11 09:21:36 -04:00
Kitware Robot
2308e23c7f CMake Nightly Date Stamp 2025-03-11 00:04:46 -04:00
Brad King
a44a2d2579 ci: Explicitly enable or disable RunCMake.AppleSilicon test in macos jobs
Enable it on `macos-arm64` jobs and disable it on `macos-x86_64` jobs.
Since the default detection pierces Rosetta, it cannot be used in CI
where we might build and test on different hosts.
2025-03-10 17:02:33 -04:00
Brad King
0a5efe8489 cmSystemTools: Fix GetRealPath implementation on Windows
In commit 823e1df54c (cmSystemTools: Implement GetRealPath on Windows,
2024-11-04, v4.0.0-rc1~521^2~1) we implemented the POSIX behavior that
resolves symlinks followed by '..' components.  However, Windows just
removes them lexically.  Also, we were not handling all junction types.

Instead, use `GetFinalPathNameByHandleW` via `uv_fs_realpath`.

Note that we previously attempted this in commit 640709e7db
(cmSystemTools: Implement GetRealPath on Windows, 2017-10-02,
v3.11.0-rc1~445^2~1) but reverted it in commit 83630d4918
(cmSystemTools: Revert GetRealPath implementation on Windows,
2018-05-29, v3.11.3~3^2) due to resolving `subst` drives.  This time,
add code to re-`subst`itute the drive in the resolved path.

Fixes: #26750
Issue: #17206
2025-03-10 14:50:09 -04:00
Atri Bhattacharya
a869b79c59 FindHDF5: Prefer h5hl* compilers for HDF5_FIND_HL
Prefer `h5hlcc`, `h5hlc++`, and `h5hlfc` compilers when HDF5's HL libraries
are requested. These include the `-lhdf_hl` in the command line, whereas
the non-hl compilers (like `h5cc`) do not. Using the latter, therefore,
leads to cmake complaining about not finding the `HDF5_HL` libraries even
though they are present in the same location as the `hdf5` library itself.

Fixes: #23261
2025-03-10 11:53:01 -04:00
Brad King
5910bf0b40 cmSystemTools: Restore GetRealPathResolvingWindowsSubst
We need it to restore behavior on Windows.  Revert commit 16af27fd42
(cmSystemTools: Drop GetRealPathResolvingWindowsSubst, 2024-11-04,
v4.0.0-rc1~521^2), but with a cleaned up implementation.

Issue: #26750
Issue: #18033
2025-03-10 11:25:23 -04:00
Brad King
1b0c92a3a1 cmCurl: Avoid using undocumented type for CURLOPT_NETRC values
Since upstream curl commit `2ec00372a1` (curl.h: change some enums to
defines with L suffix, 2025-02-25), the `CURL_NETRC_*` constants are
integer literals instead of `enum CURL_NETRC_OPTION`.  It turns out
that `curl_easy_setopt` has always expected a `long` anyway, and
that `CURL_NETRC_OPTION` is not documented for public use.

Fixes: #26754
2025-03-10 11:17:19 -04:00
Marc Chevrier
ee066d2271 LinkerId: Suppress decorated diagnostics during linker inspection
Fixes: #26747
2025-03-10 10:36:27 -04:00
Brad King
7c55e2a698 Merge topic 'patch-UsewxWidgets'
c827016b10 UsewxWidgets, Use_wxWindows: Update documentation

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !10437
2025-03-10 10:25:23 -04:00
Brad King
cfb59a273a Merge topic 'patch-CheckIncludeFile'
d3b7f0d272 CheckInclude{FileCXX,File,Files}: Add examples

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !10435
2025-03-10 10:24:23 -04:00
Brad King
8a8db36758 Merge topic 'patch-FindSQLite3'
dc20787020 FindSQLite3: Replace REQUIRED_VARS order

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !10436
2025-03-10 10:22:41 -04:00
Brad King
a723e22e20 Merge branch 'release-4.0' 2025-03-10 10:21:06 -04:00
Brad King
c4f8b13845 Merge topic 'normalize-input-paths'
fc5584f9bb cmSystemTools: Fix regression in input path normalization on Windows

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: buildbot <buildbot@kitware.com>
Merge-request: !10440
2025-03-10 10:21:06 -04:00
Brad King
de7334e4a8 Merge topic 'normalize-input-paths' into release-4.0
fc5584f9bb cmSystemTools: Fix regression in input path normalization on Windows

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: buildbot <buildbot@kitware.com>
Merge-request: !10440
2025-03-10 10:21:04 -04:00
Brad King
af63cb01e9 Merge branch 'release-4.0' 2025-03-10 10:19:04 -04:00
Brad King
f65fcde174 Merge topic 'document-cps-components-resolution'
dd8bf95271 Help: Document handling of CPS transitive components

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !10434
2025-03-10 10:19:04 -04:00
Brad King
941dab2f64 Merge topic 'document-cps-components-resolution' into release-4.0
dd8bf95271 Help: Document handling of CPS transitive components

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !10434
2025-03-10 10:19:02 -04:00
Kitware Robot
226b853e59 CMake Nightly Date Stamp 2025-03-10 00:04:25 -04:00
Brad King
e188d8d6dc Merge branch 'release-4.0' 2025-03-09 10:48:46 -04:00
Brad King
cd38131f31 Merge topic 'path-resolver'
8dfc725cdb PathResolver: Add mode to collapse paths naively and look up on-disk case
75913fe430 PathResolver: Document in comments the on-disk case lookup on macOS

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: buildbot <buildbot@kitware.com>
Merge-request: !10438
2025-03-09 10:48:46 -04:00
Brad King
a4a4596c24 Merge topic 'path-resolver' into release-4.0
8dfc725cdb PathResolver: Add mode to collapse paths naively and look up on-disk case
75913fe430 PathResolver: Document in comments the on-disk case lookup on macOS

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: buildbot <buildbot@kitware.com>
Merge-request: !10438
2025-03-09 10:48:44 -04:00
Kitware Robot
e77ac34cd4 CMake Nightly Date Stamp 2025-03-09 00:07:50 -05:00
Peter Kokot
a04fd272c2 CheckIPOSupported: Update documentation
- Added some minor descriptions and include() to examples
- The second example extended also with option() as it is very common
  usage in CMake to enable IPO conditionally
2025-03-08 22:05:05 +01:00
Kitware Robot
24a1a7ac5d CMake Nightly Date Stamp 2025-03-08 00:12:34 -05:00
Brad King
fc5584f9bb cmSystemTools: Fix regression in input path normalization on Windows
Since commit 622596c6b2 (cmSystemTools: Re-implement
ToNormalizedPathOnDisk without translation map, 2024-10-30,
v4.0.0-rc1~528^2~5) we normalize input paths, while resolving symlinks
only if followed by `..` components, by using `cm::PathResolver`'s
`LogicalPath` mode.  However, that approach assumes POSIX semantics for
resolving paths with symlinks and is incorrect on Windows.

On Windows, file system operations naively remove any component
preceding `..` regardless of whether it is a symlink.  Prior to the
above commit, `ToNormalizedPathOnDisk` matched that behavior using
`CollapseFullPath` followed by `GetActualCaseForPath`.  Restore it using
`cm::PathResolver`'s `CasePath` mode.

Issue: #26750
2025-03-07 18:26:14 -05:00
Brad King
8dfc725cdb PathResolver: Add mode to collapse paths naively and look up on-disk case
In CMake 3.31 and below, `CollapseFullPath` did this on Windows.  KWSys
has since stopped looking up the on-disk case in `CollapseFullPath` to
avoid disk access when most callers only need an in-memory operation.
We currently call `GetActualCaseForPath` explicitly when needed.

Add a mode to `cm::PathResolver` to combine these operations and cache
disk access behind the `System::ReadName` callback.  We will use this to
restore the way CMake 3.31 and below normalized input paths on Windows.

Issue: #26750
Issue: #20214
2025-03-07 18:22:46 -05:00
Brad King
75913fe430 PathResolver: Document in comments the on-disk case lookup on macOS
This was added by commit 08040ced86 (cmake: Look up on-disk case of
input paths on macOS, 2024-11-20, v4.0.0-rc1~390^2).  Update relevant
comments.
2025-03-07 18:14:57 -05:00
Matthew Woehlke
dd8bf95271 Help: Document handling of CPS transitive components
Add documentation explaining how CMake handles component requests of a
CPS transitive dependency.
2025-03-07 13:19:43 -05:00
Peter Kokot
c827016b10 UsewxWidgets, Use_wxWindows: Update documentation
UsewxWidgets:
- Module description updated according to current code
- Mention of the link_libraries() command removed as it was always
  commented out and never used in this specific module file
- Added example, how to use IMPORTED target of the found package instead
  of this module - preparing it for deprecation in the future

Use_wxWindows:
- Mention of the UsewxWidgets module removed
- The STATUS message changed to DEPRECATION and message simplified
2025-03-07 18:43:29 +01:00
Brad King
aab6f9f3f4 Merge topic 'patch-CTestCoverageCollectGCOV'
a76b533562 CTestCoverageCollectGCOV: Update documentation

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !10433
2025-03-07 12:19:27 -05:00
Brad King
5d510ae8a0 Merge topic 'genex-fix-target-pdb-base-name'
fe11677945 GenEx: Fix TARGET_PDB_FILE_BASE_NAME with PDB_NAME and DEBUG_POSTFIX
434c289f3b Help: Clarify references to <CONFIG>_POSTFIX target properties

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !10431
2025-03-07 12:18:28 -05:00
Brad King
fbe6d9ed2e Merge topic 'compile-pdb-output-directory-manual-genex'
b66dbdb6f1 Help: Document COMPILE_PDB_OUTPUT_DIRECTORY genex support
6080449551 Help: Document when PDB_OUTPUT_DIRECTORY gained genex support

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !10430
2025-03-07 12:17:05 -05:00
Brad King
c8074c1c43 Merge branch 'release-4.0' 2025-03-07 12:15:01 -05:00