Commit Graph

35037 Commits

Author SHA1 Message Date
Kitware Robot
3f1a2c8d52 CMake Nightly Date Stamp 2023-12-13 00:01:05 -05:00
Brad King
9642647646 Merge topic 'create_test_sourcelist-full-filepath'
a29ca55b1f create_test_sourcelist: use the full path to the driver
609af7734f cmCreateTestSourceList: simplify string operations

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: buildbot <buildbot@kitware.com>
Merge-request: !9060
2023-12-12 08:41:57 -05:00
Brad King
dbede7be7e Merge topic 'cmake-sources-no-scan'
91b7bf59a7 cmGlobalXCodeGenerator: disable C++ module scanning for force-lang files
9e19a61ddb cmLocalGenerator: disable C++ module scanning for unity sources
fa9a72a788 cmLocalGenerator: disable C++ module scanning for copied PCH sources
e5dce1a37e cmQtAutoGenInitializer: disable C++ module scanning for autogen sources
4fd596c34c cmGeneratorTarget: disable C++ module scanning for verify targets

Acked-by: Kitware Robot <kwrobot@kitware.com>
Tested-by: buildbot <buildbot@kitware.com>
Merge-request: !9064
2023-12-12 08:33:38 -05:00
Kitware Robot
9be8198bcc CMake Nightly Date Stamp 2023-12-12 00:01:04 -05:00
Ben Boeckel
a29ca55b1f create_test_sourcelist: use the full path to the driver
When using `FILE_SET` syntax, full paths to out-of-source files are
needed as they are not searched for.
2023-12-11 12:15:28 -05:00
Ben Boeckel
609af7734f cmCreateTestSourceList: simplify string operations
Use `cmStrCat` where possible and use character literals instead of
length-1 string literals.
2023-12-11 12:15:28 -05:00
Ben Boeckel
91b7bf59a7 cmGlobalXCodeGenerator: disable C++ module scanning for force-lang files 2023-12-11 07:54:03 -05:00
Ben Boeckel
9e19a61ddb cmLocalGenerator: disable C++ module scanning for unity sources 2023-12-11 07:53:40 -05:00
Ben Boeckel
fa9a72a788 cmLocalGenerator: disable C++ module scanning for copied PCH sources 2023-12-11 07:53:13 -05:00
Ben Boeckel
e5dce1a37e cmQtAutoGenInitializer: disable C++ module scanning for autogen sources 2023-12-11 07:52:50 -05:00
Ben Boeckel
4fd596c34c cmGeneratorTarget: disable C++ module scanning for verify targets 2023-12-11 07:52:31 -05:00
Kitware Robot
a6853135f5 CMake Nightly Date Stamp 2023-12-11 00:01:21 -05:00
Kitware Robot
a51e61b997 CMake Nightly Date Stamp 2023-12-10 00:01:04 -05:00
Kitware Robot
41692ebb0a CMake Nightly Date Stamp 2023-12-09 00:01:05 -05:00
Kitware Robot
be25b7c4f4 CMake Nightly Date Stamp 2023-12-08 00:01:05 -05:00
Brad King
944a9c35cc Merge topic 'makefiles-lwyu-module-libraries'
6b85c71ad8 Makefiles: Add LINK_WHAT_YOU_USE support for MODULE libraries

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !9042
2023-12-07 09:15:04 -05:00
Brad King
f0deb107c5 Merge topic 'cmuvprocesschain-external-loop'
0b043a75b7 cmUVProcessChain: Add option for external uv_loop_t

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: buildbot <buildbot@kitware.com>
Merge-request: !9040
2023-12-07 09:13:57 -05:00
Brad King
f0539c353c Merge topic 'win-fs'
ad4481fa00 Source: Enhance check for C++17 filesystem support

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: buildbot <buildbot@kitware.com>
Merge-request: !9028
2023-12-07 09:12:43 -05:00
Kitware Robot
52145c117a CMake Nightly Date Stamp 2023-12-07 00:01:05 -05:00
Peter Kokot
6b85c71ad8 Makefiles: Add LINK_WHAT_YOU_USE support for MODULE libraries
This was accidentally left out by Makefile generators.
It already works with Ninja.

