Commit Graph

53269 Commits

Author SHA1 Message Date
Kitware Robot
2ff2085fb8 CMake Nightly Date Stamp 2021-06-03 00:01:11 -04:00
Brad King
cf470d8dac Merge topic 'command_target'
1cb4f592a0 add_custom_command: Target-dependent generator expression support

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !6176
2021-06-02 07:39:44 -04:00
Brad King
399a321a64 Merge topic 'get-runtime-dependencies-file-filter'
a12639e658 file(GET_RUNTIME_DEPENDENCIES): Add POST_{IN,EX}CLUDE_FILES arguments

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !6170
2021-06-02 07:38:17 -04:00
Brad King
8ff61f93d8 Merge branch 'release-3.20' 2021-06-02 07:32:31 -04:00
Brad King
b25225bb61 Merge topic 'msvc_cxx20_23'
886e27062b Clang/MSVC: C++20 final flag, C++23 support
3aaf1d91bf MSVC: C++20 final flag, C++23 support

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: Alex <leha-bot@yandex.ru>
Acked-by: Michael Hirsch <michael@scivision.dev>
Merge-request: !6174
2021-06-02 07:32:30 -04:00
Brad King
e092ded1a1 Merge topic 'msvc_cxx20_23' into release-3.20
886e27062b Clang/MSVC: C++20 final flag, C++23 support
3aaf1d91bf MSVC: C++20 final flag, C++23 support

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: Alex <leha-bot@yandex.ru>
Acked-by: Michael Hirsch <michael@scivision.dev>
Merge-request: !6174
2021-06-02 07:32:30 -04:00
Kitware Robot
2104cfe388 CMake Nightly Date Stamp 2021-06-02 00:01:11 -04:00
Kyle Edwards
a12639e658 file(GET_RUNTIME_DEPENDENCIES): Add POST_{IN,EX}CLUDE_FILES arguments 2021-06-01 09:02:33 -04:00
Brad King
02957bb589 Merge topic 'install-imported-runtime-artifacts'
f7ba3a0589 FileAPI: Populate information for IMPORTED_RUNTIME_ARTIFACTS
df7040a271 install(): Add IMPORTED_RUNTIME_ARTIFACTS mode
60e752ced8 Refactor: Move common methods into cmInstallGenerator

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !6162
2021-06-01 08:42:16 -04:00
Brad King
5eb2aa1f57 Merge topic 'link-objects-first'
3941555d93 target_link_libraries: Place $<TARGET_OBJECTS> before libraries
f530b3a267 OpenWatcom: Add infrastructure to link to object files
8a4ca110e4 cmComputeLinkInformation: Improve type safety of item IsPath member
83ad066ed1 cmComputeTargetDepends: Factor out helper to add object library dependency
7f506b95a7 cmGeneratorTarget: Refactor link item lookup
96809a8541 cmGeneratorTarget: Give temporary link impl item an explicit name
ddffbb8adb cmMakefile: Register explicit object sources more efficiently
18e42d3e63 cmGeneratorExpressionNode: Constify local variable

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !6166
2021-06-01 08:35:56 -04:00
Brad King
54cc20137c Merge topic 'binutils-consistency'
9411766c35 BinUtils: Avoid llvm-objdump versions older than Clang 9

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !6175
2021-06-01 08:35:04 -04:00
Kitware Robot
76d583accd CMake Nightly Date Stamp 2021-06-01 00:01:10 -04:00
Marc Chevrier
7124a582c7 Merge topic 'UseJava-update-doc'
a42add6cd6 UseJava: Add version for RESOURCES option

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !6178
2021-05-31 11:14:41 -04:00
Kyle Edwards
f7ba3a0589 FileAPI: Populate information for IMPORTED_RUNTIME_ARTIFACTS 2021-05-31 09:02:45 -04:00
Kyle Edwards
df7040a271 install(): Add IMPORTED_RUNTIME_ARTIFACTS mode 2021-05-31 09:02:45 -04:00
Kyle Edwards
60e752ced8 Refactor: Move common methods into cmInstallGenerator 2021-05-31 08:41:44 -04:00
Raul Tambre
1cb4f592a0 add_custom_command: Target-dependent generator expression support
OUTPUT variant with a TARGET given to allow resolving target-based generator
expressions wouldn't work because OUTPUT is resolved before generator targets
are created, i.e. FindGeneratorTargetToUse() returns nullptr.
This is a known limitation, see #21364.

