summaryrefslogtreecommitdiffstats
path: root/Tests
Commit message (Collapse)AuthorAgeFilesLines
...
| * | CMP0128: Add flag in OLD mode even when standard matches the defaultRaul Tambre2022-01-233-0/+31
| | | | | | | | | | | | | | | | | | | | | | | | | | | Commit 4a0485be (cmStandardLevelResolver: Avoid unnecessary flags, fix unset level logic, 2021-04-29) unintentionally changed the behavior by modifying the code to match a pre-existing comment. The resulting behavior change however matches the intentions of CMP0128, so we simply need to guard it. Fixes #23122.
| * | CMP0128: Avoid test code duplicationRaul Tambre2022-01-237-26/+10
| | |
| * | CMP0128: Prefix test names with modeRaul Tambre2022-01-237-7/+7
| | | | | | | | | | | | Makes clear that these tests are for the NEW behaviour.
| * | Merge topic 'vs2022-v143-link-guard-cf' into release-3.22Brad King2022-01-133-0/+48
| |\ \ | | | | | | | | | | | | | | | | | | | | | | | | 9e24437c91 VS: Remove the '/guard:cf' flag from v143 link flag table Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !6858
* | \ \ Merge topic 'vs-package-restore'Brad King2022-01-2420-2/+103
|\ \ \ \ | |_|_|/ |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 9aa7831f05 Presets: add resolve packages setting to build presets. b2f8f0bb87 cmGlobalVisualStudio10Generator: Auto restore NuGet packages. 193b8fca52 cmBuildOptions: Split build arguments into separate object. 6a10103493 Help: Update preset schema description for version 3 entries. Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !6761
| * | | Presets: add resolve packages setting to build presets.Carsten Rudolph2022-01-222-2/+8
| | | |
| * | | cmGlobalVisualStudio10Generator: Auto restore NuGet packages.Carsten Rudolph2022-01-2218-0/+95
| | | |
* | | | Merge topic 'cmake-warn-extra-paths'Brad King2022-01-214-2/+17
|\ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | eacf1f879b cmake: Warn about unnecessary paths on command line a4f076110d Tests: Fix RunCMake.CommandLine toolchain case command line Acked-by: Kitware Robot <kwrobot@kitware.com> Acked-by: buildbot <buildbot@kitware.com> Merge-request: !6882
| * | | | cmake: Warn about unnecessary paths on command lineRobert Maynard2022-01-203-0/+14
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | We can't make it an error as that would break existing behavior. Fixes: #23110
| * | | | Tests: Fix RunCMake.CommandLine toolchain case command lineBrad King2022-01-202-2/+3
| | | | |
* | | | | Merge topic 'target-properties-from-variables'Brad King2022-01-2119-0/+93
|\ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | fce24e4f10 define_property(): Add INITIALIZE_FROM_VARIABLE argument Acked-by: Kitware Robot <kwrobot@kitware.com> Acked-by: buildbot <buildbot@kitware.com> Merge-request: !6865
| * | | | | define_property(): Add INITIALIZE_FROM_VARIABLE argumentKyle Edwards2022-01-2019-0/+93
| |/ / / / | | | | | | | | | | | | | | | Fixes: #20698
* | | | | Merge topic 'cmake-presets-include-outside-project-dir'Brad King2022-01-203-3/+0
|\ \ \ \ \ | |/ / / / |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | 0c2d234bc9 CMakePresets: Allow files included from CMakePresets.json to be anywhere Acked-by: Kitware Robot <kwrobot@kitware.com> Acked-by: Gerhard Olsson <gerhard.nospam@gmail.com> Merge-request: !6867
| * | | | CMakePresets: Allow files included from CMakePresets.json to be anywhereKyle Edwards2022-01-193-3/+0
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | There are some valid use cases for allowing these files to be outside the project directory. Relax the restriction, and include a strong warning in the documentation.
* | | | | Merge topic 'cpack-dmg-sla'Brad King2022-01-199-0/+53
|\ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 9e38bfa915 CPack/DMG: Add explicit option to use CPACK_RESOURCE_FILE_LICENSE for SLA 542ba6ac1a Tests: Add CPack/DMG case covering SLA from CPACK_RESOURCE_FILE_LICENSE Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !6876
| * | | | | CPack/DMG: Add explicit option to use CPACK_RESOURCE_FILE_LICENSE for SLABrad King2022-01-185-0/+22
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Since macOS 12.0, the ``hdiutil udifrez`` and ``hdiutil udifderez`` commands to embed and extract resources in a disk image are deprecated. The CPack DragNDrop Generator uses these to attach the SLA specified by the `CPACK_RESOURCE_FILE_LICENSE` option. Since that option is shared by multiple CPack generators, we cannot deprecate it. Instead, add an explicit option to control the behavior. This will give projects a way to package on future macOS versions that remove the commands. In order to provide a long-term transition away from attaching SLAs to disk images, update `cpack` to default this behavior to OFF. To retain compatibility for CMake projects, teach the CPack module to default the option to ON. Later a policy can be added to change the default. Issue: #22978
| * | | | | Tests: Add CPack/DMG case covering SLA from CPACK_RESOURCE_FILE_LICENSEBrad King2022-01-185-0/+31
| | | | | |
* | | | | | Merge topic 'define-property-optional-args'Brad King2022-01-194-0/+33
|\ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | edb5059216 define_property(): Make BRIEF_DOCS and FULL_DOCS optional 7d26baff46 cmDefinePropertyCommand: Refactor to use cmArgumentParser Acked-by: Kitware Robot <kwrobot@kitware.com> Tested-by: buildbot <buildbot@kitware.com> Merge-request: !6875
| * | | | | | define_property(): Make BRIEF_DOCS and FULL_DOCS optionalKyle Edwards2022-01-184-0/+33
| |/ / / / / | | | | | | | | | | | | | | | | | | Issue: #20698
* | | | | | Merge topic 'handle_multiple_source_dirs'Brad King2022-01-191-0/+13
|\ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | b2bc3364f0 CMake: `-S` paths preferred over other provided paths 2e1b7e5b9a Add tests that showcase cmake -S limitations Acked-by: Kitware Robot <kwrobot@kitware.com> Acked-by: buildbot <buildbot@kitware.com> Merge-request: !6874
| * | | | | | Add tests that showcase cmake -S limitationsRobert Maynard2022-01-181-0/+13
| | |/ / / / | |/| | | |
* | | | | | Merge topic 'depfile-parsing-update'Brad King2022-01-194-0/+19
|\ \ \ \ \ \ | |_|/ / / / |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 0b65a2b253 add_custom_command(DEPFILE): ensure all dependencies are taken into account e04a352cca Depfile parsing: enhance compatibility with GNU Make Acked-by: Kitware Robot <kwrobot@kitware.com> Tested-by: buildbot <buildbot@kitware.com> Merge-request: !6861
| * | | | | Depfile parsing: enhance compatibility with GNU MakeMarc Chevrier2022-01-164-0/+19
| |/ / / /
* | | | | Merge topic 'CheckLinkerFlag-update-implementation'Brad King2022-01-182-2/+2
|\ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 9d1b9a4aa1 CheckLinkerFlag: rely now on internal implementation 660e0d80ae internal/CheckCompilerFlag: rely on common configuration Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !6860
| * | | | | internal/CheckCompilerFlag: rely on common configurationMarc Chevrier2022-01-142-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Extract configuration step from the CheckCompilerFlag command to enable to share it with future CheckLinkerFlag implementation
* | | | | | Merge topic 'find_library-clean-env'Brad King2022-01-183-0/+9
|\ \ \ \ \ \ | |_|/ / / / |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | b916860a48 Tests: Avoid interference from environment in RunCMake.find_library Acked-by: Kitware Robot <kwrobot@kitware.com> Acked-by: buildbot <buildbot@kitware.com> Merge-request: !6868
| * | | | | Tests: Avoid interference from environment in RunCMake.find_libraryWilliam R. Dieter2022-01-143-0/+9
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Clear $ENV{CMAKE_PREFIX_PATH} in several RunCMake.find_library tests because on Windows, a CMAKE_PREFIX_PATH with two consecutive semicolons causes a library to be found when it should not be. None of the updated tests expect CMAKE_PREFIX_PATH from the environment to influence the test, so clear the variable entirely to guarantee it will not affect the test. Fixes: #23111 Signed-off-by: William R. Dieter <william.r.dieter@intel.com>
* | | | | | Help: Document formatting of DEPRECATION target propertyBrad King2022-01-132-2/+9
|/ / / / / | | | | | | | | | | | | | | | Also add a test case to verify it.
* | | | | Merge topic 'vs2022-v143-link-guard-cf'Brad King2022-01-133-0/+48
|\ \ \ \ \ | |/ / / / |/| | | / | | |_|/ | |/| | | | | | | | | | 9e24437c91 VS: Remove the '/guard:cf' flag from v143 link flag table Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !6858
| * | | VS: Remove the '/guard:cf' flag from v143 link flag tableBenjamin Sluis2022-01-123-0/+48
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Apply the change from commit db35e3cfd6 (VS: Fix support for '/guard:cf' linker flag for v142, 2019-01-24, v3.14.0-rc1~74^2~2) to the v143 flag table. The entry for `LinkControlFlowGuard` in `v143_Link.json` does not work when used in a `.vcxproj` file. Drop our link flag table entries for this toolset so that the flag will be passed via `AdditionalOptions`. Also add a test case.
* | | | Merge topic 'better_error_message_on_unsupported_language_level'Brad King2022-01-128-12/+8
|\ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | ec1e40af1a cmStandardLevelResolver: Better error message on unsupported language level Acked-by: Kitware Robot <kwrobot@kitware.com> Acked-by: buildbot <buildbot@kitware.com> Merge-request: !6854
| * | | | cmStandardLevelResolver: Better error message on unsupported language levelRobert Maynard2022-01-118-12/+8
| | | | | | | | | | | | | | | | | | | | Fixes #23079
* | | | | Merge topic 'file-READ_ELF-capture-error'Brad King2022-01-122-2/+21
|\ \ \ \ \ | | |_|_|/ | |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | 41bebbe50a file: Restore error capture in undocumented READ_ELF mode Acked-by: Kitware Robot <kwrobot@kitware.com> Acked-by: buildbot <buildbot@kitware.com> Merge-request: !6853
| * | | | file: Restore error capture in undocumented READ_ELF modeBrad King2022-01-112-2/+21
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Revise the error message added by commit 115ff6a347 (cmELF: Include the ELF parsing code unconditionally, 2021-06-17, v3.22.0-rc1~557^2) to honor the `CAPTURE_ERROR` option. This is needed by the call site in `BundleUtilities` to suppress errors on non-ELF files. Fixes: #23074
* | | | | GoogleTest: Add handling for square brackets in test namesEvgeniy Shcherbina2022-01-113-3/+39
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | If a test name contains a square bracket (due to parameters) then it breaks gtest_discovery_test() function in some not-so-predictable way. That happens due to the special meaning these brackets have in the CMake language and they can't be escaped universally. So the following treatment has been implemented: * Every occurrence of ('[' | ']') in a test name gets replaced with the corresponding placeholder ("__osb_*" | "__csb_*") before the Google Test output processing and gets replaced back before adding a new test to CTest, keeping the original test name intact in the CTest output. The placeholders are chosen that way to minimize the chance of clashing with something in the user tests but even if the default ones would clash with something then they are enhanced to not clash with anything (hence "_*" at the placeholder's end). * The GTest output gets searched for the default test name guards ("[=[" | "]=]") and if they are found a new one gets generated until the one is found which can safely encompass any test name. The search is quite simple: find the least amount of '=' which would allow escaping any test. * The resulting ${TEST_LIST} variable will contain every test but tests with square brackets as there is no way to make sure such tests won't break the list altogether. Fixes: #23039
* | | | | GoogleTest: Generalize test samplesEvgeniy Shcherbina2022-01-115-135/+135
| |_|_|/ |/| | | | | | | | | | | | | | | Replaced brittle (and irrelevant to the tests) parts of the sample outputs with generic regexps to ease making new test cases.
* | | | Merge topic 'cmake-presets-include'Brad King2022-01-1036-1/+232
|\ \ \ \ | |_|/ / |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 26a5512c0f CMakePresets: Add include field a239f23a98 Refactor: Generalize file graph in CMakePresets 84d440caac Refactor: Split JSON processing into configure, build, and test presets fd6ea2f67f Refactor: Rename cmCMakePresetsFile to cmCMakePresetsGraph Acked-by: Kitware Robot <kwrobot@kitware.com> Tested-by: buildbot <buildbot@kitware.com> Merge-request: !6829
| * | | CMakePresets: Add include fieldKyle Edwards2022-01-0735-0/+231
| | | | | | | | | | | | | | | | Fixes: #21331
| * | | Refactor: Generalize file graph in CMakePresetsKyle Edwards2022-01-071-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Before this refactoring, presets had a simple flag that marked them as "user" or "not user", and checking the file graph of two files was as simple as checking this flag. This only allowed for two files in the graph. Generalize the code to allow for arbitrarily many files in the graph.
* | | | Merge topic 'GoogleTest-dots'Brad King2022-01-078-89/+170
|\ \ \ \ | |/ / / |/| | | | | | | | | | | | | | | | | | | 1f9554d4e9 GoogleTest: Fix regex matching all dots in the suite name Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !6822
| * | | GoogleTest: Fix regex matching all dots in the suite nameFrancesco Guastella2022-01-078-89/+170
| | | |
* | | | Merge topic 'xcode-framework-system-includes'Brad King2022-01-065-0/+33
|\ \ \ \ | |/ / / |/| | | | | | | | | | | | | | | | | | | | | | | 7d99cff236 Xcode: Properly identify frameworks with system includes Acked-by: Kitware Robot <kwrobot@kitware.com> Tested-by: buildbot <buildbot@kitware.com> Merge-request: !6815
| * | | Xcode: Properly identify frameworks with system includesGregor Jasny2021-12-225-0/+33
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Check the complete include path for being a system include, not the derived framework search path. The code for Ninja and Makefile generators does exactly the same. Fixes: #23011
* | | | Merge topic 'vs-csharp-dotnet-sdk'Brad King2021-12-2214-0/+170
|\ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 0eea32a376 VS: Add DOTNET_SDK property to generate SDK-style C# projects a450cc9533 VS: Set ResolveNugetPackages to false for ALL_BUILD and ZERO_CHECK fa76e5d194 cmVisualStudio10TargetGenerator: Factor out helper for classic MSBuild project Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !6634
| * | | | VS: Add DOTNET_SDK property to generate SDK-style C# projectsSumit Bhardwaj2021-12-2114-0/+170
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Changes in cmVisualStudio10TargetGenerator::Generate to write .Net SDK-style project for VS generators VS 19 and above. Also adds documentation and tests. Issue: #20227
* | | | | Merge topic 'doc-list-non-existent'Brad King2021-12-222-0/+48
|\ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | b573a732dc Tests: add tests to check claims in the documentation b151db01f9 Help: mention non-existent case for list(PREPEND) b3a249c2cb Help: clarify range for list(INSERT), mention nonexistent / empty case b6fdcb3df0 Help: clarify description of list(INSERT) e55f473ea9 Help: clarify that list(APPEND) on a non-existent list creates it Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !6824
| * | | | | Tests: add tests to check claims in the documentationAdriaan de Groot2021-12-212-0/+48
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | - list commands APPEND, PREPEND, INSERT treat non-existent lists as empty and use that value, creating a new list variable in the process.
* | | | | | Merge topic 'link-only-targets'Brad King2021-12-2226-1/+107
|\ \ \ \ \ \ | |_|_|/ / / |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 37af6c3311 target_link_libraries: Optionally require only target names 5134f099a3 cmGeneratorTarget: Factor out message about reasons for a missing target 37a25072ea Tests: Rename RunCMake.{CMP0028 => LinkItemValidation} Acked-by: Kitware Robot <kwrobot@kitware.com> Tested-by: buildbot <buildbot@kitware.com> Merge-request: !6821
| * | | | | target_link_libraries: Optionally require only target namesBrad King2021-12-206-0/+106
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Optionally verify that items in `LINK_LIBRARIES` and `INTERFACE_LINK_LIBRARIES` that can be target names are actually target names. Add a `LINK_LIBRARIES_ONLY_TARGETS` target property and corresponding `CMAKE_LINK_LIBRARIES_ONLY_TARGETS` variable to enable this new check. Fixes: #22858
| * | | | | Tests: Rename RunCMake.{CMP0028 => LinkItemValidation}Brad King2021-12-2022-1/+1
| |/ / / / | | | | | | | | | | | | | | | Generalize the test name to prepare for cases beyond CMP0028.