diff options
author | Kai Wang <wangkai86@huawei.com> | 2020-12-18 06:47:37 (GMT) |
---|---|---|
committer | Brad King <brad.king@kitware.com> | 2021-01-05 12:48:27 (GMT) |
commit | b696f7807303b421c3f59ff2bf8229c96f09f1fa (patch) | |
tree | 246f99b964b4cf5b43178adde879025dc01c4c37 /Source/cmGlobalUnixMakefileGenerator3.h | |
parent | da2474626b8a02e957021b30453f5afc8d7246b9 (diff) | |
download | CMake-b696f7807303b421c3f59ff2bf8229c96f09f1fa.zip CMake-b696f7807303b421c3f59ff2bf8229c96f09f1fa.tar.gz CMake-b696f7807303b421c3f59ff2bf8229c96f09f1fa.tar.bz2 |
cmDepends: merge dependers of depend makefile
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>
Diffstat (limited to 'Source/cmGlobalUnixMakefileGenerator3.h')
-rw-r--r-- | Source/cmGlobalUnixMakefileGenerator3.h | 10 |
1 files changed, 10 insertions, 0 deletions
diff --git a/Source/cmGlobalUnixMakefileGenerator3.h b/Source/cmGlobalUnixMakefileGenerator3.h index 09679a7..c15f491 100644 --- a/Source/cmGlobalUnixMakefileGenerator3.h +++ b/Source/cmGlobalUnixMakefileGenerator3.h @@ -139,6 +139,12 @@ public: return this->ToolSupportsCompilerDependencies; } + // Make tool supports long line dependencies + bool SupportsLongLineDependencies() + { + return this->ToolSupportsLongLineDependencies; + } + /** Get the command to use for a target that has no rule. This is used for multiple output dependencies and for cmake_force. */ std::string GetEmptyRuleHackCommand() { return this->EmptyRuleHackCommand; } @@ -235,6 +241,10 @@ protected: // generated by the compiler bool ToolSupportsCompilerDependencies = true; + // some Make generator, such as Borland not support long line dependencies, + // we add SupportsLongLineDependencies to predicate. + bool ToolSupportsLongLineDependencies = true; + // Some make programs (Borland) do not keep a rule if there are no // dependencies or commands. This is a problem for creating rules // that might not do anything but might have other dependencies |