Implements #21336.
2021-05-31 10:39:58 +03:00
Kitware Robot
7ed2a1a66f CMake Nightly Date Stamp 2021-05-31 00:01:22 -04:00
Marc Chevrier
a42add6cd6 UseJava: Add version for RESOURCES option 2021-05-30 14:53:05 +02:00
Kitware Robot
bf4e494773 CMake Nightly Date Stamp 2021-05-30 00:01:09 -04:00
Raul Tambre
886e27062b Clang/MSVC: C++20 final flag, C++23 support
Added in LLVM commit a8f75d497daa2684a03909d7c31d5bce11b427e1, will be released
in 13.0.
2021-05-29 19:44:10 +03:00
Brad King
6da12f2611 Merge topic 'linker-launcher'
ae108418ae Launchers: Support setting linker launchers
92c8b83641 cmNinjaNormalTargetGenerator: Fix "Language" rule variable
d93bfd95f8 Tests/CompilerLauncher: Fix file names and clarify comment

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !6092
2021-05-29 09:48:42 -04:00
Brad King
105b01b8d4 Merge topic 'fix-compile-db-crash' into release-3.20
316cbbe8d5 Makefiles: Fix CMAKE_EXPORT_COMPILE_COMMANDS crash with custom compile rule

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !6173
2021-05-29 09:45:33 -04:00
Brad King
017eeb2c09 Merge branch 'release-3.20' 2021-05-29 09:45:33 -04:00
Brad King
37cda77d16 Merge topic 'fix-compile-db-crash'
316cbbe8d5 Makefiles: Fix CMAKE_EXPORT_COMPILE_COMMANDS crash with custom compile rule

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !6173
2021-05-29 09:45:33 -04:00
Brad King
3941555d93 target_link_libraries: Place $<TARGET_OBJECTS> before libraries
Linkers always use object files explicitly specified on the command line
regardless of where they appear.  Move them to the front of the list of
linked libraries in so that symbols required by the object files can be
resolved by any library.

Issue: #22149
2021-05-29 09:28:36 -04:00
Brad King
f530b3a267 OpenWatcom: Add infrastructure to link to object files 2021-05-29 09:28:36 -04:00
Brad King
8a4ca110e4 cmComputeLinkInformation: Improve type safety of item IsPath member
Use an enum to avoid implicit conversions to bool.
2021-05-29 09:28:35 -04:00
Brad King
9411766c35 BinUtils: Avoid llvm-objdump versions older than Clang 9
Since commit cf82300a63 (BinUtils: Clarify search logic and make it more
consistent, 2021-05-27) we correctly prefer the more-specific name
`llvm-objdump` over `objdump` when using Clang.  However, this breaks
`file(GET_RUNTIME_DEPENDENCIES)` with `llvm-objdump` from Clang 8 and
below.  Avoid those older versions of `llvm-objdump`.
2021-05-29 08:09:46 -04:00
Raul Tambre
3aaf1d91bf MSVC: C++20 final flag, C++23 support
Microsoft intends to ship the final C++20 flag in VS 16.11 albeit with a few
parts missing due planned ABI breaking changes.
The current 16.11 Preview 1 toolchain version is 19.29.30129.3, so let's
restrict based on that.
2021-05-29 13:35:45 +03:00
Kitware Robot
7676e11943 CMake Nightly Date Stamp 2021-05-29 00:01:14 -04:00
Brad King
316cbbe8d5 Makefiles: Fix CMAKE_EXPORT_COMPILE_COMMANDS crash with custom compile rule
Extend the fix from commit 67e2130c96 (Makefiles: Fix
CMAKE_EXPORT_COMPILE_COMMANDS crash with custom compile rule,
2020-11-20, v3.19.1~8^2) to work for the `<FLAGS>` placeholder too.
Also fix the test case to actually enable `EXPORT_COMPILE_COMMANDS`
on the test target.

