Просмотр исходного кода

Merge topic 'ninja-clang-rsp-format'

e555480c Ninja: Fix response file format for GNU-like Clang on Windows
Brad King 9 лет назад
Родитель
Сommit
93b705a396
1 измененных файлов с 7 добавлено и 5 удалено
  1. 7 5
      Source/cmGlobalNinjaGenerator.cxx

+ 7 - 5
Source/cmGlobalNinjaGenerator.cxx

@@ -554,11 +554,13 @@ void cmGlobalNinjaGenerator::EnableLanguage(
     this->ResolveLanguageCompiler(*l, mf, optional);
   }
 #ifdef _WIN32
-  if (mf->IsOn("CMAKE_COMPILER_IS_MINGW") ||
-      strcmp(mf->GetSafeDefinition("CMAKE_C_COMPILER_ID"), "GNU") == 0 ||
-      strcmp(mf->GetSafeDefinition("CMAKE_CXX_COMPILER_ID"), "GNU") == 0 ||
-      strcmp(mf->GetSafeDefinition("CMAKE_C_SIMULATE_ID"), "GNU") == 0 ||
-      strcmp(mf->GetSafeDefinition("CMAKE_CXX_SIMULATE_ID"), "GNU") == 0) {
+  if (strcmp(mf->GetSafeDefinition("CMAKE_C_SIMULATE_ID"), "MSVC") != 0 &&
+      strcmp(mf->GetSafeDefinition("CMAKE_CXX_SIMULATE_ID"), "MSVC") != 0 &&
+      (mf->IsOn("CMAKE_COMPILER_IS_MINGW") ||
+       strcmp(mf->GetSafeDefinition("CMAKE_C_COMPILER_ID"), "GNU") == 0 ||
+       strcmp(mf->GetSafeDefinition("CMAKE_CXX_COMPILER_ID"), "GNU") == 0 ||
+       strcmp(mf->GetSafeDefinition("CMAKE_C_COMPILER_ID"), "Clang") == 0 ||
+       strcmp(mf->GetSafeDefinition("CMAKE_CXX_COMPILER_ID"), "Clang") == 0)) {
     this->UsingGCCOnWindows = true;
   }
 #endif