Commit Graph

72992 Commits

Author SHA1 Message Date
Simon Tatham
725ea968ac De-duplicate dependencies propagated through interface libraries
When processing an indirect dependency of target `A` on target `C` via
an interface library B, `cmComputeTargetDepends::AddTargetDepend` was
not checking for duplicate dependencies, so that if `A` depended on `C`
via multiple interface libraries, the dependency graph built in
cmComputeTargetDepends would have duplicate edges.  In a real project
(LLVM libc) this was causing cmake to consume multiple gigabytes of RAM.

Fixes: #27386
2025-11-26 14:48:45 +00:00
Brad King
3e5f4aa5c5 Merge branch 'release-4.2' 2025-11-12 11:42:13 -05:00
Brad King
31c38f722a Merge topic 'fbuild_unique_names'
d6bc1a8a50 FASTBuild: rename test target to RUN_TESTS

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !11403
2025-11-12 11:42:13 -05:00
Brad King
3c276579e2 Merge topic 'fbuild_unique_names' into release-4.2
d6bc1a8a50 FASTBuild: rename test target to RUN_TESTS

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !11403
2025-11-12 11:42:11 -05:00
Brad King
87ad7d7251 Merge branch 'release-4.2' 2025-11-12 10:55:32 -05:00
Brad King
923b91a13f Merge branch 'release-4.1' 2025-11-12 10:55:25 -05:00
Brad King
2f03112816 Merge branch 'release-4.0' 2025-11-12 10:55:18 -05:00
Brad King
94828640ba Merge branch 'release-3.31' 2025-11-12 10:55:00 -05:00
Brad King
94931ca3a1 Merge branch 'release-4.1' into release-4.2 2025-11-12 10:54:44 -05:00
Brad King
54d8b32e23 Merge branch 'release-4.2' 2025-11-12 10:53:50 -05:00
Brad King
3529a96ba5 Merge topic 'process-timeout-terminate'
3dc641d99c Merge branch 'backport-3.31-process-timeout-terminate'
22e84c7e7f execute_process: Restore termination of processes on timeout
e2cfc61e5e execute_process: Restore termination of processes on timeout

Acked-by: Kitware Robot <kwrobot@kitware.com>
Tested-by: buildbot <buildbot@kitware.com>
Merge-request: !11408
2025-11-12 10:53:50 -05:00
Brad King
db1b109e77 Merge topic 'process-timeout-terminate' into release-4.2
3dc641d99c Merge branch 'backport-3.31-process-timeout-terminate'
22e84c7e7f execute_process: Restore termination of processes on timeout
e2cfc61e5e execute_process: Restore termination of processes on timeout

Acked-by: Kitware Robot <kwrobot@kitware.com>
Tested-by: buildbot <buildbot@kitware.com>
Merge-request: !11408
2025-11-12 10:53:47 -05:00
Brad King
690eb1c070 Merge branch 'release-4.0' into release-4.1 2025-11-12 10:53:23 -05:00
Brad King
39ccffa076 Merge topic 'process-timeout-terminate' into release-4.1
3dc641d99c Merge branch 'backport-3.31-process-timeout-terminate'
22e84c7e7f execute_process: Restore termination of processes on timeout
e2cfc61e5e execute_process: Restore termination of processes on timeout (3.31)

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !11408
2025-11-12 10:53:09 -05:00
Brad King
cfd54d02a5 Merge branch 'release-3.31' into release-4.0 2025-11-12 10:52:49 -05:00
Brad King
b9a06e1bd1 Merge topic 'process-timeout-terminate' into release-4.0
3dc641d99c Merge branch 'backport-3.31-process-timeout-terminate'
22e84c7e7f execute_process: Restore termination of processes on timeout
e2cfc61e5e execute_process: Restore termination of processes on timeout (3.31)

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !11408
2025-11-12 10:52:05 -05:00
Brad King
5d73c4bc62 Merge topic 'backport-3.31-process-timeout-terminate' into release-3.31
e2cfc61e5e execute_process: Restore termination of processes on timeout

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !11408
2025-11-12 10:48:36 -05:00
Kitware Robot
3454109c42 CMake Nightly Date Stamp 2025-11-12 00:06:38 -05:00
Brad King
3dc641d99c Merge branch 'backport-3.31-process-timeout-terminate' 2025-11-11 10:03:15 -05:00
Brad King
22e84c7e7f execute_process: Restore termination of processes on timeout
Since commit 5420639a8d (cmExecuteProcessCommand: Replace cmsysProcess
with cmUVProcessChain, 2023-06-01, v3.28.0-rc1~138^2~8) we have not
actually terminated child processes on an `execute_process` timeout.
Similarly for other migrations from cmsysProcess to cmUVProcessChain.

Teach cmUVProcessChain clients that implement timeouts to actually
terminate remaining child processes when the timeout is reached.

Fixes: #27378
2025-11-11 09:10:29 -05:00
Brad King
e2cfc61e5e execute_process: Restore termination of processes on timeout
Since commit 5420639a8d (cmExecuteProcessCommand: Replace cmsysProcess
with cmUVProcessChain, 2023-06-01, v3.28.0-rc1~138^2~8) we have not
actually terminated child processes on an `execute_process` timeout.
Similarly for other migrations from cmsysProcess to cmUVProcessChain.

Teach cmUVProcessChain clients that implement timeouts to actually
terminate remaining child processes when the timeout is reached.

Fixes: #27378
2025-11-11 09:06:49 -05:00
Eduard Voronkin
d6bc1a8a50 FASTBuild: rename test target to RUN_TESTS
Avoid case-insensitive conflicts with project targets called `Test`.

