             }
             fixReference(for: targetDependency, identifiers: identifiers)
         }
+    }
+
+    /// Generates the reference for a reference proxy  object.
+    ///
+    /// - Parameters:
+    ///   - referenceProxy: reference proxy instance.
+    ///   - identifiers: list of identifiers.
+    private func generateReferenceProxyReference(_ referenceProxy: PBXReferenceProxy,
+                                                    identifiers: [String]) throws {
+        var identifiers = identifiers
+
+        if let path = referenceProxy.path {
+            identifiers.append(path)
+        }
+
+        fixReference(for: referenceProxy, identifiers: identifiers)
+
+        if let remote = referenceProxy.remote {
+            try generateContainerItemProxyReference(remote, identifiers: identifiers)
+        }
+    }
+
+    /// Generates the reference for a container item proxy  object.
+    ///
+    /// - Parameters:
+    ///   - containerItemProxy: ontainer item proxy instance.
+    ///   - identifiers: list of identifiers.
+    private func generateContainerItemProxyReference(_ containerItemProxy: PBXContainerItemProxy,
+                                                      identifiers: [String]) throws  {
+        var identifiers = identifiers
+
+        if let remoteInfo = containerItemProxy.remoteInfo {
+            identifiers.append(remoteInfo)
+        }
+        fixReference(for: containerItemProxy, identifiers: identifiers)
     }
 
     /// Generates the reference for a build phase object.

                try generateGroupReferences(childGroup, identifiers: identifiers)
            } else if let childFileReference = childFileElement as? PBXFileReference {
                try generateFileReference(childFileReference, identifiers: identifiers)
            }
        }
    }


        // Project references
        try project.projectReferences.flatMap { $0.values }.forEach { objectReference in
            if let fileReference = objectReference.getObject() as? PBXFileReference {
                try generateFileReference(fileReference, identifiers: identifiers)
            } else if let group = objectReference.getObject() as? PBXGroup {
                try generateGroupReferences(group, identifiers: identifiers)
            }
        }

        /// Configuration list
