Commit Graph

28782 Commits

Author SHA1 Message Date
Ben Boeckel
3ac24a8a6e cmFunctionBlocker: include missing header
This is needed to have `std::string::operator==` used in the code. Mark
it as such since older IWYU releases don't recognize this.
2020-04-29 11:16:44 -04:00
Ben Boeckel
b745b8fd36 IWYU: mark includes needed for assert statements as needed 2020-04-29 11:16:44 -04:00
Ben Boeckel
a58457a6c2 IWYU: mark cmLinkLineComputer as necessary
IWYU is not seeing that the full declaration is necessary for
`std::unique_ptr<cmLinkLineComputer>`.
2020-04-29 11:16:44 -04:00
Ben Boeckel
24a9fed5d9 IWYU: mark <cstddef> as needed
Newer IWYU is not seeing them as needed for `size_t`.
2020-04-29 11:16:44 -04:00
Ben Boeckel
1bf8938825 IWYU: add a mapping for other __decay_and_strip instances 2020-04-29 11:16:44 -04:00
Brad King
d63c442a6b Merge topic 'vs_platform_toolset'
197b4cbe18 VS: Add option for per-target PlatformToolset

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !4682
2020-04-29 10:50:42 -04:00
Julien Jemine
197b4cbe18 VS: Add option for per-target PlatformToolset
Add a `VS_PLATFORM_TOOLSET` target property to set `PlatformToolset` in
the `.vcxproj` file for specific targets.  Document that this is safe
only when the named toolset uses the same underlying compiler as the
primary toolset.

Fixes: #17429
2020-04-29 07:35:57 -04:00
Kitware Robot
fa3acd14ee CMake Nightly Date Stamp 2020-04-29 00:01:16 -04:00
Brad King
4a0fbba1f2 Merge topic 'stdstring-fformat'
4fd28b9911 cmOutputConverter::GetFortranFormat(): delete const char* overload

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !4671
2020-04-28 07:17:56 -04:00
Brad King
d7a1d0dc43 Merge topic 'cmake-gui-empty-compiler'
7a0c17f704 cmake-gui: Do not pass CMAKE_{C,CXX}_COMPILER items to cmake if empty

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !4664
2020-04-28 07:17:13 -04:00
Brad King
75f7b66517 Merge topic 'wmake-null'
511a03f933 Watcom WMake: Use wmake internal %null command for empty command list

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !4670
2020-04-28 07:16:18 -04:00
Brad King
0ce29c7c1d Merge topic 'makefile-objc'
c4d09fdc6d Makefiles: Add Objective C/C++ compilations to compile_commands.json
98aa628f0b Makefiles: Scan Objective C/C++ preprocessor dependencies

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !4675
2020-04-28 07:10:07 -04:00
Brad King
c4d09fdc6d Makefiles: Add Objective C/C++ compilations to compile_commands.json
Fixes: #20634
2020-04-28 07:03:07 -04:00
Brad King
98aa628f0b Makefiles: Scan Objective C/C++ preprocessor dependencies
Fixes: #20635
2020-04-28 07:03:07 -04:00
Kitware Robot
ee1689f961 CMake Nightly Date Stamp 2020-04-28 00:01:13 -04:00
Jiri Malak
7a0c17f704 cmake-gui: Do not pass CMAKE_{C,CXX}_COMPILER items to cmake if empty
If C or C++ compiler is not specified in the initial dialog, do not pass
`CMAKE_C_COMPILER` or `CMAKE_CXX_COMPILER` cache entries for
cross-compilation setup.  Instead allow the normal search for the
compiler to proceed.
2020-04-27 11:12:25 -04:00
Jiri Malak
511a03f933 Watcom WMake: Use wmake internal %null command for empty command list
wmake internal command %null realy do "nothing".

