Commit Graph

30882 Commits

Author SHA1 Message Date
Ben Boeckel ccc0466fc5 cmScanDepFormat: P1689R4: Implement source-path related fields 2021-06-10 07:55:20 -04:00
Ben Boeckel 3e5b609547 cmScanDepFormat: P1689R4: Make work-directory optional 2021-06-09 11:02:25 -04:00
Ben Boeckel aab9a5fc3e cmScanDepFormat: P1689R4: Factor out primary-output field 2021-06-09 10:51:02 -04:00
Ben Boeckel b0a8fa959c cmScanDepFormat: P1689R4: Diagnose invalid provides/requires json type 2021-06-09 10:50:56 -04:00
Ben Boeckel 82c867ad85 cmScanDepFormat: P1689R4: Flatten future-compile members into parent 2021-06-09 10:50:41 -04:00
Brad King 5c18c8a178 Merge topic 'ctest_measurement_file'
cbcb92d1cb ctest: add support for attaching files to tests at run time

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !6192
2021-06-09 08:04:23 -04:00
Brad King 1d225c5c0c Merge topic 'ci-asan'
20bc209a0c gitlab-ci: add clang asan job
19d831b03d ci: add compiler-rt to Fedora base image
fda060f030 LexerParser: Do not leak Fortran parser tokens discarded due to errors

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: Ben Boeckel <ben.boeckel@kitware.com>
Merge-request: !6200
2021-06-09 08:02:34 -04:00
Brad King 072f8b7d0e Merge topic 'presets-build-fixes'
de2b14a711 Merge branch 'backport-3.20-presets-build-fixes' into presets-build-fixes
534c40e6d8 presets: Fix buildPreset "targets" not allowing a single string
5d67632813 presets: Fix buildPreset "jobs"
93e396b402 presets: Fix buildPreset "jobs" field test case
efe7ac9022 presets: Fix buildPreset "targets" not allowing a single string

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: Kyle Edwards <kyle.edwards@kitware.com>
Merge-request: !6190
2021-06-09 07:57:34 -04:00
Brad King 7aad9e8685 Merge topic 'add_hip_language'
8514ee9b31 HIP: analyze output of `hipcc` to determine default GPU architecture
20d086f1a2 HIP: All HIP tests now run on CMake's current AMD hardware
2e86e50c2f HIP: Add HIP to all the Check* modules
947dbed0aa HIP: Automatically inject the `hip::device` runtime target
b50bfc8913 HIP: Add language to CMake
ff0d2858e1 HIP: Extract clang compiler details from hipcc
bd844387df ROCMClang: Add the ROCm toolkit derived clang compiler to CMake
590553f322 Compilers: protect use of  __has_include
...

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: Zack Galbreath <zack.galbreath@kitware.com>
Reviewed-by: Raul Tambre <raul@tambre.ee>
Acked-by: Axel Huebl <axel.huebl@plasma.ninja>
Merge-request: !6121
2021-06-09 07:53:32 -04:00
Kitware Robot b6faa5e2df CMake Nightly Date Stamp 2021-06-09 00:01:13 -04:00
Zack Galbreath cbcb92d1cb ctest: add support for attaching files to tests at run time
Allow tests to specify files to upload at runtime. Previously this was
only possible to specify at configure time with the ATTACHED_FILES
test properties.

This commit also fixes a bug in how our test data tarballs were generated
by CTest. Previously, if you tried to attach a file outside of the binary
directory, CTest would generate a tar file with a relative path, and tar
would not allow you to extract it. We resolve this problem by creating
tar files with a flat directory structure instead.

