summaryrefslogtreecommitdiffstats
path: root/Tests
Commit message (Collapse)AuthorAgeFilesLines
* Revise C++ coding style using clang-format-15Kitware Robot2023-01-1841-54/+66
| | | | | | | | | | | | | | Run the `clang-format.bash` script to update all our C and C++ code to a new style defined by `.clang-format`. Use `clang-format` version 15. * If you reached this commit for a line in `git blame`, re-run the blame operation starting at the parent of this commit to see older history for the content. * See the parent commit for instructions to rebase a change across this style transition commit. Fixes: #24315
* Merge topic 'configure-log'Brad King2023-01-188-1/+50
|\ | | | | | | | | | | | | | | a78cba5197 message: Add CONFIGURE_LOG mode to record a message in the configure log 645671d36f Help: Document configure log behavior in try_compile and try_run Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !8080
| * message: Add CONFIGURE_LOG mode to record a message in the configure logBrad King2023-01-188-1/+50
| | | | | | | | | | | | | | Provide a replacement for `file(APPEND .../CMake{Output,Error}.log)` that records messages in the configure log. Issue: #23200
* | clang-format.bash: Use generic clang-format attributeBrad King2023-01-186-6/+6
| | | | | | | | | | | | | | Specify the clang-format version in the attribute value instead of its name. Issue: #24315
* | Merge topic 'add_visbility_flags_to_device_link_line'Brad King2023-01-186-13/+32
|\ \ | | | | | | | | | | | | | | | | | | 0c56bdf91e CUDA: device linking obeys CMAKE_CUDA_VISIBILITY_PRESET setting Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !8065
| * | CUDA: device linking obeys CMAKE_CUDA_VISIBILITY_PRESET settingRobert Maynard2023-01-166-13/+32
| | | | | | | | | | | | Fixes #24272
* | | Merge topic 'typo-fix'Brad King2023-01-181-1/+1
|\ \ \ | |_|/ |/| | | | | | | | | | | | | | | | | 99614e06be Source: Fix a few typos Acked-by: Kitware Robot <kwrobot@kitware.com> Acked-by: buildbot <buildbot@kitware.com> Merge-request: !8078
| * | Source: Fix a few typosVitaly Stakhovsky2023-01-171-1/+1
| | |
* | | Merge topic 'configure-log'Brad King2023-01-1716-0/+144
|\ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 48292c8624 try_compile: Record stack of in-progess checks in configure log d4bf7d80c6 try_compile: Add a NO_LOG option to skip recording in the configure log 9d9e8450a8 try_compile: Add optional LOG_DESCRIPTION to record in configure log 65ed5c2ca8 try_compile: Report underlying error when COPY_FILE fails 0418efb7ad Tests: Add explicit ConfigureLog case to RunCMake.try_compile 189557bd74 cmake: Make entire in-progress check stack available internally 96ce3581ab Help: Clarify backtrace order in cmake-configure-log(7) Acked-by: Kitware Robot <kwrobot@kitware.com> Acked-by: buildbot <buildbot@kitware.com> Merge-request: !8072
| * | | try_compile: Record stack of in-progess checks in configure logBrad King2023-01-167-0/+42
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Many `try_compile` and `try_run` calls occur inside check modules between `message(CHECK_START)` and `message(CHECK_{PASS,FAIL})` pairs. Add a field to configure log entries to report this context. Issue: #23200
| * | | try_compile: Add a NO_LOG option to skip recording in the configure logBrad King2023-01-162-0/+10
| | | |
| * | | try_compile: Add optional LOG_DESCRIPTION to record in configure logBrad King2023-01-1610-0/+32
| | | | | | | | | | | | | | | | Issue: #23200
| * | | Tests: Add explicit ConfigureLog case to RunCMake.try_compileBrad King2023-01-165-0/+60
| |/ /
* | | Merge topic 'ctest-no-tests-action-env-var'Brad King2023-01-179-0/+16
|\ \ \ | |/ / |/| | | | | | | | | | | | | | | | | 0661de58d8 ctest(1): Add CTEST_NO_TESTS_ACTION env var Acked-by: Kitware Robot <kwrobot@kitware.com> Acked-by: buildbot <buildbot@kitware.com> Merge-request: !8044
| * | ctest(1): Add CTEST_NO_TESTS_ACTION env varfriendlyanon2023-01-139-0/+16
| |/ | | | | | | | | This environment variable provides a default value for the --no-tests=<action> command line argument.
* | Merge topic 'vs-masm-flags'Brad King2023-01-132-0/+8
|\ \ | | | | | | | | | | | | | | | | | | 81f670fa83 VS: Honor compile options for MASM Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !8068
| * | VS: Honor compile options for MASMBrad King2023-01-122-0/+8
| |/ | | | | | | | | | | | | | | The Ninja and Makefile generators honor `target_compile_options` and friends for MASM `.asm` sources. Teach the VS generator to honor them too for consistency. Fixes: #24289
* | Merge topic 'fea/add-copy_directory_if_different'Brad King2023-01-131-0/+9
|\ \ | | | | | | | | | | | | | | | | | | | | | c1170b5602 cmake: Add -E copy_directory_if_different Acked-by: Kitware Robot <kwrobot@kitware.com> Acked-by: buildbot <buildbot@kitware.com> Merge-request: !8059
| * | cmake: Add -E copy_directory_if_differentRobert Maynard2023-01-121-0/+9
| |/ | | | | | | Fixes #21584
* | Merge topic 'try_run-cross-compile'Brad King2023-01-132-0/+10
|\ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | 5cd5c8cac5 Merge branch 'backport-try_run-cross-compile' into try_run-cross-compile 0191e8b512 try_run: Do not require unrequested stdout/stderr when cross-compiling 2f85ec0a37 try_run: Avoid crash in keyword-dispatched signature when cross-compiling Acked-by: Kitware Robot <kwrobot@kitware.com> Acked-by: buildbot <buildbot@kitware.com> Merge-request: !8066
| * \ Merge branch 'backport-try_run-cross-compile' into try_run-cross-compileBrad King2023-01-122-0/+10
| |\ \ | | |/ | |/|
| | * try_run: Avoid crash in keyword-dispatched signature when cross-compilingBrad King2023-01-122-0/+10
| | | | | | | | | | | | | | | | | | | | | | | | Since commit aa9220d3a0 (try_compile: Add keyword-dispatched signature, 2022-09-02, v3.25.0-rc1~178^2) the `DoNotRunExecutable` code path may be reached with no single source-file argument. Do not assume it exists. Fixes: #24295
* | | Merge topic 'implicit-includes'Brad King2023-01-132-4/+4
|\ \ \ | |/ / |/| | | | | | | | | | | | | | | | | 607bccb4ef Restore implicit include directory extraction for adaptive relative paths Acked-by: Kitware Robot <kwrobot@kitware.com> Acked-by: buildbot <buildbot@kitware.com> Merge-request: !8067
| * | Restore implicit include directory extraction for adaptive relative pathsBrad King2023-01-122-4/+4
| |/ | | | | | | | | | | | | | | | | | | | | | | | | | | Update the logic added by commit ef41d49812 (Fix implicit include directory extraction for adaptive relative paths, 2019-04-08, v3.14.2~5^2) to account for the new `try_compile` work directory used for the ABI check since commit 2edf0fc6d7 (Modules: Use new keyword-dispatched try_compile signature, 2022-09-13, v3.25.0-rc1~144^2). Paths relative to the work directory will now have one more `../` in them, so update the test data to match. Fixes: #24279
| * Merge branch 'test-git-local-defaultBranch' into release-3.25Brad King2023-01-111-1/+1
| |\ | | | | | | | | | Merge-request: !8060
| | * Tests: Fix CTest.UpdateGIT under repo-local defaultBranch configBrad King2023-01-111-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | The default branch detection added by commit 26ec2e2b0c (Tests: Update CTest.UpdateGIT test for custom defaultBranch, 2020-12-02, v3.20.0-rc1~355^2) fails if the test is run inside a Git work tree whose `.git` directory configures a `defaultBranch` that is different from the global or system-wide value. Fix the detection to ignore the locally configured value so that we match the `git init` decision.
* | | FileAPI: Add "configureLog" object kindBrad King2022-12-1710-1/+64
| | | | | | | | | | | | | | | | | | | | | Provide clients with a way to get a known set of configure log event versions. Issue: #23200
* | | Merge topic 'cxxmodules-clang-update'Brad King2022-12-178-8/+8
|\ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 5dc17d0a7a gitlab-ci: update to new Clang CI image for C++ modules e84fcbcb0b cxxmodules: support new round of Clang patches 5e35913382 ci: update `llvm` snapshot to newest patch revisions Acked-by: Kitware Robot <kwrobot@kitware.com> Acked-by: buildbot <buildbot@kitware.com> Merge-request: !8019
| * | | cxxmodules: support new round of Clang patchesBen Boeckel2022-12-158-8/+8
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | These patches now support the `-MF` output, so remove the `none` support added just for the old patchset which did not use it. Also update the flag name to `-fmodule-output=`. Due to the new Clang module mapper flag, use a new experimental support UUID as well.
* | | | Merge topic 'configure-log'Brad King2022-12-178-31/+195
|\ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 6c40e0b25e ConfigureLog: Version individual events instead of the whole log 048a02d5bb ConfigureLog: Log try_compile and try_run checks 746c776caf ConfigureLog: Add infrastructure for structured configure event logging e8b8d82cbf Tests: Generalize RunCMake expectation component names 8d29a0bda6 cmTryRunCommand: Factor out stdout/stderr capture conditions fdda4095a3 cmCoreTryCompile: Return more semantic information from compile step Acked-by: Kitware Robot <kwrobot@kitware.com> Tested-by: buildbot <buildbot@kitware.com> Merge-request: !8017
| * | | | ConfigureLog: Version individual events instead of the whole logBrad King2022-12-162-13/+7
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | In order to support multiple log versions without buffering the entire log, move versioning to the level of individual events. Multiple versions of an event may then be logged consecutively. Issue: #23200
| * | | | ConfigureLog: Log try_compile and try_run checksMatthew Woehlke2022-12-167-0/+166
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Add configure log events for `try_compile` and `try_run` results. Issue: #23200
| * | | | ConfigureLog: Add infrastructure for structured configure event loggingMatthew Woehlke2022-12-161-5/+13
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Add infrastructure for a "configure log". Use YAML for a balance of machine- and human-readability to records details of configure-time events in a structured format. Teach the RunCMake test framework to support matching the configure log. Issue: #23200
| * | | | Tests: Generalize RunCMake expectation component namesMatthew Woehlke2022-12-141-31/+27
| |/ / / | | | | | | | | | | | | | | | | | | | | Do not assume all the component names start in "std". Co-authored-by: Brad King <brad.king@kitware.com>
* | | | Merge topic 'genex-config-mapping-imported-targets'Brad King2022-12-162-0/+8
|\ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | e455265d72 Genex: Fix CONFIG on imported target with no explicit mapping Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !8016
| * | | | Genex: Fix CONFIG on imported target with no explicit mappingLuis Caro Campos2022-12-162-0/+8
| |/ / / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | When evaluating the `$<CONFIG>` genex on an imported target has the `IMPORTED_CONFIGURATIONS` property set, the current project has a config that does not match any of those, and no explicit configuration mappings are defined, fall back to the same configuration as `IMPORTED_LOCATION`. Fixes: #24222
* | | | ASM_MARMASM: Populate MSVC debug information format abstraction tableBrad King2022-12-151-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | In commit 3166547cf6 (ASM_MARMASM: Add support for Microsoft ARM assembler language, 2022-10-14) we overlooked populating the runtime library selection flags for the Microsoft ARM assembler, needed since commit 0e96a20478 (MSVC: Add abstraction for debug information format, 2022-08-25, v3.25.0-rc1~142^2~1). Its compiler id is `MSVC`, so our generators expect the table to be populated. It only supports `Embedded` debug info. Use empty flags for the other formats. Without this fix, enabling the `ASM_MARMASM` language with policy `CMP0141` set to `NEW` causes an error due to the missing table entries. Issue: #24249
* | | | Merge branch 'backport-masm-debug-format' into masm-debug-formatBrad King2022-12-151-1/+1
|\ \ \ \ | |/ / / |/| / / | |/ /
| * | ASM_MASM: Populate MSVC debug information format abstraction tableBrad King2022-12-151-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | In commit 0e96a20478 (MSVC: Add abstraction for debug information format, 2022-08-25, v3.25.0-rc1~142^2~1) we overlooked populating the runtime library selection flags for the Microsoft assembler. Its compiler id is `MSVC`, so our generators expect the table to be populated. It only supports `Embedded` debug info. Use empty flags for the other formats. Without this fix, enabling the `ASM_MASM` language with policy `CMP0141` set to `NEW` causes an error due to the missing table entries. Fixes: #24249
* | | Merge topic 'COMPILE_DEFINITIONS-property-cleanup'Brad King2022-12-1411-0/+83
|\ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | 7480fa0a5f COMPILE_DEFINITIONS property: ensure leading -D is removed in all cases Acked-by: Kitware Robot <kwrobot@kitware.com> Tested-by: buildbot <buildbot@kitware.com> Merge-request: !8004
| * | | COMPILE_DEFINITIONS property: ensure leading -D is removed in all casesMarc Chevrier2022-12-1311-0/+83
| | | | | | | | | | | | | | | | Fixes: #24186
* | | | FindCUDAToolkit: Support the new `nvJitLink` library in CUDA 12Robert Maynard2022-12-122-0/+7
|/ / /
* | | Merge topic 'file-make-directory-descriptive-errors'Brad King2022-12-094-0/+14
|\ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | efae1ab68b file(MAKE_DIRECTORY): Provide a more descriptive error message Acked-by: Kitware Robot <kwrobot@kitware.com> Acked-by: buildbot <buildbot@kitware.com> Merge-request: !8003
| * | | file(MAKE_DIRECTORY): Provide a more descriptive error messageTerence Noone2022-12-084-0/+14
| | | | | | | | | | | | | | | | | | | | | | | | Previously, MAKE_DIRECTORY would print `problem creating directory: {}`, which was very unhelpful for debugging. Extend the message with the OS error string.
* | | | Merge topic 'vs-version-var'Brad King2022-12-082-0/+3
|\ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 5ce0f03cce VS: Add a variable to report the Visual Studio version build number 55529c5e93 Help: Factor out VS Build Number components document fragment Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !8000
| * | | | VS: Add a variable to report the Visual Studio version build numberBrad King2022-12-072-0/+3
| |/ / / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | VS 2017 and above come with a Visual Studio Installer tool that tracks four-component Visual Studio version numbers. We already detect the VS version number because it is needed to make some generation decisions. Provide the number to projects in a `CMAKE_VS_VERSION_BUILD_NUMBER` variable so they can use it similarly. Fixes: #24230
* | | | Tests: Teach RunCMake.FindBoost to avoid finding an external BoostBrad King2022-12-071-0/+4
|/ / / | | | | | | | | | | | | The `ConfigModeNotFound` case does not expect to find a Boost. Avoid accidentally finding one on the host.
* | | Merge topic 'vs-dotnet-sdk-xaml-resx'Brad King2022-12-079-0/+351
|\ \ \ | | | | | | | | | | | | | | | | | | | | | | | | c445dd2797 VS: Add Xaml and Resx files to .Net SDK style projects Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !7991
| * | | VS: Add Xaml and Resx files to .Net SDK style projectsQuentin Berthet2022-12-069-0/+351
| | | | | | | | | | | | | | | | | | | | | | | | Improve parity with classic MSBuild projects. Fixes: #23415
* | | | Merge topic 'clang-tidy-export-fixes-dir'Brad King2022-12-0712-0/+191
|\ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 232467eb1c clang-tidy: add <LANG>_CLANG_TIDY_EXPORT_FIXES_DIR property Acked-by: Kitware Robot <kwrobot@kitware.com> Acked-by: buildbot <buildbot@kitware.com> Merge-request: !7982