Fixes: #22261
2021-05-28 15:41:38 -04:00
Brad King
83ad066ed1 cmComputeTargetDepends: Factor out helper to add object library dependency 2021-05-28 15:25:28 -04:00
Brad King
7f506b95a7 cmGeneratorTarget: Refactor link item lookup
Look up items individually so the call sites can do something with the
result besides appending to a vector.
2021-05-28 14:27:38 -04:00
Brad King
96809a8541 cmGeneratorTarget: Give temporary link impl item an explicit name 2021-05-28 14:27:38 -04:00
Brad King
ddffbb8adb cmMakefile: Register explicit object sources more efficiently
`AddTargetObject` knows the location of object files.
2021-05-28 14:27:38 -04:00
Brad King
18e42d3e63 cmGeneratorExpressionNode: Constify local variable 2021-05-28 14:27:38 -04:00
Brad King
b9ee6db49c Merge topic 'ci-msvc-14.29-16.10' into release-3.20
59d9fa7131 gitlab-ci: Update Windows builds to MSVC 19.29-16.10 toolset

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !6172
2021-05-28 14:24:56 -04:00
Brad King
687326946b Merge branch 'release-3.20' 2021-05-28 14:24:56 -04:00
Brad King
0f43b4b896 Merge topic 'ci-msvc-14.29-16.10'
4c33b4e3b1 Merge branch 'master' into ci-msvc-14.29-16.10
59d9fa7131 gitlab-ci: Update Windows builds to MSVC 19.29-16.10 toolset

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !6172
2021-05-28 14:24:56 -04:00
Brad King
4c33b4e3b1 Merge branch 'master' into ci-msvc-14.29-16.10 2021-05-28 13:45:04 -04:00
Brad King
dd6fd62615 Merge branch 'release-3.20' 2021-05-28 12:52:42 -04:00
Brad King
ddd132072e Merge topic 'vs-16.10-map-external-warnings' into release-3.20
9054cd05e6 VS: Add flag table entries for '/external:W*' flags in VS 16.10

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !6171
2021-05-28 12:52:42 -04:00
Brad King
21832aa8fc Merge topic 'vs-16.10-map-external-warnings'
9054cd05e6 VS: Add flag table entries for '/external:W*' flags in VS 16.10

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !6171
2021-05-28 12:52:42 -04:00
Brad King
59d9fa7131 gitlab-ci: Update Windows builds to MSVC 19.29-16.10 toolset 2021-05-28 12:33:53 -04:00
Bobby D Reynolds
ae108418ae Launchers: Support setting linker launchers
Fixes: #18316
2021-05-28 12:28:43 -04:00
Bobby D Reynolds
92c8b83641 cmNinjaNormalTargetGenerator: Fix "Language" rule variable
Fixes: commit 3bc63e99e4 (Refactor: Prepare Ninja generator for multi-config, 2019-11-14, v3.17.0-rc1~290^2~3)
2021-05-28 12:28:43 -04:00
Bobby D Reynolds
d93bfd95f8 Tests/CompilerLauncher: Fix file names and clarify comment 2021-05-28 12:28:42 -04:00
Brad King
f4f80cfec6 Merge topic 'vs-toolset-version' into release-3.20
a60141feaa VS: Add special case for '-T version=14.29.16.10' under VS 16.10

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !6169
2021-05-28 12:24:52 -04:00
Brad King
f864347a83 Merge branch 'release-3.20' 2021-05-28 12:24:52 -04:00