MCPcopy Create free account
hub / github.com/Kitware/CMake / HasLinkDependencyFile

Method HasLinkDependencyFile

Source/cmGeneratorTarget.cxx:5623–5645  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

5621}
5622
5623bool cmGeneratorTarget::HasLinkDependencyFile(std::string const& config) const
5624{
5625 if (this->GetType() != cmStateEnums::EXECUTABLE &&
5626 this->GetType() != cmStateEnums::SHARED_LIBRARY &&
5627 this->GetType() != cmStateEnums::MODULE_LIBRARY) {
5628 return false;
5629 }
5630
5631 if (this->Target->GetProperty("LINK_DEPENDS_NO_SHARED").IsOn()) {
5632 // Do not use the linker dependency file because it includes shared
5633 // libraries as well
5634 return false;
5635 }
5636
5637 std::string const depsUseLinker{ "CMAKE_LINK_DEPENDS_USE_LINKER" };
5638 auto linkLanguage = this->GetLinkerLanguage(config);
5639 std::string const langDepsUseLinker{ cmStrCat("CMAKE_", linkLanguage,
5640 "_LINK_DEPENDS_USE_LINKER") };
5641
5642 return (!this->Makefile->IsDefinitionSet(depsUseLinker) ||
5643 this->Makefile->IsOn(depsUseLinker)) &&
5644 this->Makefile->IsOn(langDepsUseLinker);
5645}
5646
5647bool cmGeneratorTarget::IsFrameworkOnApple() const
5648{

Callers 6

WriteCommonCodeRulesMethod · 0.80
AppendTargetDependsMethod · 0.80
WriteLinkRuleMethod · 0.80
WriteLinkStatementMethod · 0.80

Calls 6

GetTypeMethod · 0.95
GetLinkerLanguageMethod · 0.95
IsDefinitionSetMethod · 0.80
cmStrCatFunction · 0.70
IsOnMethod · 0.45
GetPropertyMethod · 0.45

Tested by

no test coverage detected