summaryrefslogtreecommitdiff
path: root/Tests
Commit message (Collapse)AuthorAgeFilesLines
* Merge topic 'recursion-limit'Brad King2023-03-1450-28/+374
|\ | | | | | | | | | | | | | | | | | | | | | | | | | | | | 49167cf68f Source: Adjust stack sizes and recursion limits to work together 9504cef8c4 Tests: Allow RunCMake.MaxRecursionDepth to test public-facing default limit 60ef076bac find_package: Enforce maximum nesting depth below maximum recursion depth 89b69bf1ad Add CMAKE_MAXIMUM_RECURSION_DEPTH environment variable 395895bda7 cmMakefile: Factor out helper to get recursion depth limit 88bc8dfc14 cmMakefile: Store recursion depth limit as size_t fcad8d0630 cmMakefile: Improve parsing of CMAKE_MAXIMUM_RECURSION_DEPTH variable 497f7d5c1a Tests: Simplify option passing to RunCMake.MaxRecursionDepth cases Acked-by: Kitware Robot <kwrobot@kitware.com> Acked-by: buildbot <buildbot@kitware.com> Merge-request: !8307
| * Tests: Allow RunCMake.MaxRecursionDepth to test public-facing default limitBrad King2023-03-131-0/+3
| | | | | | | | | | | | | | | | Previously we compiled in a smaller default limit during nightly testing and CI builds, so we were not testing the same default limit that end-users will see. Instead, set the limit during testing using an environment variable so that we can unset it when testing the default limit in `RunCMake.MaxRecursionDepth`.
| * find_package: Enforce maximum nesting depth below maximum recursion depthBrad King2023-03-136-18/+24
| | | | | | | | | | | | The stack usage for nested `find_package` calls is much larger than for other kinds of recursion, so enforce a lower limit to avoid stack overflow.
| * Add CMAKE_MAXIMUM_RECURSION_DEPTH environment variableBrad King2023-03-1345-0/+347
| | | | | | | | | | | | | | Extend the recursion limit controls added by commit a6982cff0d (cmMakefile: Impose maximum recursion limit, 2018-12-14, v3.14.0-rc1~82^2) with an environment variable that is used if the CMake variable of the same name is not set.
| * Tests: Simplify option passing to RunCMake.MaxRecursionDepth casesBrad King2023-03-091-16/+6
| |
* | Merge topic 'support_cubin_fatbin_optix_cuda_output'Brad King2023-03-1410-0/+268
|\ \ | | | | | | | | | | | | | | | | | | | | | 2def6a874b CUDA: Add support for CUBIN, FATBIN, and OPTIXIR compilation Acked-by: Kitware Robot <kwrobot@kitware.com> Acked-by: buildbot <buildbot@kitware.com> Merge-request: !8259
| * | CUDA: Add support for CUBIN, FATBIN, and OPTIXIR compilationRobert Maynard2023-03-1310-0/+268
| | |
* | | Merge topic 'revert-CheckCompilerFlag-clang-argument-unused'Brad King2023-03-142-0/+18
|\ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 97fcd3bd30 CheckCompilerFlag: Revert 'Match the Clang "argument unused" output ...' Acked-by: Kitware Robot <kwrobot@kitware.com> Acked-by: buildbot <buildbot@kitware.com> Acked-by: scivision <michael@scivision.dev> Merge-request: !8322
| * | | CheckCompilerFlag: Revert 'Match the Clang "argument unused" output ...'Brad King2023-03-132-0/+18
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Revert commit 5b45a3d0ce (CheckCompilerFlag: Match the Clang "argument unused" output for all languages, 2023-01-23, v3.26.0-rc1~38^2). It broke existing projects that were silently tolerating unrelated unused arguments in their checks for C and CXX. For example, using `CFLAGS=-nostdinc` or `CXXFLAGS=-nostdinc++` causes those flags to be used when driving the linker as well, and Clang warns they are unused in that case. Add a test case covering the now-restored behavior. Fixes: #24591
| * | | Merge topic 'GoogleTest-type-param-suite' into release-3.26Brad King2023-03-065-3/+67
| |\ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 9aa9032266 GoogleTest: Restore suite name for type-parametrized tests Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !8282
| * \ \ \ Merge topic 'ExternalProject-revert-install' into release-3.26Brad King2023-03-034-0/+14
| |\ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 771387523a ExternalProject: Restore driving install through build system Acked-by: Kitware Robot <kwrobot@kitware.com> Tested-by: buildbot <buildbot@kitware.com> Acked-by: Craig Scott <craig.scott@crascit.com> Reviewed-by: Ben Boeckel <ben.boeckel@kitware.com> Merge-request: !8279
* | \ \ \ \ Merge topic 'vs-BuildInParallel'Brad King2023-03-1310-0/+70
|\ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 7a7793e6d7 FindCUDA: Disallow with CMP0147 under Visual Studio d6353e74b4 VS: Add policy to build custom commands concurrently Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !8314
| * | | | | | FindCUDA: Disallow with CMP0147 under Visual StudioBrad King2023-03-127-0/+22
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | FindCUDA's custom commands invoke `nvcc`, which invokes `cl`. Under VS this is done without a `/FS` flag, so `.pdb` generation races if we use `BuildInParallel`. The FindCUDA module has already been removed by policy CMP0146 after being deprecated since CMake 3.10, so it is simplest to just disallow this combination of features. Issue: #24576
| * | | | | | VS: Add policy to build custom commands concurrentlyBrad King2023-03-123-0/+48
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | In commit 33c15ae2b9 (VS: Build custom commands concurrently when possible, 2023-01-19, v3.26.0-rc1~56^2) we added `BuildInParallel` to custom commands in `.vcxproj` files, but that had to be reverted by commit abb1c12162 (VS: Revert "Build custom commands concurrently when possible", 2023-03-07, v3.26.0-rc6~3^2) because some projects may have custom commands that accidentally rely on serial execution in MSBuild. Add a policy to use `BuildInParallel` for custom commands in projects that have been updated to set the policy to `NEW`. Fixes: #18405
* | | | | | | Merge topic 'findopengl-gles'Brad King2023-03-133-21/+142
|\ \ \ \ \ \ \ | |/ / / / / / |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | beb0a56c86 FindOpenGL: support finding GLES2 and GLES3 Acked-by: Kitware Robot <kwrobot@kitware.com> Acked-by: buildbot <buildbot@kitware.com> Acked-by: Alex <leha-bot@yandex.ru> Merge-request: !8309
| * | | | | | FindOpenGL: support finding GLES2 and GLES3Jaswant Panchumarti2023-03-103-21/+142
| | |_|_|_|/ | |/| | | | | | | | | | | | | | | | | | | | | | This also makes the EGL component not GLVND-specific, so documentation and tests are updated accordingly.
* | | | | | Merge topic 'help-signatures'Brad King2023-03-102-10/+20
|\ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 8c52458a9e cmRST: Fix cmake domain directives with newline before argument d4b21bcdd6 cmRST: Fix typo in comment 6a84717d17 cmRST: Convert enum types to enum class Acked-by: Kitware Robot <kwrobot@kitware.com> Acked-by: buildbot <buildbot@kitware.com> Merge-request: !8310
| * | | | | | cmRST: Fix cmake domain directives with newline before argumentBrad King2023-03-092-10/+20
| |/ / / / / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The `signature` directive added by commit 74e3c1d313 (Utilities/Sphinx: Add a directive to document command signatures, 2023-02-24) will be commonly used with the form: .. signature:: some_command(SOME_SIGNATURE) Docs for this signature. Drop the assumption that all CMake domain directives are immediately followed by their argument on the same line.
* | | | | | Merge topic 'cxx-module-extensions'Brad King2023-03-1010-34/+29
|\ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 45d1925efc Treat '.ccm', '.cxxm', and '.c++m' files as C++ sources 8c96d145c1 Tests/RunCMake: Match 'Tried extensions' output more robustly Acked-by: Kitware Robot <kwrobot@kitware.com> Acked-by: buildbot <buildbot@kitware.com> Acked-by: Ben Boeckel <ben.boeckel@kitware.com> Merge-request: !8308
| * | | | | | Tests/RunCMake: Match 'Tried extensions' output more robustlyBrad King2023-03-0910-34/+29
| |/ / / / /
* | | | | | FindCUDA: Add policy to remove this moduleBrad King2023-03-0916-0/+80
|/ / / / / | | | | | | | | | | | | | | | | | | | | | | | | | The `FindCUDA` module has been deprecated since CMake 3.10. Add a policy to pretend it doesn't exist in order to encourage projects to port away from it.
* | | | | Merge topic 'test-minver'Brad King2023-03-0962-62/+62
|\ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | bd7b2293aa Tests: Bump CMake minimum required version in find-module tests to 3.5 Acked-by: Kitware Robot <kwrobot@kitware.com> Acked-by: buildbot <buildbot@kitware.com> Merge-request: !8304
| * | | | | Tests: Bump CMake minimum required version in find-module tests to 3.5Brad King2023-03-0862-62/+62
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | CMake 3.27 deprecates compatibility with CMake < 3.5. Update find module tests to avoid the deprecation warning.
* | | | | | FindwxWidgets: Add an imported targetCheesyNacho102023-03-084-0/+35
|/ / / / /
* | | | | Merge topic 'test-minver'Brad King2023-03-0810-37/+48
|\ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | edf7888f70 Tests: Update RunCMake.include cmake_minimum_required version Acked-by: Kitware Robot <kwrobot@kitware.com> Acked-by: buildbot <buildbot@kitware.com> Merge-request: !8298
| * | | | | Tests: Update RunCMake.include cmake_minimum_required versionBrad King2023-03-0710-37/+48
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This was missed in commit 1edf138506 (Tests/RunCMake: Update cmake_minimum_required versions, 2023-02-06). Also tighten up some expected stderr content to catch these cases during similar updates in the future.
* | | | | | Tests/RunCMake: Add script to auto-generate RunCMake test suite stubKyle Edwards2023-03-072-0/+17
|/ / / / /
* | | | | Merge topic 'improve-doc-signatures'Brad King2023-03-072-0/+16
|\ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 533ebb072b Help: Use signature directive for string command cd33f461a6 Help: Use signature directive for cmake_language command 74e3c1d313 Utilities/Sphinx: Add a directive to document command signatures c09b760484 Utilities/Sphinx: Drop commented-out code from cmake domain impl 6e85ad7f8b Help/dev: Add per-directive sections in CMake Documentation Guide Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !8243
| * | | | | Utilities/Sphinx: Add a directive to document command signaturesMatthew Woehlke2023-03-032-0/+16
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Add a `signature` directive to offer a CMake version of Sphinx's `function` directive, similar to that found in other domains (py, cpp, etc.). Like others, this takes one or more signatures as arguments and creates dt/dd nodes from the signatures and the directive contents.
* | | | | | Merge topic 'Xcode-frameworks-consumption'Brad King2023-03-072-3/+16
|\ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | ce1bdec3a4 Xcode: Fix missing Frameworks search paths Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !8288
| * | | | | | Xcode: Fix missing Frameworks search pathsMarc Chevrier2023-03-062-3/+16
| | | | | | | | | | | | | | | | | | | | | | | | | | | | Fixes: #24541
* | | | | | | Merge topic 'Apple-text-Stubs-imported-configurations'Brad King2023-03-062-0/+17
|\ \ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 2e24123186 Apple: text-based stubs: manage imported configurations mapping Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !8283
| * | | | | | | Apple: text-based stubs: manage imported configurations mappingMarc Chevrier2023-03-052-0/+17
| |/ / / / / /
* | | | | | | Merge topic 'GoogleTest-type-param-suite'Brad King2023-03-065-3/+67
|\ \ \ \ \ \ \ | |/ / / / / / |/| | | | / / | | |_|_|/ / | |/| | | | | | | | | | | | | | | | 9aa9032266 GoogleTest: Restore suite name for type-parametrized tests Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !8282
| * | | | | GoogleTest: Restore suite name for type-parametrized testsBrad King2023-03-035-3/+67
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Fix a regression from commit 073dd1bd81 (GoogleTest: Change format for typed tests, 2022-02-07, v3.23.0-rc1~4^2) in the suite name detection. Co-authored-by: Evgeniy Shcherbina <ixsci@pm.me> Fixes: #24563
* | | | | | Merge topic 'ExternalProject-revert-install'Brad King2023-03-034-0/+14
|\ \ \ \ \ \ | | |_|_|/ / | |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 771387523a ExternalProject: Restore driving install through build system Acked-by: Kitware Robot <kwrobot@kitware.com> Tested-by: buildbot <buildbot@kitware.com> Acked-by: Craig Scott <craig.scott@crascit.com> Reviewed-by: Ben Boeckel <ben.boeckel@kitware.com> Merge-request: !8279
| * | | | | ExternalProject: Restore driving install through build systemBrad King2023-03-024-0/+14
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Revert commit 66b5d51f38 (ExternalProject: Install CMake projects using 'cmake --install', 2022-09-08, v3.25.0-rc1~150^2). It changed the ExternalProject install step command from: cmake --build <dir> --target install --config <cfg> to: cmake --install <dir> --config <cfg> The latter command no longer runs the external project build system during the install step. We could consider using the commands: cmake --build <dir> --target all --config <cfg> cmake --install <dir> --config <cfg> as the install step, but if `CMAKE_SKIP_INSTALL_ALL_DEPENDENCY` is used in the external project, that can change semantics too. Revert the original change pending further investigation on other ways to support its motivating use case. Add a test covering the previously-regressed use case. Fixes: #24567 Issue: #23946
| * | | | | Ninja: require Ninja 1.11 for C++ module supportBen Boeckel2023-01-232-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | See: https://gitlab.kitware.com/cmake/cmake/-/issues/18355#note_1296721 See: https://github.com/ninja-build/ninja/pull/1937
| * | | | | Merge topic 'try_run-cross-compile' into release-3.25Brad King2023-01-132-0/+10
| |\ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 2f85ec0a37 try_run: Avoid crash in keyword-dispatched signature when cross-compiling Acked-by: Kitware Robot <kwrobot@kitware.com> Acked-by: buildbot <buildbot@kitware.com> Merge-request: !8066
* | \ \ \ \ \ Merge topic 'ninja-multi-output-path-prefix'Brad King2023-03-033-0/+11
|\ \ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | df38eaab2c Ninja Multi-Config: Write output path prefix Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !8280
| * | | | | | | Ninja Multi-Config: Write output path prefixKyle Edwards2023-03-023-0/+11
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Fixes: #24566
* | | | | | | | Merge topic 'TargetRunTimeDllDirs'Kyle Edwards2023-03-023-16/+27
|\ \ \ \ \ \ \ \ | |/ / / / / / / |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | a2c9c4f202 Add test for the new TARGET_RUNTIME_DLL_PATHS genex aa68de0a27 TARGET_RUNTIME_DLLS: minor refactoring of shared-check.cmake 2ce3d62ffb Help: add documentation for the new TARGET_RUNTIME_DLL_DIRS genex c351dcd967 TARGET_RUNTIME_DLL_DIRS: add the new genex to cmGeneratorExpressionNode 064c3244da TARGET_RUNTIME_DLLS: fix test for this genex Acked-by: Kitware Robot <kwrobot@kitware.com> Tested-by: buildbot <buildbot@kitware.com> Acked-by: Alex <leha-bot@yandex.ru> Merge-request: !8247
| * | | | | | | Add test for the new TARGET_RUNTIME_DLL_PATHS genexAlexander Neundorf2023-02-261-1/+12
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | For one of the shared libraries the RUNTIME_OUTPUT_PATH is set to a subdir and the test is supposed to check that those directories appear in TARGET_RUNTIME_DLL_PATHS genex
| * | | | | | | TARGET_RUNTIME_DLLS: minor refactoring of shared-check.cmakeAlexander Neundorf2023-02-261-6/+6
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Renamed variables and text which mentions dlls to items, since we can use this check also for testing the directories.
| * | | | | | | TARGET_RUNTIME_DLLS: fix test for this genexAlexander Neundorf2023-02-221-0/+0
| | |_|_|/ / / | |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | In a95cbf38 multiple files were renamed, and check.cmake slipped through, and the test did actually not work correctly since then. This patch renames check.cmake to its correct name shared-check.cmake.
* | | | | | | Merge topic 'test-minver'Brad King2023-03-02147-150/+151
|\ \ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | f53bd6f450 Tests: Bump CMake minimum required in tests to 3.5 Acked-by: Kitware Robot <kwrobot@kitware.com> Tested-by: buildbot <buildbot@kitware.com> Merge-request: !8274
| * | | | | | | Tests: Bump CMake minimum required in tests to 3.5Brad King2023-03-01147-150/+151
| | |_|_|_|_|/ | |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | CMake 3.27 deprecates compatibility with CMake < 3.5. Update tests that do not cover older interfaces to avoid the deprecation warning. Follow the pattern from: * commit 7b07ccdd2b (Tests/*Only: Update cmake_minimum_required versions, 2020-06-15, v3.19.0-rc1~629^2~1) * commit 72e7c45e98 (Tests: Bump CMake minimum required in tests to 2.8.12, 2020-12-22, v3.20.0-rc1~224^2) * commit f6b4db365a (Tests: bump cmake_minimum_required version to 2.8.12, 2021-04-04, v3.21.0-rc1~372^2) Also remove explicit `cmake_policy` settings made redundant by the version.
* | | | | | | Merge topic 'target_sources-backtrace'Brad King2023-03-0247-133/+138
|\ \ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | b909be9e23 target_sources: Fix backtrace on missing source 4a3e79048b Tests: Add RunCMake.target_sources case covering missing source Acked-by: Kitware Robot <kwrobot@kitware.com> Tested-by: buildbot <buildbot@kitware.com> Reviewed-by: Ben Boeckel <ben.boeckel@kitware.com> Merge-request: !8268
| * | | | | | | target_sources: Fix backtrace on missing sourceBrad King2023-02-2843-133/+127
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | If a source file is not found, the error message reports a backtrace. Previously the backtrace pointed at where the target was created. In the case of `target_sources`, the missing source may have been named elsewhere. Fixes: #24538
| * | | | | | | Tests: Add RunCMake.target_sources case covering missing sourceBrad King2023-02-285-1/+12
| | | | | | | |