| Commit message (Collapse) | Author | Age | Files | Lines |
| |
|
|\
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
15004e4319 AutoRcc: Simplify error logging with utility lambda
bd6c3f8609 AutoRcc: Rebuild if the rcc executable is newer than its output
54903af84b AutoRcc: Don't read the info file time again
081104fb00 AutoRcc: Write re-generation reason and rcc command as one string
eff6e622d6 Autogen: A missing info file is a critical error
Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !3311
|
| | |
|
| |
| |
| |
| |
| | |
In AUTORCC add a test if the rcc executable is newer that the rcc output.
If the rcc executable is newer, rebuild the output.
|
| |
| |
| |
| |
| | |
In `AUTORCC` use the info file time that's available already instead of
reading it again.
|
| |
| |
| |
| |
| |
| | |
In AUTORCC with verbose output write the rcc re-generation reason and
the rcc command as on single string to avoid message chopping in concurrent
builds.
|
| | |
|
|\ \
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
26025d6e10 cmUVProcessChain: Add cmUVProcessChain
6b04d1cdc2 cmUVStreambuf: Initialize all members on construction
Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !3275
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
This class is ultimately intended as a replacement for cmsys::Process.
It spawns a series of processes using libuv, piping the output of each
command into the next.
Note: input support has not yet been implemented because write
support has not yet been implemented on cmUVStreambuf.
|
| | |
| | |
| | |
| | |
| | |
| | | |
Avoid leaving any members uninitialized after construction even if they
are later initialized before use by methods. This helps convince static
analysis tools that the members are not used uninitialized.
|
|\ \ \
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
daad51c3b7 CompileFeatures: Record when AppleClang gained full CXX14 support
Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !3293
|
| |/ /
| | |
| | |
| | |
| | |
| | |
| | | |
Use the infrastructure added by commit 646fb1a646 (CompileFeatures:
memoize C++ compilers with full language level support, 2019-03-27) to
avoid using a `try_compile` to check for C++14 feature support when the
running compiler is known to have all features.
|
|\ \ \
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
4178096493 IAR: Add architecture support for RL78, RH850 and MSP430
Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !3288
|
| | | | |
|
|\ \ \ \
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | | |
9a324cbee0 Protobuf: Fix generated source path with PROTOBUF_GENERATE_CPP_APPEND_PATH OFF
Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !3295
|
| | | | | |
|
|\ \ \ \ \
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | | |
9a34031081 Utilities/Release: Enable signing of Windows release binaries
29f4f70b41 Add undocumented option to sign CMake's own binaries on Windows
1069a3f02b Configure CMake itself with policies through CMake 3.14
Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !3296
|
| | | | | | |
|
| | | | | | |
|
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | | |
In particular, set `CMP0082` to `NEW` to interleave install commands
in the top-level directory with subdirectory installations.
|
| | | | | | |
|
| | | | | | |
|
| |_|_|_|/
|/| | | | |
|
|\ \ \ \ \
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | | |
30b873c05d FindPython*: Manage weak link for Python modules
Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: Ben Boeckel <ben.boeckel@kitware.com>
Merge-request: !3291
|
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | | |
Add new target Python::Module which take care of platform requirements
for Python module development.
Fixes: #18100
|
| | | | | | |
|
| | | | | | |
|
|\ \ \ \ \ \
| |_|/ / / /
|/| | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | | |
634f6ea159 FindBoost: Add new unit tests
a22dd5d8be FindBoost: Modernize module mode with FPHSA
a315977595 FindBoost: Fix and modernize config mode with FPHSA
24342d5ef7 FindBoost: Add vars Boost_VERSION_MACRO/MAJOR/MINOR/PATCH/COUNT
26634752d0 FindBoost: Introduce new imported target Boost::headers
d6c12f374d FindBoost: Compare versions consistently against Boost_VERSION_STRING
Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !3243
|
| | | | | | |
|
| | | | | | |
|
| | | | | |
| | | | | |
| | | | | |
| | | | | | |
Fixes: #19186
|
| | | | | | |
|
| | | | | | |
|
| |/ / / / |
|
|\ \ \ \ \
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | | |
7d50e1c611 Autogen: Refactor AUTOMOC and AUTOUIC and add source file parse data caching
Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !3290
|
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | | |
New features
------------
CMake's `AUTOMOC` and `AUTOUIC` now cache information extracted when parsing
source files in `CMakeFiles/<ORIGIN>_autogen.dir/ParseCache.txt`.
This leads to faster `<ORIGIN>_autogen` target rebuilds, because source files
will be parsed again only if they're newer than the `ParseCache.txt` file.
The parse cache will be recomputed if it is older than the CMake executable.
`AUTOMOC` and `AUTOUIC` now check if `moc` or `uic` output files are older
than the `moc` or `uic` executable. If an output file is older than the
compiler, it will be regenerated. Therefore if a new `moc` or `uic` version
is installed, all output files will be regenerated.
`AUTOMOC` and `AUTOUIC` error and warning messages are more detailed.
Internal changes
----------------
`moc` and `uic` output file names are not computed in the `_autogen`
target anymore but in `cmQtAutoGenInitializer`. This makes the available at
the configuration stage for improved dependency computations (to be done).
In `AutogenInfo.cmake`, equally sized lists for "source file names",
"source file flags" and "compiler output file names" are passed to the
`_autogen` target. This replaces the separate file lists for
`AUTOMOC` and `AUTOUIC`.
Files times are read from the file system only once by using `cmFileTime`
instances instead of `cmQtAutoGenerator::FileSystem::FileIsOlderThan` calls.
All calls to not thread safe file system functions are moved to non concurrent
fence jobs (see `cmWorkerPool::JobT::IsFence()`). This renders the
`cmQtAutoGenerator::FileSystem` wrapper class obsolete and it is removed.
Instead of composing a single large settings string that is fed to the
`cmCryptoHash`, now all setting sub strings are fed one by one to the
`cmCryptoHash` and the finalized result is stored.
The `std::mutex` in `cmQtAutoGenerator::Logger` is tagged `mutable` and most
`cmQtAutoGenerator::Logger` methods become `const`.
Outlook
-------
This patch provides the framework required to
- extract dependencies from `.ui` files in `AUTOUIC`.
These will help to address issue
#15420 "AUTOUIC: Track uic external inputs".
- generate adaptive `make` and `ninja` files in the `_autogen` target.
These will help to address issue
#16776 "AUTOUIC: Ninja needs two passes to correctly build Qt project".
- generate (possibly empty) `moc` and `uic` files for all headers instead of a
`mocs_compilation.cpp` file.
This will help to address issue
#17277 "AUTOMOC: Provide a option to allow AUTOMOC to compile individual "
"moc_x.cxx instead of including all in mocs_compilation.cxx"
|
|\ \ \ \ \ \
| |_|_|/ / /
|/| | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | | |
2a34d0ac36 ctest: Add new variable CTEST_UPDATE_VERSION_OVERRIDE
7ddac95121 Help: cross-ref and wording of docs related to ctest_update()
a0d04d8810 testing: Update terminology in ctest_update tests
Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: Zack Galbreath <zack.galbreath@kitware.com>
Merge-request: !3277
|
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | | |
Set this in a CTest script to explicitly define what the current revision
will be reported as in Update.xml.
|
| | | | | |
| | | | | |
| | | | | |
| | | | | | |
Provide better motivation for users to click through to the CTest manual
from the ctest_update command help page.
|
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | | |
Use the word "Update" instead of "Test" in ctest_update's RunCMake tests.
This change was prompted because I noticed that UpdateChangeId-check.cmake
was not actually getting called during the relevant test case. This file
also had to be updated since its purpose is to detect an expected XML element
(not an attribute).
|
| |_|_|_|/
|/| | | | |
|
|\ \ \ \ \
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | | |
1527defbfe cmMakefile: Enforce explicit use of project() command
Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !3245
|
| | |_|_|/
| |/| | |
| | | | |
| | | | | |
Fixes: 17714
|
|\ \ \ \ \
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | | |
c499eccc5c FindMPI: Make tests valid C89 by returning 0
521ea77fc0 FindMPI: Correct documentaiton for library version
c672a6a4b9 FindMPI: Add error logging
Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !3289
|
| | | | | | |
|
| | | | | | |
|
| | |_|/ /
| |/| | | |
|
|\ \ \ \ \
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | | |
41d262bd3d CTestCoverageCollectGCOV: run gcov with -x
911b97867b CTestCoverageCollectGCOV: run gcov only once
Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !3258
|
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | | |
Using "-x" we avoid overwriting .gcov files from source files in
different paths which happen to have the same name. It's similar to
"-p", but it produces shorter file names, reducing the risk of reaching
the file system limit.
|
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | | |
Running gcov once per .gcda file is not only inefficient, it also
generates wrong data since .gcov files can get overwritten and in
general gcov works with less information.
fakegcov.cmake needs to be able to handle multiple .gcda files for the
test to be meaningful.
|