summaryrefslogtreecommitdiffstats
path: root/Tests
Commit message (Collapse)AuthorAgeFilesLines
* Merge topic 'makefiles-compiler-deps-optims'Brad King2020-11-3016-27/+108
|\ | | | | | | | | | | | | | | | | | | | | | | 2c71d051fa Makefiles Generators: use compiler for dependencies generation afd0f6785d Refactoring: Abstract Makefile line continuation format b6068ce407 Refactoring: enhance include file filtering 3401403f69 Refactoring: Introduce place-holder for dependency target. a97c41bf8b Refactoring: Makefiles Generators: Add support for various depends scanners Acked-by: Kitware Robot <kwrobot@kitware.com> Acked-by: Brad King <brad.king@kitware.com> Merge-request: !5528
| * Makefiles Generators: use compiler for dependencies generationMarc Chevrier2020-11-2916-27/+108
| | | | | | | | | | | | | | | | | | | | | | Each source compilation generates a dependencies file. These dependencies files are consolidated in one file per target. This consolidation is done as part of command 'cmake -E cmake_depends` launched before evaluation of makefile dependency graph. The consolidation uses the same approach as `CMake` dependencies management. Fixes: #21321
* | Merge topic 'make-GENERATED-visible-from-any-scope'Brad King2020-11-30186-2/+5563
|\ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 573d51201a GENERATED prop: Set CMP0118 to NEW for some (unrelated) tests 6624b65b3f GENERATED prop: Add implementation for policy CMP0118 being set to NEW b14fe704f8 GENERATED prop: Simplify determining the language of a source file ca4ce458a3 GENERATED prop: Check CMP0118 policy and warn in certain situations 0eb30f175e GENERATED prop: Introducing policy CMP0118 and its documentation 78c8d95605 GENERATED prop: Add some tests before introducing changes with CMP0118 e01527619f Simplify code by calling a function directly instead of duplicating it 75cb8615e9 Fix typo in function name Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !5308
| * | GENERATED prop: Set CMP0118 to NEW for some (unrelated) testsDeniz Bahadir2020-11-242-2/+2
| | | | | | | | | | | | | | | | | | * Adjusting the (unrelated) RunCMake.Ninja test to set CMP0118 to `NEW`. * Adjusting the (unrelated) RunCMake.FileAPI test to set CMP0118 to `NEW`.
| * | GENERATED prop: Add implementation for policy CMP0118 being set to NEWDeniz Bahadir2020-11-2483-806/+2202
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * Adding implementation for policy CMP0118 being set to `NEW`. * Adding new tests for policy CMP0118 being set to `NEW`. * Checking the `GENERATED` property with `get_source_file_property` or `get_property` now always returns exactly `1` or `0`. No other values will be returned. Note, that this is a backwards-incompatible change, even when policy CMP0118 is unset or set to `OLD`. * Additionally, as `get_source_file_property` and `get_property` now always check if a source-file was marked globally visible, even when CMP0118 is unset or set to `OLD`, they possibly return `1` where they might have returned `0` before the changes introduced by this commit. Note, that this is a backwards-incompatible change, even when policy CMP0118 is unset or set to `OLD`. * As a consequence, the tests for policy CMP0118 being unset or set to `OLD` got slightly adjusted, too, to reflect these changes in behavior.
| * | GENERATED prop: Check CMP0118 policy and warn in certain situationsDeniz Bahadir2020-11-2472-19/+1692
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * Adding tests for CMP0118 being unset (aka set to `WARN`). * Adjusting the (unrelated) RunCMake.CMP0026 test to set CMP0118 to `NEW`, * Adjusting the (unrelated) RunCMake.Ninja test to set CMP0118 to `OLD`. * Adjusting the (unrelated) RunCMake.FileAPI test to set CMP0118 to `OLD`. Note: Setting CMP0118 to `NEW` and modifying the `GENERATED` property with `set_property` or `set_source_files_properties` will currently NOT set that property because the implementation is still to come.
| * | GENERATED prop: Add some tests before introducing changes with CMP0118Deniz Bahadir2020-11-2482-0/+2492
| | | | | | | | | | | | | | | | | | | | | These are tests which shall assure that the upcoming changes regarding the `GENERATED` source-file property and the associated new policy CMP0118 do not change (or only slightly change) the current, observable behavior when policy CMP0118 is set to `OLD`.
* | | Merge topic 'check-lang-conditions'Brad King2020-11-3019-3/+42
|\ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | f3d4254b3d Check*: Tolerate variables set with names of languages 01d91ae5f2 Tests: Fix RunCMake.Check* conditions for enabling Fortran Acked-by: Kitware Robot <kwrobot@kitware.com> Acked-by: Robert Maynard <robert.maynard@kitware.com> Merge-request: !5536
| * | | Check*: Tolerate variables set with names of languagesBrad King2020-11-2518-0/+36
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Fix the language checks added by commit 90dead024c (CheckCompilerFlag: unified way to check compiler flags per language, 2020-09-25, v3.19.0-rc1~88^2), commit 10ae907de0 (CheckSoureCompiles: Add a unified way to check if a source compiles, 2020-09-14, v3.19.0-rc1~118^2~1), and commit 357e2ef429 (CheckSoureRuns: Add a unified way to check if a source runs, 2020-09-14, v3.19.0-rc1~118^2) to work when variables of the language names are set. Fixes: #21500
| * | | Tests: Fix RunCMake.Check* conditions for enabling FortranBrad King2020-11-251-3/+6
| | | |
| * | | Merge topic 'ci-xcode-12.2' into release-3.19Brad King2020-11-251-0/+1
| |\ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 5213328008 gitlab-ci: update macOS jobs to use Xcode 12.2 928ca50b6f Tests: Teach RunCMake to ignore Xcode install_name_tool signature warnings Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !5534
* | | | | Xcode: add support for embedding frameworksGusts Kaksis2020-11-2814-0/+131
| |_|_|/ |/| | | | | | | | | | | | | | | | | | | This commit also prepares for embedding things other than frameworks. In the future, we may want to embed resources and other types supported by Xcode, so the target properties have been documented in a way that clearly signals the future intent.
* | | | Merge topic 'ci-xcode-12.2'Brad King2020-11-251-0/+1
|\ \ \ \ | | |/ / | |/| | | | | | | | | | | | | | | | | | | | | | 5213328008 gitlab-ci: update macOS jobs to use Xcode 12.2 928ca50b6f Tests: Teach RunCMake to ignore Xcode install_name_tool signature warnings Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !5534
| * | | 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.
* | | | Merge topic 'test-java-default'Brad King2020-11-251-3/+11
|\ \ \ \ | | |/ / | |/| | | | | | | | | | | | | | | | | | 1af2d1d0ea Tests: Add CMake_TEST_Java option to control Java tests Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !5532
| * | | Tests: Add CMake_TEST_Java option to control Java testsBrad King2020-11-241-3/+11
| |/ /
| * | Merge topic 'policy-cmp0111-iface' into release-3.19Brad King2020-11-245-12/+34
| |\ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 54ef732b0c cmVisualStudio10TargetGenerator: Avoid GetFullPath on INTERFACE library f06f4b517c cmTarget: Do not enforce CMP0111 on imported INTERFACE libraries 43c95df8fb Tests: Match RunCMake.CMP0111 stderr more strictly Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !5530
| * \ \ Merge topic 'xcode-cc-work-dir' into release-3.19Brad King2020-11-245-0/+27
| |\ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 36921d2d23 Xcode: Fix custom command work-dir placeholders in "new build system" Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !5527
* | \ \ \ Merge topic 'policy-cmp0111-iface'Brad King2020-11-245-12/+34
|\ \ \ \ \ | | |_|/ / | |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 54ef732b0c cmVisualStudio10TargetGenerator: Avoid GetFullPath on INTERFACE library f06f4b517c cmTarget: Do not enforce CMP0111 on imported INTERFACE libraries 43c95df8fb Tests: Match RunCMake.CMP0111 stderr more strictly Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !5530
| * | | | cmTarget: Do not enforce CMP0111 on imported INTERFACE librariesBrad King2020-11-233-5/+7
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Fix logic added by commit 359c500a24 (cmTarget: Raise error if imported target location is not set, 2020-08-08, v3.19.0-rc1~273^2) to exclude INTERFACE libraries from the policy. They have no location. Fixes: #21470
| * | | | Tests: Match RunCMake.CMP0111 stderr more strictlyBrad King2020-11-232-7/+27
| |/ / /
| * | | Merge topic 'fix-compile-db-crash' into release-3.19Brad King2020-11-232-0/+6
| |\ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 67e2130c96 Makefiles: Fix CMAKE_EXPORT_COMPILE_COMMANDS crash with custom compile rule Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !5521
* | \ \ \ Merge topic 'xcode-cc-work-dir'Brad King2020-11-245-0/+27
|\ \ \ \ \ | | |_|/ / | |/| | | | | | | | | | | | | | | | | | | | | | | 36921d2d23 Xcode: Fix custom command work-dir placeholders in "new build system" Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !5527
| * | | | Xcode: Fix custom command work-dir placeholders in "new build system"Brad King2020-11-235-0/+27
| |/ / / | | | | | | | | | | | | | | | | | | | | | | | | | | | | The placeholders for `CONFIGURATION` and `EFFECTIVE_PLATFORM_NAME` need to be handled in the `WORKING_DIRECTORY` of custom commands just as we already do for the `COMMAND`. Fixes: #21483
* | | | Merge topic 'fix-compile-db-crash'Brad King2020-11-232-0/+6
|\ \ \ \ | | |/ / | |/| | | | | | | | | | | | | | | | | | 67e2130c96 Makefiles: Fix CMAKE_EXPORT_COMPILE_COMMANDS crash with custom compile rule Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !5521
| * | | Makefiles: Fix CMAKE_EXPORT_COMPILE_COMMANDS crash with custom compile ruleBrad King2020-11-202-0/+6
| | | | | | | | | | | | | | | | Fixes: #21471
* | | | Merge topic 'improve_cmakes_error_handling_of_bad_parameters'Brad King2020-11-208-7/+12
|\ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 7302a23a1f cmake: Simplify -W recognition of no- and error= prefixes 98290782b6 cmake: redesign command-line argument parsing d800c26ce9 cmake: Fix processing of -Wno-error= flags Acked-by: Kitware Robot <kwrobot@kitware.com> Acked-by: Axel Huebl <axel.huebl@plasma.ninja> Merge-request: !5458
| * | | | cmake: redesign command-line argument parsingRobert Maynard2020-11-197-7/+8
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Make handling more consistent: "-S" -> invalid "-S/path/to/source" -> valid "-S /path/to/source" -> valid "-S=/path/to/source" -> now valid "-D" -> invalid "-DStr" -> valid "-D Str" -> valid "-D=Str" -> now valid "--log-level=" -> invalid "--log-level" -> invalid "--log-level=2" -> valid "--log-level 2" -> now valid
| * | | | cmake: Fix processing of -Wno-error= flagsBrad King2020-11-171-0/+4
| | |_|/ | |/| | | | | | | | | | | | | | Fix two bugs that happened to cancel each other out for cases covered by our test suite. Add a test case that distinguishes them.
* | | | Merge topic 'revert-explicit-LANGUAGE-flag'Brad King2020-11-203-27/+1
|\ \ \ \ | | |_|/ | |/| | | | | | | | | | | | | | | | | | 30aa715fac Revert "specify language flag when source LANGUAGE property is set" Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !5519
| * | | Revert "specify language flag when source LANGUAGE property is set"Brad King2020-11-193-27/+1
| | |/ | |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Revert commit 74b1c9fc8e (Explicitly specify language flag when source LANGUAGE property is set, 2020-06-01, v3.19.0-rc1~722^2) and the lookup tables from its two immediate ancestors. The purpose of that change was to convert an explicit `LANGUAGE` source file property into an explicit language specification compiler flag like `-x c`. This seems reasonable since the property is documented as meaning "indicate what programming language the source file is". It is also needed to help compilers deal with non-standard source file extensions they don't recognize. However, some projects have been setting `LANGUAGE C` on `.S` assembler source files to mean "use the C compiler". Passing `-x c` for them breaks the build because the `.S` sources are not written in C. These projects should be updated to use `enable_language(ASM)`, for which CMake often chooses the C compiler as the assembler when using toolchains that support it (which would have to be the case for projects using the approach). Revert the change for now to preserve the old behavior for such projects. We can re-introduce it with a policy in a future version of CMake. Fixes: #21469 Issue: #14516, #20716
* | | Merge topic 'rename_cuda_memcheck'Brad King2020-11-186-3/+3
|\ \ \ | |/ / | | / | |/ |/| | | | | fea49b2df0 CTest: Rename CudaMemcheck to CudaSanitizer Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !5514
| * CTest: Rename CudaMemcheck to CudaSanitizerTobias Ribizel2020-11-176-3/+3
| |
* | Merge topic 'cmake-build-specify-makefile-name'Brad King2020-11-172-0/+13
|\ \ | | | | | | | | | | | | | | | | | | | | | cfce067b3f Tests: Add RunCMake.Make case for conflicting Makefile names 378c047ae3 Makefiles: Explicitly tell 'make' tool what Makefile name to use Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !5509
| * | Tests: Add RunCMake.Make case for conflicting Makefile namesBrad King2020-11-162-0/+13
| | | | | | | | | | | | Issue: #21418
* | | CPack/DEB: Do not crash when asked for debug symbols when there are noneAndrew Fuller2020-11-162-1/+9
|/ / | | | | | | Fixes: #21356
* | Merge topic 'msvc-no-GR'Brad King2020-11-167-0/+27
|\ \ | | | | | | | | | | | | | | | | | | | | | c00a6d3967 MSVC: Do not add /GR to CMAKE_CXX_FLAGS by default 6114c8e994 MSVC: Factor out initialization of /GR flag Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !5508
| * | MSVC: Do not add /GR to CMAKE_CXX_FLAGS by defaultBrad King2020-11-137-0/+27
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The `/GR` flag has been on by default since MSVC cl 14.0 from VS 2005. Remove it from the default flags to make it easier for projects to pass `/GR-` themselves to turn it off. Projects may be using string processing to replace `/GR` with another flag, so we cannot simply drop it. Add a policy to drop it in a compatible way. Fixes: #21428
* | | Merge topic 'ci-fedora33'Brad King2020-11-161-2/+2
|\ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 3d1183c457 Merge branch 'ci-fedora33-release' into ci-fedora33 6e35919e15 gitlab-ci: use Fedora 33 to build sources 061f7d5ca3 gitlab-ci: update Linux CI to use Fedora 33 bd62d2ecf3 ci: update to Fedora 33 for Linux builds ada3170625 ci: install gmock in the Fedora 31 image 86f196f634 Tests/FindBoost/TestPython: support finding 3.8 and 3.9 6a83417908 clang-tidy: ignore new warnings from newer versions d2b648ec4c clang-tidy: ignore `misc-no-recursion` Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !5504
| * \ \ Merge branch 'ci-fedora33-release' into ci-fedora33Ben Boeckel2020-11-131-2/+2
| |\ \ \ | | |/ / | |/| / | | |/ | | | | | | | | | | | | | | | | | | | | | * ci-fedora33-release: gitlab-ci: use Fedora 33 to build sources gitlab-ci: update Linux CI to use Fedora 33 ci: update to Fedora 33 for Linux builds ci: install gmock in the Fedora 31 image Tests/FindBoost/TestPython: support finding 3.8 and 3.9 clang-tidy: ignore new warnings from newer versions clang-tidy: ignore `misc-no-recursion`
| | * Tests/FindBoost/TestPython: support finding 3.8 and 3.9Ben Boeckel2020-11-121-2/+2
| | |
* | | Merge topic 'cmake_path-enhancements'Craig Scott2020-11-1415-80/+28
|\ \ \ | |/ / |/| | | | | | | | | | | | | | ed21ad181e cmake_path: various enhancements to subcommands/keywords Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !5457
| * | cmake_path: various enhancements to subcommands/keywordsMarc Chevrier2020-11-1115-80/+28
| | | | | | | | | | | | This change address partly the remarks done in issue #21385
* | | Merge topic 'FindPython-version-range-fix-tests'Brad King2020-11-121-16/+25
|\ \ \ | |/ / |/| / | |/ | | | | | | a00603af0b FindPython: Fix version range tests Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !5497
| * FindPython: Fix version range testsMarc Chevrier2020-11-111-16/+25
| | | | | | | | Tests must be successful when multiple versions are installed.
| * cmake_path: remove new command from 3.19Marc Chevrier2020-11-033-3/+3
| | | | | | | | | | | | | | Defer adding this command until post-3.19 development so that it has more time to mature before being included in a release. Issue: #21385
* | Merge topic 'android-root'Brad King2020-11-102-0/+24
|\ \ | | | | | | | | | | | | | | | | | | | | | cbc51a8be3 Android: restructure android search paths Acked-by: Kitware Robot <kwrobot@kitware.com> Acked-by: huangqinjin <huangqinjin@gmail.com> Merge-request: !5479
| * | Android: restructure android search pathsHaibo Huang2020-11-092-0/+24
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 1. Set CMAKE_FIND_ROOT_PATH unconditionally. Revise the implementation from commit a7f41a7ee4 (Android: Fix find_* search order within NDK for unified toolchains, 2020-10-13). In the old implementation, if people set CMAKE_FIND_ROOT_PATH, CMAKE_ANDROID_NDK won't be added to find root. And all paths added to CMAKE_SYSTEM_*_PATH below will be rerooted to the user specified root. 2. Add api level specific library path to CMAKE_SYSTEM_PREFIX_PATH. As the discussion in [1], some people want the paths added by UnixPaths.cmake. They install their libraries according to GNUInstallDirs [2]. As a result, we cannot clear CMAKE_SYSTEM_PREFIX_PATH. It includes /usr so no matter what we specify in CMAKE_SYSTEM_LIBRARY_PATH, /usr/lib/<arch> will be searched first. The author also pointed out a way to solve this issue [3]. In addition to other paths, CMake also searches <root>/<prefix> [4]. So we can add the API specific lib path to the beginning of CMAKE_SYSTEM_PREFIX_PATH, to have it searched first. [1] https://android-review.googlesource.com/c/platform/ndk/+/1486800 [2] https://cmake.org/cmake/help/latest/module/GNUInstallDirs.html [3] https://github.com/android/ndk/issues/1179#issuecomment-613435081 [4] https://gitlab.kitware.com/cmake/cmake/-/blob/11425041f04fd0945480b8f9e9933d1549b93981/Source/cmSearchPath.cxx#L202
* | | TestBigEndian: Re-implement using byte order detected from ABI checkBrad King2020-11-0611-0/+63
| | | | | | | | | | | | Document the module as deprecated in favor of the ABI check results.
* | | Tests: Prepare RunCMake.ABI cases to run more checksBrad King2020-11-065-5/+20
|/ /