summaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
* MSVC: Teach find_library to consider Rust's '${name}.dll.lib' conventionDaniel Ching2023-12-087-6/+19
| | | | | | | This convention is used by Rust toolchains (rustc/cargo/cargo-c) for the MSVC ABI. Fixes: #25478
* Tests: Add case covering find_library behavior when targeting MSVC ABIBrad King2023-12-075-1/+10
|
* Merge topic 'doc-dev-maint'Brad King2023-12-061-0/+7
|\ | | | | | | | | | | | | a61efbb7b1 Help/dev: Add informal governance section to maintainer guide Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !9043
| * Help/dev: Add informal governance section to maintainer guideBrad King2023-12-061-0/+7
|/ | | | Document the status quo w.r.t. governance.
* Merge branch 'release-3.28'Brad King2023-12-060-0/+0
|\
| * CMake 3.28.0v3.28.0Brad King2023-12-061-1/+1
| |
* | Merge branch 'release-3.28'Brad King2023-12-060-0/+0
|\ \ | |/
| * Merge topic 'cxxmodules-msvc-corner-cases' into release-3.28Brad King2023-12-065-3/+27
| |\ | | | | | | | | | | | | | | | | | | | | | e63983956d Tests/CXXModules: enhance `internal-partitions` test 8a658fb9ec Tests/CXXModules: import from an internal partition Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !9039
* | \ Merge topic 'cxxmodules-msvc-corner-cases'Brad King2023-12-065-3/+27
|\ \ \ | | |/ | |/| | | | | | | | | | | | | | | | e63983956d Tests/CXXModules: enhance `internal-partitions` test 8a658fb9ec Tests/CXXModules: import from an internal partition Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !9039
| * | Tests/CXXModules: enhance `internal-partitions` testBen Boeckel2023-12-054-1/+17
| | | | | | | | | | | | | | | | | | This test previously did not *require* that the internal partition be specified as a transitive usage because nothing from it was exposed. Plumb through usages such that the internal partitions are required.
| * | Tests/CXXModules: import from an internal partitionBen Boeckel2023-12-053-2/+10
| | | | | | | | | | | | | | | | | | It is reported that MSVC doesn't support the `modname=` syntax in its `-reference modname=modname.ifc` for internal partitions. Add a test case.
* | | Merge branch 'release-3.28'Brad King2023-12-060-0/+0
|\ \ \ | | |/ | |/|
| * | Merge topic 'fix-cxx-module-transitive-requirements' into release-3.28Brad King2023-12-0636-6/+392
| |\ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | e9b0dcbbfa cmCxxModuleMapper: Fix transitive requirements computation Acked-by: Kitware Robot <kwrobot@kitware.com> Acked-by: buildbot <buildbot@kitware.com> Merge-request: !9030
* | \ \ Merge topic 'fix-cxx-module-transitive-requirements'Brad King2023-12-0636-6/+392
|\ \ \ \ | | |/ / | |/| | | | | | | | | | | | | | | | | | | | | | e9b0dcbbfa cmCxxModuleMapper: Fix transitive requirements computation Acked-by: Kitware Robot <kwrobot@kitware.com> Acked-by: buildbot <buildbot@kitware.com> Merge-request: !9030
| * | | cmCxxModuleMapper: Fix transitive requirements computationnamniav2023-12-0536-6/+392
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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
* | | | Merge branch 'release-3.28'Brad King2023-12-060-0/+0
|\ \ \ \ | | |/ / | |/| |
| * | | Merge topic 'LLVMFlang-MSVC-debug' into release-3.28Brad King2023-12-063-9/+16
| |\ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | ef49ed0fe1 LLVMFlang: Fix MSVC ABI debug information format options Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !9037
* | \ \ \ Merge topic 'LLVMFlang-MSVC-debug'Brad King2023-12-063-9/+16
|\ \ \ \ \ | | |/ / / | |/| | | | | | | | | | | | | | | | | | | | | | | ef49ed0fe1 LLVMFlang: Fix MSVC ABI debug information format options Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !9037
| * | | | LLVMFlang: Fix MSVC ABI debug information format optionsBrad King2023-12-053-9/+16
| | |_|/ | |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | In commit 26bf32cdc6 (LLVMFlang: Add support for targeting MSVC ABI on Windows, 2023-09-28, v3.28.0-rc1~10^2) we incorrectly recorded `-g` as supporting the `ProgramDatabase` format, but it is actually `Embedded`, matching Clang. In order to support easy integration with C and C++ projects that use the `.pdb` debug formats, pretend LLVMFlang supports them and just don't actually emit any debug information. Issue: #24840
* | | | Merge branch 'release-3.28'Brad King2023-12-060-0/+0
|\ \ \ \ | | |/ / | |/| |
| * | | Merge topic 'imported-implib-only' into release-3.28Brad King2023-12-063-12/+26
| |\ \ \ | | |_|/ | |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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
* | | | Merge topic 'imported-implib-only'Brad King2023-12-063-12/+26
|\ \ \ \ | | |/ / | |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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
| * | | cmComputeLinkInformation: Restore soname lookup for non-imported targetsBrad King2023-12-052-12/+12
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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.
| * | | cmGeneratorTarget: Add helper to check for known runtime artifactBrad King2023-12-052-0/+14
| |/ /
* | | Merge topic 'ci-clang-tidy-patch'Brad King2023-12-068-1/+36
|\ \ \ | | | | | | | | | | | | | | | | | | | | | | | | 1f0c28c840 ci: export clang-tidy fixes as an artifact Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !7999
| * | | ci: export clang-tidy fixes as an artifactKyle Edwards2023-12-058-1/+36
| | | |
* | | | CMake Nightly Date StampKitware Robot2023-12-061-1/+1
|/ / /
* | | Merge branch 'release-3.28'Brad King2023-12-050-0/+0
|\ \ \ | |/ /
| * | Merge topic 'RH-gcc-toolset-10-bug-check' into release-3.28Brad King2023-12-051-0/+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
* | \ \ Merge topic 'RH-gcc-toolset-10-bug-check'Brad King2023-12-051-0/+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
| * | | cmCMakePath: do not use std::filesystem::path with RH gcc-toolset-10Marc Chevrier2023-12-041-0/+28
| | |/ | |/| | | | | | | Fixes: #25458, #25453
* | | Merge topic 'fix-doc-add_library-INTERFACE-EXCLUDE_FROM_ALL'Brad King2023-12-051-1/+1
|\ \ \ | | | | | | | | | | | | | | | | | | | | | | | | 7fc6d7247a Help: Fix signature of add_library(<name> INTERFACE EXCLUDE_FROM_ALL) Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !9031
| * | | Help: Fix signature of add_library(<name> INTERFACE EXCLUDE_FROM_ALL)namniav2023-12-041-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This signature was added by commit 4391913133 (Add INTERFACE libraries to generated buildsystem if they have SOURCES, 2020-07-20, v3.19.0-rc1~346^2~1) with incorrect documentation. Previously the documented signature as: add_library(<name> INTERFACE [<source>...] [EXCLUDE_FROM_ALL]) which is incorrect. CMake would recognize `EXCLUDE_FROM_ALL` as a source file and report an error that it doesn't exists. The correct signature is: add_library(<name> INTERFACE [EXCLUDE_FROM_ALL] [<source>...]) which places `EXCLUDE_FROM_ALL` in the same position used by the documentation of other signatures. Fixes: #25463
* | | | Merge branch 'release-3.28'Brad King2023-12-050-0/+0
|\ \ \ \ | | |_|/ | |/| |
| * | | Merge topic 'cxxmodules-pch' into release-3.28Brad King2023-12-056-8/+34
| |\ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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
* | \ \ \ Merge topic 'cxxmodules-pch'Brad King2023-12-056-8/+34
|\ \ \ \ \ | | |/ / / | |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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
| * | | | cmNinjaTargetGenerator: PCH files do not need dyndepBen Boeckel2023-12-041-8/+7
| | | | | | | | | | | | | | | | | | | | Fixes: #24209
| * | | | cmLocalGenerator: prevent scanning of PCH source filesBen Boeckel2023-12-041-0/+3
| | | | |
| * | | | Tests/CXXModules: add a test which scans a PCH-using sourceBen Boeckel2023-12-044-0/+24
| | | | | | | | | | | | | | | | | | | | This tests that PCH usage works with scanning logic.
* | | | | Merge branch 'release-3.28'Brad King2023-12-050-0/+0
|\ \ \ \ \ | | |/ / / | |/| | |
| * | | | Merge topic 'cmFileCopier-error-loss' into release-3.28Brad King2023-12-057-59/+77
| |\ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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
* | \ \ \ \ Merge topic 'cmFileCopier-error-loss'Brad King2023-12-057-59/+77
|\ \ \ \ \ \ | | |/ / / / | |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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
| * | | | | errors: avoid constructing a stream before getting the last errorBen Boeckel2023-12-025-28/+20
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Constructing a stream may involve operations that change the global error state. Avoid the streams by using `cmStrCat` instead.
| * | | | | cmFileCopier: remember error statuses and get their stringsBen Boeckel2023-12-021-14/+23
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The last error may have changed between the original call and the `GetLastSystemError()` call. Remember the status explicitly and ask it for its error string. Reported on Discourse: https://discourse.cmake.org/t/9539
| * | | | | cmFileTimes: return status codes from APIsBen Boeckel2023-12-022-17/+34
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This avoids accidentally overwriting the global error state before fetching the intended error code.
* | | | | | Merge branch 'release-3.28'Brad King2023-12-050-0/+0
|\ \ \ \ \ \ | | |/ / / / | |/| | | |
| * | | | | Merge topic 'fix-include-windows' into release-3.28Brad King2023-12-051-1/+1
| |\ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 696e14d977 cmFileLockResult: Fix inclusion of windows.h when cross-compiling Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !9035
* | \ \ \ \ \ Merge topic 'fix-include-windows'Brad King2023-12-051-1/+1
|\ \ \ \ \ \ \ | | |/ / / / / | |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 696e14d977 cmFileLockResult: Fix inclusion of windows.h when cross-compiling Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !9035
| * | | | | | cmFileLockResult: Fix inclusion of windows.h when cross-compilingBrad King2023-12-041-1/+1
| | |_|_|_|/ | |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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
* | | | | | Merge branch 'release-3.28'Brad King2023-12-050-0/+0
|\ \ \ \ \ \ | | |/ / / / | |/| | | |