summaryrefslogtreecommitdiffstats
path: root/Tests/RunCMake/RunCMake.cmake
Commit message (Collapse)AuthorAgeFilesLines
* 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.
* | | RunCMake: Automatically support platform out override filesRobert Maynard2019-06-211-0/+10
|/ /
* | Tests: Add RunCMake helper to run cmake with optionsBrad King2019-04-101-0/+5
| |
* | Tests: Teach RunCMake to optionally exclude the source dir argumentBrad King2019-04-101-1/+7
|/
* Tests: Add RunCMake_TEST_FILTER environment variableKyle Edwards2018-12-131-0/+4
| | | | | | | This environment variable allows developers to locally run only a subset of RunCMake subtests in a single RunCMakeTest.cmake script. If the environment variable is not set, all of the tests in the script are run.
* Tests: Add RunCMake "prep" stepBrad King2018-12-111-0/+5
| | | | | Give tests a chance to write content to the build tree before CMake runs on it.
* Tests: Teach RunCMake infrastructure to optionally provide stdinBrad King2018-11-151-0/+9
|
* Tests: Teach RunCMake to ignore Xcode missing file type warningsBrad King2018-06-191-0/+1
| | | | | | | | | | Xcode 10 beta warns xcodebuild... warning: file type '::com.apple.instruments.instrdst' is based on missing file type 'default::com.apple.package' Teach RunCMake to drop such lines before matching against expected output.
* Drop Visual Studio 8 2005 generatorBrad King2018-04-021-3/+0
| | | | This generator has been deprecated since CMake 3.9. Remove it.
* Tests: Teach RunCMake to ignore AIX ld warnings about GNU atexitBrad King2018-03-011-0/+2
|
* Add infrastructure for generators to select a build tool instanceBrad King2017-10-191-0/+6
| | | | | | | | | | | | | | Add cache entry `CMAKE_GENERATOR_INSTANCE` to hold the instance location persistently across re-runs of CMake in a given build tree. For now we reject the option by default if explicitly set. It will be implemented on a per-generator basis. Pass the setting into try_compile project generation. Add a RunCMake.GeneratorInstance test to cover basic use cases for the option. Verify that `CMAKE_GENERATOR_INSTANCE` is empty by default, and that it is rejected when the generator does not support a user setting. Issue: #17268
* Tests: Teach RunCMake to ignore clang unused sanitizer flag warningsBrad King2017-10-101-0/+1
| | | | | These can show up in Release builds of CMake because some tests still build Debug.
* Tests: Refactor RunCMake output line ignore regex constructionBrad King2017-10-101-1/+12
| | | | Avoid one giant line.
* Deprecate Visual Studio 8 2005 generatorBrad King2017-04-211-0/+3
| | | | | Update documentation to mark the generator deprecated. Add a warning at the end of generation plus an option to turn off the warning.
* Drop Visual Studio 7 .NET 2003 generatorBrad King2017-04-191-3/+0
| | | | This generator has been deprecated since CMake 3.6. Remove it.
* RunCMake: Ignore xcodebuild bug warnings in testsGregor Jasny2017-03-241-1/+1
| | | | | | | | | | | | Encountered on OS X 10.4 with old Xcode: Expected stderr to match: expect-err> ^$ Actual stderr: actual-err> Hit xcodebuild bug : ... bad interpreter: Text file busy
* Xcode: Ignore Xcode project warning until issue is fixedGregor Jasny2017-01-261-1/+1
| | | | Issue: #15272
* execute_process: Add ENCODING option for Windows child process outputDāvis Mosāns2016-11-301-0/+2
| | | | Different applications can use different output encodings.
* Use string(APPEND) in TestsDaniel Pfeifer2016-07-271-3/+3
| | | | | | | Automate with: find Tests -type f -print0 | xargs -0 perl -i -0pe \ 's/set\(([a-zA-Z0-9_]+)(\s+)"\$\{\1\}([^"])/string(APPEND \1\2"\3/g'
* Deprecate Visual Studio 7 .NET 2003 generatorBrad King2016-04-281-0/+3
| | | | | Update documentation to mark the generator deprecated. Add a warning at the end of generation plus an option to turn off the warning.
* Tests: Drop test for VS 7.0 generator deprecation warningsBrad King2016-04-281-3/+0
| | | | | We removed this generator but forgot to remove this now-unused test case.
* Drop Visual Studio 6 generatorBrad King2016-03-091-3/+0
| | | | | | This generator has been deprecated since CMake 3.3. Remove it. Update documentation, modules, and tests to drop content specific to this generator.
* Tests: Teach RunCMake infrastructure to use custom check.cmake fileBrad King2015-09-171-1/+5
|
* Tests: Teach RunCMake to tolerate 'Bullseye Testing' lines in test outputBrad King2015-09-171-1/+1
| | | | | | | | | | When testing under Bullseye coverage, some tests get lines on stderr of the form: ... Bullseye Testing Technology ... Remove such lines from output before matching because they are not representative of the actual test output.
* Tests: Teach RunCMake to tolerate 'Time Machine' lines in test outputBrad King2015-09-171-1/+1
| | | | | | | | | On some OS X machines some tests get lines on stderr of the form: ... attempting to exclude an item from Time Machine by path ... produced by the system. Remove such lines from output before matching because they are not representative of the actual test output.
* Tests: Teach RunCMake infrastructure to optionally timeoutBrad King2015-06-301-0/+7
| | | | | Add a RunCMake_TEST_TIMEOUT option that tests can set to cause RunCMake to limit the time it waits for the child process to finish.