Bläddra i källkod

cmConditionEvaluator: Drop unnecessary path conversion

In commit v3.4.0-rc2~1^2 (cmIfCommand: Issue CMP0054 warning with
appropriate context, 2015-10-20) we added construction of a
cmListFileContext with conversion of the calling file path.  This code
path runs on every condition (e.g. `if()`) and so the path conversion
has a noticeable performance cost.  Fortunately the only use of this
context is for insertion into cmMakefile::CMP0054ReportedIds so we do
not need to convert the path.  Simply drop the conversion.
Brad King 9 år sedan
förälder
incheckning
02fce523a1
1 ändrade filer med 1 tillägg och 8 borttagningar
  1. 1 8
      Source/cmConditionEvaluator.cxx

+ 1 - 8
Source/cmConditionEvaluator.cxx

@@ -105,7 +105,7 @@ bool cmConditionEvaluator::IsTrue(
 }
 
 cmListFileContext cmConditionEvaluator::GetConditionContext(
-    cmMakefile* mf,
+    cmMakefile*,
     const cmCommandContext& command,
     const std::string& filePath)
 {
@@ -113,13 +113,6 @@ cmListFileContext cmConditionEvaluator::GetConditionContext(
       cmListFileContext::FromCommandContext(
         command,
         filePath);
-
-  if(!mf->GetCMakeInstance()->GetIsInTryCompile())
-    {
-    cmOutputConverter converter(mf->GetStateSnapshot());
-    context.FilePath = converter.Convert(context.FilePath,
-                                         cmOutputConverter::HOME);
-    }
   return context;
 }