summaryrefslogtreecommitdiffstats
path: root/Tests/RunCMake
Commit message (Collapse)AuthorAgeFilesLines
...
* | | | | 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 '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 '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 '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
| | | | | | |
* | | | | | | Merge topic 'Apple-handle-Text-Stubs'Brad King2023-03-0238-4/+679
|\ \ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | ede33f30cf Apple: Handle generation and comsuption of text-based stubs (.tbd files) fcbd723a50 Enhance support functions Acked-by: Kitware Robot <kwrobot@kitware.com> Acked-by: Brad King <brad.king@kitware.com> Merge-request: !8204
| * | | | | | | Apple: Handle generation and comsuption of text-based stubs (.tbd files)Marc Chevrier2023-03-0138-4/+679
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Fixes: #24123
* | | | | | | | Dart,FindDart: Add policy to remove these modulesBrad King2023-02-2819-0/+114
| |/ / / / / / |/| | | | | | | | | | | | | | | | | | | | | | | | | | | These modules and the "DART" tool they support have long been replaced by CTest.
* | | | | | | Merge topic 'target_sources-file_set-no-exist'Brad King2023-02-287-0/+35
|\ \ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 7e3f9aa1b2 target_sources: give a hint when a file named `FILE_SET` is not found Acked-by: Kitware Robot <kwrobot@kitware.com> Tested-by: buildbot <buildbot@kitware.com> Merge-request: !8253
| * | | | | | | target_sources: give a hint when a file named `FILE_SET` is not foundBen Boeckel2023-02-247-0/+35
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | `FILE_SET` is only supported within `target_sources()` and only directly after a visibility keyword or another `FILE_SET`. Give a hint as to what might be wrong if a file named `FILE_SET` cannot be found for any reason. Fixes: #24539
* | | | | | | | Merge topic 'dll-name-soversion'Brad King2023-02-2810-8/+33
|\ \ \ \ \ \ \ \ | |_|/ / / / / / |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | a7f9c7da26 Add option to add SOVERSION to DLL names 9694504adc Tests: Simplify RunCMake.TargetArtifacts spec 3cd34eb279 Tests: Rename RunCMake.{ArtifactOutputDirs => TargetArtifacts} Acked-by: Kitware Robot <kwrobot@kitware.com> Tested-by: buildbot <buildbot@kitware.com> Merge-request: !8021
| * | | | | | | Add option to add SOVERSION to DLL namesRalf Habacker2023-02-275-1/+31
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Add variable/target property `[CMAKE_]DLL_NAME_WITH_SOVERSION`. Fixes: #24251 Signed-off-by: Ralf Habacker <ralf.habacker@freenet.de>
| * | | | | | | Tests: Simplify RunCMake.TargetArtifacts specBrad King2023-02-241-5/+1
| | | | | | | |
| * | | | | | | Tests: Rename RunCMake.{ArtifactOutputDirs => TargetArtifacts}Brad King2023-02-247-3/+2
| |/ / / / / / | | | | | | | | | | | | | | | | | | | | | Generalize the name so we can add other kinds of artifact checks.
* | | | | | | Merge topic 'install-prefix-genex-install-code-script'Brad King2023-02-275-2/+13
|\ \ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 18e02ace5b install(CODE|SCRIPT): Support $<INSTALL_PREFIX> genex Acked-by: Kitware Robot <kwrobot@kitware.com> Acked-by: buildbot <buildbot@kitware.com> Merge-request: !8251
| * | | | | | | install(CODE|SCRIPT): Support $<INSTALL_PREFIX> genexKyle Edwards2023-02-245-2/+13
| |/ / / / / / | | | | | | | | | | | | | | | | | | | | | Fixes: #24534
* | | | | | | Merge topic 'fetchcontent-reject-CMAKE_TOOLCHAIN_FILE-env-var'Craig Scott2023-02-252-0/+3
|\ \ \ \ \ \ \ | |/ / / / / / |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | c15674a9cb FetchContent: Reject CMAKE_TOOLCHAIN_FILE env var in sub-build 31ef93f19f FetchContent: Only use @-@ replacements for sub-build CMakeLists.txt Acked-by: Kitware Robot <kwrobot@kitware.com> Tested-by: buildbot <buildbot@kitware.com> Merge-request: !8248
| * | | | | | FetchContent: Reject CMAKE_TOOLCHAIN_FILE env var in sub-buildCraig Scott2023-02-242-0/+3
| |/ / / / / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The sub-build should never try to use a toolchain file. The toolchain file may itself be getting downloaded by FetchContent. If the CMAKE_TOOLCHAIN_FILE environment variable is set, CMake uses it to initialize the CMake variable of the same name. We need to explicitly clear them before the first project call of the sub-build. Fixes: #24535
* | | | | | Merge topic 'PATH-genex-handle-list-of-paths'Brad King2023-02-249-1/+325
|\ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | e395310a21 PATH-genex: handle lists for path decomposition and transformations Acked-by: Kitware Robot <kwrobot@kitware.com> Tested-by: buildbot <buildbot@kitware.com> Acked-by: scivision <michael@scivision.dev> Merge-request: !8238
| * | | | | | PATH-genex: handle lists for path decomposition and transformationsMarc Chevrier2023-02-219-1/+325
| |/ / / / / | | | | | | | | | | | | | | | | | | Fixes: #24371
* | | | | | Merge topic 'GenerateExportHeader-Fix-Clang-support-on-Windows'Brad King2023-02-247-5/+91
|\ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 1e19936320 GenerateExportHeader: Fix Clang support on Windows Acked-by: Kitware Robot <kwrobot@kitware.com> Acked-by: Adrien De Coninck <deconinck.adrien@gmail.com> Merge-request: !8221
| * | | | | | GenerateExportHeader: Fix Clang support on WindowsCorentin Damman2023-02-237-5/+91
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | When using Clang with Visual Studio, the GenerateExportHeader function generates the DEPRECATED definition "__attribute__ ((__deprecated__))", because Clang can compile such instruction. However, if a user wants to compile the library with this generated header with MSVC, the declaration is not valid. We suggest to always use the DEPRECATED definition "__declspec(deprecated)" on Windows, which is valid for both Clang and MSVC.
* | | | | | | find_package: Use <PACKAGENAME>_ROOT variables as search prefixesBrad King2023-02-2316-0/+466
| |/ / / / / |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Extend commit eb35d8884b (find_package: Use PackageName_ROOT variables as search prefixes, 2018-03-15, v3.12.0-rc1~349^2) to also check upper-case `<PACKAGENAME>_ROOT` variables. Add policy `CMP0144` to enable the behavior in a compatible way. Fixes: #24403
* | | | | | Add variable CMAKE_ADD_CUSTOM_COMMAND_DEPENDS_EXPLICIT_ONLYAbdelmaged Khalifa2023-02-172-10/+48
|/ / / / / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Add CMake variable `CMAKE_ADD_CUSTOM_COMMAND_DEPENDS_EXPLICIT_ONLY` to enable option `DEPENDS_EXPLICIT_ONLY` on all uses of `add_custom_command`. Fixes: #17097
* | | | | Merge topic 'deprecate-extra-generators'Brad King2023-02-161-0/+8
|\ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | ef5a4d964b Deprecate "extra" generators in favor of cmake-file-api(7) Acked-by: Kitware Robot <kwrobot@kitware.com> Acked-by: buildbot <buildbot@kitware.com> Merge-request: !8211
| * | | | | Deprecate "extra" generators in favor of cmake-file-api(7)Brad King2023-02-151-0/+8
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The "extra" generators were created in CMake's early years to provide support for users of specific IDEs by directly generating their project files alongside make or ninja files. Nowadays the file-api provides a more generic, maintainable, well-tested, and robust way for IDEs to view CMake project build trees. Deprecate the legacy "extra" generators to encourage the corresponding IDEs to use the file-api. Fixes: #19090
* | | | | | cmake -E time: use C++11 chrono and better format outputscivision2023-02-151-1/+1
|/ / / / / | | | | | | | | | | | | | | | fixes #24415
* | | | | Merge topic 'AutoExport-vftable'Brad King2023-02-153-0/+29
|\ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | f513781bc5 WINDOWS_EXPORT_ALL_SYMBOLS: Export vftable symbol Acked-by: Kitware Robot <kwrobot@kitware.com> Acked-by: buildbot <buildbot@kitware.com> Merge-request: !8201
| * | | | | WINDOWS_EXPORT_ALL_SYMBOLS: Export vftable symbolMalcolm Bechard2023-02-143-0/+29
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | `pybind11` requires access to this symbol to link in some cases. Include this symbol when generating automatic exports via `CMAKE_WINDOWS_EXPORT_ALL_SYMBOLS`. Fixes: #24406
* | | | | | Merge topic 'ninja-custom-command-depends'Brad King2023-02-152-0/+30
|\ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 082ccd7530 add_custom_command: Add DEPENDS_EXPLICIT_ONLY option for Ninja Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !8198
| * | | | | | add_custom_command: Add DEPENDS_EXPLICIT_ONLY option for NinjaAbdelmaged Khalifa2023-02-142-0/+30
| |/ / / / / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Add option `DEPENDS_EXPLICIT_ONLY` to `add_custom_command` to indicate that implicit dependencies coming from users of the output are not needed, and only consider dependencies explicitly specified in the custom command. Fixes: #17097
* | | | | | Tests: Add dedicated RunCMake.ExtraGenerators testBrad King2023-02-134-0/+30
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The `Simple_${extraGenerator}` tests do not actually need to compile because they only smoke test CMake's generation of the extra project files.
* | | | | | Merge topic 'deprecate-pre-3.5'Brad King2023-02-13301-505/+428
|\ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 3a4791548d Deprecate compatibility with CMake versions older than 3.5 1edf138506 Tests/RunCMake: Update cmake_minimum_required versions 65a1c379ee Tests/CTestTest*: Update cmake_minimum_required versions 589e6fdcd1 Tests: Update cmake_minimum_required versions in a few tests 3092b14ed0 Tests: Teach RunCMake to optionally ignore policy version deprecation warnings Acked-by: Kitware Robot <kwrobot@kitware.com> Acked-by: buildbot <buildbot@kitware.com> Acked-by: scivision <michael@scivision.dev> Merge-request: !8192
| * | | | | | Deprecate compatibility with CMake versions older than 3.5Brad King2023-02-1150-66/+198
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Issue a deprecation warning on calls to `cmake_minimum_required` or `cmake_policy` that set policies based on versions older than 3.5. Note that the effective policy version includes `...<max>` treatment. Update the check from commit 5845c218d7 (Deprecate compatibility with CMake versions older than 2.8.12, 2020-06-12, v3.19.0-rc1~629^2).
| * | | | | | Tests/RunCMake: Update cmake_minimum_required versionsBrad King2023-02-11240-367/+214
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | For policy-specific tests, use the version before the policy was introduced. Otherwise, use 3.5 where possible. Also, remove `cmake_minimum_required()` and `project()` calls from individual cases where they are handled by `CMakeLists.txt`.