diff options
author | Stephen Kelly <steveire@gmail.com> | 2015-06-06 07:41:30 (GMT) |
---|---|---|
committer | Stephen Kelly <steveire@gmail.com> | 2015-06-07 07:29:31 (GMT) |
commit | 5181fae264444ad7736614ceb1e78c51def2b97c (patch) | |
tree | 6c0577c3bc103de8eef07431260fcb5d1f495d43 /Source/cmMakefile.cxx | |
parent | 3ac4b90bfdcca97f1f63056c97afee38cf66ea12 (diff) | |
download | CMake-5181fae264444ad7736614ceb1e78c51def2b97c.zip CMake-5181fae264444ad7736614ceb1e78c51def2b97c.tar.gz CMake-5181fae264444ad7736614ceb1e78c51def2b97c.tar.bz2 |
cmPropertyMap: Remove chaining logic.
The chaining logic doesn't belong to the container, and the
CMakeInstance pointer doesn't need to be in cmPropertyMap.
Size goes from 56 to 48 bytes with GNU libstdc++-5.1.
Diffstat (limited to 'Source/cmMakefile.cxx')
-rw-r--r-- | Source/cmMakefile.cxx | 16 |
1 files changed, 7 insertions, 9 deletions
diff --git a/Source/cmMakefile.cxx b/Source/cmMakefile.cxx index 9c0d4b1..bc308f1 100644 --- a/Source/cmMakefile.cxx +++ b/Source/cmMakefile.cxx @@ -213,8 +213,6 @@ cmMakefile::cmMakefile(cmLocalGenerator* localGenerator) this->AddSourceGroup("Object Files", "\\.(lo|o|obj)$"); #endif - this->Properties.SetCMakeInstance(this->GetCMakeInstance()); - { const char* dir = this->GetCMakeInstance()->GetHomeDirectory(); this->AddDefinition("CMAKE_SOURCE_DIR", dir); @@ -4134,11 +4132,13 @@ void cmMakefile::AppendProperty(const std::string& prop, const char *cmMakefile::GetProperty(const std::string& prop) const { - return this->GetProperty(prop, cmProperty::DIRECTORY); + const bool chain = this->GetState()-> + IsPropertyChained(prop, cmProperty::DIRECTORY); + return this->GetProperty(prop, chain); } const char *cmMakefile::GetProperty(const std::string& prop, - cmProperty::ScopeType scope) const + bool chain) const { // watch for specific properties static std::string output; @@ -4242,15 +4242,13 @@ const char *cmMakefile::GetProperty(const std::string& prop, return output.c_str(); } - bool chain = false; - const char *retVal = - this->Properties.GetPropertyValue(prop, scope, chain); - if (chain) + const char *retVal = this->Properties.GetPropertyValue(prop); + if (!retVal && chain) { if(this->LocalGenerator->GetParent()) { return this->LocalGenerator->GetParent()->GetMakefile()-> - GetProperty(prop, scope); + GetProperty(prop, chain); } return this->GetState()->GetGlobalProperty(prop); } |