Ver código fonte

ENH: Use PBXResourcesBuildPhase for resrources

Andy Cedilnik 19 anos atrás
pai
commit
c2da475507
1 arquivos alterados com 24 adições e 15 exclusões
  1. 24 15
      Source/cmGlobalXCodeGenerator.cxx

+ 24 - 15
Source/cmGlobalXCodeGenerator.cxx

@@ -693,23 +693,32 @@ cmGlobalXCodeGenerator::CreateXCodeTargets(cmLocalGenerator* gen,
     mapOfVectorOfSourceFiles::iterator mit;
     for ( mit = bundleFiles.begin(); mit != bundleFiles.end(); ++ mit )
       {
-      cmXCodeObject* copyFilesBuildPhase
-        = this->CreateObject(cmXCodeObject::PBXCopyFilesBuildPhase);
-      buildPhases->AddObject(copyFilesBuildPhase);
-      copyFilesBuildPhase->SetComment("Copy files");
-      copyFilesBuildPhase->AddAttribute("buildActionMask",
-        this->CreateString("2147483647"));
-      copyFilesBuildPhase->AddAttribute("dstSubfolderSpec",
-        this->CreateString("6"));
-      copyFilesBuildPhase->AddAttribute("runOnlyForDeploymentPostprocessing",
-        this->CreateString("0"));
-      cmOStringStream ostr;
-      if ( mit->first != "MacOS" )
+      cmXCodeObject* copyFilesBuildPhase;
+      if ( mit->first == "Resources" )
         {
-        ostr << "../" << mit->first.c_str();
+        copyFilesBuildPhase
+          = this->CreateObject(cmXCodeObject::PBXResourcesBuildPhase);
         }
-      copyFilesBuildPhase->AddAttribute("dstPath",
-        this->CreateString(ostr.str().c_str()));
+      else
+        {
+        copyFilesBuildPhase
+          = this->CreateObject(cmXCodeObject::PBXCopyFilesBuildPhase);
+        copyFilesBuildPhase->SetComment("Copy files");
+        copyFilesBuildPhase->AddAttribute("buildActionMask",
+          this->CreateString("2147483647"));
+        copyFilesBuildPhase->AddAttribute("dstSubfolderSpec",
+          this->CreateString("6"));
+        cmOStringStream ostr;
+        if ( mit->first != "MacOS" )
+          {
+          ostr << "../" << mit->first.c_str();
+          }
+        copyFilesBuildPhase->AddAttribute("dstPath",
+          this->CreateString(ostr.str().c_str()));
+        }
+      copyFilesBuildPhase->AddAttribute("runOnlyForDeploymentPostprocessing",
+        this->CreateString("0"));
+      buildPhases->AddObject(copyFilesBuildPhase);
       buildFiles = this->CreateObject(cmXCodeObject::OBJECT_LIST);
       copyFilesBuildPhase->AddAttribute("files", buildFiles);
       std::vector<cmSourceFile*>::iterator sfIt;