Browse Source

Xcode: Do not add Object Libraries source group on Xcode >= 5

The group is always empty because on Xcode 5 and above we list
object library files directly on the link line and do not list
sources for them.
Brad King 8 years ago
parent
commit
1afacebee9
1 changed files with 14 additions and 11 deletions
  1. 14 11
      Source/cmGlobalXCodeGenerator.cxx

+ 14 - 11
Source/cmGlobalXCodeGenerator.cxx

@@ -2799,17 +2799,20 @@ bool cmGlobalXCodeGenerator::CreateGroups(
         this->GroupMap[key] = pbxgroup;
       }
 
-      // Put OBJECT_LIBRARY objects in proper groups:
-      std::vector<std::string> objs;
-      gtgt->UseObjectLibraries(objs, "");
-      for (std::vector<std::string>::const_iterator oi = objs.begin();
-           oi != objs.end(); ++oi) {
-        std::string const& source = *oi;
-        cmSourceGroup* sourceGroup =
-          mf->FindSourceGroup(source.c_str(), sourceGroups);
-        cmXCodeObject* pbxgroup = this->CreateOrGetPBXGroup(gtgt, sourceGroup);
-        std::string key = GetGroupMapKeyFromPath(gtgt, source);
-        this->GroupMap[key] = pbxgroup;
+      if (this->XcodeVersion < 50) {
+        // Put OBJECT_LIBRARY objects in proper groups:
+        std::vector<std::string> objs;
+        gtgt->UseObjectLibraries(objs, "");
+        for (std::vector<std::string>::const_iterator oi = objs.begin();
+             oi != objs.end(); ++oi) {
+          std::string const& source = *oi;
+          cmSourceGroup* sourceGroup =
+            mf->FindSourceGroup(source.c_str(), sourceGroups);
+          cmXCodeObject* pbxgroup =
+            this->CreateOrGetPBXGroup(gtgt, sourceGroup);
+          std::string key = GetGroupMapKeyFromPath(gtgt, source);
+          this->GroupMap[key] = pbxgroup;
+        }
       }
     }
   }