Browse Source

Use shortest extension to verify try_compile language (#11731)

If the source-file form of try_compile is given a file name with
multiple '.' characters such as "a.b.c" use only the shortest extension
to check the language.  This is the expected behavior and is consistent
with normal language extension determination in the method
cmSourceFileLocation::UpdateExtension.
Brad King 15 years ago
parent
commit
699a725584
1 changed files with 1 additions and 1 deletions
  1. 1 1
      Source/cmCoreTryCompile.cxx

+ 1 - 1
Source/cmCoreTryCompile.cxx

@@ -169,7 +169,7 @@ int cmCoreTryCompile::TryCompileCode(std::vector<std::string> const& argv)
       }
 
     std::string source = argv[2];
-    std::string ext = cmSystemTools::GetFilenameExtension(source);
+    std::string ext = cmSystemTools::GetFilenameLastExtension(source);
     const char* lang =(this->Makefile->GetCMakeInstance()->GetGlobalGenerator()
                         ->GetLanguageFromExtension(ext.c_str()));
     const char* def = this->Makefile->GetDefinition("CMAKE_MODULE_PATH");