summaryrefslogtreecommitdiffstats
path: root/Tests/RunCMake/RunCMake.cmake
Commit message (Collapse)AuthorAgeFilesLines
* Clarify advice given by compatibility deprecation message for CMake < 3.10Brad King2024-11-141-2/+3
| | | | | | | | | Since commit 84db8506ff (Deprecate compatibility with CMake versions older than 3.10, 2024-10-03, v3.31.0-rc1~23^2) the `cmake_minimum_required` and `cmake_policy` commands warn if the project does not enable policies as of 3.10 or higher. Clarify the advice given in the warning message about how to update the version specification, particularly without actually requiring a newer minimum version of CMake.
* Deprecate compatibility with CMake versions older than 3.10Brad King2024-10-031-1/+1
| | | | | | | | Issue a deprecation warning on calls to `cmake_minimum_required` or `cmake_policy` that set policies based on versions older than 3.10. Note that the effective policy version includes `...<max>` treatment. Update the check from commit 3a4791548d (Deprecate compatibility with CMake versions older than 3.5, 2023-02-09, v3.27.0-rc1~508^2).
* Tests/RunCMake: Add option to print custom details in failure outputBrad King2024-03-181-0/+4
|
* Tests/RunCMake: Allow specifying extra ignore linesAlexandru Croitor2024-02-081-0/+1
| | | | | Tests can set `RunCMake_TEST_EXTRA_IGNORE_LINE_REGEX` before calling `run_cmake()` to ignore custom patterns.
* Tests/RunCMake: Add copyright and license notices to test infrastructureBrad King2024-02-051-0/+3
|
* Tests: Factor out RunCMake helper to get UNIX user idBrad King2023-11-301-0/+16
|
* 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.
* RunCMake: Add RunCMake_TEST_EXPECT_RESULTOrkun Tokdemir2023-09-131-0/+2
|
* Merge topic 'orkun_21677_16_06_2023'Brad King2023-09-131-0/+10
|\ | | | | | | | | | | | | | | | | | | 09b650d000 Autogen: Move QtAutoMocDeps tests to RunCMake/Autogen ebc9e448b3 Autogen: Add depfile support for Makefiles e5358b9d8d RunCMake: Add RunCMake_TEST_NOT_EXPECT variables Acked-by: Kitware Robot <kwrobot@kitware.com> Tested-by: buildbot <buildbot@kitware.com> Merge-request: !8570
| * RunCMake: Add RunCMake_TEST_NOT_EXPECT variablesOrkun Tokdemir2023-09-111-0/+10
| |
* | Tests/RunCMake: Set $ENV{PWD} before each testKyle Edwards2023-09-111-0/+12
|/ | | | | | | This will more accurately emulate how a shell would run CMake. Also, don't set $ENV{PWD} in Tests/RunCMake/SymlinkTrees, since RunCMake is now already doing this.
* Tests: Teach RunCMake to ignore LLVMFlang -flang-experimental-exec warningBrad King2023-05-091-0/+1
| | | | | | | | | | | This flag is needed for now to tell `flang-new` to support creating executables. In our CI job we always pass this flag, but it is not always used. The compiler may warn: flang-new: warning: argument unused during compilation: '-flang-experimental-exec' Teach RunCMake to drop such incidental lines before matching against expected output.
* Tests: Teach RunCMake to ignore Intel Fortran remark 10440Brad King2023-05-091-0/+1
| | | | | | | | | | | | | | | The Intel Fortran compiler may remark: ifx: remark #10440: Note that use of a debug option without any optimization-level option will turnoff most compiler optimizations similar to use of '-O0' Teach RunCMake to drop such incidental lines before matching against expected output. This extends commit b2d030e8fe (Tests: Teach RunCMake to ignore Intel -Rdebug-disables-optimization remarks, 2022-06-14, v3.26.0-rc1~395^2) to cover the `ifx` Fortran compiler too.
* Merge topic 'autogen-system-include'Brad King2023-05-041-0/+2
|\ | | | | | | | | | | | | | | | | | | 7bf4e30090 Autogen: Default AUTOGEN_USE_SYSTEM_INCLUDE to ON if it is not set 033dc7ee2f Autogen: Add AUTOGEN_USE_SYSTEM_INCLUDE target property 8ba16db163 Tests/RunCMake: Add option for dynamic expected output Acked-by: Kitware Robot <kwrobot@kitware.com> Acked-by: buildbot <buildbot@kitware.com> Merge-request: !8400
| * Tests/RunCMake: Add option for dynamic expected outputOrkun Tokdemir2023-04-271-0/+2
| | | | | | | | Add `RunCMake_TEST_EXPECT_*` variables for this.
* | Tests: Teach RunCMake to ignore Intel Classic deprecation on WindowsBrad King2023-05-011-1/+1
|/ | | | | | Extend commit 29e45a94b0 (Tests: Teach RunCMake to ignore Intel Classic compiler deprecation warnings, 2022-10-03, v3.25.0-rc1~51^2~1) to cover warnings from `icl` too.
* Merge topic 'vs-sdk-selection'Brad King2023-04-061-2/+6
|\ | | | | | | | | | | | | | | | | | | | | | | | | | | 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
| * 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.
| * | Merge branch 'xcode-14' into release-3.23Brad King2022-06-111-0/+2
| |\ \ | | | | | | | | | | | | Merge-request: !7350
| * \ \ Merge topic 'ci-xcode-13.3' into release-3.23Brad King2022-04-261-0/+1
| |\ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 65b6daf776 gitlab-ci: update macOS jobs to use Xcode 13.3 94361a1309 Tests: Ignore all classes in Xcode internal objc warnings da9f864513 Tests: Teach RunCMake to ignore Xcode extension point warnings Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !7204
| * \ \ \ Merge topic 'xcode-pch' into release-3.23Brad King2022-04-121-1/+1
| |\ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 476c6a8910 PCH: Fix Xcode non-pch language exclusion fcf1fcfd0c Tests: Ignore all classes in Xcode internal objc warnings Acked-by: Kitware Robot <kwrobot@kitware.com> Acked-by: buildbot <buildbot@kitware.com> Merge-request: !7166
| | * | | | Tests: Ignore all classes in Xcode internal objc warningsGregor Jasny2022-04-111-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Xcode on Apple Silicon warns not only about AMSupportURL classes but also many more.
* | | | | | Tests: Fix RunCMake infrastructure for LCC and CMP0129Brad King2023-04-031-1/+1
| |_|_|_|/ |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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.
* | | | | Deprecate compatibility with CMake versions older than 3.5Brad King2023-02-111-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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: Teach RunCMake to optionally ignore policy version deprecation warningsBrad King2023-02-091-0/+12
| | | | | | | | | | | | | | | | | | | | | | | | | Avoid requiring tests for deprecated behavior to match the warnings explicitly.
* | | | | ConfigureLog: Add infrastructure for structured configure event loggingMatthew Woehlke2022-12-161-5/+13
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Add infrastructure for a "configure log". Use YAML for a balance of machine- and human-readability to records details of configure-time events in a structured format. Teach the RunCMake test framework to support matching the configure log. Issue: #23200
* | | | | Tests: Generalize RunCMake expectation component namesMatthew Woehlke2022-12-141-31/+27
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Do not assume all the component names start in "std". Co-authored-by: Brad King <brad.king@kitware.com>
* | | | | Tests: Teach RunCMake to ignore Intel -Rdebug-disables-optimization remarksBrad King2022-10-271-0/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The Intel compiler may remark: icpx: remark: Note that use of '-g' without any optimization-level option will turn off most compiler optimizations similar to use of '-O0' [-Rdebug-disables-optimization] Teach RunCMake to drop such incidental lines before matching against expected output.
* | | | | Tests: Teach RunCMake to ignore Intel Classic compiler deprecation warningsBrad King2022-10-031-0/+1
| | | | |
* | | | | Build: Modernize some `foreach` calls to use `IN LISTS`/`IN ITEMS`Alex Turbov2022-09-221-4/+6
| | | | |
* | | | | Merge topic 'xcode-14'Brad King2022-06-111-0/+2
|\ \ \ \ \ | | |_|_|/ | |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 627c08e28b Tests: Teach RunCMake to ignore Xcode DVTSDK warnings ab40020b17 Xcode: Suppress "Run Script" build phase warning during compiler id 89e1113e0c Xcode: Use ad-hoc signing during compiler id on macOS Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !7350
| * | | | Tests: Teach RunCMake to ignore Xcode DVTSDK warningsBrad King2022-06-101-0/+2
| | |_|/ | |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | On some Xcode versions, `xcodebuild` may warn: ... xcodebuild[...] [MT] DVTSDK: Warning: SDK path collision for path ... Teach RunCMake to drop such incidental lines before matching against expected output.
| * | | Tests: Ignore all classes in Xcode internal objc warningsGregor Jasny2022-04-251-1/+1
| | | | | | | | | | | | | | | | | | | | Xcode on Apple Silicon warns not only about AMSupportURL classes but also many more.
| * | | Tests: Teach RunCMake to ignore Xcode extension point warningsBrad King2022-04-251-0/+1
| | |/ | |/| | | | | | | | | | | | | | | | | | | | | | | | | On some Xcode versions, `xcodebuild` may warn: ... xcodebuild[...] Requested but did not find extension point with identifier ... Teach RunCMake to drop such incidental lines before matching against expected output.
* | | Tests: Ignore all classes in Xcode internal objc warningsGregor Jasny2022-04-031-1/+1
| | | | | | | | | | | | | | | Xcode on Apple Silicon warns not only about AMSupportURL classes but also many more.
* | | Tests: Teach RunCMake to ignore lld-link PDB item index warningsBrad King2022-03-111-0/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | In commit fade5b5b8c (gitlab-ci: Update Windows builds to MSVC 19.31 toolset, 2022-03-09, v3.23.0-rc3~4^2~1) we switched from MSVC toolset version 14.30.30705 to version 14.31.31103. The latter causes the Clang 13.0.0 lld-link tool to warn about invalid PDB item indexes, as discussed [here](https://developercommunity.visualstudio.com/t/1667797). This causes the RunCMake.PrecompileHeaders test PchLibObjLibExe case to fail on NMake builds due to unexpected content on stderr. The warnings appear with Ninja too, but `ninja` prints them on stdout. Teach the RunCMake infrastructure to ignore these warnings.
* | | Merge topic 'test-RunCMake-xcodebuild-incidental'Brad King2022-02-171-0/+1
|\ \ \ | |_|/ |/| | | | | | | | | | | | | | 6ade07ef89 Tests: Teach RunCMake to ignore Xcode extension point warnings Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !6992
| * | Tests: Teach RunCMake to ignore Xcode extension point warningsBrad King2022-02-161-0/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | On some Xcode versions, `xcodebuild` may warn: ... xcodebuild[...] Requested but did not find extension point with identifier ... Teach RunCMake to drop such incidental lines before matching against expected output.
* | | Tests: Add RunCMake helper to run cmake with raw execute_process argsBrad King2022-02-161-2/+15
|/ /
* | LCC: Add policy CMP0129 regarding interpreting LCC as GNUmakise-homura2021-10-211-0/+3
|/ | | | | | | | | | Due to MCST LCC compiler identification is now changed to LCC, there should be a way for old projects to still identify it as GNU, as it was before. This commits adds the policy: CMP0129: Compiler id for MCST LCC compilers is now LCC, not GNU. This policy controls such a behavior. OLD behaivior is to treat LCC as GNU, NEW is to treat is as LCC.
* Tests: ignore Xcode DVTPlugInManager outputGregor Jasny2021-06-101-0/+1
|
* MSYS: Add support for running under MSYS runtime environmentOrgad Shaneh2021-04-261-1/+4
| | | | Detect MSYS as CYGWIN, with the required adaptations.
* Merge topic 'nmc-cc-no-output'Brad King2021-03-301-0/+1
|\ | | | | | | | | | | | | | | | | 6dd89529e8 Ninja Multi-Config: Fix crash on custom command config with no output e21a80e97d Tests: Teach RunCMake to ignore incidental 'Recompacting log' ninja output Acked-by: Kitware Robot <kwrobot@kitware.com> Acked-by: Kyle Edwards <kyle.edwards@kitware.com> Merge-request: !5950
| * Tests: Teach RunCMake to ignore incidental 'Recompacting log' ninja outputBrad King2021-03-291-0/+1
| | | | | | | | Ninja versions prior to 1.6.0 occasionally print this message.
* | Tests: Add RunCMake hook to describe test variantsBrad King2021-03-221-2/+2
| |
* | Tests: Teach RunCMake to always print the command on failureBrad King2021-03-091-40/+36
| | | | | | | | | | | | Previously we only printed explicit `RunCMake_TEST_COMMAND` cases on failure. Refactor the RunCMake infrastructure so that we always define `RunCMake_TEST_COMMAND` internally, and print it on failure.
* | Tests: Move RunCMake option construction closer to useBrad King2021-03-091-9/+9
| |
* | Tests: Reverse RunCMake code path orderBrad King2021-03-091-15/+15
| |