summaryrefslogtreecommitdiffstats
path: root/Tests/RunCMake/RunCMake.cmake
Commit message (Collapse)AuthorAgeFilesLines
* 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
| |
* | Tests: Add RunCMake helper to run a plain scriptBrad King2021-03-031-0/+5
|/ | | | | Many tests covering CMake scripting commands can work without initializing a full generator.
* Tests: Update for upstream ninja change to write status on stderrBrad King2021-02-231-0/+6
| | | | | | | | | | | | Upstream ninja commit `ad3d29fb53` (Put builder output through status interface) from ninja PR 1899 changed the status output from stdout to stderr. In particular, `ninja: no work to do` is now printed on stderr. Update our RunCMake tests to accept this difference. A few RunCMake test cases check for `ninja: no work to do`. For those, move the message to stdout using `RunCMake_TEST_OUTPUT_MERGE`. The rest of the test cases do not care about the message, so remove it from the actual stderr content before comparing against that expected.
* Tests: Teach RunCMake to ignore Xcode install_name_tool signature warningsBrad King2020-11-241-0/+1
| | | | | | | | | | The `install_name_tool` may warn: install_name_tool: warning: changes being made to the file will invalidate the code signature in: ... Teach RunCMake to drop such incidental lines before matching against expected output.
* Tests: Teach RunCMake to ignore Xcode internal objc warningsBrad King2020-09-301-0/+1
| | | | | | | | | | Xcode on Apple Silicon warns: objc[...]: Class AMSupportURL... is implemented in both ... One of the two will be used. Which one is undefined. Teach RunCMake to drop such lines before matching against expected output.
* Apple: suppress Xcode 12 ranlib warningGregor Jasny2020-07-171-0/+1
| | | | | | | | | | | | | | The Xcode 12 (Beta) toolchain for arm64 emits a warning when static libraries are created: ``` ranlib: archive member: libStaticLib.a(a.c.o) offset in archive not a multiple of 8 (must be since member is an 64-bit object file) ``` Due to the unexpected output multiple tests are broken. To make those tests pass we filter the problematic output in the test driver. See: https://developer.apple.com/forums/thread/652620
* Tests: Teach RunCMake to ignore PGI license expiry warningsBrad King2019-11-011-0/+6
| | | | These are not useful in nightly testing.
* Graphviz: added test suite, fixes, enhancementsCorentin Plouet2019-10-081-0/+23
| | | | | | | | | | | | | | | | | | | | * Added a fairly comprehensive test suite * Separated the graph traversal logic from the Graphviz generation code by introducing a new class, cmLinkItemsGraphVisitor{.h,cxx} * Made the graph traversal logic less ad-hoc by using existing methods in the GlobalGenerator; this fixed a few bugs * Added support for new target types: custom targets, object and unknown libraries * Improved support for ALIAS libraries by showing the alias(es) in the graph * Introduced new flags to control those new libraries (consistent with existing flags) * Updated the documentation * Removed useless setting to set graph type in dot file * Improved the node/edge shapes (nicer, more consistent) * Added a legend to the graph * Some refactoring and cleanup of the Graphviz generation code * Added test and fix for issue 19746
* Merge branch 'backport-3.15-fix-EXCLUDE_FROM_ALL-subdir-all'Brad King2019-09-301-1/+4
|\ | | | | | | | | | | | | | | Resolve conflicts with changes since the 3.15 series: * Convert `cmSystemTools::IsOn` => `cmIsOn`. * Move one "EXCLUDE_FROM_ALL" target property logic fix to its new location in `cmMakefile::AddNewUtilityTarget`.
| * Merge branch 'backport-3.14-fix-EXCLUDE_FROM_ALL-subdir-all'Brad King2019-09-301-1/+4
| |\
| | * Tests: Teach RunCMake to support a custom working directoryBrad King2019-09-241-1/+4
| | |
* | | Tests: Drop RunCMake workaround for AIX ld warnings about GNU atexitBrad King2019-07-151-2/+0
| | | | | | | | | | | | | | | | | | | | | Drop the filtering added by commit e22c45d4c9 (Tests: Teach RunCMake to ignore AIX ld warnings about GNU atexit, 2018-02-28, v3.12.0-rc1~419^2~6). It is no longer needed now that we compute our own exports on AIX and do not get these warnings when using shared libraries.