summaryrefslogtreecommitdiffstats
path: root/Tests
Commit message (Collapse)AuthorAgeFilesLines
* Merge topic 'correct_nvptxcompiler_not_linking_to_threads'Brad King2022-11-034-0/+33
|\ | | | | | | | | | | | | 62f13ed588 FindCUDAToolkit: Restore usage from multiple directories Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !7859
| * FindCUDAToolkit: Restore usage from multiple directoriesRobert Maynard2022-11-024-0/+33
| | | | | | | | Fixes #24119
* | Merge topic 'xcode-swift-include-dirs'Brad King2022-11-035-0/+8
|\ \ | | | | | | | | | | | | | | | | | | | | | cb4e6702b2 Xcode: Implement Swift include directories e1ccab12d7 Xcode: Restore Swift framework search directories Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !7858
| * | Xcode: Implement Swift include directoriesBrad King2022-11-025-0/+8
| | | | | | | | | | | | | | | | | | | | | Populate Xcode's `SWIFT_INCLUDE_PATHS` build setting with the target-wide include directories. Issue: #24116
* | | Tests: Improve GeneratorExpression SHELL_PATH case robustness on MSYS 1.0Brad King2022-11-022-4/+20
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Since commit ca6ba3fee5 (Genex: Add a SHELL_PATH expression, 2015-09-24, v3.4.0-rc1~37^2) and commit 21da25d2a8 (Tests: Generalize GeneratorExpression MSYS path conversion workaround, 2019-03-11, v3.15.0-rc1~407^2~1) we use a prefix string to prevent the MSYS 1.0 shell from converting absolute paths of the form `/c/...` to windows-style paths. In the newer `mingw.osdn.io` distribution of MSYS 1.0, the `bash` shell now also converts paths that appear after `:`. We have no way to add a prefix string in that context, so perform the test's check of the `SHELL_PATH` genex value at generate time instead.
* | | Tests: Improve RunCMake.GetPrerequisites sample executable selectionBrad King2022-11-023-3/+5
| | | | | | | | | | | | | | | | | | | | | Get the runtime dependencies of an executable just built by the toolchain with which tests are running. Previously we used the `cmake` binary itself, but that might have been built for a different ABI than the tested binutils support.
* | | Merge topic 'compile-commands-output-field'Brad King2022-11-011-2/+4
|\ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | 887a8874c3 EXPORT_COMPILE_COMMANDS: add `output` field Acked-by: Kitware Robot <kwrobot@kitware.com> Tested-by: buildbot <buildbot@kitware.com> Merge-request: !7844
| * | | EXPORT_COMPILE_COMMANDS: add `output` fieldBen Boeckel2022-10-281-2/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Also write for all configurations from multi-config generators. This field was added in the Clang 5 documentation and not present in the Clang 4 documentation (sometime between Dec 2016 and Mar 2017 according to `web.archive.org`).
* | | | Merge topic 'test-objc'Brad King2022-11-014-68/+57
|\ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | bb2370842f Tests: Simplify RunCMake.try_compile compiler inspection 1abcb094a7 Tests: Fix logic to enable RunCMake.try_compile OBJC/OBJCXX cases b641a80d55 Tests: Factor out a CMake_TEST_OBJC variable for OBJC/OBJCXX test conditions Acked-by: Kitware Robot <kwrobot@kitware.com> Tested-by: buildbot <buildbot@kitware.com> Merge-request: !7855
| * | | | Tests: Simplify RunCMake.try_compile compiler inspectionBrad King2022-10-313-48/+13
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Detect the compiler id, version, and default standard level in the test's inspection step rather than passing it all in from the host CMake build's results. This avoids repeating details not known to older versions of CMake, and shortens the code.
| * | | | Tests: Fix logic to enable RunCMake.try_compile OBJC/OBJCXX casesBrad King2022-10-313-11/+27
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | CMake itself does not enable the OBJC/OBJCXX languages, so the `CMAKE_OBJ{C,CXX}_STANDARD_DEFAULT` variables are never defined. Detect them inside the test instead.
| * | | | Tests: Factor out a CMake_TEST_OBJC variable for OBJC/OBJCXX test conditionsBrad King2022-10-312-9/+17
| | | | |
* | | | | Merge topic 'test-eol'Brad King2022-11-012-3/+3
|\ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 4180159758 Tests: Provide RunCMake.CommandLine compare_files data more robustly Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !7852
| * | | | | Tests: Provide RunCMake.CommandLine compare_files data more robustlyBrad King2022-10-312-3/+3
| |/ / / / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The `lf` and `crlf` files need to have exact LF and CRLF newlines, respectively. Previously we used the Git `eol` attribute for this, but occasionally the Git work tree ends up without the conversion. It is unclear why that happens, so try to avoid the problem by treating their content as binary instead.
* | | | | Merge topic 'lcc-cleanup'Brad King2022-11-011-0/+1
|\ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | a2943d9ec8 Tests: Teach CheckSourceTree test to clean up more specific known files Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !7850
| * | | | | Tests: Teach CheckSourceTree test to clean up more specific known filesBrad King2022-10-311-0/+1
| | |/ / / | |/| | | | | | | | | | | | | | | | | | Extend the list of files added by commit 2de1458c3c (Tests: Teach CheckSourceTree test to clean up some specific known files, 2022-10-13).
* | | | | Merge topic 'cmp0141-pch-reuse'Brad King2022-11-0116-30/+25
|\ \ \ \ \ | |_|/ / / |/| | / / | | |/ / | |/| | | | | | | | | | | | | | | | | | | | | | | | | | 183b9a9eca CMP0141: Fix PCH REUSE_FROM under policy NEW behavior 4d13f472a2 Tests: Drop redundant project init from RunCMake.PrecompileHeaders cases 2e65fe92db cmLocalGenerator: Clarify name of local PDB type variable 17096aeba8 cmLocalGenerator: Factor out helper to compute MSVC_DEBUG_INFORMATION_FORMAT Acked-by: Kitware Robot <kwrobot@kitware.com> Tested-by: buildbot <buildbot@kitware.com> Merge-request: !7854
| * | | CMP0141: Fix PCH REUSE_FROM under policy NEW behaviorBrad King2022-10-314-1/+6
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Under the CMP0141 NEW behavior added by commit 0e96a20478 (MSVC: Add abstraction for debug information format, 2022-08-25, v3.25.0-rc1~142^2~1), the `-Zi` and `-ZI` flags do not appear in `CMAKE_<LANG>_FLAGS_<CONFIG>` anymore. Teach the PCH REUSE_FROM implementation to recognize the `EditAndContinue` and `ProgramDatabase` debug information formats through the policy's new abstraction. Fixes: #24106
| * | | Tests: Drop redundant project init from RunCMake.PrecompileHeaders casesBrad King2022-10-3113-29/+19
| | |/ | |/| | | | | | | | | | The `CMakeLists.txt` file already calls `cmake_minimum_required` and `project` before including each case's code.
| * | Merge topic 'vs-dotnetsdk-arm64' into release-3.25Brad King2022-10-311-2/+8
| |\ \ | | | | | | | | | | | | | | | | | | | | | | | | 9a0ca7df67 Tests: Fix RunCMake.VsDotnetSdk with VS >= 17.3 on ARM64 Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !7842
| * \ \ Merge topic 'ninja-showIncludes-encoding' into release-3.25Brad King2022-10-3112-0/+104
| |\ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | a0d4e3bf34 cmGeneratedFileStream: Drop unused WriteRaw method 2e5af30ce0 Ninja: Match showIncludes dependencies using console output code page e1c1679148 cm_codecvt: Add support for the Windows console output code page 328c15189d cmGeneratedFileStream: Add support for a temporary alternate encoding Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !7845
* | \ \ \ Merge topic 'tests-FindPkgConfig'Brad King2022-10-313-31/+47
|\ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | fc8f8d82f2 Tests: Disable parts of FindPkgConfig tests without wide supported 96d7b5a6d1 Tests: pkg_check_modules() doesn't allow spaces in a moduleSpec afd1b28cea Tests: Disable broken FindPkgConfig test cases for Windows Acked-by: Kitware Robot <kwrobot@kitware.com> Acked-by: buildbot <buildbot@kitware.com> Merge-request: !7847
| * | | | | Tests: Disable parts of FindPkgConfig tests without wide supportedCraig Scott2022-10-291-15/+25
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Some pkg-config implementations on Windows don't return the same results as those on other platforms. They appear to be bugs in those implementations, the one that comes with Strawberry perl being one case where this was observed. The handling of Libs and Cflags entries is incomplete, resulting in some flags not being reported where they should be. These are faults in the pkg-config implementation, not in CMake or its tests, so we disable those parts of the tests on Windows to avoid reporting false positives.
| * | | | | Tests: pkg_check_modules() doesn't allow spaces in a moduleSpecCraig Scott2022-10-291-10/+11
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The documentation of pkg_check_modules() is a little ambiguous about whether spaces are allowed in a moduleSpec that includes a version constraint. All examples in the docs do not have spaces, so it could be claimed spaces are not supported. The tests fail on Windows when spaces are included, likely because some pkg-config implementations don't support that. Update the tests to not assume spaces are supported as part of a moduleSpec.
| * | | | | Tests: Disable broken FindPkgConfig test cases for WindowsCraig Scott2022-10-291-6/+11
| | |_|_|/ | |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The Windows implementation of these tests have been found to not handle Windows paths and path separators properly in a number of areas. The whole approach taken in these tests appears dubious, so they may need to be significantly rewritten. Disable them until then so we don't get false positives. Issue: #22031
* | | | | Merge topic 'ewilde/swift-output-file-map-logic'Brad King2022-10-312-0/+6
|\ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | e88509d0e8 Swift: Omit output-file-map when used as a linker Acked-by: Kitware Robot <kwrobot@kitware.com> Acked-by: buildbot <buildbot@kitware.com> Merge-request: !7835
| * | | | | Swift: Omit output-file-map when used as a linkerEvan Wilde2022-10-282-0/+6
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Swift is used as the linker for non-swift files because it needs to pull files like swiftrt.o in when swift symbols are present to ensure that the swift runtime is linked. The swift driver uses clang as the underlying linker, which pulls in crtbegin.o and friends when appropriate, so using Swift as a linker for C/C++ libraries is fine. The output-file-map was getting passed to all Swift invocations, regardless of whether or not we generated one. This patch changes it so that we only include the output-file-map in the Swift compiler invocation if we have actually generated the file.
* | | | | | Merge topic 'vs-CLRSupport'Brad King2022-10-319-0/+127
|\ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | eef13a4b33 VS: Add COMMON_LANGUAGE_RUNTIME support for "netcore" 0815329dbc Help: Format COMMON_LANGUAGE_RUNTIME values as a definition list Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !7807
| * | | | | | VS: Add COMMON_LANGUAGE_RUNTIME support for "netcore"ζeh Matt2022-10-289-0/+127
| | |/ / / / | |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | Generate `CLRSupport` for Visual Studio projects. Fixes: #22054
* | | | | | Merge topic 'vs-dotnetsdk-arm64'Brad King2022-10-311-2/+8
|\ \ \ \ \ \ | | |_|_|_|/ | |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | 9a0ca7df67 Tests: Fix RunCMake.VsDotnetSdk with VS >= 17.3 on ARM64 Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !7842
| * | | | | Tests: Fix RunCMake.VsDotnetSdk with VS >= 17.3 on ARM64Anthony Roberts2022-10-281-2/+8
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | VS 17.3 provides an arm64-native version of the tool, but the test was looking for the x64 version.
* | | | | | Merge topic 'ninja-showIncludes-encoding'Brad King2022-10-3112-0/+104
|\ \ \ \ \ \ | | |_|_|_|/ | |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | a0d4e3bf34 cmGeneratedFileStream: Drop unused WriteRaw method 2e5af30ce0 Ninja: Match showIncludes dependencies using console output code page e1c1679148 cm_codecvt: Add support for the Windows console output code page 328c15189d cmGeneratedFileStream: Add support for a temporary alternate encoding Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !7845
| * | | | | Ninja: Match showIncludes dependencies using console output code pageBrad King2022-10-3012-0/+104
| |/ / / / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Generalize the fix from commit 37a279f8d1 (Ninja: Write msvc_deps_prefix as UTF-8 when console codepage is UTF-8, 2020-07-31, v3.19.0-rc1~349^2). `cl /showIncludes` output is encoded using the console output code page, so this is the byte sequence that Ninja must use to match its lines. Fixes: #24068
* | | | | Merge topic 'xcode-obj-dir'Brad King2022-10-317-8/+19
|\ \ \ \ \ | |_|/ / / |/| | | / | | |_|/ | |/| | | | | | | | | | 024e3d2bf6 Xcode: Put object files in a place that Xcode cleans Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !7843
| * | | Xcode: Put object files in a place that Xcode cleansBrad King2022-10-287-8/+19
| |/ / | | | | | | | | | | | | | | | | | | | | | | | | Since commit dc5fc898f6 (Xcode: Set object file locations using TARGET_TEMP_DIR, 2022-09-29, v3.25.0-rc1~64^2~1), `xcodebuild clean` does not remove the object files in our explicit `TARGET_TEMP_DIR` because it is not under the `SYMROOT`. Put it there. Fixes: #24096
| * | Merge topic 'cmake-presets-workflow-arguments' into release-3.25Brad King2022-10-276-3/+46
| |\ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 7ecbe324b0 cmake --workflow: add --fresh option 7d9aa0f00c cmake::Workflow: Refactor to use enum class argument 322193afcd cmake --workflow: print usage and exit on unrecognized argument 70aef29427 cmake --workflow: print usage message Acked-by: Kitware Robot <kwrobot@kitware.com> Acked-by: buildbot <buildbot@kitware.com> Merge-request: !7825
| * \ \ Merge topic 'xcode-swift-defs' into release-3.25Brad King2022-10-273-0/+34
| |\ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | c0dd3dd2c1 Xcode: Evaluate Swift compile definitions separately Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !7826
| * \ \ \ Merge topic 'ninja-intl-paths' into release-3.25Brad King2022-10-274-0/+22
| |\ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | a12050666c Tests: Add case for ninja with non-ascii chars 02a04dd9c7 Ninja: Restore support for non-ascii paths on Windows with ninja<=1.10 Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !7833
| * \ \ \ \ Merge topic 'try_compile-CMP0128' into release-3.25Brad King2022-10-251-4/+5
| |\ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 90287792b6 Tests: Avoid running C++11 test on GNU < 4.7 Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !7821
* | | | | | | string(TIMESTAMP): Add %z and %Z for adding time zone stringVasiliy Koyrev2022-10-274-2/+27
| | | | | | | | | | | | | | | | | | | | | | | | | | | | Fixes: #24056
* | | | | | | Merge topic 'cmake-presets-workflow-arguments'Brad King2022-10-276-3/+46
|\ \ \ \ \ \ \ | | |_|_|_|/ / | |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 7ecbe324b0 cmake --workflow: add --fresh option 7d9aa0f00c cmake::Workflow: Refactor to use enum class argument 322193afcd cmake --workflow: print usage and exit on unrecognized argument 70aef29427 cmake --workflow: print usage message Acked-by: Kitware Robot <kwrobot@kitware.com> Acked-by: buildbot <buildbot@kitware.com> Merge-request: !7825
| * | | | | | cmake --workflow: add --fresh optionKyle Edwards2022-10-263-3/+37
| | | | | | | | | | | | | | | | | | | | | | | | | | | | Fixes: #24073
| * | | | | | cmake --workflow: print usage and exit on unrecognized argumentKyle Edwards2022-10-264-0/+9
| |/ / / / / | | | | | | | | | | | | | | | | | | Issue: #24073
* | | | | | Merge topic 'xcode-swift-defs'Brad King2022-10-273-0/+34
|\ \ \ \ \ \ | | |_|_|/ / | |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | c0dd3dd2c1 Xcode: Evaluate Swift compile definitions separately Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !7826
| * | | | | Xcode: Evaluate Swift compile definitions separatelyBrad King2022-10-253-0/+34
| |/ / / / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Xcode has a separate setting for Swift compile definitions, so we can compute a dedicated value for it. Therefore we can: * Support the COMPILE_LANGUAGE generator expression for Swift-specific filters. * Avoid passing the `=value` part of definitions, which Swift does not support. This revises commit 5cb625eb2f (Xcode: Pass compile definitions to Swift, 2022-06-19, v3.25.0-rc1~493^2) and reverts commit 12c6fec6b4 (Xcode: Drop CMAKE_INTDIR= definition in Swift targets, 2022-09-30, v3.25.0-rc1~60^2~2), as the latter is no longer needed. Fixes: #24086
| * | | | Merge topic 'test-git-protocol-file' into release-3.25Brad King2022-10-211-0/+2
| |\ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 79ce0f434e Tests: Explicitly allow usage of git file-based protocol in test cases Acked-by: Kitware Robot <kwrobot@kitware.com> Acked-by: buildbot <buildbot@kitware.com> Merge-request: !7812
| * \ \ \ \ Merge topic 'cmake-presets-output-junit' into release-3.25Brad King2022-10-1910-2/+66
| |\ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | bea4ed5430 CTest: Add support for outputJUnitFile in presets 9270a02003 CMakePresets.json: Add outputJUnitFile to test presets schema 757786bb73 Tests: Add test for outputLogFile in CMakePresets.json b68c3596e7 CMakePresets.json: Disallow extra properties in test output schema Acked-by: Kitware Robot <kwrobot@kitware.com> Acked-by: scivision <michael@scivision.dev> Merge-request: !7806
| * \ \ \ \ \ Merge topic 'try_compile-CMP0128' into release-3.25Brad King2022-10-195-0/+66
| |\ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 50e90e2828 try_compile: Honor CMP0128 setting in test project Acked-by: Kitware Robot <kwrobot@kitware.com> Reviewed-by: Raul Tambre <raul@tambre.ee> Merge-request: !7803
| * \ \ \ \ \ \ Merge topic 'revert_nvcc_marking_include_as_system' into release-3.25Brad King2022-10-184-20/+2
| |\ \ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | d0e52219eb CUDA: Revert "Always mark cuda toolkit as system include" Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !7798
* | \ \ \ \ \ \ \ Merge topic 'ninja-intl-paths'Brad King2022-10-274-0/+22
|\ \ \ \ \ \ \ \ \ | | |_|_|_|_|_|/ / | |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | a12050666c Tests: Add case for ninja with non-ascii chars 02a04dd9c7 Ninja: Restore support for non-ascii paths on Windows with ninja<=1.10 Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !7833