cfce067b3f Tests: Add RunCMake.Make case for conflicting Makefile names
378c047ae3 Makefiles: Explicitly tell 'make' tool what Makefile name to use
Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !5509
The PCH header file itself is written by CMake and is not generated by
part of the buildsystem. Therefore the `GENERATED` property is not
appropriate to set because the file is always present before the build
starts. We already do not mark the PCH source file as `GENERATED`
either.
This is a preparation for solving #18399, which will no longer allow to
unset the `GENERATED` property from a source-file once it was set.
Fixes: #21437
Signed-off-by: Deniz Bahadir <dbahadir@benocs.com>
CMake did not specify the filename of the Makefile generated by it.
Due to GNU make precedence rules this means that the presence of a
GNUmakefile or makefile would take precedence over the generated
Makefile.
This is only relevant for in-source builds and only whenever an
alternative makefile by the above mentioned names exists.
This patch adds the (seemingly universal) `-f` switch and the
(hardcoded) filename (it is now hardcoded separately in these two
files):
- cmLocalUnixMakefileGenerator3.cxx
- cmGlobalUnixMakefileGenerator3.cxx
Fixes: #21418
c00a6d3967 MSVC: Do not add /GR to CMAKE_CXX_FLAGS by default
6114c8e994 MSVC: Factor out initialization of /GR flag
Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !5508
The `/GR` flag has been on by default since MSVC cl 14.0 from VS 2005.
Remove it from the default flags to make it easier for projects to pass
`/GR-` themselves to turn it off.
Projects may be using string processing to replace `/GR` with another
flag, so we cannot simply drop it. Add a policy to drop it in a
compatible way.
Fixes: #21428
Output like the following is typically not interesting at all:
LINK : program database F:\Project\Project.pdb missing; performing full link
Creating library Project.lib and object Project.exp
Fixes#21422
The Ninja `cleandead` tool does not account for implicit outputs
discovered by `dyndep` bindings and can remove Fortran `.mod` files that
are still needed. Disable the `cleandead` step when using `dyndep`
bindings.
Fixes: #21406
All the scan-related code paths are actually about dyndep rather than
explicit preprocessing. It just happens that the implementation for
Fortran requires explicit preprocessing.
In commit ce9dbceb42 (QtDialog: remove Qt4-only code, 2020-06-02,
v3.19.0-rc1~712^2~1) we removed an event filter that was thought to be
necessary only as a workaround for a bug in Qt. However, that bug was
fixed in Qt 4.5, and the file dialog still crashes as of Qt 5.14 without
the filter. Restore the workaround pending further investigation.
Fixes: #21400