summaryrefslogtreecommitdiffstats
path: root/Tests
Commit message (Collapse)AuthorAgeFilesLines
* Tests: Add RunCMake.target_sources case covering missing sourceBrad King2023-02-285-1/+12
|
* Merge topic 'target_sources-file_set-no-exist'Brad King2023-02-287-0/+35
|\ | | | | | | | | | | | | | | 7e3f9aa1b2 target_sources: give a hint when a file named `FILE_SET` is not found Acked-by: Kitware Robot <kwrobot@kitware.com> Tested-by: buildbot <buildbot@kitware.com> Merge-request: !8253
| * target_sources: give a hint when a file named `FILE_SET` is not foundBen Boeckel2023-02-247-0/+35
| | | | | | | | | | | | | | | | | | `FILE_SET` is only supported within `target_sources()` and only directly after a visibility keyword or another `FILE_SET`. Give a hint as to what might be wrong if a file named `FILE_SET` cannot be found for any reason. Fixes: #24539
* | Merge topic 'FindX11-more-xcb-components'Brad King2023-02-282-1/+60
|\ \ | | | | | | | | | | | | | | | | | | | | | 0cca309dfd FindX11: support the xcb-{cursor,shape,xrm} components e7d7710cf2 Tests/FindX11: fix preprocessor check for xcb_xrandr component Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !8261
| * | FindX11: support the xcb-{cursor,shape,xrm} componentsBen Boeckel2023-02-272-0/+59
| | | | | | | | | | | | Fixes: #24417
| * | Tests/FindX11: fix preprocessor check for xcb_xrandr componentBen Boeckel2023-02-271-1/+1
| | |
* | | Merge topic 'dll-name-soversion'Brad King2023-02-2810-8/+33
|\ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | a7f9c7da26 Add option to add SOVERSION to DLL names 9694504adc Tests: Simplify RunCMake.TargetArtifacts spec 3cd34eb279 Tests: Rename RunCMake.{ArtifactOutputDirs => TargetArtifacts} Acked-by: Kitware Robot <kwrobot@kitware.com> Tested-by: buildbot <buildbot@kitware.com> Merge-request: !8021
| * | | Add option to add SOVERSION to DLL namesRalf Habacker2023-02-275-1/+31
| | | | | | | | | | | | | | | | | | | | | | | | | | | | Add variable/target property `[CMAKE_]DLL_NAME_WITH_SOVERSION`. Fixes: #24251 Signed-off-by: Ralf Habacker <ralf.habacker@freenet.de>
| * | | Tests: Simplify RunCMake.TargetArtifacts specBrad King2023-02-241-5/+1
| | | |
| * | | Tests: Rename RunCMake.{ArtifactOutputDirs => TargetArtifacts}Brad King2023-02-247-3/+2
| | |/ | |/| | | | | | | Generalize the name so we can add other kinds of artifact checks.
* | | Merge topic 'install-prefix-genex-install-code-script'Brad King2023-02-275-2/+13
|\ \ \ | |_|/ |/| | | | | | | | | | | | | | | | | 18e02ace5b install(CODE|SCRIPT): Support $<INSTALL_PREFIX> genex Acked-by: Kitware Robot <kwrobot@kitware.com> Acked-by: buildbot <buildbot@kitware.com> Merge-request: !8251
| * | install(CODE|SCRIPT): Support $<INSTALL_PREFIX> genexKyle Edwards2023-02-245-2/+13
| |/ | | | | | | Fixes: #24534
* | 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