Fixes: #25480
2023-12-06 09:49:03 -05:00
Brad King
618fdc1c42 CMake 3.28.0 2023-12-06 08:57:42 -05:00
Brad King
e913ee37f3 Merge topic 'fix-cxx-module-transitive-requirements'
e9b0dcbbfa cmCxxModuleMapper: Fix transitive requirements computation

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: buildbot <buildbot@kitware.com>
Merge-request: !9030
2023-12-06 08:51:20 -05:00
Brad King
ef9cba9f42 Merge topic 'fix-cxx-module-transitive-requirements' into release-3.28
e9b0dcbbfa cmCxxModuleMapper: Fix transitive requirements computation

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: buildbot <buildbot@kitware.com>
Merge-request: !9030
2023-12-06 08:51:18 -05:00
Brad King
fb54e957d6 Merge topic 'imported-implib-only'
fc6508921c cmComputeLinkInformation: Restore soname lookup for non-imported targets
03d86f9d9c cmGeneratorTarget: Add helper to check for known runtime artifact

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: buildbot <buildbot@kitware.com>
Acked-by: Robert Maynard <robertjmaynard@gmail.com>
Merge-request: !9041
2023-12-06 08:49:04 -05:00
Kitware Robot
98cbe24918 CMake Nightly Date Stamp 2023-12-06 00:01:13 -05:00
Brad King
fc6508921c cmComputeLinkInformation: Restore soname lookup for non-imported targets
In commit 7351d590ee (cmTarget: Add a way to represent imported shared
library stubs, 2023-07-17, v3.28.0-rc1~344^2) we accidentally stopped
passing the SONAME of a non-imported SHARED library to our runtime
search path ordering logic.  Unfortunately I have not found a way to add
a test case for this, but it at least shouldn't regress existing tests
or those added by that commit.
2023-12-05 15:50:56 -05:00
Brad King
03d86f9d9c cmGeneratorTarget: Add helper to check for known runtime artifact 2023-12-05 15:48:36 -05:00
Kyle Edwards
0b043a75b7 cmUVProcessChain: Add option for external uv_loop_t 2023-12-05 14:48:24 -05:00
Michael Hirsch
ad4481fa00 Source: Enhance check for C++17 filesystem support
* Add `lexically_normal` test for all platforms.

* On Windows, MinGW does not currently handle `lexically_normal()`
  correctly on UNC path, but MSVC and IntelLLVM do--add a comment
  on this to avoid future confusion.

