summaryrefslogtreecommitdiffstats
path: root/Tests
Commit message (Collapse)AuthorAgeFilesLines
...
* | | | | | | Merge topic 'fetchcontent-reject-CMAKE_TOOLCHAIN_FILE-env-var'Craig Scott2023-02-252-0/+3
|\ \ \ \ \ \ \ | |/ / / / / / |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | c15674a9cb FetchContent: Reject CMAKE_TOOLCHAIN_FILE env var in sub-build 31ef93f19f FetchContent: Only use @-@ replacements for sub-build CMakeLists.txt Acked-by: Kitware Robot <kwrobot@kitware.com> Tested-by: buildbot <buildbot@kitware.com> Merge-request: !8248
| * | | | | | FetchContent: Reject CMAKE_TOOLCHAIN_FILE env var in sub-buildCraig Scott2023-02-242-0/+3
| |/ / / / / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The sub-build should never try to use a toolchain file. The toolchain file may itself be getting downloaded by FetchContent. If the CMAKE_TOOLCHAIN_FILE environment variable is set, CMake uses it to initialize the CMake variable of the same name. We need to explicitly clear them before the first project call of the sub-build. Fixes: #24535
* | | | | | Merge topic 'msvc-embed-manifest-direct'Brad King2023-02-242-0/+15
|\ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 0b552eb877 MSVC: Embed manifests directly for non-incremental vs_link_exe links Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !8245
| * | | | | | MSVC: Embed manifests directly for non-incremental vs_link_exe linksAndrew Ng2023-02-232-0/+15
| |/ / / / / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This avoids the need to separately execute `mt.exe` to perform the embedding of manifests into the output for non-incremental links. The primary motivation for this change is that this separate execution of `mt.exe` to embed manifests is known to cause intermittent failures due to AV/security scanning. The only change in behavior is that any linker generated manifest will no longer be output as a separate manifest file alongside the output file. Fixes: #24531
* | | | | | Merge topic 'PATH-genex-handle-list-of-paths'Brad King2023-02-249-1/+325
|\ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | e395310a21 PATH-genex: handle lists for path decomposition and transformations Acked-by: Kitware Robot <kwrobot@kitware.com> Tested-by: buildbot <buildbot@kitware.com> Acked-by: scivision <michael@scivision.dev> Merge-request: !8238
| * | | | | | PATH-genex: handle lists for path decomposition and transformationsMarc Chevrier2023-02-219-1/+325
| |/ / / / / | | | | | | | | | | | | | | | | | | Fixes: #24371
* | | | | | Merge topic 'GenerateExportHeader-Fix-Clang-support-on-Windows'Brad King2023-02-247-5/+91
|\ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 1e19936320 GenerateExportHeader: Fix Clang support on Windows Acked-by: Kitware Robot <kwrobot@kitware.com> Acked-by: Adrien De Coninck <deconinck.adrien@gmail.com> Merge-request: !8221
| * | | | | | GenerateExportHeader: Fix Clang support on WindowsCorentin Damman2023-02-237-5/+91
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | When using Clang with Visual Studio, the GenerateExportHeader function generates the DEPRECATED definition "__attribute__ ((__deprecated__))", because Clang can compile such instruction. However, if a user wants to compile the library with this generated header with MSVC, the declaration is not valid. We suggest to always use the DEPRECATED definition "__declspec(deprecated)" on Windows, which is valid for both Clang and MSVC.
* | | | | | | find_package: Use <PACKAGENAME>_ROOT variables as search prefixesBrad King2023-02-2316-0/+466
| |/ / / / / |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Extend commit eb35d8884b (find_package: Use PackageName_ROOT variables as search prefixes, 2018-03-15, v3.12.0-rc1~349^2) to also check upper-case `<PACKAGENAME>_ROOT` variables. Add policy `CMP0144` to enable the behavior in a compatible way. Fixes: #24403
* | | | | | Remove component size limit for version comparisonsDavid Gobbi2023-02-201-2/+20
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The VersionCompare() function converted version components to 'unsigned long' prior to comparing them. Any version components too large for 'unsigned long' were treated as equal to ULONG_MAX. This impacted operators like VERSION_GREATER, VERSION_LESS, and VERSION_EQUAL. The new code does not limit the length of the version components for valid comparisons.
* | | | | | Tests: Add cases for cmSystemTools::VersionCompareDavid Gobbi2023-02-201-0/+29
| | | | | |
* | | | | | Merge topic 'ninja-custom-command-depends'Brad King2023-02-202-10/+48
|\ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | ea2a05f402 Add variable CMAKE_ADD_CUSTOM_COMMAND_DEPENDS_EXPLICIT_ONLY Acked-by: Kitware Robot <kwrobot@kitware.com> Acked-by: buildbot <buildbot@kitware.com> Merge-request: !8220
| * | | | | | Add variable CMAKE_ADD_CUSTOM_COMMAND_DEPENDS_EXPLICIT_ONLYAbdelmaged Khalifa2023-02-172-10/+48
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Add CMake variable `CMAKE_ADD_CUSTOM_COMMAND_DEPENDS_EXPLICIT_ONLY` to enable option `DEPENDS_EXPLICIT_ONLY` on all uses of `add_custom_command`. Fixes: #17097
* | | | | | | Merge topic 'xcode-revert-header-map'Brad King2023-02-204-0/+14
|\ \ \ \ \ \ \ | |_|/ / / / / |/| | | | | / | | |_|_|_|/ | |/| | | | | | | | | | | | | | | | 841272eb35 Xcode: Restore suppression of header maps Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !8218
| * | | | | Xcode: Restore suppression of header mapsBrad King2023-02-174-0/+14
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | In commit 8527f42b96 (Xcode: Explicitly disable deprecated user include path feature, 2023-01-31, v3.26.0-rc1~7^2) we dropped the Xcode build setting `USE_HEADERMAP = NO` because Xcode 14's "Build Documentation" feature (`xcodebuild RUN_DOCUMENTATION_COMPILER=YES`) fails in some cases without header maps. However, enabling header maps causes Xcode to add `-iquote .../foo.hmap` and `-I .../bar.hmap` flags that can change the intended header file search order based on the contents of the header maps. This can break existing projects. Restore the `USE_HEADERMAP = NO` setting to fix the header file search order. Further investigation will be needed to resolve the problematic cases with the Xcode 14 "Build Documentation" feature. Meanwhile projects encountering such cases can set the `XCODE_ATTRIBUTE_USE_HEADERMAP` target property to `YES` themselves. Fixes: #24418 Issue: #24379
* | | | | | Merge topic 'lcc-lfortran-fix'Brad King2023-02-172-8/+11
|\ \ \ \ \ \ | |_|/ / / / |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 9f9d121ddb LCC: Disable Fortran preprocessor testing if unsupported ea5f1f33fd LCC: Disable implicit testing of FortranCInterface 5434547678 LCC: Don't require liblfortran on lcc versions that don't have it Acked-by: Kitware Robot <kwrobot@kitware.com> Tested-by: buildbot <buildbot@kitware.com> Merge-request: !8214
| * | | | | LCC: Disable Fortran preprocessor testing if unsupportedmakise-homura2023-02-161-7/+10
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | LCC < 1.24 has no way to disable integrated Fortran preprocessor, and it can't produce preprocessed files explicitly. So we disable all functionality (and therefore tests) related to it.
| * | | | | LCC: Disable implicit testing of FortranCInterfacemakise-homura2023-02-161-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | LCC < 1.24 has unsupported mangling scheme: it changes 'sub' neither to 'sub' nor to 'SUB', but to 'Sub'. So we should explicitly check if FortranCInterface works in the case of LCC.
* | | | | | Merge topic 'deprecate-extra-generators'Brad King2023-02-161-0/+8
|\ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | ef5a4d964b Deprecate "extra" generators in favor of cmake-file-api(7) Acked-by: Kitware Robot <kwrobot@kitware.com> Acked-by: buildbot <buildbot@kitware.com> Merge-request: !8211
| * | | | | | Deprecate "extra" generators in favor of cmake-file-api(7)Brad King2023-02-151-0/+8
| |/ / / / / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The "extra" generators were created in CMake's early years to provide support for users of specific IDEs by directly generating their project files alongside make or ninja files. Nowadays the file-api provides a more generic, maintainable, well-tested, and robust way for IDEs to view CMake project build trees. Deprecate the legacy "extra" generators to encourage the corresponding IDEs to use the file-api. Fixes: #19090
* | | | | | cmake -E time: use C++11 chrono and better format outputscivision2023-02-151-1/+1
|/ / / / / | | | | | | | | | | | | | | | fixes #24415
* | | | | Merge topic 'AutoExport-vftable'Brad King2023-02-153-0/+29
|\ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | f513781bc5 WINDOWS_EXPORT_ALL_SYMBOLS: Export vftable symbol Acked-by: Kitware Robot <kwrobot@kitware.com> Acked-by: buildbot <buildbot@kitware.com> Merge-request: !8201
| * | | | | WINDOWS_EXPORT_ALL_SYMBOLS: Export vftable symbolMalcolm Bechard2023-02-143-0/+29
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | `pybind11` requires access to this symbol to link in some cases. Include this symbol when generating automatic exports via `CMAKE_WINDOWS_EXPORT_ALL_SYMBOLS`. Fixes: #24406
* | | | | | Merge topic 'ninja-custom-command-depends'Brad King2023-02-152-0/+30
|\ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 082ccd7530 add_custom_command: Add DEPENDS_EXPLICIT_ONLY option for Ninja Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !8198
| * | | | | | add_custom_command: Add DEPENDS_EXPLICIT_ONLY option for NinjaAbdelmaged Khalifa2023-02-142-0/+30
| |/ / / / / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Add option `DEPENDS_EXPLICIT_ONLY` to `add_custom_command` to indicate that implicit dependencies coming from users of the output are not needed, and only consider dependencies explicitly specified in the custom command. Fixes: #17097
* | | | | | Merge topic 'test-extra-generators'Brad King2023-02-155-30/+30
|\ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 6cf281b108 Tests: Add dedicated RunCMake.ExtraGenerators test Acked-by: Kitware Robot <kwrobot@kitware.com> Acked-by: buildbot <buildbot@kitware.com> Merge-request: !8202
| * | | | | | Tests: Add dedicated RunCMake.ExtraGenerators testBrad King2023-02-135-30/+30
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The `Simple_${extraGenerator}` tests do not actually need to compile because they only smoke test CMake's generation of the extra project files.
* | | | | | | Tests: Fix FindPatch test with VS generatorsBrad King2023-02-131-0/+1
|/ / / / / / | | | | | | | | | | | | | | | | | | Tell CTest the project used to name the `.sln` file.
* | | | | | Merge topic 'deprecate-pre-3.5'Brad King2023-02-13328-532/+455
|\ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 3a4791548d Deprecate compatibility with CMake versions older than 3.5 1edf138506 Tests/RunCMake: Update cmake_minimum_required versions 65a1c379ee Tests/CTestTest*: Update cmake_minimum_required versions 589e6fdcd1 Tests: Update cmake_minimum_required versions in a few tests 3092b14ed0 Tests: Teach RunCMake to optionally ignore policy version deprecation warnings Acked-by: Kitware Robot <kwrobot@kitware.com> Acked-by: buildbot <buildbot@kitware.com> Acked-by: scivision <michael@scivision.dev> Merge-request: !8192
| * | | | | | Deprecate compatibility with CMake versions older than 3.5Brad King2023-02-1150-66/+198
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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/RunCMake: Update cmake_minimum_required versionsBrad King2023-02-11240-367/+214
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | For policy-specific tests, use the version before the policy was introduced. Otherwise, use 3.5 where possible. Also, remove `cmake_minimum_required()` and `project()` calls from individual cases where they are handled by `CMakeLists.txt`.
| * | | | | | Tests/CTestTest*: Update cmake_minimum_required versionsBrad King2023-02-1024-24/+24
| | | | | | |
| * | | | | | Tests: Update cmake_minimum_required versions in a few testsBrad King2023-02-103-3/+3
| | | | | | |
| * | | | | | Tests: Teach RunCMake to optionally ignore policy version deprecation warningsBrad King2023-02-0914-75/+19
| |/ / / / / | | | | | | | | | | | | | | | | | | | | | | | | Avoid requiring tests for deprecated behavior to match the warnings explicitly.
* | | | | | Merge topic 'test-https-connections'Brad King2023-02-116-1/+28
|\ \ \ \ \ \ | |/ / / / / |/| / / / / | |/ / / / | | | | | | | | | | | | | | | | | | | | | | | | | 3350c17451 ci: Enable file(DOWNLOAD) TLS_VERIFY test case in CI jobs 17b47da3d8 Tests: Add test for file(DOWNLOAD) with TLS_VERIFY Acked-by: Kitware Robot <kwrobot@kitware.com> Acked-by: buildbot <buildbot@kitware.com> Merge-request: !8194
| * | | | Tests: Add test for file(DOWNLOAD) with TLS_VERIFYscivision2023-02-106-1/+28
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Occasionally curl updates introduce errors in https verification. Add an explicit test for this capability, activated by an undocumented option that we can use in CI to specify a URL to test. Co-authored-by: Brad King <brad.king@kitware.com> Fixes: #24405 Issue: #24147 Issue: #24398
| * | | | Merge topic 'stop_parsing_after_first_script_arg' into release-3.26Brad King2023-02-092-0/+11
| |\ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | f9e8a067c2 cmake: Stop parsing after `--` when detecting script mode Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !8186
* | \ \ \ \ Merge topic 'vs9-deprecate'Brad King2023-02-096-4/+18
|\ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | d7f440c5db Deprecate Visual Studio 9 2008 generator Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !8181
| * | | | | | Deprecate Visual Studio 9 2008 generatorBrad King2023-02-086-4/+18
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Update documentation to mark the generator deprecated. Add a warning at the end of generation plus an option to turn off the warning.
* | | | | | | Merge topic 'stop_parsing_after_first_script_arg'Brad King2023-02-092-0/+11
|\ \ \ \ \ \ \ | |/ / / / / / |/| | / / / / | | |/ / / / | |/| | | | | | | | | | | | | | | | f9e8a067c2 cmake: Stop parsing after `--` when detecting script mode Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !8186
| * | | | | cmake: Stop parsing after `--` when detecting script modeRobert Maynard2023-02-082-0/+11
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The fix in commit 08aa516880 (cmake: Stop parsing after `--` when detecting script mode, 2022-12-06, v3.26.0-rc1~216^2) only corrected the case where `-P -- -P <arg>` occurred and not `-P -- -P -<other>`. Fixes: #24220
* | | | | | Merge topic 'ctest-remove-cmake-intdir'Brad King2023-02-081-1/+1
|\ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | db95afce19 Tests/OutDir: Remove stale cache entry on multi-config generators c6134ca6c7 CTest: Remove usages of CMAKE_INTDIR Acked-by: Kitware Robot <kwrobot@kitware.com> Tested-by: buildbot <buildbot@kitware.com> Merge-request: !8176
| * | | | | | Tests/OutDir: Remove stale cache entry on multi-config generatorsKyle Edwards2023-02-071-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This cache entry is left over from the incorrect behavior prior to the previous commit and was causing the test to fail with the new, correct behavior. Unset the cache variable when a multi-config generator is in use.
* | | | | | | Tests: Remove references to dropped KWSys SharedForward componentBrad King2023-02-072-17/+0
| | | | | | |
* | | | | | | Merge topic 'avoid-cmake-cfg-intdir'Brad King2023-02-072-2/+2
|\ \ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 2b17b6da6a cmGlobalGenerator: Avoid referencing CMAKE_CFG_INTDIR f34876561f Tests: Remove or silence instances of ${CMAKE_CFG_INTDIR} 78cf427157 RULE_LAUNCH_*: Add support for generator expressions cabad8a37f ExternalProject: Always use $<CONFIG> for source files 62e8884d3f CTestTargets: Use $<CONFIG> instead of ${CMAKE_CFG_INTDIR} Acked-by: Kitware Robot <kwrobot@kitware.com> Tested-by: buildbot <buildbot@kitware.com> Merge-request: !8169
| * | | | | | | Tests: Remove or silence instances of ${CMAKE_CFG_INTDIR}Kyle Edwards2023-02-032-2/+2
| | | | | | | |
* | | | | | | | Merge topic 'cxxmodules-proper-mangling'Brad King2023-02-076-0/+12
|\ \ \ \ \ \ \ \ | |_|/ / / / / / |/| | | / / / / | | |_|/ / / / | |/| | | | | | | | | | | | | | | | | | | | | | | | | | 3f1e005067 Tests/RunCMake/CXXModules: declare `forwarding` as `extern "C++"` Acked-by: Kitware Robot <kwrobot@kitware.com> Tested-by: buildbot <buildbot@kitware.com> Merge-request: !8159
| * | | | | | Tests/RunCMake/CXXModules: declare `forwarding` as `extern "C++"`Ben Boeckel2023-02-036-0/+12
| | |/ / / / | |/| | | | | | | | | | | | | | | | It is not part of any module, so it needs to be declared as such.
* | | | | | Tests: Drop redundant string(ASCII) case from COnly testBrad King2023-02-031-2/+0
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Drop the case added by commit 8714396927 (Test conversion from ascii to string, 2003-01-01, v2.4.0~4658). Its results were not checked, and the command is tested elsewhere anyway.
* | | | | | Tests: Move LINK_FLAGS case from COnly to LinkFlags testBrad King2023-02-032-4/+5
| |/ / / / |/| | | | | | | | | | | | | | | | | | | | | | | | Move the case added by commit 246e964180 (BUG: fix for bug 5455, handle nodefaultlib with more than one lib, 2007-12-06, v2.6.0~751) to a more sensible test.