It is designed to use in command lists.
2020-04-27 11:05:19 -04:00
Brad King
0e3a2d9b16 Merge topic 'ccmake-custom-colors'
671fe28313 ccmake: Improve coloring, allow customization
f56a695440 ccmake: Rename cmCursesColor::{Options => Choice}

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !4629
2020-04-27 10:40:25 -04:00
Vitaly Stakhovsky
4fd28b9911 cmOutputConverter::GetFortranFormat(): delete const char* overload 2020-04-27 07:38:47 -04:00
Kitware Robot
c77353e11c CMake Nightly Date Stamp 2020-04-27 00:01:10 -04:00
Kitware Robot
eadafe2ebc CMake Nightly Date Stamp 2020-04-26 00:01:20 -04:00
Kitware Robot
a4071b53da CMake Nightly Date Stamp 2020-04-25 00:01:14 -04:00
Matthew Woehlke
671fe28313 ccmake: Improve coloring, allow customization
Change the default color for strings from BLUE (which is nearly
illegible on any terminals using the standard color palette which has
been around since at least CGA, almost 40 years ago) to CYAN. Add
ability to customize the colors via an environment variable (inspired by
LS_COLORS and using similar syntax).

Fixes: #20596
2020-04-24 11:21:13 -04:00
Matthew Woehlke
f56a695440 ccmake: Rename cmCursesColor::{Options => Choice}
Rename the internal name for the color applied to multiple-choice
options to avoid use of the overloaded term 'option'.
2020-04-24 09:37:01 -04:00
Brad King
aaf0189cf0 Merge topic 'ninja-order-only-fix'
d837f8b6fb Merge branch 'master' into ninja-order-only-fix
b45976fe10 Ninja: Remove config suffix from order-only target

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !4654
2020-04-24 08:34:42 -04:00
Kitware Robot
df69835a79 CMake Nightly Date Stamp 2020-04-24 00:01:12 -04:00
Kyle Edwards
d837f8b6fb Merge branch 'master' into ninja-order-only-fix 2020-04-23 12:47:22 -04:00
Kyle Edwards
b45976fe10 Ninja: Remove config suffix from order-only target
Fixes: #20621
2020-04-23 12:46:58 -04:00
Brad King
61ac8e6dfa Merge topic 'remove-documentation-module'
306a1ba960 Modules/Documentation: remove
ad4487a96a cmIncludeCommand: add infrastructure for deprecated modules

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !4617
2020-04-23 09:15:24 -04:00
Kitware Robot
becf3b237e CMake Nightly Date Stamp 2020-04-23 00:01:11 -04:00
Ben Boeckel
306a1ba960 Modules/Documentation: remove
This is an old module from when VTK and other Kitware projects drove the
addition of commands and modules into CMake itself. Modern VTK doesn't
need this module and it can be ignored.

This module is kept around so that the ancient VTK versions which use it
are not broken by it. VTK itself stopped using the module in 2012 and
the last usage by an example in VTK was removed in 2020.

