summaryrefslogtreecommitdiff
path: root/Source/cmDependsCompiler.cxx
Commit message (Collapse)AuthorAgeFilesLines
* Link step: use linker dependency linker fileMarc Chevrier2023-05-031-10/+14
| | | | | | Based on work done by @ben.boeckel (!8051) Fixes: #22217
* add_custom_command(DEPFILE): ensure all dependencies are taken into accountMarc Chevrier2022-01-161-2/+7
|
* Merge branch 'backport-3.20-makefile-normalize-depfile'Brad King2021-07-021-1/+3
|\
| * Makefiles: Normalize compiler-generated depfile pathsMarc Chevrier2021-07-021-1/+3
| | | | | | | | | | | | | | | | | | | | | | | | Even though Makefile generators pass source files and include directories by absolute path to the compiler, the compiler may generate depfile paths relative to the current working directory. For example, `ccache` with `CCACHE_BASEDIR` may transform paths this way. When reading a depfile, convert relative dependencies to absolute paths before placing them in `compiler_depend.make`, which is later evaluated in the top-level build directory. Fixes: #22364
* | cmLocalGenerator: Factor out relative path conversion helpersBrad King2021-05-131-8/+6
|/ | | | | | Most calls to `MaybeConvertToRelativePath` use one of our common work directories (e.g. top of the build tree) as the local path. Add helpers for each of the common cases to simplify and clarify call sites.
* Ninja: add_custom_command(DEPFILE): Ensure dependencies consistencyMarc Chevrier2021-01-191-11/+2
| | | | Fixes: #21694
* Merge topic 'explicit-this-fix'Brad King2021-01-061-2/+2
|\ | | | | | | | | | | | | 209daa20b2 Code style: add missed explicit 'this->' Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !5400
| * Code style: add missed explicit 'this->'Oleksandr Koval2021-01-051-2/+2
| | | | | | | | | | CMake uses explicit 'this->' style. Using custom clang-tidy check we can detect and fix places where 'this->' was missed.
* | cmDepends: merge dependers of depend makefileKai Wang2021-01-051-5/+14
|/ | | | | | | | | | | Since one depender has multiple dependees, depend makefile generated same depender line by line, to reduce file size and refine make file parse speed, merge same dependers to one. And add a testcase for large depend.make which generated source file includes 20000 header files and run build and incremental build Signed-off-by: Wangkai <wangkai86@huawei.com> Signed-off-by: Zhaoyingdong <zhaoyingdong@huawei.com>
* Makefiles: Add support of DEPFILE for add_custom_commandMarc Chevrier2020-12-231-47/+86
| | | | | Issue: #20286 Fixes: #21415
* cmDependsCompiler: rely now on cmGccDepfileReader for depfile parserMarc Chevrier2020-12-111-79/+14
| | | | | | To avoid duplicate effort of depfile parsing and enhance robustness of parsing against mal-formed depfiles in preparation of DEPFILE option support of add_custom_command command for makefiles generators.
* Makefiles dependencies: enhance robustness of deps parserMarc Chevrier2020-12-031-1/+12
|
* Makefiles Generators: use compiler for dependencies generationMarc Chevrier2020-11-291-0/+267
Each source compilation generates a dependencies file. These dependencies files are consolidated in one file per target. This consolidation is done as part of command 'cmake -E cmake_depends` launched before evaluation of makefile dependency graph. The consolidation uses the same approach as `CMake` dependencies management. Fixes: #21321