57e48f16f2 VS: Add Visual Studio 16 2019 generator
bdef729646 VS: Parameterize VS 2017 generator to support future versions
68d316e0cf VS: Rename VS 2017 generator sources to be version-independent
d8ed309d05 VS: Parameterize cmVSSetupAPIHelper instances with VS version
Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !2789
57862079d8 cmDocumentation: Get rid of raw pointers in AllSections map
4308eb3d16 cmDocumentationSection: Remove unused parameter in constructor
Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !2692
clang scan-build warns about YY_CURRENT_BUFFER_LVALUE being zero-
allocated, but the whole point of the macro is to know that it's
not zero. Wrap the entire file in an "#ifndef __clang_analyzer__"
block in order to suppress the warning.
this->Makefiles.empty() is called twice, leading clang scan-build
to falsely believe that the delete statement was causing a memory
leak. Fix this by using a unique_ptr to hold the temporary
cmMakefile. This also has the benefit of making the code
exception-safe.
Since commit v3.11.0-rc1~467^2 (VS,Xcode: Add CMakeLists.txt sources
without mutating targets, 2017-10-18) we do not add `CMakeLists.txt` to
target sources but instead generate references to them directly. This
accidentally dropped generation of the `.vcxproj.filters` entry for a
source group in which `CMakeLists.txt` is the only member.
Fixes: #18795
A main scenario where this is needed is when a git operation
needs the password to a private key and asks for it on the
console. Without this change, such operations can appear to
hang indefinitely with no prompt if QUIET is in effect (which it
is by default).
Another scenario this addresses is when progress of a
download or update should be shown. Without this change,
all such progress is buffered with some generators and will
only be shown at the end, which defeats the purpose of logging
any progress to begin with.
Relates: #18238
27eb7c5bdb cmake: Ensure source and binary dirs are set
a1adbc7243 cmake: Stop processing if -P option lacks file name
Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !2799
0377fe1e2b Merge branch 'backport-autogen_noqt_warning' into autogen_noqt_warning
dd39da5518 Tests: Add case for warning when AUTOMOC/UIC/RCC gets disabled
f44a0414ae Autogen: Issue a warning when AUTOMOC/UIC/RCC gets disabled.
5ae69f5919 Autogen: Issue a warning when AUTOMOC/UIC/RCC gets disabled.
Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !2787
If only the source dir is provided, the binary dir is assumed
to be the working directory. If only the binary dir is provided
and it doesn't yet have a CMakeCache.txt to provide the
source dir, then the source dir is assumed to be the working
directory. This logic was not previously being handled
correctly when -S and/or -B options were involved.
Furthermore, when both were missing, no suitable error
message was provided and an empty string was used for
the build directory.
Fixes: #18707
While an error message was being logged, processing was
continuing nonetheless except with the -P argument omitted.
This could have allowed unintended effects if the remaining
arguments formed a valid set of command line options.