Fixes: #22284
2021-06-08 09:27:19 -04:00
Brad King fda060f030 LexerParser: Do not leak Fortran parser tokens discarded due to errors 2021-06-08 09:13:50 -04:00
Brad King acb25d50d9 Merge topic 'install-with-runtime-dependencies'
8d898cb3e1 FileAPI: Add integration for runtime dependency installers
72f2448e82 Help: Add documentation for runtime dependency installation
0c3c6acaff Tests: Add tests for new options
4910132d8c install: Add RUNTIME_DEPENDENCY_SET mode
bc8a4a06a4 install(IMPORTED_RUNTIME_ARTIFACTS): Add RUNTIME_DEPENDENCY_SET option
3e7d3c252a install(TARGETS): Add RUNTIME_DEPENDENCY_SET argument
ed3633d88c install(TARGETS): Add RUNTIME_DEPENDENCIES option
f2617cf8e6 Source: Add cmInstallRuntimeDependencySet
...

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !6186
2021-06-08 08:09:04 -04:00
Brad King 3653dc6069 Merge topic 'grd-win-objdump-newline'
100d3cb392 file(GET_RUNTIME_DEPENDENCIES): Use cmSystemTools::GetLineFromStream()

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: Brad King <brad.king@kitware.com>
Merge-request: !6198
2021-06-08 08:07:34 -04:00
Brad King d1517a4ef9 Merge topic 'compile-options-order'
8f68bcad8f Tests: Add cases verifying flag ordering rules
ccc83ce162 Help: Document order of flags from CMAKE_<LANG>_FLAGS and COMPILE_OPTIONS
df79fe055b Help: Remove incorrect "versionadded" for CMAKE_<LANG>_FLAGS_<CONFIG>
c48d2d8480 VS: Place per-source preprocessor definitions after target-wide ones

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !6187
2021-06-08 08:04:16 -04:00
Sam Freed de2b14a711 Merge branch 'backport-3.20-presets-build-fixes' into presets-build-fixes 2021-06-08 07:49:50 -04:00
Sam Freed 534c40e6d8 presets: Fix buildPreset "targets" not allowing a single string
Fixes: #22272
2021-06-08 07:47:54 -04:00
Sam Freed 5d67632813 presets: Fix buildPreset "jobs"
Fixes: #22273
2021-06-08 07:47:24 -04:00
Kitware Robot 4c940e50bf CMake Nightly Date Stamp 2021-06-08 00:01:10 -04:00
Kyle Edwards 100d3cb392 file(GET_RUNTIME_DEPENDENCIES): Use cmSystemTools::GetLineFromStream()
Fixes: #22278
2021-06-07 15:35:48 -04:00
Zack Galbreath 8514ee9b31 HIP: analyze output of hipcc to determine default GPU architecture 2021-06-07 19:25:34 +00:00
Robert Maynard 947dbed0aa HIP: Automatically inject the hip::device runtime target
Any target that might need to link to hip code needs the `hip::device`
target
2021-06-07 19:25:33 +00:00
Robert Maynard b50bfc8913 HIP: Add language to CMake 2021-06-07 19:25:33 +00:00
Sam Freed efe7ac9022 presets: Fix buildPreset "targets" not allowing a single string
Fixes: #22272
2021-06-07 13:56:44 -04:00
Kitware Robot 4ee2fc28a6 CMake Nightly Date Stamp 2021-06-07 00:01:16 -04:00
Kitware Robot 42af35136f CMake Nightly Date Stamp 2021-06-06 00:01:06 -04:00
Kitware Robot 48b7360ede CMake Nightly Date Stamp 2021-06-05 00:01:11 -04:00
Kyle Edwards 8d898cb3e1 FileAPI: Add integration for runtime dependency installers 2021-06-04 15:25:18 -04:00
Brad King ed3aad97e3 cmGeneratorTarget: Clear cached link implementation when a source is added
Adding a source file at generate time can cause the linker language or
other settings to change that affect `GetLinkImplementationLibraries`
and friends.
2021-06-04 12:14:04 -04:00
Kyle Edwards 4910132d8c install: Add RUNTIME_DEPENDENCY_SET mode 2021-06-04 08:52:02 -04:00
Kyle Edwards bc8a4a06a4 install(IMPORTED_RUNTIME_ARTIFACTS): Add RUNTIME_DEPENDENCY_SET option 2021-06-04 08:52:02 -04:00
Kyle Edwards 3e7d3c252a install(TARGETS): Add RUNTIME_DEPENDENCY_SET argument 2021-06-04 08:52:02 -04:00
Kyle Edwards ed3633d88c install(TARGETS): Add RUNTIME_DEPENDENCIES option 2021-06-04 08:52:02 -04:00
Kyle Edwards f2617cf8e6 Source: Add cmInstallRuntimeDependencySet 2021-06-04 08:52:01 -04:00
Kyle Edwards 9f6cfe7169 file: Add undocumented RPATH_SET command 2021-06-04 08:52:01 -04:00
Kyle Edwards fac22d6596 Refactor: Modify file(RPATH_*) to use cmArgumentParser 2021-06-04 08:52:01 -04:00
Kyle Edwards f73027b182 cmSystemTools: Add SetRPath() method 2021-06-04 08:52:01 -04:00
Kyle Edwards 966f7250df Refactor: Break up logic in cmSystemTools::ChangeRPath() 2021-06-04 08:52:01 -04:00
Kyle Edwards 2ef3ea394f file(GET_RUNTIME_DEPENDENCIES): Add undocumented RPATH_PREFIX option 2021-06-04 08:52:01 -04:00
Brad King 26e75b474b Merge topic 'env-toolchain-file'
6c34ed9b87 cmake: Allow CMAKE_TOOLCHAIN_FILE to be set by environment variable

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !6188
2021-06-04 07:00:43 -04:00
Brad King ccaaca4e7d Merge topic 'ci-clang-analyzer'
da14f4e19e gitlab-ci: add job to build with clang-analyzer
adc38da49f ci: add clang-analyzer to Fedora base image
b6c4d93dcd clang-analyzer: Suppress warnings in intentional use-after-move cases
c1b575f4d1 clang-analyzer: rename from scan-build in comments
dbfb50cd72 cmFileAPICodemodel: Assert input in DirectoryObject::DumpInstaller
410bf8ed4f cmStandardLevelResolver: Fix size assertion in constructor
82584b99e3 jsoncpp: Revert "Code style: add missed explicit 'this->'"

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: Ben Boeckel <ben.boeckel@kitware.com>
Merge-request: !6189
2021-06-04 06:57:51 -04:00
Kitware Robot 186e6aa66f CMake Nightly Date Stamp 2021-06-04 00:01:10 -04:00
Brad King c1b575f4d1 clang-analyzer: rename from scan-build in comments 2021-06-03 14:59:55 -04:00
Brad King dbfb50cd72 cmFileAPICodemodel: Assert input in DirectoryObject::DumpInstaller
This tells clang-analyzer that the `gen` argument is never `nullptr`.
2021-06-03 14:59:55 -04:00
Brad King 410bf8ed4f cmStandardLevelResolver: Fix size assertion in constructor
Assert sizes of the constructed vectors, not the moved-from inputs.
2021-06-03 14:59:55 -04:00
Brad King c48d2d8480 VS: Place per-source preprocessor definitions after target-wide ones
When the VS 2010+ generators were first implemented in commit 7491f52992
(ENH: first pass at VS 10, can bootstrap CMake, but many tests still
fail, 2009-06-25, v2.8.0~546), the per-source preprocessor definitions
were placed before target-wide preprocessor definitions for consistency
with the behavior of VS 9 2008 and below.  However, those generators
are not used much anymore.  Instead prefer consistency with the order
used by the Ninja and Makefile generators.
2021-06-03 10:40:47 -04:00
Kyle Edwards b613e09778 cmRuntimeDependencyArchive: Fix const-ness of method signatures 2021-06-03 08:37:25 -04:00
Brad King 6c34ed9b87 cmake: Allow CMAKE_TOOLCHAIN_FILE to be set by environment variable
When no `CMAKE_TOOLCHAIN_FILE` is explicitly specified while creating
a new build tree, check for an environment variable of the same name.
2021-06-03 08:32:44 -04:00
Brad King 9c33ff4dda Merge topic 'find_item-NO_CACHE'
87b71eec62 find_*: Add support for option NO_CACHE

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: Ben Boeckel <ben.boeckel@kitware.com>
Merge-request: !6181
2021-06-03 08:11:04 -04:00
Brad King 4297357087 Merge topic 'ctest-coverage-no-dir'
5d5610b04f CTest: Exit coverage handling early if no binary dir

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !6144
2021-06-03 08:08:42 -04:00