summaryrefslogtreecommitdiffstats
path: root/Tests
Commit message (Collapse)AuthorAgeFilesLines
* GenEx LIST: list operationsMarc Chevrier2023-04-16147-2/+1386
| | | | Fixes: #24550, #24547
* Merge topic 'automoc-macro-names'Craig Scott2023-04-107-0/+147
|\ | | | | | | | | | | | | | | | | | | | | c5c3aff1f5 Autogen: Add INTERFACE_AUTOMOC_MACRO_NAMES target property 69cf9700e6 Autogen: Defer setup until Generate step 7cecb6353e cmGeneratorTarget: Factor out EvaluatedTargetProperty infrastructure 2daba01ddf cmGeneratorTarget: Avoid incidental include-what-you-use warning 850b4d990c IWYU: Add mapping for 'std::remove_reference<Defer &>::type' Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !8391
| * Autogen: Add INTERFACE_AUTOMOC_MACRO_NAMES target propertyOrkun Tokdemir2023-04-097-0/+147
| | | | | | | | | | | | | | | | | | | | Add this target property to specify macro names that propagate to dependents as `AUTOMOC_MACRO_NAMES`. The dependents will automatically generate MOC files for source files that contain the inherited macro names. Co-Authored-By: Craig Scott <craig.scott@crascit.com> Fixes: #19679
* | Merge topic 'python-file-encoding'Craig Scott2023-04-091-3/+3
|\ \ | | | | | | | | | | | | | | | | | | | | | | | | b855674f5d Tests: Always load presets schema as UTF-8 0de00b8b69 Sphinx: Modernize UTF-8 encoding handling when updating CMake.qhp f0d6010cb5 Sphinx: Specify encoding when opening files for title extraction Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !8402
| * | Tests: Always load presets schema as UTF-8Craig Scott2023-04-071-3/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | We know the encoding of the schema file, so we should specify it when we open it for reading. Previously, by not specifying it, the test was open to using an encoding based on the active locale when running the test. We may have been enforcing a "C" locale at a higher level, but we don't need to rely on that here, we can force correct behavior without that assumption. Issue: #24679
* | | list(): rely on cmList classMarc Chevrier2023-04-081-1/+1
|/ / | | | | | | Fixes: #24549
* | Merge topic 'cmList-class'Brad King2023-04-062-0/+996
|\ \ | | | | | | | | | | | | | | | | | | | | | 72d116ee68 GenEx: list oriented genexes use cmList class 9f60f19ee9 cmList: CMake list implementation Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !8375
| * | cmList: CMake list implementationMarc Chevrier2023-04-052-0/+996
| |/ | | | | | | Fixes: #24548
* | Merge topic 'vs-sdk-selection'Brad King2023-04-0619-2/+176
|\ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 8ecb645934 VS: Select Windows SDK matching WindowsSDKVersion env var f90c8ab54e VS: Select latest available Windows SDK version by default b512c53d43 VS: Add support for setting WindowsTargetPlatformVersion to 10.0 2f3d945f83 VS: Add CMAKE_GENERATOR_PLATFORM field to control Windows SDK selection f0a67b6291 VS: Parse comma-separated fields from CMAKE_GENERATOR_PLATFORM e259063b0a VS: Defer Windows SDK selection until CMAKE_GENERATOR_PLATFORM is known 8499374c6a VS: Simplify logic to require SDK for Windows Store 1c8d4b4bf1 Tests: Teach RunCMake_TEST_FILTER to account for test variant description Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !8389
| * | VS: Select Windows SDK matching WindowsSDKVersion env varBrad King2023-04-052-0/+9
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | In an environment established by `vcvarsall.bat` or similar, this environment variable may be set to select a Windows SDK version. If the VS generator is used in such an environment, use that SDK. This is similar to how `CMAKE_GENERATOR_INSTANCE` defaults using a `VS##0COMNTOOLS` environment variable. Fixes: #17992
| * | VS: Select latest available Windows SDK version by defaultBrad King2023-04-052-0/+14
| | | | | | | | | | | | | | | | | | | | | Add policy `CMP0149` to stop preferring SDKs exactly matching `CMAKE_SYSTEM_VERSION` over the latest SDK. Fixes: #16202
| * | VS: Add support for setting WindowsTargetPlatformVersion to 10.0Brad King2023-04-051-0/+8
| | | | | | | | | | | | | | | | | | | | | VS 2019 and above support this value to select a SDK version automatically. Fixes: #21403
| * | VS: Add CMAKE_GENERATOR_PLATFORM field to control Windows SDK selectionBrad King2023-04-0512-0/+106
| | | | | | | | | | | | | | | | | | | | | Add a `version=` field to explicitly control the SDK version selection without relying on `CMAKE_SYSTEM_VERSION`. Fixes: #16713
| * | VS: Parse comma-separated fields from CMAKE_GENERATOR_PLATFORMBrad King2023-04-057-0/+33
| | |
| * | Tests: Teach RunCMake_TEST_FILTER to account for test variant descriptionBrad King2023-04-051-2/+6
| |/
* | Merge topic 'test-xcode-14.3'Brad King2023-04-041-0/+1
|\ \ | | | | | | | | | | | | | | | 3bb46b29fd Tests: Teach RunCMake to ignore Xcode DVTCoreDeviceEnabledState warnings Merge-request: !8392
| * | Tests: Teach RunCMake to ignore Xcode DVTCoreDeviceEnabledState warningsBrad King2023-04-041-0/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | On some Xcode versions, `xcodebuild` may warn: ... xcodebuild[...] DVTCoreDeviceEnabledState: DVTCoreDeviceEnabledState_Disabled set via user default Teach RunCMake to drop such incidental lines before matching against expected output.
* | | Tests: Fix RunCMake infrastructure for LCC and CMP0129Brad King2023-04-035-12/+10
| |/ |/| | | | | | | | | | | | | | | | | Since commit 3958ed878f (LCC: Add policy CMP0129 regarding interpreting LCC as GNU, 2021-10-19, v3.23.0-rc1~508^2) we intended to enable policy `CMP0129` in RunCMake tests via `-DCMAKE_POLICY_DEFAULT_CMP0129=NEW`. Fix the condition activating that to check `CMAKE_C_COMPILER_ID` where it is always available. Remove now-unnecessary CMP0129 settings in RunCMake cases.
* | Merge topic 'automoc-cxx-standard'Brad King2023-03-316-0/+114
|\ \ | | | | | | | | | | | | | | | | | | | | | 429a452705 Autogen: Add target's C++ standard to moc_predef.h 21f812e57c Autogen: Split creation and setup of custom targets into separate steps Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !8359
| * | Autogen: Add target's C++ standard to moc_predef.hOrkun Tokdemir2023-03-306-0/+114
| | | | | | | | | | | | | | | | | | | | | | | | | | | Generate `moc_predef.h` using the same C++ standard level that will be used to compile the target so that the compiler's predefined macros can be more accurately recovered. Fixes: #24624 Qt-Issue: https://bugreports.qt.io/browse/QTBUG-110847
* | | Merge topic 'remove-FindPythonInterp-FindPythonLibs'Brad King2023-03-3130-0/+159
|\ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | a4c5b91f80 FindPython{Interp,Libs}: Add policy to remove these modules Acked-by: Kitware Robot <kwrobot@kitware.com> Acked-by: scivision <michael@scivision.dev> Merge-request: !8380
| * | | FindPython{Interp,Libs}: Add policy to remove these modulesBrad King2023-03-3030-0/+159
| | | | | | | | | | | | | | | | | | | | | | | | The `FindPythonInterp` and `FindPythonLibs` modules have been deprecated since CMake 3.12. Add a policy to pretend they do not exist in order to encourage projects to port to `FindPython` or `FindPython{2,3}`.
* | | | Merge topic 'ci-FindHDF5'Brad King2023-03-315-0/+83
|\ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 75bb2a2ee4 Tests: Extend FindHDF5 tests to link and run executables 919de8785b ci: Patch HDF5 Fortran compiler wrappers in Fedora jobs Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !8381
| * | | | Tests: Extend FindHDF5 tests to link and run executablesBrad King2023-03-305-0/+83
| |/ / / | | | | | | | | | | | | Verify that this works using both targets and variables.
* | | | presets: Add trace options to configure presetsArtin Alavi2023-03-3018-0/+118
|/ / / | | | | | | | | | | | | | | | Add JSON schema version 7 to support them. Fixes: #22543
* | | Merge topic 'presets-json-errors'Brad King2023-03-3090-271/+405
|\ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 19305afd8a presets: Improve JSON parser and error messages Acked-by: Kitware Robot <kwrobot@kitware.com> Acked-by: buildbot <buildbot@kitware.com> Acked-by: scivision <michael@scivision.dev> Merge-request: !8290
| * | | presets: Improve JSON parser and error messagesMartin Duffy2023-03-2990-271/+405
| | | |
* | | | Merge topic 'ci-FindHDF5'Brad King2023-03-304-0/+146
|\ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | d38c752de2 ci: Enable FindHDF5 tests on Linux builds 28c4945a8a ci: Add HDF5 to Debian and Fedora base images ad9e151045 Tests: Add cases covering FindHDF5 variables and imported targets 0e87e6c1a4 Tests: Add FindMPI test environment modification option ee075a53c8 FindHDF5: Record compiler wrapper checks to configure log 72915b1068 FindHDF5: Fix compiler wrapper checks with spaces in path Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !8378
| * | | | Tests: Add cases covering FindHDF5 variables and imported targetsBrad King2023-03-293-0/+143
| | | | |
| * | | | Tests: Add FindMPI test environment modification optionBrad King2023-03-291-0/+3
| | | | | | | | | | | | | | | | | | | | | | | | | Provide a way to configure an environment specific to this test. Avoid setting the environment globally for it in CI jobs.
* | | | | Merge topic 'FindOpenAL-framework'Brad King2023-03-302-2/+13
|\ \ \ \ \ | |/ / / / |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | f05bd762f5 ci: Enable FindOpenAL test on macOS jobs 1d06554fc6 Tests: Fix FindOpenAL test for macOS framework 5f5476ee31 FindOpenAL: Fix imported target for macOS framework Acked-by: Kitware Robot <kwrobot@kitware.com> Acked-by: buildbot <buildbot@kitware.com> Merge-request: !8373
| * | | | Tests: Fix FindOpenAL test for macOS frameworknega2023-03-292-2/+13
| | | | | | | | | | | | | | | | | | | | | | | | | - Use framework-style includes. - Hush deprecation warnings when compiling test.
* | | | | install(TARGETS): Do not apply installation tweaks to NAMELINK filesBrad King2023-03-282-0/+24
|/ / / / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | These files are symlinks to the real binaries, and we already apply tweaks to those. Previously we generated installation tweak code guarded by a `NOT IS_SYMLINK` condition that is never true. Drop the code altogether. Add a test covering the motivating use case, in which a `POST_BUILD` step modifies the namelink file to not actually be a symlink. Fixes: #24647
* | | | Merge topic 'lint-genex'Brad King2023-03-285-8/+8
|\ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 099934e313 Add generator expression support to static code analysis hooks Acked-by: Kitware Robot <kwrobot@kitware.com> Acked-by: buildbot <buildbot@kitware.com> Merge-request: !8361
| * | | | Add generator expression support to static code analysis hooksStefan Schober2023-03-275-8/+8
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Teach target properties `<LANG>_CPPCHECK`, `<LANG>_CPPLINT`, `<LANG>_CLANG_TIDY` and `<LANG>_INCLUDE_WHAT_YOU_USE` to accept generator expressions.
* | | | | Merge topic 'file-GET_RUNTIME_DEPENDENCIES-windows-casing'Brad King2023-03-281-1/+1
|\ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 5922c86ed6 file(GET_RUNTIME_DEPENDENCIES): Document case-preserving change on Windows 7dffe99ad8 Tests: Restore CudaOnly.RuntimeControls cudart verification on Windows Acked-by: Kitware Robot <kwrobot@kitware.com> Acked-by: Kyle Edwards <kyle.edwards@kitware.com> Merge-request: !8367
| * | | | | Tests: Restore CudaOnly.RuntimeControls cudart verification on WindowsBrad King2023-03-271-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Since commit fa45594407 (file(GET_RUNTIME_DEPENDENCIES): Preserve casing for Windows PE binaries, 2023-03-06) we may find the cudart runtime library with its on-disk casing instead of always lower-case.
* | | | | | Merge topic 'crosscompiling-warn-reset'Brad King2023-03-274-0/+10
|\ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 4d23636694 Warn if CMAKE_CROSSCOMPILING is true without CMAKE_SYSTEM_NAME set Acked-by: Kitware Robot <kwrobot@kitware.com> Acked-by: buildbot <buildbot@kitware.com> Merge-request: !8358
| * | | | | | Warn if CMAKE_CROSSCOMPILING is true without CMAKE_SYSTEM_NAME setMartin Storsjö2023-03-244-0/+10
| | |/ / / / | |/| | | | | | | | | | | | | | | | | | | | | | Also clarify the `CMAKE_CROSSCOMPILING` documentation to state that CMake sets the variable automatically.
* | | | | | Merge topic 'module-depends-static-lib-cycle'Brad King2023-03-277-1/+27
|\ \ \ \ \ \ | |_|/ / / / |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 01d7860fdb Ninja,Makefile: Restore Fortran module scanning in static library cycle 846baa7c5b cmGlobalGenerator: Factor out helper to check target ordering Acked-by: Kitware Robot <kwrobot@kitware.com> Acked-by: buildbot <buildbot@kitware.com> Merge-request: !8363
| * | | | | Ninja,Makefile: Restore Fortran module scanning in static library cycleBrad King2023-03-247-1/+27
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Since * commit eed295fd8a (cmGlobalNinjaGenerator: require that dependency info files work, 2023-02-01, v3.26.0-rc1~1^2~1), and * commit 13810dee17 (cmDependsFortran: require that dependency info files work, 2023-02-01, v3.26.0-rc1~1^2), the Ninja and Makefile generators' module dependency scanning requires that scanning results from from linked targets is available before scanning the current target. In the case of a static library cycle, we cannot expect this information from other static libraries in the cycle. Previously we supported cyclic cases at the cost of silently ignoring missing information. We already compute a global order of targets that respects all `add_dependencies`, but may break `target_link_libraries` dependencies that occur in a static library cycle. Use this order to filter the linked targets so we only expect scanning results to be available from those targets that build before the current target. This approach is sufficient to support module dependency scanning in static library cycles as long as module dependencies do not cross between two libraries in the same cycle. Fixes: #24631
| * | | | | Merge topic 'clang-cl-showIncludes' into release-3.26Brad King2023-03-215-0/+22
| |\ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 843fc607de Ninja: Restore detection of clang-cl showIncludes prefix 3346570ae9 Tests: Comment RunCMake.Ninja ShowIncludes sample input languages Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !8344
* | \ \ \ \ \ Merge topic 'file-GET_RUNTIME_DEPENDENCIES-windows-casing'Brad King2023-03-246-3/+32
|\ \ \ \ \ \ \ | |_|_|/ / / / |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | fa45594407 file(GET_RUNTIME_DEPENDENCIES): Preserve casing for Windows PE binaries 14cfd6a1eb Tests: Add test for file(GET_RUNTIME_DEPENDENCIES) with MixedCase.dll Acked-by: Kitware Robot <kwrobot@kitware.com> Acked-by: buildbot <buildbot@kitware.com> Merge-request: !8291
| * | | | | | file(GET_RUNTIME_DEPENDENCIES): Preserve casing for Windows PE binariesChristian Heimlich2023-03-235-3/+28
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | For Windows PE files the `file(GET_RUNTIME_DEPENDENCIES)` command converts the name of all DLLs found during binary scanning to lowercase in order to simplify the syntax requirements of its regex filters; however, this has the side-effect of causing all DLL paths returned via RESOLVED_DEPENDENCIES_VAR to be in lowercase, regardless of their actual casing. Instead, respect the original casing as closely as possible when returning resolved dependencies after all filters have been passed: When evaluating a Windows PE format binary on a non-Windows host the casing of dependencies recorded within the binary are used. When the host is running Windows, the actual casing of the dependencies on-disk are used instead. Fixes: #23091
| * | | | | | Tests: Add test for file(GET_RUNTIME_DEPENDENCIES) with MixedCase.dllChristian Heimlich2023-03-232-1/+5
| | |_|_|/ / | |/| | | | | | | | | | | | | | | | Issue: #23091
* | | | | | Merge topic 'autogen-exe-vars'Brad King2023-03-233-0/+35
|\ \ \ \ \ \ | |/ / / / / |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | b3d1797508 Autogen: Add CMAKE_AUTO*_EXECUTABLE variables Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !8352
| * | | | | Autogen: Add CMAKE_AUTO*_EXECUTABLE variablesOrkun Tokdemir2023-03-223-0/+35
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Add the `CMAKE_AUTOMOC_EXECUTABLE`, `CMAKE_AUTOUIC_EXECUTABLE`, and `CMAKE_AUTORCC_EXECUTABLE` variables to initialize the corresponding `AUTO{MOC,UIC,RCC}_EXECUTABLE` target properties. Fixes: #20071
* | | | | | Merge topic 'file-REAL_PATH'Brad King2023-03-211-0/+16
|\ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 1d12853ed3 file(REAL_PATH): Ensure same behavior as get_filename_component(REALPATH) Acked-by: Kitware Robot <kwrobot@kitware.com> Acked-by: buildbot <buildbot@kitware.com> Acked-by: scivision <michael@scivision.dev> Merge-request: !8348
| * | | | | | file(REAL_PATH): Ensure same behavior as get_filename_component(REALPATH)Marc Chevrier2023-03-201-0/+16
| | | | | | | | | | | | | | | | | | | | | | | | | | | | Fixes: #24605
* | | | | | | Merge topic 'clang-cl-showIncludes'Brad King2023-03-215-0/+22
|\ \ \ \ \ \ \ | | |_|_|/ / / | |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 843fc607de Ninja: Restore detection of clang-cl showIncludes prefix 3346570ae9 Tests: Comment RunCMake.Ninja ShowIncludes sample input languages Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !8344