summaryrefslogtreecommitdiffstats
path: root/Tests
Commit message (Collapse)AuthorAgeFilesLines
...
| * | | LLVMFlang: Add support for targeting MSVC ABI on WindowsBrad King2023-10-033-2/+16
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The compiler does not yet support everything needed to integrate well with the MSVC ABI, in particular for runtime library selection and debug format selection. Document them in FIXME comments and leave this support undocumented by CMake for now. Fixes: #24840 Inspired-by: Pierrick Bouvier <pierrick.bouvier@linaro.org>
| * | | Tests: Enable CMP0091/CMP0141 for MSVC settings in FortranOnly testBrad King2023-10-021-1/+1
| | | |
| * | | CMakeParseImplicitLinkInfo: Detect link lines using link.exe and lld-linkBrad King2023-10-0213-0/+134
| | | | | | | | | | | | | | | | | | | | | | | | These are printed by LLVM-based compiler drivers targeting the MSVC ABI. In our use case for this, `CMAKE_LINKER` may not yet be known, so do not include it in the test data.
* | | | Merge topic 'cmDebugTools-add-header'Brad King2023-10-032-0/+34
|\ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | b0612796b1 cmDebugTools: add header Acked-by: Kitware Robot <kwrobot@kitware.com> Tested-by: buildbot <buildbot@kitware.com> Merge-request: !8849
| * | | | cmDebugTools: add headerBen Boeckel2023-10-012-0/+34
| |/ / / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This provides a utility macro which prints out: - location of the call; - the expression being evaluated; and - the value of the expression. Evaluates to the value of the expression. Inspired by Rust's `dbg!` macro. See: https://doc.rust-lang.org/stable/std/macro.dbg.html
* | | | Merge topic 'cxxmodules-no-longer-experimental'Brad King2023-10-02127-460/+244
|\ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 437280b127 cxxmodules: scan C++ sources for imports by default 3cddd11649 Ninja: message about not compiled sources explicitly 068fde1c34 cmGeneratorTarget: use `this->` for method calls 197a6bf171 cxxmodules: rework control logic for scanning regular C++ sources 5eb7bd641a Tests/RunCMake/CXXModules: remove rules file requirement ff18acc301 CXXModules: remove `EXPERIMENTAL` from C++ module variable names 0c07f39006 cmExperimental: remove the flag for C++ modules 68caec9137 Help: add a manpage for cxxmodule support Acked-by: Kitware Robot <kwrobot@kitware.com> Acked-by: Pavel Solodovnikov <hellyeahdominate@gmail.com> Merge-request: !8828
| * | | | cxxmodules: scan C++ sources for imports by defaultBen Boeckel2023-10-0244-38/+72
| | | | | | | | | | | | | | | | | | | | | | | | | Existing projects are not using C++ modules in their sources, so introduce policy CMP0155 to enable scanning by default.
| * | | | cxxmodules: rework control logic for scanning regular C++ sourcesBen Boeckel2023-10-0210-23/+58
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Now that scanning support is no longer experimental, the logic for whether or not to scan C++ 20 sources is now important because all projects are now exposted to the logic. Make the scanning rules explicit in the documentation and rework the queries to localize all of the associated logic. A policy to handle the ultimate fallback logic will be implemented in a following commit.
| * | | | Tests/RunCMake/CXXModules: remove rules file requirementBen Boeckel2023-10-021-12/+2
| | | | | | | | | | | | | | | | | | | | | | | | | Only Clang needs to disable extensions in order to work; other implementations work as-is.
| * | | | CXXModules: remove `EXPERIMENTAL` from C++ module variable namesBen Boeckel2023-10-0211-12/+12
| | | | |
| * | | | cmExperimental: remove the flag for C++ modulesBen Boeckel2023-10-0279-379/+104
| |/ / / | | | | | | | | | | | | | | | | | | | | | | | | All the major compilers now have scheduled releases with support for scanning, so remove the experimental gate. Fixes: #18355
* | | | Merge topic 'ctest-timeout-flag'Brad King2023-10-023-2/+15
|\ \ \ \ | | |/ / | |/| | | | | | | | | | | | | | | | | | | | | | | | | | d267c128a2 ctest: Restore support for --timeout values higher than default test timeout dd779a4bc2 Tests: Clarify RunCMake.CTestTimeout case name Acked-by: Kitware Robot <kwrobot@kitware.com> Acked-by: buildbot <buildbot@kitware.com> Merge-request: !8851
| * | | ctest: Restore support for --timeout values higher than default test timeoutBrad King2023-09-292-0/+13
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Since refactoring in commit 0a5aeaf302 (cmCTestRunTest: Consolidate test timeout selection logic, 2023-05-04, v3.27.0-rc1~120^2) we accidentally truncate `--timeout` values to ctest's default `TimeOut`. Fix the logic to prefer the flag whenever the `TIMEOUT` property is not set. In combination with the prior refactoring, this also fixes a bug that caused `--timeout` values of 10000000 seconds or more to be ignored. Fixes: #23979
| * | | Tests: Clarify RunCMake.CTestTimeout case nameBrad King2023-09-292-2/+2
| | | |
* | | | Merge topic 'FindCUDAToolkit-implicit-dirs'Brad King2023-09-292-4/+20
|\ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 4316d4dcfd FindCUDAToolkit: Search all of `nvcc` implicit includes and library dirs Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !8835
| * | | | FindCUDAToolkit: Search all of `nvcc` implicit includes and library dirsRobert Maynard2023-09-272-4/+20
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Improves the handling of CUDA layouts where we have multiple include and library directories listed in the output of `nvcc -v`. This updates both when the CUDA language is enabled or not. Fixes: #24915
* | | | | Merge topic 'help-arbitrary'Brad King2023-09-292-0/+9
|\ \ \ \ \ | |_|_|/ / |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | 4e50320978 Help: Allow help for arbitrary keywords Acked-by: Kitware Robot <kwrobot@kitware.com> Acked-by: buildbot <buildbot@kitware.com> Merge-request: !8674
| * | | | Help: Allow help for arbitrary keywordsMartin Duffy2023-09-272-0/+9
| | | | | | | | | | | | | | | | | | | | | | | | | Changes `cmake --help [arg]` to search `Help/*/` instead of `Help/command/` Allows editors to easily display manual for `<cword>`
* | | | | Merge topic 'cxxmodules-export-dirs-with-prefix'Brad King2023-09-2768-77/+369
|\ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 42654cc818 Tests/CXXModules: add tests for modules with include requirements 7217cb78cf Tests/CXXModules: relax line number matching in stderr b3d1bbbbcc cmExportFileGenerator: relocate include directories for C++ modules 349ff8b080 cmGeneratorTarget: remove not-INTERFACE assertion 681a763425 cmGeneratorTarget: use a character literal Acked-by: Kitware Robot <kwrobot@kitware.com> Acked-by: buildbot <buildbot@kitware.com> Merge-request: !8838
| * | | | | Tests/CXXModules: add tests for modules with include requirementsBen Boeckel2023-09-2623-0/+292
| | | | | |
| * | | | | Tests/CXXModules: relax line number matching in stderrBen Boeckel2023-09-2645-77/+77
| | | | | |
* | | | | | Merge topic 'misc-cxxmodule-fixes'Brad King2023-09-2711-47/+102
|\ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 3b632f32fa Tests/CXXModules: forward the default build type 5ab6b09691 Tests/CXXModules: fix multi-config and MSVC details 11b62ef118 Tests/CXXModules: add missing `bmi-only` and compiler id fields 5d9631fbdd Tests/CXXModules: fix key set mismatch error messages 86e7fb72cb Tests/CXXModules: use a less generic name for the config 6b940dc590 Tests/CXXModules: replace the object extension as well 1c9f83c8ec Tests/CXXModules: fix error detection propagation 7a4c02cb38 cmGlobalGenerator: factor out messaging for CMP0037 ... Acked-by: Kitware Robot <kwrobot@kitware.com> Tested-by: buildbot <buildbot@kitware.com> Acked-by: Pavel Solodovnikov <hellyeahdominate@gmail.com> Merge-request: !8834
| * | | | | | Tests/CXXModules: forward the default build typeBen Boeckel2023-09-264-0/+10
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Windows defaults the build type to `Debug` while other platforms have an empty string.
| * | | | | | Tests/CXXModules: fix multi-config and MSVC detailsBen Boeckel2023-09-256-25/+25
| | | | | | |
| * | | | | | Tests/CXXModules: add missing `bmi-only` and compiler id fieldsBen Boeckel2023-09-256-0/+30
| | | | | | | | | | | | | | | | | | | | | | | | | | | | Missed because the test script did not properly bubble up error reports.
| * | | | | | Tests/CXXModules: fix key set mismatch error messagesBen Boeckel2023-09-251-2/+2
| | | | | | |
| * | | | | | Tests/CXXModules: use a less generic name for the configBen Boeckel2023-09-254-18/+18
| | | | | | |
| * | | | | | Tests/CXXModules: replace the object extension as wellBen Boeckel2023-09-252-0/+2
| | | | | | |
| * | | | | | Tests/CXXModules: fix error detection propagationBen Boeckel2023-09-254-2/+15
| | | | | | |
* | | | | | | Merge topic 'autogen-timestamp-per-config'Brad King2023-09-277-75/+198
|\ \ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | bac468ddfd AutoGen: Fix regression in timestamps on multi-config generators c3f0825d3c Tests/RunCMake/Autogen: Factor out test setup 9654835b4f Tests/RunCMake/Autogen: Add expect_n_times() function Acked-by: Kitware Robot <kwrobot@kitware.com> Tested-by: buildbot <buildbot@kitware.com> Merge-request: !8840
| * | | | | | | AutoGen: Fix regression in timestamps on multi-config generatorsOrkun Tokdemir2023-09-261-42/+149
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Since commit fddd0f0443 (Autogen: AUTO*_EXECUTABLE: add support for per-config values, 2023-06-14) we do not correctly generate outputs for one configuration after another configuration has been built. Fix this: - Revert some config based stuff for `Xcode` due to the `$<CONFIG>` genex usage limitation in source files with `Xcode`. - For multi-config generators use a per-config `timestamp_$<CONFIG>` file instead of one `timestamp` file. Fixes: #25261
| * | | | | | | Tests/RunCMake/Autogen: Factor out test setupOrkun Tokdemir2023-09-266-33/+39
| | | | | | | |
| * | | | | | | Tests/RunCMake/Autogen: Add expect_n_times() functionOrkun Tokdemir2023-09-261-0/+10
| | |_|_|/ / / | |/| | | | |
* | | | | | | Tests: Fix RunCMake.XcFramework in symlinked paths with Xcode 15Brad King2023-09-261-2/+11
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The `xcodebuild -create-xcframework` tool in Xcode 15.0 fails to compute relative paths if the input paths have symlinks.
* | | | | | | Tests: Fix failures on macOS arm64 due to Xcode 15 skipping ad-hoc signatureBrad King2023-09-262-7/+19
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Update commit 1c15eb39d2 (Tests: Suppress failures on macOS arm64 due to separate Xcode signing phase, 2021-02-22, v3.20.0-rc2~11^2) for Xcode 15, which ignores our `-Xlinker -adhoc_codesign` flag, prioritizes its own `-Xlinker -no_adhoc_codesign` flag, and does not add an ad-hoc signature at link time. Issue: #21845
* | | | | | | Tests: Disable visionOS cases because Xcode 15.0 excludes supportBrad King2023-09-262-37/+44
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | In commit 25977e177b (apple: add preliminary visionOS support, 2023-06-22) we added visionOS based on a Xcode 15 beta version, but the Xcode 15.0 final release did not include it. Disable the test cases until we can improve the condition to detect availability. Issue: #25266
* | | | | | | Tests: Clarify RunCMake.XcFramework conditions testing Xcode versionBrad King2023-09-262-8/+8
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | In commit 7050ac56a1 (macOS: Add support for linking against .xcframework folders, 2023-05-17) used conditions based on the AppleClang compiler version, but we actually want to check the Xcode version.
* | | | | | | Tests: Teach RunCMake to ignore Xcode DVTAssertions warningsBrad King2023-09-261-0/+2
|/ / / / / / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | On some Xcode versions, `xcodebuild` may warn: ... xcodebuild[...] DVTAssertions: Warning ... Teach RunCMake to drop such incidental lines before matching against expected output.
* | | | | | Merge topic 'cuda_handle_target_objects_in_device_link'Brad King2023-09-265-0/+71
|\ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | cd984261e1 CUDA: Device linking now uses TARGET_OBJECTS content aa8facefe8 CUDA: Visual Studio propagate objects to device linking Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !8829
| * | | | | | CUDA: Device linking now uses TARGET_OBJECTS contentRobert Maynard2023-09-255-0/+71
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Due to an oversight in cmLinkLineDeviceComputer object files did not get propagate to the device linking phase when given via the `$<TARGET_OBJECTS>` generator expression.
* | | | | | | Merge topic 'hip-nvidia'Brad King2023-09-265-1/+77
|\ \ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | fd982eec10 HIP: Add tests for special NVIDIA values of CMAKE_HIP_ARCHITECTURES 8c8b3f1bfa HIP: Fix support for -DCMAKE_HIP_ARCHITECTURES=native with NVCC b3e92775ab HIP: Add CMAKE_HIP_HOST_COMPILER when compiler is NVCC e43918b4ca HIP: Fix linking mixed-lang binary with CXX compiler and Makefile generators 4794505122 HIP: Do not require hip-lang package for NVIDIA platform 09d759dc7f HIP: Simplify exclusion of AMD device runtime with NVIDIA GPUs 2a60663670 HIP: Simplify CMAKE_GENERATOR references for determining compiler 8124950f6c CUDA: Generalize CMAKE_{CUDA => <LANG>}_HOST_COMPILER variable docs Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !8836
| * | | | | | | HIP: Add tests for special NVIDIA values of CMAKE_HIP_ARCHITECTURESBrad King2023-09-253-0/+72
| | | | | | | |
| * | | | | | | HIP: Add CMAKE_HIP_HOST_COMPILER when compiler is NVCCBrad King2023-09-251-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Also add `HIPHOSTCXX` environment variable.
| * | | | | | | HIP: Fix linking mixed-lang binary with CXX compiler and Makefile generatorsBrad King2023-09-251-0/+4
| | |_|/ / / / | |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Following commit 6377a43814 (CUDA: Support response files with nvcc, 2022-06-01, v3.25.0-rc1~636^2), while determining the compiler ABI, do not use response files, so that we can extract implicit link flags. Fixes: #25272
* | | | | | | Merge topic 'genexp-no-eval'Brad King2023-09-2615-0/+65
|\ \ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 634079b86d cmGeneratorExpressionEvaluator: Short-circuit boolean operators Acked-by: Kitware Robot <kwrobot@kitware.com> Acked-by: scivision <michael@scivision.dev> Acked-by: Pavel Solodovnikov <hellyeahdominate@gmail.com> Merge-request: !8791
| * | | | | | | cmGeneratorExpressionEvaluator: Short-circuit boolean operatorsMartin Duffy2023-09-1315-0/+65
| | | | | | | |
* | | | | | | | Merge topic 'lint-genex-empty'Brad King2023-09-262-0/+7
|\ \ \ \ \ \ \ \ | | |_|_|_|_|/ / | |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 80df7b1745 Linting: Fix empty evaluated genex Acked-by: Kitware Robot <kwrobot@kitware.com> Tested-by: buildbot <buildbot@kitware.com> Merge-request: !8833
| * | | | | | | Linting: Fix empty evaluated genexOrkun Tokdemir2023-09-252-0/+7
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Update logic added by commit 099934e313 (Add generator expression support to static code analysis hooks, 2023-03-24, v3.27.0-rc1~261^2), and preserved by commit 993dde925f (TargetGenerator: Factor out generation of code check rules, 2023-05-12, v3.27.0-rc1~84^2~2), to handle a generator expression that evaluates to the empty string. If `<LANG>_CPPCHECK`, `<LANG>_CPPLINT`, `<LANG>_CLANG_TIDY`, or `<LANG>_INCLUDE_WHAT_YOU_USE` are empty after evaluating generator expressions, do not run their lints. Fixes: #25265
* | | | | | | | Merge topic 'orangec-compiler'Brad King2023-09-2645-95/+101
|\ \ \ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | f8fa4f1ad7 ci: Add OrangeC 6.73.1 nightly CI job 531b4fe643 OrangeC: Add support for OrangeC compiler 10f435a58f Tests: Simplify nested if conditions in Complex tests Acked-by: Kitware Robot <kwrobot@kitware.com> Acked-by: buildbot <buildbot@kitware.com> Acked-by: Victor <lostfreeman@gmail.com> Merge-request: !8592
| * | | | | | | | OrangeC: Add support for OrangeC compilerDavid Lindauer2023-09-2545-61/+95
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Add compiler information modules. Update the test suite. Fixes: #25032 Co-authored-by: Brad King <brad.king@kitware.com>