Fixes: #27372
2025-11-11 08:54:54 -05:00
Brad King
ad112e1062 Merge topic 'patch-install-prefix-27343'
35b1250b0a GNUInstallDirs: Add notice about --prefix option

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !11369
2025-11-11 08:27:25 -05:00
Brad King
f16dba9fb9 Merge branch 'release-4.2' 2025-11-11 08:24:59 -05:00
Brad King
e0f08e466b Merge branch 'release-4.1' 2025-11-11 08:24:51 -05:00
Brad King
8b409301f0 Merge branch 'release-4.0' 2025-11-11 08:24:43 -05:00
Brad King
db26581ac3 Merge branch 'release-3.31' 2025-11-11 08:24:26 -05:00
Brad King
174fca1854 Merge topic 'update-libarchive'
ffce9fa39c Utilities: Update hard-coded try_compile results for libarchive 3.8.2
3c91d4427d libarchive: Set build options the way we need for CMake
c0354ddf83 Merge branch 'upstream-LibArchive' into update-libarchive
73b8b633a7 LibArchive 2025-10-15 (7f53fce0)
93620e671b libarchive: Update script to get 3.8.2
5c1ec64d20 Merge branch 'test-libarchive-3.8.2' into update-libarchive
576117b7eb Tests: Update expected Zstandard magic number for libarchive 3.8.2

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !11402
2025-11-11 08:23:26 -05:00
Brad King
1c2bc3b668 Merge branch 'release-4.1' into release-4.2 2025-11-11 08:21:41 -05:00
Brad King
666f0b1173 Merge topic 'test-libarchive-3.8.2' into release-4.2
576117b7eb Tests: Update expected Zstandard magic number for libarchive 3.8.2

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !11402
2025-11-11 08:21:31 -05:00
Brad King
7c3958c0b0 Merge branch 'release-4.0' into release-4.1 2025-11-11 08:21:08 -05:00
Brad King
106ba5cd47 Merge topic 'test-libarchive-3.8.2' into release-4.1
576117b7eb Tests: Update expected Zstandard magic number for libarchive 3.8.2

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !11402
2025-11-11 08:20:45 -05:00
Brad King
63465e8858 Merge branch 'release-3.31' into release-4.0 2025-11-11 08:20:37 -05:00
Brad King
70848d79b9 Merge topic 'test-libarchive-3.8.2' into release-4.0
576117b7eb Tests: Update expected Zstandard magic number for libarchive 3.8.2

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !11402
2025-11-11 08:20:20 -05:00
Brad King
7c28c08500 Merge topic 'test-libarchive-3.8.2' into release-3.31
576117b7eb Tests: Update expected Zstandard magic number for libarchive 3.8.2

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !11402
2025-11-11 08:19:11 -05:00
Kitware Robot
86e8bd3b4b CMake Nightly Date Stamp 2025-11-11 00:04:28 -05:00
Peter Kokot
35b1250b0a GNUInstallDirs: Add notice about --prefix option
When setting the installation prefix at the installation phase
(`cmake --install`) using the `--prefix` option, the GNU special cases
aren't applicable. This also adds a small clarification when to use the
`--prefix` option at the installation phase.

Briefly mentioned also the CMake presets installDir field,
the CPACK_PACKAGING_INSTALL_PREFIX variable, and the $<INSTALL_PREFIX>
generator expression so user has a better overview.

Fixes #27343
Fixes #26338
2025-11-10 22:44:12 +01:00
Brad King
ffce9fa39c Utilities: Update hard-coded try_compile results for libarchive 3.8.2 2025-11-10 15:12:53 -05:00
Brad King
3c91d4427d libarchive: Set build options the way we need for CMake 2025-11-10 15:12:47 -05:00
Brad King
c0354ddf83 Merge branch 'upstream-LibArchive' into update-libarchive
* upstream-LibArchive:
  LibArchive 2025-10-15 (7f53fce0)
2025-11-10 15:12:12 -05:00
LibArchive Upstream
73b8b633a7 LibArchive 2025-10-15 (7f53fce0)
Code extracted from:

    https://github.com/libarchive/libarchive.git

at commit 7f53fce04e4e672230f4eb80b219af17975e4f83 (v3.8.2).
2025-11-10 15:11:54 -05:00
Brad King
93620e671b libarchive: Update script to get 3.8.2 2025-11-10 15:11:41 -05:00
Brad King
5c1ec64d20 Merge branch 'test-libarchive-3.8.2' into update-libarchive 2025-11-10 15:11:31 -05:00
Brad King
576117b7eb Tests: Update expected Zstandard magic number for libarchive 3.8.2
libarchive 3.8.2 enabled Zstandard's checksum feature in the zstd write
filter.  Update our tests' expected results accordingly.

Fixes: #27355
Reported-by: Funda Wang <fundawang@yeah.net>
2025-11-10 15:11:10 -05:00
Brad King
59534983c9 Merge topic 'update-common-tracking'
e1f4a35171 Utilities/Scripts: do not use exact tree match
1b03059674 update-common.sh: synchronize with upstream
98e410c4db git-fetch-file: track `update-common.sh`

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !11397
2025-11-10 14:35:29 -05:00
Brad King
ef8185ef9a Merge branch 'release-4.2' 2025-11-10 14:01:16 -05:00
Brad King
67b8c9b4b4 Merge branch 'release-4.1' 2025-11-10 14:01:11 -05:00
Brad King
563ff5412a Merge branch 'release-4.0' 2025-11-10 14:01:06 -05:00
Brad King
32c8177fab Merge branch 'release-3.31' 2025-11-10 14:00:52 -05:00
Brad King
3e1933ec55 Merge branch 'release-4.1' into release-4.2 2025-11-10 14:00:33 -05:00