فهرست منبع

Initial support for Intel Fortran VS2010.

Bill Hoffman 14 سال پیش
والد
کامیت
6c72d25aee
2فایلهای تغییر یافته به همراه14 افزوده شده و 5 حذف شده
  1. 12 4
      Source/cmLocalVisualStudio10Generator.cxx
  2. 2 1
      Source/cmLocalVisualStudio7Generator.h

+ 12 - 4
Source/cmLocalVisualStudio10Generator.cxx

@@ -93,10 +93,18 @@ void cmLocalVisualStudio10Generator::Generate()
 
   for(cmTargets::iterator l = tgts.begin(); l != tgts.end(); ++l)
     {
-    cmVisualStudio10TargetGenerator tg(
-      &l->second, static_cast<cmGlobalVisualStudio10Generator*>(
-        this->GetGlobalGenerator()));
-    tg.Generate();
+    if(static_cast<cmGlobalVisualStudioGenerator*>(this->GlobalGenerator)
+       ->TargetIsFortranOnly(l->second))
+      {
+      this->CreateSingleVCProj(l->first.c_str(),l->second);
+      }
+    else
+      {
+      cmVisualStudio10TargetGenerator tg(
+        &l->second, static_cast<cmGlobalVisualStudio10Generator*>(
+          this->GetGlobalGenerator()));
+      tg.Generate();
+      }
     }
   this->WriteStampFiles();
 }

+ 2 - 1
Source/cmLocalVisualStudio7Generator.h

@@ -75,6 +75,8 @@ public:
 
   virtual void ReadAndStoreExternalGUID(const char* name,
                                         const char* path);
+protected:
+  void CreateSingleVCProj(const char *lname, cmTarget &tgt);
 private:
   typedef cmVisualStudioGeneratorOptions Options;
   typedef cmLocalVisualStudio7GeneratorFCInfo FCInfo;
@@ -85,7 +87,6 @@ private:
   void WriteVCProjHeader(std::ostream& fout, const char *libName,
                          cmTarget &tgt, std::vector<cmSourceGroup> &sgs);
   void WriteVCProjFooter(std::ostream& fout);
-  void CreateSingleVCProj(const char *lname, cmTarget &tgt);
   void WriteVCProjFile(std::ostream& fout, const char *libName, 
                        cmTarget &tgt);
   void WriteConfigurations(std::ostream& fout,