diff --git a/Source/cmGlobalMSYSMakefileGenerator.cxx b/Source/cmGlobalMSYSMakefileGenerator.cxx
index e6d14b5b46f7b1980958f49e8a2175e2f11f9f66..c07f7a65780b6bb869749f6dea92b7cef6da7f4a 100644
--- a/Source/cmGlobalMSYSMakefileGenerator.cxx
+++ b/Source/cmGlobalMSYSMakefileGenerator.cxx
@@ -78,7 +78,10 @@ void cmGlobalMSYSMakefileGenerator
   mf->AddDefinition("CMAKE_GENERATOR_CC", gcc.c_str());
   mf->AddDefinition("CMAKE_GENERATOR_CXX", gxx.c_str());
   this->cmGlobalUnixMakefileGenerator3::EnableLanguage(l, mf, optional);
-  if(!mf->IsSet("CMAKE_AR") && !this->CMakeInstance->GetIsInTryCompile())
+
+  if(!mf->IsSet("CMAKE_AR") &&
+      !this->CMakeInstance->GetIsInTryCompile() &&
+      !(1==l.size() && l[0]=="NONE"))
     {
     cmSystemTools::Error
       ("CMAKE_AR was not found, please set to archive program. ",