summaryrefslogtreecommitdiffstats
path: root/Tests
Commit message (Collapse)AuthorAgeFilesLines
* try_compile: Do not use CMAKE_BUILD_TYPE or CMAKE_CONFIGURATION_TYPES env varsBrad King2021-11-223-0/+27
| | | | | | | | | | | | | | | | Since: * commit e216b9bbd3 (cmake: Allow CMAKE_BUILD_TYPE to be set by environment variable, 2021-06-29, v3.22.0-rc1~503^2~1) * commit ef56eefc9b (cmake: Allow CMAKE_CONFIGURATION_TYPES to be set by environment variable, 2021-06-29, v3.22.0-rc1~503^2) the environment variables are supposed to provide defaults for settings the user otherwise can control via cache entries. However, they accidentally affect `try_compile` projects too, which are supposed to be programmatically controlled. Fixes: #22935
* Merge branch 'UseSWIG-create-workingdir' into release-3.22Brad King2021-11-221-0/+1
|\ | | | | | | Merge-request: !6750
| * UseSWIG: ensure directory for depfile existsMarc Chevrier2021-11-191-0/+1
| | | | | | | | | | | | | | When `Visual Studio` and `Xcode` generators are used, directory for depfile is not implicitely created by CMake when OUTFILE_DIR option is used. Fixes: #22932
| * Merge topic 'revert-debian-libexec' into release-3.21Brad King2021-10-081-2/+2
| |\ | | | | | | | | | | | | | | | | | | 6658e260d4 GNUInstallDirs: Fix misinterpretation of Debian Policy on LIBEXECDIR Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !6607
* | | gtest_discover_tests: Re-run PRE_TEST discovery on any arg changeCraig Scott2021-11-164-0/+77
| | | | | | | | | | | | Fixes: #22912
* | | Tests: Fix and update wrongly named GoogleTest stdout fileCraig Scott2021-11-141-3/+3
| | | | | | | | | | | | The GoogleTest-skip-test output was never being checked since this test was added due to this file having the wrong name.
* | | CMP0128: Enable/disable extensions if standard same as defaultRaul Tambre2021-11-115-5/+32
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This was intended to be part of the initial MR (!6177), but accidentally went missing when debugging nightly failures on less common systems. Noticed during !6711 review as the comment about this behaviour didn't match the code. Documentation for CMP0128 is updated to remove a false case and note the two cases related to this. Fixes #22224.
* | | Ninja Multi-Config: Fix custom command target dependencies in cross-configsBrad King2021-11-045-0/+26
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Generator expressions in a non-cross custom command's `COMMAND` arguments are evaluated in the command config. Target-level dependencies implied by `TARGET_FILE` must therefore be cross dependencies. This is important to generate proper target-level dependencies on the cross-config build statements for the target to which the custom command is attached. Fixes: #22855
* | | Merge topic 'nvhpc-isystem' into release-3.22Brad King2021-11-031-0/+1
|\ \ \ | | | | | | | | | | | | | | | | | | | | | | | | 92624714c4 NVHPC: Support SYSTEM include directories Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !6691
| * | | NVHPC: Support SYSTEM include directoriesRobert Maynard2021-11-021-0/+1
| | | | | | | | | | | | | | | | Fixed #22834
* | | | Tests/Environment: also test modifying ambient valuesBen Boeckel2021-10-293-0/+24
| | | |
* | | | cmCTestRunTest: get the default value from the environmentBen Boeckel2021-10-292-0/+25
|/ / / | | | | | | | | | | | | | | | | | | | | | This only works due to some assumptions about how the `ENVIRONMENT` property is processed. Comments have been added to notify anyone modifying the behavior about where to look. Fixes: #22819
* | | Merge topic 'builtin-help-versionadded' into release-3.22Brad King2021-10-282-0/+12
|\ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | 054754359a cmRST: support `versionadded` and `versionchanged` directives Acked-by: Kitware Robot <kwrobot@kitware.com> Acked-by: buildbot <buildbot@kitware.com> Merge-request: !6667
| * | | cmRST: support `versionadded` and `versionchanged` directivesBen Boeckel2021-10-272-0/+12
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This makes `versionadded` and `versionchanged` directives show up in `cmake --help-*` output instead of disappearing (and potentially making empty sections). Fixes: #22808
* | | | cmCTestRunTest: fix modifying non-existent envvarsBen Boeckel2021-10-262-1/+25
|/ / / | | | | | | | | | | | | | | | | | | | | | | | | When appending or modifying to a variable that has not been modified before, the iterator was not valid, but it was used to insert into the map again. Instead, just use indexing into the map since we know it will exist by the end of the function anyways. Fixes: #22796
* | | cmake_host_system_information: Add undocumented VS_MSBUILD_COMMAND keyBrad King2021-10-205-0/+16
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | When using the Visual Studio generator for VS 10 or above, offer this key to get the location of the MSBuild command before the first `project()` or `enable_language()` command has finished running. This will be needed only by one of our own modules, so leave it undocumented for now.
* | | cmFileCommand: improve error messageSeth R Johnson2021-10-124-4/+12
| | | | | | | | | | | | | | | Print full list of unresolved dependencies and a phrase that indicates what about the file is unresolved.
* | | Merge topic 'revert-debian-libexec'Brad King2021-10-081-2/+2
|\ \ \ | | |/ | |/| | | | | | | | | | | | | 6658e260d4 GNUInstallDirs: Fix misinterpretation of Debian Policy on LIBEXECDIR Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !6607
| * | GNUInstallDirs: Fix misinterpretation of Debian Policy on LIBEXECDIRTimo Röhling2021-10-071-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Revert commit 798c1c3192 (GNUInstallDirs: Comply with Debian Policy on LIBEXECDIR, 2020-10-08, v3.19.0-rc1~11^2). The Debian Policy builds upon FHS 3.0 and permits installing to `/usr/libexec`. While Policy does grant an additional exception for applications to use a single subdirectory of `/usr/lib/<triplet>`, this is not meant to replace `/usr/libexec` as valid target. Fixes: #22731
* | | Merge topic 'FindJasper-imported-target'Brad King2021-10-074-0/+44
|\ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 6e8754c625 FindJasper: Add IMPORTED target bdbce845cd FindJasper: Add JASPER_INCLUDE_DIRS result variable 7f8413c309 FindJasper: Modernize documentation layout 524205a7a5 FindJasper: Modernize code layout Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !4633
| * | | FindJasper: Add IMPORTED targetHiroshi Miura2021-10-064-0/+44
| | | | | | | | | | | | | | | | | | | | Fixes: #20601 Signed-off-by: Hiroshi Miura <miurahr@linux.com>
* | | | Tests: Skip RunCMake.file INSTALL-FOLLOW_SYMLINK_CHAIN case on CygwinBrad King2021-10-062-2/+4
|/ / / | | | | | | | | | | | | | | | | | | This case was added by commit e3ff7ced63 (file(INSTALL): Add FOLLOW_SYMLINK_CHAIN argument, 2019-05-16, v3.15.0-rc1~103^2). Skip it on Cygwin because it fails due to `foo/../` pairs being flattened away in symlinks.
* | | Merge topic 'ci-xcode-13.0'Brad King2021-10-062-4/+4
|\ \ \ | | |/ | |/| | | | | | | | | | | | | | | | 429522e89c gitlab-ci: update macOS jobs to use Xcode 13.0 75901f0472 Tests: Fix RunCMake.XcodeProject XcodeIOSInstallCombined cases for Xcode 13.0 Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !6578
| * | Tests: Fix RunCMake.XcodeProject XcodeIOSInstallCombined cases for Xcode 13.0Brad King2021-10-052-4/+4
| | | | | | | | | | | | | | | The output of `otool -vf` now contains additional content that happens to be matched by our architectures regex. Make the regex more strict.
* | | Merge topic 'xcode13-schema'Brad King2021-10-061-1/+6
|\ \ \ | |/ / | | | | | | | | | | | | | | | 0e86fea0be Tests: Specify destination for Xcode scheme Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !6582
| * | Tests: Specify destination for Xcode schemeGregor Jasny2021-10-051-1/+6
| | | | | | | | | | | | | | | | | | | | | The `Using the first of multiple matching destinations` warning vanishes if we explicitly specify a destination. Fixes: #22704
* | | Merge topic 'find-blas-lapack-sizeof-integer'Brad King2021-10-067-107/+107
|\ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 64038fd5bc Help: Add release notes for Find{BLAS,LAPACK} BLA_SIZEOF_INTEGER option 972489ae4e Find{BLAS,LAPACK}: Provide testing of BLA_SIZEOF_INTEGER 95219365ff Find{BLAS,LAPACK}: Make possible testing of ILP64 model 2cd94f3e57 Find{BLAS,LAPACK}: Specify integer type in tests 9b69307b56 Find{BLAS,LAPACK}: De-duplicate and generalize test creation logic 91fd645d46 FindLAPACK: Stop processing if LAPACK library does not have 64-bit integer API b8a3cea51f FindBLAS: Stop processing if BLAS library does not have 64-bit integer API d2f5c7856f FindLAPACK: Search 32/64-bit integer API via BLA_SIZEOF_INTEGER if possible ... Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !6407
| * | | Find{BLAS,LAPACK}: Provide testing of BLA_SIZEOF_INTEGERIgor S. Gerasimov2021-10-055-3/+39
| | | |
| * | | Find{BLAS,LAPACK}: Make possible testing of ILP64 modelIgor S. Gerasimov2021-10-052-0/+10
| | | |
| * | | Find{BLAS,LAPACK}: Specify integer type in testsIgor S. Gerasimov2021-10-052-9/+14
| | | |
| * | | Find{BLAS,LAPACK}: De-duplicate and generalize test creation logicBrad King2021-10-053-98/+47
| | | | | | | | | | | | | | | | | | | | Interpret `CMake_TEST_FindBLAS` and `CMake_TEST_FindLAPACK` as a sequence of option assignments intermixed with vendor names.
* | | | Merge topic 'fetchcontent-CMAKE-vars-passthrough'Craig Scott2021-10-062-0/+39
|\ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 1851aa49be FetchContent: Pass through networking-related CMAKE_... variables 96937438b7 Help: Clean up how TLS and NETRC variables are discussed 2a82bd85b6 Help: Add documentation for CMAKE_TLS_CAINFO Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !6589
| * | | | FetchContent: Pass through networking-related CMAKE_... variablesCraig Scott2021-10-052-0/+39
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | CMAKE_TLS_VERIFY, CMAKE_TLS_CAINFO, CMAKE_NETRC and CMAKE_NETRC_FILE are now passed through to the underlying ExternalProject sub-build. Previously, they were silently ignored. Fixes: #22144
* | | | | Merge topic 'qt6-tests'Craig Scott2021-10-0577-165/+271
|\ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | a742088472 Tests: Add support for testing Qt6 Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !6587
| * | | | | Tests: Add support for testing Qt6Craig Scott2021-10-0477-165/+271
| |/ / / / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The minimum CMake version for Qt6 is 3.16, so all the calls to cmake_minimum_required() are updated here to enforce that minimum. This will avoid any CMake version-related warnings from Qt. Avoid hard-coding Qt5 where the tests could now be using Qt5 or Qt6. Fixes: #22188
* | | | | Merge topic 'default_extensions'Brad King2021-10-0413-61/+225
|\ \ \ \ \ | |/ / / / |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 4a0485be7f cmStandardLevelResolver: Avoid unnecessary flags, fix unset level logic 29e2b85171 Tests: Simplify RunCMake.CompileFeatures introspection fc3a1cbdd8 CompilerID: Compiler extensions default detection 2adfd95d79 CompilerID: Rename language_dialect to language_standard 00055d7779 Help: Document CMAKE_<LANG>_STANDARD_DEFAULT a65bee4cfc Help: Document HIP standard/extensions properties and variables a40ff1bb5a Help: Make language standard/extensions variable pages less wordy 3feff8379b Help: Generic language standard and extension variables documentation Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !6177
| * | | | cmStandardLevelResolver: Avoid unnecessary flags, fix unset level logicRaul Tambre2021-09-2911-1/+201
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The changes are part of CMP0128. When the standard level is unset: * Flags are added if extension mode doesn't match the compiler's default. Previously logic only worked if LANG_EXTENSIONS was ON. Fixes #22224. * The full flag is used. Previously CMAKE_LANG_EXTENSION_COMPILE_OPTION was used. This was only supported for IAR. Otherwise: * Avoid adding flags if not necessary per the detected compiler defaults. * Fixed check for when the requested standard is older. It now matches the nearby comments. I reworded the fallback comment as its logic was a bit difficult to wrap my head around.
| * | | | Tests: Simplify RunCMake.CompileFeatures introspectionRaul Tambre2021-09-284-60/+24
| | | | |
* | | | | Merge topic 'clang-warnings'Brad King2021-09-291-3/+3
|\ \ \ \ \ | |/ / / / |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 37859e3244 Source: Fix clang -Wimplicit-fallthrough warnings 907d098838 Source: Fix clang -Wextra-semi warnings Acked-by: Kitware Robot <kwrobot@kitware.com> Acked-by: buildbot <buildbot@kitware.com> Merge-request: !6561
| * | | | Source: Fix clang -Wextra-semi warningsSean McBride2021-09-281-3/+3
| |/ / /
* | | | Merge topic 'autogen-dep-on-imported-implib-only-target'Brad King2021-09-275-0/+75
|\ \ \ \ | |/ / / |/| / / | |/ / | | | | | | | | | | | | | | | 895fa3433f cmQtAutoGenInitializer: support IMPLIB-only imported targets 354c1f5628 Tests/RunCMake/Autogen: test CMP0111 behavior Acked-by: Kitware Robot <kwrobot@kitware.com> Tested-by: buildbot <buildbot@kitware.com> Merge-request: !6558
| * | Tests/RunCMake/Autogen: test CMP0111 behaviorBen Boeckel2021-09-245-0/+75
| | | | | | | | | | | | | | | | | | | | | On Windows, imported shared libraries which only have an `IMPORTED_IMPLIB` set fail if they are depended upon by a target using automoc. Add a test for the behavior of depending upon all imported target types from an automoc-using target.
* | | Merge topic 'cat_empty_file'Brad King2021-09-211-1/+2
|\ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | 0b4a56e64b cmake: -E cat stops when an empty file is encountered Acked-by: Kitware Robot <kwrobot@kitware.com> Acked-by: buildbot <buildbot@kitware.com> Merge-request: !6539
| * | | cmake: -E cat stops when an empty file is encounteredJohnny Jazeix2021-09-181-1/+2
| | | | | | | | | | | | | | | | Fixes: #22652
* | | | Merge topic 'tests-cpack-deb-non-linux'Brad King2021-09-211-2/+2
|\ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | b07812c6de Tests: fix RunCMake.CPack_DEB.EXTRA on Debian non-Linux OSes Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !6540
| * | | | Tests: fix RunCMake.CPack_DEB.EXTRA on Debian non-Linux OSesPino Toscano2021-09-181-2/+2
| |/ / / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The generated path with the packages uses $CPACK_TOPLEVEL_TAG, which by default is $CPACK_SYSTEM_NAME, thus the OS name. To make the expected stderr match also non-Linux OSes, accept any non-slash characters in place of "Linux", so it works also on other Debian OSes (e.g. Debian/Hurd).
* | | | Merge topic 'clang-manifest'Brad King2021-09-212-1/+5
|\ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | b73857561f Clang: embed windows manifests with GNU interface Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !6534
| * | | | Clang: embed windows manifests with GNU interfaceThomas Bernard2021-09-162-1/+5
| | | | | | | | | | | | | | | | | | | | Solves: #22611
* | | | | Merge topic 'hip-no-hipcc'Brad King2021-09-201-1/+1
|\ \ \ \ \ | | |_|/ / | |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | cb93f72624 HIP: Simplify detection of HIP runtime CMake package a71f0fc9c7 HIP: Remove ROMClang compiler id and use Clang directly b125e9809a HIP: Detect ROCm path earlier 735f41fc2d HIP: Use 'rocm_agent_enumerator' to determine CMAKE_HIP_ARCHITECTURES Acked-by: Kitware Robot <kwrobot@kitware.com> Acked-by: buildbot <buildbot@kitware.com> Acked-by: Raul Tambre <raul@tambre.ee> Acked-by: Axel Huebl <axel.huebl@plasma.ninja> Merge-request: !6533
| * | | | HIP: Remove ROMClang compiler id and use Clang directlyBrad King2021-09-161-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Since commit bd844387df (ROCMClang: Add the ROCm toolkit derived clang compiler to CMake, 2020-08-28, v3.21.0-rc1~66^2~6) and commit ff0d2858e1 (HIP: Extract clang compiler details from hipcc, 2020-10-21, v3.21.0-rc1~66^2~5), the separate `ROCMClang` compiler id for `hipcc` has caused a few problems: * The compiler id changed from behavior of CMake 3.20 and below, breaking projects that already built with `hipcc` treated as `Clang`. * The implementation of `target_compile_features` was incomplete for the `ROCMClang` identity. * Only `hipcc` was identified as `ROCMClang`, so after it is unwrapped to the underlying `clang++`, future runs of new CMake versions on an existing build tree would not repeat this. * Clang should be usable as a HIP compiler without the `hipcc` wrapper. Remove the `ROMClang` compiler identity, and revise HIP language support to work directly with a Clang compiler. Reject direct `hipcc` usage as a HIP compiler. For now it cannot be supported because it interferes with flags CMake needs to pass to Clang. Fixes: #22536, #22460, #22593