From a6b09085715d0d7f299e9ca76a4835ce5f5acfaf Mon Sep 17 00:00:00 2001 From: Brad King Date: Mon, 9 Mar 2015 09:25:16 -0400 Subject: [PATCH] Ninja: Improve internal check for generating at the top-level (#15436) Simply check for whether the local generator has a parent instead of depending on a string comparison of directory names. --- Source/cmLocalGenerator.h | 2 +- Source/cmLocalNinjaGenerator.cxx | 3 +-- 2 files changed, 2 insertions(+), 3 deletions(-) diff --git a/Source/cmLocalGenerator.h b/Source/cmLocalGenerator.h index 3a9d5be80..d64ae0f80 100644 --- a/Source/cmLocalGenerator.h +++ b/Source/cmLocalGenerator.h @@ -130,7 +130,7 @@ public: std::string ConvertToOptionallyRelativeOutputPath(const std::string& remote); ///! set/get the parent generator - cmLocalGenerator* GetParent(){return this->Parent;} + cmLocalGenerator* GetParent() const {return this->Parent;} void SetParent(cmLocalGenerator* g) { this->Parent = g; g->AddChild(this); } ///! set/get the children diff --git a/Source/cmLocalNinjaGenerator.cxx b/Source/cmLocalNinjaGenerator.cxx index 413dc0f45..640c1b367 100644 --- a/Source/cmLocalNinjaGenerator.cxx +++ b/Source/cmLocalNinjaGenerator.cxx @@ -182,8 +182,7 @@ cmake* cmLocalNinjaGenerator::GetCMakeInstance() bool cmLocalNinjaGenerator::isRootMakefile() const { - return (strcmp(this->Makefile->GetCurrentDirectory(), - this->GetCMakeInstance()->GetHomeDirectory()) == 0); + return !this->GetParent(); } void cmLocalNinjaGenerator::WriteBuildFileTop()