summaryrefslogtreecommitdiffstats
path: root/Tests
Commit message (Collapse)AuthorAgeFilesLines
* Tests: Fix ConfigSources test with empty CMAKE_BUILD_TYPEBrad King2020-12-221-1/+1
| | | | | | The test requires a non-empty `CMAKE_BUILD_TYPE` to function on single-config generators. Force a non-empty configuration if the test is configured explicitly with empty `-DCMAKE_BUILD_TYPE=`.
* Merge topic 'ispc_control_header_suffixes' into release-3.19Brad King2020-12-1516-9/+91
|\ | | | | | | | | | | | | c9a50f3556 ISPC: Generated Headers suffix configurable with a better default Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !5597
| * ISPC: Generated Headers suffix configurable with a better defaultRobert Maynard2020-12-1416-9/+91
| | | | | | | | | | | | | | | | | | The target property `ISPC_HEADER_SUFFIX` and associated global variable now can control the suffix used when generating the C/C++ interoperability ISPC headers. In addition the default suffix is now "_ispc.h" which matches the common convention that the ISPC compiler team uses and recommends.
* | CMakePackageConfigHelpers: Relax restrictions on version rangeMarc Chevrier2020-12-141-18/+107
|/
* Merge topic 'execute_process-command-error' into release-3.19Brad King2020-12-1421-11/+130
|\ | | | | | | | | | | | | e5a4ffaad1 execute_process: Improve COMMAND_ERROR_IS_FATAL error capture scenarios Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !5588
| * execute_process: Improve COMMAND_ERROR_IS_FATAL error capture scenariosAsit Dhal2020-12-1021-11/+130
| | | | | | | | | | | | | | | | | | | | | | 1. COMMAND_ERROR_IS_FATAL ANY will capture errors if the exit code is non zero, there is a timeout or an abnormal exit. 2. COMMAND_ERROR_IS_FATAL LAST will capture if only the last process has an exit code non zero, there is a timeout or an abnormal exit. Fixes: #21562
* | Tests: Cover macOS host architecture selection on Apple Silicon hostsBrad King2020-12-1014-0/+120
| | | | | | | | | | | | | | | | | | | | Add test cases verifying that `CMAKE_APPLE_SILICON_PROCESSOR` set as either a cache or environment variable causes that to be selected as the host architecture. Also verify that sources compile using whatever is selected as the host architecture, even when the explicit setting is not used. Issue: #21554
* | Merge topic 'test-macos-version' into release-3.19Brad King2020-12-101-17/+17
|\ \ | | | | | | | | | | | | | | | | | | | | | | | | 55193c8013 ci: Hard-code XCTest deployment target to 10.15 40877903ac Tests: Remove outdated exclusion of tests on OS X 10.3 c404d7f221 Tests: Add cache entry to control XCTest deployment target Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !5593
| * | Tests: Remove outdated exclusion of tests on OS X 10.3Brad King2020-12-091-12/+1
| | |
| * | Tests: Add cache entry to control XCTest deployment targetBrad King2020-12-091-5/+16
| |/
* | Merge topic 'ispc-system-includes' into release-3.19Brad King2020-12-104-0/+37
|\ \ | |/ |/| | | | | | | | | 8da25e4a3c ISPC: Treat system includes as '-I' includes Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !5591
| * ISPC: Treat system includes as '-I' includesRobert Maynard2020-12-094-0/+37
| | | | | | | | ISPC doesn't have specific syntax for system includes.
* | Merge topic 'correct_ispc_path_computation' into release-3.19Brad King2020-12-082-1/+1
|\ \ | | | | | | | | | | | | | | | | | | | | | 9af93fef11 ISPC: Handle OBJECT sources in different directories 72ae15ebcb ISPC: Ninja properly compute ISPC_HEADER_DIRECTORY location Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !5581
| * | ISPC: Handle OBJECT sources in different directoriesRobert Maynard2020-12-072-1/+1
| |/
* | Tests: Look for Visual Studio only on Windows hostsBrad King2020-12-031-1/+1
| | | | | | | | | | | | | | | | | | Update logic added by commit 6051a49c78 (Visual Studio: Add Android support, 2020-06-12, v3.19.0-rc1~619^2) to only look for VS installations using `cmake_host_system_information` on Windows hosts. Otherwise the `VS_*_DIR` keys are not available. Fixes: #21547
* | export: Do not fail generation for separate namelink only caseDeniz Bahadir2020-12-014-0/+37
| | | | | | | | | | | | | | | | Update the change from commit 64690f6df0 (export: Do not fail generation for namelink-only case, 2020-10-09, v3.19.0-rc1~7^2) to also handle separate namelink-only and namelink-skip calls. Fixes: #21529
* | 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
| * | 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: 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
| * 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 '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
| * 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' 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
| * Makefiles: Fix CMAKE_EXPORT_COMPILE_COMMANDS crash with custom compile ruleBrad King2020-11-202-0/+6
| | | | | | | | Fixes: #21471
* | 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
* CTest: Rename CudaMemcheck to CudaSanitizerTobias Ribizel2020-11-176-3/+3
|
* Tests/FindBoost/TestPython: support finding 3.8 and 3.9Ben Boeckel2020-11-121-2/+2
|
* 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
* CMakePresets.json: Don't warn if no path argument is givenKyle Edwards2020-11-023-0/+15
| | | | | | | | | If --preset is specified with no path argument, use the current directory as the source directory, the preset's binaryDir as the binary directory, and don't issue the standard warning for no path specified. Fixes: #21386
* Merge topic 'CheckSourceRuns-compatibility' into release-3.19Brad King2020-10-302-2/+17
|\ | | | | | | | | | | | | a524bf3aa7 CheckSourceRuns: do not fail on unrecognized arguments Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !5426
| * CheckSourceRuns: do not fail on unrecognized argumentsBen Boeckel2020-10-282-2/+17
| | | | | | | | | | | | | | The old `check_X_source_runs` modules did not verify the arguments, so we cannot start doing it now. Downgrade the hard error introduced in commit 357e2ef429 (CheckSoureRuns: Add a unified way to check if a source runs, 2020-09-14) via !5223 into a noisy warning.
* | Merge topic 'cuda_vs_skip_computation' into release-3.19Brad King2020-10-272-0/+7
|\ \ | | | | | | | | | | | | | | | | | | | | | | | | dd77dec18d VS: Don't compute CUDA options unless necessary e9109dec36 Merge branch 'ninja-multi-per-config-sources' into release-3.18 7c0de4175b Merge branch 'cmake-E-cat-binary' into release-3.18 Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !5422
| * | VS: Don't compute CUDA options unless necessaryRaul Tambre2020-10-272-0/+7
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | In the following scenario (with 3.18 policies): 1. A CXX target is created. 2. CUDA language is enabled. CMake 3.18 introduced CMP0104, which requires CUDA_ARCHITECTURES to be set. Because the CXX target was created before CUDA was enabled it wouldn't have it set. The Visual Studio generator would however end up computing CUDA compile options for the CXX target, which would result in a fatal error due to the policy violation. There doesn't seem to be a reason to do this for targets that don't actually use the CUDA language, so we can skip and generate the CXX target just fine. Fixes: #21341
| * | Merge branch 'ninja-multi-per-config-sources' into release-3.18Brad King2020-10-262-0/+12
| |\ \ | | | | | | | | | | | | Merge-request: !5430
* | \ \ Merge topic 'cmake-presets-path-arg' into release-3.19Craig Scott2020-10-276-7/+31
|\ \ \ \ | |_|_|/ |/| | | | | | | | | | | | | | | | | | | b7d7eca66d CMakePresets.json: Rework how --preset argument is handled Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !5416
| * | | CMakePresets.json: Rework how --preset argument is handledKyle Edwards2020-10-266-7/+31
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | If a path argument with no -S or -B leads to a cache directory, use that directory as the binary directory. Otherwise, use the binary directory from the preset. Fixes: #21311
* | | | Merge topic 'check-module-name-conflicts' into release-3.19Brad King2020-10-272-2/+6
|\ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | d192918586 Modules: Do not implicitly add new functions via old Check Modules Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !5424
| * | | | Modules: Do not implicitly add new functions via old Check ModulesRobert Maynard2020-10-262-2/+6
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The conversion of Check<Lang>CompilerFlag, SourceCompiles, and SourceRuns over to the new functions has the possibility of breaking projects that had functions with those existing names. To reduce the possibility of collisions we now have all the legacy code call functions that start with `cmake_`, and users will need to explicitly include the new modules to get the non-prefixed versions Fixes: #21359
* | | | | Merge branch 'release' into ninja-multi-per-config-sourcesKyle Edwards2020-10-261700-1071/+16559
|\ \ \ \ \ | |/ / / / | | | | / | |_|_|/ |/| | |
| * | | Merge topic 'per-config-source-TARGET_FILE' into release-3.19Brad King2020-10-261-0/+13
| |\ \ \ | | |/ / | |/| | | | | | | | | | | | | | | | | | cd33bfcad5 add_custom_command: Properly recognize if sources depend on config Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !5410
| | * | add_custom_command: Properly recognize if sources depend on configDeniz Bahadir2020-10-221-0/+13
| | | | | | | | | | | | | | | | Fixes: #21349
| * | | Merge topic 'cmake-presets-toolset-arch-config' into release-3.19Craig Scott2020-10-2324-33/+90
| |\ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 64afabdbcb CMakePresets.json: Split cmakeGeneratorConfig field Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !5387
| | * | | CMakePresets.json: Split cmakeGeneratorConfig fieldKyle Edwards2020-10-2224-33/+90
| | |/ / | | | | | | | | | | | | | | | | | | | | | | | | | | | | Make this field separate for both architecture and toolset. Allow architecture and toolset to be either strings or objects with value and strategy fields. Fixes: #21317
| * | | CMakePresets.json: Add ${sourceDirName} macroKyle Edwards2020-10-223-0/+3
| |/ / | | | | | | | | | Fixes: #21312
| * | Merge topic 'cmake-presets-invalid-macro' into release-3.19Kyle Edwards2020-10-2213-46/+78
| |\ \ | | | | | | | | | | | | | | | | | | | | | | | | 638557cbfe CMakePresets.json: Properly report macro expansion errors Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !5397