Skip to content

Commit e8d08f8

Browse files
author
Eric Miller
committed
Update XcodeGen to 1.6.0 and resolve build errors
1 parent aa48f0e commit e8d08f8

File tree

4 files changed

+831
-825
lines changed

4 files changed

+831
-825
lines changed

Package.resolved

Lines changed: 4 additions & 4 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

Package.swift

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -10,7 +10,7 @@ let package = Package(
1010
.library(name: "UBKit", targets: ["UBKit"]),
1111
],
1212
dependencies: [
13-
.package(url: "https://github.com/yonaskolb/XcodeGen.git", .upToNextMinor(from: "1.5.0"))
13+
.package(url: "https://github.com/yonaskolb/XcodeGen.git", .upToNextMinor(from: "1.6.0"))
1414
],
1515
targets: [
1616
.target(

Sources/UBKit/Workers/FileCopier.swift

Lines changed: 4 additions & 25 deletions
Original file line numberDiff line numberDiff line change
@@ -106,10 +106,10 @@ private extension FileCopier {
106106
return .failure(UBKitError.invalidXcodeProject("Missing main target"))
107107
}
108108

109-
let frameworksBuildPhase = PBXFrameworksBuildPhase(reference: generateUUID(PBXFrameworksBuildPhase.self,
110-
"frameworks".appending(nameSalt)))
111-
mainTarget.value.buildPhases.append(frameworksBuildPhase.reference)
112-
project.pbxproj.objects.addObject(frameworksBuildPhase)
109+
let frameworksBuildPhase = PBXFrameworksBuildPhase()
110+
let frameworksBuildPhaseReference = project.pbxproj.objects.generateReference(frameworksBuildPhase, "frameworks".appending(nameSalt))
111+
mainTarget.value.buildPhases.append(frameworksBuildPhaseReference)
112+
project.pbxproj.objects.addObject(frameworksBuildPhase, reference: frameworksBuildPhaseReference)
113113

114114
return .success
115115
}
@@ -275,24 +275,3 @@ private extension FileCopier {
275275
return .success
276276
}
277277
}
278-
279-
/**
280-
The following private methods are credited to XcodeGenKit and
281-
are used with little to no modifications.
282-
*/
283-
private extension FileCopier {
284-
285-
func generateUUID<T: PBXObject>(_ element: T.Type, _ id: String) -> String {
286-
var uuid: String = ""
287-
var counter: UInt = 0
288-
let className: String = String(describing: T.self).replacingOccurrences(of: "PBX", with: "")
289-
let classAcronym = className.filter({ String($0).lowercased() != String($0) })
290-
let stringID = String(abs(id.hashValue).description.prefix(10 - classAcronym.utf8.count))
291-
repeat {
292-
counter += 1
293-
uuid = "\(classAcronym)\(stringID)\(String(format: "%02d", counter))"
294-
} while (uuids.contains(uuid))
295-
uuids.insert(uuid)
296-
return uuid
297-
}
298-
}

0 commit comments

Comments
 (0)