* Add test with `\\?\` notation and `weakly_canonical` that also triggers
  the MinGW bug, but is fine with MSVC and oneAPI, for a more robust and
  comprehensive test.
2023-12-05 11:30:08 -05:00
namniav
e9b0dcbbfa cmCxxModuleMapper: Fix transitive requirements computation
Previously CMake may generate incomplete transitive requirements in
CMakeFiles/<target>.dir/CXXModules.json and therefore in module mapper
for compiler, when source files were listed in CMakeList.txt in a
certain order.

This commit fixes the problem by correctly tracking unfinished
transitive requirements computation of module units.

There have been a simple circular test case whose circular dependency
was reported by build system. Now with this correct implementation it's
reported by CMake generating module mappers.

Add two test cases for transitive requirements computation, one with
adding source files in hardcoded order, and the other in randomized
order.

Fixes: #25465
2023-12-05 10:26:10 -05:00
Brad King
0e7ef08e10 Merge topic 'RH-gcc-toolset-10-bug-check'
40af103402 cmCMakePath: do not use std::filesystem::path with RH gcc-toolset-10

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: buildbot <buildbot@kitware.com>
Merge-request: !9026
2023-12-05 09:29:45 -05:00
Brad King
3e8f021137 Merge topic 'RH-gcc-toolset-10-bug-check' into release-3.28
40af103402 cmCMakePath: do not use std::filesystem::path with RH gcc-toolset-10

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: buildbot <buildbot@kitware.com>
Merge-request: !9026
2023-12-05 09:29:44 -05:00
Brad King
e05cd2871d Merge topic 'cxxmodules-pch'
40dc13b242 cmNinjaTargetGenerator: PCH files do not need dyndep
f61c64cd1c cmLocalGenerator: prevent scanning of PCH source files
ea8c37b759 Tests/CXXModules: add a test which scans a PCH-using source

Acked-by: Kitware Robot <kwrobot@kitware.com>
Tested-by: buildbot <buildbot@kitware.com>
Merge-request: !9032
2023-12-05 09:25:51 -05:00
Brad King
d301276bf5 Merge topic 'cxxmodules-pch' into release-3.28
40dc13b242 cmNinjaTargetGenerator: PCH files do not need dyndep
f61c64cd1c cmLocalGenerator: prevent scanning of PCH source files
ea8c37b759 Tests/CXXModules: add a test which scans a PCH-using source

Acked-by: Kitware Robot <kwrobot@kitware.com>
Tested-by: buildbot <buildbot@kitware.com>
Merge-request: !9032
2023-12-05 09:25:50 -05:00
Brad King
d101cb07ec Merge topic 'cmFileCopier-error-loss'
a820877d03 errors: avoid constructing a stream before getting the last error
5cf7018af6 cmFileCopier: remember error statuses and get their strings
0639a32d3a cmFileTimes: return status codes from APIs

Acked-by: Kitware Robot <kwrobot@kitware.com>
Tested-by: buildbot <buildbot@kitware.com>
Merge-request: !9023
2023-12-05 09:23:49 -05:00
Brad King
8c1da0b4bf Merge topic 'cmFileCopier-error-loss' into release-3.28
a820877d03 errors: avoid constructing a stream before getting the last error
5cf7018af6 cmFileCopier: remember error statuses and get their strings
0639a32d3a cmFileTimes: return status codes from APIs

Acked-by: Kitware Robot <kwrobot@kitware.com>
Tested-by: buildbot <buildbot@kitware.com>
Merge-request: !9023
2023-12-05 09:23:48 -05:00
Brad King
0ab6a1e9d1 Merge topic 'fix-include-windows'
696e14d977 cmFileLockResult: Fix inclusion of windows.h when cross-compiling

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !9035
2023-12-05 09:22:42 -05:00
Kitware Robot
60fa02de1c CMake Nightly Date Stamp 2023-12-05 00:01:14 -05:00
Brad King
696e14d977 cmFileLockResult: Fix inclusion of windows.h when cross-compiling
In commit 64821d8a26 (cmFileLockResult: Remove expensive windows.h
include, 2023-06-16, v3.28.0-rc1~446^2~13) we accidentally capitalized
the name of the header.  This matters when cross-compiling from a host
with a case-sensitive filesystem.

Fixes: #25474
2023-12-04 16:52:24 -05:00
Marc Chevrier
40af103402 cmCMakePath: do not use std::filesystem::path with RH gcc-toolset-10
Fixes: #25458, #25453
2023-12-04 17:39:06 +01:00
Brad King
ef89ad6c55 Merge topic 'ctest-jobserver-client'
80fe56c481 ctest: Add support for running under a make job server on POSIX systems
5396f4a9a3 cmUVJobServerClient: Add libuv-based job server integration client

Acked-by: Kitware Robot <kwrobot@kitware.com>
Tested-by: buildbot <buildbot@kitware.com>
Merge-request: !9021
2023-12-04 09:47:25 -05:00
Brad King
9cb1471ff6 Merge topic 'fileapi-exe-launcher'
80a64c9ce5 fileapi: Add cross-compiling emulator to codemodel-v2

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: buildbot <buildbot@kitware.com>
Merge-request: !8964
2023-12-04 09:43:05 -05:00
Brad King
4b13f8866d Merge topic 'cmake-non-writable-build-dir'
0fd64345fe Tests: Add case covering non-writable CMAKE_BINARY_DIR
d91c02e40f Tests: Factor out RunCMake helper to get UNIX user id
5799d0e788 cmake: Improve error message if CMAKE_BINARY_DIR not writable

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: buildbot <buildbot@kitware.com>
Acked-by: Alex <leha-bot@yandex.ru>
Merge-request: !8970
2023-12-04 09:40:20 -05:00
Ben Boeckel
40dc13b242 cmNinjaTargetGenerator: PCH files do not need dyndep
Fixes: #24209
2023-12-04 08:43:45 -05:00
Ben Boeckel
f61c64cd1c cmLocalGenerator: prevent scanning of PCH source files 2023-12-04 08:43:45 -05:00
Kitware Robot
f72ffe9f7f CMake Nightly Date Stamp 2023-12-04 00:01:36 -05:00
Brad King
80fe56c481 ctest: Add support for running under a make job server on POSIX systems
Share job slots with the job server by acquiring a token before running
each test, and releasing the token when the test finishes.
2023-12-03 08:30:07 -05:00
Brad King
5396f4a9a3 cmUVJobServerClient: Add libuv-based job server integration client 2023-12-03 08:30:06 -05:00
Brad King
714a946781 Merge topic 'uv-handle-bool'
47fbb29ad7 cmUVHandlePtr: Fix conversion to bool on Oracle Studio compiler

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: buildbot <buildbot@kitware.com>
Merge-request: !9024
2023-12-03 08:29:20 -05:00
Kitware Robot
02c63208d8 CMake Nightly Date Stamp 2023-12-03 00:01:09 -05:00