Explorar el Código

Use built-ins for readability and maintainability

Ben Boeckel hace 15 años
padre
commit
3801463c9f
Se han modificado 2 ficheros con 7 adiciones y 6 borrados
  1. 3 2
      Source/cmCommandArgumentParserHelper.cxx
  2. 4 4
      Source/cmMakefile.cxx

+ 3 - 2
Source/cmCommandArgumentParserHelper.cxx

@@ -132,8 +132,9 @@ char* cmCommandArgumentParserHelper::ExpandVariable(const char* var)
       {
       const char* srcRoot = this->Makefile->GetDefinition("CMAKE_SOURCE_DIR");
       const char* binRoot = this->Makefile->GetDefinition("CMAKE_BINARY_DIR");
-      if (this->CheckSystemVars || strstr(this->FileName, srcRoot) == this->FileName ||
-          strstr(this->FileName, binRoot) == this->FileName)
+      if (this->CheckSystemVars ||
+          cmSystemTools::IsSubDirectory(this->FileName, this->Makefile->GetHomeDirectory()) ||
+          cmSystemTools::IsSubDirectory(this->FileName, this->Makefile->GetHomeOutputDirectory()))
         {
         cmOStringStream msg;
         msg << this->FileName << ":" << this->FileLine << ":" <<

+ 4 - 4
Source/cmMakefile.cxx

@@ -778,7 +778,7 @@ void cmMakefile::SetLocalGenerator(cmLocalGenerator* lg)
       this->Internal->VarUsageStack.push(std::set<cmStdString>());
       }
     }
-    this->CheckSystemVars = this->GetCMakeInstance()->GetCheckSystemVars();
+  this->CheckSystemVars = this->GetCMakeInstance()->GetCheckSystemVars();
 }
 
 bool cmMakefile::NeedBackwardsCompatibility(unsigned int major,
@@ -3394,9 +3394,9 @@ void cmMakefile::PopScope()
     if (this->WarnUnused && usage.find(*it) == usage.end())
       {
       const char* cdir = this->ListFileStack.back().c_str();
-      const char* srcRoot = this->GetDefinition("CMAKE_SOURCE_DIR");
-      const char* binRoot = this->GetDefinition("CMAKE_BINARY_DIR");
-      if (this->CheckSystemVars || strstr(cdir, srcRoot) == cdir || strstr(cdir, binRoot) == cdir)
+      if (this->CheckSystemVars ||
+          cmSystemTools::IsSubDirectory(cdir, this->GetHomeDirectory()) ||
+          cmSystemTools::IsSubDirectory(cdir, this->GetHomeOutputDirectory()))
         {
         cmOStringStream m;
         m << "unused variable \'" << *it << "\'";