- Jan 24, 2025
-
-
CMake assumes that Match::start(n) and end(n) return npos for unmatched groups. Make it so and prevent undefined behavior (pointer overflow). Issue: cmake/cmake#16899
-
Separating the search start position from the input start is necessary to correctly implement the "^" anchor when searching for multiple matches in the same string. Issue: cmake/cmake#16899
-
7dec9555 Revise C++ coding style using clang-format with "east const" ac2b3378 Empty commit at end of history preceding clang-format "east const" transition a234f2ff clang-format: Enforce "east const" qualifier placement 7a19509c Revise C++ coding style using clang-format-18 6da5c6ac Empty commit at end of history preceding clang-format-18 style transition a42b7759 clang-format.bash: update to clang-format-18 Acked-by:
Kitware Robot <kwrobot@kitware.com> Merge-request: !319
-
4a126278 clang-format.bash: Preserve CRLF line endings on Windows Acked-by:
Kitware Robot <kwrobot@kitware.com> Merge-request: !318
-
- Jan 23, 2025
-
-
Run the `clang-format.bash` script to update all our C and C++ code to a new style defined by `.clang-format`, now with "east const" enforcement. Use `clang-format` version 18. * If you reached this commit for a line in `git blame`, re-run the blame operation starting at the parent of this commit to see older history for the content. * See the parent commit for instructions to rebase a change across this style transition commit.
-
Brad King authored
This is an empty commit that precedes an automatic application of clang-format with "east const" to update the C++ style of our entire source tree. This may be helpful to rebase a topic branch that was originally based on a commit preceding the transition. One may first rebase the topic on this commit. Then use one of the following approaches. * Rewrite the topic, including this commit, using `git filter-branch` `--tree-filter` with `clang-format.bash` to update the style in every commit. Rebase the revised topic, excluding the rewrite of this commit, on the style transition commit. OR * Add a `.git/info/grafts` entry to change the parent of the first commit in the topic from this commit to the style transition commit. Rewrite the topic using `git filter-branch --tree-filter` with `clang-format.bash` to update the style in every commit. Then remove the graft, which was resolved by the filter. See `git help filter-branch` and `git help repository-layout` for details.
-
Brad King authored
-
Run the `clang-format.bash` script to update all our C and C++ code to a new style defined by `.clang-format`. Use `clang-format` version 18. * If you reached this commit for a line in `git blame`, re-run the blame operation starting at the parent of this commit to see older history for the content. * See the parent commit for instructions to rebase a change across this style transition commit.
-
Brad King authored
This is an empty commit that precedes an automatic application of clang-format-18 to update the C++ style of our entire source tree. This may be helpful to rebase a topic branch that was originally based on a commit preceding the transition. One may first rebase the topic on this commit. Then use one of the following approaches. * Rewrite the topic, including this commit, using `git filter-branch` `--tree-filter` with `clang-format.bash` to update the style in every commit. Rebase the revised topic, excluding the rewrite of this commit, on the style transition commit. OR * Add a `.git/info/grafts` entry to change the parent of the first commit in the topic from this commit to the style transition commit. Rewrite the topic using `git filter-branch --tree-filter` with `clang-format.bash` to update the style in every commit. Then remove the graft, which was resolved by the filter. See `git help filter-branch` and `git help repository-layout` for details.
-
Brad King authored
The `.clang-format` configuration needs no changes to make the version 18 format close to what version 15 produced before.
-
Nikita Nemkin authored
Use the binary mode of GNU sed.
-
- Jan 22, 2025
-
-
e1aeb61e SystemInformation: Fix GetNumberOfLogicalCPU on s390x Acked-by:
Kitware Robot <kwrobot@kitware.com> Merge-request: !316
-
- Jan 21, 2025
-
-
The format of `/proc/cpuinfo` is different on `s390x` than other architectures. Issue: cmake/cmake#26619
-
- Jan 16, 2025
-
-
2926bae9 SystemTools: Fix CloneFileContent copy-on-write on macOS / APFS Acked-by:
Kitware Robot <kwrobot@kitware.com> Merge-request: !315
-
- Jan 15, 2025
-
-
`SystemTools::CloneFileContent()` attempts to clone a file using the underlying filesystem’s copy-on-write features. The call to macOS’s copyfile() was changed to not use COPYFILE_CLONE some time back due to it following symlinks - which was not desired. Unfortunately (and the manpage for copyfile() really doesn’t make this clear) this disables cloning all together. Go back to using `COPYFILE_CLONE`, but explicitly check for symlinks. Additionally, add the `COPYFILE_UNLINK` flag. This fixes a second bug in the existing implementation - existing files were not overwritten on macOS which is inconsistent with the Linux implementation which explicitly removes them, as well as calling `open()` with `O_CREAT`. In effect this meant that progressively, previously cloned files become de-cloned from their source as the built-in blockwise copy gets used instead. Rewrite the method comments which don't seem to have been updated since the macOS implementation was added. The function itself is not especially well named anymore. Verified cloning works using this tool: * https://github.com/dyorgio/apfs-clone-checker See also: * https://wadetregaskis.com/copy-on-write-on-apfs/
-
- Dec 12, 2024
-
-
62ad438e Glob: Use case-insensitive matching on CYGWIN Acked-by:
Kitware Robot <kwrobot@kitware.com> Merge-request: !314
-
Brad King authored
CYGWIN is implemented on top of Windows, so the filesystem is not case sensitive.
-
- Nov 30, 2024
-
-
967b2120 Remove legacy unused IMMEDIATE CMake keyword Acked-by:
Kitware Robot <kwrobot@kitware.com> Merge-request: !313
-
- Nov 28, 2024
-
-
Peter Kokot authored
This was once supported in CMake 2.x and in current 3.x versions is ignored.
-
- Nov 23, 2024
-
-
5995fd7d SystemInformation: Ignore stderr from OS query tools Acked-by:
Kitware Robot <kwrobot@kitware.com> Merge-request: !312
-
- Nov 22, 2024
-
-
Brad King authored
On macOS, `sw_vers` may print to `stderr` based on environment variables like `MallocGuardEdges=1`. Do not capture that as part of the information it prints to `stdout`. Issue: cmake/cmake#26466
-
- Nov 06, 2024
-
-
30e9db2d SystemTools: Drop GetActualCaseForPathCached Acked-by:
Kitware Robot <kwrobot@kitware.com> Merge-request: !311
-
- Nov 05, 2024
-
-
Brad King authored
It was added temporarily for CMake, which no longer needs it.
-
- Nov 04, 2024
-
-
47dce1a3 SystemTools: Remove path translation map 20b2c992 SystemTools: Remove unused global object Acked-by:
Kitware Robot <kwrobot@kitware.com> Reviewed-by:
Ben Boeckel <ben.boeckel@kitware.com> Merge-request: !310
-
- Nov 03, 2024
-
-
Brad King authored
CMake used this to preserve symlinks through realpath operations, but its presence caused some undesired side effects. Those realpath operations are being replaced with a hand-written alternative that explicitly preserves symlinks when possible and does not have the side effects. Therefore we no longer need the path translation map. Issue: cmake/cmake#16228
-
- Nov 01, 2024
-
-
fdf4f2f8 SystemTools: Fix ReadSymlink for links to absolute paths on Windows Acked-by:
Kitware Robot <kwrobot@kitware.com> Merge-request: !309
- Oct 31, 2024
-
-
Brad King authored
Symlinks to absolute paths may use a NT Object Path prefix [1] [2]. [1] https://learn.microsoft.com/en-us/openspecs/windows_protocols/ms-even/c1550f98-a1ce-426a-9991-7509e7c3787c [2] https://fleexlab.blogspot.com/2016/07/what-are-those-backslash-double.html
-
- Oct 28, 2024
-
-
f5e82d63 SystemTools: Replace malloc() with std::string Acked-by:
Kitware Robot <kwrobot@kitware.com> Merge-request: !306
-
210cea0a SystemTools: Replace unused argument to GetFullPathNameW with nullptr 3f14fce6 Process: Replace 0 with NULL in pointer arguments to GetFullPathNameW Acked-by:
Kitware Robot <kwrobot@kitware.com> Merge-request: !304
-
- Oct 25, 2024
-
-
6e847d08 SystemInformation: Add missing EOF check when reading /proc/cpuinfo Acked-by:
Kitware Robot <kwrobot@kitware.com> Merge-request: !307
- Oct 24, 2024
-
-
741c9c96 SystemTools: Expose GetActualCaseForPathCached publicly 5070bdb1 SystemTools: Restore GetActualCaseForPathCached internally Acked-by:
Kitware Robot <kwrobot@kitware.com> Merge-request: !308
-
4feb470a SystemTools: Remove GetActualCaseForPath from CollapseFullPath Acked-by:
Kitware Robot <kwrobot@kitware.com> Merge-request: !305
-
- Oct 23, 2024
-
-
Brad King authored
-
Brad King authored
Previously, `CollapseFullPath` internally called `GetActualCaseForPath` on Windows. This caused disk access for what otherwise should be a string operation. Callers can explicitly call `GetActualCaseForPath` themselves if they need that behavior. Issue: cmake/cmake#20214
-