diff --git a/Source/cmGeneratorTarget.cxx b/Source/cmGeneratorTarget.cxx index 2f2fb3b76..3651da685 100644 --- a/Source/cmGeneratorTarget.cxx +++ b/Source/cmGeneratorTarget.cxx @@ -3928,7 +3928,7 @@ PropertyType checkInterfacePropertyCompatibility(cmGeneratorTarget const* tgt, .find(p) != tgt->Target->GetProperties().end(); const bool impliedByUse = - tgt->Target->IsNullImpliedByLinkLibraries(p); + tgt->IsNullImpliedByLinkLibraries(p); assert((impliedByUse ^ explicitlySet) || (!impliedByUse && !explicitlySet)); @@ -5045,6 +5045,14 @@ cmGeneratorTarget::GetLinkImplementationLibrariesInternal( return &impl; } +//---------------------------------------------------------------------------- +bool +cmGeneratorTarget::IsNullImpliedByLinkLibraries(const std::string &p) const +{ + return this->LinkImplicitNullProperties.find(p) + != this->LinkImplicitNullProperties.end(); +} + //---------------------------------------------------------------------------- void cmGeneratorTarget::ComputeLinkImplementationLibraries( const std::string& config, @@ -5130,7 +5138,7 @@ void cmGeneratorTarget::ComputeLinkImplementationLibraries( { if (!this->GetProperty(*it)) { - this->Target->LinkImplicitNullProperties.insert(*it); + this->LinkImplicitNullProperties.insert(*it); } } cge->GetMaxLanguageStandard(this->Target, diff --git a/Source/cmGeneratorTarget.h b/Source/cmGeneratorTarget.h index 77d3b996b..f0f6d4186 100644 --- a/Source/cmGeneratorTarget.h +++ b/Source/cmGeneratorTarget.h @@ -317,6 +317,8 @@ public: typedef std::map CompileInfoMapType; mutable CompileInfoMapType CompileInfoMap; + bool IsNullImpliedByLinkLibraries(const std::string &p) const; + /** Get the name of the compiler pdb file for the target. */ std::string GetCompilePDBName(const std::string& config="") const; @@ -486,6 +488,7 @@ private: std::vector CompileFeaturesEntries; std::vector CompileDefinitionsEntries; std::vector SourceEntries; + mutable std::set LinkImplicitNullProperties; void ExpandLinkItems(std::string const& prop, std::string const& value, std::string const& config, cmTarget const* headTarget, diff --git a/Source/cmTarget.cxx b/Source/cmTarget.cxx index c20ce8363..af7fe2eaa 100644 --- a/Source/cmTarget.cxx +++ b/Source/cmTarget.cxx @@ -2553,13 +2553,6 @@ const char* cmTarget::GetExportMacro() const } } -//---------------------------------------------------------------------------- -bool cmTarget::IsNullImpliedByLinkLibraries(const std::string &p) const -{ - return this->LinkImplicitNullProperties.find(p) - != this->LinkImplicitNullProperties.end(); -} - //---------------------------------------------------------------------------- void cmTarget::GetObjectLibrariesCMP0026(std::vector& objlibs) const diff --git a/Source/cmTarget.h b/Source/cmTarget.h index dda538414..a3a8063d7 100644 --- a/Source/cmTarget.h +++ b/Source/cmTarget.h @@ -326,8 +326,6 @@ public: void AppendBuildInterfaceIncludes(); - bool IsNullImpliedByLinkLibraries(const std::string &p) const; - std::string GetDebugGeneratorExpressions(const std::string &value, cmTarget::LinkLibraryType llt) const; @@ -439,7 +437,6 @@ private: std::set SystemIncludeDirectories; std::set LinkDirectoriesEmmitted; std::set Utilities; - mutable std::set LinkImplicitNullProperties; std::map UtilityBacktraces; cmPolicies::PolicyMap PolicyMap; std::string Name;