When using a file system which only has second resolution timestamps,
there is a reasonably high likelihood of timestamps being the same.
The IS_NEWER_THAN test returns true when timestamps are the same,
so don't retry copying the PCH PDB file when they match exactly.
9945b3b565 VS: Restore support for PCH in CXX but not C within once target
d9fd32b3b3 cmVisualStudio10TargetGenerator: Refactor per-source PCH logic
Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !5836
Fix logic from commit 9df1f33c9a (VisualStudio: move PCH rules to
projects when possible., 2020-10-15, v3.20.0-rc1~638^2) to explicitly
disable PCH on sources that should not use the target-wide PCH rules.
Fixes: #21827
79eaa908dc cmListCommand: add a policy for failing on invalid indicies
1f1fdff7fa cmListCommand: prefer strtol to atoi
9934a97642 cmListCommand: refactor out index argument parsing
Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: Michael Hirsch, Ph.D. <michael@scivision.dev>
Merge-request: !5817
In d16830324f (CPackIFW: Improve warning and docs for show page list
option, 2021-02-14), code was added to report the current QtIFW version.
That code didn't check that there was a Generator object before using it,
resulting in a scanbuild warning about a potential null pointer dereference.
Add a check and output a more general warning message if we don't have
the current QtIFW version available to report.
This fixes the issue when two .ui files have the same name,
but different locations. In this case, Ninja deps file only
contains .ui file that was found first. So <src>/xxx/yyy.ui
and <src>/yyy.ui were processed as a same file by AUTOUIC.
The cppcheck warnings about uninitialised variables are likely harmless,
since they are initialised in ParseResource() anyway. Fix the warnings
anyway to reduce linting noise. The warning about a single argument
non-explicit constructor is worth fixing in general.
e517c1beb6 Configure CMake itself with policies through CMake 3.19
141dbf2c19 export: Increase maximum policy version in exported files to 3.19
58ea0d1255 Add deprecation warnings for policies CMP0081 and below
Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !5798
The files generatd by `install(EXPORT)` and `export()` commands
are known to work with policies as of CMake 3.19, so enable them
in sufficiently new CMake versions.
The OLD behaviors of all policies are deprecated, but only by
documentation. Add an explicit deprecation diagnostic for policies
introduced in CMake 3.13 and below to encourage projects to port
away from setting policies to OLD.
Since commit 6a6f1d1edd (CTest: exit nonzero after
message(SEND_ERROR|FATAL_ERROR), 2020-04-03, v3.19.0-rc1~260^2), `ctest`
no longer runs tests if there are errors before the full set of tests is
defined. Such errors were previously treated more like warnings.
The change exposed some cases where we were issuing an error message but
proceeding to run tests anyway. The above commit downgraded one such
case (missing `DartConfiguration.tcl`) to a warning explicitly in order
to restore its former warning-like semantics.
Downgrade the Update step's diagnostic about modified or conflicting
files to a warning for the same reason.
Fixes: #21783
4d46b1401f add_library(): Allow imported object libraries with multi-arch
1a915e8953 Tests: TargetObjects does not need any languages enabled
Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !5771