Fixes: #20591
2020-04-22 10:46:03 -04:00
Brad King
d9eb9e785e Merge topic 'win-user-manifest-rc'
7ca13e04fa Windows: Merge user-provided manifests into compiled resource

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !4484
2020-04-22 09:15:59 -04:00
Brad King
f9fbc78cd6 Merge topic 'ctest_stop_on_failure_16628'
e89aeba5c4 ctest: add option --stop-on-failure

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !4630
2020-04-22 08:38:33 -04:00
Brad King
acecd76f03 Merge topic 'update-kwsys'
8191d39119 Merge branch 'upstream-KWSys' into update-kwsys
e833e660ef KWSys 2020-04-21 (44086372)

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !4646
2020-04-22 08:33:22 -04:00
Brad King
8c00f5ef0a Merge topic 'apple-merge-same-sysroot' into release-3.17
3a7d1e9592 Apple: Merge per-arch sysroot parameters if all are the same

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !4647
2020-04-22 08:32:02 -04:00
Brad King
5a57cec2f4 Merge topic 'apple-merge-same-sysroot'
3a7d1e9592 Apple: Merge per-arch sysroot parameters if all are the same

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !4647
2020-04-22 08:32:02 -04:00
Brad King
c4ccf23186 Merge topic 'cpack-symlinks' into release-3.17
bcc5cd44ed CPack: Do not recurse through directory symlinks

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !4637
2020-04-22 08:30:53 -04:00
Brad King
fb5d24fa3c Merge topic 'cpack-symlinks'
bcc5cd44ed CPack: Do not recurse through directory symlinks

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !4637
2020-04-22 08:30:53 -04:00
Kitware Robot
8a8ebcdd70 CMake Nightly Date Stamp 2020-04-22 00:01:17 -04:00
Ben Boeckel
ad4487a96a cmIncludeCommand: add infrastructure for deprecated modules 2020-04-21 11:27:27 -04:00
Gregor Jasny
3a7d1e9592 Apple: Merge per-arch sysroot parameters if all are the same
Since commit a9b41195d2 (Handle multi-arch sysroots on Apple platforms,
2019-07-26, v3.17.0-rc1~287^2), CMake supports "fat" builds with
different sysroots. Those are passed to the compiler with the
`-Xarch_<xyz>` parameter.

Unfortunately this breaks the Compiler Cache (ccache) because
it does not support those compiler flags:

    https://github.com/ccache/ccache/blob/v3.7.9/src/ccache.c#L2700-L2705

Restore the caching ability for certain "fat" build configurations (e.g.
`arm64` and `armv7`) where the sysroot is the same for all selected
architectures and thus a plain `-isysroot` parameter could be used.
2020-04-21 11:18:12 -04:00
Brad King
9ebf3a62b6 Merge topic 'refactor_cmCacheManager'
80d8b20351 cmCacheManager: Cleanup CacheIterator interface

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !4628
2020-04-21 08:18:47 -04:00
Kenney Phillis
7ca13e04fa Windows: Merge user-provided manifests into compiled resource
Previously we merged user-provided manifests only into the manifest file
given to the linker.  Merge them into the manifest file that is compiled
as a resource too.
2020-04-21 08:10:45 -04:00
Brad King
bcc5cd44ed CPack: Do not recurse through directory symlinks
Extend the fix from commit 7b8dcdd173 (CPack: Do not recurse through
directory symlinks (#12284), 2011-08-27, v2.8.6~55^2) to more places in
CPack.

Issue: #12284
2020-04-21 07:28:06 -04:00
Brad King
8191d39119 Merge branch 'upstream-KWSys' into update-kwsys
# By KWSys Upstream
* upstream-KWSys:
  KWSys 2020-04-21 (44086372)
2020-04-21 07:15:22 -04:00
Kitware Robot
441a5f73c0 CMake Nightly Date Stamp 2020-04-21 00:01:15 -04:00
Johnny Jazeix
e89aeba5c4 ctest: add option --stop-on-failure
To stop the tests once one has failed

Fixes: #16628
2020-04-20 23:05:15 +02:00
Brad King
5d32699975 Merge topic 'device-link'
4248bb452a CUDA: Device linking use now link options
ec48e023f6 CUDA: Add information for LINKER: pattern translation
3fdae5acaa Genex: Add generator expressions $<DEVICE_LINK> and $<HOST_LINK>
38332fc4fa cmGeneratorExpressionDAGChecker: introduce method Top()

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: Robert Maynard <robert.maynard@kitware.com>
Merge-request: !4577
2020-04-20 08:14:16 -04:00
Brad King
ab61ee1b5b Merge topic 'update-kwsys'
b6ce851bef Merge branch 'upstream-KWSys' into update-kwsys
363ec4f585 KWSys 2020-04-17 (54845345)

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !4621
2020-04-20 08:03:55 -04:00
Brad King
be88264abe Merge topic 'ninja-fortran-doc' into release-3.17
fa31c195b8 Ninja: Document that Fortran support is available with Ninja 1.10+

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !4626
2020-04-20 07:53:49 -04:00