diff --git a/.circleci/config.yml b/.circleci/config.yml index aa03700f..14b4cb35 100644 --- a/.circleci/config.yml +++ b/.circleci/config.yml @@ -2,7 +2,15 @@ version: 2 jobs: macOS_swift_4.1: macos: - xcode: "9.3.0" + xcode: "9.4.0" + steps: + - checkout + - run: + name: Build Test Project + command: ./build-fixtures.sh + macOS_swift_4.2: + macos: + xcode: "10.0.0" steps: - checkout - run: @@ -20,27 +28,6 @@ jobs: - run: name: Build release command: make build - macOS_swift_4.2: - macos: - xcode: "10.0.0" - steps: - - checkout - - run: - name: Build - command: swift build - - run: - name: Test - command: swift test 2>&1 | xcpretty - # disabled till UUID's are stable - # - run: - # name: Check Project Diff - # command: ./diff-fixtures.sh - - run: - name: Build Test Project - command: ./build-fixtures.sh - - run: - name: Build release - command: make build workflows: version: 2 workflow: diff --git a/CHANGELOG.md b/CHANGELOG.md index 1b6fb0e3..971f6feb 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -5,6 +5,10 @@ #### Added - Added `weak` Weak linking setting for dependencies [411](https://github.com/yonaskolb/XcodeGen/pull/411) @alvarhansen +#### Changed +- Performance improvements for large projects [388](https://github.com/yonaskolb/XcodeGen/pull/388) @yonaskolb +- Upgraded to xcodeproj 6 [388](https://github.com/yonaskolb/XcodeGen/pull/388) @yonaskolb +- Upgraded to Swift 4.2 [388](https://github.com/yonaskolb/XcodeGen/pull/388) @yonaskolb ## 1.11.2 diff --git a/Package.resolved b/Package.resolved index a82af1f5..bf25ace5 100644 --- a/Package.resolved +++ b/Package.resolved @@ -3,11 +3,11 @@ "pins": [ { "package": "AEXML", - "repositoryURL": "https://github.com/tadija/AEXML.git", + "repositoryURL": "https://github.com/tadija/AEXML", "state": { "branch": null, - "revision": "6eea665515d079c338690147082a8084a36484b0", - "version": "4.3.0" + "revision": "54bb8ea6fb693dd3f92a89e5fcc19e199fdeedd0", + "version": "4.3.3" } }, { @@ -24,8 +24,8 @@ "repositoryURL": "https://github.com/yonaskolb/JSONUtilities.git", "state": { "branch": null, - "revision": "d9f957b1b2a078c93f96c723040d4cbffcb7d3f9", - "version": "4.0.2" + "revision": "db238f4858ac2ac3fff228b5b71ce90488a6a9b3", + "version": "4.1.0" } }, { @@ -46,15 +46,6 @@ "version": "3.1.4" } }, - { - "package": "ShellOut", - "repositoryURL": "https://github.com/JohnSundell/ShellOut.git", - "state": { - "branch": null, - "revision": "f1c253a34a40df4bfd268b09fdb101b059f6d52d", - "version": "2.1.0" - } - }, { "package": "Spectre", "repositoryURL": "https://github.com/kylef/Spectre.git", @@ -65,12 +56,21 @@ } }, { - "package": "xcproj", + "package": "SwiftShell", + "repositoryURL": "https://github.com/kareman/SwiftShell", + "state": { + "branch": null, + "revision": "beebe43c986d89ea5359ac3adcb42dac94e5e08a", + "version": "4.1.2" + } + }, + { + "package": "xcodeproj", "repositoryURL": "https://github.com/tuist/xcodeproj.git", "state": { "branch": null, - "revision": "5253c22f208558264e3a64a3a29f11537ca1b41a", - "version": "4.3.1" + "revision": "869ae3f417b0fb545e454ead36e2e13f157265a2", + "version": "6.2.0" } }, { diff --git a/Package.swift b/Package.swift index b942cd34..9f44a5c4 100644 --- a/Package.swift +++ b/Package.swift @@ -1,4 +1,4 @@ -// swift-tools-version:4.0 +// swift-tools-version:4.2 import PackageDescription @@ -13,10 +13,10 @@ let package = Package( .package(url: "https://github.com/kylef/PathKit.git", from: "0.9.0"), .package(url: "https://github.com/kylef/Commander.git", from: "0.8.0"), .package(url: "https://github.com/jpsim/Yams.git", from: "1.0.0"), - .package(url: "https://github.com/yonaskolb/JSONUtilities.git", from: "4.0.0"), + .package(url: "https://github.com/yonaskolb/JSONUtilities.git", from: "4.1.0"), .package(url: "https://github.com/kylef/Spectre.git", from: "0.9.0"), .package(url: "https://github.com/onevcat/Rainbow.git", from: "3.0.0"), - .package(url: "https://github.com/tuist/xcodeproj.git", from: "4.3.1"), + .package(url: "https://github.com/tuist/xcodeproj.git", from: "6.2.0"), ], targets: [ .target(name: "XcodeGen", dependencies: [ @@ -27,12 +27,12 @@ let package = Package( .target(name: "XcodeGenKit", dependencies: [ "ProjectSpec", "JSONUtilities", - "xcproj", + "xcodeproj", "PathKit", ]), .target(name: "ProjectSpec", dependencies: [ "JSONUtilities", - "xcproj", + "xcodeproj", "Yams", ]), .testTarget(name: "XcodeGenKitTests", dependencies: [ diff --git a/Sources/ProjectSpec/Config.swift b/Sources/ProjectSpec/Config.swift index 20c7c4ab..2e343e57 100644 --- a/Sources/ProjectSpec/Config.swift +++ b/Sources/ProjectSpec/Config.swift @@ -1,6 +1,5 @@ import Foundation import JSONUtilities -import xcproj public struct Config: Equatable { public var name: String diff --git a/Sources/ProjectSpec/Dependency.swift b/Sources/ProjectSpec/Dependency.swift index 537bd46f..1e01b5f5 100644 --- a/Sources/ProjectSpec/Dependency.swift +++ b/Sources/ProjectSpec/Dependency.swift @@ -1,6 +1,5 @@ import Foundation import JSONUtilities -import xcproj public struct Dependency: Equatable { diff --git a/Sources/ProjectSpec/DeploymentTarget.swift b/Sources/ProjectSpec/DeploymentTarget.swift index 190ce071..e8640d13 100644 --- a/Sources/ProjectSpec/DeploymentTarget.swift +++ b/Sources/ProjectSpec/DeploymentTarget.swift @@ -1,6 +1,5 @@ import Foundation import JSONUtilities -import xcproj public struct DeploymentTarget: Equatable { diff --git a/Sources/ProjectSpec/Project.swift b/Sources/ProjectSpec/Project.swift index 8c6f524a..4526140d 100644 --- a/Sources/ProjectSpec/Project.swift +++ b/Sources/ProjectSpec/Project.swift @@ -1,7 +1,6 @@ import Foundation import JSONUtilities import PathKit -import xcproj import Yams public struct Project: BuildSettingsContainer { diff --git a/Sources/ProjectSpec/Scheme.swift b/Sources/ProjectSpec/Scheme.swift index d6d87836..1bd83431 100644 --- a/Sources/ProjectSpec/Scheme.swift +++ b/Sources/ProjectSpec/Scheme.swift @@ -1,6 +1,6 @@ import Foundation import JSONUtilities -import xcproj +import xcodeproj public typealias BuildType = XCScheme.BuildAction.Entry.BuildFor @@ -311,7 +311,7 @@ extension BuildType: JSONPrimitiveConvertible { } } -extension XCScheme.EnvironmentVariable: JSONObjectConvertible, Equatable { +extension XCScheme.EnvironmentVariable: JSONObjectConvertible { private static func parseValue(_ value: Any) -> String { if let bool = value as? Bool { @@ -346,10 +346,4 @@ extension XCScheme.EnvironmentVariable: JSONObjectConvertible, Equatable { return [] } } - - public static func == (lhs: XCScheme.EnvironmentVariable, rhs: XCScheme.EnvironmentVariable) -> Bool { - return lhs.variable == rhs.variable && - lhs.value == rhs.value && - lhs.enabled == rhs.enabled - } } diff --git a/Sources/ProjectSpec/Settings.swift b/Sources/ProjectSpec/Settings.swift index c1a5dad5..26d061bf 100644 --- a/Sources/ProjectSpec/Settings.swift +++ b/Sources/ProjectSpec/Settings.swift @@ -1,7 +1,7 @@ import Foundation import JSONUtilities import PathKit -import xcproj +import xcodeproj public struct Settings: Equatable, JSONObjectConvertible, CustomStringConvertible { diff --git a/Sources/ProjectSpec/SpecOptions.swift b/Sources/ProjectSpec/SpecOptions.swift index 6b4adfc4..9d559578 100644 --- a/Sources/ProjectSpec/SpecOptions.swift +++ b/Sources/ProjectSpec/SpecOptions.swift @@ -1,6 +1,5 @@ import Foundation import JSONUtilities -import xcproj public struct SpecOptions: Equatable { diff --git a/Sources/ProjectSpec/Target.swift b/Sources/ProjectSpec/Target.swift index a38e5b13..f4118c3c 100644 --- a/Sources/ProjectSpec/Target.swift +++ b/Sources/ProjectSpec/Target.swift @@ -1,6 +1,6 @@ import Foundation import JSONUtilities -import xcproj +import xcodeproj public struct LegacyTarget: Equatable { public var toolPath: String @@ -39,14 +39,14 @@ public struct Target: ProjectTarget { public var legacy: LegacyTarget? public var deploymentTarget: Version? public var attributes: [String: Any] - internal var productName: String? + public var productName: String public var isLegacy: Bool { return legacy != nil } public var filename: String { - var filename = productName ?? name + var filename = productName if let fileExtension = type.fileExtension { filename += ".\(fileExtension)" } @@ -57,6 +57,7 @@ public struct Target: ProjectTarget { name: String, type: PBXProductType, platform: Platform, + productName: String? = nil, deploymentTarget: Version? = nil, settings: Settings = .empty, configFiles: [String: String] = [:], @@ -76,6 +77,7 @@ public struct Target: ProjectTarget { self.type = type self.platform = platform self.deploymentTarget = deploymentTarget + self.productName = productName ?? name self.settings = settings self.configFiles = configFiles self.sources = sources @@ -230,8 +232,9 @@ extension LegacyTarget: JSONObjectConvertible { extension Target: NamedJSONDictionaryConvertible { public init(name: String, jsonDictionary: JSONDictionary) throws { - self.name = jsonDictionary.json(atKeyPath: "name") ?? name - productName = jsonDictionary.json(atKeyPath: "productName") + let resolvedName: String = jsonDictionary.json(atKeyPath: "name") ?? name + self.name = resolvedName + self.productName = jsonDictionary.json(atKeyPath: "productName") ?? resolvedName let typeString: String = try jsonDictionary.json(atKeyPath: "type") if let type = PBXProductType(string: typeString) { self.type = type diff --git a/Sources/ProjectSpec/TargetScheme.swift b/Sources/ProjectSpec/TargetScheme.swift index 72194461..50d49f88 100644 --- a/Sources/ProjectSpec/TargetScheme.swift +++ b/Sources/ProjectSpec/TargetScheme.swift @@ -1,6 +1,6 @@ import Foundation import JSONUtilities -import xcproj +import xcodeproj public struct TargetScheme: Equatable { public var testTargets: [String] diff --git a/Sources/ProjectSpec/TargetSource.swift b/Sources/ProjectSpec/TargetSource.swift index f8a1cbb3..a0f8e5e4 100644 --- a/Sources/ProjectSpec/TargetSource.swift +++ b/Sources/ProjectSpec/TargetSource.swift @@ -1,7 +1,7 @@ import Foundation import JSONUtilities import PathKit -import xcproj +import xcodeproj public struct TargetSource: Equatable { @@ -57,7 +57,7 @@ public struct TargetSource: Equatable { case sharedSupport case plugins - public var destination: xcproj.PBXCopyFilesBuildPhase.SubFolder? { + public var destination: xcodeproj.PBXCopyFilesBuildPhase.SubFolder? { switch self { case .absolutePath: return .absolutePath case .productsDirectory: return .productsDirectory @@ -82,7 +82,7 @@ public struct TargetSource: Equatable { } } - public var buildPhase: xcproj.BuildPhase? { + public var buildPhase: xcodeproj.BuildPhase? { switch self { case .sources: return .sources case .headers: return .headers diff --git a/Sources/ProjectSpec/XCProjExtensions.swift b/Sources/ProjectSpec/XCProjExtensions.swift index 0b3096dc..bd3541a1 100644 --- a/Sources/ProjectSpec/XCProjExtensions.swift +++ b/Sources/ProjectSpec/XCProjExtensions.swift @@ -1,6 +1,6 @@ import Foundation import PathKit -import xcproj +import xcodeproj extension PBXProductType { @@ -60,7 +60,7 @@ extension XCScheme.CommandLineArguments { public convenience init(_ dict: [String: Bool]) { let args = dict.map { tuple in XCScheme.CommandLineArguments.CommandLineArgument(name: tuple.key, enabled: tuple.value) - } + }.sorted { $0.name < $1.name } self.init(arguments: args) } } diff --git a/Sources/XcodeGen/main.swift b/Sources/XcodeGen/main.swift index 7531e821..9d732054 100644 --- a/Sources/XcodeGen/main.swift +++ b/Sources/XcodeGen/main.swift @@ -4,7 +4,7 @@ import JSONUtilities import PathKit import ProjectSpec import XcodeGenKit -import xcproj +import xcodeproj let version = try Version("1.11.2") diff --git a/Sources/XcodeGenKit/PBXProjGenerator.swift b/Sources/XcodeGenKit/PBXProjGenerator.swift index b1c55e33..be7072f1 100644 --- a/Sources/XcodeGenKit/PBXProjGenerator.swift +++ b/Sources/XcodeGenKit/PBXProjGenerator.swift @@ -1,8 +1,7 @@ import Foundation -import JSONUtilities import PathKit import ProjectSpec -import xcproj +import xcodeproj import Yams public class PBXProjGenerator { @@ -12,13 +11,12 @@ public class PBXProjGenerator { let pbxProj: PBXProj var sourceGenerator: SourceGenerator! - var targetObjects: [String: ObjectReference] = [:] - var targetAggregateObjects: [String: ObjectReference] = [:] - var targetBuildFiles: [String: ObjectReference] = [:] - var targetFileReferences: [String: String] = [:] + var targetObjects: [String: PBXTarget] = [:] + var targetAggregateObjects: [String: PBXAggregateTarget] = [:] + var targetFileReferences: [String: PBXFileReference] = [:] - var carthageFrameworksByPlatform: [String: Set] = [:] - var frameworkFiles: [String] = [] + var carthageFrameworksByPlatform: [String: Set] = [:] + var frameworkFiles: [PBXFileElement] = [] var generated = false @@ -28,21 +26,15 @@ public class PBXProjGenerator { public init(project: Project) { self.project = project - pbxProj = PBXProj(rootObject: "", objectVersion: 46) - sourceGenerator = SourceGenerator(project: project) { [unowned self] id, object in - self.addObject(id: id, object) + pbxProj = PBXProj(rootObject: nil, objectVersion: 46) + sourceGenerator = SourceGenerator(project: project) { [unowned self] object in + _ = self.addObject(object) } } - func addObject(id: String, _ object: PBXObject) -> String { - let reference = pbxProj.objects.generateReference(object, id) - pbxProj.objects.addObject(object, reference: reference) - return reference - } - - func createObject(id: String, _ object: T) -> ObjectReference { - let reference = addObject(id: id, object) - return ObjectReference(reference: reference, object: object) + func addObject(_ object: T) -> T { + pbxProj.add(object: object) + return object } public func generate() throws -> PBXProj { @@ -55,35 +47,34 @@ public class PBXProjGenerator { try sourceGenerator.getFileGroups(path: group) } - let buildConfigs: [ObjectReference] = project.configs.map { config in + let buildConfigs: [XCBuildConfiguration] = project.configs.map { config in let buildSettings = project.getProjectBuildSettings(config: config) - var baseConfigurationReference: String? - if let configPath = project.configFiles[config.name] { - baseConfigurationReference = sourceGenerator.getContainedFileReference(path: project.basePath + configPath) + var baseConfiguration: PBXFileReference? + if let configPath = project.configFiles[config.name], + let fileReference = sourceGenerator.getContainedFileReference(path: project.basePath + configPath) as? PBXFileReference { + baseConfiguration = fileReference } - return createObject( - id: config.name, + let buildConfig = addObject( XCBuildConfiguration( name: config.name, - baseConfigurationReference: baseConfigurationReference, buildSettings: buildSettings ) ) + buildConfig.baseConfiguration = baseConfiguration + return buildConfig } - let configName = project.options.defaultConfig ?? buildConfigs.first?.object.name ?? "" - let buildConfigList = createObject( - id: project.name, + let configName = project.options.defaultConfig ?? buildConfigs.first?.name ?? "" + let buildConfigList = addObject( XCConfigurationList( - buildConfigurations: buildConfigs.map { $0.reference }, + buildConfigurations: buildConfigs, defaultConfigurationName: configName ) ) - var derivedGroups: [ObjectReference] = [] + var derivedGroups: [PBXGroup] = [] - let mainGroup = createObject( - id: "Project", + let mainGroup = addObject( PBXGroup( children: [], sourceTree: .group, @@ -93,18 +84,17 @@ public class PBXProjGenerator { ) ) - let pbxProject = createObject( - id: project.name, + let pbxProject = addObject( PBXProject( name: project.name, - buildConfigurationList: buildConfigList.reference, + buildConfigurationList: buildConfigList, compatibilityVersion: "Xcode 3.2", - mainGroup: mainGroup.reference, + mainGroup: mainGroup, developmentRegion: project.options.developmentLanguage ?? "en" ) ) - pbxProj.rootObject = pbxProject.reference + pbxProj.rootObject = pbxProject for target in project.targets { let targetObject: PBXTarget @@ -115,26 +105,26 @@ public class PBXProjGenerator { buildToolPath: target.legacy?.toolPath, buildArgumentsString: target.legacy?.arguments, passBuildSettingsInEnvironment: target.legacy?.passSettings ?? false, - buildWorkingDirectory: target.legacy?.workingDirectory + buildWorkingDirectory: target.legacy?.workingDirectory, + buildPhases: [] ) } else { - targetObject = PBXNativeTarget(name: target.name) + targetObject = PBXNativeTarget(name: target.name, buildPhases: []) } - targetObjects[target.name] = createObject(id: target.name, targetObject) + targetObjects[target.name] = addObject(targetObject) var explicitFileType: String? var lastKnownFileType: String? - let fileType = PBXFileReference.fileType(path: Path(target.filename)) + let fileType = Xcode.fileType(path: Path(target.filename)) if target.platform == .macOS || target.platform == .watchOS || target.type == .framework { explicitFileType = fileType } else { lastKnownFileType = fileType } - if !target.isLegacy { - let fileReference = createObject( - id: target.name, + if !target.isLegacy && targetFileReferences[target.productName] == nil { + let fileReference = addObject( PBXFileReference( sourceTree: .buildProductsDir, explicitFileType: explicitFileType, @@ -144,18 +134,13 @@ public class PBXProjGenerator { ) ) - targetFileReferences[target.name] = fileReference.reference - targetBuildFiles[target.name] = createObject( - id: fileReference.reference, - PBXBuildFile(fileRef: fileReference.reference) - ) + targetFileReferences[target.productName] = fileReference } } for target in project.aggregateTargets { - let aggregateTarget = createObject( - id: target.name, + let aggregateTarget = addObject( PBXAggregateTarget( name: target.name, productName: target.name @@ -167,10 +152,9 @@ public class PBXProjGenerator { try project.targets.forEach(generateTarget) try project.aggregateTargets.forEach(generateAggregateTarget) - let productGroup = createObject( - id: "Products", + let productGroup = addObject( PBXGroup( - children: Array(targetFileReferences.values), + children: targetFileReferences.valueArray, sourceTree: .group, name: "Products" ) @@ -179,34 +163,29 @@ public class PBXProjGenerator { if !carthageFrameworksByPlatform.isEmpty { var platforms: [PBXGroup] = [] - var platformReferences: [String] = [] - for (platform, fileReferences) in carthageFrameworksByPlatform { - let platformGroup: ObjectReference = createObject( - id: "Carthage" + platform, + for (platform, files) in carthageFrameworksByPlatform { + let platformGroup: PBXGroup = addObject( PBXGroup( - children: fileReferences.sorted(), + children: files.sorted { $0.nameOrPath < $1.nameOrPath }, sourceTree: .group, path: platform ) ) - platformReferences.append(platformGroup.reference) - platforms.append(platformGroup.object) + platforms.append(platformGroup) } - let carthageGroup = createObject( - id: "Carthage", + let carthageGroup = addObject( PBXGroup( - children: platformReferences.sorted(), + children: platforms, sourceTree: .group, name: "Carthage", path: carthageBuildPath ) ) - frameworkFiles.append(carthageGroup.reference) + frameworkFiles.append(carthageGroup) } if !frameworkFiles.isEmpty { - let group = createObject( - id: "Frameworks", + let group = addObject( PBXGroup( children: frameworkFiles, sourceTree: .group, @@ -216,90 +195,86 @@ public class PBXProjGenerator { derivedGroups.append(group) } - mainGroup.object.children = Array(sourceGenerator.rootGroups) + mainGroup.children = Array(sourceGenerator.rootGroups) sortGroups(group: mainGroup) // add derived groups at the end derivedGroups.forEach(sortGroups) - mainGroup.object.children += derivedGroups - .sorted { $0.object.nameOrPath.localizedStandardCompare($1.object.nameOrPath) == .orderedAscending } - .map { $0.reference } + mainGroup.children += derivedGroups + .sorted { $0.nameOrPath.localizedStandardCompare($1.nameOrPath) == .orderedAscending } + .map { $0 } let projectAttributes: [String: Any] = ["LastUpgradeCheck": project.xcodeVersion] .merged(project.attributes) - .merged(generateTargetAttributes() ?? [:]) let knownRegions = sourceGenerator.knownRegions.sorted() - pbxProject.object.knownRegions = knownRegions.isEmpty ? ["en"] : knownRegions - - let allTargets: [ObjectReference] = Array(targetObjects.values) + Array(targetAggregateObjects.values.map { ObjectReference(reference: $0.reference, object: $0.object) }) - pbxProject.object.targets = allTargets - .sorted { $0.object.name < $1.object.name } - .map { $0.reference } - pbxProject.object.attributes = projectAttributes + pbxProject.knownRegions = knownRegions.isEmpty ? ["en"] : knownRegions + let allTargets: [PBXTarget] = Array(targetObjects.values) + Array(targetAggregateObjects.values) + pbxProject.targets = allTargets + .sorted { $0.name < $1.name } + pbxProject.attributes = projectAttributes + pbxProject.targetAttributes = generateTargetAttributes() return pbxProj } func generateAggregateTarget(_ target: AggregateTarget) throws { - let aggregateTarget = targetAggregateObjects[target.name]!.object + let aggregateTarget = targetAggregateObjects[target.name]! - let configs: [ObjectReference] = project.configs.map { config in + let configs: [XCBuildConfiguration] = project.configs.map { config in let buildSettings = project.getBuildSettings(settings: target.settings, config: config) - var baseConfigurationReference: String? + var baseConfiguration: PBXFileReference? if let configPath = target.configFiles[config.name] { - baseConfigurationReference = sourceGenerator.getContainedFileReference(path: project.basePath + configPath) + baseConfiguration = sourceGenerator.getContainedFileReference(path: project.basePath + configPath) as? PBXFileReference } let buildConfig = XCBuildConfiguration( name: config.name, - baseConfigurationReference: baseConfigurationReference, + baseConfiguration: baseConfiguration, buildSettings: buildSettings ) - return createObject(id: config.name + target.name, buildConfig) + return addObject(buildConfig) } - let dependencies: [String] = target.targets.map { generateTargetDependency(from: target.name, to: $0).reference } + let dependencies = target.targets.map { generateTargetDependency(from: target.name, to: $0) } - let buildConfigList = createObject(id: target.name, XCConfigurationList( - buildConfigurations: configs.map { $0.reference }, + let buildConfigList = addObject(XCConfigurationList( + buildConfigurations: configs, defaultConfigurationName: "" )) - var buildPhases: [String] = [] + var buildPhases: [PBXBuildPhase] = [] buildPhases += try target.buildScripts.map { try generateBuildScript(targetName: target.name, buildScript: $0) } aggregateTarget.buildPhases = buildPhases - aggregateTarget.buildConfigurationList = buildConfigList.reference + aggregateTarget.buildConfigurationList = buildConfigList aggregateTarget.dependencies = dependencies } - func generateTargetDependency(from: String, to target: String) -> ObjectReference { - guard let targetReference = targetObjects[target]?.reference ?? targetAggregateObjects[target]?.reference else { + func generateTargetDependency(from: String, to target: String) -> PBXTargetDependency { + guard let targetObject = targetObjects[target] ?? targetAggregateObjects[target] else { fatalError("target not found") } - let targetProxy = createObject( - id: "\(from)-\(target)", + let targetProxy = addObject( PBXContainerItemProxy( - containerPortal: pbxProj.rootObject, - remoteGlobalIDString: targetReference, + containerPortal: pbxProj.rootObject!, + remoteGlobalID: targetObject, proxyType: .nativeTarget, remoteInfo: target ) ) - let targetDependency = createObject( - id: "\(from)-\(target)", + let targetDependency = addObject( PBXTargetDependency( - target: targetReference, - targetProxy: targetProxy.reference + target: targetObject, + targetProxy: targetProxy ) ) return targetDependency } - func generateBuildScript(targetName: String, buildScript: BuildScript) throws -> String { + func generateBuildScript(targetName: String, buildScript: BuildScript) throws -> PBXShellScriptBuildPhase { let shellScript: String switch buildScript.script { @@ -310,47 +285,43 @@ public class PBXProjGenerator { } let shellScriptPhase = PBXShellScriptBuildPhase( - files: [], name: buildScript.name ?? "Run Script", inputPaths: buildScript.inputFiles, outputPaths: buildScript.outputFiles, shellPath: buildScript.shell ?? "/bin/sh", - shellScript: shellScript + shellScript: shellScript, + runOnlyForDeploymentPostprocessing: buildScript.runOnlyWhenInstalling, + showEnvVarsInLog: buildScript.showEnvVars ) - shellScriptPhase.runOnlyForDeploymentPostprocessing = buildScript.runOnlyWhenInstalling - shellScriptPhase.showEnvVarsInLog = buildScript.showEnvVars - return createObject(id: String(describing: buildScript.name) + shellScript + targetName, shellScriptPhase).reference + return addObject(shellScriptPhase) } - func generateTargetAttributes() -> [String: Any]? { + func generateTargetAttributes() -> [PBXTarget: [String: Any]] { - var targetAttributes: [String: [String: Any]] = [:] + var targetAttributes: [PBXTarget: [String: Any]] = [:] - let uiTestTargets = pbxProj.objects.nativeTargets.objectReferences.filter { $0.object.productType == .uiTestBundle } + let uiTestTargets = pbxProj.nativeTargets.filter { $0.productType == .uiTestBundle } for uiTestTarget in uiTestTargets { // look up TEST_TARGET_NAME build setting func testTargetName(_ target: PBXTarget) -> String? { - guard let configurationList = target.buildConfigurationList else { return nil } - guard let buildConfigurationReferences = self.pbxProj.objects.configurationLists[configurationList]?.buildConfigurations else { return nil } + guard let buildConfigurations = target.buildConfigurationList?.buildConfigurations else { return nil } - let configs = buildConfigurationReferences - .compactMap { ref in self.pbxProj.objects.buildConfigurations[ref] } - - return configs + return buildConfigurations .compactMap { $0.buildSettings["TEST_TARGET_NAME"] as? String } .first } - guard let name = testTargetName(uiTestTarget.object) else { continue } - guard let target = self.pbxProj.objects.targets(named: name).first else { continue } + guard let name = testTargetName(uiTestTarget) else { continue } + guard let target = self.pbxProj.targets(named: name).first else { continue } - targetAttributes[uiTestTarget.reference, default: [:]].merge(["TestTargetID": target.reference]) + // FIX: Can't set in xcproj 5.0+ + targetAttributes[uiTestTarget, default: [:]].merge(["TestTargetID": target]) } - func generateTargetAttributes(_ target: ProjectTarget, targetReference: String) { + func generateTargetAttributes(_ target: ProjectTarget, pbxTarget: PBXTarget) { if !target.attributes.isEmpty { - targetAttributes[targetReference, default: [:]].merge(target.attributes) + targetAttributes[pbxTarget, default: [:]].merge(target.attributes) } func getSingleBuildSetting(_ setting: String) -> String? { @@ -367,7 +338,7 @@ public class PBXProjGenerator { func setTargetAttribute(attribute: String, buildSetting: String) { if let setting = getSingleBuildSetting(buildSetting) { - targetAttributes[targetReference, default: [:]].merge([attribute: setting]) + targetAttributes[pbxTarget, default: [:]].merge([attribute: setting]) } } @@ -376,49 +347,39 @@ public class PBXProjGenerator { } for target in project.aggregateTargets { - guard let targetReference = targetAggregateObjects[target.name]?.reference else { + guard let pbxTarget = targetAggregateObjects[target.name] else { continue } - generateTargetAttributes(target, targetReference: targetReference) + generateTargetAttributes(target, pbxTarget: pbxTarget) } for target in project.targets { - guard let targetReference = targetObjects[target.name]?.reference else { + guard let pbxTarget = targetObjects[target.name] else { continue } - generateTargetAttributes(target, targetReference: targetReference) + generateTargetAttributes(target, pbxTarget: pbxTarget) } - return targetAttributes.isEmpty ? nil : ["TargetAttributes": targetAttributes] + return targetAttributes } - func sortGroups(group: ObjectReference) { + func sortGroups(group: PBXGroup) { // sort children - let children = group.object.children - .compactMap { reference -> ObjectReference? in - guard let fileElement = pbxProj.objects.getFileElement(reference: reference) else { - return nil - } - return ObjectReference(reference: reference, object: fileElement) - } + let children = group.children .sorted { child1, child2 in - let sortOrder1 = child1.object.getSortOrder(groupSortPosition: project.options.groupSortPosition) - let sortOrder2 = child2.object.getSortOrder(groupSortPosition: project.options.groupSortPosition) + let sortOrder1 = child1.getSortOrder(groupSortPosition: project.options.groupSortPosition) + let sortOrder2 = child2.getSortOrder(groupSortPosition: project.options.groupSortPosition) if sortOrder1 == sortOrder2 { - return child1.object.nameOrPath.localizedStandardCompare(child2.object.nameOrPath) == .orderedAscending + return child1.nameOrPath.localizedStandardCompare(child2.nameOrPath) == .orderedAscending } else { return sortOrder1 < sortOrder2 } } - group.object.children = children.map { $0.reference }.filter { $0 != group.reference } + group.children = children.filter { $0 != group } // sort sub groups - let childGroups = group.object.children.compactMap { reference -> ObjectReference? in - guard let group = pbxProj.objects.groups[reference] else { - return nil - } - return ObjectReference(reference: reference, object: group) } + let childGroups = group.children.compactMap { $0 as? PBXGroup } childGroups.forEach(sortGroups) } @@ -428,19 +389,20 @@ public class PBXProjGenerator { let carthageDependencies = getAllCarthageDependencies(target: target) let sourceFiles = try sourceGenerator.getAllSourceFiles(targetType: target.type, sources: target.sources) + .sorted { $0.path.lastComponent < $1.path.lastComponent } var plistPath: Path? var searchForPlist = true var anyDependencyRequiresObjCLinking = false - var dependencies: [String] = [] - var targetFrameworkBuildFiles: [String] = [] + var dependencies: [PBXTargetDependency] = [] + var targetFrameworkBuildFiles: [PBXBuildFile] = [] var frameworkBuildPaths = Set() - var copyFilesBuildPhasesFiles: [TargetSource.BuildPhase.CopyFilesSettings: [String]] = [:] - var copyFrameworksReferences: [String] = [] - var copyResourcesReferences: [String] = [] - var copyWatchReferences: [String] = [] - var extensions: [String] = [] + var copyFilesBuildPhasesFiles: [TargetSource.BuildPhase.CopyFilesSettings: [PBXBuildFile]] = [:] + var copyFrameworksReferences: [PBXBuildFile] = [] + var copyResourcesReferences: [PBXBuildFile] = [] + var copyWatchReferences: [PBXBuildFile] = [] + var extensions: [PBXBuildFile] = [] var carthageFrameworksToEmbed: [String] = [] let targetDependencies = (target.transitivelyLinkDependencies ?? project.options.transitivelyLinkDependencies) ? @@ -475,11 +437,11 @@ public class PBXProjGenerator { case .target: let dependencyTargetName = dependency.reference let targetDependency = generateTargetDependency(from: target.name, to: dependencyTargetName) - dependencies.append(targetDependency.reference) + dependencies.append(targetDependency) guard let dependencyTarget = project.getTarget(dependencyTargetName) else { continue } - let dependencyFileReference = targetFileReferences[dependencyTargetName]! + let dependencyFileReference = targetFileReferences[dependencyTarget.productName]! let dependecyLinkage = dependencyTarget.defaultLinkage let link = dependency.link ?? ( @@ -487,15 +449,11 @@ public class PBXProjGenerator { || (dependecyLinkage == .static && target.type.isExecutable) ) if link { - let dependencyBuildFile = targetBuildFiles[dependencyTargetName]! - let buildFile = createObject( - id: dependencyBuildFile.reference + target.name, - PBXBuildFile( - fileRef: dependencyBuildFile.object.fileRef!, - settings: getDependencyFrameworkSettings(dependency: dependency) - ) + let dependencyFile = targetFileReferences[dependencyTarget.productName]! + let buildFile = addObject( + PBXBuildFile(file: dependencyFile, settings: getDependencyFrameworkSettings(dependency: dependency)) ) - targetFrameworkBuildFiles.append(buildFile.reference) + targetFrameworkBuildFiles.append(buildFile) if !anyDependencyRequiresObjCLinking && dependencyTarget.requiresObjCLinking ?? (dependencyTarget.type == .staticLibrary) { @@ -508,32 +466,31 @@ public class PBXProjGenerator { || (target.type.isTest && (dependencyTarget.type.isFramework || dependencyTarget.type == .bundle)) )) if embed { - let embedFile = createObject( - id: dependencyFileReference + target.name, + let embedFile = addObject( PBXBuildFile( - fileRef: dependencyFileReference, + file: dependencyFileReference, settings: getEmbedSettings(dependency: dependency, codeSign: dependency.codeSign ?? !dependencyTarget.type.isExecutable) ) ) if dependencyTarget.type.isExtension { // embed app extension - extensions.append(embedFile.reference) + extensions.append(embedFile) } else if dependencyTarget.type.isFramework { - copyFrameworksReferences.append(embedFile.reference) + copyFrameworksReferences.append(embedFile) } else if dependencyTarget.type.isApp && dependencyTarget.platform == .watchOS { - copyWatchReferences.append(embedFile.reference) + copyWatchReferences.append(embedFile) } else if dependencyTarget.type == .xpcService { - copyFilesBuildPhasesFiles[.xpcServices, default: []].append(embedFile.reference) + copyFilesBuildPhasesFiles[.xpcServices, default: []].append(embedFile) } else { - copyResourcesReferences.append(embedFile.reference) + copyResourcesReferences.append(embedFile) } } case .framework: guard target.type != .staticLibrary else { break } - let fileReference: String + let fileReference: PBXFileElement if dependency.implicit { fileReference = sourceGenerator.getFileReference( path: Path(dependency.reference), @@ -547,25 +504,20 @@ public class PBXProjGenerator { ) } - let buildFile = createObject( - id: "framework" + fileReference + target.name, - PBXBuildFile( - fileRef: fileReference, - settings: getDependencyFrameworkSettings(dependency: dependency) - ) + let buildFile = addObject( + PBXBuildFile(file: fileReference, settings: getDependencyFrameworkSettings(dependency: dependency)) ) - targetFrameworkBuildFiles.append(buildFile.reference) + targetFrameworkBuildFiles.append(buildFile) if !frameworkFiles.contains(fileReference) { frameworkFiles.append(fileReference) } if embed { - let embedFile = createObject( - id: "framework embed" + fileReference + target.name, - PBXBuildFile(fileRef: fileReference, settings: getEmbedSettings(dependency: dependency, codeSign: dependency.codeSign ?? true)) + let embedFile = addObject( + PBXBuildFile(file: fileReference, settings: getEmbedSettings(dependency: dependency, codeSign: dependency.codeSign ?? true)) ) - copyFrameworksReferences.append(embedFile.reference) + copyFrameworksReferences.append(embedFile) } let buildPath = Path(dependency.reference).parent().string.quoted @@ -581,17 +533,13 @@ public class PBXProjGenerator { } let fileReference = sourceGenerator.getFileReference(path: frameworkPath, inPath: platformPath) - let buildFile = createObject( - id: "carthage" + fileReference + target.name, - PBXBuildFile( - fileRef: fileReference, - settings: getDependencyFrameworkSettings(dependency: dependency) - ) + let buildFile = addObject( + PBXBuildFile(file: fileReference, settings: getDependencyFrameworkSettings(dependency: dependency)) ) carthageFrameworksByPlatform[target.platform.carthageDirectoryName, default: []].insert(fileReference) - targetFrameworkBuildFiles.append(buildFile.reference) + targetFrameworkBuildFiles.append(buildFile) // Embedding handled by iterating over `carthageDependencies` below } @@ -611,39 +559,36 @@ public class PBXProjGenerator { if embed { if directlyEmbedCarthage { - let embedFile = createObject( - id: "carthage embed" + fileReference + target.name, - PBXBuildFile(fileRef: fileReference, settings: getEmbedSettings(dependency: dependency, codeSign: dependency.codeSign ?? true)) + let embedFile = addObject( + PBXBuildFile(file: fileReference, settings: getEmbedSettings(dependency: dependency, codeSign: dependency.codeSign ?? true)) ) - copyFrameworksReferences.append(embedFile.reference) + copyFrameworksReferences.append(embedFile) } else { carthageFrameworksToEmbed.append(dependency.reference) } } } - let fileReference = targetFileReferences[target.name] - var buildPhases: [String] = [] + let fileReference = targetFileReferences[target.productName] + var buildPhases: [PBXBuildPhase] = [] - func getBuildFilesForSourceFiles(_ sourceFiles: [SourceFile]) -> [String] { - let files = sourceFiles + func getBuildFilesForSourceFiles(_ sourceFiles: [SourceFile]) -> [PBXBuildFile] { + return sourceFiles .reduce(into: [SourceFile]()) { output, sourceFile in - if !output.contains(where: { $0.fileReference == sourceFile.fileReference }) { + if !output.contains(where: { $0.fileReference === sourceFile.fileReference }) { output.append(sourceFile) } } - .sorted { $0.path.lastComponent < $1.path.lastComponent } - return files.map { createObject(id: $0.fileReference + target.name, $0.buildFile) } - .map { $0.reference } + .map { addObject($0.buildFile) } } - func getBuildFilesForPhase(_ buildPhase: BuildPhase) -> [String] { + func getBuildFilesForPhase(_ buildPhase: BuildPhase) -> [PBXBuildFile] { let filteredSourceFiles = sourceFiles .filter { $0.buildPhase?.buildPhase == buildPhase } return getBuildFilesForSourceFiles(filteredSourceFiles) } - func getBuildFilesForCopyFilesPhases() -> [TargetSource.BuildPhase.CopyFilesSettings: [String]] { + func getBuildFilesForCopyFilesPhases() -> [TargetSource.BuildPhase.CopyFilesSettings: [PBXBuildFile]] { var sourceFilesByCopyFiles: [TargetSource.BuildPhase.CopyFilesSettings: [SourceFile]] = [:] for sourceFile in sourceFiles { guard case let .copyFiles(copyFilesSettings)? = sourceFile.buildPhase else { continue } @@ -655,19 +600,23 @@ public class PBXProjGenerator { buildPhases += try target.prebuildScripts.map { try generateBuildScript(targetName: target.name, buildScript: $0) } let headersBuildPhaseFiles = getBuildFilesForPhase(.headers) - if !headersBuildPhaseFiles.isEmpty && (target.type == .framework || target.type == .dynamicLibrary) { - let headersBuildPhase = createObject(id: target.name, PBXHeadersBuildPhase(files: headersBuildPhaseFiles)) - buildPhases.append(headersBuildPhase.reference) + if !headersBuildPhaseFiles.isEmpty { + if (target.type == .framework || target.type == .dynamicLibrary) { + let headersBuildPhase = addObject(PBXHeadersBuildPhase(files: headersBuildPhaseFiles)) + buildPhases.append(headersBuildPhase) + } else { + headersBuildPhaseFiles.forEach { pbxProj.delete(object: $0) } + } } let sourcesBuildPhaseFiles = getBuildFilesForPhase(.sources) - let sourcesBuildPhase = createObject(id: target.name, PBXSourcesBuildPhase(files: sourcesBuildPhaseFiles)) - buildPhases.append(sourcesBuildPhase.reference) + let sourcesBuildPhase = addObject(PBXSourcesBuildPhase(files: sourcesBuildPhaseFiles)) + buildPhases.append(sourcesBuildPhase) let resourcesBuildPhaseFiles = getBuildFilesForPhase(.resources) + copyResourcesReferences if !resourcesBuildPhaseFiles.isEmpty { - let resourcesBuildPhase = createObject(id: target.name, PBXResourcesBuildPhase(files: resourcesBuildPhaseFiles)) - buildPhases.append(resourcesBuildPhase.reference) + let resourcesBuildPhase = addObject(PBXResourcesBuildPhase(files: resourcesBuildPhaseFiles)) + buildPhases.append(resourcesBuildPhase) } let swiftObjCInterfaceHeader = project.getCombinedBuildSetting("SWIFT_OBJC_INTERFACE_HEADER_NAME", target: target, config: project.configs[0]) as? String @@ -678,10 +627,8 @@ public class PBXProjGenerator { let inputPaths = ["$(DERIVED_SOURCES_DIR)/$(SWIFT_OBJC_INTERFACE_HEADER_NAME)"] let outputPaths = ["$(BUILT_PRODUCTS_DIR)/include/$(PRODUCT_MODULE_NAME)/$(SWIFT_OBJC_INTERFACE_HEADER_NAME)"] - let script = createObject( - id: "Swift.h" + target.name, + let script = addObject( PBXShellScriptBuildPhase( - files: [], name: "Copy Swift Objective-C Interface Header", inputPaths: inputPaths, outputPaths: outputPaths, @@ -689,14 +636,13 @@ public class PBXProjGenerator { shellScript: "ditto \"${SCRIPT_INPUT_FILE_0}\" \"${SCRIPT_OUTPUT_FILE_0}\"\n" ) ) - buildPhases.append(script.reference) + buildPhases.append(script) } copyFilesBuildPhasesFiles.merge(getBuildFilesForCopyFilesPhases()) { $0 + $1 } if !copyFilesBuildPhasesFiles.isEmpty { for (copyFiles, buildPhaseFiles) in copyFilesBuildPhasesFiles { - let copyFilesBuildPhase = createObject( - id: "copy files" + copyFiles.destination.rawValue + copyFiles.subpath + target.name, + let copyFilesBuildPhase = addObject( PBXCopyFilesBuildPhase( dstPath: copyFiles.subpath, dstSubfolderSpec: copyFiles.destination.destination, @@ -704,23 +650,21 @@ public class PBXProjGenerator { ) ) - buildPhases.append(copyFilesBuildPhase.reference) + buildPhases.append(copyFilesBuildPhase) } } if !targetFrameworkBuildFiles.isEmpty { - let frameworkBuildPhase = createObject( - id: target.name, + let frameworkBuildPhase = addObject( PBXFrameworksBuildPhase(files: targetFrameworkBuildFiles) ) - buildPhases.append(frameworkBuildPhase.reference) + buildPhases.append(frameworkBuildPhase) } if !extensions.isEmpty { - let copyFilesPhase = createObject( - id: "embed app extensions" + target.name, + let copyFilesPhase = addObject( PBXCopyFilesBuildPhase( dstPath: "", dstSubfolderSpec: .plugins, @@ -729,14 +673,13 @@ public class PBXProjGenerator { ) ) - buildPhases.append(copyFilesPhase.reference) + buildPhases.append(copyFilesPhase) } copyFrameworksReferences += getBuildFilesForPhase(.frameworks) if !copyFrameworksReferences.isEmpty { - let copyFilesPhase = createObject( - id: "embed frameworks" + target.name, + let copyFilesPhase = addObject( PBXCopyFilesBuildPhase( dstPath: "", dstSubfolderSpec: .frameworks, @@ -745,13 +688,12 @@ public class PBXProjGenerator { ) ) - buildPhases.append(copyFilesPhase.reference) + buildPhases.append(copyFilesPhase) } if !copyWatchReferences.isEmpty { - let copyFilesPhase = createObject( - id: "embed watch content" + target.name, + let copyFilesPhase = addObject( PBXCopyFilesBuildPhase( dstPath: "$(CONTENTS_FOLDER_PATH)/Watch", dstSubfolderSpec: .productsDirectory, @@ -760,7 +702,7 @@ public class PBXProjGenerator { ) ) - buildPhases.append(copyFilesPhase.reference) + buildPhases.append(copyFilesPhase) } if !carthageFrameworksToEmbed.isEmpty { @@ -770,10 +712,8 @@ public class PBXProjGenerator { let outputPaths = carthageFrameworksToEmbed .map { "$(BUILT_PRODUCTS_DIR)/$(FRAMEWORKS_FOLDER_PATH)/\($0)\($0.contains(".") ? "" : ".framework")" } let carthageExecutable = project.options.carthageExecutablePath ?? "carthage" - let carthageScript = createObject( - id: "Carthage" + target.name, + let carthageScript = addObject( PBXShellScriptBuildPhase( - files: [], name: "Carthage", inputPaths: inputPaths, outputPaths: outputPaths, @@ -781,12 +721,11 @@ public class PBXProjGenerator { shellScript: "\(carthageExecutable) copy-frameworks\n" ) ) - buildPhases.append(carthageScript.reference) + buildPhases.append(carthageScript) } let buildRules = target.buildRules.map { buildRule in - createObject( - id: "\(target.name)-\(buildRule.action)-\(buildRule.fileType)", + addObject( PBXBuildRule( compilerSpec: buildRule.action.compilerSpec, fileType: buildRule.fileType.fileType, @@ -797,12 +736,12 @@ public class PBXProjGenerator { outputFilesCompilerFlags: buildRule.outputFilesCompilerFlags, script: buildRule.action.script ) - ).reference + ) } buildPhases += try target.postbuildScripts.map { try generateBuildScript(targetName: target.name, buildScript: $0) } - let configs: [ObjectReference] = project.configs.map { config in + let configs: [XCBuildConfiguration] = project.configs.map { config in var buildSettings = project.getTargetBuildSettings(target: target, config: config) // automatically set INFOPLIST_FILE path @@ -876,32 +815,33 @@ public class PBXProjGenerator { } } - var baseConfigurationReference: String? - if let configPath = target.configFiles[config.name] { - baseConfigurationReference = sourceGenerator.getContainedFileReference(path: project.basePath + configPath) + var baseConfiguration: PBXFileReference? + if let configPath = target.configFiles[config.name], + let fileReference = sourceGenerator.getContainedFileReference(path: project.basePath + configPath) as? PBXFileReference { + baseConfiguration = fileReference } let buildConfig = XCBuildConfiguration( name: config.name, - baseConfigurationReference: baseConfigurationReference, buildSettings: buildSettings ) - return createObject(id: config.name + target.name, buildConfig) + buildConfig.baseConfiguration = baseConfiguration + return addObject(buildConfig) } - let buildConfigList = createObject(id: target.name, XCConfigurationList( - buildConfigurations: configs.map { $0.reference }, + let buildConfigList = addObject(XCConfigurationList( + buildConfigurations: configs, defaultConfigurationName: "" )) - let targetObject = targetObjects[target.name]!.object + let targetObject = targetObjects[target.name]! targetObject.name = target.name - targetObject.buildConfigurationList = buildConfigList.reference + targetObject.buildConfigurationList = buildConfigList targetObject.buildPhases = buildPhases targetObject.dependencies = dependencies targetObject.productName = target.name targetObject.buildRules = buildRules - targetObject.productReference = fileReference + targetObject.product = fileReference if !target.isLegacy { targetObject.productType = target.type } @@ -943,7 +883,7 @@ public class PBXProjGenerator { if let target = projectTarget as? Target { for dependency in target.dependencies { // don't overwrite frameworks, to allow top level ones to rule - if frameworks.contains(reference: dependency.reference) { + if frameworks[dependency.reference] != nil { continue } @@ -987,7 +927,7 @@ public class PBXProjGenerator { for dependency in target.dependencies { // don't overwrite dependencies, to allow top level ones to rule - if dependencies.contains(reference: dependency.reference) { + if dependencies[dependency.reference] != nil { continue } diff --git a/Sources/XcodeGenKit/ProjectGenerator.swift b/Sources/XcodeGenKit/ProjectGenerator.swift index 5206880f..b9561e45 100644 --- a/Sources/XcodeGenKit/ProjectGenerator.swift +++ b/Sources/XcodeGenKit/ProjectGenerator.swift @@ -2,7 +2,7 @@ import Foundation import JSONUtilities import PathKit import ProjectSpec -import xcproj +import xcodeproj import Yams public class ProjectGenerator { @@ -42,8 +42,8 @@ public class ProjectGenerator { func getBuildEntry(_ buildTarget: Scheme.BuildTarget) -> XCScheme.BuildAction.Entry { - guard let targetReference = pbxProject.objects.targets(named: buildTarget.target).first else { - fatalError("Unable to find target named \"\(buildTarget.target)\" in \"PBXProj.objects.targets\"") + guard let pbxTarget = pbxProject.targets(named: buildTarget.target).first else { + fatalError("Unable to find target named \"\(buildTarget.target)\" in \"PBXProj.targets\"") } guard let buildableName = @@ -53,7 +53,7 @@ public class ProjectGenerator { } let buildableReference = XCScheme.BuildableReference( referencedContainer: "container:\(project.name).xcodeproj", - blueprintIdentifier: targetReference.reference, + blueprint: pbxTarget, buildableName: buildableName, blueprintName: buildTarget.target ) diff --git a/Sources/XcodeGenKit/SettingsBuilder.swift b/Sources/XcodeGenKit/SettingsBuilder.swift index 6be0b27c..d63cf4f2 100644 --- a/Sources/XcodeGenKit/SettingsBuilder.swift +++ b/Sources/XcodeGenKit/SettingsBuilder.swift @@ -2,7 +2,7 @@ import Foundation import JSONUtilities import PathKit import ProjectSpec -import xcproj +import xcodeproj import Yams extension Project { diff --git a/Sources/XcodeGenKit/SettingsPresetFile.swift b/Sources/XcodeGenKit/SettingsPresetFile.swift index 4fa276b3..5122bc96 100644 --- a/Sources/XcodeGenKit/SettingsPresetFile.swift +++ b/Sources/XcodeGenKit/SettingsPresetFile.swift @@ -1,6 +1,6 @@ import Foundation import ProjectSpec -import xcproj +import xcodeproj public enum SettingsPresetFile { case config(ConfigType) diff --git a/Sources/XcodeGenKit/SourceGenerator.swift b/Sources/XcodeGenKit/SourceGenerator.swift index a56614e3..cf2f23c0 100644 --- a/Sources/XcodeGenKit/SourceGenerator.swift +++ b/Sources/XcodeGenKit/SourceGenerator.swift @@ -1,24 +1,24 @@ import Foundation import PathKit import ProjectSpec -import xcproj +import xcodeproj struct SourceFile { let path: Path - let fileReference: String + let fileReference: PBXFileElement let buildFile: PBXBuildFile let buildPhase: TargetSource.BuildPhase? } class SourceGenerator { - var rootGroups: Set = [] - private var fileReferencesByPath: [String: String] = [:] - private var groupsByPath: [Path: ObjectReference] = [:] - private var variantGroupsByPath: [Path: ObjectReference] = [:] + var rootGroups: Set = [] + private var fileReferencesByPath: [String: PBXFileElement] = [:] + private var groupsByPath: [Path: PBXGroup] = [:] + private var variantGroupsByPath: [Path: PBXVariantGroup] = [:] private let project: Project - var addObjectClosure: (String, PBXObject) -> String + var addObjectClosure: (PBXObject) -> Void var targetSourceExcludePaths: Set = [] var defaultExcludedFiles = [ ".DS_Store", @@ -28,18 +28,14 @@ class SourceGenerator { private(set) var knownRegions: Set = [] - init(project: Project, addObjectClosure: @escaping (String, PBXObject) -> String) { + init(project: Project, addObjectClosure: @escaping (PBXObject) -> Void) { self.project = project self.addObjectClosure = addObjectClosure } - func addObject(id: String, _ object: PBXObject) -> String { - return addObjectClosure(id, object) - } - - func createObject(id: String, _ object: T) -> ObjectReference { - let reference = addObject(id: id, object) - return ObjectReference(reference: reference, object: object) + func addObject(_ object: T) -> T { + addObjectClosure(object) + return object } func getAllSourceFiles(targetType: PBXProductType, sources: [TargetSource]) throws -> [SourceFile] { @@ -90,7 +86,7 @@ class SourceGenerator { settings["COMPILER_FLAGS"] = targetSource.compilerFlags.joined(separator: " ") } - let buildFile = PBXBuildFile(fileRef: fileReference, settings: settings.isEmpty ? nil : settings) + let buildFile = PBXBuildFile(file: fileReference, settings: settings.isEmpty ? nil : settings) return SourceFile( path: path, fileReference: fileReference, @@ -99,7 +95,7 @@ class SourceGenerator { ) } - func getContainedFileReference(path: Path) -> String { + func getContainedFileReference(path: Path) -> PBXFileElement { let createIntermediateGroups = project.options.createIntermediateGroups let parentPath = path.parent() @@ -112,12 +108,12 @@ class SourceGenerator { ) if createIntermediateGroups { - createIntermediaGroups(for: parentGroup.reference, at: parentPath) + createIntermediaGroups(for: parentGroup, at: parentPath) } return fileReference } - func getFileReference(path: Path, inPath: Path, name: String? = nil, sourceTree: PBXSourceTree = .group, lastKnownFileType: String? = nil) -> String { + func getFileReference(path: Path, inPath: Path, name: String? = nil, sourceTree: PBXSourceTree = .group, lastKnownFileType: String? = nil) -> PBXFileElement { let fileReferenceKey = path.string.lowercased() if let fileReference = fileReferencesByPath[fileReferenceKey] { return fileReference @@ -127,7 +123,7 @@ class SourceGenerator { if fileReferencePath.string == fileReferenceName { fileReferenceName = nil } - let lastKnownFileType = lastKnownFileType ?? PBXFileReference.fileType(path: path) + let lastKnownFileType = lastKnownFileType ?? Xcode.fileType(path: path) if path.extension == "xcdatamodeld" { let versionedModels = (try? path.children()) ?? [] @@ -137,10 +133,9 @@ class SourceGenerator { .filter { $0.extension == "xcdatamodel" } .sorted { $0.string.localizedStandardCompare($1.string) == .orderedAscending } - let modelFileReference = + let modelFileReferences = sortedPaths.map { path in - createObject( - id: path.byRemovingBase(path: project.basePath).string, + addObject( PBXFileReference( sourceTree: .group, lastKnownFileType: "wrapper.xcdatamodel", @@ -151,23 +146,22 @@ class SourceGenerator { // If no current version path is found we fall back to alphabetical // order by taking the last item in the sortedPaths array let currentVersionPath = findCurrentCoreDataModelVersionPath(using: versionedModels) ?? sortedPaths.last - let currentVersion: ObjectReference? = { + let currentVersion: PBXFileReference? = { guard let indexOf = sortedPaths.index(where: { $0 == currentVersionPath }) else { return nil } - return modelFileReference[indexOf] + return modelFileReferences[indexOf] }() - let versionGroup = addObject(id: fileReferencePath.string, XCVersionGroup( - currentVersion: currentVersion?.reference, + let versionGroup = addObject(XCVersionGroup( + currentVersion: currentVersion, path: fileReferencePath.string, sourceTree: sourceTree, versionGroupType: "wrapper.xcdatamodel", - children: modelFileReference.map { $0.reference } + children: modelFileReferences )) fileReferencesByPath[fileReferenceKey] = versionGroup return versionGroup } else { // For all extensions other than `xcdatamodeld` - let fileReference = createObject( - id: path.byRemovingBase(path: project.basePath).string, + let fileReference = addObject( PBXFileReference( sourceTree: sourceTree, name: fileReferenceName, @@ -175,8 +169,8 @@ class SourceGenerator { path: fileReferencePath.string ) ) - fileReferencesByPath[fileReferenceKey] = fileReference.reference - return fileReference.reference + fileReferencesByPath[fileReferenceKey] = fileReference + return fileReference } } } @@ -207,12 +201,16 @@ class SourceGenerator { /// Create a group or return an existing one at the path. /// Any merged children are added to a new group or merged into an existing one. - private func getGroup(path: Path, name: String? = nil, mergingChildren children: [String], createIntermediateGroups: Bool, isBaseGroup: Bool) -> ObjectReference { - let groupReference: ObjectReference + private func getGroup(path: Path, name: String? = nil, mergingChildren children: [PBXFileElement], createIntermediateGroups: Bool, isBaseGroup: Bool) -> PBXGroup { + let groupReference: PBXGroup if let cachedGroup = groupsByPath[path] { - // only add the children that aren't already in the cachedGroup - cachedGroup.object.children = Array(Set(cachedGroup.object.children + children)) + for child in children { + // only add the children that aren't already in the cachedGroup + if !cachedGroup.children.contains(child) { + cachedGroup.children.append(child) + } + } groupReference = cachedGroup } else { @@ -235,28 +233,27 @@ class SourceGenerator { name: groupName != groupPath ? groupName : nil, path: groupPath ) - groupReference = createObject(id: path.byRemovingBase(path: project.basePath).string, group) + groupReference = addObject(group) groupsByPath[path] = groupReference if isTopLevelGroup { - rootGroups.insert(groupReference.reference) + rootGroups.insert(groupReference) } } return groupReference } /// Creates a variant group or returns an existing one at the path - private func getVariantGroup(path: Path, inPath: Path) -> ObjectReference { - let variantGroup: ObjectReference + private func getVariantGroup(path: Path, inPath: Path) -> PBXVariantGroup { + let variantGroup: PBXVariantGroup if let cachedGroup = variantGroupsByPath[path] { variantGroup = cachedGroup } else { let group = PBXVariantGroup( - children: [], sourceTree: .group, name: path.lastComponent ) - variantGroup = createObject(id: path.byRemovingBase(path: project.basePath).string, group) + variantGroup = addObject(group) variantGroupsByPath[path] = variantGroup } return variantGroup @@ -305,27 +302,24 @@ class SourceGenerator { /// creates all the source files and groups they belong to for a given targetSource private func getGroupSources(targetType: PBXProductType, targetSource: TargetSource, path: Path, isBaseGroup: Bool) - throws -> (sourceFiles: [SourceFile], groups: [ObjectReference]) { + throws -> (sourceFiles: [SourceFile], groups: [PBXGroup]) { let children = try getSourceChildren(targetSource: targetSource, dirPath: path) let directories = children .filter { $0.isDirectory && $0.extension == nil && $0.extension != "lproj" } - .sorted { $0.lastComponent < $1.lastComponent } let filePaths = children .filter { $0.isFile || $0.extension != nil && $0.extension != "lproj" } - .sorted { $0.lastComponent < $1.lastComponent } let localisedDirectories = children .filter { $0.extension == "lproj" } - .sorted { $0.lastComponent < $1.lastComponent } - var groupChildren: [String] = filePaths.map { getFileReference(path: $0, inPath: path) } + var groupChildren: [PBXFileElement] = filePaths.map { getFileReference(path: $0, inPath: path) } var allSourceFiles: [SourceFile] = filePaths.map { generateSourceFile(targetType: targetType, targetSource: targetSource, path: $0) } - var groups: [ObjectReference] = [] + var groups: [PBXGroup] = [] for path in directories { let subGroups = try getGroupSources(targetType: targetType, targetSource: targetSource, path: path, isBaseGroup: false) @@ -336,11 +330,11 @@ class SourceGenerator { allSourceFiles += subGroups.sourceFiles - guard let first = subGroups.groups.first else { + guard let firstGroup = subGroups.groups.first else { continue } - groupChildren.append(first.reference) + groupChildren.append(firstGroup) groups += subGroups.groups } @@ -363,13 +357,13 @@ class SourceGenerator { .filter(isIncludedPath) .sorted() { let variantGroup = getVariantGroup(path: filePath, inPath: path) - groupChildren.append(variantGroup.reference) - baseLocalisationVariantGroups.append(variantGroup.object) + groupChildren.append(variantGroup) + baseLocalisationVariantGroups.append(variantGroup) let sourceFile = SourceFile( path: filePath, - fileReference: variantGroup.reference, - buildFile: PBXBuildFile(fileRef: variantGroup.reference), + fileReference: variantGroup, + buildFile: PBXBuildFile(file: variantGroup), buildPhase: .resources ) allSourceFiles.append(sourceFile) @@ -407,7 +401,7 @@ class SourceGenerator { let sourceFile = SourceFile( path: filePath, fileReference: fileReference, - buildFile: PBXBuildFile(fileRef: fileReference), + buildFile: PBXBuildFile(file: fileReference), buildPhase: .resources ) allSourceFiles.append(sourceFile) @@ -423,7 +417,7 @@ class SourceGenerator { isBaseGroup: isBaseGroup ) if project.options.createIntermediateGroups { - createIntermediaGroups(for: group.reference, at: path) + createIntermediaGroups(for: group, at: path) } groups.insert(group, at: 0) @@ -440,7 +434,7 @@ class SourceGenerator { let createIntermediateGroups = project.options.createIntermediateGroups var sourceFiles: [SourceFile] = [] - let sourceReference: String + let sourceReference: PBXFileElement var sourcePath = path switch type { case .folder: @@ -481,7 +475,7 @@ class SourceGenerator { } else { let parentGroup = getGroup(path: parentPath, mergingChildren: [fileReference], createIntermediateGroups: createIntermediateGroups, isBaseGroup: true) sourcePath = parentPath - sourceReference = parentGroup.reference + sourceReference = parentGroup } sourceFiles.append(sourceFile) @@ -489,11 +483,11 @@ class SourceGenerator { let (groupSourceFiles, groups) = try getGroupSources(targetType: targetType, targetSource: targetSource, path: path, isBaseGroup: true) let group = groups.first! if let name = targetSource.name { - group.object.name = name + group.name = name } sourceFiles += groupSourceFiles - sourceReference = group.reference + sourceReference = group } if createIntermediateGroups { @@ -504,7 +498,7 @@ class SourceGenerator { } // Add groups for all parents recursively - private func createIntermediaGroups(for groupReference: String, at path: Path) { + private func createIntermediaGroups(for fileElement: PBXFileElement, at path: Path) { let parentPath = path.parent() guard parentPath != project.basePath && path.string.contains(project.basePath.string) else { @@ -513,10 +507,10 @@ class SourceGenerator { } let hasParentGroup = groupsByPath[parentPath] != nil - let parentGroup = getGroup(path: parentPath, mergingChildren: [groupReference], createIntermediateGroups: true, isBaseGroup: false) + let parentGroup = getGroup(path: parentPath, mergingChildren: [fileElement], createIntermediateGroups: true, isBaseGroup: false) if !hasParentGroup { - createIntermediaGroups(for: parentGroup.reference, at: parentPath) + createIntermediaGroups(for: parentGroup, at: parentPath) } } diff --git a/Sources/XcodeGenKit/XCProjExtensions.swift b/Sources/XcodeGenKit/XCProjExtensions.swift index edf9fe5e..df439084 100644 --- a/Sources/XcodeGenKit/XCProjExtensions.swift +++ b/Sources/XcodeGenKit/XCProjExtensions.swift @@ -1,5 +1,6 @@ import Foundation -import xcproj +import xcodeproj +import PathKit extension PBXFileElement { @@ -11,8 +12,8 @@ extension PBXFileElement { extension PBXProj { public func printGroups() -> String { - guard let project = objects.projects.first?.value, - let mainGroup = objects.groups.getReference(project.mainGroup) else { + guard let project = projects.first, + let mainGroup = project.mainGroup else { return "" } return printGroup(group: mainGroup) @@ -20,17 +21,31 @@ extension PBXProj { public func printGroup(group: PBXGroup) -> String { var string = group.nameOrPath - for reference in group.children { - if let group = objects.groups.getReference(reference) { + for child in group.children { + if let group = child as? PBXGroup { string += "\n 📁 " + printGroup(group: group).replacingOccurrences(of: "\n ", with: "\n ") - } else if let fileReference = objects.fileReferences.getReference(reference) { + } else if let fileReference = child as? PBXFileReference { string += "\n 📄 " + fileReference.nameOrPath - } else if let variantGroup = objects.variantGroups.getReference(reference) { + } else if let variantGroup = child as? PBXVariantGroup { string += "\n 🌎 " + variantGroup.nameOrPath - } else if let versionGroup = objects.versionGroups.getReference(reference) { + } else if let versionGroup = child as? XCVersionGroup { string += "\n 🔢 " + versionGroup.nameOrPath } } return string } } + +extension Dictionary { + + public var valueArray: Array { + return Array(values) + } +} + +extension Xcode { + + public static func fileType(path: Path) -> String? { + return path.extension.flatMap { Xcode.filetype(extension: $0) } + } +} diff --git a/Tests/Fixtures/TestProject/Project.xcodeproj/project.pbxproj b/Tests/Fixtures/TestProject/Project.xcodeproj/project.pbxproj index 28e004fc..10501eab 100644 --- a/Tests/Fixtures/TestProject/Project.xcodeproj/project.pbxproj +++ b/Tests/Fixtures/TestProject/Project.xcodeproj/project.pbxproj @@ -7,15 +7,15 @@ objects = { /* Begin PBXAggregateTarget section */ - AT_445731917037 /* SuperTarget */ = { + AT_D40C01B2BAD29EDEA392714DFB69FE8F /* SuperTarget */ = { isa = PBXAggregateTarget; - buildConfigurationList = CL_445731917037 /* Build configuration list for PBXAggregateTarget "SuperTarget" */; + buildConfigurationList = CL_B523BC91AF70F483BF998E2BA8DD6669 /* Build configuration list for PBXAggregateTarget "SuperTarget" */; buildPhases = ( - SSBP_8280041834 /* MyScript */, + SSBP_831D7D5A30B0F736E1E92F7B5CF9428F /* MyScript */, ); dependencies = ( - TD_208010900457 /* PBXTargetDependency */, - TD_747418473860 /* PBXTargetDependency */, + TD_B8AB4064784522A5F3760CB1372D1BCD /* PBXTargetDependency */, + TD_D056799E80FFF41247BAE692D01142F0 /* PBXTargetDependency */, ); name = SuperTarget; productName = SuperTarget; @@ -23,965 +23,923 @@ /* End PBXAggregateTarget section */ /* Begin PBXBuildFile section */ - BF_119005558336 /* StaticLibrary_ObjC.h in CopyFiles */ = {isa = PBXBuildFile; fileRef = FR_698230898030 /* StaticLibrary_ObjC.h */; }; - BF_138356261076 /* InterfaceController.swift in Sources */ = {isa = PBXBuildFile; fileRef = FR_363921640403 /* InterfaceController.swift */; }; - BF_140777424236 /* Result.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = FR_584425140013 /* Result.framework */; }; - BF_143559378694 = {isa = PBXBuildFile; fileRef = FR_919543414727 /* StaticLibrary_ObjC.a */; }; - BF_149117711530 /* FrameworkFile.swift in Sources */ = {isa = PBXBuildFile; fileRef = FR_172952167809 /* FrameworkFile.swift */; }; - BF_150525852574 /* StaticLibrary_ObjC.m in Sources */ = {isa = PBXBuildFile; fileRef = "FR_698230898030-1" /* StaticLibrary_ObjC.m */; }; - BF_156245390034 /* MyFramework.h in Headers */ = {isa = PBXBuildFile; fileRef = FR_183521624014 /* MyFramework.h */; settings = {ATTRIBUTES = (Public, ); }; }; - BF_159058095963 /* module.modulemap in CopyFiles */ = {isa = PBXBuildFile; fileRef = FR_665156855283 /* module.modulemap */; }; - BF_167705969896 /* TestProjectUITests.swift in Sources */ = {isa = PBXBuildFile; fileRef = FR_145531354566 /* TestProjectUITests.swift */; }; - BF_182635022050 /* Assets.xcassets in Resources */ = {isa = PBXBuildFile; fileRef = FR_830053537293 /* Assets.xcassets */; }; - BF_184447863946 = {isa = PBXBuildFile; fileRef = FR_935153865209 /* iMessageApp.app */; }; - BF_186245454304 /* LocalizedStoryboard.storyboard in Resources */ = {isa = PBXBuildFile; fileRef = VG_118219888726 /* LocalizedStoryboard.storyboard */; }; - BF_190684453680 = {isa = PBXBuildFile; fileRef = FR_376569054786 /* XPC Service.xpc */; }; - BF_190695186098 /* StaticLibrary_ObjC.h in CopyFiles */ = {isa = PBXBuildFile; fileRef = FR_698230898030 /* StaticLibrary_ObjC.h */; }; - BF_206432481076 /* ExtensionDelegate.swift in Sources */ = {isa = PBXBuildFile; fileRef = FR_340586388409 /* ExtensionDelegate.swift */; }; - BF_211435872001 /* Localizable.strings in Resources */ = {isa = PBXBuildFile; fileRef = VG_473000061463 /* Localizable.strings */; }; - BF_212221512596 /* StaticLibrary.swift in Sources */ = {isa = PBXBuildFile; fileRef = FR_470929579339 /* StaticLibrary.swift */; }; - BF_215463341392 /* SomeFramework.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = FR_654302359039 /* SomeFramework.framework */; }; - BF_219605708533 = {isa = PBXBuildFile; fileRef = FR_563193937230 /* Framework2.framework */; }; - BF_225293845818 = {isa = PBXBuildFile; fileRef = FR_507023492251 /* App_watchOS Extension.appex */; }; - BF_237760701422 /* Assets.xcassets in Resources */ = {isa = PBXBuildFile; fileRef = FR_987043315473 /* Assets.xcassets */; }; - BF_239684316986 /* Headers in Headers */ = {isa = PBXBuildFile; fileRef = FR_815403394914 /* Headers */; settings = {ATTRIBUTES = (Public, ); }; }; - BF_243071719122 /* FrameworkFile.swift in Sources */ = {isa = PBXBuildFile; fileRef = FR_172952167809 /* FrameworkFile.swift */; }; - BF_250927007176 /* MyFramework.h in Headers */ = {isa = PBXBuildFile; fileRef = FR_183521624014 /* MyFramework.h */; settings = {ATTRIBUTES = (Public, ); }; }; - BF_259448131292 /* Headers in Headers */ = {isa = PBXBuildFile; fileRef = FR_815403394914 /* Headers */; settings = {ATTRIBUTES = (Public, ); }; }; - BF_268392110450 /* Assets.xcassets in Resources */ = {isa = PBXBuildFile; fileRef = FR_587738154368 /* Assets.xcassets */; }; - BF_279581961655 /* Assets.xcassets in Resources */ = {isa = PBXBuildFile; fileRef = FR_868653349092 /* Assets.xcassets */; }; - BF_280535243540 /* Main.storyboard in Resources */ = {isa = PBXBuildFile; fileRef = VG_609193904586 /* Main.storyboard */; }; - BF_284620660317 /* MyBundle.bundle in Resources */ = {isa = PBXBuildFile; fileRef = FR_238161558082 /* MyBundle.bundle */; }; - BF_292474606791 = {isa = PBXBuildFile; fileRef = FR_525119120469 /* Framework.framework */; }; - BF_294676705190 = {isa = PBXBuildFile; fileRef = FR_530818555464 /* StaticLibrary_ObjC.a */; }; - BF_303822704662 = {isa = PBXBuildFile; fileRef = FR_472296042419 /* Framework.framework */; }; - BF_304637845091 /* main.m in Sources */ = {isa = PBXBuildFile; fileRef = FR_151462316179 /* main.m */; }; - BF_308631758818 /* XPC Service.xpc in CopyFiles */ = {isa = PBXBuildFile; fileRef = FR_376569054786 /* XPC Service.xpc */; settings = {ATTRIBUTES = (CodeSignOnCopy, RemoveHeadersOnCopy, ); }; }; - BF_309594709686 /* Assets.xcassets in Resources */ = {isa = PBXBuildFile; fileRef = FR_511515916115 /* Assets.xcassets */; }; - BF_314868376788 /* Localizable.stringsdict in Resources */ = {isa = PBXBuildFile; fileRef = VG_746876637628 /* Localizable.stringsdict */; }; - BF_324363145049 /* Framework.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = FR_472296042419 /* Framework.framework */; }; - BF_331192862207 /* ViewController.swift in Sources */ = {isa = PBXBuildFile; fileRef = FR_481575785861 /* ViewController.swift */; settings = {COMPILER_FLAGS = "-Werror"; }; }; - BF_334321520545 /* Assets.xcassets in Resources */ = {isa = PBXBuildFile; fileRef = FR_377082606829 /* Assets.xcassets */; }; - BF_334778067417 = {isa = PBXBuildFile; fileRef = FR_783122899910 /* App_iOS_Tests.xctest */; }; - BF_341452282021 /* MyFramework.h in Headers */ = {isa = PBXBuildFile; fileRef = FR_183521624014 /* MyFramework.h */; settings = {ATTRIBUTES = (Public, ); }; }; - BF_360196406184 /* TestProjectTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = FR_722239415598 /* TestProjectTests.swift */; }; - BF_387462025786 /* Main.storyboard in Resources */ = {isa = PBXBuildFile; fileRef = VG_202279841299 /* Main.storyboard */; }; - BF_391366142497 /* Framework2.framework in Embed Frameworks */ = {isa = PBXBuildFile; fileRef = FR_662897337290 /* Framework2.framework */; settings = {ATTRIBUTES = (CodeSignOnCopy, RemoveHeadersOnCopy, ); }; }; - BF_425679397292 /* MyFramework.h in Headers */ = {isa = PBXBuildFile; fileRef = FR_183521624014 /* MyFramework.h */; settings = {ATTRIBUTES = (Public, ); }; }; - BF_434838320682 /* StaticLibrary_ObjC.m in Sources */ = {isa = PBXBuildFile; fileRef = "FR_698230898030-1" /* StaticLibrary_ObjC.m */; }; - BF_441538117869 /* App_watchOS Extension.appex in Embed App Extensions */ = {isa = PBXBuildFile; fileRef = FR_507023492251 /* App_watchOS Extension.appex */; settings = {ATTRIBUTES = (RemoveHeadersOnCopy, ); }; }; - BF_455187765496 /* Result.framework in Embed Frameworks */ = {isa = PBXBuildFile; fileRef = FR_131384036341 /* Result.framework */; settings = {ATTRIBUTES = (CodeSignOnCopy, RemoveHeadersOnCopy, ); }; }; - BF_456457948943 /* FrameworkFile.swift in Sources */ = {isa = PBXBuildFile; fileRef = FR_172952167809 /* FrameworkFile.swift */; }; - BF_461044234706 /* SomeFramework.framework in Embed Frameworks */ = {isa = PBXBuildFile; fileRef = FR_654302359039 /* SomeFramework.framework */; settings = {ATTRIBUTES = (CodeSignOnCopy, RemoveHeadersOnCopy, ); }; }; - BF_463608041925 /* StaticLibrary_ObjC.h in CopyFiles */ = {isa = PBXBuildFile; fileRef = FR_698230898030 /* StaticLibrary_ObjC.h */; }; - BF_474063668246 /* Result.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = FR_763057275314 /* Result.framework */; }; - BF_479713239854 = {isa = PBXBuildFile; fileRef = FR_105280345645 /* Framework2.framework */; }; - BF_496472559782 /* MyFramework.h in Headers */ = {isa = PBXBuildFile; fileRef = FR_183521624014 /* MyFramework.h */; settings = {ATTRIBUTES = (Public, ); }; }; - BF_503484983186 /* MoreUnder.swift in Sources */ = {isa = PBXBuildFile; fileRef = FR_196911129660 /* MoreUnder.swift */; }; - BF_510053944904 /* Headers in Headers */ = {isa = PBXBuildFile; fileRef = FR_815403394914 /* Headers */; settings = {ATTRIBUTES = (Public, ); }; }; - BF_515435124777 /* FrameworkFile.swift in Sources */ = {isa = PBXBuildFile; fileRef = FR_172952167809 /* FrameworkFile.swift */; }; - BF_517043434617 /* FrameworkFile.swift in Sources */ = {isa = PBXBuildFile; fileRef = FR_172952167809 /* FrameworkFile.swift */; }; - BF_518775144316 /* SomeXPCService.xpc in CopyFiles */ = {isa = PBXBuildFile; fileRef = FR_229826849033 /* SomeXPCService.xpc */; }; - BF_526105569599 = {isa = PBXBuildFile; fileRef = FR_437179166843 /* StaticLibrary_Swift.a */; }; - BF_529143086177 /* MyFramework.h in Headers */ = {isa = PBXBuildFile; fileRef = FR_183521624014 /* MyFramework.h */; settings = {ATTRIBUTES = (Public, ); }; }; - BF_532861652809 /* FrameworkFile.swift in Sources */ = {isa = PBXBuildFile; fileRef = FR_172952167809 /* FrameworkFile.swift */; }; - BF_538515166673 /* LaunchScreen.storyboard in Resources */ = {isa = PBXBuildFile; fileRef = VG_256263906698 /* LaunchScreen.storyboard */; }; - BF_550502704373 = {isa = PBXBuildFile; fileRef = FR_662897337290 /* Framework2.framework */; }; - BF_552913093094 /* Framework.framework in Embed Frameworks */ = {isa = PBXBuildFile; fileRef = FR_525119120469 /* Framework.framework */; settings = {ATTRIBUTES = (CodeSignOnCopy, RemoveHeadersOnCopy, ); }; }; - BF_561304997165 /* Standalone.swift in Sources */ = {isa = PBXBuildFile; fileRef = FR_675266829517 /* Standalone.swift */; }; - BF_563614389392 = {isa = PBXBuildFile; fileRef = FR_618687462494 /* iMessageExtension.appex */; }; - BF_575042573791 /* module.modulemap in CopyFiles */ = {isa = PBXBuildFile; fileRef = FR_665156855283 /* module.modulemap */; }; - BF_597639300414 /* Framework.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = FR_525119120469 /* Framework.framework */; }; - BF_606517090398 = {isa = PBXBuildFile; fileRef = FR_281269793733 /* StaticLibrary_ObjC.a */; }; - BF_612351978356 /* Interface.storyboard in Resources */ = {isa = PBXBuildFile; fileRef = VG_264279911176 /* Interface.storyboard */; }; - BF_616519281451 /* Framework2.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = FR_662897337290 /* Framework2.framework */; settings = {ATTRIBUTES = (Weak, ); }; }; - BF_624802436672 /* FrameworkFile.swift in Sources */ = {isa = PBXBuildFile; fileRef = FR_172952167809 /* FrameworkFile.swift */; }; - BF_628591712051 /* module.modulemap in CopyFiles */ = {isa = PBXBuildFile; fileRef = FR_665156855283 /* module.modulemap */; }; - BF_629554450880 /* Result.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = FR_763057275314 /* Result.framework */; }; - BF_647038614509 /* iMessageApp.app in Resources */ = {isa = PBXBuildFile; fileRef = FR_935153865209 /* iMessageApp.app */; settings = {ATTRIBUTES = (RemoveHeadersOnCopy, ); }; }; - BF_650026899468 = {isa = PBXBuildFile; fileRef = FR_602719163962 /* XPC_Service.h */; settings = {ATTRIBUTES = (Public, ); }; }; - BF_664393732795 /* StaticLibrary_ObjC.a in Frameworks */ = {isa = PBXBuildFile; fileRef = FR_281269793733 /* StaticLibrary_ObjC.a */; }; - BF_670499288392 /* Model.xcdatamodeld in Sources */ = {isa = PBXBuildFile; fileRef = VG_229021855709 /* Model.xcdatamodeld */; settings = {COMPILER_FLAGS = "-Werror"; }; }; - BF_681504666330 = {isa = PBXBuildFile; fileRef = FR_825232110500 /* App_iOS.app */; }; - BF_695553653993 /* Result.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = FR_584425140013 /* Result.framework */; }; - BF_698752059275 /* AppDelegate.swift in Sources */ = {isa = PBXBuildFile; fileRef = FR_285483315484 /* AppDelegate.swift */; }; - BF_703054643820 /* MessagesViewController.swift in Sources */ = {isa = PBXBuildFile; fileRef = FR_310979699934 /* MessagesViewController.swift */; }; - BF_704149935229 /* Standalone.swift in Sources */ = {isa = PBXBuildFile; fileRef = FR_675266829517 /* Standalone.swift */; }; - BF_721498080533 /* ResourceFolder in Resources */ = {isa = PBXBuildFile; fileRef = FR_257073931060 /* ResourceFolder */; }; - BF_725992639588 = {isa = PBXBuildFile; fileRef = FR_480982116789 /* App_macOS.app */; }; - BF_726199177939 = {isa = PBXBuildFile; fileRef = FR_651103371726 /* Framework2.framework */; }; - BF_732745079658 = {isa = PBXBuildFile; fileRef = FR_324671077936 /* App_watchOS.app */; }; - BF_734036107922 /* MyFramework.h in Headers */ = {isa = PBXBuildFile; fileRef = FR_183521624014 /* MyFramework.h */; settings = {ATTRIBUTES = (Public, ); }; }; - BF_747443236192 /* App_watchOS.app in Embed Watch Content */ = {isa = PBXBuildFile; fileRef = FR_324671077936 /* App_watchOS.app */; settings = {ATTRIBUTES = (RemoveHeadersOnCopy, ); }; }; - BF_752504835660 /* Result.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = FR_669811003841 /* Result.framework */; }; - BF_757906110813 = {isa = PBXBuildFile; fileRef = FR_662315837182 /* Framework.framework */; }; - BF_767750315119 /* StaticLibrary_ObjC.h in CopyFiles */ = {isa = PBXBuildFile; fileRef = FR_698230898030 /* StaticLibrary_ObjC.h */; }; - BF_780116576846 /* Result.framework in Embed Frameworks */ = {isa = PBXBuildFile; fileRef = FR_763057275314 /* Result.framework */; settings = {ATTRIBUTES = (CodeSignOnCopy, RemoveHeadersOnCopy, ); }; }; - BF_781565567230 /* module.modulemap in CopyFiles */ = {isa = PBXBuildFile; fileRef = FR_665156855283 /* module.modulemap */; }; - BF_786389356145 /* Result.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = FR_584425140013 /* Result.framework */; }; - BF_803757127643 = {isa = PBXBuildFile; fileRef = FR_739513596122 /* XPC_ServiceProtocol.h */; settings = {ATTRIBUTES = (Public, ); }; }; - BF_804650723499 /* StaticLibrary_ObjC.m in Sources */ = {isa = PBXBuildFile; fileRef = "FR_698230898030-1" /* StaticLibrary_ObjC.m */; }; - BF_807556340853 /* Empty.h in CopyFiles */ = {isa = PBXBuildFile; fileRef = FR_837374194182 /* Empty.h */; }; - BF_813358525536 /* MyFramework.h in Headers */ = {isa = PBXBuildFile; fileRef = FR_183521624014 /* MyFramework.h */; settings = {ATTRIBUTES = (Public, ); }; }; - BF_826731453953 /* Result.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = FR_131384036341 /* Result.framework */; }; - BF_828878846239 /* MainInterface.storyboard in Resources */ = {isa = PBXBuildFile; fileRef = VG_201160695646 /* MainInterface.storyboard */; }; - BF_830383951771 /* NotificationController.swift in Sources */ = {isa = PBXBuildFile; fileRef = FR_304712043717 /* NotificationController.swift */; }; - BF_849675970921 /* StaticLibrary_ObjC.a in Frameworks */ = {isa = PBXBuildFile; fileRef = FR_919543414727 /* StaticLibrary_ObjC.a */; }; - BF_854463933379 = {isa = PBXBuildFile; fileRef = FR_438704538506 /* Framework.framework */; }; - BF_855988705556 /* XPC_Service.m in Sources */ = {isa = PBXBuildFile; fileRef = FR_602719163945 /* XPC_Service.m */; }; - BF_860391087135 /* StandaloneAssets.xcassets in Resources */ = {isa = PBXBuildFile; fileRef = FR_408537768279 /* StandaloneAssets.xcassets */; }; - BF_870702193513 /* iMessageExtension.appex in Embed App Extensions */ = {isa = PBXBuildFile; fileRef = FR_618687462494 /* iMessageExtension.appex */; settings = {ATTRIBUTES = (RemoveHeadersOnCopy, ); }; }; - BF_874851989284 /* Result.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = FR_131384036341 /* Result.framework */; }; - BF_892119987440 /* AppDelegate.swift in Sources */ = {isa = PBXBuildFile; fileRef = FR_854336462818 /* AppDelegate.swift */; settings = {COMPILER_FLAGS = "-Werror"; }; }; - BF_895856588273 /* StaticLibrary_ObjC.m in Sources */ = {isa = PBXBuildFile; fileRef = "FR_698230898030-1" /* StaticLibrary_ObjC.m */; }; - BF_901390118565 /* FrameworkFile.swift in Sources */ = {isa = PBXBuildFile; fileRef = FR_172952167809 /* FrameworkFile.swift */; }; - BF_901508574566 = {isa = PBXBuildFile; fileRef = FR_704531614016 /* StaticLibrary_ObjC.a */; }; - BF_903574875171 /* ViewController.swift in Sources */ = {isa = PBXBuildFile; fileRef = FR_777446672298 /* ViewController.swift */; }; - BF_905038616071 /* Framework.framework in Embed Frameworks */ = {isa = PBXBuildFile; fileRef = FR_472296042419 /* Framework.framework */; settings = {ATTRIBUTES = (CodeSignOnCopy, RemoveHeadersOnCopy, ); }; }; - BF_905617636654 /* Headers in Headers */ = {isa = PBXBuildFile; fileRef = FR_815403394914 /* Headers */; settings = {ATTRIBUTES = (Public, ); }; }; - BF_940936137577 = {isa = PBXBuildFile; fileRef = FR_123503999387 /* App_iOS_UITests.xctest */; }; - BF_997494126001 /* Result.framework in Embed Frameworks */ = {isa = PBXBuildFile; fileRef = FR_763057275314 /* Result.framework */; settings = {ATTRIBUTES = (CodeSignOnCopy, RemoveHeadersOnCopy, ); }; }; + BF_021628792D80050372F6E56A6C3D0561 /* AppDelegate.swift in Sources */ = {isa = PBXBuildFile; fileRef = FR_B993F75B001AB1C272CE83CACC06F0E5 /* AppDelegate.swift */; settings = {COMPILER_FLAGS = "-Werror"; }; }; + BF_0A6C302954FF03411D6F2704ECF5C738 /* MyFramework.h in Headers */ = {isa = PBXBuildFile; fileRef = FR_A957DAE2193BE1E970F452BFEFF3EBF6 /* MyFramework.h */; settings = {ATTRIBUTES = (Public, ); }; }; + BF_0B3CE605B6243480C374176E01B1BB12 /* module.modulemap in CopyFiles */ = {isa = PBXBuildFile; fileRef = FR_96127F4D9D804B89024AB846F0961621 /* module.modulemap */; }; + BF_149B8FD8F114C531F675E01FBE814609 /* ResourceFolder in Resources */ = {isa = PBXBuildFile; fileRef = FR_1B0304C0E4DC73614BAA550E4A80D41C /* ResourceFolder */; }; + BF_19C973A29D9994B1E0655B1AFC5528AD /* Interface.storyboard in Resources */ = {isa = PBXBuildFile; fileRef = VG_6542B94EE7DA40CD30BC54DED26C61C7 /* Interface.storyboard */; }; + BF_1C8AAB7468188315681C0879591969B4 /* module.modulemap in CopyFiles */ = {isa = PBXBuildFile; fileRef = FR_96127F4D9D804B89024AB846F0961621 /* module.modulemap */; }; + BF_1EC32E6544284999188A140FB5FC6E67 /* TestProjectUITests.swift in Sources */ = {isa = PBXBuildFile; fileRef = FR_5CFDEA59B939FA9F3CA4F775B9E6AD2B /* TestProjectUITests.swift */; }; + BF_230439786C4C6849F488A5FADC6A42A5 /* Result.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = FR_11478908A963CED036DABEF21D85DF01 /* Result.framework */; }; + BF_2356EAE09301354149D45720369BE7F2 /* StaticLibrary_ObjC.h in CopyFiles */ = {isa = PBXBuildFile; fileRef = FR_D0BE69522DB875ADB041E9135E0767CA /* StaticLibrary_ObjC.h */; }; + BF_30024D558743C8ABC415D87431CDC13C /* SomeFramework.framework in Embed Frameworks */ = {isa = PBXBuildFile; fileRef = FR_2F56FD7A1F7782467AC9F315B6133468 /* SomeFramework.framework */; settings = {ATTRIBUTES = (CodeSignOnCopy, RemoveHeadersOnCopy, ); }; }; + BF_3080067722B357BFC053D89CCDBF5397 /* FrameworkFile.swift in Sources */ = {isa = PBXBuildFile; fileRef = FR_261C31660333EF514356EFCBDB368EAB /* FrameworkFile.swift */; }; + BF_33EA0F8B2ADA2D24A683FCD8D6235B10 /* MyFramework.h in Headers */ = {isa = PBXBuildFile; fileRef = FR_A957DAE2193BE1E970F452BFEFF3EBF6 /* MyFramework.h */; settings = {ATTRIBUTES = (Public, ); }; }; + BF_3811C1771AF5342AD8F9FEB63A3465B5 /* FrameworkFile.swift in Sources */ = {isa = PBXBuildFile; fileRef = FR_261C31660333EF514356EFCBDB368EAB /* FrameworkFile.swift */; }; + BF_390908C547D6F8520DF9AA0CC5A98EB1 /* Headers in Headers */ = {isa = PBXBuildFile; fileRef = FR_3DD4DE355C21662A9169EE41C44F73E3 /* Headers */; settings = {ATTRIBUTES = (Public, ); }; }; + BF_3B680DD27CFCD491675F1BF257A95A24 /* MyFramework.h in Headers */ = {isa = PBXBuildFile; fileRef = FR_A957DAE2193BE1E970F452BFEFF3EBF6 /* MyFramework.h */; settings = {ATTRIBUTES = (Public, ); }; }; + BF_42222C3F9126FFCC21BA88AD21CFD964 /* iMessageExtension.appex in Embed App Extensions */ = {isa = PBXBuildFile; fileRef = FR_586C1089A4869FFCB50BE6A26B0FA1E7 /* iMessageExtension.appex */; settings = {ATTRIBUTES = (RemoveHeadersOnCopy, ); }; }; + BF_42944378315033432F76246C09E5A4DB /* Framework2.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = FR_20EF6A69E91EC1859026CEBF5AD33FC2 /* Framework2.framework */; settings = {ATTRIBUTES = (Weak, ); }; }; + BF_47A75C8A7EF15658238E254C846C5C6B /* Main.storyboard in Resources */ = {isa = PBXBuildFile; fileRef = VG_30676EBEE9BE54AA26CAE69BE744CAE8 /* Main.storyboard */; }; + BF_47FBEFEA08B9642C1F711EDA77FC8C89 /* LocalizedStoryboard.storyboard in Resources */ = {isa = PBXBuildFile; fileRef = VG_FE6D89DA2D7E7F58340D566590FF221C /* LocalizedStoryboard.storyboard */; }; + BF_47FF83A37355E90F93C0F5B2CFBCE317 /* Standalone.swift in Sources */ = {isa = PBXBuildFile; fileRef = FR_82E3C6C060C4487B5177509917C3FAE3 /* Standalone.swift */; }; + BF_4D56F3F4D081A77C11325B96DD34D8E1 /* FrameworkFile.swift in Sources */ = {isa = PBXBuildFile; fileRef = FR_261C31660333EF514356EFCBDB368EAB /* FrameworkFile.swift */; }; + BF_4EBBAD70FA73DDC89BD933866B90DD08 /* MyFramework.h in Headers */ = {isa = PBXBuildFile; fileRef = FR_A957DAE2193BE1E970F452BFEFF3EBF6 /* MyFramework.h */; settings = {ATTRIBUTES = (Public, ); }; }; + BF_4FC40CAFC1CFAD431215635FE1A0ED86 /* Framework.framework in Embed Frameworks */ = {isa = PBXBuildFile; fileRef = FR_F25AB3F5F1D72653F078DF0E063DC9A5 /* Framework.framework */; settings = {ATTRIBUTES = (CodeSignOnCopy, RemoveHeadersOnCopy, ); }; }; + BF_51D370314B5DA8E002A908021E459F50 /* Assets.xcassets in Resources */ = {isa = PBXBuildFile; fileRef = FR_A55A35F549FD72775C37ED05342812AA /* Assets.xcassets */; }; + BF_527E94EECC2501E12D28790BF9318FD3 /* module.modulemap in CopyFiles */ = {isa = PBXBuildFile; fileRef = FR_96127F4D9D804B89024AB846F0961621 /* module.modulemap */; }; + BF_52C8E2C5962601534CE6F00B88FDB048 /* Main.storyboard in Resources */ = {isa = PBXBuildFile; fileRef = VG_14B7B5469AA17939993A2B25E775D391 /* Main.storyboard */; }; + BF_5336CD16DBDB1654D75AA91B922DEAD6 /* InterfaceController.swift in Sources */ = {isa = PBXBuildFile; fileRef = FR_CC3A24A5C8E1815346752C5AB0745176 /* InterfaceController.swift */; }; + BF_569CC068CD4B7BCE35E974D7B61566DB /* MyFramework.h in Headers */ = {isa = PBXBuildFile; fileRef = FR_A957DAE2193BE1E970F452BFEFF3EBF6 /* MyFramework.h */; settings = {ATTRIBUTES = (Public, ); }; }; + BF_587563F1FBA507305EC4AD895394002E /* StaticLibrary_ObjC.a in Frameworks */ = {isa = PBXBuildFile; fileRef = FR_0EDA4C9F9810C805C447660BF181FFF9 /* StaticLibrary_ObjC.a */; }; + BF_5C6407EDAC3D88B020BCB46724DC1D14 /* FrameworkFile.swift in Sources */ = {isa = PBXBuildFile; fileRef = FR_261C31660333EF514356EFCBDB368EAB /* FrameworkFile.swift */; }; + BF_63672615CB7B136F2706924EC460710A /* Framework.framework in Embed Frameworks */ = {isa = PBXBuildFile; fileRef = FR_F25AB3F5F1D72653F078DF0E063DC9A5 /* Framework.framework */; settings = {ATTRIBUTES = (CodeSignOnCopy, RemoveHeadersOnCopy, ); }; }; + BF_65835F9276FF0DB8E27D098367F9D03C /* Localizable.stringsdict in Resources */ = {isa = PBXBuildFile; fileRef = VG_C247AA37E9057916EDDC65C7B55E2F38 /* Localizable.stringsdict */; }; + BF_67219751DE020023F9D6068EDCCDC445 /* SomeXPCService.xpc in CopyFiles */ = {isa = PBXBuildFile; fileRef = FR_4EB4AAACD714C13E5BC894C71B954299 /* SomeXPCService.xpc */; }; + BF_6EF6DB8898CD050E19303DC481EEFDC5 /* Framework2.framework in Embed Frameworks */ = {isa = PBXBuildFile; fileRef = FR_20EF6A69E91EC1859026CEBF5AD33FC2 /* Framework2.framework */; settings = {ATTRIBUTES = (CodeSignOnCopy, RemoveHeadersOnCopy, ); }; }; + BF_6FA9DA8B67663BAD9E11C1CEBD3BAC43 /* Result.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = FR_DC1C8DE46218F90A3F4FD5F8DE4F0ABB /* Result.framework */; }; + BF_703163C1C547AD6EF09BEA5F5F5ED49C /* module.modulemap in CopyFiles */ = {isa = PBXBuildFile; fileRef = FR_96127F4D9D804B89024AB846F0961621 /* module.modulemap */; }; + BF_729EB1C88A5E43B2342099D81B301F4D /* FrameworkFile.swift in Sources */ = {isa = PBXBuildFile; fileRef = FR_261C31660333EF514356EFCBDB368EAB /* FrameworkFile.swift */; }; + BF_76825DD9B3B10103CDAB9D235BDF6A91 /* MessagesViewController.swift in Sources */ = {isa = PBXBuildFile; fileRef = FR_5FEC20FF753341FD0483E2E4C622DB05 /* MessagesViewController.swift */; }; + BF_77C9BB7BED4F5970D02E69312259FE09 /* StaticLibrary_ObjC.m in Sources */ = {isa = PBXBuildFile; fileRef = FR_C2A280C4FA602E6610BCFB820602B69E /* StaticLibrary_ObjC.m */; }; + BF_7C9646667C0D479544A2207DEE3E930B /* Headers in Headers */ = {isa = PBXBuildFile; fileRef = FR_3DD4DE355C21662A9169EE41C44F73E3 /* Headers */; settings = {ATTRIBUTES = (Public, ); }; }; + BF_81711FB79375EB743254B809B4E246E0 /* AppDelegate.swift in Sources */ = {isa = PBXBuildFile; fileRef = FR_4DB225C7FF39C16EEFD9A1A5595FCDBC /* AppDelegate.swift */; }; + BF_81C29A47481BF6D67B4CB3F6C836A57E /* Framework.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = FR_F25AB3F5F1D72653F078DF0E063DC9A5 /* Framework.framework */; }; + BF_8610CB66872BC72C1690EBD8D102FBC0 /* FrameworkFile.swift in Sources */ = {isa = PBXBuildFile; fileRef = FR_261C31660333EF514356EFCBDB368EAB /* FrameworkFile.swift */; }; + BF_86F2552DA1E230901EC4CB1A40399019 /* Result.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = FR_CEAE8D9C3F3920D6EADE5455C188EAAE /* Result.framework */; }; + BF_8765851BF5D99B10C220DDD57B968B10 /* Result.framework in Embed Frameworks */ = {isa = PBXBuildFile; fileRef = FR_11478908A963CED036DABEF21D85DF01 /* Result.framework */; settings = {ATTRIBUTES = (CodeSignOnCopy, RemoveHeadersOnCopy, ); }; }; + BF_90F0E9253F2768C312B65530931CD55A /* Empty.h in CopyFiles */ = {isa = PBXBuildFile; fileRef = FR_DBD29CA78CDBBEF69B2C39C6D23BBDA1 /* Empty.h */; }; + BF_910C2D6055BD22643F042545CD21AA78 /* StaticLibrary_ObjC.h in CopyFiles */ = {isa = PBXBuildFile; fileRef = FR_D0BE69522DB875ADB041E9135E0767CA /* StaticLibrary_ObjC.h */; }; + BF_93A4E1A93C7DB4289E526466D547E55E /* SomeFramework.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = FR_2F56FD7A1F7782467AC9F315B6133468 /* SomeFramework.framework */; }; + BF_9830FFD35765AACD86D1B619E22830D6 /* Headers in Headers */ = {isa = PBXBuildFile; fileRef = FR_3DD4DE355C21662A9169EE41C44F73E3 /* Headers */; settings = {ATTRIBUTES = (Public, ); }; }; + BF_98DEE7FD578AA439550E0023A2ECE8D0 /* ViewController.swift in Sources */ = {isa = PBXBuildFile; fileRef = FR_25BDF725104C5E280D45CBF33F54C72C /* ViewController.swift */; }; + BF_9A74AED05E2F61530BFA0F7D23AF0112 /* Model.xcdatamodeld in Sources */ = {isa = PBXBuildFile; fileRef = VG_EB676136B9F946373D4796800CC00AD4 /* Model.xcdatamodeld */; settings = {COMPILER_FLAGS = "-Werror"; }; }; + BF_9D9B97D239384F4CE6E73852E027B787 /* Assets.xcassets in Resources */ = {isa = PBXBuildFile; fileRef = FR_B537FEE8515090D3BA0F5CFF3BC76BB1 /* Assets.xcassets */; }; + BF_A038D29BE93A9CF1654D2B7392845AEA /* StaticLibrary_ObjC.a in Frameworks */ = {isa = PBXBuildFile; fileRef = FR_0EDA4C9F9810C805C447660BF181FFF9 /* StaticLibrary_ObjC.a */; }; + BF_A29F8B04C9DD9ADE1EF5AFDAAA0130D2 /* ExtensionDelegate.swift in Sources */ = {isa = PBXBuildFile; fileRef = FR_DBB69305458B16774C88720CDD3978E5 /* ExtensionDelegate.swift */; }; + BF_A314322BB45C75B7EE401C539B1120C5 /* Framework.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = FR_F25AB3F5F1D72653F078DF0E063DC9A5 /* Framework.framework */; }; + BF_A8A5905BCA8872B2D7B0EF6326B33077 /* MyBundle.bundle in Resources */ = {isa = PBXBuildFile; fileRef = FR_291D6D09ACADC420638E83BEE89DFFEB /* MyBundle.bundle */; }; + BF_ABA4EA32A6DB022806126D9C1418BBA3 /* Assets.xcassets in Resources */ = {isa = PBXBuildFile; fileRef = FR_ED407ECED0DF010B1E787D238EA91A5D /* Assets.xcassets */; }; + BF_AC2CE59D56846478FDFBB376FF9F9DC0 /* Localizable.strings in Resources */ = {isa = PBXBuildFile; fileRef = VG_BE436BDD64E90EFB600D47AC69B49DD3 /* Localizable.strings */; }; + BF_B2B4B15D6F7B242DBDA39939111282F9 /* TestProjectTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = FR_D7B45FAEE40EE622B4FA9192609F9717 /* TestProjectTests.swift */; }; + BF_B5446C54E942A18E025D2061A88004A4 /* Result.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = FR_11478908A963CED036DABEF21D85DF01 /* Result.framework */; }; + BF_B57F9691AD12CA8AE5528A2BAB9E4A43 /* LaunchScreen.storyboard in Resources */ = {isa = PBXBuildFile; fileRef = VG_F256536BB07CF3E64C4DD934F75BED9C /* LaunchScreen.storyboard */; }; + BF_B6E31790D07B981E52CD5BC9049FE303 /* MyFramework.h in Headers */ = {isa = PBXBuildFile; fileRef = FR_A957DAE2193BE1E970F452BFEFF3EBF6 /* MyFramework.h */; settings = {ATTRIBUTES = (Public, ); }; }; + BF_B8E824A58BFE0B81E16BB26087FDC8B4 /* Result.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = FR_CEAE8D9C3F3920D6EADE5455C188EAAE /* Result.framework */; }; + BF_BD2537A230BFC8A86681F0AF34C929DA /* Result.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = FR_8B770F475242D91FC20289A3B35CD165 /* Result.framework */; }; + BF_BEFDF47CD7D88221A9C166BD65BF2013 /* MyFramework.h in Headers */ = {isa = PBXBuildFile; fileRef = FR_A957DAE2193BE1E970F452BFEFF3EBF6 /* MyFramework.h */; settings = {ATTRIBUTES = (Public, ); }; }; + BF_C5EA496FE2EDF51C92DC55FD552472E5 /* StaticLibrary_ObjC.h in CopyFiles */ = {isa = PBXBuildFile; fileRef = FR_D0BE69522DB875ADB041E9135E0767CA /* StaticLibrary_ObjC.h */; }; + BF_C9D24A56926211130F4E25B5D9972B58 /* StaticLibrary_ObjC.m in Sources */ = {isa = PBXBuildFile; fileRef = FR_C2A280C4FA602E6610BCFB820602B69E /* StaticLibrary_ObjC.m */; }; + BF_CD062A97959629BD672893FDAE89A1E9 /* NotificationController.swift in Sources */ = {isa = PBXBuildFile; fileRef = FR_BB49B398F9291781A60DA963A0BF168C /* NotificationController.swift */; }; + BF_CF8F05DAB384E10C59B65F4D0F51C109 /* App_watchOS.app in Embed Watch Content */ = {isa = PBXBuildFile; fileRef = FR_0DDA6B4CCFF0DEB79BE16E3F72B95C7F /* App_watchOS.app */; settings = {ATTRIBUTES = (RemoveHeadersOnCopy, ); }; }; + BF_D0676C98017B6FDD96A733CB851645DE /* StaticLibrary_ObjC.m in Sources */ = {isa = PBXBuildFile; fileRef = FR_C2A280C4FA602E6610BCFB820602B69E /* StaticLibrary_ObjC.m */; }; + BF_D1EF4AECA866B1132F3F01B826B5EE5D /* iMessageApp.app in Resources */ = {isa = PBXBuildFile; fileRef = FR_1E05BB66BFD5629EAFDC86A4E869F864 /* iMessageApp.app */; settings = {ATTRIBUTES = (RemoveHeadersOnCopy, ); }; }; + BF_D3D64E2595369BBDEF03E07543AE2779 /* FrameworkFile.swift in Sources */ = {isa = PBXBuildFile; fileRef = FR_261C31660333EF514356EFCBDB368EAB /* FrameworkFile.swift */; }; + BF_D4A5544EDEE7F80A1F9DF1D0684CAFBB /* Result.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = FR_DC1C8DE46218F90A3F4FD5F8DE4F0ABB /* Result.framework */; }; + BF_D6588CD7B83034816FFD3A7DB10DAD78 /* Assets.xcassets in Resources */ = {isa = PBXBuildFile; fileRef = FR_16B791CFA2095097A17CC216977DF6EF /* Assets.xcassets */; }; + BF_D9111FF58DCAA51B7251F882EC418E67 /* XPC Service.xpc in CopyFiles */ = {isa = PBXBuildFile; fileRef = FR_8FCFCDD6A5A7292C72787E2FC0A36294 /* XPC Service.xpc */; settings = {ATTRIBUTES = (CodeSignOnCopy, RemoveHeadersOnCopy, ); }; }; + BF_DA12D48C9BCEC64D55B87CE8703432BE /* StaticLibrary_ObjC.h in CopyFiles */ = {isa = PBXBuildFile; fileRef = FR_D0BE69522DB875ADB041E9135E0767CA /* StaticLibrary_ObjC.h */; }; + BF_DBF3047DCE71CB2E7B9AC7367F44F8DB /* StaticLibrary.swift in Sources */ = {isa = PBXBuildFile; fileRef = FR_CCC97AF230188CAF9B4A66324891CCAD /* StaticLibrary.swift */; }; + BF_E228A4D3997297780216722D71AC9FE5 /* StaticLibrary_ObjC.m in Sources */ = {isa = PBXBuildFile; fileRef = FR_C2A280C4FA602E6610BCFB820602B69E /* StaticLibrary_ObjC.m */; }; + BF_E2D02DDEDD7DC21831F50A6EAA71E528 /* StandaloneAssets.xcassets in Resources */ = {isa = PBXBuildFile; fileRef = FR_C6A9DE885CAF350F6C9D0AC6F7324CD3 /* StandaloneAssets.xcassets */; }; + BF_E35C9C198B45406E64439FF96C17F056 /* MyFramework.h in Headers */ = {isa = PBXBuildFile; fileRef = FR_A957DAE2193BE1E970F452BFEFF3EBF6 /* MyFramework.h */; settings = {ATTRIBUTES = (Public, ); }; }; + BF_E6B3BA0A3A687598FB5CCDF0524E1B10 /* FrameworkFile.swift in Sources */ = {isa = PBXBuildFile; fileRef = FR_261C31660333EF514356EFCBDB368EAB /* FrameworkFile.swift */; }; + BF_E6D3B938E2ED4C5339D11D340D3809EF /* App_watchOS Extension.appex in Embed App Extensions */ = {isa = PBXBuildFile; fileRef = FR_09608EA4613E62B3088BBA06F08E00E9 /* App_watchOS Extension.appex */; settings = {ATTRIBUTES = (RemoveHeadersOnCopy, ); }; }; + BF_EA0063B4FC2A0980A746D35A8DF71CED /* MainInterface.storyboard in Resources */ = {isa = PBXBuildFile; fileRef = VG_06DC429EEFBBA25BC3EE1AA1B4062C10 /* MainInterface.storyboard */; }; + BF_EBC45940911A4942BA04AE1285BF3802 /* Assets.xcassets in Resources */ = {isa = PBXBuildFile; fileRef = FR_A0867B127ACF3ED382EB2FD5133D3EA8 /* Assets.xcassets */; }; + BF_EC0616A0D18A2F723D2AF50287C43669 /* Headers in Headers */ = {isa = PBXBuildFile; fileRef = FR_3DD4DE355C21662A9169EE41C44F73E3 /* Headers */; settings = {ATTRIBUTES = (Public, ); }; }; + BF_ED8BB47A2229EC3BEE544608267FB82D /* Result.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = FR_DC1C8DE46218F90A3F4FD5F8DE4F0ABB /* Result.framework */; }; + BF_F12E44D8E7F617E8A5FD8E1A342E5FAD /* ViewController.swift in Sources */ = {isa = PBXBuildFile; fileRef = FR_752FB5DFFBC490CFB9742549A0C48527 /* ViewController.swift */; settings = {COMPILER_FLAGS = "-Werror"; }; }; + BF_F6A0FC1F0C9A4EC13BCCBB764D716C3F /* Result.framework in Embed Frameworks */ = {isa = PBXBuildFile; fileRef = FR_CEAE8D9C3F3920D6EADE5455C188EAAE /* Result.framework */; settings = {ATTRIBUTES = (CodeSignOnCopy, RemoveHeadersOnCopy, ); }; }; + BF_F7AC9F45ED37FCD5A749FD6F5F4518AF /* Standalone.swift in Sources */ = {isa = PBXBuildFile; fileRef = FR_82E3C6C060C4487B5177509917C3FAE3 /* Standalone.swift */; }; + BF_F9E44FE6ECBD936A8C762D425DDBA37C /* Result.framework in Embed Frameworks */ = {isa = PBXBuildFile; fileRef = FR_CEAE8D9C3F3920D6EADE5455C188EAAE /* Result.framework */; settings = {ATTRIBUTES = (CodeSignOnCopy, RemoveHeadersOnCopy, ); }; }; + BF_FA28229372AB6236883309181258AF26 /* XPC_Service.m in Sources */ = {isa = PBXBuildFile; fileRef = FR_7F4496C534F2DF8C4FB9A8D52414990B /* XPC_Service.m */; }; + BF_FA5F3C87A2571E0F39637D118B6C6F8F /* Assets.xcassets in Resources */ = {isa = PBXBuildFile; fileRef = FR_B243640A6F73B3F3D33ABD05ABDBC26B /* Assets.xcassets */; }; + BF_FD13F69A90FB1D5676B97A8C77D710B4 /* main.m in Sources */ = {isa = PBXBuildFile; fileRef = FR_F5436E663145426483F206F8A61400BC /* main.m */; }; + BF_FF7EBDFA4462D2983743C84CE99D9714 /* MoreUnder.swift in Sources */ = {isa = PBXBuildFile; fileRef = FR_AC5B2FCE520D5306B254D5857E15B6CB /* MoreUnder.swift */; }; /* End PBXBuildFile section */ /* Begin PBXContainerItemProxy section */ - CIP_10972496596 /* PBXContainerItemProxy */ = { + CIP_1AEF07B9F6A9BC9605E82F26AE7BFE15 /* PBXContainerItemProxy */ = { isa = PBXContainerItemProxy; - containerPortal = P_8448771205358 /* Project object */; + containerPortal = P_88EC38DC1E39C9039D2FA49EDC2FA124 /* Project object */; proxyType = 1; - remoteGlobalIDString = NT_472296042419; - remoteInfo = Framework_iOS; - }; - CIP_14121946807 /* PBXContainerItemProxy */ = { - isa = PBXContainerItemProxy; - containerPortal = P_8448771205358 /* Project object */; - proxyType = 1; - remoteGlobalIDString = NT_281269793733; - remoteInfo = StaticLibrary_ObjC_macOS; - }; - CIP_15961934258 /* PBXContainerItemProxy */ = { - isa = PBXContainerItemProxy; - containerPortal = P_8448771205358 /* Project object */; - proxyType = 1; - remoteGlobalIDString = NT_281269793733; - remoteInfo = StaticLibrary_ObjC_macOS; - }; - CIP_19329118292 /* PBXContainerItemProxy */ = { - isa = PBXContainerItemProxy; - containerPortal = P_8448771205358 /* Project object */; - proxyType = 1; - remoteGlobalIDString = NT_507023492251; - remoteInfo = "App_watchOS Extension"; - }; - CIP_20801090045 /* PBXContainerItemProxy */ = { - isa = PBXContainerItemProxy; - containerPortal = P_8448771205358 /* Project object */; - proxyType = 1; - remoteGlobalIDString = NT_825232110500; - remoteInfo = App_iOS; - }; - CIP_23215045448 /* PBXContainerItemProxy */ = { - isa = PBXContainerItemProxy; - containerPortal = P_8448771205358 /* Project object */; - proxyType = 1; - remoteGlobalIDString = NT_919543414727; + remoteGlobalIDString = NT_6AEE12F93D449E249F5348BBF35D3053; remoteInfo = StaticLibrary_ObjC_iOS; }; - CIP_23558050412 /* PBXContainerItemProxy */ = { + CIP_1C3D8F2BF099A773651CF8A195466469 /* PBXContainerItemProxy */ = { isa = PBXContainerItemProxy; - containerPortal = P_8448771205358 /* Project object */; + containerPortal = P_88EC38DC1E39C9039D2FA49EDC2FA124 /* Project object */; proxyType = 1; - remoteGlobalIDString = NT_525119120469; - remoteInfo = Framework_macOS; - }; - CIP_23609521734 /* PBXContainerItemProxy */ = { - isa = PBXContainerItemProxy; - containerPortal = P_8448771205358 /* Project object */; - proxyType = 1; - remoteGlobalIDString = NT_662897337290; - remoteInfo = Framework2_iOS; - }; - CIP_28856087625 /* PBXContainerItemProxy */ = { - isa = PBXContainerItemProxy; - containerPortal = P_8448771205358 /* Project object */; - proxyType = 1; - remoteGlobalIDString = NT_935153865209; - remoteInfo = iMessageApp; - }; - CIP_31792113134 /* PBXContainerItemProxy */ = { - isa = PBXContainerItemProxy; - containerPortal = P_8448771205358 /* Project object */; - proxyType = 1; - remoteGlobalIDString = NT_618687462494; - remoteInfo = iMessageExtension; - }; - CIP_58718468645 /* PBXContainerItemProxy */ = { - isa = PBXContainerItemProxy; - containerPortal = P_8448771205358 /* Project object */; - proxyType = 1; - remoteGlobalIDString = NT_704531614016; + remoteGlobalIDString = NT_D4C3E345E90AF9F6CBE8CF226FCFBCD6; remoteInfo = StaticLibrary_ObjC_tvOS; }; - CIP_66582851615 /* PBXContainerItemProxy */ = { + CIP_1F8C8F9FAC75236BB2F60C3BCAE41C55 /* PBXContainerItemProxy */ = { isa = PBXContainerItemProxy; - containerPortal = P_8448771205358 /* Project object */; + containerPortal = P_88EC38DC1E39C9039D2FA49EDC2FA124 /* Project object */; proxyType = 1; - remoteGlobalIDString = NT_919543414727; + remoteGlobalIDString = NT_6AEE12F93D449E249F5348BBF35D3053; remoteInfo = StaticLibrary_ObjC_iOS; }; - CIP_67619158112 /* PBXContainerItemProxy */ = { + CIP_291A38592460740F400A80DE5DBA9679 /* PBXContainerItemProxy */ = { isa = PBXContainerItemProxy; - containerPortal = P_8448771205358 /* Project object */; + containerPortal = P_88EC38DC1E39C9039D2FA49EDC2FA124 /* Project object */; proxyType = 1; - remoteGlobalIDString = NT_825232110500; + remoteGlobalIDString = NT_BEB0891E36797FE2214A0A9D516D408D; remoteInfo = App_iOS; }; - CIP_74378499241 /* PBXContainerItemProxy */ = { + CIP_47399FDE0885501C87782313489C95A3 /* PBXContainerItemProxy */ = { isa = PBXContainerItemProxy; - containerPortal = P_8448771205358 /* Project object */; + containerPortal = P_88EC38DC1E39C9039D2FA49EDC2FA124 /* Project object */; proxyType = 1; - remoteGlobalIDString = NT_376569054786; - remoteInfo = "XPC Service"; + remoteGlobalIDString = NT_34A020E43FBBD797051205235CD82B70; + remoteInfo = StaticLibrary_ObjC_watchOS; }; - CIP_74741847386 /* PBXContainerItemProxy */ = { + CIP_4FA1F11884BC4F5DBDFAC1FBEC60AFC1 /* PBXContainerItemProxy */ = { isa = PBXContainerItemProxy; - containerPortal = P_8448771205358 /* Project object */; + containerPortal = P_88EC38DC1E39C9039D2FA49EDC2FA124 /* Project object */; proxyType = 1; - remoteGlobalIDString = NT_472296042419; - remoteInfo = Framework_iOS; + remoteGlobalIDString = NT_BEB0891E36797FE2214A0A9D516D408D; + remoteInfo = App_iOS; }; - CIP_82410178775 /* PBXContainerItemProxy */ = { + CIP_5E9F76628F77E820EB9AA60A282D8691 /* PBXContainerItemProxy */ = { isa = PBXContainerItemProxy; - containerPortal = P_8448771205358 /* Project object */; + containerPortal = P_88EC38DC1E39C9039D2FA49EDC2FA124 /* Project object */; proxyType = 1; - remoteGlobalIDString = NT_324671077936; + remoteGlobalIDString = NT_6BD068FAAC6AA35C090C48147B94EC6E; + remoteInfo = iMessageApp; + }; + CIP_5F2FD3F0AED59431B4F98D7238CAA733 /* PBXContainerItemProxy */ = { + isa = PBXContainerItemProxy; + containerPortal = P_88EC38DC1E39C9039D2FA49EDC2FA124 /* Project object */; + proxyType = 1; + remoteGlobalIDString = NT_5245AB6D3B3CFBC95AEBADF6E0C593B8; + remoteInfo = "App_watchOS Extension"; + }; + CIP_64ED071F49DC88F8192387D7A18827F1 /* PBXContainerItemProxy */ = { + isa = PBXContainerItemProxy; + containerPortal = P_88EC38DC1E39C9039D2FA49EDC2FA124 /* Project object */; + proxyType = 1; + remoteGlobalIDString = NT_15609BCEEB00CBCC4C42110EB0366A6F; + remoteInfo = StaticLibrary_ObjC_macOS; + }; + CIP_6D60DD975DE7829AEA72BD4098DE13E6 /* PBXContainerItemProxy */ = { + isa = PBXContainerItemProxy; + containerPortal = P_88EC38DC1E39C9039D2FA49EDC2FA124 /* Project object */; + proxyType = 1; + remoteGlobalIDString = NT_38A9FE87056942A2746E0FF025B52A91; remoteInfo = App_watchOS; }; - CIP_88714386547 /* PBXContainerItemProxy */ = { + CIP_73A78E804E93B79E9ED934358CDD7D9D /* PBXContainerItemProxy */ = { isa = PBXContainerItemProxy; - containerPortal = P_8448771205358 /* Project object */; + containerPortal = P_88EC38DC1E39C9039D2FA49EDC2FA124 /* Project object */; proxyType = 1; - remoteGlobalIDString = NT_825232110500; + remoteGlobalIDString = NT_BEB0891E36797FE2214A0A9D516D408D; remoteInfo = App_iOS; }; - CIP_90821786544 /* PBXContainerItemProxy */ = { + CIP_862C50E687ABB75CCDF71F1157709A4D /* PBXContainerItemProxy */ = { isa = PBXContainerItemProxy; - containerPortal = P_8448771205358 /* Project object */; + containerPortal = P_88EC38DC1E39C9039D2FA49EDC2FA124 /* Project object */; proxyType = 1; - remoteGlobalIDString = NT_530818555464; - remoteInfo = StaticLibrary_ObjC_watchOS; + remoteGlobalIDString = NT_9F72C903B42E1AA3B88F97B917231B15; + remoteInfo = Framework2_iOS; + }; + CIP_A760C88E6F24D3F06081AEBDEB8AE54B /* PBXContainerItemProxy */ = { + isa = PBXContainerItemProxy; + containerPortal = P_88EC38DC1E39C9039D2FA49EDC2FA124 /* Project object */; + proxyType = 1; + remoteGlobalIDString = NT_7D108AE86BED8C9CCF52C2646FA4C5DE; + remoteInfo = Framework_iOS; + }; + CIP_B5B71FB9D5064D7E05E9E44827A87775 /* PBXContainerItemProxy */ = { + isa = PBXContainerItemProxy; + containerPortal = P_88EC38DC1E39C9039D2FA49EDC2FA124 /* Project object */; + proxyType = 1; + remoteGlobalIDString = NT_6A4FC6EE80FB2821AB96D51C3BC8966E; + remoteInfo = iMessageExtension; + }; + CIP_BAAD03920C86C2839C3C93FDA5568ECE /* PBXContainerItemProxy */ = { + isa = PBXContainerItemProxy; + containerPortal = P_88EC38DC1E39C9039D2FA49EDC2FA124 /* Project object */; + proxyType = 1; + remoteGlobalIDString = NT_23509FD082D1F788E6D6431F509B11AF; + remoteInfo = "XPC Service"; + }; + CIP_C82ED1EBAD4D7218ED9694EB7BF4DE74 /* PBXContainerItemProxy */ = { + isa = PBXContainerItemProxy; + containerPortal = P_88EC38DC1E39C9039D2FA49EDC2FA124 /* Project object */; + proxyType = 1; + remoteGlobalIDString = NT_15609BCEEB00CBCC4C42110EB0366A6F; + remoteInfo = StaticLibrary_ObjC_macOS; + }; + CIP_CA46A507405C3CBD7579D2C9A3F8719E /* PBXContainerItemProxy */ = { + isa = PBXContainerItemProxy; + containerPortal = P_88EC38DC1E39C9039D2FA49EDC2FA124 /* Project object */; + proxyType = 1; + remoteGlobalIDString = NT_9D53AF351F8DAE25354F2391248DFCCA; + remoteInfo = Framework_macOS; + }; + CIP_DC690C90FF2F615A1EB93D9803F8D905 /* PBXContainerItemProxy */ = { + isa = PBXContainerItemProxy; + containerPortal = P_88EC38DC1E39C9039D2FA49EDC2FA124 /* Project object */; + proxyType = 1; + remoteGlobalIDString = NT_7D108AE86BED8C9CCF52C2646FA4C5DE; + remoteInfo = Framework_iOS; }; /* End PBXContainerItemProxy section */ /* Begin PBXCopyFilesBuildPhase section */ - CFBP_1101127867 /* CopyFiles */ = { + CFBP_0B6C520DAC94DDCE678BE15C53528F25 /* CopyFiles */ = { isa = PBXCopyFilesBuildPhase; buildActionMask = 2147483647; dstPath = "include/$(PRODUCT_NAME)"; dstSubfolderSpec = 16; files = ( - BF_190695186098 /* StaticLibrary_ObjC.h in CopyFiles */, - BF_159058095963 /* module.modulemap in CopyFiles */, + BF_910C2D6055BD22643F042545CD21AA78 /* StaticLibrary_ObjC.h in CopyFiles */, + BF_527E94EECC2501E12D28790BF9318FD3 /* module.modulemap in CopyFiles */, ); runOnlyForDeploymentPostprocessing = 0; }; - CFBP_2836118931 /* Embed Watch Content */ = { + CFBP_1C40B0777F31334440F91C2DB34EF404 /* Embed Frameworks */ = { + isa = PBXCopyFilesBuildPhase; + buildActionMask = 2147483647; + dstPath = ""; + dstSubfolderSpec = 10; + files = ( + BF_6EF6DB8898CD050E19303DC481EEFDC5 /* Framework2.framework in Embed Frameworks */, + BF_63672615CB7B136F2706924EC460710A /* Framework.framework in Embed Frameworks */, + BF_30024D558743C8ABC415D87431CDC13C /* SomeFramework.framework in Embed Frameworks */, + ); + name = "Embed Frameworks"; + runOnlyForDeploymentPostprocessing = 0; + }; + CFBP_2FE0B34CC045616C815F2675387DA9D5 /* Embed Frameworks */ = { + isa = PBXCopyFilesBuildPhase; + buildActionMask = 2147483647; + dstPath = ""; + dstSubfolderSpec = 10; + files = ( + BF_F9E44FE6ECBD936A8C762D425DDBA37C /* Result.framework in Embed Frameworks */, + ); + name = "Embed Frameworks"; + runOnlyForDeploymentPostprocessing = 0; + }; + CFBP_3BE6FE084D6BE913354F37B1DD9A8D92 /* Embed Frameworks */ = { + isa = PBXCopyFilesBuildPhase; + buildActionMask = 2147483647; + dstPath = ""; + dstSubfolderSpec = 10; + files = ( + BF_F6A0FC1F0C9A4EC13BCCBB764D716C3F /* Result.framework in Embed Frameworks */, + ); + name = "Embed Frameworks"; + runOnlyForDeploymentPostprocessing = 0; + }; + CFBP_469B033759EACBB99ECBF1008677C590 /* Embed App Extensions */ = { + isa = PBXCopyFilesBuildPhase; + buildActionMask = 2147483647; + dstPath = ""; + dstSubfolderSpec = 13; + files = ( + BF_E6D3B938E2ED4C5339D11D340D3809EF /* App_watchOS Extension.appex in Embed App Extensions */, + ); + name = "Embed App Extensions"; + runOnlyForDeploymentPostprocessing = 0; + }; + CFBP_4DFB7882C9F8BAB250BB0A6B9457B4CC /* CopyFiles */ = { + isa = PBXCopyFilesBuildPhase; + buildActionMask = 2147483647; + dstPath = "include/$(PRODUCT_NAME)"; + dstSubfolderSpec = 16; + files = ( + BF_C5EA496FE2EDF51C92DC55FD552472E5 /* StaticLibrary_ObjC.h in CopyFiles */, + BF_0B3CE605B6243480C374176E01B1BB12 /* module.modulemap in CopyFiles */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; + CFBP_712E86A86BBF89DB5B5F3874B24B8996 /* CopyFiles */ = { + isa = PBXCopyFilesBuildPhase; + buildActionMask = 2147483647; + dstPath = "include/$(PRODUCT_NAME)"; + dstSubfolderSpec = 16; + files = ( + BF_DA12D48C9BCEC64D55B87CE8703432BE /* StaticLibrary_ObjC.h in CopyFiles */, + BF_703163C1C547AD6EF09BEA5F5F5ED49C /* module.modulemap in CopyFiles */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; + CFBP_961F46C30E720E886AEFD11D45DDA199 /* Embed Watch Content */ = { isa = PBXCopyFilesBuildPhase; buildActionMask = 2147483647; dstPath = "$(CONTENTS_FOLDER_PATH)/Watch"; dstSubfolderSpec = 16; files = ( - BF_747443236192 /* App_watchOS.app in Embed Watch Content */, + BF_CF8F05DAB384E10C59B65F4D0F51C109 /* App_watchOS.app in Embed Watch Content */, ); name = "Embed Watch Content"; runOnlyForDeploymentPostprocessing = 0; }; - CFBP_3044397014 /* CopyFiles */ = { - isa = PBXCopyFilesBuildPhase; - buildActionMask = 2147483647; - dstPath = "include/$(PRODUCT_NAME)"; - dstSubfolderSpec = 16; - files = ( - BF_463608041925 /* StaticLibrary_ObjC.h in CopyFiles */, - BF_781565567230 /* module.modulemap in CopyFiles */, - ); - runOnlyForDeploymentPostprocessing = 0; - }; - CFBP_3864293855 /* CopyFiles */ = { - isa = PBXCopyFilesBuildPhase; - buildActionMask = 2147483647; - dstPath = "include/$(PRODUCT_NAME)"; - dstSubfolderSpec = 16; - files = ( - BF_119005558336 /* StaticLibrary_ObjC.h in CopyFiles */, - BF_628591712051 /* module.modulemap in CopyFiles */, - ); - runOnlyForDeploymentPostprocessing = 0; - }; - CFBP_4082141876 /* Embed Frameworks */ = { - isa = PBXCopyFilesBuildPhase; - buildActionMask = 2147483647; - dstPath = ""; - dstSubfolderSpec = 10; - files = ( - BF_997494126001 /* Result.framework in Embed Frameworks */, - ); - name = "Embed Frameworks"; - runOnlyForDeploymentPostprocessing = 0; - }; - CFBP_4626438721 /* Embed Frameworks */ = { - isa = PBXCopyFilesBuildPhase; - buildActionMask = 2147483647; - dstPath = ""; - dstSubfolderSpec = 10; - files = ( - BF_780116576846 /* Result.framework in Embed Frameworks */, - ); - name = "Embed Frameworks"; - runOnlyForDeploymentPostprocessing = 0; - }; - CFBP_4684049960 /* Embed App Extensions */ = { + CFBP_AD91D17C63B2CD9AE7EFB9EFD62A8223 /* Embed App Extensions */ = { isa = PBXCopyFilesBuildPhase; buildActionMask = 2147483647; dstPath = ""; dstSubfolderSpec = 13; files = ( - BF_441538117869 /* App_watchOS Extension.appex in Embed App Extensions */, + BF_42222C3F9126FFCC21BA88AD21CFD964 /* iMessageExtension.appex in Embed App Extensions */, ); name = "Embed App Extensions"; runOnlyForDeploymentPostprocessing = 0; }; - CFBP_4930089528 /* Embed Frameworks */ = { + CFBP_CB2355266C8BAA9C97863011F3DE05A2 /* Embed Frameworks */ = { isa = PBXCopyFilesBuildPhase; buildActionMask = 2147483647; dstPath = ""; dstSubfolderSpec = 10; files = ( - BF_552913093094 /* Framework.framework in Embed Frameworks */, - BF_455187765496 /* Result.framework in Embed Frameworks */, + BF_4FC40CAFC1CFAD431215635FE1A0ED86 /* Framework.framework in Embed Frameworks */, + BF_8765851BF5D99B10C220DDD57B968B10 /* Result.framework in Embed Frameworks */, ); name = "Embed Frameworks"; runOnlyForDeploymentPostprocessing = 0; }; - CFBP_5460766702 /* Embed App Extensions */ = { - isa = PBXCopyFilesBuildPhase; - buildActionMask = 2147483647; - dstPath = ""; - dstSubfolderSpec = 13; - files = ( - BF_870702193513 /* iMessageExtension.appex in Embed App Extensions */, - ); - name = "Embed App Extensions"; - runOnlyForDeploymentPostprocessing = 0; - }; - CFBP_6493932244 /* Embed Frameworks */ = { - isa = PBXCopyFilesBuildPhase; - buildActionMask = 2147483647; - dstPath = ""; - dstSubfolderSpec = 10; - files = ( - BF_391366142497 /* Framework2.framework in Embed Frameworks */, - BF_905038616071 /* Framework.framework in Embed Frameworks */, - BF_461044234706 /* SomeFramework.framework in Embed Frameworks */, - ); - name = "Embed Frameworks"; - runOnlyForDeploymentPostprocessing = 0; - }; - CFBP_7191905390 /* CopyFiles */ = { + CFBP_CC1EF1963551F7E08925519982C248B9 /* CopyFiles */ = { isa = PBXCopyFilesBuildPhase; buildActionMask = 2147483647; dstPath = "include/$(PRODUCT_NAME)"; dstSubfolderSpec = 16; files = ( - BF_807556340853 /* Empty.h in CopyFiles */, + BF_2356EAE09301354149D45720369BE7F2 /* StaticLibrary_ObjC.h in CopyFiles */, + BF_1C8AAB7468188315681C0879591969B4 /* module.modulemap in CopyFiles */, ); runOnlyForDeploymentPostprocessing = 0; }; - CFBP_7637809077 /* CopyFiles */ = { - isa = PBXCopyFilesBuildPhase; - buildActionMask = 2147483647; - dstPath = "include/$(PRODUCT_NAME)"; - dstSubfolderSpec = 16; - files = ( - BF_767750315119 /* StaticLibrary_ObjC.h in CopyFiles */, - BF_575042573791 /* module.modulemap in CopyFiles */, - ); - runOnlyForDeploymentPostprocessing = 0; - }; - CFBP_8368933518 /* CopyFiles */ = { + CFBP_CC737A6BF6243B189B109606B0C4B5A2 /* CopyFiles */ = { isa = PBXCopyFilesBuildPhase; buildActionMask = 2147483647; dstPath = "$(CONTENTS_FOLDER_PATH)/XPCServices"; dstSubfolderSpec = 16; files = ( - BF_308631758818 /* XPC Service.xpc in CopyFiles */, - BF_518775144316 /* SomeXPCService.xpc in CopyFiles */, + BF_D9111FF58DCAA51B7251F882EC418E67 /* XPC Service.xpc in CopyFiles */, + BF_67219751DE020023F9D6068EDCCDC445 /* SomeXPCService.xpc in CopyFiles */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; + CFBP_D7E07645BC437C4DFBB212DFC4F3B09E /* CopyFiles */ = { + isa = PBXCopyFilesBuildPhase; + buildActionMask = 2147483647; + dstPath = "include/$(PRODUCT_NAME)"; + dstSubfolderSpec = 16; + files = ( + BF_90F0E9253F2768C312B65530931CD55A /* Empty.h in CopyFiles */, ); runOnlyForDeploymentPostprocessing = 0; }; /* End PBXCopyFilesBuildPhase section */ /* Begin PBXFileReference section */ - FR_105280345645 /* Framework2.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = Framework2.framework; sourceTree = BUILT_PRODUCTS_DIR; }; - FR_118219888726 /* Base */ = {isa = PBXFileReference; lastKnownFileType = file.storyboard; name = Base; path = Base.lproj/LocalizedStoryboard.storyboard; sourceTree = ""; }; - FR_123503999387 /* App_iOS_UITests.xctest */ = {isa = PBXFileReference; includeInIndex = 0; lastKnownFileType = wrapper.cfbundle; path = App_iOS_UITests.xctest; sourceTree = BUILT_PRODUCTS_DIR; }; - FR_131384036341 /* Result.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; path = Result.framework; sourceTree = ""; }; - FR_145531354566 /* TestProjectUITests.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = TestProjectUITests.swift; sourceTree = ""; }; - FR_151462316179 /* main.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = main.m; sourceTree = ""; }; - FR_160440456271 /* Info.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = ""; }; - FR_172952167809 /* FrameworkFile.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = FrameworkFile.swift; sourceTree = ""; }; - FR_183521624014 /* MyFramework.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = MyFramework.h; sourceTree = ""; }; - FR_196911129660 /* MoreUnder.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = MoreUnder.swift; sourceTree = ""; }; - FR_201160695646 /* Base */ = {isa = PBXFileReference; lastKnownFileType = file.storyboard; name = Base; path = Base.lproj/MainInterface.storyboard; sourceTree = ""; }; - FR_202279841299 /* Base */ = {isa = PBXFileReference; lastKnownFileType = file.storyboard; name = Base; path = Base.lproj/Main.storyboard; sourceTree = ""; }; - FR_229826849033 /* SomeXPCService.xpc */ = {isa = PBXFileReference; path = SomeXPCService.xpc; sourceTree = ""; }; - FR_232605427418 /* Mintfile */ = {isa = PBXFileReference; path = Mintfile; sourceTree = ""; }; - FR_238161558082 /* MyBundle.bundle */ = {isa = PBXFileReference; lastKnownFileType = "wrapper.plug-in"; path = MyBundle.bundle; sourceTree = ""; }; - FR_247808626608 /* Info.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = ""; }; - FR_256263906698 /* Base */ = {isa = PBXFileReference; lastKnownFileType = file.storyboard; name = Base; path = Base.lproj/LaunchScreen.storyboard; sourceTree = ""; }; - FR_257073931060 /* ResourceFolder */ = {isa = PBXFileReference; lastKnownFileType = folder; name = ResourceFolder; path = Resources/ResourceFolder; sourceTree = SOURCE_ROOT; }; - FR_263408310401 /* Model 3.xcdatamodel */ = {isa = PBXFileReference; lastKnownFileType = wrapper.xcdatamodel; path = "Model 3.xcdatamodel"; sourceTree = ""; }; - FR_264279911176 /* Base */ = {isa = PBXFileReference; lastKnownFileType = file.storyboard; name = Base; path = Base.lproj/Interface.storyboard; sourceTree = ""; }; - FR_281269793733 /* StaticLibrary_ObjC.a */ = {isa = PBXFileReference; explicitFileType = archive.ar; includeInIndex = 0; path = StaticLibrary_ObjC.a; sourceTree = BUILT_PRODUCTS_DIR; }; - FR_285483315484 /* AppDelegate.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = AppDelegate.swift; sourceTree = ""; }; - FR_293137352077 /* Info.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = ""; }; - FR_304712043717 /* NotificationController.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = NotificationController.swift; sourceTree = ""; }; - FR_310979699934 /* MessagesViewController.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = MessagesViewController.swift; sourceTree = ""; }; - FR_324671077936 /* App_watchOS.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = App_watchOS.app; sourceTree = BUILT_PRODUCTS_DIR; }; - FR_340586388409 /* ExtensionDelegate.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = ExtensionDelegate.swift; sourceTree = ""; }; - FR_363921640403 /* InterfaceController.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = InterfaceController.swift; sourceTree = ""; }; - FR_376569054786 /* XPC Service.xpc */ = {isa = PBXFileReference; includeInIndex = 0; path = "XPC Service.xpc"; sourceTree = BUILT_PRODUCTS_DIR; }; - FR_377082606829 /* Assets.xcassets */ = {isa = PBXFileReference; lastKnownFileType = folder.assetcatalog; path = Assets.xcassets; sourceTree = ""; }; - FR_408537768279 /* StandaloneAssets.xcassets */ = {isa = PBXFileReference; lastKnownFileType = folder.assetcatalog; path = StandaloneAssets.xcassets; sourceTree = ""; }; - FR_437179166843 /* StaticLibrary_Swift.a */ = {isa = PBXFileReference; includeInIndex = 0; lastKnownFileType = archive.ar; path = StaticLibrary_Swift.a; sourceTree = BUILT_PRODUCTS_DIR; }; - FR_438704538506 /* Framework.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = Framework.framework; sourceTree = BUILT_PRODUCTS_DIR; }; - FR_461737784133 /* module.modulemap */ = {isa = PBXFileReference; path = module.modulemap; sourceTree = ""; }; - FR_470929579339 /* StaticLibrary.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = StaticLibrary.swift; sourceTree = ""; }; - FR_472296042419 /* Framework.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = Framework.framework; sourceTree = BUILT_PRODUCTS_DIR; }; - FR_473000061463 /* Base */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = Base; path = Base.lproj/Localizable.strings; sourceTree = ""; }; - FR_479281060337 /* Folder */ = {isa = PBXFileReference; lastKnownFileType = folder; path = Folder; sourceTree = SOURCE_ROOT; }; - FR_480982116789 /* App_macOS.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = App_macOS.app; sourceTree = BUILT_PRODUCTS_DIR; }; - FR_481575785861 /* ViewController.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = ViewController.swift; sourceTree = ""; }; - FR_500792082643 /* en */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = en; path = en.lproj/LocalizedStoryboard.strings; sourceTree = ""; }; - FR_505327409380 /* Info.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = ""; }; - FR_507023492251 /* App_watchOS Extension.appex */ = {isa = PBXFileReference; explicitFileType = "wrapper.app-extension"; includeInIndex = 0; path = "App_watchOS Extension.appex"; sourceTree = BUILT_PRODUCTS_DIR; }; - FR_511515916115 /* Assets.xcassets */ = {isa = PBXFileReference; lastKnownFileType = folder.assetcatalog; path = Assets.xcassets; sourceTree = ""; }; - FR_525119120469 /* Framework.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = Framework.framework; sourceTree = BUILT_PRODUCTS_DIR; }; - FR_530818555464 /* StaticLibrary_ObjC.a */ = {isa = PBXFileReference; explicitFileType = archive.ar; includeInIndex = 0; path = StaticLibrary_ObjC.a; sourceTree = BUILT_PRODUCTS_DIR; }; - FR_530852296303 /* Info.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = ""; }; - FR_563193937230 /* Framework2.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = Framework2.framework; sourceTree = BUILT_PRODUCTS_DIR; }; - FR_570918052822 /* Model.xcdatamodel */ = {isa = PBXFileReference; lastKnownFileType = wrapper.xcdatamodel; path = Model.xcdatamodel; sourceTree = ""; }; - FR_584425140013 /* Result.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; path = Result.framework; sourceTree = ""; }; - FR_587738154368 /* Assets.xcassets */ = {isa = PBXFileReference; lastKnownFileType = folder.assetcatalog; path = Assets.xcassets; sourceTree = ""; }; - FR_602633703434 /* en */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = en; path = en.lproj/Localizable.stringsdict; sourceTree = ""; }; - FR_602719163945 /* XPC_Service.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = XPC_Service.m; sourceTree = ""; }; - FR_602719163962 /* XPC_Service.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = XPC_Service.h; sourceTree = ""; }; - FR_609193904586 /* Base */ = {isa = PBXFileReference; lastKnownFileType = file.storyboard; name = Base; path = Base.lproj/Main.storyboard; sourceTree = ""; }; - FR_618687462494 /* iMessageExtension.appex */ = {isa = PBXFileReference; includeInIndex = 0; lastKnownFileType = "wrapper.app-extension"; path = iMessageExtension.appex; sourceTree = BUILT_PRODUCTS_DIR; }; - FR_635802719871 /* base.xcconfig */ = {isa = PBXFileReference; lastKnownFileType = text.xcconfig; path = base.xcconfig; sourceTree = ""; }; - FR_643034527839 /* Info.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = ""; }; - FR_651103371726 /* Framework2.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = Framework2.framework; sourceTree = BUILT_PRODUCTS_DIR; }; - FR_654302359039 /* SomeFramework.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = SomeFramework.framework; path = Vendor/SomeFramework.framework; sourceTree = ""; }; - FR_655678458041 /* Info.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = ""; }; - FR_660690926982 /* config.xcconfig */ = {isa = PBXFileReference; lastKnownFileType = text.xcconfig; path = config.xcconfig; sourceTree = ""; }; - FR_662315837182 /* Framework.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = Framework.framework; sourceTree = BUILT_PRODUCTS_DIR; }; - FR_662897337290 /* Framework2.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = Framework2.framework; sourceTree = BUILT_PRODUCTS_DIR; }; - FR_665156855283 /* module.modulemap */ = {isa = PBXFileReference; path = module.modulemap; sourceTree = ""; }; - FR_669811003841 /* Result.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; path = Result.framework; sourceTree = ""; }; - FR_675266829517 /* Standalone.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = Standalone.swift; sourceTree = ""; }; - FR_698230898030 /* StaticLibrary_ObjC.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = StaticLibrary_ObjC.h; sourceTree = ""; }; - "FR_698230898030-1" /* StaticLibrary_ObjC.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = StaticLibrary_ObjC.m; sourceTree = ""; }; - FR_704531614016 /* StaticLibrary_ObjC.a */ = {isa = PBXFileReference; includeInIndex = 0; lastKnownFileType = archive.ar; path = StaticLibrary_ObjC.a; sourceTree = BUILT_PRODUCTS_DIR; }; - FR_722239415598 /* TestProjectTests.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = TestProjectTests.swift; sourceTree = ""; }; - FR_725187762757 /* Info.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = ""; }; - FR_739513596122 /* XPC_ServiceProtocol.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = XPC_ServiceProtocol.h; sourceTree = ""; }; - FR_746876637628 /* Base */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = Base; path = Base.lproj/Localizable.stringsdict; sourceTree = ""; }; - FR_748548478992 /* PushNotificationPayload.apns */ = {isa = PBXFileReference; lastKnownFileType = text; path = PushNotificationPayload.apns; sourceTree = ""; }; - FR_763057275314 /* Result.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; path = Result.framework; sourceTree = ""; }; - FR_771029596306 /* en */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = en; path = en.lproj/Localizable.strings; sourceTree = ""; }; - FR_775316160345 /* SomeFile */ = {isa = PBXFileReference; path = SomeFile; sourceTree = ""; }; - FR_777446672298 /* ViewController.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = ViewController.swift; sourceTree = ""; }; - FR_783122899910 /* App_iOS_Tests.xctest */ = {isa = PBXFileReference; includeInIndex = 0; lastKnownFileType = wrapper.cfbundle; path = App_iOS_Tests.xctest; sourceTree = BUILT_PRODUCTS_DIR; }; - FR_796781152159 /* Model 2.xcdatamodel */ = {isa = PBXFileReference; lastKnownFileType = wrapper.xcdatamodel; path = "Model 2.xcdatamodel"; sourceTree = ""; }; - FR_803921963291 /* Info.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = ""; }; - FR_815403394914 /* Headers */ = {isa = PBXFileReference; lastKnownFileType = folder; path = Headers; sourceTree = SOURCE_ROOT; }; - FR_825232110500 /* App_iOS.app */ = {isa = PBXFileReference; includeInIndex = 0; lastKnownFileType = wrapper.application; path = App_iOS.app; sourceTree = BUILT_PRODUCTS_DIR; }; - FR_830053537293 /* Assets.xcassets */ = {isa = PBXFileReference; lastKnownFileType = folder.assetcatalog; path = Assets.xcassets; sourceTree = ""; }; - FR_837374194182 /* Empty.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = Empty.h; sourceTree = ""; }; - FR_854336462818 /* AppDelegate.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = AppDelegate.swift; sourceTree = ""; }; - FR_868653349092 /* Assets.xcassets */ = {isa = PBXFileReference; lastKnownFileType = folder.assetcatalog; path = Assets.xcassets; sourceTree = ""; }; - FR_919543414727 /* StaticLibrary_ObjC.a */ = {isa = PBXFileReference; includeInIndex = 0; lastKnownFileType = archive.ar; path = StaticLibrary_ObjC.a; sourceTree = BUILT_PRODUCTS_DIR; }; - FR_935153865209 /* iMessageApp.app */ = {isa = PBXFileReference; includeInIndex = 0; lastKnownFileType = wrapper.application; path = iMessageApp.app; sourceTree = BUILT_PRODUCTS_DIR; }; - FR_948931241088 /* Info.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = ""; }; - FR_987043315473 /* Assets.xcassets */ = {isa = PBXFileReference; lastKnownFileType = folder.assetcatalog; path = Assets.xcassets; sourceTree = ""; }; + FR_05405007CB77B2E003B19B89401C12AB /* Info.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = ""; }; + FR_07C0A7866967FA47B3F2777BF4AB694A /* XPC_Service.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = XPC_Service.h; sourceTree = ""; }; + FR_0823766D9A1DAB5D3F9CC04A9B35FA3E /* Info.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = ""; }; + FR_09608EA4613E62B3088BBA06F08E00E9 /* App_watchOS Extension.appex */ = {isa = PBXFileReference; explicitFileType = "wrapper.app-extension"; includeInIndex = 0; path = "App_watchOS Extension.appex"; sourceTree = BUILT_PRODUCTS_DIR; }; + FR_0DDA6B4CCFF0DEB79BE16E3F72B95C7F /* App_watchOS.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = App_watchOS.app; sourceTree = BUILT_PRODUCTS_DIR; }; + FR_0EDA4C9F9810C805C447660BF181FFF9 /* StaticLibrary_ObjC.a */ = {isa = PBXFileReference; includeInIndex = 0; lastKnownFileType = archive.ar; path = StaticLibrary_ObjC.a; sourceTree = BUILT_PRODUCTS_DIR; }; + FR_11478908A963CED036DABEF21D85DF01 /* Result.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; path = Result.framework; sourceTree = ""; }; + FR_11E95FCD1DEB0C8A01A053518C1DAA8E /* en */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = en; path = en.lproj/Localizable.strings; sourceTree = ""; }; + FR_1672C218968DD6996F05E3C7688F0718 /* App_iOS.app */ = {isa = PBXFileReference; includeInIndex = 0; lastKnownFileType = wrapper.application; path = App_iOS.app; sourceTree = BUILT_PRODUCTS_DIR; }; + FR_16B791CFA2095097A17CC216977DF6EF /* Assets.xcassets */ = {isa = PBXFileReference; lastKnownFileType = folder.assetcatalog; path = Assets.xcassets; sourceTree = ""; }; + FR_1B0304C0E4DC73614BAA550E4A80D41C /* ResourceFolder */ = {isa = PBXFileReference; lastKnownFileType = folder; name = ResourceFolder; path = Resources/ResourceFolder; sourceTree = SOURCE_ROOT; }; + FR_1E05BB66BFD5629EAFDC86A4E869F864 /* iMessageApp.app */ = {isa = PBXFileReference; includeInIndex = 0; lastKnownFileType = wrapper.application; path = iMessageApp.app; sourceTree = BUILT_PRODUCTS_DIR; }; + FR_20EF6A69E91EC1859026CEBF5AD33FC2 /* Framework2.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = Framework2.framework; sourceTree = BUILT_PRODUCTS_DIR; }; + FR_22A431E337CB22CE70E39135206EDE27 /* config.xcconfig */ = {isa = PBXFileReference; lastKnownFileType = text.xcconfig; path = config.xcconfig; sourceTree = ""; }; + FR_25BDF725104C5E280D45CBF33F54C72C /* ViewController.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = ViewController.swift; sourceTree = ""; }; + FR_261C31660333EF514356EFCBDB368EAB /* FrameworkFile.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = FrameworkFile.swift; sourceTree = ""; }; + FR_2649A01C17A7301DD72EA826604ED8AA /* Base */ = {isa = PBXFileReference; lastKnownFileType = file.storyboard; name = Base; path = Base.lproj/Interface.storyboard; sourceTree = ""; }; + FR_291D6D09ACADC420638E83BEE89DFFEB /* MyBundle.bundle */ = {isa = PBXFileReference; lastKnownFileType = "wrapper.plug-in"; path = MyBundle.bundle; sourceTree = ""; }; + FR_2F56FD7A1F7782467AC9F315B6133468 /* SomeFramework.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = SomeFramework.framework; path = Vendor/SomeFramework.framework; sourceTree = ""; }; + FR_347062562C9C212A082B1326BBCDC71B /* Model 2.xcdatamodel */ = {isa = PBXFileReference; lastKnownFileType = wrapper.xcdatamodel; path = "Model 2.xcdatamodel"; sourceTree = ""; }; + FR_35B9B5E8A2ED60FBB9CED8AE515B16B5 /* en */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = en; path = en.lproj/LocalizedStoryboard.strings; sourceTree = ""; }; + FR_3744DA35690747A918CC896E2354C59D /* Info.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = ""; }; + FR_3B4065B548BFD8CFB3D1153F7106DDA3 /* Folder */ = {isa = PBXFileReference; lastKnownFileType = folder; path = Folder; sourceTree = SOURCE_ROOT; }; + FR_3DD4DE355C21662A9169EE41C44F73E3 /* Headers */ = {isa = PBXFileReference; lastKnownFileType = folder; path = Headers; sourceTree = SOURCE_ROOT; }; + FR_3ED99EEAF978C071491E281B8EAFD249 /* Info.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = ""; }; + FR_41E1155D8A7FDD97B783A1D5B3AD2C5B /* Info.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = ""; }; + FR_4B58A01ABBE8E0A56B7B5A539C9BF5C7 /* Base */ = {isa = PBXFileReference; name = Base; path = Base.lproj/Localizable.stringsdict; sourceTree = ""; }; + FR_4DB225C7FF39C16EEFD9A1A5595FCDBC /* AppDelegate.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = AppDelegate.swift; sourceTree = ""; }; + FR_4EB4AAACD714C13E5BC894C71B954299 /* SomeXPCService.xpc */ = {isa = PBXFileReference; path = SomeXPCService.xpc; sourceTree = ""; }; + FR_5465435FA4A3763830C566514B358969 /* StaticLibrary_Swift.a */ = {isa = PBXFileReference; includeInIndex = 0; lastKnownFileType = archive.ar; path = StaticLibrary_Swift.a; sourceTree = BUILT_PRODUCTS_DIR; }; + FR_586C1089A4869FFCB50BE6A26B0FA1E7 /* iMessageExtension.appex */ = {isa = PBXFileReference; includeInIndex = 0; lastKnownFileType = "wrapper.app-extension"; path = iMessageExtension.appex; sourceTree = BUILT_PRODUCTS_DIR; }; + FR_58A974F0E117C1384FD1B5147E524659 /* Model.xcdatamodel */ = {isa = PBXFileReference; lastKnownFileType = wrapper.xcdatamodel; path = Model.xcdatamodel; sourceTree = ""; }; + FR_5B3188BDA6DB0560398A483646F17AE4 /* App_iOS_Tests.xctest */ = {isa = PBXFileReference; includeInIndex = 0; lastKnownFileType = wrapper.cfbundle; path = App_iOS_Tests.xctest; sourceTree = BUILT_PRODUCTS_DIR; }; + FR_5CFDEA59B939FA9F3CA4F775B9E6AD2B /* TestProjectUITests.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = TestProjectUITests.swift; sourceTree = ""; }; + FR_5E4B4E53251DE2294715A48CC249EBFD /* Mintfile */ = {isa = PBXFileReference; path = Mintfile; sourceTree = ""; }; + FR_5FEC20FF753341FD0483E2E4C622DB05 /* MessagesViewController.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = MessagesViewController.swift; sourceTree = ""; }; + FR_62ECE5A3D0F25415CB50A28226B91EBE /* Base */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = Base; path = Base.lproj/Localizable.strings; sourceTree = ""; }; + FR_6643E0FE8DD9AAC71691A739070C6833 /* Model 3.xcdatamodel */ = {isa = PBXFileReference; lastKnownFileType = wrapper.xcdatamodel; path = "Model 3.xcdatamodel"; sourceTree = ""; }; + FR_752FB5DFFBC490CFB9742549A0C48527 /* ViewController.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = ViewController.swift; sourceTree = ""; }; + FR_7532DD7B78451A5040048474AC4FBCCC /* Base */ = {isa = PBXFileReference; lastKnownFileType = file.storyboard; name = Base; path = Base.lproj/Main.storyboard; sourceTree = ""; }; + FR_7C782E8FBF41DE8BB1E3789DF2C8C1F7 /* PushNotificationPayload.apns */ = {isa = PBXFileReference; lastKnownFileType = text; path = PushNotificationPayload.apns; sourceTree = ""; }; + FR_7C8280C3C5E1D43BBB12A5F0156A8305 /* Base */ = {isa = PBXFileReference; lastKnownFileType = file.storyboard; name = Base; path = Base.lproj/MainInterface.storyboard; sourceTree = ""; }; + FR_7F4496C534F2DF8C4FB9A8D52414990B /* XPC_Service.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = XPC_Service.m; sourceTree = ""; }; + FR_81A08F81FED7C42DC346B9611ECD21AA /* XPC_ServiceProtocol.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = XPC_ServiceProtocol.h; sourceTree = ""; }; + FR_82E3C6C060C4487B5177509917C3FAE3 /* Standalone.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = Standalone.swift; sourceTree = ""; }; + FR_8B770F475242D91FC20289A3B35CD165 /* Result.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; path = Result.framework; sourceTree = ""; }; + FR_8FCFCDD6A5A7292C72787E2FC0A36294 /* XPC Service.xpc */ = {isa = PBXFileReference; includeInIndex = 0; path = "XPC Service.xpc"; sourceTree = BUILT_PRODUCTS_DIR; }; + FR_9403DF729F7FE2E6B823C1DACE1E6214 /* App_iOS_UITests.xctest */ = {isa = PBXFileReference; includeInIndex = 0; lastKnownFileType = wrapper.cfbundle; path = App_iOS_UITests.xctest; sourceTree = BUILT_PRODUCTS_DIR; }; + FR_96127F4D9D804B89024AB846F0961621 /* module.modulemap */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.module; path = module.modulemap; sourceTree = ""; }; + FR_98BB4C8D33EB0E666C136ACD08B21EB3 /* Info.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = ""; }; + FR_9B4B00A3CDADD50167B2393562AEBAB2 /* module.modulemap */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.module; path = module.modulemap; sourceTree = ""; }; + FR_A0867B127ACF3ED382EB2FD5133D3EA8 /* Assets.xcassets */ = {isa = PBXFileReference; lastKnownFileType = folder.assetcatalog; path = Assets.xcassets; sourceTree = ""; }; + FR_A51DE87AC269BC36016F9CAC32B4ECB2 /* Base */ = {isa = PBXFileReference; lastKnownFileType = file.storyboard; name = Base; path = Base.lproj/LocalizedStoryboard.storyboard; sourceTree = ""; }; + FR_A55A35F549FD72775C37ED05342812AA /* Assets.xcassets */ = {isa = PBXFileReference; lastKnownFileType = folder.assetcatalog; path = Assets.xcassets; sourceTree = ""; }; + FR_A957DAE2193BE1E970F452BFEFF3EBF6 /* MyFramework.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = MyFramework.h; sourceTree = ""; }; + FR_AC5B2FCE520D5306B254D5857E15B6CB /* MoreUnder.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = MoreUnder.swift; sourceTree = ""; }; + FR_B243640A6F73B3F3D33ABD05ABDBC26B /* Assets.xcassets */ = {isa = PBXFileReference; lastKnownFileType = folder.assetcatalog; path = Assets.xcassets; sourceTree = ""; }; + FR_B537FEE8515090D3BA0F5CFF3BC76BB1 /* Assets.xcassets */ = {isa = PBXFileReference; lastKnownFileType = folder.assetcatalog; path = Assets.xcassets; sourceTree = ""; }; + FR_B993F75B001AB1C272CE83CACC06F0E5 /* AppDelegate.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = AppDelegate.swift; sourceTree = ""; }; + FR_BB49B398F9291781A60DA963A0BF168C /* NotificationController.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = NotificationController.swift; sourceTree = ""; }; + FR_BCEF8D29C9B93D3160D8D76DD368C8AD /* en */ = {isa = PBXFileReference; name = en; path = en.lproj/Localizable.stringsdict; sourceTree = ""; }; + FR_C2A280C4FA602E6610BCFB820602B69E /* StaticLibrary_ObjC.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = StaticLibrary_ObjC.m; sourceTree = ""; }; + FR_C5682A1371F91CBD1254C115F0439F12 /* Base */ = {isa = PBXFileReference; lastKnownFileType = file.storyboard; name = Base; path = Base.lproj/Main.storyboard; sourceTree = ""; }; + FR_C6A9DE885CAF350F6C9D0AC6F7324CD3 /* StandaloneAssets.xcassets */ = {isa = PBXFileReference; lastKnownFileType = folder.assetcatalog; path = StandaloneAssets.xcassets; sourceTree = ""; }; + FR_C73B96CEEE97DE429C638EBD9C2F3D2B /* Base */ = {isa = PBXFileReference; lastKnownFileType = file.storyboard; name = Base; path = Base.lproj/LaunchScreen.storyboard; sourceTree = ""; }; + FR_C86A7EAE4DFF4327D1E7D32A597CA4AC /* SomeFile */ = {isa = PBXFileReference; path = SomeFile; sourceTree = ""; }; + FR_CB1D0F4BB53B8DEE921C6E232193A62B /* Info.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = ""; }; + FR_CC3A24A5C8E1815346752C5AB0745176 /* InterfaceController.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = InterfaceController.swift; sourceTree = ""; }; + FR_CCC97AF230188CAF9B4A66324891CCAD /* StaticLibrary.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = StaticLibrary.swift; sourceTree = ""; }; + FR_CEAE8D9C3F3920D6EADE5455C188EAAE /* Result.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; path = Result.framework; sourceTree = ""; }; + FR_D0BE69522DB875ADB041E9135E0767CA /* StaticLibrary_ObjC.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = StaticLibrary_ObjC.h; sourceTree = ""; }; + FR_D7B45FAEE40EE622B4FA9192609F9717 /* TestProjectTests.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = TestProjectTests.swift; sourceTree = ""; }; + FR_DACDD51068A6E1B7D2470F3E27E5EB2C /* Info.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = ""; }; + FR_DBB69305458B16774C88720CDD3978E5 /* ExtensionDelegate.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = ExtensionDelegate.swift; sourceTree = ""; }; + FR_DBD29CA78CDBBEF69B2C39C6D23BBDA1 /* Empty.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = Empty.h; sourceTree = ""; }; + FR_DC1C8DE46218F90A3F4FD5F8DE4F0ABB /* Result.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; path = Result.framework; sourceTree = ""; }; + FR_E3314150DA4CEFF65D69CF7DB678E845 /* Info.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = ""; }; + FR_ED407ECED0DF010B1E787D238EA91A5D /* Assets.xcassets */ = {isa = PBXFileReference; lastKnownFileType = folder.assetcatalog; path = Assets.xcassets; sourceTree = ""; }; + FR_F18AD4408D0A35A0B9EAE353E8087CDE /* App_macOS.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = App_macOS.app; sourceTree = BUILT_PRODUCTS_DIR; }; + FR_F25AB3F5F1D72653F078DF0E063DC9A5 /* Framework.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = Framework.framework; sourceTree = BUILT_PRODUCTS_DIR; }; + FR_F5353B71B99044C8C37D7601A8107195 /* base.xcconfig */ = {isa = PBXFileReference; lastKnownFileType = text.xcconfig; path = base.xcconfig; sourceTree = ""; }; + FR_F5436E663145426483F206F8A61400BC /* main.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = main.m; sourceTree = ""; }; + FR_F861CF6DF133AAD164CBE6DF2C7CEBFF /* Info.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = ""; }; /* End PBXFileReference section */ /* Begin PBXFrameworksBuildPhase section */ - FBP_32467107793 /* Frameworks */ = { + FBP_18D4325BBE506E88E1C742F57AECB0CD /* Frameworks */ = { isa = PBXFrameworksBuildPhase; buildActionMask = 2147483647; files = ( - BF_786389356145 /* Result.framework in Frameworks */, + BF_42944378315033432F76246C09E5A4DB /* Framework2.framework in Frameworks */, + BF_A314322BB45C75B7EE401C539B1120C5 /* Framework.framework in Frameworks */, + BF_B8E824A58BFE0B81E16BB26087FDC8B4 /* Result.framework in Frameworks */, + BF_A038D29BE93A9CF1654D2B7392845AEA /* StaticLibrary_ObjC.a in Frameworks */, + BF_93A4E1A93C7DB4289E526466D547E55E /* SomeFramework.framework in Frameworks */, ); runOnlyForDeploymentPostprocessing = 0; }; - FBP_43870453850 /* Frameworks */ = { + FBP_1BDCD6E0245ED2400E6FE9AC9C334DE4 /* Frameworks */ = { isa = PBXFrameworksBuildPhase; buildActionMask = 2147483647; files = ( - BF_695553653993 /* Result.framework in Frameworks */, + BF_BD2537A230BFC8A86681F0AF34C929DA /* Result.framework in Frameworks */, ); runOnlyForDeploymentPostprocessing = 0; }; - FBP_47229604241 /* Frameworks */ = { + FBP_3C7ADC43EF430300C2A315B0D2860080 /* Frameworks */ = { isa = PBXFrameworksBuildPhase; buildActionMask = 2147483647; files = ( - BF_629554450880 /* Result.framework in Frameworks */, + BF_6FA9DA8B67663BAD9E11C1CEBD3BAC43 /* Result.framework in Frameworks */, ); runOnlyForDeploymentPostprocessing = 0; }; - FBP_48098211678 /* Frameworks */ = { + FBP_4E773D46F6F726BBC0032C576D02FCB7 /* Frameworks */ = { isa = PBXFrameworksBuildPhase; buildActionMask = 2147483647; files = ( - BF_597639300414 /* Framework.framework in Frameworks */, - BF_874851989284 /* Result.framework in Frameworks */, - BF_664393732795 /* StaticLibrary_ObjC.a in Frameworks */, + BF_81C29A47481BF6D67B4CB3F6C836A57E /* Framework.framework in Frameworks */, + BF_230439786C4C6849F488A5FADC6A42A5 /* Result.framework in Frameworks */, + BF_587563F1FBA507305EC4AD895394002E /* StaticLibrary_ObjC.a in Frameworks */, ); runOnlyForDeploymentPostprocessing = 0; }; - FBP_50702349225 /* Frameworks */ = { + FBP_71D96680A2FBE24C4C8BD0B5E55FE034 /* Frameworks */ = { isa = PBXFrameworksBuildPhase; buildActionMask = 2147483647; files = ( - BF_140777424236 /* Result.framework in Frameworks */, + BF_ED8BB47A2229EC3BEE544608267FB82D /* Result.framework in Frameworks */, ); runOnlyForDeploymentPostprocessing = 0; }; - FBP_52511912046 /* Frameworks */ = { + FBP_935BCDE6C86D2D59A945DC1E6886D7C3 /* Frameworks */ = { isa = PBXFrameworksBuildPhase; buildActionMask = 2147483647; files = ( - BF_826731453953 /* Result.framework in Frameworks */, + BF_B5446C54E942A18E025D2061A88004A4 /* Result.framework in Frameworks */, ); runOnlyForDeploymentPostprocessing = 0; }; - FBP_66231583718 /* Frameworks */ = { + FBP_98B76E46D78FD48FB47A41B8891665BC /* Frameworks */ = { isa = PBXFrameworksBuildPhase; buildActionMask = 2147483647; files = ( - BF_752504835660 /* Result.framework in Frameworks */, + BF_86F2552DA1E230901EC4CB1A40399019 /* Result.framework in Frameworks */, ); runOnlyForDeploymentPostprocessing = 0; }; - FBP_82523211050 /* Frameworks */ = { + FBP_F6E2D2D110453E88BF9E3FB6A466B8EC /* Frameworks */ = { isa = PBXFrameworksBuildPhase; buildActionMask = 2147483647; files = ( - BF_616519281451 /* Framework2.framework in Frameworks */, - BF_324363145049 /* Framework.framework in Frameworks */, - BF_474063668246 /* Result.framework in Frameworks */, - BF_849675970921 /* StaticLibrary_ObjC.a in Frameworks */, - BF_215463341392 /* SomeFramework.framework in Frameworks */, + BF_D4A5544EDEE7F80A1F9DF1D0684CAFBB /* Result.framework in Frameworks */, ); runOnlyForDeploymentPostprocessing = 0; }; /* End PBXFrameworksBuildPhase section */ /* Begin PBXGroup section */ - G_1235039993875 /* App_iOS_UITests */ = { + G_089F5A7E7FB159719FE19B5E84B85D5D /* App_watchOS Extension */ = { isa = PBXGroup; children = ( - FR_643034527839 /* Info.plist */, - FR_145531354566 /* TestProjectUITests.swift */, - ); - path = App_iOS_UITests; - sourceTree = ""; - }; - G_1646573205915 /* iMessage MessagesExtension */ = { - isa = PBXGroup; - children = ( - FR_830053537293 /* Assets.xcassets */, - FR_948931241088 /* Info.plist */, - VG_201160695646 /* MainInterface.storyboard */, - FR_310979699934 /* MessagesViewController.swift */, - ); - path = "iMessage MessagesExtension"; - sourceTree = ""; - }; - G_1885780145626 /* CopyFiles */ = { - isa = PBXGroup; - children = ( - FR_837374194182 /* Empty.h */, - ); - path = CopyFiles; - sourceTree = ""; - }; - G_1952740716080 /* Frameworks */ = { - isa = PBXGroup; - children = ( - G_2883690153011 /* Carthage */, - FR_654302359039 /* SomeFramework.framework */, - ); - name = Frameworks; - sourceTree = ""; - }; - G_2262017438925 /* iOS */ = { - isa = PBXGroup; - children = ( - FR_763057275314 /* Result.framework */, - ); - path = iOS; - sourceTree = ""; - }; - G_2262017442691 /* Mac */ = { - isa = PBXGroup; - children = ( - FR_131384036341 /* Result.framework */, - ); - path = Mac; - sourceTree = ""; - }; - G_2883690153011 /* Carthage */ = { - isa = PBXGroup; - children = ( - G_2262017438925 /* iOS */, - G_2262017442691 /* Mac */, - G_8628897169668 /* tvOS */, - G_8244488572839 /* watchOS */, - ); - name = Carthage; - path = Carthage/Build; - sourceTree = ""; - }; - G_3234630030493 /* FileGroup */ = { - isa = PBXGroup; - children = ( - G_8030722683864 /* UnderFileGroup */, - ); - path = FileGroup; - sourceTree = ""; - }; - G_3246710779368 /* App_watchOS */ = { - isa = PBXGroup; - children = ( - FR_587738154368 /* Assets.xcassets */, - FR_293137352077 /* Info.plist */, - VG_264279911176 /* Interface.storyboard */, - ); - path = App_watchOS; - sourceTree = ""; - }; - G_3765690547864 /* XPC Service */ = { - isa = PBXGroup; - children = ( - FR_803921963291 /* Info.plist */, - FR_151462316179 /* main.m */, - FR_602719163962 /* XPC_Service.h */, - FR_602719163945 /* XPC_Service.m */, - FR_739513596122 /* XPC_ServiceProtocol.h */, - ); - path = "XPC Service"; - sourceTree = ""; - }; - G_3997550084026 /* StaticLibrary_ObjC */ = { - isa = PBXGroup; - children = ( - G_5938599606592 /* Module */, - FR_698230898030 /* StaticLibrary_ObjC.h */, - "FR_698230898030-1" /* StaticLibrary_ObjC.m */, - ); - path = StaticLibrary_ObjC; - sourceTree = ""; - }; - G_4371791668439 /* StaticLibrary_Swift */ = { - isa = PBXGroup; - children = ( - FR_470929579339 /* StaticLibrary.swift */, - ); - path = StaticLibrary_Swift; - sourceTree = ""; - }; - G_4661500274312 /* Framework */ = { - isa = PBXGroup; - children = ( - FR_172952167809 /* FrameworkFile.swift */, - FR_247808626608 /* Info.plist */, - FR_183521624014 /* MyFramework.h */, - ); - path = Framework; - sourceTree = ""; - }; - G_4793969390202 /* Vendor */ = { - isa = PBXGroup; - children = ( - FR_229826849033 /* SomeXPCService.xpc */, - ); - path = Vendor; - sourceTree = ""; - }; - G_4809821167898 /* App_macOS */ = { - isa = PBXGroup; - children = ( - FR_285483315484 /* AppDelegate.swift */, - FR_511515916115 /* Assets.xcassets */, - FR_160440456271 /* Info.plist */, - VG_202279841299 /* Main.storyboard */, - FR_777446672298 /* ViewController.swift */, - ); - path = App_macOS; - sourceTree = ""; - }; - G_5070234922517 /* App_watchOS Extension */ = { - isa = PBXGroup; - children = ( - FR_987043315473 /* Assets.xcassets */, - FR_340586388409 /* ExtensionDelegate.swift */, - FR_530852296303 /* Info.plist */, - FR_363921640403 /* InterfaceController.swift */, - FR_304712043717 /* NotificationController.swift */, - FR_748548478992 /* PushNotificationPayload.apns */, + FR_B243640A6F73B3F3D33ABD05ABDBC26B /* Assets.xcassets */, + FR_DBB69305458B16774C88720CDD3978E5 /* ExtensionDelegate.swift */, + FR_3744DA35690747A918CC896E2354C59D /* Info.plist */, + FR_CC3A24A5C8E1815346752C5AB0745176 /* InterfaceController.swift */, + FR_BB49B398F9291781A60DA963A0BF168C /* NotificationController.swift */, + FR_7C782E8FBF41DE8BB1E3789DF2C8C1F7 /* PushNotificationPayload.apns */, ); path = "App_watchOS Extension"; sourceTree = ""; }; - G_5938599606592 /* Module */ = { + G_0D2DDBB1C39493B8B0EAF9CC23272F2D /* Framework */ = { isa = PBXGroup; children = ( - FR_665156855283 /* module.modulemap */, + FR_261C31660333EF514356EFCBDB368EAB /* FrameworkFile.swift */, + FR_F861CF6DF133AAD164CBE6DF2C7CEBFF /* Info.plist */, + FR_A957DAE2193BE1E970F452BFEFF3EBF6 /* MyFramework.h */, ); - path = Module; + path = Framework; sourceTree = ""; }; - G_6651250437419 /* StandaloneFiles */ = { + G_23236546763854F4301D7847EBA0A2BF /* XPC Service */ = { isa = PBXGroup; children = ( - FR_675266829517 /* Standalone.swift */, - FR_408537768279 /* StandaloneAssets.xcassets */, + FR_98BB4C8D33EB0E666C136ACD08B21EB3 /* Info.plist */, + FR_F5436E663145426483F206F8A61400BC /* main.m */, + FR_07C0A7866967FA47B3F2777BF4AB694A /* XPC_Service.h */, + FR_7F4496C534F2DF8C4FB9A8D52414990B /* XPC_Service.m */, + FR_81A08F81FED7C42DC346B9611ECD21AA /* XPC_ServiceProtocol.h */, ); - path = StandaloneFiles; + path = "XPC Service"; sourceTree = ""; }; - G_7189434949822 /* Resources */ = { + G_26EB72A03E79484F94412C6DF07B2C65 /* iOS */ = { isa = PBXGroup; children = ( - FR_238161558082 /* MyBundle.bundle */, + FR_CEAE8D9C3F3920D6EADE5455C188EAAE /* Result.framework */, ); - path = Resources; + path = iOS; sourceTree = ""; }; - G_7831228999101 /* App_iOS_Tests */ = { + G_2C00D0D23CBE29FF5F6DFEB95CBF2ECA /* UnderFileGroup */ = { isa = PBXGroup; children = ( - FR_655678458041 /* Info.plist */, - FR_722239415598 /* TestProjectTests.swift */, - ); - path = App_iOS_Tests; - sourceTree = ""; - }; - G_8030722683864 /* UnderFileGroup */ = { - isa = PBXGroup; - children = ( - FR_196911129660 /* MoreUnder.swift */, + FR_AC5B2FCE520D5306B254D5857E15B6CB /* MoreUnder.swift */, ); path = UnderFileGroup; sourceTree = ""; }; - G_8244488572839 /* watchOS */ = { + G_322C327C1DB8AE7E0B99EF59318DFE22 /* Resources */ = { isa = PBXGroup; children = ( - FR_584425140013 /* Result.framework */, + FR_291D6D09ACADC420638E83BEE89DFFEB /* MyBundle.bundle */, ); - path = watchOS; + path = Resources; sourceTree = ""; }; - G_8252321105004 /* App */ = { + G_3569DDFAF0CD0D2E17F8D05B12F9A7BA /* tvOS */ = { isa = PBXGroup; children = ( - FR_854336462818 /* AppDelegate.swift */, - FR_868653349092 /* Assets.xcassets */, - FR_725187762757 /* Info.plist */, - VG_256263906698 /* LaunchScreen.storyboard */, - VG_473000061463 /* Localizable.strings */, - VG_746876637628 /* Localizable.stringsdict */, - VG_118219888726 /* LocalizedStoryboard.storyboard */, - VG_609193904586 /* Main.storyboard */, - VG_229021855709 /* Model.xcdatamodeld */, - FR_461737784133 /* module.modulemap */, - FR_481575785861 /* ViewController.swift */, + FR_8B770F475242D91FC20289A3B35CD165 /* Result.framework */, + ); + path = tvOS; + sourceTree = ""; + }; + G_373C03E19EC66ABB051FC35B4E57A52E /* App_iOS_UITests */ = { + isa = PBXGroup; + children = ( + FR_0823766D9A1DAB5D3F9CC04A9B35FA3E /* Info.plist */, + FR_5CFDEA59B939FA9F3CA4F775B9E6AD2B /* TestProjectUITests.swift */, + ); + path = App_iOS_UITests; + sourceTree = ""; + }; + G_415E92CCC7C77CD8BB161FA75E8B66EF /* iMessage MessagesExtension */ = { + isa = PBXGroup; + children = ( + FR_16B791CFA2095097A17CC216977DF6EF /* Assets.xcassets */, + FR_E3314150DA4CEFF65D69CF7DB678E845 /* Info.plist */, + VG_06DC429EEFBBA25BC3EE1AA1B4062C10 /* MainInterface.storyboard */, + FR_5FEC20FF753341FD0483E2E4C622DB05 /* MessagesViewController.swift */, + ); + path = "iMessage MessagesExtension"; + sourceTree = ""; + }; + G_4401384B8D17D0B62305BE82DE0660D2 /* App_iOS_Tests */ = { + isa = PBXGroup; + children = ( + FR_CB1D0F4BB53B8DEE921C6E232193A62B /* Info.plist */, + FR_D7B45FAEE40EE622B4FA9192609F9717 /* TestProjectTests.swift */, + ); + path = App_iOS_Tests; + sourceTree = ""; + }; + G_4A1045347B09A484656D26436E35FDCC /* StaticLibrary_ObjC */ = { + isa = PBXGroup; + children = ( + G_AFE0E055A99B8BF7C44E69B9B69889C8 /* Module */, + FR_D0BE69522DB875ADB041E9135E0767CA /* StaticLibrary_ObjC.h */, + FR_C2A280C4FA602E6610BCFB820602B69E /* StaticLibrary_ObjC.m */, + ); + path = StaticLibrary_ObjC; + sourceTree = ""; + }; + G_54CAD56F6F3EAD10E9DB8D50B52D09F3 /* Frameworks */ = { + isa = PBXGroup; + children = ( + G_A1CE8BFBEAC6AFDC64D7068C3CE11421 /* Carthage */, + FR_2F56FD7A1F7782467AC9F315B6133468 /* SomeFramework.framework */, + ); + name = Frameworks; + sourceTree = ""; + }; + G_68375B6CA3E19FBBA0246B55B60849C0 /* App_macOS */ = { + isa = PBXGroup; + children = ( + FR_4DB225C7FF39C16EEFD9A1A5595FCDBC /* AppDelegate.swift */, + FR_A55A35F549FD72775C37ED05342812AA /* Assets.xcassets */, + FR_3ED99EEAF978C071491E281B8EAFD249 /* Info.plist */, + VG_14B7B5469AA17939993A2B25E775D391 /* Main.storyboard */, + FR_25BDF725104C5E280D45CBF33F54C72C /* ViewController.swift */, + ); + path = App_macOS; + sourceTree = ""; + }; + G_77F9CDD1713BAEF02DF44C1EA19D86B8 /* Mac */ = { + isa = PBXGroup; + children = ( + FR_11478908A963CED036DABEF21D85DF01 /* Result.framework */, + ); + path = Mac; + sourceTree = ""; + }; + G_7C1E92BE8CA995A6B0952C8AE6F5ADF9 /* App_watchOS */ = { + isa = PBXGroup; + children = ( + FR_ED407ECED0DF010B1E787D238EA91A5D /* Assets.xcassets */, + FR_DACDD51068A6E1B7D2470F3E27E5EB2C /* Info.plist */, + VG_6542B94EE7DA40CD30BC54DED26C61C7 /* Interface.storyboard */, + ); + path = App_watchOS; + sourceTree = ""; + }; + G_81658721738C48797F805CC891E70B6F /* Configs */ = { + isa = PBXGroup; + children = ( + FR_F5353B71B99044C8C37D7601A8107195 /* base.xcconfig */, + FR_22A431E337CB22CE70E39135206EDE27 /* config.xcconfig */, + ); + path = Configs; + sourceTree = ""; + }; + G_8F5765334752A7E52B1E63ACAC466729 /* App */ = { + isa = PBXGroup; + children = ( + FR_B993F75B001AB1C272CE83CACC06F0E5 /* AppDelegate.swift */, + FR_A0867B127ACF3ED382EB2FD5133D3EA8 /* Assets.xcassets */, + FR_05405007CB77B2E003B19B89401C12AB /* Info.plist */, + VG_F256536BB07CF3E64C4DD934F75BED9C /* LaunchScreen.storyboard */, + VG_BE436BDD64E90EFB600D47AC69B49DD3 /* Localizable.strings */, + VG_C247AA37E9057916EDDC65C7B55E2F38 /* Localizable.stringsdict */, + VG_FE6D89DA2D7E7F58340D566590FF221C /* LocalizedStoryboard.storyboard */, + VG_30676EBEE9BE54AA26CAE69BE744CAE8 /* Main.storyboard */, + VG_EB676136B9F946373D4796800CC00AD4 /* Model.xcdatamodeld */, + FR_9B4B00A3CDADD50167B2393562AEBAB2 /* module.modulemap */, + FR_752FB5DFFBC490CFB9742549A0C48527 /* ViewController.swift */, ); name = App; path = App_iOS; sourceTree = ""; }; - G_8268950006174 /* iMessage */ = { + G_9DEB15811B31C2D4D4B63339FBE33149 /* FileGroup */ = { isa = PBXGroup; children = ( - FR_377082606829 /* Assets.xcassets */, - FR_505327409380 /* Info.plist */, + G_2C00D0D23CBE29FF5F6DFEB95CBF2ECA /* UnderFileGroup */, ); - path = iMessage; + path = FileGroup; sourceTree = ""; }; - G_8340618952527 /* Configs */ = { + G_9E36E5E1B7BEC6A8D683D2E36CE21BCE /* CopyFiles */ = { isa = PBXGroup; children = ( - FR_635802719871 /* base.xcconfig */, - FR_660690926982 /* config.xcconfig */, + FR_DBD29CA78CDBBEF69B2C39C6D23BBDA1 /* Empty.h */, ); - path = Configs; + path = CopyFiles; sourceTree = ""; }; - G_8448771205358 = { + G_A1CE8BFBEAC6AFDC64D7068C3CE11421 /* Carthage */ = { isa = PBXGroup; children = ( - G_8252321105004 /* App */, - G_7831228999101 /* App_iOS_Tests */, - G_1235039993875 /* App_iOS_UITests */, - G_4809821167898 /* App_macOS */, - G_3246710779368 /* App_watchOS */, - G_5070234922517 /* App_watchOS Extension */, - G_8340618952527 /* Configs */, - G_1885780145626 /* CopyFiles */, - G_3234630030493 /* FileGroup */, - G_4661500274312 /* Framework */, - G_8268950006174 /* iMessage */, - G_1646573205915 /* iMessage MessagesExtension */, - G_7189434949822 /* Resources */, - G_6651250437419 /* StandaloneFiles */, - G_3997550084026 /* StaticLibrary_ObjC */, - G_4371791668439 /* StaticLibrary_Swift */, - G_4793969390202 /* Vendor */, - G_3765690547864 /* XPC Service */, - FR_479281060337 /* Folder */, - FR_815403394914 /* Headers */, - FR_232605427418 /* Mintfile */, - FR_257073931060 /* ResourceFolder */, - FR_775316160345 /* SomeFile */, - G_1952740716080 /* Frameworks */, - G_8620238527590 /* Products */, + G_26EB72A03E79484F94412C6DF07B2C65 /* iOS */, + G_77F9CDD1713BAEF02DF44C1EA19D86B8 /* Mac */, + G_3569DDFAF0CD0D2E17F8D05B12F9A7BA /* tvOS */, + G_CC8E08E619EF6EA96B28904C6651F6B8 /* watchOS */, + ); + name = Carthage; + path = Carthage/Build; + sourceTree = ""; + }; + G_AFE0E055A99B8BF7C44E69B9B69889C8 /* Module */ = { + isa = PBXGroup; + children = ( + FR_96127F4D9D804B89024AB846F0961621 /* module.modulemap */, + ); + path = Module; + sourceTree = ""; + }; + G_B0D2DFD450BCF614AA46E474644F2CE3 /* Products */ = { + isa = PBXGroup; + children = ( + FR_5B3188BDA6DB0560398A483646F17AE4 /* App_iOS_Tests.xctest */, + FR_9403DF729F7FE2E6B823C1DACE1E6214 /* App_iOS_UITests.xctest */, + FR_1672C218968DD6996F05E3C7688F0718 /* App_iOS.app */, + FR_F18AD4408D0A35A0B9EAE353E8087CDE /* App_macOS.app */, + FR_09608EA4613E62B3088BBA06F08E00E9 /* App_watchOS Extension.appex */, + FR_0DDA6B4CCFF0DEB79BE16E3F72B95C7F /* App_watchOS.app */, + FR_F25AB3F5F1D72653F078DF0E063DC9A5 /* Framework.framework */, + FR_20EF6A69E91EC1859026CEBF5AD33FC2 /* Framework2.framework */, + FR_1E05BB66BFD5629EAFDC86A4E869F864 /* iMessageApp.app */, + FR_586C1089A4869FFCB50BE6A26B0FA1E7 /* iMessageExtension.appex */, + FR_0EDA4C9F9810C805C447660BF181FFF9 /* StaticLibrary_ObjC.a */, + FR_5465435FA4A3763830C566514B358969 /* StaticLibrary_Swift.a */, + FR_8FCFCDD6A5A7292C72787E2FC0A36294 /* XPC Service.xpc */, + ); + name = Products; + sourceTree = ""; + }; + G_CBE9DB02095FA0DF8A7ECE76A4BD81A4 = { + isa = PBXGroup; + children = ( + G_8F5765334752A7E52B1E63ACAC466729 /* App */, + G_4401384B8D17D0B62305BE82DE0660D2 /* App_iOS_Tests */, + G_373C03E19EC66ABB051FC35B4E57A52E /* App_iOS_UITests */, + G_68375B6CA3E19FBBA0246B55B60849C0 /* App_macOS */, + G_7C1E92BE8CA995A6B0952C8AE6F5ADF9 /* App_watchOS */, + G_089F5A7E7FB159719FE19B5E84B85D5D /* App_watchOS Extension */, + G_81658721738C48797F805CC891E70B6F /* Configs */, + G_9E36E5E1B7BEC6A8D683D2E36CE21BCE /* CopyFiles */, + G_9DEB15811B31C2D4D4B63339FBE33149 /* FileGroup */, + G_0D2DDBB1C39493B8B0EAF9CC23272F2D /* Framework */, + G_DFE333D63D37FEA4C705A105F9FE0C2A /* iMessage */, + G_415E92CCC7C77CD8BB161FA75E8B66EF /* iMessage MessagesExtension */, + G_322C327C1DB8AE7E0B99EF59318DFE22 /* Resources */, + G_D0428A559D8B50225BCD0A3640D8B431 /* StandaloneFiles */, + G_4A1045347B09A484656D26436E35FDCC /* StaticLibrary_ObjC */, + G_CC2410394CB552EF47011133E3A148F5 /* StaticLibrary_Swift */, + G_EEC8BB7E2370237E3F5D64AA1BD42CC9 /* Vendor */, + G_23236546763854F4301D7847EBA0A2BF /* XPC Service */, + FR_3B4065B548BFD8CFB3D1153F7106DDA3 /* Folder */, + FR_3DD4DE355C21662A9169EE41C44F73E3 /* Headers */, + FR_5E4B4E53251DE2294715A48CC249EBFD /* Mintfile */, + FR_1B0304C0E4DC73614BAA550E4A80D41C /* ResourceFolder */, + FR_C86A7EAE4DFF4327D1E7D32A597CA4AC /* SomeFile */, + G_54CAD56F6F3EAD10E9DB8D50B52D09F3 /* Frameworks */, + G_B0D2DFD450BCF614AA46E474644F2CE3 /* Products */, ); indentWidth = 2; sourceTree = ""; tabWidth = 2; usesTabs = 0; }; - G_8620238527590 /* Products */ = { + G_CC2410394CB552EF47011133E3A148F5 /* StaticLibrary_Swift */ = { isa = PBXGroup; children = ( - FR_783122899910 /* App_iOS_Tests.xctest */, - FR_123503999387 /* App_iOS_UITests.xctest */, - FR_825232110500 /* App_iOS.app */, - FR_480982116789 /* App_macOS.app */, - FR_507023492251 /* App_watchOS Extension.appex */, - FR_324671077936 /* App_watchOS.app */, - FR_472296042419 /* Framework.framework */, - FR_525119120469 /* Framework.framework */, - FR_438704538506 /* Framework.framework */, - FR_662315837182 /* Framework.framework */, - FR_105280345645 /* Framework2.framework */, - FR_563193937230 /* Framework2.framework */, - FR_662897337290 /* Framework2.framework */, - FR_651103371726 /* Framework2.framework */, - FR_935153865209 /* iMessageApp.app */, - FR_618687462494 /* iMessageExtension.appex */, - FR_919543414727 /* StaticLibrary_ObjC.a */, - FR_281269793733 /* StaticLibrary_ObjC.a */, - FR_704531614016 /* StaticLibrary_ObjC.a */, - FR_530818555464 /* StaticLibrary_ObjC.a */, - FR_437179166843 /* StaticLibrary_Swift.a */, - FR_376569054786 /* XPC Service.xpc */, + FR_CCC97AF230188CAF9B4A66324891CCAD /* StaticLibrary.swift */, ); - name = Products; + path = StaticLibrary_Swift; sourceTree = ""; }; - G_8628897169668 /* tvOS */ = { + G_CC8E08E619EF6EA96B28904C6651F6B8 /* watchOS */ = { isa = PBXGroup; children = ( - FR_669811003841 /* Result.framework */, + FR_DC1C8DE46218F90A3F4FD5F8DE4F0ABB /* Result.framework */, ); - path = tvOS; + path = watchOS; + sourceTree = ""; + }; + G_D0428A559D8B50225BCD0A3640D8B431 /* StandaloneFiles */ = { + isa = PBXGroup; + children = ( + FR_82E3C6C060C4487B5177509917C3FAE3 /* Standalone.swift */, + FR_C6A9DE885CAF350F6C9D0AC6F7324CD3 /* StandaloneAssets.xcassets */, + ); + path = StandaloneFiles; + sourceTree = ""; + }; + G_DFE333D63D37FEA4C705A105F9FE0C2A /* iMessage */ = { + isa = PBXGroup; + children = ( + FR_B537FEE8515090D3BA0F5CFF3BC76BB1 /* Assets.xcassets */, + FR_41E1155D8A7FDD97B783A1D5B3AD2C5B /* Info.plist */, + ); + path = iMessage; + sourceTree = ""; + }; + G_EEC8BB7E2370237E3F5D64AA1BD42CC9 /* Vendor */ = { + isa = PBXGroup; + children = ( + FR_4EB4AAACD714C13E5BC894C71B954299 /* SomeXPCService.xpc */, + ); + path = Vendor; sourceTree = ""; }; /* End PBXGroup section */ /* Begin PBXHeadersBuildPhase section */ - HBP_10528034564 /* Headers */ = { + HBP_1A14716AFB45FE3C40861AEC5BFC7160 /* Headers */ = { isa = PBXHeadersBuildPhase; buildActionMask = 2147483647; files = ( - BF_529143086177 /* MyFramework.h in Headers */, + BF_0A6C302954FF03411D6F2704ECF5C738 /* MyFramework.h in Headers */, ); runOnlyForDeploymentPostprocessing = 0; }; - HBP_43870453850 /* Headers */ = { + HBP_28AB146B2409C5AB0F7A57873541C794 /* Headers */ = { isa = PBXHeadersBuildPhase; buildActionMask = 2147483647; files = ( - BF_239684316986 /* Headers in Headers */, - BF_813358525536 /* MyFramework.h in Headers */, + BF_390908C547D6F8520DF9AA0CC5A98EB1 /* Headers in Headers */, + BF_BEFDF47CD7D88221A9C166BD65BF2013 /* MyFramework.h in Headers */, ); runOnlyForDeploymentPostprocessing = 0; }; - HBP_47229604241 /* Headers */ = { + HBP_5B487D2A0AEF5F301CF0DD29039EC911 /* Headers */ = { isa = PBXHeadersBuildPhase; buildActionMask = 2147483647; files = ( - BF_510053944904 /* Headers in Headers */, - BF_425679397292 /* MyFramework.h in Headers */, + BF_4EBBAD70FA73DDC89BD933866B90DD08 /* MyFramework.h in Headers */, ); runOnlyForDeploymentPostprocessing = 0; }; - HBP_52511912046 /* Headers */ = { + HBP_7854F8DBCA44D8AB407768095D725CA7 /* Headers */ = { isa = PBXHeadersBuildPhase; buildActionMask = 2147483647; files = ( - BF_905617636654 /* Headers in Headers */, - BF_496472559782 /* MyFramework.h in Headers */, + BF_EC0616A0D18A2F723D2AF50287C43669 /* Headers in Headers */, + BF_569CC068CD4B7BCE35E974D7B61566DB /* MyFramework.h in Headers */, ); runOnlyForDeploymentPostprocessing = 0; }; - HBP_56319393723 /* Headers */ = { + HBP_98CC32EF86CB88CC66AA4CD229EB6072 /* Headers */ = { isa = PBXHeadersBuildPhase; buildActionMask = 2147483647; files = ( - BF_156245390034 /* MyFramework.h in Headers */, + BF_9830FFD35765AACD86D1B619E22830D6 /* Headers in Headers */, + BF_3B680DD27CFCD491675F1BF257A95A24 /* MyFramework.h in Headers */, ); runOnlyForDeploymentPostprocessing = 0; }; - HBP_65110337172 /* Headers */ = { + HBP_9DD85101234CF2E78A49044D618D1D80 /* Headers */ = { isa = PBXHeadersBuildPhase; buildActionMask = 2147483647; files = ( - BF_250927007176 /* MyFramework.h in Headers */, + BF_7C9646667C0D479544A2207DEE3E930B /* Headers in Headers */, + BF_33EA0F8B2ADA2D24A683FCD8D6235B10 /* MyFramework.h in Headers */, ); runOnlyForDeploymentPostprocessing = 0; }; - HBP_66231583718 /* Headers */ = { + HBP_A3CA1B21BE2C36844B1C6BA4D2A20394 /* Headers */ = { isa = PBXHeadersBuildPhase; buildActionMask = 2147483647; files = ( - BF_259448131292 /* Headers in Headers */, - BF_734036107922 /* MyFramework.h in Headers */, + BF_E35C9C198B45406E64439FF96C17F056 /* MyFramework.h in Headers */, ); runOnlyForDeploymentPostprocessing = 0; }; - HBP_66289733729 /* Headers */ = { + HBP_D19BC27B3521E3ED15AB860A9AC22D2A /* Headers */ = { isa = PBXHeadersBuildPhase; buildActionMask = 2147483647; files = ( - BF_341452282021 /* MyFramework.h in Headers */, + BF_B6E31790D07B981E52CD5BC9049FE303 /* MyFramework.h in Headers */, ); runOnlyForDeploymentPostprocessing = 0; }; /* End PBXHeadersBuildPhase section */ /* Begin PBXLegacyTarget section */ - LT_479264660374 /* Legacy */ = { + LT_5A51AFB390A610885D62F601DE321E4E /* Legacy */ = { isa = PBXLegacyTarget; - buildConfigurationList = CL_479264660374 /* Build configuration list for PBXLegacyTarget "Legacy" */; + buildConfigurationList = CL_F8A83116F913B5DD0538C3680E08BDDB /* Build configuration list for PBXLegacyTarget "Legacy" */; buildPhases = ( - SBP_47926466037 /* Sources */, + SBP_C18D008976BE0EFD3D3A3C68FB79D271 /* Sources */, ); buildToolPath = /usr/bin/true; dependencies = ( @@ -993,45 +951,12 @@ /* End PBXLegacyTarget section */ /* Begin PBXNativeTarget section */ - NT_105280345645 /* Framework2_watchOS */ = { + NT_15609BCEEB00CBCC4C42110EB0366A6F /* StaticLibrary_ObjC_macOS */ = { isa = PBXNativeTarget; - buildConfigurationList = CL_105280345645 /* Build configuration list for PBXNativeTarget "Framework2_watchOS" */; + buildConfigurationList = CL_3BB54CFB2F2EFE7302C0B0709BD0AE04 /* Build configuration list for PBXNativeTarget "StaticLibrary_ObjC_macOS" */; buildPhases = ( - HBP_10528034564 /* Headers */, - SBP_10528034564 /* Sources */, - ); - buildRules = ( - ); - dependencies = ( - ); - name = Framework2_watchOS; - productName = Framework2_watchOS; - productReference = FR_105280345645 /* Framework2.framework */; - productType = "com.apple.product-type.framework"; - }; - NT_123503999387 /* App_iOS_UITests */ = { - isa = PBXNativeTarget; - buildConfigurationList = CL_123503999387 /* Build configuration list for PBXNativeTarget "App_iOS_UITests" */; - buildPhases = ( - SBP_12350399938 /* Sources */, - CFBP_4082141876 /* Embed Frameworks */, - ); - buildRules = ( - ); - dependencies = ( - TD_676191581124 /* PBXTargetDependency */, - ); - name = App_iOS_UITests; - productName = App_iOS_UITests; - productReference = FR_123503999387 /* App_iOS_UITests.xctest */; - productType = "com.apple.product-type.bundle.ui-testing"; - }; - NT_281269793733 /* StaticLibrary_ObjC_macOS */ = { - isa = PBXNativeTarget; - buildConfigurationList = CL_281269793733 /* Build configuration list for PBXNativeTarget "StaticLibrary_ObjC_macOS" */; - buildPhases = ( - SBP_28126979373 /* Sources */, - CFBP_3044397014 /* CopyFiles */, + SBP_52AE5DCFB4487297D6889C7F014AD281 /* Sources */, + CFBP_712E86A86BBF89DB5B5F3874B24B8996 /* CopyFiles */, ); buildRules = ( ); @@ -1039,34 +964,31 @@ ); name = StaticLibrary_ObjC_macOS; productName = StaticLibrary_ObjC_macOS; - productReference = FR_281269793733 /* StaticLibrary_ObjC.a */; + productReference = FR_0EDA4C9F9810C805C447660BF181FFF9 /* StaticLibrary_ObjC.a */; productType = "com.apple.product-type.library.static"; }; - NT_324671077936 /* App_watchOS */ = { + NT_193BAF154270D1C21E269EDF2A1BD3F6 /* App_iOS_Tests */ = { isa = PBXNativeTarget; - buildConfigurationList = CL_324671077936 /* Build configuration list for PBXNativeTarget "App_watchOS" */; + buildConfigurationList = CL_89763567DCA601C83E4C78A9917D81AD /* Build configuration list for PBXNativeTarget "App_iOS_Tests" */; buildPhases = ( - SBP_32467107793 /* Sources */, - RBP_32467107793 /* Resources */, - FBP_32467107793 /* Frameworks */, - CFBP_4684049960 /* Embed App Extensions */, - SSBP_5954948530 /* Carthage */, + SBP_70B2F11AAC526FDB99D68212C2C92CE6 /* Sources */, + CFBP_2FE0B34CC045616C815F2675387DA9D5 /* Embed Frameworks */, ); buildRules = ( ); dependencies = ( - TD_193291182921 /* PBXTargetDependency */, + TD_402541000CCC58970431E41C3D928AB8 /* PBXTargetDependency */, ); - name = App_watchOS; - productName = App_watchOS; - productReference = FR_324671077936 /* App_watchOS.app */; - productType = "com.apple.product-type.application.watchapp2"; + name = App_iOS_Tests; + productName = App_iOS_Tests; + productReference = FR_5B3188BDA6DB0560398A483646F17AE4 /* App_iOS_Tests.xctest */; + productType = "com.apple.product-type.bundle.unit-test"; }; - NT_376569054786 /* XPC Service */ = { + NT_23509FD082D1F788E6D6431F509B11AF /* XPC Service */ = { isa = PBXNativeTarget; - buildConfigurationList = CL_376569054786 /* Build configuration list for PBXNativeTarget "XPC Service" */; + buildConfigurationList = CL_6993244897DFCCF1F61A6136FDBE3C01 /* Build configuration list for PBXNativeTarget "XPC Service" */; buildPhases = ( - SBP_37656905478 /* Sources */, + SBP_669CBAFD2D7234A2BEDCEAA4949ED575 /* Sources */, ); buildRules = ( ); @@ -1074,15 +996,15 @@ ); name = "XPC Service"; productName = "XPC Service"; - productReference = FR_376569054786 /* XPC Service.xpc */; + productReference = FR_8FCFCDD6A5A7292C72787E2FC0A36294 /* XPC Service.xpc */; productType = "com.apple.product-type.xpc-service"; }; - NT_437179166843 /* StaticLibrary_Swift */ = { + NT_2940463C85DCD0660288786BC66F2C4C /* StaticLibrary_Swift */ = { isa = PBXNativeTarget; - buildConfigurationList = CL_437179166843 /* Build configuration list for PBXNativeTarget "StaticLibrary_Swift" */; + buildConfigurationList = CL_159255858B3EEC02844A3059326A6B93 /* Build configuration list for PBXNativeTarget "StaticLibrary_Swift" */; buildPhases = ( - SBP_43717916684 /* Sources */, - SSBP_5390042403 /* Copy Swift Objective-C Interface Header */, + SBP_3DD17ED231CE07543581040F32049525 /* Sources */, + SSBP_4A83147402B05D3C84D21F0487315914 /* Copy Swift Objective-C Interface Header */, ); buildRules = ( ); @@ -1090,111 +1012,15 @@ ); name = StaticLibrary_Swift; productName = StaticLibrary_Swift; - productReference = FR_437179166843 /* StaticLibrary_Swift.a */; + productReference = FR_5465435FA4A3763830C566514B358969 /* StaticLibrary_Swift.a */; productType = "com.apple.product-type.library.static"; }; - NT_438704538506 /* Framework_watchOS */ = { + NT_34A020E43FBBD797051205235CD82B70 /* StaticLibrary_ObjC_watchOS */ = { isa = PBXNativeTarget; - buildConfigurationList = CL_438704538506 /* Build configuration list for PBXNativeTarget "Framework_watchOS" */; + buildConfigurationList = CL_2E30D27084B352548CCAA3500158519B /* Build configuration list for PBXNativeTarget "StaticLibrary_ObjC_watchOS" */; buildPhases = ( - HBP_43870453850 /* Headers */, - SBP_43870453850 /* Sources */, - FBP_43870453850 /* Frameworks */, - SSBP_2467869845 /* MyScript */, - ); - buildRules = ( - ); - dependencies = ( - TD_908217865445 /* PBXTargetDependency */, - ); - name = Framework_watchOS; - productName = Framework_watchOS; - productReference = FR_438704538506 /* Framework.framework */; - productType = "com.apple.product-type.framework"; - }; - NT_472296042419 /* Framework_iOS */ = { - isa = PBXNativeTarget; - buildConfigurationList = CL_472296042419 /* Build configuration list for PBXNativeTarget "Framework_iOS" */; - buildPhases = ( - HBP_47229604241 /* Headers */, - SBP_47229604241 /* Sources */, - FBP_47229604241 /* Frameworks */, - SSBP_3886691194 /* MyScript */, - ); - buildRules = ( - ); - dependencies = ( - TD_665828516151 /* PBXTargetDependency */, - ); - name = Framework_iOS; - productName = Framework_iOS; - productReference = FR_472296042419 /* Framework.framework */; - productType = "com.apple.product-type.framework"; - }; - NT_480982116789 /* App_macOS */ = { - isa = PBXNativeTarget; - buildConfigurationList = CL_480982116789 /* Build configuration list for PBXNativeTarget "App_macOS" */; - buildPhases = ( - SBP_48098211678 /* Sources */, - RBP_48098211678 /* Resources */, - CFBP_8368933518 /* CopyFiles */, - FBP_48098211678 /* Frameworks */, - CFBP_4930089528 /* Embed Frameworks */, - ); - buildRules = ( - ); - dependencies = ( - TD_235580504123 /* PBXTargetDependency */, - TD_159619342582 /* PBXTargetDependency */, - TD_743784992411 /* PBXTargetDependency */, - ); - name = App_macOS; - productName = App_macOS; - productReference = FR_480982116789 /* App_macOS.app */; - productType = "com.apple.product-type.application"; - }; - NT_507023492251 /* App_watchOS Extension */ = { - isa = PBXNativeTarget; - buildConfigurationList = CL_507023492251 /* Build configuration list for PBXNativeTarget "App_watchOS Extension" */; - buildPhases = ( - SBP_50702349225 /* Sources */, - RBP_50702349225 /* Resources */, - FBP_50702349225 /* Frameworks */, - ); - buildRules = ( - ); - dependencies = ( - ); - name = "App_watchOS Extension"; - productName = "App_watchOS Extension"; - productReference = FR_507023492251 /* App_watchOS Extension.appex */; - productType = "com.apple.product-type.watchkit2-extension"; - }; - NT_525119120469 /* Framework_macOS */ = { - isa = PBXNativeTarget; - buildConfigurationList = CL_525119120469 /* Build configuration list for PBXNativeTarget "Framework_macOS" */; - buildPhases = ( - HBP_52511912046 /* Headers */, - SBP_52511912046 /* Sources */, - FBP_52511912046 /* Frameworks */, - SSBP_8255377629 /* MyScript */, - ); - buildRules = ( - ); - dependencies = ( - TD_141219468074 /* PBXTargetDependency */, - ); - name = Framework_macOS; - productName = Framework_macOS; - productReference = FR_525119120469 /* Framework.framework */; - productType = "com.apple.product-type.framework"; - }; - NT_530818555464 /* StaticLibrary_ObjC_watchOS */ = { - isa = PBXNativeTarget; - buildConfigurationList = CL_530818555464 /* Build configuration list for PBXNativeTarget "StaticLibrary_ObjC_watchOS" */; - buildPhases = ( - SBP_53081855546 /* Sources */, - CFBP_3864293855 /* CopyFiles */, + SBP_924258C7A9F27B13508604CAF625E0D3 /* Sources */, + CFBP_4DFB7882C9F8BAB250BB0A6B9457B4CC /* CopyFiles */, ); buildRules = ( ); @@ -1202,15 +1028,52 @@ ); name = StaticLibrary_ObjC_watchOS; productName = StaticLibrary_ObjC_watchOS; - productReference = FR_530818555464 /* StaticLibrary_ObjC.a */; + productReference = FR_0EDA4C9F9810C805C447660BF181FFF9 /* StaticLibrary_ObjC.a */; productType = "com.apple.product-type.library.static"; }; - NT_563193937230 /* Framework2_tvOS */ = { + NT_38A9FE87056942A2746E0FF025B52A91 /* App_watchOS */ = { isa = PBXNativeTarget; - buildConfigurationList = CL_563193937230 /* Build configuration list for PBXNativeTarget "Framework2_tvOS" */; + buildConfigurationList = CL_C50D7BB75115E8561A0975DE1B65E088 /* Build configuration list for PBXNativeTarget "App_watchOS" */; buildPhases = ( - HBP_56319393723 /* Headers */, - SBP_56319393723 /* Sources */, + SBP_ED63FCA00BD617EFF125ECDF9D24FAD8 /* Sources */, + RBP_5623703FDC4F6DF4679D8BAF27518F2F /* Resources */, + FBP_3C7ADC43EF430300C2A315B0D2860080 /* Frameworks */, + CFBP_469B033759EACBB99ECBF1008677C590 /* Embed App Extensions */, + SSBP_7F147E7ED45BAAE2186975B7FF9EB08A /* Carthage */, + ); + buildRules = ( + ); + dependencies = ( + TD_2A43F973A3E1CF675A967054BA52074B /* PBXTargetDependency */, + ); + name = App_watchOS; + productName = App_watchOS; + productReference = FR_0DDA6B4CCFF0DEB79BE16E3F72B95C7F /* App_watchOS.app */; + productType = "com.apple.product-type.application.watchapp2"; + }; + NT_5245AB6D3B3CFBC95AEBADF6E0C593B8 /* App_watchOS Extension */ = { + isa = PBXNativeTarget; + buildConfigurationList = CL_333C6C3162FB671343E806257FB2A411 /* Build configuration list for PBXNativeTarget "App_watchOS Extension" */; + buildPhases = ( + SBP_49F3C650EA105D1EF50817673A8DB33A /* Sources */, + RBP_1BFB64F249645ABF48C3CCDF8D5FA094 /* Resources */, + FBP_F6E2D2D110453E88BF9E3FB6A466B8EC /* Frameworks */, + ); + buildRules = ( + ); + dependencies = ( + ); + name = "App_watchOS Extension"; + productName = "App_watchOS Extension"; + productReference = FR_09608EA4613E62B3088BBA06F08E00E9 /* App_watchOS Extension.appex */; + productType = "com.apple.product-type.watchkit2-extension"; + }; + NT_66B6A18138FD1FB5ECF3FC67B20FF3D3 /* Framework2_tvOS */ = { + isa = PBXNativeTarget; + buildConfigurationList = CL_A55E6C4018D2631D41C660DBF2113765 /* Build configuration list for PBXNativeTarget "Framework2_tvOS" */; + buildPhases = ( + HBP_A3CA1B21BE2C36844B1C6BA4D2A20394 /* Headers */, + SBP_DB9B8E1504ED9DD92AE41067C53B5082 /* Sources */, ); buildRules = ( ); @@ -1218,15 +1081,15 @@ ); name = Framework2_tvOS; productName = Framework2_tvOS; - productReference = FR_563193937230 /* Framework2.framework */; + productReference = FR_20EF6A69E91EC1859026CEBF5AD33FC2 /* Framework2.framework */; productType = "com.apple.product-type.framework"; }; - NT_618687462494 /* iMessageExtension */ = { + NT_6A4FC6EE80FB2821AB96D51C3BC8966E /* iMessageExtension */ = { isa = PBXNativeTarget; - buildConfigurationList = CL_618687462494 /* Build configuration list for PBXNativeTarget "iMessageExtension" */; + buildConfigurationList = CL_3ABBEC1A6EFC98F40894F5E4769650EF /* Build configuration list for PBXNativeTarget "iMessageExtension" */; buildPhases = ( - SBP_61868746249 /* Sources */, - RBP_61868746249 /* Resources */, + SBP_110D7B4160D965B7964619BF78E01DE2 /* Sources */, + RBP_A5B7C086E8F07F5FEE9B99375E375819 /* Resources */, ); buildRules = ( ); @@ -1234,127 +1097,34 @@ ); name = iMessageExtension; productName = iMessageExtension; - productReference = FR_618687462494 /* iMessageExtension.appex */; + productReference = FR_586C1089A4869FFCB50BE6A26B0FA1E7 /* iMessageExtension.appex */; productType = "com.apple.product-type.app-extension.messages"; }; - NT_651103371726 /* Framework2_macOS */ = { + NT_6A7B08EB167FD3A759C339FDBED7E019 /* Framework_watchOS */ = { isa = PBXNativeTarget; - buildConfigurationList = CL_651103371726 /* Build configuration list for PBXNativeTarget "Framework2_macOS" */; + buildConfigurationList = CL_674C71F7D7B679C67A944F0110840758 /* Build configuration list for PBXNativeTarget "Framework_watchOS" */; buildPhases = ( - HBP_65110337172 /* Headers */, - SBP_65110337172 /* Sources */, + HBP_98CC32EF86CB88CC66AA4CD229EB6072 /* Headers */, + SBP_8990272D7DD45CFBDAB18690861BD4E8 /* Sources */, + FBP_71D96680A2FBE24C4C8BD0B5E55FE034 /* Frameworks */, + SSBP_B07F447D73408EA48C54A8E7F5B8D575 /* MyScript */, ); buildRules = ( ); dependencies = ( + TD_205ABD699FA8E05C47D73E8EB2D0F9EF /* PBXTargetDependency */, ); - name = Framework2_macOS; - productName = Framework2_macOS; - productReference = FR_651103371726 /* Framework2.framework */; + name = Framework_watchOS; + productName = Framework_watchOS; + productReference = FR_F25AB3F5F1D72653F078DF0E063DC9A5 /* Framework.framework */; productType = "com.apple.product-type.framework"; }; - NT_662315837182 /* Framework_tvOS */ = { + NT_6AEE12F93D449E249F5348BBF35D3053 /* StaticLibrary_ObjC_iOS */ = { isa = PBXNativeTarget; - buildConfigurationList = CL_662315837182 /* Build configuration list for PBXNativeTarget "Framework_tvOS" */; + buildConfigurationList = CL_F6ECF2D45799DBBB48DE9AE80AC280AA /* Build configuration list for PBXNativeTarget "StaticLibrary_ObjC_iOS" */; buildPhases = ( - HBP_66231583718 /* Headers */, - SBP_66231583718 /* Sources */, - FBP_66231583718 /* Frameworks */, - SSBP_6331376344 /* MyScript */, - ); - buildRules = ( - ); - dependencies = ( - TD_587184686458 /* PBXTargetDependency */, - ); - name = Framework_tvOS; - productName = Framework_tvOS; - productReference = FR_662315837182 /* Framework.framework */; - productType = "com.apple.product-type.framework"; - }; - NT_662897337290 /* Framework2_iOS */ = { - isa = PBXNativeTarget; - buildConfigurationList = CL_662897337290 /* Build configuration list for PBXNativeTarget "Framework2_iOS" */; - buildPhases = ( - HBP_66289733729 /* Headers */, - SBP_66289733729 /* Sources */, - ); - buildRules = ( - ); - dependencies = ( - ); - name = Framework2_iOS; - productName = Framework2_iOS; - productReference = FR_662897337290 /* Framework2.framework */; - productType = "com.apple.product-type.framework"; - }; - NT_704531614016 /* StaticLibrary_ObjC_tvOS */ = { - isa = PBXNativeTarget; - buildConfigurationList = CL_704531614016 /* Build configuration list for PBXNativeTarget "StaticLibrary_ObjC_tvOS" */; - buildPhases = ( - SBP_70453161401 /* Sources */, - CFBP_7637809077 /* CopyFiles */, - ); - buildRules = ( - ); - dependencies = ( - ); - name = StaticLibrary_ObjC_tvOS; - productName = StaticLibrary_ObjC_tvOS; - productReference = FR_704531614016 /* StaticLibrary_ObjC.a */; - productType = "com.apple.product-type.library.static"; - }; - NT_783122899910 /* App_iOS_Tests */ = { - isa = PBXNativeTarget; - buildConfigurationList = CL_783122899910 /* Build configuration list for PBXNativeTarget "App_iOS_Tests" */; - buildPhases = ( - SBP_78312289991 /* Sources */, - CFBP_4626438721 /* Embed Frameworks */, - ); - buildRules = ( - ); - dependencies = ( - TD_887143865471 /* PBXTargetDependency */, - ); - name = App_iOS_Tests; - productName = App_iOS_Tests; - productReference = FR_783122899910 /* App_iOS_Tests.xctest */; - productType = "com.apple.product-type.bundle.unit-test"; - }; - NT_825232110500 /* App_iOS */ = { - isa = PBXNativeTarget; - buildConfigurationList = CL_825232110500 /* Build configuration list for PBXNativeTarget "App_iOS" */; - buildPhases = ( - SBP_82523211050 /* Sources */, - RBP_82523211050 /* Resources */, - CFBP_7191905390 /* CopyFiles */, - FBP_82523211050 /* Frameworks */, - CFBP_6493932244 /* Embed Frameworks */, - CFBP_2836118931 /* Embed Watch Content */, - SSBP_8106229290 /* Carthage */, - SSBP_5106020372 /* Strip Unused Architectures from Frameworks */, - SSBP_8706434794 /* MyScript */, - ); - buildRules = ( - ); - dependencies = ( - TD_824101787753 /* PBXTargetDependency */, - TD_236095217340 /* PBXTargetDependency */, - TD_109724965966 /* PBXTargetDependency */, - TD_232150454486 /* PBXTargetDependency */, - TD_288560876254 /* PBXTargetDependency */, - ); - name = App_iOS; - productName = App_iOS; - productReference = FR_825232110500 /* App_iOS.app */; - productType = "com.apple.product-type.application"; - }; - NT_919543414727 /* StaticLibrary_ObjC_iOS */ = { - isa = PBXNativeTarget; - buildConfigurationList = CL_919543414727 /* Build configuration list for PBXNativeTarget "StaticLibrary_ObjC_iOS" */; - buildPhases = ( - SBP_91954341472 /* Sources */, - CFBP_1101127867 /* CopyFiles */, + SBP_D6209A702C851D0CFD1CC2B225986D45 /* Sources */, + CFBP_0B6C520DAC94DDCE678BE15C53528F25 /* CopyFiles */, ); buildRules = ( ); @@ -1362,50 +1132,238 @@ ); name = StaticLibrary_ObjC_iOS; productName = StaticLibrary_ObjC_iOS; - productReference = FR_919543414727 /* StaticLibrary_ObjC.a */; + productReference = FR_0EDA4C9F9810C805C447660BF181FFF9 /* StaticLibrary_ObjC.a */; productType = "com.apple.product-type.library.static"; }; - NT_935153865209 /* iMessageApp */ = { + NT_6BD068FAAC6AA35C090C48147B94EC6E /* iMessageApp */ = { isa = PBXNativeTarget; - buildConfigurationList = CL_935153865209 /* Build configuration list for PBXNativeTarget "iMessageApp" */; + buildConfigurationList = CL_AA475AE6741D5744A91627E7FAF4C986 /* Build configuration list for PBXNativeTarget "iMessageApp" */; buildPhases = ( - SBP_93515386520 /* Sources */, - RBP_93515386520 /* Resources */, - CFBP_5460766702 /* Embed App Extensions */, + SBP_20DDAC7BCD11ECA8B08695FE5D7314A9 /* Sources */, + RBP_9291220ECDCB98B69BB31C3E875042EC /* Resources */, + CFBP_AD91D17C63B2CD9AE7EFB9EFD62A8223 /* Embed App Extensions */, ); buildRules = ( ); dependencies = ( - TD_317921131342 /* PBXTargetDependency */, + TD_846DB03B9778D6C8E81FE52A5A212420 /* PBXTargetDependency */, ); name = iMessageApp; productName = iMessageApp; - productReference = FR_935153865209 /* iMessageApp.app */; + productReference = FR_1E05BB66BFD5629EAFDC86A4E869F864 /* iMessageApp.app */; productType = "com.apple.product-type.application.messages"; }; + NT_7D108AE86BED8C9CCF52C2646FA4C5DE /* Framework_iOS */ = { + isa = PBXNativeTarget; + buildConfigurationList = CL_9FEF3E411E281B1820B2B067FC1C1B85 /* Build configuration list for PBXNativeTarget "Framework_iOS" */; + buildPhases = ( + HBP_28AB146B2409C5AB0F7A57873541C794 /* Headers */, + SBP_0CB30551A2D40126958D8D6DAF6922E2 /* Sources */, + FBP_98B76E46D78FD48FB47A41B8891665BC /* Frameworks */, + SSBP_13B42B84708A6ABC082BE00176F5DCB2 /* MyScript */, + ); + buildRules = ( + ); + dependencies = ( + TD_117F878FC368C83443CEC1707531F7F2 /* PBXTargetDependency */, + ); + name = Framework_iOS; + productName = Framework_iOS; + productReference = FR_F25AB3F5F1D72653F078DF0E063DC9A5 /* Framework.framework */; + productType = "com.apple.product-type.framework"; + }; + NT_87DF09E78830E7EB3C00B6134A2D5A5D /* Framework2_macOS */ = { + isa = PBXNativeTarget; + buildConfigurationList = CL_289609080F2D20D506C8A587BC92807B /* Build configuration list for PBXNativeTarget "Framework2_macOS" */; + buildPhases = ( + HBP_5B487D2A0AEF5F301CF0DD29039EC911 /* Headers */, + SBP_C469AFC0C383156AF5C80EBBC089D9FC /* Sources */, + ); + buildRules = ( + ); + dependencies = ( + ); + name = Framework2_macOS; + productName = Framework2_macOS; + productReference = FR_20EF6A69E91EC1859026CEBF5AD33FC2 /* Framework2.framework */; + productType = "com.apple.product-type.framework"; + }; + NT_9D53AF351F8DAE25354F2391248DFCCA /* Framework_macOS */ = { + isa = PBXNativeTarget; + buildConfigurationList = CL_7A3206BF9A92D4552AE40D148897BB3E /* Build configuration list for PBXNativeTarget "Framework_macOS" */; + buildPhases = ( + HBP_7854F8DBCA44D8AB407768095D725CA7 /* Headers */, + SBP_EA528A5DC6D79AA397B25949B07AE70F /* Sources */, + FBP_935BCDE6C86D2D59A945DC1E6886D7C3 /* Frameworks */, + SSBP_C8F56E533BE956498E644805330168EB /* MyScript */, + ); + buildRules = ( + ); + dependencies = ( + TD_BBB2D0EDFD9EF8193F1864D1F3D5F97A /* PBXTargetDependency */, + ); + name = Framework_macOS; + productName = Framework_macOS; + productReference = FR_F25AB3F5F1D72653F078DF0E063DC9A5 /* Framework.framework */; + productType = "com.apple.product-type.framework"; + }; + NT_9F72C903B42E1AA3B88F97B917231B15 /* Framework2_iOS */ = { + isa = PBXNativeTarget; + buildConfigurationList = CL_0562279D56EF60E8CCC0973D2C663637 /* Build configuration list for PBXNativeTarget "Framework2_iOS" */; + buildPhases = ( + HBP_D19BC27B3521E3ED15AB860A9AC22D2A /* Headers */, + SBP_84E9A8BE77910B67B3F2DCD5916DC498 /* Sources */, + ); + buildRules = ( + ); + dependencies = ( + ); + name = Framework2_iOS; + productName = Framework2_iOS; + productReference = FR_20EF6A69E91EC1859026CEBF5AD33FC2 /* Framework2.framework */; + productType = "com.apple.product-type.framework"; + }; + NT_A3933B4002C44B46F34B238F654D1362 /* Framework2_watchOS */ = { + isa = PBXNativeTarget; + buildConfigurationList = CL_E92E1636D45B284E44D38EB3EF7C98C9 /* Build configuration list for PBXNativeTarget "Framework2_watchOS" */; + buildPhases = ( + HBP_1A14716AFB45FE3C40861AEC5BFC7160 /* Headers */, + SBP_48868408A19D9BBE4A58CA4FAE00C0D4 /* Sources */, + ); + buildRules = ( + ); + dependencies = ( + ); + name = Framework2_watchOS; + productName = Framework2_watchOS; + productReference = FR_20EF6A69E91EC1859026CEBF5AD33FC2 /* Framework2.framework */; + productType = "com.apple.product-type.framework"; + }; + NT_B91A6EACD6F5192FECA2E95FD531D0CA /* App_macOS */ = { + isa = PBXNativeTarget; + buildConfigurationList = CL_D72660834ED9ED4EB0E973ABC256E014 /* Build configuration list for PBXNativeTarget "App_macOS" */; + buildPhases = ( + SBP_7EE428F1F0444ACB29B3C5259C04FF6D /* Sources */, + RBP_BA57258FD71062047F5503B4B160FE15 /* Resources */, + CFBP_CC737A6BF6243B189B109606B0C4B5A2 /* CopyFiles */, + FBP_4E773D46F6F726BBC0032C576D02FCB7 /* Frameworks */, + CFBP_CB2355266C8BAA9C97863011F3DE05A2 /* Embed Frameworks */, + ); + buildRules = ( + ); + dependencies = ( + TD_B8F32B4B3CC431FE0EC1C4E7D096E3AC /* PBXTargetDependency */, + TD_35F382102AABCCCEFADCBC201E5B1CE1 /* PBXTargetDependency */, + TD_C762D8FBA80775A921AA5B50422E9349 /* PBXTargetDependency */, + ); + name = App_macOS; + productName = App_macOS; + productReference = FR_F18AD4408D0A35A0B9EAE353E8087CDE /* App_macOS.app */; + productType = "com.apple.product-type.application"; + }; + NT_BEB0891E36797FE2214A0A9D516D408D /* App_iOS */ = { + isa = PBXNativeTarget; + buildConfigurationList = CL_C7673A8886407721BA5BFA1B18F184D4 /* Build configuration list for PBXNativeTarget "App_iOS" */; + buildPhases = ( + SBP_77EF8BC7FC3D693C9C0C1CB51984F3E2 /* Sources */, + RBP_85DF5DDC76E0E2A78CAFC9A3EC508232 /* Resources */, + CFBP_D7E07645BC437C4DFBB212DFC4F3B09E /* CopyFiles */, + FBP_18D4325BBE506E88E1C742F57AECB0CD /* Frameworks */, + CFBP_1C40B0777F31334440F91C2DB34EF404 /* Embed Frameworks */, + CFBP_961F46C30E720E886AEFD11D45DDA199 /* Embed Watch Content */, + SSBP_7F8DED07519BA4B70C40A9A755844874 /* Carthage */, + SSBP_062CBBF024005F57EECA660F9C7B0C7D /* Strip Unused Architectures from Frameworks */, + SSBP_376C0662E4E8416C049A50660864798B /* MyScript */, + ); + buildRules = ( + ); + dependencies = ( + TD_0C5CE0308CB64DB986A853307CCF8A95 /* PBXTargetDependency */, + TD_94E481CDF62CDA1E9B37D1DA08E5A5AF /* PBXTargetDependency */, + TD_4013C738E59E1CA40B4A982AF74E8604 /* PBXTargetDependency */, + TD_266243C3BBC1C83485E1B43C0FFC3626 /* PBXTargetDependency */, + TD_743D7CD7BB700A16A02A7A4A1E02D845 /* PBXTargetDependency */, + ); + name = App_iOS; + productName = App_iOS; + productReference = FR_1672C218968DD6996F05E3C7688F0718 /* App_iOS.app */; + productType = "com.apple.product-type.application"; + }; + NT_D4BAEEEC88124103C8DFF41FCE206DCE /* App_iOS_UITests */ = { + isa = PBXNativeTarget; + buildConfigurationList = CL_DB66C428B606518C825ECFF73A5EF059 /* Build configuration list for PBXNativeTarget "App_iOS_UITests" */; + buildPhases = ( + SBP_3848ADAF2343866973E57344A1054BE3 /* Sources */, + CFBP_3BE6FE084D6BE913354F37B1DD9A8D92 /* Embed Frameworks */, + ); + buildRules = ( + ); + dependencies = ( + TD_98EB63C93477EA15558367FBAB5797CE /* PBXTargetDependency */, + ); + name = App_iOS_UITests; + productName = App_iOS_UITests; + productReference = FR_9403DF729F7FE2E6B823C1DACE1E6214 /* App_iOS_UITests.xctest */; + productType = "com.apple.product-type.bundle.ui-testing"; + }; + NT_D4C3E345E90AF9F6CBE8CF226FCFBCD6 /* StaticLibrary_ObjC_tvOS */ = { + isa = PBXNativeTarget; + buildConfigurationList = CL_91682ADED17A2C81A700A67F5D70BA1F /* Build configuration list for PBXNativeTarget "StaticLibrary_ObjC_tvOS" */; + buildPhases = ( + SBP_645418A0FA6E3F5727685DE191C6B793 /* Sources */, + CFBP_CC1EF1963551F7E08925519982C248B9 /* CopyFiles */, + ); + buildRules = ( + ); + dependencies = ( + ); + name = StaticLibrary_ObjC_tvOS; + productName = StaticLibrary_ObjC_tvOS; + productReference = FR_0EDA4C9F9810C805C447660BF181FFF9 /* StaticLibrary_ObjC.a */; + productType = "com.apple.product-type.library.static"; + }; + NT_FA652FEB38562C3A5C93D5EC7ED09776 /* Framework_tvOS */ = { + isa = PBXNativeTarget; + buildConfigurationList = CL_11BB9F4DF26D98C0A2C8E1668356269F /* Build configuration list for PBXNativeTarget "Framework_tvOS" */; + buildPhases = ( + HBP_9DD85101234CF2E78A49044D618D1D80 /* Headers */, + SBP_9DB756A33A199E4D91CE6E6E2A5A706C /* Sources */, + FBP_1BDCD6E0245ED2400E6FE9AC9C334DE4 /* Frameworks */, + SSBP_1B2C6BA1C514471EF42FB7E03ACD8C83 /* MyScript */, + ); + buildRules = ( + ); + dependencies = ( + TD_79BA73EB5832255541811162BB2B0218 /* PBXTargetDependency */, + ); + name = Framework_tvOS; + productName = Framework_tvOS; + productReference = FR_F25AB3F5F1D72653F078DF0E063DC9A5 /* Framework.framework */; + productType = "com.apple.product-type.framework"; + }; /* End PBXNativeTarget section */ /* Begin PBXProject section */ - P_8448771205358 /* Project object */ = { + P_88EC38DC1E39C9039D2FA49EDC2FA124 /* Project object */ = { isa = PBXProject; attributes = { LastUpgradeCheck = 0930; TargetAttributes = { - AT_445731917037 = { + AT_D40C01B2BAD29EDEA392714DFB69FE8F = { CUSTOM = value; }; - NT_123503999387 = { - TestTargetID = NT_825232110500; - }; - NT_480982116789 = { + NT_B91A6EACD6F5192FECA2E95FD531D0CA = { ProvisioningStyle = Automatic; }; - NT_825232110500 = { + NT_BEB0891E36797FE2214A0A9D516D408D = { ProvisioningStyle = Automatic; }; + NT_D4BAEEEC88124103C8DFF41FCE206DCE = { + TestTargetID = NT_BEB0891E36797FE2214A0A9D516D408D; + }; }; }; - buildConfigurationList = CL_844877120535 /* Build configuration list for PBXProject "Project" */; + buildConfigurationList = CL_85167C2DED9F1F2F7D5162C1DD252426 /* Build configuration list for PBXProject "Project" */; compatibilityVersion = "Xcode 3.2"; developmentRegion = en; hasScannedForEncodings = 0; @@ -1413,131 +1371,103 @@ Base, en, ); - mainGroup = G_8448771205358; + mainGroup = G_CBE9DB02095FA0DF8A7ECE76A4BD81A4; projectDirPath = ""; projectRoot = ""; targets = ( - NT_825232110500 /* App_iOS */, - NT_783122899910 /* App_iOS_Tests */, - NT_123503999387 /* App_iOS_UITests */, - NT_480982116789 /* App_macOS */, - NT_324671077936 /* App_watchOS */, - NT_507023492251 /* App_watchOS Extension */, - NT_662897337290 /* Framework2_iOS */, - NT_651103371726 /* Framework2_macOS */, - NT_563193937230 /* Framework2_tvOS */, - NT_105280345645 /* Framework2_watchOS */, - NT_472296042419 /* Framework_iOS */, - NT_525119120469 /* Framework_macOS */, - NT_662315837182 /* Framework_tvOS */, - NT_438704538506 /* Framework_watchOS */, - LT_479264660374 /* Legacy */, - NT_919543414727 /* StaticLibrary_ObjC_iOS */, - NT_281269793733 /* StaticLibrary_ObjC_macOS */, - NT_704531614016 /* StaticLibrary_ObjC_tvOS */, - NT_530818555464 /* StaticLibrary_ObjC_watchOS */, - NT_437179166843 /* StaticLibrary_Swift */, - AT_445731917037 /* SuperTarget */, - NT_376569054786 /* XPC Service */, - NT_935153865209 /* iMessageApp */, - NT_618687462494 /* iMessageExtension */, + NT_BEB0891E36797FE2214A0A9D516D408D /* App_iOS */, + NT_193BAF154270D1C21E269EDF2A1BD3F6 /* App_iOS_Tests */, + NT_D4BAEEEC88124103C8DFF41FCE206DCE /* App_iOS_UITests */, + NT_B91A6EACD6F5192FECA2E95FD531D0CA /* App_macOS */, + NT_38A9FE87056942A2746E0FF025B52A91 /* App_watchOS */, + NT_5245AB6D3B3CFBC95AEBADF6E0C593B8 /* App_watchOS Extension */, + NT_9F72C903B42E1AA3B88F97B917231B15 /* Framework2_iOS */, + NT_87DF09E78830E7EB3C00B6134A2D5A5D /* Framework2_macOS */, + NT_66B6A18138FD1FB5ECF3FC67B20FF3D3 /* Framework2_tvOS */, + NT_A3933B4002C44B46F34B238F654D1362 /* Framework2_watchOS */, + NT_7D108AE86BED8C9CCF52C2646FA4C5DE /* Framework_iOS */, + NT_9D53AF351F8DAE25354F2391248DFCCA /* Framework_macOS */, + NT_FA652FEB38562C3A5C93D5EC7ED09776 /* Framework_tvOS */, + NT_6A7B08EB167FD3A759C339FDBED7E019 /* Framework_watchOS */, + LT_5A51AFB390A610885D62F601DE321E4E /* Legacy */, + NT_6AEE12F93D449E249F5348BBF35D3053 /* StaticLibrary_ObjC_iOS */, + NT_15609BCEEB00CBCC4C42110EB0366A6F /* StaticLibrary_ObjC_macOS */, + NT_D4C3E345E90AF9F6CBE8CF226FCFBCD6 /* StaticLibrary_ObjC_tvOS */, + NT_34A020E43FBBD797051205235CD82B70 /* StaticLibrary_ObjC_watchOS */, + NT_2940463C85DCD0660288786BC66F2C4C /* StaticLibrary_Swift */, + AT_D40C01B2BAD29EDEA392714DFB69FE8F /* SuperTarget */, + NT_23509FD082D1F788E6D6431F509B11AF /* XPC Service */, + NT_6BD068FAAC6AA35C090C48147B94EC6E /* iMessageApp */, + NT_6A4FC6EE80FB2821AB96D51C3BC8966E /* iMessageExtension */, ); }; /* End PBXProject section */ /* Begin PBXResourcesBuildPhase section */ - RBP_32467107793 /* Resources */ = { + RBP_1BFB64F249645ABF48C3CCDF8D5FA094 /* Resources */ = { isa = PBXResourcesBuildPhase; buildActionMask = 2147483647; files = ( - BF_268392110450 /* Assets.xcassets in Resources */, - BF_612351978356 /* Interface.storyboard in Resources */, + BF_FA5F3C87A2571E0F39637D118B6C6F8F /* Assets.xcassets in Resources */, ); runOnlyForDeploymentPostprocessing = 0; }; - RBP_48098211678 /* Resources */ = { + RBP_5623703FDC4F6DF4679D8BAF27518F2F /* Resources */ = { isa = PBXResourcesBuildPhase; buildActionMask = 2147483647; files = ( - BF_309594709686 /* Assets.xcassets in Resources */, - BF_387462025786 /* Main.storyboard in Resources */, + BF_ABA4EA32A6DB022806126D9C1418BBA3 /* Assets.xcassets in Resources */, + BF_19C973A29D9994B1E0655B1AFC5528AD /* Interface.storyboard in Resources */, ); runOnlyForDeploymentPostprocessing = 0; }; - RBP_50702349225 /* Resources */ = { + RBP_85DF5DDC76E0E2A78CAFC9A3EC508232 /* Resources */ = { isa = PBXResourcesBuildPhase; buildActionMask = 2147483647; files = ( - BF_237760701422 /* Assets.xcassets in Resources */, + BF_EBC45940911A4942BA04AE1285BF3802 /* Assets.xcassets in Resources */, + BF_B57F9691AD12CA8AE5528A2BAB9E4A43 /* LaunchScreen.storyboard in Resources */, + BF_AC2CE59D56846478FDFBB376FF9F9DC0 /* Localizable.strings in Resources */, + BF_65835F9276FF0DB8E27D098367F9D03C /* Localizable.stringsdict in Resources */, + BF_47FBEFEA08B9642C1F711EDA77FC8C89 /* LocalizedStoryboard.storyboard in Resources */, + BF_47A75C8A7EF15658238E254C846C5C6B /* Main.storyboard in Resources */, + BF_A8A5905BCA8872B2D7B0EF6326B33077 /* MyBundle.bundle in Resources */, + BF_149B8FD8F114C531F675E01FBE814609 /* ResourceFolder in Resources */, + BF_E2D02DDEDD7DC21831F50A6EAA71E528 /* StandaloneAssets.xcassets in Resources */, + BF_D1EF4AECA866B1132F3F01B826B5EE5D /* iMessageApp.app in Resources */, ); runOnlyForDeploymentPostprocessing = 0; }; - RBP_61868746249 /* Resources */ = { + RBP_9291220ECDCB98B69BB31C3E875042EC /* Resources */ = { isa = PBXResourcesBuildPhase; buildActionMask = 2147483647; files = ( - BF_182635022050 /* Assets.xcassets in Resources */, - BF_828878846239 /* MainInterface.storyboard in Resources */, + BF_9D9B97D239384F4CE6E73852E027B787 /* Assets.xcassets in Resources */, ); runOnlyForDeploymentPostprocessing = 0; }; - RBP_82523211050 /* Resources */ = { + RBP_A5B7C086E8F07F5FEE9B99375E375819 /* Resources */ = { isa = PBXResourcesBuildPhase; buildActionMask = 2147483647; files = ( - BF_279581961655 /* Assets.xcassets in Resources */, - BF_538515166673 /* LaunchScreen.storyboard in Resources */, - BF_211435872001 /* Localizable.strings in Resources */, - BF_314868376788 /* Localizable.stringsdict in Resources */, - BF_186245454304 /* LocalizedStoryboard.storyboard in Resources */, - BF_280535243540 /* Main.storyboard in Resources */, - BF_284620660317 /* MyBundle.bundle in Resources */, - BF_721498080533 /* ResourceFolder in Resources */, - BF_860391087135 /* StandaloneAssets.xcassets in Resources */, - BF_647038614509 /* iMessageApp.app in Resources */, + BF_D6588CD7B83034816FFD3A7DB10DAD78 /* Assets.xcassets in Resources */, + BF_EA0063B4FC2A0980A746D35A8DF71CED /* MainInterface.storyboard in Resources */, ); runOnlyForDeploymentPostprocessing = 0; }; - RBP_93515386520 /* Resources */ = { + RBP_BA57258FD71062047F5503B4B160FE15 /* Resources */ = { isa = PBXResourcesBuildPhase; buildActionMask = 2147483647; files = ( - BF_334321520545 /* Assets.xcassets in Resources */, + BF_51D370314B5DA8E002A908021E459F50 /* Assets.xcassets in Resources */, + BF_52C8E2C5962601534CE6F00B88FDB048 /* Main.storyboard in Resources */, ); runOnlyForDeploymentPostprocessing = 0; }; /* End PBXResourcesBuildPhase section */ /* Begin PBXShellScriptBuildPhase section */ - SSBP_2467869845 /* MyScript */ = { - isa = PBXShellScriptBuildPhase; - buildActionMask = 2147483647; - files = ( - ); - inputPaths = ( - ); - name = MyScript; - outputPaths = ( - ); - runOnlyForDeploymentPostprocessing = 0; - shellPath = /bin/sh; - shellScript = "echo \"You ran a script\"\n"; - }; - SSBP_3886691194 /* MyScript */ = { - isa = PBXShellScriptBuildPhase; - buildActionMask = 2147483647; - files = ( - ); - inputPaths = ( - ); - name = MyScript; - outputPaths = ( - ); - runOnlyForDeploymentPostprocessing = 0; - shellPath = /bin/sh; - shellScript = "echo \"You ran a script\"\n"; - }; - SSBP_5106020372 /* Strip Unused Architectures from Frameworks */ = { + SSBP_062CBBF024005F57EECA660F9C7B0C7D /* Strip Unused Architectures from Frameworks */ = { isa = PBXShellScriptBuildPhase; buildActionMask = 2147483647; files = ( @@ -1551,7 +1481,49 @@ shellPath = /bin/sh; shellScript = "################################################################################\n#\n# Copyright 2015 Realm Inc.\n#\n# Licensed under the Apache License, Version 2.0 (the \"License\");\n# you may not use this file except in compliance with the License.\n# You may obtain a copy of the License at\n#\n# http://www.apache.org/licenses/LICENSE-2.0\n#\n# Unless required by applicable law or agreed to in writing, software\n# distributed under the License is distributed on an \"AS IS\" BASIS,\n# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n# See the License for the specific language governing permissions and\n# limitations under the License.\n#\n################################################################################\n\n# This script strips all non-valid architectures from dynamic libraries in\n# the application's `Frameworks` directory.\n#\n# The following environment variables are required:\n#\n# BUILT_PRODUCTS_DIR\n# FRAMEWORKS_FOLDER_PATH\n# VALID_ARCHS\n# EXPANDED_CODE_SIGN_IDENTITY\n\n\n# Signs a framework with the provided identity\ncode_sign() {\n # Use the current code_sign_identitiy\n echo \"Code Signing $1 with Identity ${EXPANDED_CODE_SIGN_IDENTITY_NAME}\"\n echo \"/usr/bin/codesign --force --sign ${EXPANDED_CODE_SIGN_IDENTITY} --preserve-metadata=identifier,entitlements $1\"\n /usr/bin/codesign --force --sign ${EXPANDED_CODE_SIGN_IDENTITY} --preserve-metadata=identifier,entitlements \"$1\"\n}\n\n# Set working directory to product’s embedded frameworks\ncd \"${BUILT_PRODUCTS_DIR}/${FRAMEWORKS_FOLDER_PATH}\"\n\nif [ \"$ACTION\" = \"install\" ]; then\n echo \"Copy .bcsymbolmap files to .xcarchive\"\n find . -name '*.bcsymbolmap' -type f -exec mv {} \"${CONFIGURATION_BUILD_DIR}\" \\;\nelse\n # Delete *.bcsymbolmap files from framework bundle unless archiving\n find . -name '*.bcsymbolmap' -type f -exec rm -rf \"{}\" +\\;\nfi\n\necho \"Stripping frameworks\"\n\nfor file in $(find . -type f -perm +111); do\n # Skip non-dynamic libraries\n if ! [[ \"$(file \"$file\")\" == *\"dynamically linked shared library\"* ]]; then\n continue\n fi\n # Get architectures for current file\n archs=\"$(lipo -info \"${file}\" | rev | cut -d ':' -f1 | rev)\"\n stripped=\"\"\n for arch in $archs; do\n if ! [[ \"${VALID_ARCHS}\" == *\"$arch\"* ]]; then\n # Strip non-valid architectures in-place\n lipo -remove \"$arch\" -output \"$file\" \"$file\" || exit 1\n stripped=\"$stripped $arch\"\n fi\n done\n if [[ \"$stripped\" != \"\" ]]; then\n echo \"Stripped $file of architectures:$stripped\"\n if [ \"${CODE_SIGNING_REQUIRED}\" == \"YES\" ]; then\n code_sign \"${file}\"\n fi\n fi\ndone\n"; }; - SSBP_5390042403 /* Copy Swift Objective-C Interface Header */ = { + SSBP_13B42B84708A6ABC082BE00176F5DCB2 /* MyScript */ = { + isa = PBXShellScriptBuildPhase; + buildActionMask = 2147483647; + files = ( + ); + inputPaths = ( + ); + name = MyScript; + outputPaths = ( + ); + runOnlyForDeploymentPostprocessing = 0; + shellPath = /bin/sh; + shellScript = "echo \"You ran a script\"\n"; + }; + SSBP_1B2C6BA1C514471EF42FB7E03ACD8C83 /* MyScript */ = { + isa = PBXShellScriptBuildPhase; + buildActionMask = 2147483647; + files = ( + ); + inputPaths = ( + ); + name = MyScript; + outputPaths = ( + ); + runOnlyForDeploymentPostprocessing = 0; + shellPath = /bin/sh; + shellScript = "echo \"You ran a script\"\n"; + }; + SSBP_376C0662E4E8416C049A50660864798B /* MyScript */ = { + isa = PBXShellScriptBuildPhase; + buildActionMask = 2147483647; + files = ( + ); + inputPaths = ( + ); + name = MyScript; + outputPaths = ( + ); + runOnlyForDeploymentPostprocessing = 0; + shellPath = /bin/sh; + shellScript = "echo \"You ran a script!\"\n"; + }; + SSBP_4A83147402B05D3C84D21F0487315914 /* Copy Swift Objective-C Interface Header */ = { isa = PBXShellScriptBuildPhase; buildActionMask = 2147483647; files = ( @@ -1567,7 +1539,7 @@ shellPath = /bin/sh; shellScript = "ditto \"${SCRIPT_INPUT_FILE_0}\" \"${SCRIPT_OUTPUT_FILE_0}\"\n"; }; - SSBP_5954948530 /* Carthage */ = { + SSBP_7F147E7ED45BAAE2186975B7FF9EB08A /* Carthage */ = { isa = PBXShellScriptBuildPhase; buildActionMask = 2147483647; files = ( @@ -1583,21 +1555,7 @@ shellPath = /bin/sh; shellScript = "carthage copy-frameworks\n"; }; - SSBP_6331376344 /* MyScript */ = { - isa = PBXShellScriptBuildPhase; - buildActionMask = 2147483647; - files = ( - ); - inputPaths = ( - ); - name = MyScript; - outputPaths = ( - ); - runOnlyForDeploymentPostprocessing = 0; - shellPath = /bin/sh; - shellScript = "echo \"You ran a script\"\n"; - }; - SSBP_8106229290 /* Carthage */ = { + SSBP_7F8DED07519BA4B70C40A9A755844874 /* Carthage */ = { isa = PBXShellScriptBuildPhase; buildActionMask = 2147483647; files = ( @@ -1613,21 +1571,7 @@ shellPath = /bin/sh; shellScript = "carthage copy-frameworks\n"; }; - SSBP_8255377629 /* MyScript */ = { - isa = PBXShellScriptBuildPhase; - buildActionMask = 2147483647; - files = ( - ); - inputPaths = ( - ); - name = MyScript; - outputPaths = ( - ); - runOnlyForDeploymentPostprocessing = 0; - shellPath = /bin/sh; - shellScript = "echo \"You ran a script\"\n"; - }; - SSBP_8280041834 /* MyScript */ = { + SSBP_831D7D5A30B0F736E1E92F7B5CF9428F /* MyScript */ = { isa = PBXShellScriptBuildPhase; buildActionMask = 2147483647; files = ( @@ -1641,7 +1585,7 @@ shellPath = /bin/sh; shellScript = "echo \"do the thing\""; }; - SSBP_8706434794 /* MyScript */ = { + SSBP_B07F447D73408EA48C54A8E7F5B8D575 /* MyScript */ = { isa = PBXShellScriptBuildPhase; buildActionMask = 2147483647; files = ( @@ -1653,195 +1597,209 @@ ); runOnlyForDeploymentPostprocessing = 0; shellPath = /bin/sh; - shellScript = "echo \"You ran a script!\"\n"; + shellScript = "echo \"You ran a script\"\n"; + }; + SSBP_C8F56E533BE956498E644805330168EB /* MyScript */ = { + isa = PBXShellScriptBuildPhase; + buildActionMask = 2147483647; + files = ( + ); + inputPaths = ( + ); + name = MyScript; + outputPaths = ( + ); + runOnlyForDeploymentPostprocessing = 0; + shellPath = /bin/sh; + shellScript = "echo \"You ran a script\"\n"; }; /* End PBXShellScriptBuildPhase section */ /* Begin PBXSourcesBuildPhase section */ - SBP_10528034564 /* Sources */ = { + SBP_0CB30551A2D40126958D8D6DAF6922E2 /* Sources */ = { isa = PBXSourcesBuildPhase; buildActionMask = 2147483647; files = ( - BF_532861652809 /* FrameworkFile.swift in Sources */, + BF_E6B3BA0A3A687598FB5CCDF0524E1B10 /* FrameworkFile.swift in Sources */, ); runOnlyForDeploymentPostprocessing = 0; }; - SBP_12350399938 /* Sources */ = { + SBP_110D7B4160D965B7964619BF78E01DE2 /* Sources */ = { isa = PBXSourcesBuildPhase; buildActionMask = 2147483647; files = ( - BF_167705969896 /* TestProjectUITests.swift in Sources */, + BF_76825DD9B3B10103CDAB9D235BDF6A91 /* MessagesViewController.swift in Sources */, ); runOnlyForDeploymentPostprocessing = 0; }; - SBP_28126979373 /* Sources */ = { - isa = PBXSourcesBuildPhase; - buildActionMask = 2147483647; - files = ( - BF_804650723499 /* StaticLibrary_ObjC.m in Sources */, - ); - runOnlyForDeploymentPostprocessing = 0; - }; - SBP_32467107793 /* Sources */ = { + SBP_20DDAC7BCD11ECA8B08695FE5D7314A9 /* Sources */ = { isa = PBXSourcesBuildPhase; buildActionMask = 2147483647; files = ( ); runOnlyForDeploymentPostprocessing = 0; }; - SBP_37656905478 /* Sources */ = { + SBP_3848ADAF2343866973E57344A1054BE3 /* Sources */ = { isa = PBXSourcesBuildPhase; buildActionMask = 2147483647; files = ( - BF_855988705556 /* XPC_Service.m in Sources */, - BF_304637845091 /* main.m in Sources */, + BF_1EC32E6544284999188A140FB5FC6E67 /* TestProjectUITests.swift in Sources */, ); runOnlyForDeploymentPostprocessing = 0; }; - SBP_43717916684 /* Sources */ = { + SBP_3DD17ED231CE07543581040F32049525 /* Sources */ = { isa = PBXSourcesBuildPhase; buildActionMask = 2147483647; files = ( - BF_212221512596 /* StaticLibrary.swift in Sources */, + BF_DBF3047DCE71CB2E7B9AC7367F44F8DB /* StaticLibrary.swift in Sources */, ); runOnlyForDeploymentPostprocessing = 0; }; - SBP_43870453850 /* Sources */ = { + SBP_48868408A19D9BBE4A58CA4FAE00C0D4 /* Sources */ = { isa = PBXSourcesBuildPhase; buildActionMask = 2147483647; files = ( - BF_624802436672 /* FrameworkFile.swift in Sources */, + BF_5C6407EDAC3D88B020BCB46724DC1D14 /* FrameworkFile.swift in Sources */, ); runOnlyForDeploymentPostprocessing = 0; }; - SBP_47229604241 /* Sources */ = { + SBP_49F3C650EA105D1EF50817673A8DB33A /* Sources */ = { isa = PBXSourcesBuildPhase; buildActionMask = 2147483647; files = ( - BF_456457948943 /* FrameworkFile.swift in Sources */, + BF_A29F8B04C9DD9ADE1EF5AFDAAA0130D2 /* ExtensionDelegate.swift in Sources */, + BF_5336CD16DBDB1654D75AA91B922DEAD6 /* InterfaceController.swift in Sources */, + BF_CD062A97959629BD672893FDAE89A1E9 /* NotificationController.swift in Sources */, ); runOnlyForDeploymentPostprocessing = 0; }; - SBP_47926466037 /* Sources */ = { + SBP_52AE5DCFB4487297D6889C7F014AD281 /* Sources */ = { + isa = PBXSourcesBuildPhase; + buildActionMask = 2147483647; + files = ( + BF_77C9BB7BED4F5970D02E69312259FE09 /* StaticLibrary_ObjC.m in Sources */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; + SBP_645418A0FA6E3F5727685DE191C6B793 /* Sources */ = { + isa = PBXSourcesBuildPhase; + buildActionMask = 2147483647; + files = ( + BF_D0676C98017B6FDD96A733CB851645DE /* StaticLibrary_ObjC.m in Sources */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; + SBP_669CBAFD2D7234A2BEDCEAA4949ED575 /* Sources */ = { + isa = PBXSourcesBuildPhase; + buildActionMask = 2147483647; + files = ( + BF_FA28229372AB6236883309181258AF26 /* XPC_Service.m in Sources */, + BF_FD13F69A90FB1D5676B97A8C77D710B4 /* main.m in Sources */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; + SBP_70B2F11AAC526FDB99D68212C2C92CE6 /* Sources */ = { + isa = PBXSourcesBuildPhase; + buildActionMask = 2147483647; + files = ( + BF_B2B4B15D6F7B242DBDA39939111282F9 /* TestProjectTests.swift in Sources */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; + SBP_77EF8BC7FC3D693C9C0C1CB51984F3E2 /* Sources */ = { + isa = PBXSourcesBuildPhase; + buildActionMask = 2147483647; + files = ( + BF_021628792D80050372F6E56A6C3D0561 /* AppDelegate.swift in Sources */, + BF_9A74AED05E2F61530BFA0F7D23AF0112 /* Model.xcdatamodeld in Sources */, + BF_FF7EBDFA4462D2983743C84CE99D9714 /* MoreUnder.swift in Sources */, + BF_47FF83A37355E90F93C0F5B2CFBCE317 /* Standalone.swift in Sources */, + BF_F12E44D8E7F617E8A5FD8E1A342E5FAD /* ViewController.swift in Sources */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; + SBP_7EE428F1F0444ACB29B3C5259C04FF6D /* Sources */ = { + isa = PBXSourcesBuildPhase; + buildActionMask = 2147483647; + files = ( + BF_81711FB79375EB743254B809B4E246E0 /* AppDelegate.swift in Sources */, + BF_F7AC9F45ED37FCD5A749FD6F5F4518AF /* Standalone.swift in Sources */, + BF_98DEE7FD578AA439550E0023A2ECE8D0 /* ViewController.swift in Sources */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; + SBP_84E9A8BE77910B67B3F2DCD5916DC498 /* Sources */ = { + isa = PBXSourcesBuildPhase; + buildActionMask = 2147483647; + files = ( + BF_3080067722B357BFC053D89CCDBF5397 /* FrameworkFile.swift in Sources */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; + SBP_8990272D7DD45CFBDAB18690861BD4E8 /* Sources */ = { + isa = PBXSourcesBuildPhase; + buildActionMask = 2147483647; + files = ( + BF_8610CB66872BC72C1690EBD8D102FBC0 /* FrameworkFile.swift in Sources */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; + SBP_924258C7A9F27B13508604CAF625E0D3 /* Sources */ = { + isa = PBXSourcesBuildPhase; + buildActionMask = 2147483647; + files = ( + BF_E228A4D3997297780216722D71AC9FE5 /* StaticLibrary_ObjC.m in Sources */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; + SBP_9DB756A33A199E4D91CE6E6E2A5A706C /* Sources */ = { + isa = PBXSourcesBuildPhase; + buildActionMask = 2147483647; + files = ( + BF_729EB1C88A5E43B2342099D81B301F4D /* FrameworkFile.swift in Sources */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; + SBP_C18D008976BE0EFD3D3A3C68FB79D271 /* Sources */ = { isa = PBXSourcesBuildPhase; buildActionMask = 2147483647; files = ( ); runOnlyForDeploymentPostprocessing = 0; }; - SBP_48098211678 /* Sources */ = { + SBP_C469AFC0C383156AF5C80EBBC089D9FC /* Sources */ = { isa = PBXSourcesBuildPhase; buildActionMask = 2147483647; files = ( - BF_698752059275 /* AppDelegate.swift in Sources */, - BF_704149935229 /* Standalone.swift in Sources */, - BF_903574875171 /* ViewController.swift in Sources */, + BF_3811C1771AF5342AD8F9FEB63A3465B5 /* FrameworkFile.swift in Sources */, ); runOnlyForDeploymentPostprocessing = 0; }; - SBP_50702349225 /* Sources */ = { + SBP_D6209A702C851D0CFD1CC2B225986D45 /* Sources */ = { isa = PBXSourcesBuildPhase; buildActionMask = 2147483647; files = ( - BF_206432481076 /* ExtensionDelegate.swift in Sources */, - BF_138356261076 /* InterfaceController.swift in Sources */, - BF_830383951771 /* NotificationController.swift in Sources */, + BF_C9D24A56926211130F4E25B5D9972B58 /* StaticLibrary_ObjC.m in Sources */, ); runOnlyForDeploymentPostprocessing = 0; }; - SBP_52511912046 /* Sources */ = { + SBP_DB9B8E1504ED9DD92AE41067C53B5082 /* Sources */ = { isa = PBXSourcesBuildPhase; buildActionMask = 2147483647; files = ( - BF_901390118565 /* FrameworkFile.swift in Sources */, + BF_D3D64E2595369BBDEF03E07543AE2779 /* FrameworkFile.swift in Sources */, ); runOnlyForDeploymentPostprocessing = 0; }; - SBP_53081855546 /* Sources */ = { + SBP_EA528A5DC6D79AA397B25949B07AE70F /* Sources */ = { isa = PBXSourcesBuildPhase; buildActionMask = 2147483647; files = ( - BF_150525852574 /* StaticLibrary_ObjC.m in Sources */, + BF_4D56F3F4D081A77C11325B96DD34D8E1 /* FrameworkFile.swift in Sources */, ); runOnlyForDeploymentPostprocessing = 0; }; - SBP_56319393723 /* Sources */ = { - isa = PBXSourcesBuildPhase; - buildActionMask = 2147483647; - files = ( - BF_517043434617 /* FrameworkFile.swift in Sources */, - ); - runOnlyForDeploymentPostprocessing = 0; - }; - SBP_61868746249 /* Sources */ = { - isa = PBXSourcesBuildPhase; - buildActionMask = 2147483647; - files = ( - BF_703054643820 /* MessagesViewController.swift in Sources */, - ); - runOnlyForDeploymentPostprocessing = 0; - }; - SBP_65110337172 /* Sources */ = { - isa = PBXSourcesBuildPhase; - buildActionMask = 2147483647; - files = ( - BF_515435124777 /* FrameworkFile.swift in Sources */, - ); - runOnlyForDeploymentPostprocessing = 0; - }; - SBP_66231583718 /* Sources */ = { - isa = PBXSourcesBuildPhase; - buildActionMask = 2147483647; - files = ( - BF_243071719122 /* FrameworkFile.swift in Sources */, - ); - runOnlyForDeploymentPostprocessing = 0; - }; - SBP_66289733729 /* Sources */ = { - isa = PBXSourcesBuildPhase; - buildActionMask = 2147483647; - files = ( - BF_149117711530 /* FrameworkFile.swift in Sources */, - ); - runOnlyForDeploymentPostprocessing = 0; - }; - SBP_70453161401 /* Sources */ = { - isa = PBXSourcesBuildPhase; - buildActionMask = 2147483647; - files = ( - BF_895856588273 /* StaticLibrary_ObjC.m in Sources */, - ); - runOnlyForDeploymentPostprocessing = 0; - }; - SBP_78312289991 /* Sources */ = { - isa = PBXSourcesBuildPhase; - buildActionMask = 2147483647; - files = ( - BF_360196406184 /* TestProjectTests.swift in Sources */, - ); - runOnlyForDeploymentPostprocessing = 0; - }; - SBP_82523211050 /* Sources */ = { - isa = PBXSourcesBuildPhase; - buildActionMask = 2147483647; - files = ( - BF_892119987440 /* AppDelegate.swift in Sources */, - BF_670499288392 /* Model.xcdatamodeld in Sources */, - BF_503484983186 /* MoreUnder.swift in Sources */, - BF_561304997165 /* Standalone.swift in Sources */, - BF_331192862207 /* ViewController.swift in Sources */, - ); - runOnlyForDeploymentPostprocessing = 0; - }; - SBP_91954341472 /* Sources */ = { - isa = PBXSourcesBuildPhase; - buildActionMask = 2147483647; - files = ( - BF_434838320682 /* StaticLibrary_ObjC.m in Sources */, - ); - runOnlyForDeploymentPostprocessing = 0; - }; - SBP_93515386520 /* Sources */ = { + SBP_ED63FCA00BD617EFF125ECDF9D24FAD8 /* Sources */ = { isa = PBXSourcesBuildPhase; buildActionMask = 2147483647; files = ( @@ -1851,170 +1809,1040 @@ /* End PBXSourcesBuildPhase section */ /* Begin PBXTargetDependency section */ - TD_109724965966 /* PBXTargetDependency */ = { + TD_0C5CE0308CB64DB986A853307CCF8A95 /* PBXTargetDependency */ = { isa = PBXTargetDependency; - target = NT_472296042419 /* Framework_iOS */; - targetProxy = CIP_10972496596 /* PBXContainerItemProxy */; + target = NT_38A9FE87056942A2746E0FF025B52A91 /* App_watchOS */; + targetProxy = CIP_6D60DD975DE7829AEA72BD4098DE13E6 /* PBXContainerItemProxy */; }; - TD_141219468074 /* PBXTargetDependency */ = { + TD_117F878FC368C83443CEC1707531F7F2 /* PBXTargetDependency */ = { isa = PBXTargetDependency; - target = NT_281269793733 /* StaticLibrary_ObjC_macOS */; - targetProxy = CIP_14121946807 /* PBXContainerItemProxy */; + target = NT_6AEE12F93D449E249F5348BBF35D3053 /* StaticLibrary_ObjC_iOS */; + targetProxy = CIP_1F8C8F9FAC75236BB2F60C3BCAE41C55 /* PBXContainerItemProxy */; }; - TD_159619342582 /* PBXTargetDependency */ = { + TD_205ABD699FA8E05C47D73E8EB2D0F9EF /* PBXTargetDependency */ = { isa = PBXTargetDependency; - target = NT_281269793733 /* StaticLibrary_ObjC_macOS */; - targetProxy = CIP_15961934258 /* PBXContainerItemProxy */; + target = NT_34A020E43FBBD797051205235CD82B70 /* StaticLibrary_ObjC_watchOS */; + targetProxy = CIP_47399FDE0885501C87782313489C95A3 /* PBXContainerItemProxy */; }; - TD_193291182921 /* PBXTargetDependency */ = { + TD_266243C3BBC1C83485E1B43C0FFC3626 /* PBXTargetDependency */ = { isa = PBXTargetDependency; - target = NT_507023492251 /* App_watchOS Extension */; - targetProxy = CIP_19329118292 /* PBXContainerItemProxy */; + target = NT_6AEE12F93D449E249F5348BBF35D3053 /* StaticLibrary_ObjC_iOS */; + targetProxy = CIP_1AEF07B9F6A9BC9605E82F26AE7BFE15 /* PBXContainerItemProxy */; }; - TD_208010900457 /* PBXTargetDependency */ = { + TD_2A43F973A3E1CF675A967054BA52074B /* PBXTargetDependency */ = { isa = PBXTargetDependency; - target = NT_825232110500 /* App_iOS */; - targetProxy = CIP_20801090045 /* PBXContainerItemProxy */; + target = NT_5245AB6D3B3CFBC95AEBADF6E0C593B8 /* App_watchOS Extension */; + targetProxy = CIP_5F2FD3F0AED59431B4F98D7238CAA733 /* PBXContainerItemProxy */; }; - TD_232150454486 /* PBXTargetDependency */ = { + TD_35F382102AABCCCEFADCBC201E5B1CE1 /* PBXTargetDependency */ = { isa = PBXTargetDependency; - target = NT_919543414727 /* StaticLibrary_ObjC_iOS */; - targetProxy = CIP_23215045448 /* PBXContainerItemProxy */; + target = NT_15609BCEEB00CBCC4C42110EB0366A6F /* StaticLibrary_ObjC_macOS */; + targetProxy = CIP_64ED071F49DC88F8192387D7A18827F1 /* PBXContainerItemProxy */; }; - TD_235580504123 /* PBXTargetDependency */ = { + TD_4013C738E59E1CA40B4A982AF74E8604 /* PBXTargetDependency */ = { isa = PBXTargetDependency; - target = NT_525119120469 /* Framework_macOS */; - targetProxy = CIP_23558050412 /* PBXContainerItemProxy */; + target = NT_7D108AE86BED8C9CCF52C2646FA4C5DE /* Framework_iOS */; + targetProxy = CIP_DC690C90FF2F615A1EB93D9803F8D905 /* PBXContainerItemProxy */; }; - TD_236095217340 /* PBXTargetDependency */ = { + TD_402541000CCC58970431E41C3D928AB8 /* PBXTargetDependency */ = { isa = PBXTargetDependency; - target = NT_662897337290 /* Framework2_iOS */; - targetProxy = CIP_23609521734 /* PBXContainerItemProxy */; + target = NT_BEB0891E36797FE2214A0A9D516D408D /* App_iOS */; + targetProxy = CIP_73A78E804E93B79E9ED934358CDD7D9D /* PBXContainerItemProxy */; }; - TD_288560876254 /* PBXTargetDependency */ = { + TD_743D7CD7BB700A16A02A7A4A1E02D845 /* PBXTargetDependency */ = { isa = PBXTargetDependency; - target = NT_935153865209 /* iMessageApp */; - targetProxy = CIP_28856087625 /* PBXContainerItemProxy */; + target = NT_6BD068FAAC6AA35C090C48147B94EC6E /* iMessageApp */; + targetProxy = CIP_5E9F76628F77E820EB9AA60A282D8691 /* PBXContainerItemProxy */; }; - TD_317921131342 /* PBXTargetDependency */ = { + TD_79BA73EB5832255541811162BB2B0218 /* PBXTargetDependency */ = { isa = PBXTargetDependency; - target = NT_618687462494 /* iMessageExtension */; - targetProxy = CIP_31792113134 /* PBXContainerItemProxy */; + target = NT_D4C3E345E90AF9F6CBE8CF226FCFBCD6 /* StaticLibrary_ObjC_tvOS */; + targetProxy = CIP_1C3D8F2BF099A773651CF8A195466469 /* PBXContainerItemProxy */; }; - TD_587184686458 /* PBXTargetDependency */ = { + TD_846DB03B9778D6C8E81FE52A5A212420 /* PBXTargetDependency */ = { isa = PBXTargetDependency; - target = NT_704531614016 /* StaticLibrary_ObjC_tvOS */; - targetProxy = CIP_58718468645 /* PBXContainerItemProxy */; + target = NT_6A4FC6EE80FB2821AB96D51C3BC8966E /* iMessageExtension */; + targetProxy = CIP_B5B71FB9D5064D7E05E9E44827A87775 /* PBXContainerItemProxy */; }; - TD_665828516151 /* PBXTargetDependency */ = { + TD_94E481CDF62CDA1E9B37D1DA08E5A5AF /* PBXTargetDependency */ = { isa = PBXTargetDependency; - target = NT_919543414727 /* StaticLibrary_ObjC_iOS */; - targetProxy = CIP_66582851615 /* PBXContainerItemProxy */; + target = NT_9F72C903B42E1AA3B88F97B917231B15 /* Framework2_iOS */; + targetProxy = CIP_862C50E687ABB75CCDF71F1157709A4D /* PBXContainerItemProxy */; }; - TD_676191581124 /* PBXTargetDependency */ = { + TD_98EB63C93477EA15558367FBAB5797CE /* PBXTargetDependency */ = { isa = PBXTargetDependency; - target = NT_825232110500 /* App_iOS */; - targetProxy = CIP_67619158112 /* PBXContainerItemProxy */; + target = NT_BEB0891E36797FE2214A0A9D516D408D /* App_iOS */; + targetProxy = CIP_291A38592460740F400A80DE5DBA9679 /* PBXContainerItemProxy */; }; - TD_743784992411 /* PBXTargetDependency */ = { + TD_B8AB4064784522A5F3760CB1372D1BCD /* PBXTargetDependency */ = { isa = PBXTargetDependency; - target = NT_376569054786 /* XPC Service */; - targetProxy = CIP_74378499241 /* PBXContainerItemProxy */; + target = NT_BEB0891E36797FE2214A0A9D516D408D /* App_iOS */; + targetProxy = CIP_4FA1F11884BC4F5DBDFAC1FBEC60AFC1 /* PBXContainerItemProxy */; }; - TD_747418473860 /* PBXTargetDependency */ = { + TD_B8F32B4B3CC431FE0EC1C4E7D096E3AC /* PBXTargetDependency */ = { isa = PBXTargetDependency; - target = NT_472296042419 /* Framework_iOS */; - targetProxy = CIP_74741847386 /* PBXContainerItemProxy */; + target = NT_9D53AF351F8DAE25354F2391248DFCCA /* Framework_macOS */; + targetProxy = CIP_CA46A507405C3CBD7579D2C9A3F8719E /* PBXContainerItemProxy */; }; - TD_824101787753 /* PBXTargetDependency */ = { + TD_BBB2D0EDFD9EF8193F1864D1F3D5F97A /* PBXTargetDependency */ = { isa = PBXTargetDependency; - target = NT_324671077936 /* App_watchOS */; - targetProxy = CIP_82410178775 /* PBXContainerItemProxy */; + target = NT_15609BCEEB00CBCC4C42110EB0366A6F /* StaticLibrary_ObjC_macOS */; + targetProxy = CIP_C82ED1EBAD4D7218ED9694EB7BF4DE74 /* PBXContainerItemProxy */; }; - TD_887143865471 /* PBXTargetDependency */ = { + TD_C762D8FBA80775A921AA5B50422E9349 /* PBXTargetDependency */ = { isa = PBXTargetDependency; - target = NT_825232110500 /* App_iOS */; - targetProxy = CIP_88714386547 /* PBXContainerItemProxy */; + target = NT_23509FD082D1F788E6D6431F509B11AF /* XPC Service */; + targetProxy = CIP_BAAD03920C86C2839C3C93FDA5568ECE /* PBXContainerItemProxy */; }; - TD_908217865445 /* PBXTargetDependency */ = { + TD_D056799E80FFF41247BAE692D01142F0 /* PBXTargetDependency */ = { isa = PBXTargetDependency; - target = NT_530818555464 /* StaticLibrary_ObjC_watchOS */; - targetProxy = CIP_90821786544 /* PBXContainerItemProxy */; + target = NT_7D108AE86BED8C9CCF52C2646FA4C5DE /* Framework_iOS */; + targetProxy = CIP_A760C88E6F24D3F06081AEBDEB8AE54B /* PBXContainerItemProxy */; }; /* End PBXTargetDependency section */ /* Begin PBXVariantGroup section */ - VG_118219888726 /* LocalizedStoryboard.storyboard */ = { + VG_06DC429EEFBBA25BC3EE1AA1B4062C10 /* MainInterface.storyboard */ = { isa = PBXVariantGroup; children = ( - FR_118219888726 /* Base */, - FR_500792082643 /* en */, - ); - name = LocalizedStoryboard.storyboard; - sourceTree = ""; - }; - VG_201160695646 /* MainInterface.storyboard */ = { - isa = PBXVariantGroup; - children = ( - FR_201160695646 /* Base */, + FR_7C8280C3C5E1D43BBB12A5F0156A8305 /* Base */, ); name = MainInterface.storyboard; sourceTree = ""; }; - VG_202279841299 /* Main.storyboard */ = { + VG_14B7B5469AA17939993A2B25E775D391 /* Main.storyboard */ = { isa = PBXVariantGroup; children = ( - FR_202279841299 /* Base */, + FR_7532DD7B78451A5040048474AC4FBCCC /* Base */, ); name = Main.storyboard; sourceTree = ""; }; - VG_256263906698 /* LaunchScreen.storyboard */ = { + VG_30676EBEE9BE54AA26CAE69BE744CAE8 /* Main.storyboard */ = { isa = PBXVariantGroup; children = ( - FR_256263906698 /* Base */, + FR_C5682A1371F91CBD1254C115F0439F12 /* Base */, ); - name = LaunchScreen.storyboard; + name = Main.storyboard; sourceTree = ""; }; - VG_264279911176 /* Interface.storyboard */ = { + VG_6542B94EE7DA40CD30BC54DED26C61C7 /* Interface.storyboard */ = { isa = PBXVariantGroup; children = ( - FR_264279911176 /* Base */, + FR_2649A01C17A7301DD72EA826604ED8AA /* Base */, ); name = Interface.storyboard; sourceTree = ""; }; - VG_473000061463 /* Localizable.strings */ = { + VG_BE436BDD64E90EFB600D47AC69B49DD3 /* Localizable.strings */ = { isa = PBXVariantGroup; children = ( - FR_473000061463 /* Base */, - FR_771029596306 /* en */, + FR_62ECE5A3D0F25415CB50A28226B91EBE /* Base */, + FR_11E95FCD1DEB0C8A01A053518C1DAA8E /* en */, ); name = Localizable.strings; sourceTree = ""; }; - VG_609193904586 /* Main.storyboard */ = { + VG_C247AA37E9057916EDDC65C7B55E2F38 /* Localizable.stringsdict */ = { isa = PBXVariantGroup; children = ( - FR_609193904586 /* Base */, - ); - name = Main.storyboard; - sourceTree = ""; - }; - VG_746876637628 /* Localizable.stringsdict */ = { - isa = PBXVariantGroup; - children = ( - FR_746876637628 /* Base */, - FR_602633703434 /* en */, + FR_4B58A01ABBE8E0A56B7B5A539C9BF5C7 /* Base */, + FR_BCEF8D29C9B93D3160D8D76DD368C8AD /* en */, ); name = Localizable.stringsdict; sourceTree = ""; }; + VG_F256536BB07CF3E64C4DD934F75BED9C /* LaunchScreen.storyboard */ = { + isa = PBXVariantGroup; + children = ( + FR_C73B96CEEE97DE429C638EBD9C2F3D2B /* Base */, + ); + name = LaunchScreen.storyboard; + sourceTree = ""; + }; + VG_FE6D89DA2D7E7F58340D566590FF221C /* LocalizedStoryboard.storyboard */ = { + isa = PBXVariantGroup; + children = ( + FR_A51DE87AC269BC36016F9CAC32B4ECB2 /* Base */, + FR_35B9B5E8A2ED60FBB9CED8AE515B16B5 /* en */, + ); + name = LocalizedStoryboard.storyboard; + sourceTree = ""; + }; /* End PBXVariantGroup section */ /* Begin XCBuildConfiguration section */ - BC_108053643718 /* Test Debug */ = { + BC_0198386D4EF48A4C053820EEEE1936CB /* Test Debug */ = { + isa = XCBuildConfiguration; + buildSettings = { + ASSETCATALOG_COMPILER_COMPLICATION_NAME = Complication; + FRAMEWORK_SEARCH_PATHS = ( + "$(inherited)", + "$(PROJECT_DIR)/Carthage/Build/watchOS", + ); + INFOPLIST_FILE = "App_watchOS Extension/Info.plist"; + LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks @executable_path/../../Frameworks"; + PRODUCT_BUNDLE_IDENTIFIER = com.project.app.watch.extension; + SDKROOT = watchos; + SKIP_INSTALL = YES; + TARGETED_DEVICE_FAMILY = 4; + }; + name = "Test Debug"; + }; + BC_0271561C28AF4A74C6924A2187BC8487 /* Test Release */ = { + isa = XCBuildConfiguration; + buildSettings = { + CODE_SIGN_IDENTITY = ""; + CURRENT_PROJECT_VERSION = 1; + DEFINES_MODULE = YES; + DYLIB_COMPATIBILITY_VERSION = 1; + DYLIB_CURRENT_VERSION = 1; + DYLIB_INSTALL_NAME_BASE = "@rpath"; + FRAMEWORK_SEARCH_PATHS = ( + "$(inherited)", + "$(PROJECT_DIR)/Carthage/Build/watchOS", + ); + INFOPLIST_FILE = Framework/Info.plist; + INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; + PRODUCT_BUNDLE_IDENTIFIER = "com.project.Framework-watchOS"; + PRODUCT_NAME = Framework; + SDKROOT = watchos; + SKIP_INSTALL = YES; + TARGETED_DEVICE_FAMILY = 4; + VERSIONING_SYSTEM = "apple-generic"; + }; + name = "Test Release"; + }; + BC_032D44BB36CD1AC13FFFAC654631D432 /* Production Debug */ = { + isa = XCBuildConfiguration; + buildSettings = { + CODE_SIGN_IDENTITY = ""; + CURRENT_PROJECT_VERSION = 1; + DEFINES_MODULE = YES; + DYLIB_COMPATIBILITY_VERSION = 1; + DYLIB_CURRENT_VERSION = 1; + DYLIB_INSTALL_NAME_BASE = "@rpath"; + FRAMEWORK_SEARCH_PATHS = ( + "$(inherited)", + "$(PROJECT_DIR)/Carthage/Build/tvOS", + ); + INFOPLIST_FILE = Framework/Info.plist; + INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; + LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks"; + PRODUCT_BUNDLE_IDENTIFIER = "com.project.Framework-tvOS"; + PRODUCT_NAME = Framework; + SDKROOT = appletvos; + SKIP_INSTALL = YES; + TARGETED_DEVICE_FAMILY = 3; + VERSIONING_SYSTEM = "apple-generic"; + }; + name = "Production Debug"; + }; + BC_057931652E9069AFF23BA573B6564BE5 /* Production Debug */ = { + isa = XCBuildConfiguration; + buildSettings = { + LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks"; + PRODUCT_BUNDLE_IDENTIFIER = com.project.Legacy; + SDKROOT = iphoneos; + TARGETED_DEVICE_FAMILY = "1,2"; + }; + name = "Production Debug"; + }; + BC_079D311B8C64F17C816583A1A4D84F42 /* Staging Release */ = { + isa = XCBuildConfiguration; + buildSettings = { + ALWAYS_EMBED_SWIFT_STANDARD_LIBRARIES = YES; + ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon; + COMBINE_HIDPI_IMAGES = YES; + FRAMEWORK_SEARCH_PATHS = ( + "$(inherited)", + "$(PROJECT_DIR)/Carthage/Build/Mac", + ); + INFOPLIST_FILE = App_macOS/Info.plist; + LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/../Frameworks"; + OTHER_LDFLAGS = ( + "$(inherited)", + "-ObjC", + ); + PRODUCT_BUNDLE_IDENTIFIER = "com.project.App-macOS"; + SDKROOT = macosx; + }; + name = "Staging Release"; + }; + BC_0B1CBABAB9579A064729249F5E1B7B84 /* Test Debug */ = { + isa = XCBuildConfiguration; + buildSettings = { + CODE_SIGN_IDENTITY = ""; + CURRENT_PROJECT_VERSION = 1; + DEFINES_MODULE = YES; + DYLIB_COMPATIBILITY_VERSION = 1; + DYLIB_CURRENT_VERSION = 1; + DYLIB_INSTALL_NAME_BASE = "@rpath"; + FRAMEWORK_SEARCH_PATHS = ( + "$(inherited)", + "$(PROJECT_DIR)/Carthage/Build/tvOS", + ); + INFOPLIST_FILE = Framework/Info.plist; + INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; + LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks"; + PRODUCT_BUNDLE_IDENTIFIER = "com.project.Framework-tvOS"; + PRODUCT_NAME = Framework; + SDKROOT = appletvos; + SKIP_INSTALL = YES; + TARGETED_DEVICE_FAMILY = 3; + VERSIONING_SYSTEM = "apple-generic"; + }; + name = "Test Debug"; + }; + BC_0B57E3E0E8C194293ABFEEF97F104F30 /* Staging Release */ = { + isa = XCBuildConfiguration; + buildSettings = { + CODE_SIGN_IDENTITY = ""; + CURRENT_PROJECT_VERSION = 1; + DEFINES_MODULE = YES; + DYLIB_COMPATIBILITY_VERSION = 1; + DYLIB_CURRENT_VERSION = 1; + DYLIB_INSTALL_NAME_BASE = "@rpath"; + FRAMEWORK_SEARCH_PATHS = ( + "$(inherited)", + "$(PROJECT_DIR)/Carthage/Build/tvOS", + ); + INFOPLIST_FILE = Framework/Info.plist; + INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; + LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks"; + PRODUCT_BUNDLE_IDENTIFIER = "com.project.Framework-tvOS"; + PRODUCT_NAME = Framework; + SDKROOT = appletvos; + SKIP_INSTALL = YES; + TARGETED_DEVICE_FAMILY = 3; + VERSIONING_SYSTEM = "apple-generic"; + }; + name = "Staging Release"; + }; + BC_0D53E4051E21792867D5FA4A11B751AB /* Production Release */ = { + isa = XCBuildConfiguration; + buildSettings = { + LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks"; + PRODUCT_BUNDLE_IDENTIFIER = "com.project.StaticLibrary-ObjC-tvOS"; + PRODUCT_NAME = StaticLibrary_ObjC; + SDKROOT = appletvos; + SKIP_INSTALL = YES; + TARGETED_DEVICE_FAMILY = 3; + }; + name = "Production Release"; + }; + BC_0D96F61E117D6A8D2353B0E7CB445AEA /* Staging Release */ = { + isa = XCBuildConfiguration; + buildSettings = { + CODE_SIGN_IDENTITY = ""; + COMBINE_HIDPI_IMAGES = YES; + CURRENT_PROJECT_VERSION = 1; + DEFINES_MODULE = YES; + DYLIB_COMPATIBILITY_VERSION = 1; + DYLIB_CURRENT_VERSION = 1; + DYLIB_INSTALL_NAME_BASE = "@rpath"; + FRAMEWORK_SEARCH_PATHS = ( + "$(inherited)", + "$(PROJECT_DIR)/Carthage/Build/Mac", + ); + INFOPLIST_FILE = Framework/Info.plist; + INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; + LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/../Frameworks"; + PRODUCT_BUNDLE_IDENTIFIER = "com.project.Framework-macOS"; + PRODUCT_NAME = Framework; + SDKROOT = macosx; + SKIP_INSTALL = YES; + VERSIONING_SYSTEM = "apple-generic"; + }; + name = "Staging Release"; + }; + BC_0E087681CE92CC2069F9E562ECC9FD23 /* Staging Debug */ = { + isa = XCBuildConfiguration; + buildSettings = { + MY_SETTING = hello; + }; + name = "Staging Debug"; + }; + BC_0E104167F96EA087A23DFBE2430D5612 /* Production Debug */ = { + isa = XCBuildConfiguration; + buildSettings = { + PRODUCT_BUNDLE_IDENTIFIER = "com.project.StaticLibrary-ObjC-watchOS"; + PRODUCT_NAME = StaticLibrary_ObjC; + SDKROOT = watchos; + SKIP_INSTALL = YES; + TARGETED_DEVICE_FAMILY = 4; + }; + name = "Production Debug"; + }; + BC_11CBEB05340DE3C8F396B359A9144039 /* Staging Release */ = { + isa = XCBuildConfiguration; + buildSettings = { + COMBINE_HIDPI_IMAGES = YES; + INFOPLIST_FILE = "XPC Service/Info.plist"; + LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/../Frameworks"; + PRODUCT_BUNDLE_IDENTIFIER = com.project.XPCService; + SDKROOT = macosx; + }; + name = "Staging Release"; + }; + BC_120D6C5C7E4D1D6566CBD71E11C3DF37 /* Staging Debug */ = { + isa = XCBuildConfiguration; + buildSettings = { + CODE_SIGN_IDENTITY = ""; + COMBINE_HIDPI_IMAGES = YES; + CURRENT_PROJECT_VERSION = 1; + DEFINES_MODULE = YES; + DYLIB_COMPATIBILITY_VERSION = 1; + DYLIB_CURRENT_VERSION = 1; + DYLIB_INSTALL_NAME_BASE = "@rpath"; + FRAMEWORK_SEARCH_PATHS = ( + "$(inherited)", + "$(PROJECT_DIR)/Carthage/Build/Mac", + ); + INFOPLIST_FILE = Framework/Info.plist; + INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; + LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/../Frameworks"; + PRODUCT_BUNDLE_IDENTIFIER = "com.project.Framework-macOS"; + PRODUCT_NAME = Framework; + SDKROOT = macosx; + SKIP_INSTALL = YES; + VERSIONING_SYSTEM = "apple-generic"; + }; + name = "Staging Debug"; + }; + BC_1603C1C58A4D6AE1BD0707D13D2C8F44 /* Test Release */ = { + isa = XCBuildConfiguration; + buildSettings = { + CODE_SIGN_IDENTITY = ""; + CURRENT_PROJECT_VERSION = 1; + DEFINES_MODULE = YES; + DYLIB_COMPATIBILITY_VERSION = 1; + DYLIB_CURRENT_VERSION = 1; + DYLIB_INSTALL_NAME_BASE = "@rpath"; + FRAMEWORK_SEARCH_PATHS = ( + "$(inherited)", + "$(PROJECT_DIR)/Carthage/Build/tvOS", + ); + INFOPLIST_FILE = Framework/Info.plist; + INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; + LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks"; + PRODUCT_BUNDLE_IDENTIFIER = "com.project.Framework-tvOS"; + PRODUCT_NAME = Framework; + SDKROOT = appletvos; + SKIP_INSTALL = YES; + TARGETED_DEVICE_FAMILY = 3; + VERSIONING_SYSTEM = "apple-generic"; + }; + name = "Test Release"; + }; + BC_161B10E65E0BE143A17EADFA5EE88B3D /* Staging Debug */ = { + isa = XCBuildConfiguration; + buildSettings = { + ALWAYS_EMBED_SWIFT_STANDARD_LIBRARIES = YES; + ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon; + CODE_SIGN_IDENTITY = "iPhone Developer"; + FRAMEWORK_SEARCH_PATHS = ( + "$(inherited)", + "$(PROJECT_DIR)/Carthage/Build/iOS", + "\"Vendor\"", + ); + INFOPLIST_FILE = App_iOS/Info.plist; + LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks"; + OTHER_LDFLAGS = ( + "$(inherited)", + "-ObjC", + ); + PRODUCT_BUNDLE_IDENTIFIER = com.project.app; + SDKROOT = iphoneos; + TARGETED_DEVICE_FAMILY = "1,2"; + }; + name = "Staging Debug"; + }; + BC_16E1FCDA9DB6E70091B54603E4E6F58B /* Test Release */ = { + isa = XCBuildConfiguration; + buildSettings = { + ALWAYS_EMBED_SWIFT_STANDARD_LIBRARIES = YES; + FRAMEWORK_SEARCH_PATHS = ( + "$(inherited)", + "$(PROJECT_DIR)/Carthage/Build/watchOS", + ); + INFOPLIST_FILE = App_watchOS/Info.plist; + PRODUCT_BUNDLE_IDENTIFIER = com.project.app.watch; + SDKROOT = watchos; + SKIP_INSTALL = YES; + TARGETED_DEVICE_FAMILY = 4; + WATCHOS_DEPLOYMENT_TARGET = 3.0; + }; + name = "Test Release"; + }; + BC_1841B61F3F85EC24C4AACBC5C025BD08 /* Production Debug */ = { + isa = XCBuildConfiguration; + buildSettings = { + MY_SETTING = hello; + }; + name = "Production Debug"; + }; + BC_19CBA184C0BDC24CE3657C025A8FC279 /* Staging Release */ = { + isa = XCBuildConfiguration; + buildSettings = { + BUNDLE_LOADER = "$(TEST_HOST)"; + FRAMEWORK_SEARCH_PATHS = ( + "$(inherited)", + "$(PROJECT_DIR)/Carthage/Build/iOS", + ); + INFOPLIST_FILE = App_iOS_UITests/Info.plist; + LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks @loader_path/Frameworks"; + PRODUCT_BUNDLE_IDENTIFIER = "com.project.App-iOS-UITests"; + SDKROOT = iphoneos; + TARGETED_DEVICE_FAMILY = "1,2"; + TEST_TARGET_NAME = App_iOS; + }; + name = "Staging Release"; + }; + BC_19E3B21D0DA59BAF1B99899A35858D52 /* Test Release */ = { + isa = XCBuildConfiguration; + buildSettings = { + ALWAYS_SEARCH_USER_PATHS = NO; + BUNDLE_ID_SUFFIX = .test; + CLANG_ANALYZER_NONNULL = YES; + CLANG_ANALYZER_NUMBER_OBJECT_CONVERSION = YES_AGGRESSIVE; + CLANG_CXX_LANGUAGE_STANDARD = "gnu++14"; + CLANG_CXX_LIBRARY = "libc++"; + CLANG_ENABLE_MODULES = YES; + CLANG_ENABLE_OBJC_ARC = YES; + CLANG_WARN_BLOCK_CAPTURE_AUTORELEASING = YES; + CLANG_WARN_BOOL_CONVERSION = YES; + CLANG_WARN_COMMA = YES; + CLANG_WARN_CONSTANT_CONVERSION = YES; + CLANG_WARN_DEPRECATED_OBJC_IMPLEMENTATIONS = YES; + CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR; + CLANG_WARN_DOCUMENTATION_COMMENTS = YES; + CLANG_WARN_EMPTY_BODY = YES; + CLANG_WARN_ENUM_CONVERSION = YES; + CLANG_WARN_INFINITE_RECURSION = YES; + CLANG_WARN_INT_CONVERSION = YES; + CLANG_WARN_NON_LITERAL_NULL_CONVERSION = YES; + CLANG_WARN_OBJC_IMPLICIT_RETAIN_SELF = YES; + CLANG_WARN_OBJC_LITERAL_CONVERSION = YES; + CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR; + CLANG_WARN_RANGE_LOOP_ANALYSIS = YES; + CLANG_WARN_STRICT_PROTOTYPES = YES; + CLANG_WARN_SUSPICIOUS_MOVE = YES; + CLANG_WARN_UNGUARDED_AVAILABILITY = YES_AGGRESSIVE; + CLANG_WARN_UNREACHABLE_CODE = YES; + CLANG_WARN__DUPLICATE_METHOD_MATCH = YES; + COPY_PHASE_STRIP = NO; + DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym"; + ENABLE_NS_ASSERTIONS = NO; + ENABLE_STRICT_OBJC_MSGSEND = YES; + GCC_C_LANGUAGE_STANDARD = gnu11; + GCC_NO_COMMON_BLOCKS = YES; + GCC_WARN_64_TO_32_BIT_CONVERSION = YES; + GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR; + GCC_WARN_UNDECLARED_SELECTOR = YES; + GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; + GCC_WARN_UNUSED_FUNCTION = YES; + GCC_WARN_UNUSED_VARIABLE = YES; + PRODUCT_NAME = "$(TARGET_NAME)"; + SWIFT_OPTIMIZATION_LEVEL = "-Owholemodule"; + SWIFT_VERSION = 4.0; + VALIDATE_PRODUCT = YES; + WATCHOS_DEPLOYMENT_TARGET = 4.0; + }; + name = "Test Release"; + }; + BC_1CF7F7BC6E19981DCBBFE6FE2D9FCB62 /* Production Release */ = { + isa = XCBuildConfiguration; + buildSettings = { + ALWAYS_EMBED_SWIFT_STANDARD_LIBRARIES = YES; + ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon; + CODE_SIGN_IDENTITY = "iPhone Developer"; + FRAMEWORK_SEARCH_PATHS = ( + "$(inherited)", + "$(PROJECT_DIR)/Carthage/Build/iOS", + "\"Vendor\"", + ); + INFOPLIST_FILE = App_iOS/Info.plist; + LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks"; + OTHER_LDFLAGS = ( + "$(inherited)", + "-ObjC", + ); + PRODUCT_BUNDLE_IDENTIFIER = com.project.app; + SDKROOT = iphoneos; + TARGETED_DEVICE_FAMILY = "1,2"; + }; + name = "Production Release"; + }; + BC_1D9A30F2A4E9057FD8A7101D4AA4F47D /* Test Debug */ = { + isa = XCBuildConfiguration; + buildSettings = { + LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks"; + PRODUCT_BUNDLE_IDENTIFIER = "com.project.StaticLibrary-ObjC-iOS"; + PRODUCT_NAME = StaticLibrary_ObjC; + SDKROOT = iphoneos; + SKIP_INSTALL = YES; + TARGETED_DEVICE_FAMILY = "1,2"; + }; + name = "Test Debug"; + }; + BC_209579D4C144FB697FDD46843485CC6A /* Production Debug */ = { + isa = XCBuildConfiguration; + buildSettings = { + ALWAYS_SEARCH_USER_PATHS = NO; + CLANG_ANALYZER_NONNULL = YES; + CLANG_ANALYZER_NUMBER_OBJECT_CONVERSION = YES_AGGRESSIVE; + CLANG_CXX_LANGUAGE_STANDARD = "gnu++14"; + CLANG_CXX_LIBRARY = "libc++"; + CLANG_ENABLE_MODULES = YES; + CLANG_ENABLE_OBJC_ARC = YES; + CLANG_WARN_BLOCK_CAPTURE_AUTORELEASING = YES; + CLANG_WARN_BOOL_CONVERSION = YES; + CLANG_WARN_COMMA = YES; + CLANG_WARN_CONSTANT_CONVERSION = YES; + CLANG_WARN_DEPRECATED_OBJC_IMPLEMENTATIONS = YES; + CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR; + CLANG_WARN_DOCUMENTATION_COMMENTS = YES; + CLANG_WARN_EMPTY_BODY = YES; + CLANG_WARN_ENUM_CONVERSION = YES; + CLANG_WARN_INFINITE_RECURSION = YES; + CLANG_WARN_INT_CONVERSION = YES; + CLANG_WARN_NON_LITERAL_NULL_CONVERSION = YES; + CLANG_WARN_OBJC_IMPLICIT_RETAIN_SELF = YES; + CLANG_WARN_OBJC_LITERAL_CONVERSION = YES; + CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR; + CLANG_WARN_RANGE_LOOP_ANALYSIS = YES; + CLANG_WARN_STRICT_PROTOTYPES = YES; + CLANG_WARN_SUSPICIOUS_MOVE = YES; + CLANG_WARN_UNGUARDED_AVAILABILITY = YES_AGGRESSIVE; + CLANG_WARN_UNREACHABLE_CODE = YES; + CLANG_WARN__DUPLICATE_METHOD_MATCH = YES; + COPY_PHASE_STRIP = NO; + DEBUG_INFORMATION_FORMAT = dwarf; + ENABLE_STRICT_OBJC_MSGSEND = YES; + ENABLE_TESTABILITY = YES; + GCC_C_LANGUAGE_STANDARD = gnu11; + GCC_DYNAMIC_NO_PIC = NO; + GCC_NO_COMMON_BLOCKS = YES; + GCC_OPTIMIZATION_LEVEL = 0; + GCC_PREPROCESSOR_DEFINITIONS = ( + "$(inherited)", + "DEBUG=1", + ); + GCC_WARN_64_TO_32_BIT_CONVERSION = YES; + GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR; + GCC_WARN_UNDECLARED_SELECTOR = YES; + GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; + GCC_WARN_UNUSED_FUNCTION = YES; + GCC_WARN_UNUSED_VARIABLE = YES; + MTL_ENABLE_DEBUG_INFO = YES; + ONLY_ACTIVE_ARCH = YES; + PRODUCT_NAME = "$(TARGET_NAME)"; + SWIFT_ACTIVE_COMPILATION_CONDITIONS = DEBUG; + SWIFT_OPTIMIZATION_LEVEL = "-Onone"; + SWIFT_VERSION = 4.0; + WATCHOS_DEPLOYMENT_TARGET = 4.0; + }; + name = "Production Debug"; + }; + BC_22D59B57A805B62A266F803CCDD49C26 /* Test Release */ = { + isa = XCBuildConfiguration; + buildSettings = { + CODE_SIGN_IDENTITY = ""; + COMBINE_HIDPI_IMAGES = YES; + CURRENT_PROJECT_VERSION = 1; + DEFINES_MODULE = YES; + DYLIB_COMPATIBILITY_VERSION = 1; + DYLIB_CURRENT_VERSION = 1; + DYLIB_INSTALL_NAME_BASE = "@rpath"; + INFOPLIST_FILE = Framework/Info.plist; + INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; + LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/../Frameworks"; + PRODUCT_BUNDLE_IDENTIFIER = "com.project.Framework2-macOS"; + PRODUCT_NAME = Framework2; + SDKROOT = macosx; + SKIP_INSTALL = YES; + VERSIONING_SYSTEM = "apple-generic"; + }; + name = "Test Release"; + }; + BC_24042033AF9D3DEDAD53ACAF1C2BB0B2 /* Production Release */ = { + isa = XCBuildConfiguration; + buildSettings = { + CODE_SIGN_IDENTITY = ""; + CURRENT_PROJECT_VERSION = 1; + DEFINES_MODULE = YES; + DYLIB_COMPATIBILITY_VERSION = 1; + DYLIB_CURRENT_VERSION = 1; + DYLIB_INSTALL_NAME_BASE = "@rpath"; + INFOPLIST_FILE = Framework/Info.plist; + INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; + LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks"; + PRODUCT_BUNDLE_IDENTIFIER = "com.project.Framework2-tvOS"; + PRODUCT_NAME = Framework2; + SDKROOT = appletvos; + SKIP_INSTALL = YES; + TARGETED_DEVICE_FAMILY = 3; + VERSIONING_SYSTEM = "apple-generic"; + }; + name = "Production Release"; + }; + BC_27A94FA771ABEE02868BCED0690C89E1 /* Staging Debug */ = { + isa = XCBuildConfiguration; + buildSettings = { + CODE_SIGN_IDENTITY = ""; + COMBINE_HIDPI_IMAGES = YES; + CURRENT_PROJECT_VERSION = 1; + DEFINES_MODULE = YES; + DYLIB_COMPATIBILITY_VERSION = 1; + DYLIB_CURRENT_VERSION = 1; + DYLIB_INSTALL_NAME_BASE = "@rpath"; + INFOPLIST_FILE = Framework/Info.plist; + INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; + LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/../Frameworks"; + PRODUCT_BUNDLE_IDENTIFIER = "com.project.Framework2-macOS"; + PRODUCT_NAME = Framework2; + SDKROOT = macosx; + SKIP_INSTALL = YES; + VERSIONING_SYSTEM = "apple-generic"; + }; + name = "Staging Debug"; + }; + BC_291E5C210DD53C3B3A4C6057C2B9652A /* Production Release */ = { + isa = XCBuildConfiguration; + buildSettings = { + BUNDLE_LOADER = "$(TEST_HOST)"; + FRAMEWORK_SEARCH_PATHS = ( + "$(inherited)", + "$(PROJECT_DIR)/Carthage/Build/iOS", + ); + INFOPLIST_FILE = App_iOS_UITests/Info.plist; + LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks @loader_path/Frameworks"; + PRODUCT_BUNDLE_IDENTIFIER = "com.project.App-iOS-UITests"; + SDKROOT = iphoneos; + TARGETED_DEVICE_FAMILY = "1,2"; + TEST_TARGET_NAME = App_iOS; + }; + name = "Production Release"; + }; + BC_2D532F03F57D7D107FDAC3EF23DBFBFE /* Test Debug */ = { + isa = XCBuildConfiguration; + buildSettings = { + LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks"; + PRODUCT_BUNDLE_IDENTIFIER = com.project.Legacy; + SDKROOT = iphoneos; + TARGETED_DEVICE_FAMILY = "1,2"; + }; + name = "Test Debug"; + }; + BC_2DB4D72679A12506C6A8B4728F130B7D /* Staging Release */ = { + isa = XCBuildConfiguration; + buildSettings = { + LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks"; + PRODUCT_BUNDLE_IDENTIFIER = com.project.Legacy; + SDKROOT = iphoneos; + TARGETED_DEVICE_FAMILY = "1,2"; + }; + name = "Staging Release"; + }; + BC_2F352436A75D33C6D3337012367BE90C /* Staging Release */ = { + isa = XCBuildConfiguration; + buildSettings = { + ASSETCATALOG_COMPILER_APPICON_NAME = "iMessage App Icon"; + INFOPLIST_FILE = "IMessage MessagesExtension/Info.plist"; + LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks @executable_path/../../Frameworks"; + PRODUCT_BUNDLE_IDENTIFIER = com.project.iMessageApp.extension; + SDKROOT = iphoneos; + TARGETED_DEVICE_FAMILY = "1,2"; + }; + name = "Staging Release"; + }; + BC_3134697E7D6C32A5C4376C581C189D6B /* Test Release */ = { + isa = XCBuildConfiguration; + buildSettings = { + CODE_SIGN_IDENTITY = ""; + CURRENT_PROJECT_VERSION = 1; + DEFINES_MODULE = YES; + DYLIB_COMPATIBILITY_VERSION = 1; + DYLIB_CURRENT_VERSION = 1; + DYLIB_INSTALL_NAME_BASE = "@rpath"; + INFOPLIST_FILE = Framework/Info.plist; + INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; + LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks"; + PRODUCT_BUNDLE_IDENTIFIER = "com.project.Framework2-iOS"; + PRODUCT_NAME = Framework2; + SDKROOT = iphoneos; + SKIP_INSTALL = YES; + TARGETED_DEVICE_FAMILY = "1,2"; + VERSIONING_SYSTEM = "apple-generic"; + }; + name = "Test Release"; + }; + BC_313481FFED1411A2B5969B70EBA94383 /* Test Debug */ = { + isa = XCBuildConfiguration; + buildSettings = { + CODE_SIGN_IDENTITY = ""; + CURRENT_PROJECT_VERSION = 1; + DEFINES_MODULE = YES; + DYLIB_COMPATIBILITY_VERSION = 1; + DYLIB_CURRENT_VERSION = 1; + DYLIB_INSTALL_NAME_BASE = "@rpath"; + INFOPLIST_FILE = Framework/Info.plist; + INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; + LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks"; + PRODUCT_BUNDLE_IDENTIFIER = "com.project.Framework2-tvOS"; + PRODUCT_NAME = Framework2; + SDKROOT = appletvos; + SKIP_INSTALL = YES; + TARGETED_DEVICE_FAMILY = 3; + VERSIONING_SYSTEM = "apple-generic"; + }; + name = "Test Debug"; + }; + BC_3CCE54849732E01493DDDB7D86E033D4 /* Staging Debug */ = { + isa = XCBuildConfiguration; + buildSettings = { + ALWAYS_EMBED_SWIFT_STANDARD_LIBRARIES = YES; + FRAMEWORK_SEARCH_PATHS = ( + "$(inherited)", + "$(PROJECT_DIR)/Carthage/Build/watchOS", + ); + INFOPLIST_FILE = App_watchOS/Info.plist; + PRODUCT_BUNDLE_IDENTIFIER = com.project.app.watch; + SDKROOT = watchos; + SKIP_INSTALL = YES; + TARGETED_DEVICE_FAMILY = 4; + WATCHOS_DEPLOYMENT_TARGET = 3.0; + }; + name = "Staging Debug"; + }; + BC_3D9C1A83637AB10D5FFC5D4F8331091E /* Production Debug */ = { + isa = XCBuildConfiguration; + buildSettings = { + ASSETCATALOG_COMPILER_APPICON_NAME = "iMessage App Icon"; + INFOPLIST_FILE = "IMessage MessagesExtension/Info.plist"; + LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks @executable_path/../../Frameworks"; + PRODUCT_BUNDLE_IDENTIFIER = com.project.iMessageApp.extension; + SDKROOT = iphoneos; + TARGETED_DEVICE_FAMILY = "1,2"; + }; + name = "Production Debug"; + }; + BC_42C4FEAD23C2FE1A906F4D37F43182AB /* Production Release */ = { + isa = XCBuildConfiguration; + buildSettings = { + ALWAYS_EMBED_SWIFT_STANDARD_LIBRARIES = YES; + FRAMEWORK_SEARCH_PATHS = ( + "$(inherited)", + "$(PROJECT_DIR)/Carthage/Build/watchOS", + ); + INFOPLIST_FILE = App_watchOS/Info.plist; + PRODUCT_BUNDLE_IDENTIFIER = com.project.app.watch; + SDKROOT = watchos; + SKIP_INSTALL = YES; + TARGETED_DEVICE_FAMILY = 4; + WATCHOS_DEPLOYMENT_TARGET = 3.0; + }; + name = "Production Release"; + }; + BC_4346300D78CE0EC28B467470E8C4DB2E /* Production Release */ = { + isa = XCBuildConfiguration; + buildSettings = { + CODE_SIGN_IDENTITY = ""; + CURRENT_PROJECT_VERSION = 1; + DEFINES_MODULE = YES; + DYLIB_COMPATIBILITY_VERSION = 1; + DYLIB_CURRENT_VERSION = 1; + DYLIB_INSTALL_NAME_BASE = "@rpath"; + INFOPLIST_FILE = Framework/Info.plist; + INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; + LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks"; + PRODUCT_BUNDLE_IDENTIFIER = "com.project.Framework2-iOS"; + PRODUCT_NAME = Framework2; + SDKROOT = iphoneos; + SKIP_INSTALL = YES; + TARGETED_DEVICE_FAMILY = "1,2"; + VERSIONING_SYSTEM = "apple-generic"; + }; + name = "Production Release"; + }; + BC_46EDEC047C02E1E271BADF861EFB2F8D /* Test Release */ = { + isa = XCBuildConfiguration; + buildSettings = { + LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks"; + PRODUCT_BUNDLE_IDENTIFIER = "com.project.StaticLibrary-ObjC-tvOS"; + PRODUCT_NAME = StaticLibrary_ObjC; + SDKROOT = appletvos; + SKIP_INSTALL = YES; + TARGETED_DEVICE_FAMILY = 3; + }; + name = "Test Release"; + }; + BC_4AC83F754F5BB02C3019E8AE2303E966 /* Production Release */ = { + isa = XCBuildConfiguration; + buildSettings = { + ASSETCATALOG_COMPILER_COMPLICATION_NAME = Complication; + FRAMEWORK_SEARCH_PATHS = ( + "$(inherited)", + "$(PROJECT_DIR)/Carthage/Build/watchOS", + ); + INFOPLIST_FILE = "App_watchOS Extension/Info.plist"; + LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks @executable_path/../../Frameworks"; + PRODUCT_BUNDLE_IDENTIFIER = com.project.app.watch.extension; + SDKROOT = watchos; + SKIP_INSTALL = YES; + TARGETED_DEVICE_FAMILY = 4; + }; + name = "Production Release"; + }; + BC_4F7A9BAD8AB16D47ECA510689FB5F899 /* Staging Debug */ = { + isa = XCBuildConfiguration; + buildSettings = { + COMBINE_HIDPI_IMAGES = YES; + INFOPLIST_FILE = "XPC Service/Info.plist"; + LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/../Frameworks"; + PRODUCT_BUNDLE_IDENTIFIER = com.project.XPCService; + SDKROOT = macosx; + }; + name = "Staging Debug"; + }; + BC_50C3D866E3B57D83181A8F04E553F557 /* Production Debug */ = { + isa = XCBuildConfiguration; + buildSettings = { + INFOPLIST_FILE = IMessage/Info.plist; + LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks"; + PRODUCT_BUNDLE_IDENTIFIER = com.project.iMessageApp; + SDKROOT = iphoneos; + TARGETED_DEVICE_FAMILY = "1,2"; + }; + name = "Production Debug"; + }; + BC_53BBB90244275C55B50604E0DC26809E /* Staging Debug */ = { + isa = XCBuildConfiguration; + buildSettings = { + COMBINE_HIDPI_IMAGES = YES; + LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/../Frameworks"; + PRODUCT_BUNDLE_IDENTIFIER = "com.project.StaticLibrary-ObjC-macOS"; + PRODUCT_NAME = StaticLibrary_ObjC; + SDKROOT = macosx; + SKIP_INSTALL = YES; + }; + name = "Staging Debug"; + }; + BC_541CCB32267A890B3BABCE62FFE461E2 /* Test Release */ = { + isa = XCBuildConfiguration; + buildSettings = { + LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks"; + PRODUCT_BUNDLE_IDENTIFIER = "com.project.StaticLibrary-Swift"; + SDKROOT = iphoneos; + SKIP_INSTALL = YES; + TARGETED_DEVICE_FAMILY = "1,2"; + }; + name = "Test Release"; + }; + BC_54F3754420D0F7418AB42235B1D71751 /* Test Debug */ = { + isa = XCBuildConfiguration; + buildSettings = { + CODE_SIGN_IDENTITY = ""; + CURRENT_PROJECT_VERSION = 1; + DEFINES_MODULE = YES; + DYLIB_COMPATIBILITY_VERSION = 1; + DYLIB_CURRENT_VERSION = 1; + DYLIB_INSTALL_NAME_BASE = "@rpath"; + INFOPLIST_FILE = Framework/Info.plist; + INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; + LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks"; + PRODUCT_BUNDLE_IDENTIFIER = "com.project.Framework2-iOS"; + PRODUCT_NAME = Framework2; + SDKROOT = iphoneos; + SKIP_INSTALL = YES; + TARGETED_DEVICE_FAMILY = "1,2"; + VERSIONING_SYSTEM = "apple-generic"; + }; + name = "Test Debug"; + }; + BC_56B4C0BD8630088AECC29D1D7064530F /* Staging Debug */ = { + isa = XCBuildConfiguration; + buildSettings = { + PRODUCT_BUNDLE_IDENTIFIER = "com.project.StaticLibrary-ObjC-watchOS"; + PRODUCT_NAME = StaticLibrary_ObjC; + SDKROOT = watchos; + SKIP_INSTALL = YES; + TARGETED_DEVICE_FAMILY = 4; + }; + name = "Staging Debug"; + }; + BC_57D3973CA01D421550D834AFA79D2B4B /* Test Release */ = { + isa = XCBuildConfiguration; + buildSettings = { + MY_SETTING = hello; + }; + name = "Test Release"; + }; + BC_58D5B708B08789E2DFD4D60A906AAA6E /* Production Release */ = { + isa = XCBuildConfiguration; + buildSettings = { + CODE_SIGN_IDENTITY = ""; + COMBINE_HIDPI_IMAGES = YES; + CURRENT_PROJECT_VERSION = 1; + DEFINES_MODULE = YES; + DYLIB_COMPATIBILITY_VERSION = 1; + DYLIB_CURRENT_VERSION = 1; + DYLIB_INSTALL_NAME_BASE = "@rpath"; + FRAMEWORK_SEARCH_PATHS = ( + "$(inherited)", + "$(PROJECT_DIR)/Carthage/Build/Mac", + ); + INFOPLIST_FILE = Framework/Info.plist; + INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; + LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/../Frameworks"; + PRODUCT_BUNDLE_IDENTIFIER = "com.project.Framework-macOS"; + PRODUCT_NAME = Framework; + SDKROOT = macosx; + SKIP_INSTALL = YES; + VERSIONING_SYSTEM = "apple-generic"; + }; + name = "Production Release"; + }; + BC_5901F7B4A1799821B3061B5EA7C4A033 /* Production Debug */ = { + isa = XCBuildConfiguration; + buildSettings = { + BUNDLE_LOADER = "$(TEST_HOST)"; + FRAMEWORK_SEARCH_PATHS = ( + "$(inherited)", + "$(PROJECT_DIR)/Carthage/Build/iOS", + ); + INFOPLIST_FILE = App_iOS_Tests/Info.plist; + LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks @loader_path/Frameworks"; + PRODUCT_BUNDLE_IDENTIFIER = "com.project.App-iOS-Tests"; + SDKROOT = iphoneos; + TARGETED_DEVICE_FAMILY = "1,2"; + }; + name = "Production Debug"; + }; + BC_5951C33138E508D3E6CA672980D5F2B6 /* Staging Debug */ = { + isa = XCBuildConfiguration; + buildSettings = { + INFOPLIST_FILE = IMessage/Info.plist; + LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks"; + PRODUCT_BUNDLE_IDENTIFIER = com.project.iMessageApp; + SDKROOT = iphoneos; + TARGETED_DEVICE_FAMILY = "1,2"; + }; + name = "Staging Debug"; + }; + BC_5996DB19FBFE69C54C671E0624798C4B /* Test Debug */ = { + isa = XCBuildConfiguration; + buildSettings = { + LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks"; + PRODUCT_BUNDLE_IDENTIFIER = "com.project.StaticLibrary-Swift"; + SDKROOT = iphoneos; + SKIP_INSTALL = YES; + TARGETED_DEVICE_FAMILY = "1,2"; + }; + name = "Test Debug"; + }; + BC_5A05C344BCA2E54DFF945E68ECC21064 /* Test Debug */ = { isa = XCBuildConfiguration; buildSettings = { CODE_SIGN_IDENTITY = ""; @@ -2039,54 +2867,7 @@ }; name = "Test Debug"; }; - BC_122527152613 /* Test Release */ = { - isa = XCBuildConfiguration; - buildSettings = { - MY_SETTING = hello; - }; - name = "Test Release"; - }; - BC_128103534773 /* Production Release */ = { - isa = XCBuildConfiguration; - buildSettings = { - ALWAYS_EMBED_SWIFT_STANDARD_LIBRARIES = YES; - ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon; - CODE_SIGN_IDENTITY = "iPhone Developer"; - FRAMEWORK_SEARCH_PATHS = ( - "$(inherited)", - "$(PROJECT_DIR)/Carthage/Build/iOS", - "\"Vendor\"", - ); - INFOPLIST_FILE = App_iOS/Info.plist; - LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks"; - OTHER_LDFLAGS = ( - "$(inherited)", - "-ObjC", - ); - PRODUCT_BUNDLE_IDENTIFIER = com.project.app; - SDKROOT = iphoneos; - TARGETED_DEVICE_FAMILY = "1,2"; - }; - name = "Production Release"; - }; - BC_128566007109 /* Staging Release */ = { - isa = XCBuildConfiguration; - buildSettings = { - ALWAYS_EMBED_SWIFT_STANDARD_LIBRARIES = YES; - FRAMEWORK_SEARCH_PATHS = ( - "$(inherited)", - "$(PROJECT_DIR)/Carthage/Build/watchOS", - ); - INFOPLIST_FILE = App_watchOS/Info.plist; - PRODUCT_BUNDLE_IDENTIFIER = com.project.app.watch; - SDKROOT = watchos; - SKIP_INSTALL = YES; - TARGETED_DEVICE_FAMILY = 4; - WATCHOS_DEPLOYMENT_TARGET = 3.0; - }; - name = "Staging Release"; - }; - BC_129177384103 /* Test Release */ = { + BC_5B12F047BB0206FED25C955314A29B18 /* Production Release */ = { isa = XCBuildConfiguration; buildSettings = { LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks"; @@ -2094,9 +2875,9 @@ SDKROOT = iphoneos; TARGETED_DEVICE_FAMILY = "1,2"; }; - name = "Test Release"; + name = "Production Release"; }; - BC_132887277508 /* Production Debug */ = { + BC_5BC104FB79C437B79CC9D676B3B964D2 /* Production Release */ = { isa = XCBuildConfiguration; buildSettings = { CODE_SIGN_IDENTITY = ""; @@ -2105,19 +2886,33 @@ DYLIB_COMPATIBILITY_VERSION = 1; DYLIB_CURRENT_VERSION = 1; DYLIB_INSTALL_NAME_BASE = "@rpath"; + FRAMEWORK_SEARCH_PATHS = ( + "$(inherited)", + "$(PROJECT_DIR)/Carthage/Build/watchOS", + ); INFOPLIST_FILE = Framework/Info.plist; INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; - LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks"; - PRODUCT_BUNDLE_IDENTIFIER = "com.project.Framework2-tvOS"; - PRODUCT_NAME = Framework2; - SDKROOT = appletvos; + PRODUCT_BUNDLE_IDENTIFIER = "com.project.Framework-watchOS"; + PRODUCT_NAME = Framework; + SDKROOT = watchos; SKIP_INSTALL = YES; - TARGETED_DEVICE_FAMILY = 3; + TARGETED_DEVICE_FAMILY = 4; VERSIONING_SYSTEM = "apple-generic"; }; - name = "Production Debug"; + name = "Production Release"; }; - BC_142190149658 /* Production Debug */ = { + BC_5CA18B8A4079FC28EF3A05BDC5E4D501 /* Staging Debug */ = { + isa = XCBuildConfiguration; + buildSettings = { + LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks"; + PRODUCT_BUNDLE_IDENTIFIER = "com.project.StaticLibrary-Swift"; + SDKROOT = iphoneos; + SKIP_INSTALL = YES; + TARGETED_DEVICE_FAMILY = "1,2"; + }; + name = "Staging Debug"; + }; + BC_5CBE4F01DBB084436375039EFEDDE6E4 /* Production Debug */ = { isa = XCBuildConfiguration; buildSettings = { COMBINE_HIDPI_IMAGES = YES; @@ -2129,10 +2924,36 @@ }; name = "Production Debug"; }; - BC_162130726969 /* Test Release */ = { + BC_5D33E2C3F29594425D03B339108871CF /* Production Debug */ = { isa = XCBuildConfiguration; buildSettings = { CODE_SIGN_IDENTITY = ""; + COMBINE_HIDPI_IMAGES = YES; + CURRENT_PROJECT_VERSION = 1; + DEFINES_MODULE = YES; + DYLIB_COMPATIBILITY_VERSION = 1; + DYLIB_CURRENT_VERSION = 1; + DYLIB_INSTALL_NAME_BASE = "@rpath"; + FRAMEWORK_SEARCH_PATHS = ( + "$(inherited)", + "$(PROJECT_DIR)/Carthage/Build/Mac", + ); + INFOPLIST_FILE = Framework/Info.plist; + INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; + LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/../Frameworks"; + PRODUCT_BUNDLE_IDENTIFIER = "com.project.Framework-macOS"; + PRODUCT_NAME = Framework; + SDKROOT = macosx; + SKIP_INSTALL = YES; + VERSIONING_SYSTEM = "apple-generic"; + }; + name = "Production Debug"; + }; + BC_5D7B920759B10537602230A4B5520551 /* Production Release */ = { + isa = XCBuildConfiguration; + buildSettings = { + CODE_SIGN_IDENTITY = ""; + COMBINE_HIDPI_IMAGES = YES; CURRENT_PROJECT_VERSION = 1; DEFINES_MODULE = YES; DYLIB_COMPATIBILITY_VERSION = 1; @@ -2140,17 +2961,77 @@ DYLIB_INSTALL_NAME_BASE = "@rpath"; INFOPLIST_FILE = Framework/Info.plist; INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; - LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks"; - PRODUCT_BUNDLE_IDENTIFIER = "com.project.Framework2-iOS"; + LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/../Frameworks"; + PRODUCT_BUNDLE_IDENTIFIER = "com.project.Framework2-macOS"; PRODUCT_NAME = Framework2; + SDKROOT = macosx; + SKIP_INSTALL = YES; + VERSIONING_SYSTEM = "apple-generic"; + }; + name = "Production Release"; + }; + BC_606DC3CBE672B2D9CA4B68FF6F55762D /* Production Debug */ = { + isa = XCBuildConfiguration; + buildSettings = { + LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks"; + PRODUCT_BUNDLE_IDENTIFIER = "com.project.StaticLibrary-Swift"; SDKROOT = iphoneos; SKIP_INSTALL = YES; TARGETED_DEVICE_FAMILY = "1,2"; + }; + name = "Production Debug"; + }; + BC_6396C78E99C21A774B9819DC09D88BD7 /* Staging Debug */ = { + isa = XCBuildConfiguration; + buildSettings = { + ASSETCATALOG_COMPILER_COMPLICATION_NAME = Complication; + FRAMEWORK_SEARCH_PATHS = ( + "$(inherited)", + "$(PROJECT_DIR)/Carthage/Build/watchOS", + ); + INFOPLIST_FILE = "App_watchOS Extension/Info.plist"; + LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks @executable_path/../../Frameworks"; + PRODUCT_BUNDLE_IDENTIFIER = com.project.app.watch.extension; + SDKROOT = watchos; + SKIP_INSTALL = YES; + TARGETED_DEVICE_FAMILY = 4; + }; + name = "Staging Debug"; + }; + BC_63E4D52E21696EFA858D20EA01500612 /* Test Debug */ = { + isa = XCBuildConfiguration; + buildSettings = { + COMBINE_HIDPI_IMAGES = YES; + LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/../Frameworks"; + PRODUCT_BUNDLE_IDENTIFIER = "com.project.StaticLibrary-ObjC-macOS"; + PRODUCT_NAME = StaticLibrary_ObjC; + SDKROOT = macosx; + SKIP_INSTALL = YES; + }; + name = "Test Debug"; + }; + BC_656BA4FF26F3FB2ECFA5F81D7E133C94 /* Production Debug */ = { + isa = XCBuildConfiguration; + buildSettings = { + CODE_SIGN_IDENTITY = ""; + COMBINE_HIDPI_IMAGES = YES; + CURRENT_PROJECT_VERSION = 1; + DEFINES_MODULE = YES; + DYLIB_COMPATIBILITY_VERSION = 1; + DYLIB_CURRENT_VERSION = 1; + DYLIB_INSTALL_NAME_BASE = "@rpath"; + INFOPLIST_FILE = Framework/Info.plist; + INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; + LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/../Frameworks"; + PRODUCT_BUNDLE_IDENTIFIER = "com.project.Framework2-macOS"; + PRODUCT_NAME = Framework2; + SDKROOT = macosx; + SKIP_INSTALL = YES; VERSIONING_SYSTEM = "apple-generic"; }; - name = "Test Release"; + name = "Production Debug"; }; - BC_167564962969 /* Staging Release */ = { + BC_679AB0D3CA0237CCB4B711609C0CB16A /* Production Release */ = { isa = XCBuildConfiguration; buildSettings = { ASSETCATALOG_COMPILER_APPICON_NAME = "iMessage App Icon"; @@ -2160,134 +3041,9 @@ SDKROOT = iphoneos; TARGETED_DEVICE_FAMILY = "1,2"; }; - name = "Staging Release"; - }; - BC_192293528117 /* Production Release */ = { - isa = XCBuildConfiguration; - buildSettings = { - LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks"; - PRODUCT_BUNDLE_IDENTIFIER = "com.project.StaticLibrary-ObjC-iOS"; - PRODUCT_NAME = StaticLibrary_ObjC; - SDKROOT = iphoneos; - SKIP_INSTALL = YES; - TARGETED_DEVICE_FAMILY = "1,2"; - }; name = "Production Release"; }; - BC_192679864336 /* Test Debug */ = { - isa = XCBuildConfiguration; - buildSettings = { - COMBINE_HIDPI_IMAGES = YES; - LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/../Frameworks"; - PRODUCT_BUNDLE_IDENTIFIER = "com.project.StaticLibrary-ObjC-macOS"; - PRODUCT_NAME = StaticLibrary_ObjC; - SDKROOT = macosx; - SKIP_INSTALL = YES; - }; - name = "Test Debug"; - }; - BC_208278321332 /* Production Debug */ = { - isa = XCBuildConfiguration; - buildSettings = { - LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks"; - PRODUCT_BUNDLE_IDENTIFIER = "com.project.StaticLibrary-ObjC-tvOS"; - PRODUCT_NAME = StaticLibrary_ObjC; - SDKROOT = appletvos; - SKIP_INSTALL = YES; - TARGETED_DEVICE_FAMILY = 3; - }; - name = "Production Debug"; - }; - BC_210307580165 /* Staging Release */ = { - isa = XCBuildConfiguration; - buildSettings = { - BUNDLE_LOADER = "$(TEST_HOST)"; - FRAMEWORK_SEARCH_PATHS = ( - "$(inherited)", - "$(PROJECT_DIR)/Carthage/Build/iOS", - ); - INFOPLIST_FILE = App_iOS_Tests/Info.plist; - LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks @loader_path/Frameworks"; - PRODUCT_BUNDLE_IDENTIFIER = "com.project.App-iOS-Tests"; - SDKROOT = iphoneos; - TARGETED_DEVICE_FAMILY = "1,2"; - }; - name = "Staging Release"; - }; - BC_210338877784 /* Test Release */ = { - isa = XCBuildConfiguration; - buildSettings = { - CODE_SIGN_IDENTITY = ""; - CURRENT_PROJECT_VERSION = 1; - DEFINES_MODULE = YES; - DYLIB_COMPATIBILITY_VERSION = 1; - DYLIB_CURRENT_VERSION = 1; - DYLIB_INSTALL_NAME_BASE = "@rpath"; - FRAMEWORK_SEARCH_PATHS = ( - "$(inherited)", - "$(PROJECT_DIR)/Carthage/Build/iOS", - ); - INFOPLIST_FILE = Framework/Info.plist; - INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; - LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks"; - PRODUCT_BUNDLE_IDENTIFIER = "com.project.Framework-iOS"; - PRODUCT_NAME = Framework; - SDKROOT = iphoneos; - SKIP_INSTALL = YES; - TARGETED_DEVICE_FAMILY = "1,2"; - VERSIONING_SYSTEM = "apple-generic"; - }; - name = "Test Release"; - }; - BC_213267780961 /* Production Debug */ = { - isa = XCBuildConfiguration; - buildSettings = { - COMBINE_HIDPI_IMAGES = YES; - INFOPLIST_FILE = "XPC Service/Info.plist"; - LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/../Frameworks"; - PRODUCT_BUNDLE_IDENTIFIER = com.project.XPCService; - SDKROOT = macosx; - }; - name = "Production Debug"; - }; - BC_233005332042 /* Test Release */ = { - isa = XCBuildConfiguration; - buildSettings = { - CODE_SIGN_IDENTITY = ""; - CURRENT_PROJECT_VERSION = 1; - DEFINES_MODULE = YES; - DYLIB_COMPATIBILITY_VERSION = 1; - DYLIB_CURRENT_VERSION = 1; - DYLIB_INSTALL_NAME_BASE = "@rpath"; - INFOPLIST_FILE = Framework/Info.plist; - INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; - LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks"; - PRODUCT_BUNDLE_IDENTIFIER = "com.project.Framework2-tvOS"; - PRODUCT_NAME = Framework2; - SDKROOT = appletvos; - SKIP_INSTALL = YES; - TARGETED_DEVICE_FAMILY = 3; - VERSIONING_SYSTEM = "apple-generic"; - }; - name = "Test Release"; - }; - BC_240587562436 /* Test Debug */ = { - isa = XCBuildConfiguration; - buildSettings = { - BUNDLE_LOADER = "$(TEST_HOST)"; - FRAMEWORK_SEARCH_PATHS = ( - "$(inherited)", - "$(PROJECT_DIR)/Carthage/Build/iOS", - ); - INFOPLIST_FILE = App_iOS_Tests/Info.plist; - LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks @loader_path/Frameworks"; - PRODUCT_BUNDLE_IDENTIFIER = "com.project.App-iOS-Tests"; - SDKROOT = iphoneos; - TARGETED_DEVICE_FAMILY = "1,2"; - }; - name = "Test Debug"; - }; - BC_242096321611 /* Production Release */ = { + BC_6851DF4113AFF271AA5DD6D587181A03 /* Production Release */ = { isa = XCBuildConfiguration; buildSettings = { ALWAYS_SEARCH_USER_PATHS = NO; @@ -2338,18 +3094,7 @@ }; name = "Production Release"; }; - BC_249152711841 /* Test Release */ = { - isa = XCBuildConfiguration; - buildSettings = { - INFOPLIST_FILE = IMessage/Info.plist; - LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks"; - PRODUCT_BUNDLE_IDENTIFIER = com.project.iMessageApp; - SDKROOT = iphoneos; - TARGETED_DEVICE_FAMILY = "1,2"; - }; - name = "Test Release"; - }; - BC_257261481133 /* Staging Release */ = { + BC_689C05D134F6C4AB2A86666C7C2D1E8F /* Staging Release */ = { isa = XCBuildConfiguration; buildSettings = { BUNDLE_LOADER = "$(TEST_HOST)"; @@ -2357,145 +3102,52 @@ "$(inherited)", "$(PROJECT_DIR)/Carthage/Build/iOS", ); - INFOPLIST_FILE = App_iOS_UITests/Info.plist; + INFOPLIST_FILE = App_iOS_Tests/Info.plist; LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks @loader_path/Frameworks"; - PRODUCT_BUNDLE_IDENTIFIER = "com.project.App-iOS-UITests"; + PRODUCT_BUNDLE_IDENTIFIER = "com.project.App-iOS-Tests"; SDKROOT = iphoneos; TARGETED_DEVICE_FAMILY = "1,2"; - TEST_TARGET_NAME = App_iOS; }; name = "Staging Release"; }; - BC_264139320591 /* Test Release */ = { + BC_69E8021CB05224B9CAC27F6AFA1763CA /* Staging Debug */ = { isa = XCBuildConfiguration; buildSettings = { LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks"; - PRODUCT_BUNDLE_IDENTIFIER = "com.project.StaticLibrary-Swift"; - SDKROOT = iphoneos; + PRODUCT_BUNDLE_IDENTIFIER = "com.project.StaticLibrary-ObjC-tvOS"; + PRODUCT_NAME = StaticLibrary_ObjC; + SDKROOT = appletvos; SKIP_INSTALL = YES; - TARGETED_DEVICE_FAMILY = "1,2"; + TARGETED_DEVICE_FAMILY = 3; }; - name = "Test Release"; + name = "Staging Debug"; }; - BC_264159662496 /* Test Release */ = { + BC_6A4D0B334934E5E4901A4164AD2DF70A /* Staging Release */ = { isa = XCBuildConfiguration; buildSettings = { - ALWAYS_EMBED_SWIFT_STANDARD_LIBRARIES = YES; - FRAMEWORK_SEARCH_PATHS = ( - "$(inherited)", - "$(PROJECT_DIR)/Carthage/Build/watchOS", - ); - INFOPLIST_FILE = App_watchOS/Info.plist; - PRODUCT_BUNDLE_IDENTIFIER = com.project.app.watch; - SDKROOT = watchos; - SKIP_INSTALL = YES; - TARGETED_DEVICE_FAMILY = 4; - WATCHOS_DEPLOYMENT_TARGET = 3.0; - }; - name = "Test Release"; - }; - BC_265230327262 /* Staging Release */ = { - isa = XCBuildConfiguration; - buildSettings = { - ALWAYS_EMBED_SWIFT_STANDARD_LIBRARIES = YES; - ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon; - CODE_SIGN_IDENTITY = "iPhone Developer"; + CODE_SIGN_IDENTITY = ""; + CURRENT_PROJECT_VERSION = 1; + DEFINES_MODULE = YES; + DYLIB_COMPATIBILITY_VERSION = 1; + DYLIB_CURRENT_VERSION = 1; + DYLIB_INSTALL_NAME_BASE = "@rpath"; FRAMEWORK_SEARCH_PATHS = ( "$(inherited)", "$(PROJECT_DIR)/Carthage/Build/iOS", - "\"Vendor\"", - ); - INFOPLIST_FILE = App_iOS/Info.plist; - LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks"; - OTHER_LDFLAGS = ( - "$(inherited)", - "-ObjC", - ); - PRODUCT_BUNDLE_IDENTIFIER = com.project.app; - SDKROOT = iphoneos; - TARGETED_DEVICE_FAMILY = "1,2"; - }; - name = "Staging Release"; - }; - BC_275347760107 /* Production Debug */ = { - isa = XCBuildConfiguration; - buildSettings = { - CODE_SIGN_IDENTITY = ""; - CURRENT_PROJECT_VERSION = 1; - DEFINES_MODULE = YES; - DYLIB_COMPATIBILITY_VERSION = 1; - DYLIB_CURRENT_VERSION = 1; - DYLIB_INSTALL_NAME_BASE = "@rpath"; - FRAMEWORK_SEARCH_PATHS = ( - "$(inherited)", - "$(PROJECT_DIR)/Carthage/Build/tvOS", ); INFOPLIST_FILE = Framework/Info.plist; INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks"; - PRODUCT_BUNDLE_IDENTIFIER = "com.project.Framework-tvOS"; + PRODUCT_BUNDLE_IDENTIFIER = "com.project.Framework-iOS"; PRODUCT_NAME = Framework; - SDKROOT = appletvos; - SKIP_INSTALL = YES; - TARGETED_DEVICE_FAMILY = 3; - VERSIONING_SYSTEM = "apple-generic"; - }; - name = "Production Debug"; - }; - BC_275754663824 /* Staging Release */ = { - isa = XCBuildConfiguration; - buildSettings = { - INFOPLIST_FILE = IMessage/Info.plist; - LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks"; - PRODUCT_BUNDLE_IDENTIFIER = com.project.iMessageApp; SDKROOT = iphoneos; + SKIP_INSTALL = YES; TARGETED_DEVICE_FAMILY = "1,2"; + VERSIONING_SYSTEM = "apple-generic"; }; name = "Staging Release"; }; - BC_280651168996 /* Production Debug */ = { - isa = XCBuildConfiguration; - buildSettings = { - ALWAYS_EMBED_SWIFT_STANDARD_LIBRARIES = YES; - ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon; - COMBINE_HIDPI_IMAGES = YES; - FRAMEWORK_SEARCH_PATHS = ( - "$(inherited)", - "$(PROJECT_DIR)/Carthage/Build/Mac", - ); - INFOPLIST_FILE = App_macOS/Info.plist; - LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/../Frameworks"; - OTHER_LDFLAGS = ( - "$(inherited)", - "-ObjC", - ); - PRODUCT_BUNDLE_IDENTIFIER = "com.project.App-macOS"; - SDKROOT = macosx; - }; - name = "Production Debug"; - }; - BC_282993316269 /* Production Release */ = { - isa = XCBuildConfiguration; - buildSettings = { - CODE_SIGN_IDENTITY = ""; - CURRENT_PROJECT_VERSION = 1; - DEFINES_MODULE = YES; - DYLIB_COMPATIBILITY_VERSION = 1; - DYLIB_CURRENT_VERSION = 1; - DYLIB_INSTALL_NAME_BASE = "@rpath"; - INFOPLIST_FILE = Framework/Info.plist; - INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; - LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks"; - PRODUCT_BUNDLE_IDENTIFIER = "com.project.Framework2-tvOS"; - PRODUCT_NAME = Framework2; - SDKROOT = appletvos; - SKIP_INSTALL = YES; - TARGETED_DEVICE_FAMILY = 3; - VERSIONING_SYSTEM = "apple-generic"; - }; - name = "Production Release"; - }; - BC_282993554784 /* Production Release */ = { + BC_6D1ED651D660692438EF3196506DC5AD /* Test Release */ = { isa = XCBuildConfiguration; buildSettings = { CODE_SIGN_IDENTITY = ""; @@ -2518,9 +3170,20 @@ SKIP_INSTALL = YES; VERSIONING_SYSTEM = "apple-generic"; }; + name = "Test Release"; + }; + BC_6EDDF7399F4EE2E8226F9D006C31ACB1 /* Production Release */ = { + isa = XCBuildConfiguration; + buildSettings = { + PRODUCT_BUNDLE_IDENTIFIER = "com.project.StaticLibrary-ObjC-watchOS"; + PRODUCT_NAME = StaticLibrary_ObjC; + SDKROOT = watchos; + SKIP_INSTALL = YES; + TARGETED_DEVICE_FAMILY = 4; + }; name = "Production Release"; }; - BC_283605270658 /* Staging Debug */ = { + BC_71D19FC08A12CCAB1A85C7A5320A451A /* Test Debug */ = { isa = XCBuildConfiguration; buildSettings = { CODE_SIGN_IDENTITY = ""; @@ -2529,47 +3192,60 @@ DYLIB_COMPATIBILITY_VERSION = 1; DYLIB_CURRENT_VERSION = 1; DYLIB_INSTALL_NAME_BASE = "@rpath"; + FRAMEWORK_SEARCH_PATHS = ( + "$(inherited)", + "$(PROJECT_DIR)/Carthage/Build/iOS", + ); INFOPLIST_FILE = Framework/Info.plist; INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks"; - PRODUCT_BUNDLE_IDENTIFIER = "com.project.Framework2-iOS"; - PRODUCT_NAME = Framework2; + PRODUCT_BUNDLE_IDENTIFIER = "com.project.Framework-iOS"; + PRODUCT_NAME = Framework; SDKROOT = iphoneos; SKIP_INSTALL = YES; TARGETED_DEVICE_FAMILY = "1,2"; VERSIONING_SYSTEM = "apple-generic"; }; - name = "Staging Debug"; + name = "Test Debug"; }; - BC_296138297674 /* Test Release */ = { + BC_724E9BA97FC0605F596460587FFD4C61 /* Production Debug */ = { isa = XCBuildConfiguration; buildSettings = { - ASSETCATALOG_COMPILER_COMPLICATION_NAME = Complication; + CODE_SIGN_IDENTITY = ""; + CURRENT_PROJECT_VERSION = 1; + DEFINES_MODULE = YES; + DYLIB_COMPATIBILITY_VERSION = 1; + DYLIB_CURRENT_VERSION = 1; + DYLIB_INSTALL_NAME_BASE = "@rpath"; FRAMEWORK_SEARCH_PATHS = ( "$(inherited)", - "$(PROJECT_DIR)/Carthage/Build/watchOS", + "$(PROJECT_DIR)/Carthage/Build/iOS", ); - INFOPLIST_FILE = "App_watchOS Extension/Info.plist"; - LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks @executable_path/../../Frameworks"; - PRODUCT_BUNDLE_IDENTIFIER = com.project.app.watch.extension; - SDKROOT = watchos; + INFOPLIST_FILE = Framework/Info.plist; + INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; + LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks"; + PRODUCT_BUNDLE_IDENTIFIER = "com.project.Framework-iOS"; + PRODUCT_NAME = Framework; + SDKROOT = iphoneos; SKIP_INSTALL = YES; - TARGETED_DEVICE_FAMILY = 4; + TARGETED_DEVICE_FAMILY = "1,2"; + VERSIONING_SYSTEM = "apple-generic"; }; - name = "Test Release"; + name = "Production Debug"; }; - BC_301490151478 /* Staging Debug */ = { + BC_7477F8344D6D7313C39D897C1864F1B7 /* Test Release */ = { isa = XCBuildConfiguration; buildSettings = { - INFOPLIST_FILE = IMessage/Info.plist; - LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks"; - PRODUCT_BUNDLE_IDENTIFIER = com.project.iMessageApp; + ASSETCATALOG_COMPILER_APPICON_NAME = "iMessage App Icon"; + INFOPLIST_FILE = "IMessage MessagesExtension/Info.plist"; + LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks @executable_path/../../Frameworks"; + PRODUCT_BUNDLE_IDENTIFIER = com.project.iMessageApp.extension; SDKROOT = iphoneos; TARGETED_DEVICE_FAMILY = "1,2"; }; - name = "Staging Debug"; + name = "Test Release"; }; - BC_309031681908 /* Test Debug */ = { + BC_7527094FD7492E6A964EC95E7378EF22 /* Test Debug */ = { isa = XCBuildConfiguration; buildSettings = { ASSETCATALOG_COMPILER_APPICON_NAME = "iMessage App Icon"; @@ -2581,7 +3257,210 @@ }; name = "Test Debug"; }; - BC_313103118526 /* Staging Debug */ = { + BC_791A2E3F88BE34E647BEE192E06BBA74 /* Test Debug */ = { + isa = XCBuildConfiguration; + buildSettings = { + LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks"; + PRODUCT_BUNDLE_IDENTIFIER = "com.project.StaticLibrary-ObjC-tvOS"; + PRODUCT_NAME = StaticLibrary_ObjC; + SDKROOT = appletvos; + SKIP_INSTALL = YES; + TARGETED_DEVICE_FAMILY = 3; + }; + name = "Test Debug"; + }; + BC_7A2C8B05671807E16D816BD7F0436418 /* Test Release */ = { + isa = XCBuildConfiguration; + buildSettings = { + INFOPLIST_FILE = IMessage/Info.plist; + LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks"; + PRODUCT_BUNDLE_IDENTIFIER = com.project.iMessageApp; + SDKROOT = iphoneos; + TARGETED_DEVICE_FAMILY = "1,2"; + }; + name = "Test Release"; + }; + BC_7BA9BA11D163D5F132FE6FFBA4DA1AB8 /* Test Release */ = { + isa = XCBuildConfiguration; + buildSettings = { + LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks"; + PRODUCT_BUNDLE_IDENTIFIER = com.project.Legacy; + SDKROOT = iphoneos; + TARGETED_DEVICE_FAMILY = "1,2"; + }; + name = "Test Release"; + }; + BC_7D0687E6BFF4B05D03341A00447B5070 /* Production Release */ = { + isa = XCBuildConfiguration; + buildSettings = { + LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks"; + PRODUCT_BUNDLE_IDENTIFIER = "com.project.StaticLibrary-ObjC-iOS"; + PRODUCT_NAME = StaticLibrary_ObjC; + SDKROOT = iphoneos; + SKIP_INSTALL = YES; + TARGETED_DEVICE_FAMILY = "1,2"; + }; + name = "Production Release"; + }; + BC_80331E927C4BB7E48B375DB00FD90281 /* Production Debug */ = { + isa = XCBuildConfiguration; + buildSettings = { + ALWAYS_EMBED_SWIFT_STANDARD_LIBRARIES = YES; + ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon; + COMBINE_HIDPI_IMAGES = YES; + FRAMEWORK_SEARCH_PATHS = ( + "$(inherited)", + "$(PROJECT_DIR)/Carthage/Build/Mac", + ); + INFOPLIST_FILE = App_macOS/Info.plist; + LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/../Frameworks"; + OTHER_LDFLAGS = ( + "$(inherited)", + "-ObjC", + ); + PRODUCT_BUNDLE_IDENTIFIER = "com.project.App-macOS"; + SDKROOT = macosx; + }; + name = "Production Debug"; + }; + BC_80FA279C7B3455A79612ECAB12C9E8F6 /* Test Release */ = { + isa = XCBuildConfiguration; + buildSettings = { + COMBINE_HIDPI_IMAGES = YES; + INFOPLIST_FILE = "XPC Service/Info.plist"; + LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/../Frameworks"; + PRODUCT_BUNDLE_IDENTIFIER = com.project.XPCService; + SDKROOT = macosx; + }; + name = "Test Release"; + }; + BC_833320F190FC427049CDF16E1B1AF316 /* Test Release */ = { + isa = XCBuildConfiguration; + buildSettings = { + BUNDLE_LOADER = "$(TEST_HOST)"; + FRAMEWORK_SEARCH_PATHS = ( + "$(inherited)", + "$(PROJECT_DIR)/Carthage/Build/iOS", + ); + INFOPLIST_FILE = App_iOS_Tests/Info.plist; + LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks @loader_path/Frameworks"; + PRODUCT_BUNDLE_IDENTIFIER = "com.project.App-iOS-Tests"; + SDKROOT = iphoneos; + TARGETED_DEVICE_FAMILY = "1,2"; + }; + name = "Test Release"; + }; + BC_83922E2AEA387FB9ABF402C3F401DBA1 /* Test Release */ = { + isa = XCBuildConfiguration; + buildSettings = { + CODE_SIGN_IDENTITY = ""; + CURRENT_PROJECT_VERSION = 1; + DEFINES_MODULE = YES; + DYLIB_COMPATIBILITY_VERSION = 1; + DYLIB_CURRENT_VERSION = 1; + DYLIB_INSTALL_NAME_BASE = "@rpath"; + INFOPLIST_FILE = Framework/Info.plist; + INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; + PRODUCT_BUNDLE_IDENTIFIER = "com.project.Framework2-watchOS"; + PRODUCT_NAME = Framework2; + SDKROOT = watchos; + SKIP_INSTALL = YES; + TARGETED_DEVICE_FAMILY = 4; + VERSIONING_SYSTEM = "apple-generic"; + }; + name = "Test Release"; + }; + BC_8433EE3901A89DD2CDDE9F61906433E5 /* Test Release */ = { + isa = XCBuildConfiguration; + buildSettings = { + COMBINE_HIDPI_IMAGES = YES; + LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/../Frameworks"; + PRODUCT_BUNDLE_IDENTIFIER = "com.project.StaticLibrary-ObjC-macOS"; + PRODUCT_NAME = StaticLibrary_ObjC; + SDKROOT = macosx; + SKIP_INSTALL = YES; + }; + name = "Test Release"; + }; + BC_853248A59437336C149C6DD8E6E4A208 /* Production Debug */ = { + isa = XCBuildConfiguration; + buildSettings = { + ALWAYS_EMBED_SWIFT_STANDARD_LIBRARIES = YES; + FRAMEWORK_SEARCH_PATHS = ( + "$(inherited)", + "$(PROJECT_DIR)/Carthage/Build/watchOS", + ); + INFOPLIST_FILE = App_watchOS/Info.plist; + PRODUCT_BUNDLE_IDENTIFIER = com.project.app.watch; + SDKROOT = watchos; + SKIP_INSTALL = YES; + TARGETED_DEVICE_FAMILY = 4; + WATCHOS_DEPLOYMENT_TARGET = 3.0; + }; + name = "Production Debug"; + }; + BC_85A9D050B594B6F44602E90470E75818 /* Staging Debug */ = { + isa = XCBuildConfiguration; + buildSettings = { + CODE_SIGN_IDENTITY = ""; + CURRENT_PROJECT_VERSION = 1; + DEFINES_MODULE = YES; + DYLIB_COMPATIBILITY_VERSION = 1; + DYLIB_CURRENT_VERSION = 1; + DYLIB_INSTALL_NAME_BASE = "@rpath"; + INFOPLIST_FILE = Framework/Info.plist; + INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; + PRODUCT_BUNDLE_IDENTIFIER = "com.project.Framework2-watchOS"; + PRODUCT_NAME = Framework2; + SDKROOT = watchos; + SKIP_INSTALL = YES; + TARGETED_DEVICE_FAMILY = 4; + VERSIONING_SYSTEM = "apple-generic"; + }; + name = "Staging Debug"; + }; + BC_8624FCCF5B865B80E0B21BA20FA0FAC5 /* Test Release */ = { + isa = XCBuildConfiguration; + buildSettings = { + CODE_SIGN_IDENTITY = ""; + CURRENT_PROJECT_VERSION = 1; + DEFINES_MODULE = YES; + DYLIB_COMPATIBILITY_VERSION = 1; + DYLIB_CURRENT_VERSION = 1; + DYLIB_INSTALL_NAME_BASE = "@rpath"; + INFOPLIST_FILE = Framework/Info.plist; + INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; + LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks"; + PRODUCT_BUNDLE_IDENTIFIER = "com.project.Framework2-tvOS"; + PRODUCT_NAME = Framework2; + SDKROOT = appletvos; + SKIP_INSTALL = YES; + TARGETED_DEVICE_FAMILY = 3; + VERSIONING_SYSTEM = "apple-generic"; + }; + name = "Test Release"; + }; + BC_865AB65A39A201C7BF448737D287EF85 /* Staging Release */ = { + isa = XCBuildConfiguration; + buildSettings = { + CODE_SIGN_IDENTITY = ""; + CURRENT_PROJECT_VERSION = 1; + DEFINES_MODULE = YES; + DYLIB_COMPATIBILITY_VERSION = 1; + DYLIB_CURRENT_VERSION = 1; + DYLIB_INSTALL_NAME_BASE = "@rpath"; + INFOPLIST_FILE = Framework/Info.plist; + INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; + PRODUCT_BUNDLE_IDENTIFIER = "com.project.Framework2-watchOS"; + PRODUCT_NAME = Framework2; + SDKROOT = watchos; + SKIP_INSTALL = YES; + TARGETED_DEVICE_FAMILY = 4; + VERSIONING_SYSTEM = "apple-generic"; + }; + name = "Staging Release"; + }; + BC_874C935D654D12F1F106CBEFBC4D2074 /* Staging Debug */ = { isa = XCBuildConfiguration; buildSettings = { CODE_SIGN_IDENTITY = ""; @@ -2606,7 +3485,17 @@ }; name = "Staging Debug"; }; - BC_317429236477 /* Production Release */ = { + BC_8895B9B729A8000331A682AF912CA229 /* Staging Debug */ = { + isa = XCBuildConfiguration; + buildSettings = { + LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks"; + PRODUCT_BUNDLE_IDENTIFIER = com.project.Legacy; + SDKROOT = iphoneos; + TARGETED_DEVICE_FAMILY = "1,2"; + }; + name = "Staging Debug"; + }; + BC_88D810589CFF611B0D20C0CB47822274 /* Staging Debug */ = { isa = XCBuildConfiguration; buildSettings = { CODE_SIGN_IDENTITY = ""; @@ -2617,35 +3506,17 @@ DYLIB_INSTALL_NAME_BASE = "@rpath"; INFOPLIST_FILE = Framework/Info.plist; INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; - PRODUCT_BUNDLE_IDENTIFIER = "com.project.Framework2-watchOS"; - PRODUCT_NAME = Framework2; - SDKROOT = watchos; - SKIP_INSTALL = YES; - TARGETED_DEVICE_FAMILY = 4; - VERSIONING_SYSTEM = "apple-generic"; - }; - name = "Production Release"; - }; - BC_334821934458 /* Production Release */ = { - isa = XCBuildConfiguration; - buildSettings = { - MY_SETTING = hello; - }; - name = "Production Release"; - }; - BC_338399173120 /* Test Release */ = { - isa = XCBuildConfiguration; - buildSettings = { LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks"; - PRODUCT_BUNDLE_IDENTIFIER = "com.project.StaticLibrary-ObjC-tvOS"; - PRODUCT_NAME = StaticLibrary_ObjC; + PRODUCT_BUNDLE_IDENTIFIER = "com.project.Framework2-tvOS"; + PRODUCT_NAME = Framework2; SDKROOT = appletvos; SKIP_INSTALL = YES; TARGETED_DEVICE_FAMILY = 3; + VERSIONING_SYSTEM = "apple-generic"; }; - name = "Test Release"; + name = "Staging Debug"; }; - BC_345911583907 /* Staging Release */ = { + BC_89C8C1848F2559C9E46F22CB83CDB25A /* Staging Release */ = { isa = XCBuildConfiguration; buildSettings = { CODE_SIGN_IDENTITY = ""; @@ -2666,7 +3537,35 @@ }; name = "Staging Release"; }; - BC_351179072988 /* Test Debug */ = { + BC_904676A8DD86F548E50090FAA97FD9E1 /* Production Release */ = { + isa = XCBuildConfiguration; + buildSettings = { + MY_SETTING = hello; + }; + name = "Production Release"; + }; + BC_9081CEAEC2FCC555B0BFC28B4EEDF0D6 /* Staging Release */ = { + isa = XCBuildConfiguration; + buildSettings = { + CODE_SIGN_IDENTITY = ""; + COMBINE_HIDPI_IMAGES = YES; + CURRENT_PROJECT_VERSION = 1; + DEFINES_MODULE = YES; + DYLIB_COMPATIBILITY_VERSION = 1; + DYLIB_CURRENT_VERSION = 1; + DYLIB_INSTALL_NAME_BASE = "@rpath"; + INFOPLIST_FILE = Framework/Info.plist; + INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; + LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/../Frameworks"; + PRODUCT_BUNDLE_IDENTIFIER = "com.project.Framework2-macOS"; + PRODUCT_NAME = Framework2; + SDKROOT = macosx; + SKIP_INSTALL = YES; + VERSIONING_SYSTEM = "apple-generic"; + }; + name = "Staging Release"; + }; + BC_917ABD477C99455FF6BE1A89107FDEC9 /* Test Release */ = { isa = XCBuildConfiguration; buildSettings = { CODE_SIGN_IDENTITY = ""; @@ -2689,98 +3588,49 @@ TARGETED_DEVICE_FAMILY = "1,2"; VERSIONING_SYSTEM = "apple-generic"; }; - name = "Test Debug"; - }; - BC_355674198163 /* Production Debug */ = { - isa = XCBuildConfiguration; - buildSettings = { - BUNDLE_LOADER = "$(TEST_HOST)"; - FRAMEWORK_SEARCH_PATHS = ( - "$(inherited)", - "$(PROJECT_DIR)/Carthage/Build/iOS", - ); - INFOPLIST_FILE = App_iOS_UITests/Info.plist; - LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks @loader_path/Frameworks"; - PRODUCT_BUNDLE_IDENTIFIER = "com.project.App-iOS-UITests"; - SDKROOT = iphoneos; - TARGETED_DEVICE_FAMILY = "1,2"; - TEST_TARGET_NAME = App_iOS; - }; - name = "Production Debug"; - }; - BC_368555321779 /* Production Release */ = { - isa = XCBuildConfiguration; - buildSettings = { - BUNDLE_LOADER = "$(TEST_HOST)"; - FRAMEWORK_SEARCH_PATHS = ( - "$(inherited)", - "$(PROJECT_DIR)/Carthage/Build/iOS", - ); - INFOPLIST_FILE = App_iOS_Tests/Info.plist; - LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks @loader_path/Frameworks"; - PRODUCT_BUNDLE_IDENTIFIER = "com.project.App-iOS-Tests"; - SDKROOT = iphoneos; - TARGETED_DEVICE_FAMILY = "1,2"; - }; - name = "Production Release"; - }; - BC_370290618113 /* Production Debug */ = { - isa = XCBuildConfiguration; - buildSettings = { - MY_SETTING = hello; - }; - name = "Production Debug"; - }; - BC_380703106572 /* Test Release */ = { - isa = XCBuildConfiguration; - buildSettings = { - CODE_SIGN_IDENTITY = ""; - CURRENT_PROJECT_VERSION = 1; - DEFINES_MODULE = YES; - DYLIB_COMPATIBILITY_VERSION = 1; - DYLIB_CURRENT_VERSION = 1; - DYLIB_INSTALL_NAME_BASE = "@rpath"; - FRAMEWORK_SEARCH_PATHS = ( - "$(inherited)", - "$(PROJECT_DIR)/Carthage/Build/tvOS", - ); - INFOPLIST_FILE = Framework/Info.plist; - INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; - LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks"; - PRODUCT_BUNDLE_IDENTIFIER = "com.project.Framework-tvOS"; - PRODUCT_NAME = Framework; - SDKROOT = appletvos; - SKIP_INSTALL = YES; - TARGETED_DEVICE_FAMILY = 3; - VERSIONING_SYSTEM = "apple-generic"; - }; name = "Test Release"; }; - BC_381577484690 /* Production Release */ = { + BC_919006DE8A7D104D16D1D4C0AB2CC241 /* Staging Release */ = { isa = XCBuildConfiguration; buildSettings = { - CODE_SIGN_IDENTITY = ""; - CURRENT_PROJECT_VERSION = 1; - DEFINES_MODULE = YES; - DYLIB_COMPATIBILITY_VERSION = 1; - DYLIB_CURRENT_VERSION = 1; - DYLIB_INSTALL_NAME_BASE = "@rpath"; + ALWAYS_EMBED_SWIFT_STANDARD_LIBRARIES = YES; FRAMEWORK_SEARCH_PATHS = ( "$(inherited)", "$(PROJECT_DIR)/Carthage/Build/watchOS", ); - INFOPLIST_FILE = Framework/Info.plist; - INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; - PRODUCT_BUNDLE_IDENTIFIER = "com.project.Framework-watchOS"; - PRODUCT_NAME = Framework; + INFOPLIST_FILE = App_watchOS/Info.plist; + PRODUCT_BUNDLE_IDENTIFIER = com.project.app.watch; SDKROOT = watchos; SKIP_INSTALL = YES; TARGETED_DEVICE_FAMILY = 4; - VERSIONING_SYSTEM = "apple-generic"; + WATCHOS_DEPLOYMENT_TARGET = 3.0; }; - name = "Production Release"; + name = "Staging Release"; }; - BC_397339763951 /* Staging Debug */ = { + BC_9360F45D8F5B06962ACEBF423299C71B /* Staging Release */ = { + isa = XCBuildConfiguration; + buildSettings = { + LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks"; + PRODUCT_BUNDLE_IDENTIFIER = "com.project.StaticLibrary-ObjC-tvOS"; + PRODUCT_NAME = StaticLibrary_ObjC; + SDKROOT = appletvos; + SKIP_INSTALL = YES; + TARGETED_DEVICE_FAMILY = 3; + }; + name = "Staging Release"; + }; + BC_93685F04BC9D8657E5D7B62B22E043AF /* Staging Release */ = { + isa = XCBuildConfiguration; + buildSettings = { + INFOPLIST_FILE = IMessage/Info.plist; + LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks"; + PRODUCT_BUNDLE_IDENTIFIER = com.project.iMessageApp; + SDKROOT = iphoneos; + TARGETED_DEVICE_FAMILY = "1,2"; + }; + name = "Staging Release"; + }; + BC_96931434222054E6D7469B6B4EC67E87 /* Staging Debug */ = { isa = XCBuildConfiguration; buildSettings = { ALWAYS_SEARCH_USER_PATHS = NO; @@ -2840,7 +3690,7 @@ }; name = "Staging Debug"; }; - BC_424897564588 /* Staging Debug */ = { + BC_98CCC502104C412E1F48BB2F610EA45E /* Staging Release */ = { isa = XCBuildConfiguration; buildSettings = { LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks"; @@ -2849,60 +3699,9 @@ SKIP_INSTALL = YES; TARGETED_DEVICE_FAMILY = "1,2"; }; - name = "Staging Debug"; + name = "Staging Release"; }; - BC_437463937945 /* Production Release */ = { - isa = XCBuildConfiguration; - buildSettings = { - BUNDLE_LOADER = "$(TEST_HOST)"; - FRAMEWORK_SEARCH_PATHS = ( - "$(inherited)", - "$(PROJECT_DIR)/Carthage/Build/iOS", - ); - INFOPLIST_FILE = App_iOS_UITests/Info.plist; - LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks @loader_path/Frameworks"; - PRODUCT_BUNDLE_IDENTIFIER = "com.project.App-iOS-UITests"; - SDKROOT = iphoneos; - TARGETED_DEVICE_FAMILY = "1,2"; - TEST_TARGET_NAME = App_iOS; - }; - name = "Production Release"; - }; - BC_439666751882 /* Staging Debug */ = { - isa = XCBuildConfiguration; - buildSettings = { - MY_SETTING = hello; - }; - name = "Staging Debug"; - }; - BC_444705348320 /* Staging Debug */ = { - isa = XCBuildConfiguration; - buildSettings = { - LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks"; - PRODUCT_BUNDLE_IDENTIFIER = com.project.Legacy; - SDKROOT = iphoneos; - TARGETED_DEVICE_FAMILY = "1,2"; - }; - name = "Staging Debug"; - }; - BC_447998896881 /* Test Debug */ = { - isa = XCBuildConfiguration; - buildSettings = { - BUNDLE_LOADER = "$(TEST_HOST)"; - FRAMEWORK_SEARCH_PATHS = ( - "$(inherited)", - "$(PROJECT_DIR)/Carthage/Build/iOS", - ); - INFOPLIST_FILE = App_iOS_UITests/Info.plist; - LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks @loader_path/Frameworks"; - PRODUCT_BUNDLE_IDENTIFIER = "com.project.App-iOS-UITests"; - SDKROOT = iphoneos; - TARGETED_DEVICE_FAMILY = "1,2"; - TEST_TARGET_NAME = App_iOS; - }; - name = "Test Debug"; - }; - BC_456712168038 /* Production Debug */ = { + BC_9B4D15D591EA1FDE03F33A0EE5B01DAB /* Production Release */ = { isa = XCBuildConfiguration; buildSettings = { LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks"; @@ -2911,121 +3710,9 @@ SKIP_INSTALL = YES; TARGETED_DEVICE_FAMILY = "1,2"; }; - name = "Production Debug"; - }; - BC_462061816889 /* Staging Release */ = { - isa = XCBuildConfiguration; - buildSettings = { - COMBINE_HIDPI_IMAGES = YES; - LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/../Frameworks"; - PRODUCT_BUNDLE_IDENTIFIER = "com.project.StaticLibrary-ObjC-macOS"; - PRODUCT_NAME = StaticLibrary_ObjC; - SDKROOT = macosx; - SKIP_INSTALL = YES; - }; - name = "Staging Release"; - }; - BC_467730755629 /* Production Release */ = { - isa = XCBuildConfiguration; - buildSettings = { - LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks"; - PRODUCT_BUNDLE_IDENTIFIER = com.project.Legacy; - SDKROOT = iphoneos; - TARGETED_DEVICE_FAMILY = "1,2"; - }; name = "Production Release"; }; - BC_469509245400 /* Production Debug */ = { - isa = XCBuildConfiguration; - buildSettings = { - CODE_SIGN_IDENTITY = ""; - COMBINE_HIDPI_IMAGES = YES; - CURRENT_PROJECT_VERSION = 1; - DEFINES_MODULE = YES; - DYLIB_COMPATIBILITY_VERSION = 1; - DYLIB_CURRENT_VERSION = 1; - DYLIB_INSTALL_NAME_BASE = "@rpath"; - INFOPLIST_FILE = Framework/Info.plist; - INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; - LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/../Frameworks"; - PRODUCT_BUNDLE_IDENTIFIER = "com.project.Framework2-macOS"; - PRODUCT_NAME = Framework2; - SDKROOT = macosx; - SKIP_INSTALL = YES; - VERSIONING_SYSTEM = "apple-generic"; - }; - name = "Production Debug"; - }; - BC_470682595853 /* Production Release */ = { - isa = XCBuildConfiguration; - buildSettings = { - ALWAYS_EMBED_SWIFT_STANDARD_LIBRARIES = YES; - FRAMEWORK_SEARCH_PATHS = ( - "$(inherited)", - "$(PROJECT_DIR)/Carthage/Build/watchOS", - ); - INFOPLIST_FILE = App_watchOS/Info.plist; - PRODUCT_BUNDLE_IDENTIFIER = com.project.app.watch; - SDKROOT = watchos; - SKIP_INSTALL = YES; - TARGETED_DEVICE_FAMILY = 4; - WATCHOS_DEPLOYMENT_TARGET = 3.0; - }; - name = "Production Release"; - }; - BC_474716674004 /* Test Release */ = { - isa = XCBuildConfiguration; - buildSettings = { - BUNDLE_LOADER = "$(TEST_HOST)"; - FRAMEWORK_SEARCH_PATHS = ( - "$(inherited)", - "$(PROJECT_DIR)/Carthage/Build/iOS", - ); - INFOPLIST_FILE = App_iOS_UITests/Info.plist; - LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks @loader_path/Frameworks"; - PRODUCT_BUNDLE_IDENTIFIER = "com.project.App-iOS-UITests"; - SDKROOT = iphoneos; - TARGETED_DEVICE_FAMILY = "1,2"; - TEST_TARGET_NAME = App_iOS; - }; - name = "Test Release"; - }; - BC_479820670317 /* Staging Release */ = { - isa = XCBuildConfiguration; - buildSettings = { - LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks"; - PRODUCT_BUNDLE_IDENTIFIER = "com.project.StaticLibrary-ObjC-tvOS"; - PRODUCT_NAME = StaticLibrary_ObjC; - SDKROOT = appletvos; - SKIP_INSTALL = YES; - TARGETED_DEVICE_FAMILY = 3; - }; - name = "Staging Release"; - }; - BC_480688547948 /* Staging Debug */ = { - isa = XCBuildConfiguration; - buildSettings = { - ALWAYS_EMBED_SWIFT_STANDARD_LIBRARIES = YES; - ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon; - CODE_SIGN_IDENTITY = "iPhone Developer"; - FRAMEWORK_SEARCH_PATHS = ( - "$(inherited)", - "$(PROJECT_DIR)/Carthage/Build/iOS", - "\"Vendor\"", - ); - INFOPLIST_FILE = App_iOS/Info.plist; - LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks"; - OTHER_LDFLAGS = ( - "$(inherited)", - "-ObjC", - ); - PRODUCT_BUNDLE_IDENTIFIER = com.project.app; - SDKROOT = iphoneos; - TARGETED_DEVICE_FAMILY = "1,2"; - }; - name = "Staging Debug"; - }; - BC_488246438798 /* Production Debug */ = { + BC_9CAC5683B65F9EA32F4A78810EAE488B /* Staging Debug */ = { isa = XCBuildConfiguration; buildSettings = { ASSETCATALOG_COMPILER_APPICON_NAME = "iMessage App Icon"; @@ -3035,110 +3722,26 @@ SDKROOT = iphoneos; TARGETED_DEVICE_FAMILY = "1,2"; }; - name = "Production Debug"; - }; - BC_493052429980 /* Production Release */ = { - isa = XCBuildConfiguration; - buildSettings = { - CODE_SIGN_IDENTITY = ""; - CURRENT_PROJECT_VERSION = 1; - DEFINES_MODULE = YES; - DYLIB_COMPATIBILITY_VERSION = 1; - DYLIB_CURRENT_VERSION = 1; - DYLIB_INSTALL_NAME_BASE = "@rpath"; - INFOPLIST_FILE = Framework/Info.plist; - INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; - LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks"; - PRODUCT_BUNDLE_IDENTIFIER = "com.project.Framework2-iOS"; - PRODUCT_NAME = Framework2; - SDKROOT = iphoneos; - SKIP_INSTALL = YES; - TARGETED_DEVICE_FAMILY = "1,2"; - VERSIONING_SYSTEM = "apple-generic"; - }; - name = "Production Release"; - }; - BC_493052431451 /* Production Release */ = { - isa = XCBuildConfiguration; - buildSettings = { - CODE_SIGN_IDENTITY = ""; - CURRENT_PROJECT_VERSION = 1; - DEFINES_MODULE = YES; - DYLIB_COMPATIBILITY_VERSION = 1; - DYLIB_CURRENT_VERSION = 1; - DYLIB_INSTALL_NAME_BASE = "@rpath"; - FRAMEWORK_SEARCH_PATHS = ( - "$(inherited)", - "$(PROJECT_DIR)/Carthage/Build/tvOS", - ); - INFOPLIST_FILE = Framework/Info.plist; - INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; - LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks"; - PRODUCT_BUNDLE_IDENTIFIER = "com.project.Framework-tvOS"; - PRODUCT_NAME = Framework; - SDKROOT = appletvos; - SKIP_INSTALL = YES; - TARGETED_DEVICE_FAMILY = 3; - VERSIONING_SYSTEM = "apple-generic"; - }; - name = "Production Release"; - }; - BC_495401711721 /* Staging Debug */ = { - isa = XCBuildConfiguration; - buildSettings = { - PRODUCT_BUNDLE_IDENTIFIER = "com.project.StaticLibrary-ObjC-watchOS"; - PRODUCT_NAME = StaticLibrary_ObjC; - SDKROOT = watchos; - SKIP_INSTALL = YES; - TARGETED_DEVICE_FAMILY = 4; - }; name = "Staging Debug"; }; - BC_496162047138 /* Test Debug */ = { + BC_9CDD286FAE4CE2FC296246C95A178023 /* Production Debug */ = { isa = XCBuildConfiguration; buildSettings = { - CODE_SIGN_IDENTITY = ""; - CURRENT_PROJECT_VERSION = 1; - DEFINES_MODULE = YES; - DYLIB_COMPATIBILITY_VERSION = 1; - DYLIB_CURRENT_VERSION = 1; - DYLIB_INSTALL_NAME_BASE = "@rpath"; - INFOPLIST_FILE = Framework/Info.plist; - INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; - PRODUCT_BUNDLE_IDENTIFIER = "com.project.Framework2-watchOS"; - PRODUCT_NAME = Framework2; - SDKROOT = watchos; - SKIP_INSTALL = YES; - TARGETED_DEVICE_FAMILY = 4; - VERSIONING_SYSTEM = "apple-generic"; - }; - name = "Test Debug"; - }; - BC_499325041919 /* Production Debug */ = { - isa = XCBuildConfiguration; - buildSettings = { - CODE_SIGN_IDENTITY = ""; - CURRENT_PROJECT_VERSION = 1; - DEFINES_MODULE = YES; - DYLIB_COMPATIBILITY_VERSION = 1; - DYLIB_CURRENT_VERSION = 1; - DYLIB_INSTALL_NAME_BASE = "@rpath"; + BUNDLE_LOADER = "$(TEST_HOST)"; FRAMEWORK_SEARCH_PATHS = ( "$(inherited)", - "$(PROJECT_DIR)/Carthage/Build/watchOS", + "$(PROJECT_DIR)/Carthage/Build/iOS", ); - INFOPLIST_FILE = Framework/Info.plist; - INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; - PRODUCT_BUNDLE_IDENTIFIER = "com.project.Framework-watchOS"; - PRODUCT_NAME = Framework; - SDKROOT = watchos; - SKIP_INSTALL = YES; - TARGETED_DEVICE_FAMILY = 4; - VERSIONING_SYSTEM = "apple-generic"; + INFOPLIST_FILE = App_iOS_UITests/Info.plist; + LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks @loader_path/Frameworks"; + PRODUCT_BUNDLE_IDENTIFIER = "com.project.App-iOS-UITests"; + SDKROOT = iphoneos; + TARGETED_DEVICE_FAMILY = "1,2"; + TEST_TARGET_NAME = App_iOS; }; name = "Production Debug"; }; - BC_504862512837 /* Production Debug */ = { + BC_9EA5ADC667D6445EB2976A3CA508E70D /* Staging Release */ = { isa = XCBuildConfiguration; buildSettings = { ASSETCATALOG_COMPILER_COMPLICATION_NAME = Complication; @@ -3153,128 +3756,44 @@ SKIP_INSTALL = YES; TARGETED_DEVICE_FAMILY = 4; }; - name = "Production Debug"; - }; - BC_507219048168 /* Production Debug */ = { - isa = XCBuildConfiguration; - buildSettings = { - INFOPLIST_FILE = IMessage/Info.plist; - LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks"; - PRODUCT_BUNDLE_IDENTIFIER = com.project.iMessageApp; - SDKROOT = iphoneos; - TARGETED_DEVICE_FAMILY = "1,2"; - }; - name = "Production Debug"; - }; - BC_516808329453 /* Test Release */ = { - isa = XCBuildConfiguration; - buildSettings = { - CODE_SIGN_IDENTITY = ""; - COMBINE_HIDPI_IMAGES = YES; - CURRENT_PROJECT_VERSION = 1; - DEFINES_MODULE = YES; - DYLIB_COMPATIBILITY_VERSION = 1; - DYLIB_CURRENT_VERSION = 1; - DYLIB_INSTALL_NAME_BASE = "@rpath"; - INFOPLIST_FILE = Framework/Info.plist; - INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; - LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/../Frameworks"; - PRODUCT_BUNDLE_IDENTIFIER = "com.project.Framework2-macOS"; - PRODUCT_NAME = Framework2; - SDKROOT = macosx; - SKIP_INSTALL = YES; - VERSIONING_SYSTEM = "apple-generic"; - }; - name = "Test Release"; - }; - BC_517306343059 /* Staging Release */ = { - isa = XCBuildConfiguration; - buildSettings = { - CODE_SIGN_IDENTITY = ""; - CURRENT_PROJECT_VERSION = 1; - DEFINES_MODULE = YES; - DYLIB_COMPATIBILITY_VERSION = 1; - DYLIB_CURRENT_VERSION = 1; - DYLIB_INSTALL_NAME_BASE = "@rpath"; - FRAMEWORK_SEARCH_PATHS = ( - "$(inherited)", - "$(PROJECT_DIR)/Carthage/Build/iOS", - ); - INFOPLIST_FILE = Framework/Info.plist; - INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; - LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks"; - PRODUCT_BUNDLE_IDENTIFIER = "com.project.Framework-iOS"; - PRODUCT_NAME = Framework; - SDKROOT = iphoneos; - SKIP_INSTALL = YES; - TARGETED_DEVICE_FAMILY = "1,2"; - VERSIONING_SYSTEM = "apple-generic"; - }; name = "Staging Release"; }; - BC_525459892506 /* Production Debug */ = { + BC_9F1E5E527BE355504381023DED9562C9 /* Staging Debug */ = { isa = XCBuildConfiguration; buildSettings = { - ALWAYS_EMBED_SWIFT_STANDARD_LIBRARIES = YES; + CODE_SIGN_IDENTITY = ""; + CURRENT_PROJECT_VERSION = 1; + DEFINES_MODULE = YES; + DYLIB_COMPATIBILITY_VERSION = 1; + DYLIB_CURRENT_VERSION = 1; + DYLIB_INSTALL_NAME_BASE = "@rpath"; FRAMEWORK_SEARCH_PATHS = ( "$(inherited)", "$(PROJECT_DIR)/Carthage/Build/watchOS", ); - INFOPLIST_FILE = App_watchOS/Info.plist; - PRODUCT_BUNDLE_IDENTIFIER = com.project.app.watch; + INFOPLIST_FILE = Framework/Info.plist; + INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; + PRODUCT_BUNDLE_IDENTIFIER = "com.project.Framework-watchOS"; + PRODUCT_NAME = Framework; SDKROOT = watchos; SKIP_INSTALL = YES; TARGETED_DEVICE_FAMILY = 4; - WATCHOS_DEPLOYMENT_TARGET = 3.0; + VERSIONING_SYSTEM = "apple-generic"; + }; + name = "Staging Debug"; + }; + BC_9F549905032A4927CF6B843899EF5775 /* Production Debug */ = { + isa = XCBuildConfiguration; + buildSettings = { + COMBINE_HIDPI_IMAGES = YES; + INFOPLIST_FILE = "XPC Service/Info.plist"; + LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/../Frameworks"; + PRODUCT_BUNDLE_IDENTIFIER = com.project.XPCService; + SDKROOT = macosx; }; name = "Production Debug"; }; - BC_530610845178 /* Staging Release */ = { - isa = XCBuildConfiguration; - buildSettings = { - PRODUCT_BUNDLE_IDENTIFIER = "com.project.StaticLibrary-ObjC-watchOS"; - PRODUCT_NAME = StaticLibrary_ObjC; - SDKROOT = watchos; - SKIP_INSTALL = YES; - TARGETED_DEVICE_FAMILY = 4; - }; - name = "Staging Release"; - }; - BC_530755208334 /* Test Release */ = { - isa = XCBuildConfiguration; - buildSettings = { - ALWAYS_EMBED_SWIFT_STANDARD_LIBRARIES = YES; - ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon; - CODE_SIGN_IDENTITY = "iPhone Developer"; - FRAMEWORK_SEARCH_PATHS = ( - "$(inherited)", - "$(PROJECT_DIR)/Carthage/Build/iOS", - "\"Vendor\"", - ); - INFOPLIST_FILE = App_iOS/Info.plist; - LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks"; - OTHER_LDFLAGS = ( - "$(inherited)", - "-ObjC", - ); - PRODUCT_BUNDLE_IDENTIFIER = com.project.app; - SDKROOT = iphoneos; - TARGETED_DEVICE_FAMILY = "1,2"; - }; - name = "Test Release"; - }; - BC_530814251927 /* Test Debug */ = { - isa = XCBuildConfiguration; - buildSettings = { - LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks"; - PRODUCT_BUNDLE_IDENTIFIER = "com.project.StaticLibrary-Swift"; - SDKROOT = iphoneos; - SKIP_INSTALL = YES; - TARGETED_DEVICE_FAMILY = "1,2"; - }; - name = "Test Debug"; - }; - BC_533481109982 /* Staging Debug */ = { + BC_A3FC5819178DDC45D4D2249ECCCA158D /* Staging Debug */ = { isa = XCBuildConfiguration; buildSettings = { CODE_SIGN_IDENTITY = ""; @@ -3299,84 +3818,7 @@ }; name = "Staging Debug"; }; - BC_536614240472 /* Test Release */ = { - isa = XCBuildConfiguration; - buildSettings = { - CODE_SIGN_IDENTITY = ""; - CURRENT_PROJECT_VERSION = 1; - DEFINES_MODULE = YES; - DYLIB_COMPATIBILITY_VERSION = 1; - DYLIB_CURRENT_VERSION = 1; - DYLIB_INSTALL_NAME_BASE = "@rpath"; - INFOPLIST_FILE = Framework/Info.plist; - INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; - PRODUCT_BUNDLE_IDENTIFIER = "com.project.Framework2-watchOS"; - PRODUCT_NAME = Framework2; - SDKROOT = watchos; - SKIP_INSTALL = YES; - TARGETED_DEVICE_FAMILY = 4; - VERSIONING_SYSTEM = "apple-generic"; - }; - name = "Test Release"; - }; - BC_556794548954 /* Staging Debug */ = { - isa = XCBuildConfiguration; - buildSettings = { - LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks"; - PRODUCT_BUNDLE_IDENTIFIER = "com.project.StaticLibrary-ObjC-iOS"; - PRODUCT_NAME = StaticLibrary_ObjC; - SDKROOT = iphoneos; - SKIP_INSTALL = YES; - TARGETED_DEVICE_FAMILY = "1,2"; - }; - name = "Staging Debug"; - }; - BC_563308786207 /* Staging Debug */ = { - isa = XCBuildConfiguration; - buildSettings = { - CODE_SIGN_IDENTITY = ""; - CURRENT_PROJECT_VERSION = 1; - DEFINES_MODULE = YES; - DYLIB_COMPATIBILITY_VERSION = 1; - DYLIB_CURRENT_VERSION = 1; - DYLIB_INSTALL_NAME_BASE = "@rpath"; - FRAMEWORK_SEARCH_PATHS = ( - "$(inherited)", - "$(PROJECT_DIR)/Carthage/Build/watchOS", - ); - INFOPLIST_FILE = Framework/Info.plist; - INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; - PRODUCT_BUNDLE_IDENTIFIER = "com.project.Framework-watchOS"; - PRODUCT_NAME = Framework; - SDKROOT = watchos; - SKIP_INSTALL = YES; - TARGETED_DEVICE_FAMILY = 4; - VERSIONING_SYSTEM = "apple-generic"; - }; - name = "Staging Debug"; - }; - BC_563702409464 /* Staging Debug */ = { - isa = XCBuildConfiguration; - buildSettings = { - ALWAYS_EMBED_SWIFT_STANDARD_LIBRARIES = YES; - ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon; - COMBINE_HIDPI_IMAGES = YES; - FRAMEWORK_SEARCH_PATHS = ( - "$(inherited)", - "$(PROJECT_DIR)/Carthage/Build/Mac", - ); - INFOPLIST_FILE = App_macOS/Info.plist; - LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/../Frameworks"; - OTHER_LDFLAGS = ( - "$(inherited)", - "-ObjC", - ); - PRODUCT_BUNDLE_IDENTIFIER = "com.project.App-macOS"; - SDKROOT = macosx; - }; - name = "Staging Debug"; - }; - BC_568886047790 /* Production Debug */ = { + BC_A46551B496D75A9F6D5FF83C2308DC79 /* Test Debug */ = { isa = XCBuildConfiguration; buildSettings = { BUNDLE_LOADER = "$(TEST_HOST)"; @@ -3390,713 +3832,9 @@ SDKROOT = iphoneos; TARGETED_DEVICE_FAMILY = "1,2"; }; - name = "Production Debug"; - }; - BC_568928282286 /* Test Debug */ = { - isa = XCBuildConfiguration; - buildSettings = { - ALWAYS_EMBED_SWIFT_STANDARD_LIBRARIES = YES; - FRAMEWORK_SEARCH_PATHS = ( - "$(inherited)", - "$(PROJECT_DIR)/Carthage/Build/watchOS", - ); - INFOPLIST_FILE = App_watchOS/Info.plist; - PRODUCT_BUNDLE_IDENTIFIER = com.project.app.watch; - SDKROOT = watchos; - SKIP_INSTALL = YES; - TARGETED_DEVICE_FAMILY = 4; - WATCHOS_DEPLOYMENT_TARGET = 3.0; - }; name = "Test Debug"; }; - BC_570828727916 /* Production Release */ = { - isa = XCBuildConfiguration; - buildSettings = { - LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks"; - PRODUCT_BUNDLE_IDENTIFIER = "com.project.StaticLibrary-Swift"; - SDKROOT = iphoneos; - SKIP_INSTALL = YES; - TARGETED_DEVICE_FAMILY = "1,2"; - }; - name = "Production Release"; - }; - BC_572479882124 /* Production Debug */ = { - isa = XCBuildConfiguration; - buildSettings = { - CODE_SIGN_IDENTITY = ""; - CURRENT_PROJECT_VERSION = 1; - DEFINES_MODULE = YES; - DYLIB_COMPATIBILITY_VERSION = 1; - DYLIB_CURRENT_VERSION = 1; - DYLIB_INSTALL_NAME_BASE = "@rpath"; - INFOPLIST_FILE = Framework/Info.plist; - INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; - LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks"; - PRODUCT_BUNDLE_IDENTIFIER = "com.project.Framework2-iOS"; - PRODUCT_NAME = Framework2; - SDKROOT = iphoneos; - SKIP_INSTALL = YES; - TARGETED_DEVICE_FAMILY = "1,2"; - VERSIONING_SYSTEM = "apple-generic"; - }; - name = "Production Debug"; - }; - BC_575374366235 /* Test Release */ = { - isa = XCBuildConfiguration; - buildSettings = { - ALWAYS_SEARCH_USER_PATHS = NO; - BUNDLE_ID_SUFFIX = .test; - CLANG_ANALYZER_NONNULL = YES; - CLANG_ANALYZER_NUMBER_OBJECT_CONVERSION = YES_AGGRESSIVE; - CLANG_CXX_LANGUAGE_STANDARD = "gnu++14"; - CLANG_CXX_LIBRARY = "libc++"; - CLANG_ENABLE_MODULES = YES; - CLANG_ENABLE_OBJC_ARC = YES; - CLANG_WARN_BLOCK_CAPTURE_AUTORELEASING = YES; - CLANG_WARN_BOOL_CONVERSION = YES; - CLANG_WARN_COMMA = YES; - CLANG_WARN_CONSTANT_CONVERSION = YES; - CLANG_WARN_DEPRECATED_OBJC_IMPLEMENTATIONS = YES; - CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR; - CLANG_WARN_DOCUMENTATION_COMMENTS = YES; - CLANG_WARN_EMPTY_BODY = YES; - CLANG_WARN_ENUM_CONVERSION = YES; - CLANG_WARN_INFINITE_RECURSION = YES; - CLANG_WARN_INT_CONVERSION = YES; - CLANG_WARN_NON_LITERAL_NULL_CONVERSION = YES; - CLANG_WARN_OBJC_IMPLICIT_RETAIN_SELF = YES; - CLANG_WARN_OBJC_LITERAL_CONVERSION = YES; - CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR; - CLANG_WARN_RANGE_LOOP_ANALYSIS = YES; - CLANG_WARN_STRICT_PROTOTYPES = YES; - CLANG_WARN_SUSPICIOUS_MOVE = YES; - CLANG_WARN_UNGUARDED_AVAILABILITY = YES_AGGRESSIVE; - CLANG_WARN_UNREACHABLE_CODE = YES; - CLANG_WARN__DUPLICATE_METHOD_MATCH = YES; - COPY_PHASE_STRIP = NO; - DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym"; - ENABLE_NS_ASSERTIONS = NO; - ENABLE_STRICT_OBJC_MSGSEND = YES; - GCC_C_LANGUAGE_STANDARD = gnu11; - GCC_NO_COMMON_BLOCKS = YES; - GCC_WARN_64_TO_32_BIT_CONVERSION = YES; - GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR; - GCC_WARN_UNDECLARED_SELECTOR = YES; - GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; - GCC_WARN_UNUSED_FUNCTION = YES; - GCC_WARN_UNUSED_VARIABLE = YES; - PRODUCT_NAME = "$(TARGET_NAME)"; - SWIFT_OPTIMIZATION_LEVEL = "-Owholemodule"; - SWIFT_VERSION = 4.0; - VALIDATE_PRODUCT = YES; - WATCHOS_DEPLOYMENT_TARGET = 4.0; - }; - name = "Test Release"; - }; - BC_580113529988 /* Test Release */ = { - isa = XCBuildConfiguration; - buildSettings = { - PRODUCT_BUNDLE_IDENTIFIER = "com.project.StaticLibrary-ObjC-watchOS"; - PRODUCT_NAME = StaticLibrary_ObjC; - SDKROOT = watchos; - SKIP_INSTALL = YES; - TARGETED_DEVICE_FAMILY = 4; - }; - name = "Test Release"; - }; - BC_594849660073 /* Production Release */ = { - isa = XCBuildConfiguration; - buildSettings = { - CODE_SIGN_IDENTITY = ""; - CURRENT_PROJECT_VERSION = 1; - DEFINES_MODULE = YES; - DYLIB_COMPATIBILITY_VERSION = 1; - DYLIB_CURRENT_VERSION = 1; - DYLIB_INSTALL_NAME_BASE = "@rpath"; - FRAMEWORK_SEARCH_PATHS = ( - "$(inherited)", - "$(PROJECT_DIR)/Carthage/Build/iOS", - ); - INFOPLIST_FILE = Framework/Info.plist; - INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; - LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks"; - PRODUCT_BUNDLE_IDENTIFIER = "com.project.Framework-iOS"; - PRODUCT_NAME = Framework; - SDKROOT = iphoneos; - SKIP_INSTALL = YES; - TARGETED_DEVICE_FAMILY = "1,2"; - VERSIONING_SYSTEM = "apple-generic"; - }; - name = "Production Release"; - }; - BC_598666093104 /* Staging Release */ = { - isa = XCBuildConfiguration; - buildSettings = { - CODE_SIGN_IDENTITY = ""; - CURRENT_PROJECT_VERSION = 1; - DEFINES_MODULE = YES; - DYLIB_COMPATIBILITY_VERSION = 1; - DYLIB_CURRENT_VERSION = 1; - DYLIB_INSTALL_NAME_BASE = "@rpath"; - INFOPLIST_FILE = Framework/Info.plist; - INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; - LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks"; - PRODUCT_BUNDLE_IDENTIFIER = "com.project.Framework2-tvOS"; - PRODUCT_NAME = Framework2; - SDKROOT = appletvos; - SKIP_INSTALL = YES; - TARGETED_DEVICE_FAMILY = 3; - VERSIONING_SYSTEM = "apple-generic"; - }; - name = "Staging Release"; - }; - BC_601792226085 /* Test Debug */ = { - isa = XCBuildConfiguration; - buildSettings = { - LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks"; - PRODUCT_BUNDLE_IDENTIFIER = "com.project.StaticLibrary-ObjC-iOS"; - PRODUCT_NAME = StaticLibrary_ObjC; - SDKROOT = iphoneos; - SKIP_INSTALL = YES; - TARGETED_DEVICE_FAMILY = "1,2"; - }; - name = "Test Debug"; - }; - BC_602034372772 /* Production Release */ = { - isa = XCBuildConfiguration; - buildSettings = { - COMBINE_HIDPI_IMAGES = YES; - LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/../Frameworks"; - PRODUCT_BUNDLE_IDENTIFIER = "com.project.StaticLibrary-ObjC-macOS"; - PRODUCT_NAME = StaticLibrary_ObjC; - SDKROOT = macosx; - SKIP_INSTALL = YES; - }; - name = "Production Release"; - }; - BC_609023497374 /* Test Release */ = { - isa = XCBuildConfiguration; - buildSettings = { - ASSETCATALOG_COMPILER_APPICON_NAME = "iMessage App Icon"; - INFOPLIST_FILE = "IMessage MessagesExtension/Info.plist"; - LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks @executable_path/../../Frameworks"; - PRODUCT_BUNDLE_IDENTIFIER = com.project.iMessageApp.extension; - SDKROOT = iphoneos; - TARGETED_DEVICE_FAMILY = "1,2"; - }; - name = "Test Release"; - }; - BC_609604761299 /* Staging Release */ = { - isa = XCBuildConfiguration; - buildSettings = { - COMBINE_HIDPI_IMAGES = YES; - INFOPLIST_FILE = "XPC Service/Info.plist"; - LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/../Frameworks"; - PRODUCT_BUNDLE_IDENTIFIER = com.project.XPCService; - SDKROOT = macosx; - }; - name = "Staging Release"; - }; - BC_609753632568 /* Production Release */ = { - isa = XCBuildConfiguration; - buildSettings = { - INFOPLIST_FILE = IMessage/Info.plist; - LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks"; - PRODUCT_BUNDLE_IDENTIFIER = com.project.iMessageApp; - SDKROOT = iphoneos; - TARGETED_DEVICE_FAMILY = "1,2"; - }; - name = "Production Release"; - }; - BC_611527832268 /* Production Release */ = { - isa = XCBuildConfiguration; - buildSettings = { - PRODUCT_BUNDLE_IDENTIFIER = "com.project.StaticLibrary-ObjC-watchOS"; - PRODUCT_NAME = StaticLibrary_ObjC; - SDKROOT = watchos; - SKIP_INSTALL = YES; - TARGETED_DEVICE_FAMILY = 4; - }; - name = "Production Release"; - }; - BC_612244244384 /* Test Debug */ = { - isa = XCBuildConfiguration; - buildSettings = { - MY_SETTING = hello; - }; - name = "Test Debug"; - }; - BC_622471558373 /* Production Debug */ = { - isa = XCBuildConfiguration; - buildSettings = { - CODE_SIGN_IDENTITY = ""; - CURRENT_PROJECT_VERSION = 1; - DEFINES_MODULE = YES; - DYLIB_COMPATIBILITY_VERSION = 1; - DYLIB_CURRENT_VERSION = 1; - DYLIB_INSTALL_NAME_BASE = "@rpath"; - FRAMEWORK_SEARCH_PATHS = ( - "$(inherited)", - "$(PROJECT_DIR)/Carthage/Build/iOS", - ); - INFOPLIST_FILE = Framework/Info.plist; - INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; - LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks"; - PRODUCT_BUNDLE_IDENTIFIER = "com.project.Framework-iOS"; - PRODUCT_NAME = Framework; - SDKROOT = iphoneos; - SKIP_INSTALL = YES; - TARGETED_DEVICE_FAMILY = "1,2"; - VERSIONING_SYSTEM = "apple-generic"; - }; - name = "Production Debug"; - }; - BC_627109222781 /* Production Release */ = { - isa = XCBuildConfiguration; - buildSettings = { - ALWAYS_EMBED_SWIFT_STANDARD_LIBRARIES = YES; - ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon; - COMBINE_HIDPI_IMAGES = YES; - FRAMEWORK_SEARCH_PATHS = ( - "$(inherited)", - "$(PROJECT_DIR)/Carthage/Build/Mac", - ); - INFOPLIST_FILE = App_macOS/Info.plist; - LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/../Frameworks"; - OTHER_LDFLAGS = ( - "$(inherited)", - "-ObjC", - ); - PRODUCT_BUNDLE_IDENTIFIER = "com.project.App-macOS"; - SDKROOT = macosx; - }; - name = "Production Release"; - }; - BC_634896623305 /* Staging Debug */ = { - isa = XCBuildConfiguration; - buildSettings = { - ALWAYS_EMBED_SWIFT_STANDARD_LIBRARIES = YES; - FRAMEWORK_SEARCH_PATHS = ( - "$(inherited)", - "$(PROJECT_DIR)/Carthage/Build/watchOS", - ); - INFOPLIST_FILE = App_watchOS/Info.plist; - PRODUCT_BUNDLE_IDENTIFIER = com.project.app.watch; - SDKROOT = watchos; - SKIP_INSTALL = YES; - TARGETED_DEVICE_FAMILY = 4; - WATCHOS_DEPLOYMENT_TARGET = 3.0; - }; - name = "Staging Debug"; - }; - BC_644737893954 /* Staging Debug */ = { - isa = XCBuildConfiguration; - buildSettings = { - BUNDLE_LOADER = "$(TEST_HOST)"; - FRAMEWORK_SEARCH_PATHS = ( - "$(inherited)", - "$(PROJECT_DIR)/Carthage/Build/iOS", - ); - INFOPLIST_FILE = App_iOS_Tests/Info.plist; - LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks @loader_path/Frameworks"; - PRODUCT_BUNDLE_IDENTIFIER = "com.project.App-iOS-Tests"; - SDKROOT = iphoneos; - TARGETED_DEVICE_FAMILY = "1,2"; - }; - name = "Staging Debug"; - }; - BC_645651856160 /* Staging Release */ = { - isa = XCBuildConfiguration; - buildSettings = { - LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks"; - PRODUCT_BUNDLE_IDENTIFIER = com.project.Legacy; - SDKROOT = iphoneos; - TARGETED_DEVICE_FAMILY = "1,2"; - }; - name = "Staging Release"; - }; - BC_649616542112 /* Staging Release */ = { - isa = XCBuildConfiguration; - buildSettings = { - CODE_SIGN_IDENTITY = ""; - COMBINE_HIDPI_IMAGES = YES; - CURRENT_PROJECT_VERSION = 1; - DEFINES_MODULE = YES; - DYLIB_COMPATIBILITY_VERSION = 1; - DYLIB_CURRENT_VERSION = 1; - DYLIB_INSTALL_NAME_BASE = "@rpath"; - INFOPLIST_FILE = Framework/Info.plist; - INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; - LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/../Frameworks"; - PRODUCT_BUNDLE_IDENTIFIER = "com.project.Framework2-macOS"; - PRODUCT_NAME = Framework2; - SDKROOT = macosx; - SKIP_INSTALL = YES; - VERSIONING_SYSTEM = "apple-generic"; - }; - name = "Staging Release"; - }; - BC_650615721579 /* Test Debug */ = { - isa = XCBuildConfiguration; - buildSettings = { - CODE_SIGN_IDENTITY = ""; - CURRENT_PROJECT_VERSION = 1; - DEFINES_MODULE = YES; - DYLIB_COMPATIBILITY_VERSION = 1; - DYLIB_CURRENT_VERSION = 1; - DYLIB_INSTALL_NAME_BASE = "@rpath"; - INFOPLIST_FILE = Framework/Info.plist; - INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; - LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks"; - PRODUCT_BUNDLE_IDENTIFIER = "com.project.Framework2-iOS"; - PRODUCT_NAME = Framework2; - SDKROOT = iphoneos; - SKIP_INSTALL = YES; - TARGETED_DEVICE_FAMILY = "1,2"; - VERSIONING_SYSTEM = "apple-generic"; - }; - name = "Test Debug"; - }; - BC_655752097950 /* Test Debug */ = { - isa = XCBuildConfiguration; - buildSettings = { - CODE_SIGN_IDENTITY = ""; - CURRENT_PROJECT_VERSION = 1; - DEFINES_MODULE = YES; - DYLIB_COMPATIBILITY_VERSION = 1; - DYLIB_CURRENT_VERSION = 1; - DYLIB_INSTALL_NAME_BASE = "@rpath"; - FRAMEWORK_SEARCH_PATHS = ( - "$(inherited)", - "$(PROJECT_DIR)/Carthage/Build/tvOS", - ); - INFOPLIST_FILE = Framework/Info.plist; - INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; - LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks"; - PRODUCT_BUNDLE_IDENTIFIER = "com.project.Framework-tvOS"; - PRODUCT_NAME = Framework; - SDKROOT = appletvos; - SKIP_INSTALL = YES; - TARGETED_DEVICE_FAMILY = 3; - VERSIONING_SYSTEM = "apple-generic"; - }; - name = "Test Debug"; - }; - BC_659994766813 /* Staging Release */ = { - isa = XCBuildConfiguration; - buildSettings = { - CODE_SIGN_IDENTITY = ""; - CURRENT_PROJECT_VERSION = 1; - DEFINES_MODULE = YES; - DYLIB_COMPATIBILITY_VERSION = 1; - DYLIB_CURRENT_VERSION = 1; - DYLIB_INSTALL_NAME_BASE = "@rpath"; - INFOPLIST_FILE = Framework/Info.plist; - INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; - PRODUCT_BUNDLE_IDENTIFIER = "com.project.Framework2-watchOS"; - PRODUCT_NAME = Framework2; - SDKROOT = watchos; - SKIP_INSTALL = YES; - TARGETED_DEVICE_FAMILY = 4; - VERSIONING_SYSTEM = "apple-generic"; - }; - name = "Staging Release"; - }; - BC_667304541586 /* Test Debug */ = { - isa = XCBuildConfiguration; - buildSettings = { - COMBINE_HIDPI_IMAGES = YES; - INFOPLIST_FILE = "XPC Service/Info.plist"; - LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/../Frameworks"; - PRODUCT_BUNDLE_IDENTIFIER = com.project.XPCService; - SDKROOT = macosx; - }; - name = "Test Debug"; - }; - BC_669628489596 /* Staging Release */ = { - isa = XCBuildConfiguration; - buildSettings = { - LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks"; - PRODUCT_BUNDLE_IDENTIFIER = "com.project.StaticLibrary-Swift"; - SDKROOT = iphoneos; - SKIP_INSTALL = YES; - TARGETED_DEVICE_FAMILY = "1,2"; - }; - name = "Staging Release"; - }; - BC_682637821562 /* Test Release */ = { - isa = XCBuildConfiguration; - buildSettings = { - COMBINE_HIDPI_IMAGES = YES; - LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/../Frameworks"; - PRODUCT_BUNDLE_IDENTIFIER = "com.project.StaticLibrary-ObjC-macOS"; - PRODUCT_NAME = StaticLibrary_ObjC; - SDKROOT = macosx; - SKIP_INSTALL = YES; - }; - name = "Test Release"; - }; - BC_685135820012 /* Test Release */ = { - isa = XCBuildConfiguration; - buildSettings = { - CODE_SIGN_IDENTITY = ""; - CURRENT_PROJECT_VERSION = 1; - DEFINES_MODULE = YES; - DYLIB_COMPATIBILITY_VERSION = 1; - DYLIB_CURRENT_VERSION = 1; - DYLIB_INSTALL_NAME_BASE = "@rpath"; - FRAMEWORK_SEARCH_PATHS = ( - "$(inherited)", - "$(PROJECT_DIR)/Carthage/Build/watchOS", - ); - INFOPLIST_FILE = Framework/Info.plist; - INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; - PRODUCT_BUNDLE_IDENTIFIER = "com.project.Framework-watchOS"; - PRODUCT_NAME = Framework; - SDKROOT = watchos; - SKIP_INSTALL = YES; - TARGETED_DEVICE_FAMILY = 4; - VERSIONING_SYSTEM = "apple-generic"; - }; - name = "Test Release"; - }; - BC_697789525657 /* Staging Release */ = { - isa = XCBuildConfiguration; - buildSettings = { - ASSETCATALOG_COMPILER_COMPLICATION_NAME = Complication; - FRAMEWORK_SEARCH_PATHS = ( - "$(inherited)", - "$(PROJECT_DIR)/Carthage/Build/watchOS", - ); - INFOPLIST_FILE = "App_watchOS Extension/Info.plist"; - LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks @executable_path/../../Frameworks"; - PRODUCT_BUNDLE_IDENTIFIER = com.project.app.watch.extension; - SDKROOT = watchos; - SKIP_INSTALL = YES; - TARGETED_DEVICE_FAMILY = 4; - }; - name = "Staging Release"; - }; - BC_699627374397 /* Staging Release */ = { - isa = XCBuildConfiguration; - buildSettings = { - LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks"; - PRODUCT_BUNDLE_IDENTIFIER = "com.project.StaticLibrary-ObjC-iOS"; - PRODUCT_NAME = StaticLibrary_ObjC; - SDKROOT = iphoneos; - SKIP_INSTALL = YES; - TARGETED_DEVICE_FAMILY = "1,2"; - }; - name = "Staging Release"; - }; - BC_702596407424 /* Production Release */ = { - isa = XCBuildConfiguration; - buildSettings = { - ASSETCATALOG_COMPILER_COMPLICATION_NAME = Complication; - FRAMEWORK_SEARCH_PATHS = ( - "$(inherited)", - "$(PROJECT_DIR)/Carthage/Build/watchOS", - ); - INFOPLIST_FILE = "App_watchOS Extension/Info.plist"; - LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks @executable_path/../../Frameworks"; - PRODUCT_BUNDLE_IDENTIFIER = com.project.app.watch.extension; - SDKROOT = watchos; - SKIP_INSTALL = YES; - TARGETED_DEVICE_FAMILY = 4; - }; - name = "Production Release"; - }; - BC_704315531994 /* Test Debug */ = { - isa = XCBuildConfiguration; - buildSettings = { - INFOPLIST_FILE = IMessage/Info.plist; - LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks"; - PRODUCT_BUNDLE_IDENTIFIER = com.project.iMessageApp; - SDKROOT = iphoneos; - TARGETED_DEVICE_FAMILY = "1,2"; - }; - name = "Test Debug"; - }; - BC_704319259740 /* Staging Debug */ = { - isa = XCBuildConfiguration; - buildSettings = { - CODE_SIGN_IDENTITY = ""; - CURRENT_PROJECT_VERSION = 1; - DEFINES_MODULE = YES; - DYLIB_COMPATIBILITY_VERSION = 1; - DYLIB_CURRENT_VERSION = 1; - DYLIB_INSTALL_NAME_BASE = "@rpath"; - INFOPLIST_FILE = Framework/Info.plist; - INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; - LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks"; - PRODUCT_BUNDLE_IDENTIFIER = "com.project.Framework2-tvOS"; - PRODUCT_NAME = Framework2; - SDKROOT = appletvos; - SKIP_INSTALL = YES; - TARGETED_DEVICE_FAMILY = 3; - VERSIONING_SYSTEM = "apple-generic"; - }; - name = "Staging Debug"; - }; - BC_705279564212 /* Production Debug */ = { - isa = XCBuildConfiguration; - buildSettings = { - CODE_SIGN_IDENTITY = ""; - COMBINE_HIDPI_IMAGES = YES; - CURRENT_PROJECT_VERSION = 1; - DEFINES_MODULE = YES; - DYLIB_COMPATIBILITY_VERSION = 1; - DYLIB_CURRENT_VERSION = 1; - DYLIB_INSTALL_NAME_BASE = "@rpath"; - FRAMEWORK_SEARCH_PATHS = ( - "$(inherited)", - "$(PROJECT_DIR)/Carthage/Build/Mac", - ); - INFOPLIST_FILE = Framework/Info.plist; - INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; - LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/../Frameworks"; - PRODUCT_BUNDLE_IDENTIFIER = "com.project.Framework-macOS"; - PRODUCT_NAME = Framework; - SDKROOT = macosx; - SKIP_INSTALL = YES; - VERSIONING_SYSTEM = "apple-generic"; - }; - name = "Production Debug"; - }; - BC_706746828714 /* Test Debug */ = { - isa = XCBuildConfiguration; - buildSettings = { - CODE_SIGN_IDENTITY = ""; - COMBINE_HIDPI_IMAGES = YES; - CURRENT_PROJECT_VERSION = 1; - DEFINES_MODULE = YES; - DYLIB_COMPATIBILITY_VERSION = 1; - DYLIB_CURRENT_VERSION = 1; - DYLIB_INSTALL_NAME_BASE = "@rpath"; - INFOPLIST_FILE = Framework/Info.plist; - INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; - LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/../Frameworks"; - PRODUCT_BUNDLE_IDENTIFIER = "com.project.Framework2-macOS"; - PRODUCT_NAME = Framework2; - SDKROOT = macosx; - SKIP_INSTALL = YES; - VERSIONING_SYSTEM = "apple-generic"; - }; - name = "Test Debug"; - }; - BC_707904794064 /* Test Release */ = { - isa = XCBuildConfiguration; - buildSettings = { - ALWAYS_EMBED_SWIFT_STANDARD_LIBRARIES = YES; - ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon; - COMBINE_HIDPI_IMAGES = YES; - FRAMEWORK_SEARCH_PATHS = ( - "$(inherited)", - "$(PROJECT_DIR)/Carthage/Build/Mac", - ); - INFOPLIST_FILE = App_macOS/Info.plist; - LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/../Frameworks"; - OTHER_LDFLAGS = ( - "$(inherited)", - "-ObjC", - ); - PRODUCT_BUNDLE_IDENTIFIER = "com.project.App-macOS"; - SDKROOT = macosx; - }; - name = "Test Release"; - }; - BC_709947688544 /* Production Debug */ = { - isa = XCBuildConfiguration; - buildSettings = { - ALWAYS_SEARCH_USER_PATHS = NO; - CLANG_ANALYZER_NONNULL = YES; - CLANG_ANALYZER_NUMBER_OBJECT_CONVERSION = YES_AGGRESSIVE; - CLANG_CXX_LANGUAGE_STANDARD = "gnu++14"; - CLANG_CXX_LIBRARY = "libc++"; - CLANG_ENABLE_MODULES = YES; - CLANG_ENABLE_OBJC_ARC = YES; - CLANG_WARN_BLOCK_CAPTURE_AUTORELEASING = YES; - CLANG_WARN_BOOL_CONVERSION = YES; - CLANG_WARN_COMMA = YES; - CLANG_WARN_CONSTANT_CONVERSION = YES; - CLANG_WARN_DEPRECATED_OBJC_IMPLEMENTATIONS = YES; - CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR; - CLANG_WARN_DOCUMENTATION_COMMENTS = YES; - CLANG_WARN_EMPTY_BODY = YES; - CLANG_WARN_ENUM_CONVERSION = YES; - CLANG_WARN_INFINITE_RECURSION = YES; - CLANG_WARN_INT_CONVERSION = YES; - CLANG_WARN_NON_LITERAL_NULL_CONVERSION = YES; - CLANG_WARN_OBJC_IMPLICIT_RETAIN_SELF = YES; - CLANG_WARN_OBJC_LITERAL_CONVERSION = YES; - CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR; - CLANG_WARN_RANGE_LOOP_ANALYSIS = YES; - CLANG_WARN_STRICT_PROTOTYPES = YES; - CLANG_WARN_SUSPICIOUS_MOVE = YES; - CLANG_WARN_UNGUARDED_AVAILABILITY = YES_AGGRESSIVE; - CLANG_WARN_UNREACHABLE_CODE = YES; - CLANG_WARN__DUPLICATE_METHOD_MATCH = YES; - COPY_PHASE_STRIP = NO; - DEBUG_INFORMATION_FORMAT = dwarf; - ENABLE_STRICT_OBJC_MSGSEND = YES; - ENABLE_TESTABILITY = YES; - GCC_C_LANGUAGE_STANDARD = gnu11; - GCC_DYNAMIC_NO_PIC = NO; - GCC_NO_COMMON_BLOCKS = YES; - GCC_OPTIMIZATION_LEVEL = 0; - GCC_PREPROCESSOR_DEFINITIONS = ( - "$(inherited)", - "DEBUG=1", - ); - GCC_WARN_64_TO_32_BIT_CONVERSION = YES; - GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR; - GCC_WARN_UNDECLARED_SELECTOR = YES; - GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; - GCC_WARN_UNUSED_FUNCTION = YES; - GCC_WARN_UNUSED_VARIABLE = YES; - MTL_ENABLE_DEBUG_INFO = YES; - ONLY_ACTIVE_ARCH = YES; - PRODUCT_NAME = "$(TARGET_NAME)"; - SWIFT_ACTIVE_COMPILATION_CONDITIONS = DEBUG; - SWIFT_OPTIMIZATION_LEVEL = "-Onone"; - SWIFT_VERSION = 4.0; - WATCHOS_DEPLOYMENT_TARGET = 4.0; - }; - name = "Production Debug"; - }; - BC_716189724726 /* Staging Debug */ = { - isa = XCBuildConfiguration; - buildSettings = { - COMBINE_HIDPI_IMAGES = YES; - LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/../Frameworks"; - PRODUCT_BUNDLE_IDENTIFIER = "com.project.StaticLibrary-ObjC-macOS"; - PRODUCT_NAME = StaticLibrary_ObjC; - SDKROOT = macosx; - SKIP_INSTALL = YES; - }; - name = "Staging Debug"; - }; - BC_721815976999 /* Production Debug */ = { - isa = XCBuildConfiguration; - buildSettings = { - CODE_SIGN_IDENTITY = ""; - CURRENT_PROJECT_VERSION = 1; - DEFINES_MODULE = YES; - DYLIB_COMPATIBILITY_VERSION = 1; - DYLIB_CURRENT_VERSION = 1; - DYLIB_INSTALL_NAME_BASE = "@rpath"; - INFOPLIST_FILE = Framework/Info.plist; - INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; - PRODUCT_BUNDLE_IDENTIFIER = "com.project.Framework2-watchOS"; - PRODUCT_NAME = Framework2; - SDKROOT = watchos; - SKIP_INSTALL = YES; - TARGETED_DEVICE_FAMILY = 4; - VERSIONING_SYSTEM = "apple-generic"; - }; - name = "Production Debug"; - }; - BC_730521266150 /* Staging Release */ = { + BC_A61B5D8B6C38C2B4C738A48343FB4CDA /* Staging Release */ = { isa = XCBuildConfiguration; buildSettings = { ALWAYS_SEARCH_USER_PATHS = NO; @@ -4148,32 +3886,18 @@ }; name = "Staging Release"; }; - BC_741359447852 /* Test Release */ = { + BC_ACF9A90E6BEFB16076EE5B78A3711D41 /* Test Release */ = { isa = XCBuildConfiguration; buildSettings = { - CODE_SIGN_IDENTITY = ""; - COMBINE_HIDPI_IMAGES = YES; - CURRENT_PROJECT_VERSION = 1; - DEFINES_MODULE = YES; - DYLIB_COMPATIBILITY_VERSION = 1; - DYLIB_CURRENT_VERSION = 1; - DYLIB_INSTALL_NAME_BASE = "@rpath"; - FRAMEWORK_SEARCH_PATHS = ( - "$(inherited)", - "$(PROJECT_DIR)/Carthage/Build/Mac", - ); - INFOPLIST_FILE = Framework/Info.plist; - INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; - LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/../Frameworks"; - PRODUCT_BUNDLE_IDENTIFIER = "com.project.Framework-macOS"; - PRODUCT_NAME = Framework; - SDKROOT = macosx; + PRODUCT_BUNDLE_IDENTIFIER = "com.project.StaticLibrary-ObjC-watchOS"; + PRODUCT_NAME = StaticLibrary_ObjC; + SDKROOT = watchos; SKIP_INSTALL = YES; - VERSIONING_SYSTEM = "apple-generic"; + TARGETED_DEVICE_FAMILY = 4; }; name = "Test Release"; }; - BC_749393271654 /* Test Debug */ = { + BC_AE11EA7D0985D3AD750BDB7F362B6726 /* Test Debug */ = { isa = XCBuildConfiguration; buildSettings = { ALWAYS_EMBED_SWIFT_STANDARD_LIBRARIES = YES; @@ -4196,19 +3920,7 @@ }; name = "Test Debug"; }; - BC_758688409542 /* Staging Debug */ = { - isa = XCBuildConfiguration; - buildSettings = { - LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks"; - PRODUCT_BUNDLE_IDENTIFIER = "com.project.StaticLibrary-ObjC-tvOS"; - PRODUCT_NAME = StaticLibrary_ObjC; - SDKROOT = appletvos; - SKIP_INSTALL = YES; - TARGETED_DEVICE_FAMILY = 3; - }; - name = "Staging Debug"; - }; - BC_760168680599 /* Staging Release */ = { + BC_B0011E28621230A66DBE3070C59108D4 /* Production Release */ = { isa = XCBuildConfiguration; buildSettings = { CODE_SIGN_IDENTITY = ""; @@ -4231,58 +3943,37 @@ TARGETED_DEVICE_FAMILY = 3; VERSIONING_SYSTEM = "apple-generic"; }; - name = "Staging Release"; + name = "Production Release"; }; - BC_765441740976 /* Staging Release */ = { + BC_B19AA9EDCE45F13CA00B669DADF86395 /* Test Debug */ = { isa = XCBuildConfiguration; buildSettings = { - CODE_SIGN_IDENTITY = ""; - COMBINE_HIDPI_IMAGES = YES; - CURRENT_PROJECT_VERSION = 1; - DEFINES_MODULE = YES; - DYLIB_COMPATIBILITY_VERSION = 1; - DYLIB_CURRENT_VERSION = 1; - DYLIB_INSTALL_NAME_BASE = "@rpath"; - FRAMEWORK_SEARCH_PATHS = ( - "$(inherited)", - "$(PROJECT_DIR)/Carthage/Build/Mac", - ); - INFOPLIST_FILE = Framework/Info.plist; - INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; - LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/../Frameworks"; - PRODUCT_BUNDLE_IDENTIFIER = "com.project.Framework-macOS"; - PRODUCT_NAME = Framework; - SDKROOT = macosx; - SKIP_INSTALL = YES; - VERSIONING_SYSTEM = "apple-generic"; - }; - name = "Staging Release"; - }; - BC_766399414659 /* Staging Debug */ = { - isa = XCBuildConfiguration; - buildSettings = { - ASSETCATALOG_COMPILER_APPICON_NAME = "iMessage App Icon"; - INFOPLIST_FILE = "IMessage MessagesExtension/Info.plist"; - LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks @executable_path/../../Frameworks"; - PRODUCT_BUNDLE_IDENTIFIER = com.project.iMessageApp.extension; + INFOPLIST_FILE = IMessage/Info.plist; + LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks"; + PRODUCT_BUNDLE_IDENTIFIER = com.project.iMessageApp; SDKROOT = iphoneos; TARGETED_DEVICE_FAMILY = "1,2"; }; - name = "Staging Debug"; - }; - BC_767358549642 /* Test Debug */ = { - isa = XCBuildConfiguration; - buildSettings = { - LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks"; - PRODUCT_BUNDLE_IDENTIFIER = "com.project.StaticLibrary-ObjC-tvOS"; - PRODUCT_NAME = StaticLibrary_ObjC; - SDKROOT = appletvos; - SKIP_INSTALL = YES; - TARGETED_DEVICE_FAMILY = 3; - }; name = "Test Debug"; }; - BC_769258280401 /* Staging Debug */ = { + BC_B2819DF0E90F3F3341B2B3A828778827 /* Production Debug */ = { + isa = XCBuildConfiguration; + buildSettings = { + ASSETCATALOG_COMPILER_COMPLICATION_NAME = Complication; + FRAMEWORK_SEARCH_PATHS = ( + "$(inherited)", + "$(PROJECT_DIR)/Carthage/Build/watchOS", + ); + INFOPLIST_FILE = "App_watchOS Extension/Info.plist"; + LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks @executable_path/../../Frameworks"; + PRODUCT_BUNDLE_IDENTIFIER = com.project.app.watch.extension; + SDKROOT = watchos; + SKIP_INSTALL = YES; + TARGETED_DEVICE_FAMILY = 4; + }; + name = "Production Debug"; + }; + BC_B290BF236EBF078304DB54D0CE99B85A /* Test Debug */ = { isa = XCBuildConfiguration; buildSettings = { BUNDLE_LOADER = "$(TEST_HOST)"; @@ -4297,9 +3988,220 @@ TARGETED_DEVICE_FAMILY = "1,2"; TEST_TARGET_NAME = App_iOS; }; + name = "Test Debug"; + }; + BC_B2EA5B6CE006C3C8DB5A6AC3A2C78E59 /* Test Debug */ = { + isa = XCBuildConfiguration; + buildSettings = { + MY_SETTING = hello; + }; + name = "Test Debug"; + }; + BC_B3B360DE1D00D5D3DE54D0467886EEDD /* Production Debug */ = { + isa = XCBuildConfiguration; + buildSettings = { + CODE_SIGN_IDENTITY = ""; + CURRENT_PROJECT_VERSION = 1; + DEFINES_MODULE = YES; + DYLIB_COMPATIBILITY_VERSION = 1; + DYLIB_CURRENT_VERSION = 1; + DYLIB_INSTALL_NAME_BASE = "@rpath"; + INFOPLIST_FILE = Framework/Info.plist; + INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; + PRODUCT_BUNDLE_IDENTIFIER = "com.project.Framework2-watchOS"; + PRODUCT_NAME = Framework2; + SDKROOT = watchos; + SKIP_INSTALL = YES; + TARGETED_DEVICE_FAMILY = 4; + VERSIONING_SYSTEM = "apple-generic"; + }; + name = "Production Debug"; + }; + BC_B3CC7B17DDF2C081536FC92CF25981BD /* Production Debug */ = { + isa = XCBuildConfiguration; + buildSettings = { + LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks"; + PRODUCT_BUNDLE_IDENTIFIER = "com.project.StaticLibrary-ObjC-iOS"; + PRODUCT_NAME = StaticLibrary_ObjC; + SDKROOT = iphoneos; + SKIP_INSTALL = YES; + TARGETED_DEVICE_FAMILY = "1,2"; + }; + name = "Production Debug"; + }; + BC_B44CB3772859FEECDAFDCD4B2FFA2E26 /* Test Debug */ = { + isa = XCBuildConfiguration; + buildSettings = { + CODE_SIGN_IDENTITY = ""; + COMBINE_HIDPI_IMAGES = YES; + CURRENT_PROJECT_VERSION = 1; + DEFINES_MODULE = YES; + DYLIB_COMPATIBILITY_VERSION = 1; + DYLIB_CURRENT_VERSION = 1; + DYLIB_INSTALL_NAME_BASE = "@rpath"; + INFOPLIST_FILE = Framework/Info.plist; + INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; + LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/../Frameworks"; + PRODUCT_BUNDLE_IDENTIFIER = "com.project.Framework2-macOS"; + PRODUCT_NAME = Framework2; + SDKROOT = macosx; + SKIP_INSTALL = YES; + VERSIONING_SYSTEM = "apple-generic"; + }; + name = "Test Debug"; + }; + BC_B52BB5E51BF8953D7DA1F42BA3803D2E /* Test Debug */ = { + isa = XCBuildConfiguration; + buildSettings = { + ALWAYS_EMBED_SWIFT_STANDARD_LIBRARIES = YES; + ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon; + COMBINE_HIDPI_IMAGES = YES; + FRAMEWORK_SEARCH_PATHS = ( + "$(inherited)", + "$(PROJECT_DIR)/Carthage/Build/Mac", + ); + INFOPLIST_FILE = App_macOS/Info.plist; + LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/../Frameworks"; + OTHER_LDFLAGS = ( + "$(inherited)", + "-ObjC", + ); + PRODUCT_BUNDLE_IDENTIFIER = "com.project.App-macOS"; + SDKROOT = macosx; + }; + name = "Test Debug"; + }; + BC_B6F81B24E04D91DFE5F36AAF99FCFA5D /* Staging Debug */ = { + isa = XCBuildConfiguration; + buildSettings = { + LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks"; + PRODUCT_BUNDLE_IDENTIFIER = "com.project.StaticLibrary-ObjC-iOS"; + PRODUCT_NAME = StaticLibrary_ObjC; + SDKROOT = iphoneos; + SKIP_INSTALL = YES; + TARGETED_DEVICE_FAMILY = "1,2"; + }; name = "Staging Debug"; }; - BC_790711614758 /* Staging Release */ = { + BC_BBA77AE6DA089F82907B6DFC338A6F37 /* Test Debug */ = { + isa = XCBuildConfiguration; + buildSettings = { + CODE_SIGN_IDENTITY = ""; + CURRENT_PROJECT_VERSION = 1; + DEFINES_MODULE = YES; + DYLIB_COMPATIBILITY_VERSION = 1; + DYLIB_CURRENT_VERSION = 1; + DYLIB_INSTALL_NAME_BASE = "@rpath"; + FRAMEWORK_SEARCH_PATHS = ( + "$(inherited)", + "$(PROJECT_DIR)/Carthage/Build/watchOS", + ); + INFOPLIST_FILE = Framework/Info.plist; + INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; + PRODUCT_BUNDLE_IDENTIFIER = "com.project.Framework-watchOS"; + PRODUCT_NAME = Framework; + SDKROOT = watchos; + SKIP_INSTALL = YES; + TARGETED_DEVICE_FAMILY = 4; + VERSIONING_SYSTEM = "apple-generic"; + }; + name = "Test Debug"; + }; + BC_BC88A6EBF48BB9B821C5B8001678AC2E /* Staging Release */ = { + isa = XCBuildConfiguration; + buildSettings = { + LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks"; + PRODUCT_BUNDLE_IDENTIFIER = "com.project.StaticLibrary-ObjC-iOS"; + PRODUCT_NAME = StaticLibrary_ObjC; + SDKROOT = iphoneos; + SKIP_INSTALL = YES; + TARGETED_DEVICE_FAMILY = "1,2"; + }; + name = "Staging Release"; + }; + BC_BFFBE0C278E007152F06241181A3457E /* Production Debug */ = { + isa = XCBuildConfiguration; + buildSettings = { + CODE_SIGN_IDENTITY = ""; + CURRENT_PROJECT_VERSION = 1; + DEFINES_MODULE = YES; + DYLIB_COMPATIBILITY_VERSION = 1; + DYLIB_CURRENT_VERSION = 1; + DYLIB_INSTALL_NAME_BASE = "@rpath"; + INFOPLIST_FILE = Framework/Info.plist; + INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; + LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks"; + PRODUCT_BUNDLE_IDENTIFIER = "com.project.Framework2-tvOS"; + PRODUCT_NAME = Framework2; + SDKROOT = appletvos; + SKIP_INSTALL = YES; + TARGETED_DEVICE_FAMILY = 3; + VERSIONING_SYSTEM = "apple-generic"; + }; + name = "Production Debug"; + }; + BC_C07EA83764F4BDE5F0059DC49805D92B /* Staging Release */ = { + isa = XCBuildConfiguration; + buildSettings = { + MY_SETTING = hello; + }; + name = "Staging Release"; + }; + BC_C38327E8FC090ADC83AA700666F26B0E /* Production Debug */ = { + isa = XCBuildConfiguration; + buildSettings = { + LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks"; + PRODUCT_BUNDLE_IDENTIFIER = "com.project.StaticLibrary-ObjC-tvOS"; + PRODUCT_NAME = StaticLibrary_ObjC; + SDKROOT = appletvos; + SKIP_INSTALL = YES; + TARGETED_DEVICE_FAMILY = 3; + }; + name = "Production Debug"; + }; + BC_C507150F28216FCF1029C0C97677DBE5 /* Test Release */ = { + isa = XCBuildConfiguration; + buildSettings = { + ALWAYS_EMBED_SWIFT_STANDARD_LIBRARIES = YES; + ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon; + COMBINE_HIDPI_IMAGES = YES; + FRAMEWORK_SEARCH_PATHS = ( + "$(inherited)", + "$(PROJECT_DIR)/Carthage/Build/Mac", + ); + INFOPLIST_FILE = App_macOS/Info.plist; + LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/../Frameworks"; + OTHER_LDFLAGS = ( + "$(inherited)", + "-ObjC", + ); + PRODUCT_BUNDLE_IDENTIFIER = "com.project.App-macOS"; + SDKROOT = macosx; + }; + name = "Test Release"; + }; + BC_C5288877BBCE2FA6BA4D3FACBFF3BA7F /* Production Release */ = { + isa = XCBuildConfiguration; + buildSettings = { + ALWAYS_EMBED_SWIFT_STANDARD_LIBRARIES = YES; + ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon; + COMBINE_HIDPI_IMAGES = YES; + FRAMEWORK_SEARCH_PATHS = ( + "$(inherited)", + "$(PROJECT_DIR)/Carthage/Build/Mac", + ); + INFOPLIST_FILE = App_macOS/Info.plist; + LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/../Frameworks"; + OTHER_LDFLAGS = ( + "$(inherited)", + "-ObjC", + ); + PRODUCT_BUNDLE_IDENTIFIER = "com.project.App-macOS"; + SDKROOT = macosx; + }; + name = "Production Release"; + }; + BC_C60CBFC5B28D2B8906EAF4D4D3C81597 /* Staging Release */ = { isa = XCBuildConfiguration; buildSettings = { CODE_SIGN_IDENTITY = ""; @@ -4323,45 +4225,7 @@ }; name = "Staging Release"; }; - BC_793714544511 /* Test Release */ = { - isa = XCBuildConfiguration; - buildSettings = { - BUNDLE_LOADER = "$(TEST_HOST)"; - FRAMEWORK_SEARCH_PATHS = ( - "$(inherited)", - "$(PROJECT_DIR)/Carthage/Build/iOS", - ); - INFOPLIST_FILE = App_iOS_Tests/Info.plist; - LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks @loader_path/Frameworks"; - PRODUCT_BUNDLE_IDENTIFIER = "com.project.App-iOS-Tests"; - SDKROOT = iphoneos; - TARGETED_DEVICE_FAMILY = "1,2"; - }; - name = "Test Release"; - }; - BC_796723710441 /* Production Debug */ = { - isa = XCBuildConfiguration; - buildSettings = { - LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks"; - PRODUCT_BUNDLE_IDENTIFIER = "com.project.StaticLibrary-ObjC-iOS"; - PRODUCT_NAME = StaticLibrary_ObjC; - SDKROOT = iphoneos; - SKIP_INSTALL = YES; - TARGETED_DEVICE_FAMILY = "1,2"; - }; - name = "Production Debug"; - }; - BC_799591451484 /* Test Debug */ = { - isa = XCBuildConfiguration; - buildSettings = { - LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks"; - PRODUCT_BUNDLE_IDENTIFIER = com.project.Legacy; - SDKROOT = iphoneos; - TARGETED_DEVICE_FAMILY = "1,2"; - }; - name = "Test Debug"; - }; - BC_799916603316 /* Production Debug */ = { + BC_C7D3757F2E3D9743FDC0CA97F807919C /* Production Debug */ = { isa = XCBuildConfiguration; buildSettings = { ALWAYS_EMBED_SWIFT_STANDARD_LIBRARIES = YES; @@ -4384,11 +4248,91 @@ }; name = "Production Debug"; }; - BC_800851631390 /* Staging Debug */ = { + BC_C9DCD449062A9160795D3701B9D2286E /* Production Release */ = { + isa = XCBuildConfiguration; + buildSettings = { + COMBINE_HIDPI_IMAGES = YES; + INFOPLIST_FILE = "XPC Service/Info.plist"; + LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/../Frameworks"; + PRODUCT_BUNDLE_IDENTIFIER = com.project.XPCService; + SDKROOT = macosx; + }; + name = "Production Release"; + }; + BC_CD673788A57DF4BFEB50B4F1581C742E /* Production Release */ = { + isa = XCBuildConfiguration; + buildSettings = { + INFOPLIST_FILE = IMessage/Info.plist; + LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks"; + PRODUCT_BUNDLE_IDENTIFIER = com.project.iMessageApp; + SDKROOT = iphoneos; + TARGETED_DEVICE_FAMILY = "1,2"; + }; + name = "Production Release"; + }; + BC_CECBF50DBAC4771C31C83814C20D07B2 /* Test Release */ = { + isa = XCBuildConfiguration; + buildSettings = { + ALWAYS_EMBED_SWIFT_STANDARD_LIBRARIES = YES; + ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon; + CODE_SIGN_IDENTITY = "iPhone Developer"; + FRAMEWORK_SEARCH_PATHS = ( + "$(inherited)", + "$(PROJECT_DIR)/Carthage/Build/iOS", + "\"Vendor\"", + ); + INFOPLIST_FILE = App_iOS/Info.plist; + LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks"; + OTHER_LDFLAGS = ( + "$(inherited)", + "-ObjC", + ); + PRODUCT_BUNDLE_IDENTIFIER = com.project.app; + SDKROOT = iphoneos; + TARGETED_DEVICE_FAMILY = "1,2"; + }; + name = "Test Release"; + }; + BC_D02EB4360B13F2E445DB48AD85FDFCE6 /* Production Release */ = { isa = XCBuildConfiguration; buildSettings = { CODE_SIGN_IDENTITY = ""; + CURRENT_PROJECT_VERSION = 1; + DEFINES_MODULE = YES; + DYLIB_COMPATIBILITY_VERSION = 1; + DYLIB_CURRENT_VERSION = 1; + DYLIB_INSTALL_NAME_BASE = "@rpath"; + FRAMEWORK_SEARCH_PATHS = ( + "$(inherited)", + "$(PROJECT_DIR)/Carthage/Build/iOS", + ); + INFOPLIST_FILE = Framework/Info.plist; + INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; + LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks"; + PRODUCT_BUNDLE_IDENTIFIER = "com.project.Framework-iOS"; + PRODUCT_NAME = Framework; + SDKROOT = iphoneos; + SKIP_INSTALL = YES; + TARGETED_DEVICE_FAMILY = "1,2"; + VERSIONING_SYSTEM = "apple-generic"; + }; + name = "Production Release"; + }; + BC_D4F031939A239C28219748EFD83D30AA /* Test Debug */ = { + isa = XCBuildConfiguration; + buildSettings = { COMBINE_HIDPI_IMAGES = YES; + INFOPLIST_FILE = "XPC Service/Info.plist"; + LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/../Frameworks"; + PRODUCT_BUNDLE_IDENTIFIER = com.project.XPCService; + SDKROOT = macosx; + }; + name = "Test Debug"; + }; + BC_D4FC53C776F8F2638D1D294F70517658 /* Test Debug */ = { + isa = XCBuildConfiguration; + buildSettings = { + CODE_SIGN_IDENTITY = ""; CURRENT_PROJECT_VERSION = 1; DEFINES_MODULE = YES; DYLIB_COMPATIBILITY_VERSION = 1; @@ -4396,26 +4340,16 @@ DYLIB_INSTALL_NAME_BASE = "@rpath"; INFOPLIST_FILE = Framework/Info.plist; INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; - LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/../Frameworks"; - PRODUCT_BUNDLE_IDENTIFIER = "com.project.Framework2-macOS"; + PRODUCT_BUNDLE_IDENTIFIER = "com.project.Framework2-watchOS"; PRODUCT_NAME = Framework2; - SDKROOT = macosx; + SDKROOT = watchos; SKIP_INSTALL = YES; + TARGETED_DEVICE_FAMILY = 4; VERSIONING_SYSTEM = "apple-generic"; }; - name = "Staging Debug"; + name = "Test Debug"; }; - BC_805283956103 /* Production Debug */ = { - isa = XCBuildConfiguration; - buildSettings = { - LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks"; - PRODUCT_BUNDLE_IDENTIFIER = com.project.Legacy; - SDKROOT = iphoneos; - TARGETED_DEVICE_FAMILY = "1,2"; - }; - name = "Production Debug"; - }; - BC_806236101497 /* Test Release */ = { + BC_DA0BB134B708A4D257F250D3FA757711 /* Test Release */ = { isa = XCBuildConfiguration; buildSettings = { LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks"; @@ -4427,7 +4361,138 @@ }; name = "Test Release"; }; - BC_806582710863 /* Production Debug */ = { + BC_DA5027F5182F7A40FB94FD282B57BC3E /* Staging Release */ = { + isa = XCBuildConfiguration; + buildSettings = { + ALWAYS_EMBED_SWIFT_STANDARD_LIBRARIES = YES; + ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon; + CODE_SIGN_IDENTITY = "iPhone Developer"; + FRAMEWORK_SEARCH_PATHS = ( + "$(inherited)", + "$(PROJECT_DIR)/Carthage/Build/iOS", + "\"Vendor\"", + ); + INFOPLIST_FILE = App_iOS/Info.plist; + LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks"; + OTHER_LDFLAGS = ( + "$(inherited)", + "-ObjC", + ); + PRODUCT_BUNDLE_IDENTIFIER = com.project.app; + SDKROOT = iphoneos; + TARGETED_DEVICE_FAMILY = "1,2"; + }; + name = "Staging Release"; + }; + BC_DD94802386549D49D781D0BF313007D4 /* Staging Debug */ = { + isa = XCBuildConfiguration; + buildSettings = { + CODE_SIGN_IDENTITY = ""; + CURRENT_PROJECT_VERSION = 1; + DEFINES_MODULE = YES; + DYLIB_COMPATIBILITY_VERSION = 1; + DYLIB_CURRENT_VERSION = 1; + DYLIB_INSTALL_NAME_BASE = "@rpath"; + INFOPLIST_FILE = Framework/Info.plist; + INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; + LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks"; + PRODUCT_BUNDLE_IDENTIFIER = "com.project.Framework2-iOS"; + PRODUCT_NAME = Framework2; + SDKROOT = iphoneos; + SKIP_INSTALL = YES; + TARGETED_DEVICE_FAMILY = "1,2"; + VERSIONING_SYSTEM = "apple-generic"; + }; + name = "Staging Debug"; + }; + BC_DF27A9642DF4C47995FB0B0F4F6C2A98 /* Staging Release */ = { + isa = XCBuildConfiguration; + buildSettings = { + CODE_SIGN_IDENTITY = ""; + CURRENT_PROJECT_VERSION = 1; + DEFINES_MODULE = YES; + DYLIB_COMPATIBILITY_VERSION = 1; + DYLIB_CURRENT_VERSION = 1; + DYLIB_INSTALL_NAME_BASE = "@rpath"; + INFOPLIST_FILE = Framework/Info.plist; + INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; + LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks"; + PRODUCT_BUNDLE_IDENTIFIER = "com.project.Framework2-tvOS"; + PRODUCT_NAME = Framework2; + SDKROOT = appletvos; + SKIP_INSTALL = YES; + TARGETED_DEVICE_FAMILY = 3; + VERSIONING_SYSTEM = "apple-generic"; + }; + name = "Staging Release"; + }; + BC_E254C909463A5ADF59BD226772066ADA /* Test Release */ = { + isa = XCBuildConfiguration; + buildSettings = { + BUNDLE_LOADER = "$(TEST_HOST)"; + FRAMEWORK_SEARCH_PATHS = ( + "$(inherited)", + "$(PROJECT_DIR)/Carthage/Build/iOS", + ); + INFOPLIST_FILE = App_iOS_UITests/Info.plist; + LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks @loader_path/Frameworks"; + PRODUCT_BUNDLE_IDENTIFIER = "com.project.App-iOS-UITests"; + SDKROOT = iphoneos; + TARGETED_DEVICE_FAMILY = "1,2"; + TEST_TARGET_NAME = App_iOS; + }; + name = "Test Release"; + }; + BC_E52BEBA72F64BEC8F09733B49F7BA392 /* Production Release */ = { + isa = XCBuildConfiguration; + buildSettings = { + BUNDLE_LOADER = "$(TEST_HOST)"; + FRAMEWORK_SEARCH_PATHS = ( + "$(inherited)", + "$(PROJECT_DIR)/Carthage/Build/iOS", + ); + INFOPLIST_FILE = App_iOS_Tests/Info.plist; + LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks @loader_path/Frameworks"; + PRODUCT_BUNDLE_IDENTIFIER = "com.project.App-iOS-Tests"; + SDKROOT = iphoneos; + TARGETED_DEVICE_FAMILY = "1,2"; + }; + name = "Production Release"; + }; + BC_E6F51B0AAB0A7B33D902BD20A14E355C /* Staging Debug */ = { + isa = XCBuildConfiguration; + buildSettings = { + BUNDLE_LOADER = "$(TEST_HOST)"; + FRAMEWORK_SEARCH_PATHS = ( + "$(inherited)", + "$(PROJECT_DIR)/Carthage/Build/iOS", + ); + INFOPLIST_FILE = App_iOS_Tests/Info.plist; + LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks @loader_path/Frameworks"; + PRODUCT_BUNDLE_IDENTIFIER = "com.project.App-iOS-Tests"; + SDKROOT = iphoneos; + TARGETED_DEVICE_FAMILY = "1,2"; + }; + name = "Staging Debug"; + }; + BC_E8AE376BBD8C86CFB51C9D5A490FDDBE /* Staging Debug */ = { + isa = XCBuildConfiguration; + buildSettings = { + BUNDLE_LOADER = "$(TEST_HOST)"; + FRAMEWORK_SEARCH_PATHS = ( + "$(inherited)", + "$(PROJECT_DIR)/Carthage/Build/iOS", + ); + INFOPLIST_FILE = App_iOS_UITests/Info.plist; + LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks @loader_path/Frameworks"; + PRODUCT_BUNDLE_IDENTIFIER = "com.project.App-iOS-UITests"; + SDKROOT = iphoneos; + TARGETED_DEVICE_FAMILY = "1,2"; + TEST_TARGET_NAME = App_iOS; + }; + name = "Staging Debug"; + }; + BC_E90B182AC1AF70BB78598DADECF9254B /* Test Debug */ = { isa = XCBuildConfiguration; buildSettings = { PRODUCT_BUNDLE_IDENTIFIER = "com.project.StaticLibrary-ObjC-watchOS"; @@ -4436,20 +4501,9 @@ SKIP_INSTALL = YES; TARGETED_DEVICE_FAMILY = 4; }; - name = "Production Debug"; + name = "Test Debug"; }; - BC_823301630526 /* Test Release */ = { - isa = XCBuildConfiguration; - buildSettings = { - COMBINE_HIDPI_IMAGES = YES; - INFOPLIST_FILE = "XPC Service/Info.plist"; - LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/../Frameworks"; - PRODUCT_BUNDLE_IDENTIFIER = com.project.XPCService; - SDKROOT = macosx; - }; - name = "Test Release"; - }; - BC_823840129404 /* Test Debug */ = { + BC_E9A1D87B4DB80BCC61D6B5F59D81865D /* Test Release */ = { isa = XCBuildConfiguration; buildSettings = { ASSETCATALOG_COMPILER_COMPLICATION_NAME = Complication; @@ -4464,34 +4518,117 @@ SKIP_INSTALL = YES; TARGETED_DEVICE_FAMILY = 4; }; + name = "Test Release"; + }; + BC_F1A1A29B491BDE527B8095C7420311D9 /* Test Debug */ = { + isa = XCBuildConfiguration; + buildSettings = { + ALWAYS_EMBED_SWIFT_STANDARD_LIBRARIES = YES; + FRAMEWORK_SEARCH_PATHS = ( + "$(inherited)", + "$(PROJECT_DIR)/Carthage/Build/watchOS", + ); + INFOPLIST_FILE = App_watchOS/Info.plist; + PRODUCT_BUNDLE_IDENTIFIER = com.project.app.watch; + SDKROOT = watchos; + SKIP_INSTALL = YES; + TARGETED_DEVICE_FAMILY = 4; + WATCHOS_DEPLOYMENT_TARGET = 3.0; + }; name = "Test Debug"; }; - BC_825545455794 /* Staging Debug */ = { + BC_F7D27DC0894036434C159F86616307EF /* Staging Release */ = { + isa = XCBuildConfiguration; + buildSettings = { + PRODUCT_BUNDLE_IDENTIFIER = "com.project.StaticLibrary-ObjC-watchOS"; + PRODUCT_NAME = StaticLibrary_ObjC; + SDKROOT = watchos; + SKIP_INSTALL = YES; + TARGETED_DEVICE_FAMILY = 4; + }; + name = "Staging Release"; + }; + BC_F81BA31D0E5421AC0DDFB2D799C84E2E /* Staging Release */ = { isa = XCBuildConfiguration; buildSettings = { COMBINE_HIDPI_IMAGES = YES; - INFOPLIST_FILE = "XPC Service/Info.plist"; LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/../Frameworks"; - PRODUCT_BUNDLE_IDENTIFIER = com.project.XPCService; + PRODUCT_BUNDLE_IDENTIFIER = "com.project.StaticLibrary-ObjC-macOS"; + PRODUCT_NAME = StaticLibrary_ObjC; + SDKROOT = macosx; + SKIP_INSTALL = YES; + }; + name = "Staging Release"; + }; + BC_F947CECE4A424652DB631A640F423950 /* Staging Debug */ = { + isa = XCBuildConfiguration; + buildSettings = { + ALWAYS_EMBED_SWIFT_STANDARD_LIBRARIES = YES; + ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon; + COMBINE_HIDPI_IMAGES = YES; + FRAMEWORK_SEARCH_PATHS = ( + "$(inherited)", + "$(PROJECT_DIR)/Carthage/Build/Mac", + ); + INFOPLIST_FILE = App_macOS/Info.plist; + LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/../Frameworks"; + OTHER_LDFLAGS = ( + "$(inherited)", + "-ObjC", + ); + PRODUCT_BUNDLE_IDENTIFIER = "com.project.App-macOS"; SDKROOT = macosx; }; name = "Staging Debug"; }; - BC_831819337335 /* Production Release */ = { + BC_F9F3A5E30D3C940B7D85E1AE59A6B3D8 /* Production Debug */ = { isa = XCBuildConfiguration; buildSettings = { - ASSETCATALOG_COMPILER_APPICON_NAME = "iMessage App Icon"; - INFOPLIST_FILE = "IMessage MessagesExtension/Info.plist"; - LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks @executable_path/../../Frameworks"; - PRODUCT_BUNDLE_IDENTIFIER = com.project.iMessageApp.extension; + CODE_SIGN_IDENTITY = ""; + CURRENT_PROJECT_VERSION = 1; + DEFINES_MODULE = YES; + DYLIB_COMPATIBILITY_VERSION = 1; + DYLIB_CURRENT_VERSION = 1; + DYLIB_INSTALL_NAME_BASE = "@rpath"; + INFOPLIST_FILE = Framework/Info.plist; + INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; + LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks"; + PRODUCT_BUNDLE_IDENTIFIER = "com.project.Framework2-iOS"; + PRODUCT_NAME = Framework2; SDKROOT = iphoneos; + SKIP_INSTALL = YES; TARGETED_DEVICE_FAMILY = "1,2"; + VERSIONING_SYSTEM = "apple-generic"; }; - name = "Production Release"; + name = "Production Debug"; }; - BC_832100796021 /* Test Debug */ = { + BC_FAA6D28DC24848759E58A2552BD37359 /* Production Debug */ = { isa = XCBuildConfiguration; - baseConfigurationReference = FR_660690926982 /* config.xcconfig */; + buildSettings = { + CODE_SIGN_IDENTITY = ""; + CURRENT_PROJECT_VERSION = 1; + DEFINES_MODULE = YES; + DYLIB_COMPATIBILITY_VERSION = 1; + DYLIB_CURRENT_VERSION = 1; + DYLIB_INSTALL_NAME_BASE = "@rpath"; + FRAMEWORK_SEARCH_PATHS = ( + "$(inherited)", + "$(PROJECT_DIR)/Carthage/Build/watchOS", + ); + INFOPLIST_FILE = Framework/Info.plist; + INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; + PRODUCT_BUNDLE_IDENTIFIER = "com.project.Framework-watchOS"; + PRODUCT_NAME = Framework; + SDKROOT = watchos; + SKIP_INSTALL = YES; + TARGETED_DEVICE_FAMILY = 4; + VERSIONING_SYSTEM = "apple-generic"; + }; + name = "Production Debug"; + }; + BC_FBF3614A1E9EDDE43929E81FDBD8B4B8 /* Test Debug */ = { + isa = XCBuildConfiguration; + baseConfigurationReference = FR_22A431E337CB22CE70E39135206EDE27 /* config.xcconfig */; buildSettings = { ALWAYS_SEARCH_USER_PATHS = NO; BUNDLE_ID_SUFFIX = .test; @@ -4550,198 +4687,19 @@ }; name = "Test Debug"; }; - BC_835911551172 /* Test Debug */ = { + BC_FF1009503385A37130A5A131E70F0B18 /* Production Release */ = { isa = XCBuildConfiguration; buildSettings = { - CODE_SIGN_IDENTITY = ""; - CURRENT_PROJECT_VERSION = 1; - DEFINES_MODULE = YES; - DYLIB_COMPATIBILITY_VERSION = 1; - DYLIB_CURRENT_VERSION = 1; - DYLIB_INSTALL_NAME_BASE = "@rpath"; - FRAMEWORK_SEARCH_PATHS = ( - "$(inherited)", - "$(PROJECT_DIR)/Carthage/Build/watchOS", - ); - INFOPLIST_FILE = Framework/Info.plist; - INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; - PRODUCT_BUNDLE_IDENTIFIER = "com.project.Framework-watchOS"; - PRODUCT_NAME = Framework; - SDKROOT = watchos; - SKIP_INSTALL = YES; - TARGETED_DEVICE_FAMILY = 4; - VERSIONING_SYSTEM = "apple-generic"; - }; - name = "Test Debug"; - }; - BC_851086512031 /* Staging Release */ = { - isa = XCBuildConfiguration; - buildSettings = { - MY_SETTING = hello; - }; - name = "Staging Release"; - }; - BC_864485046941 /* Staging Debug */ = { - isa = XCBuildConfiguration; - buildSettings = { - ASSETCATALOG_COMPILER_COMPLICATION_NAME = Complication; - FRAMEWORK_SEARCH_PATHS = ( - "$(inherited)", - "$(PROJECT_DIR)/Carthage/Build/watchOS", - ); - INFOPLIST_FILE = "App_watchOS Extension/Info.plist"; - LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks @executable_path/../../Frameworks"; - PRODUCT_BUNDLE_IDENTIFIER = com.project.app.watch.extension; - SDKROOT = watchos; - SKIP_INSTALL = YES; - TARGETED_DEVICE_FAMILY = 4; - }; - name = "Staging Debug"; - }; - BC_865955650456 /* Production Release */ = { - isa = XCBuildConfiguration; - buildSettings = { - LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks"; - PRODUCT_BUNDLE_IDENTIFIER = "com.project.StaticLibrary-ObjC-tvOS"; + COMBINE_HIDPI_IMAGES = YES; + LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/../Frameworks"; + PRODUCT_BUNDLE_IDENTIFIER = "com.project.StaticLibrary-ObjC-macOS"; PRODUCT_NAME = StaticLibrary_ObjC; - SDKROOT = appletvos; + SDKROOT = macosx; SKIP_INSTALL = YES; - TARGETED_DEVICE_FAMILY = 3; }; name = "Production Release"; }; - BC_866352849045 /* Test Debug */ = { - isa = XCBuildConfiguration; - buildSettings = { - ALWAYS_EMBED_SWIFT_STANDARD_LIBRARIES = YES; - ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon; - COMBINE_HIDPI_IMAGES = YES; - FRAMEWORK_SEARCH_PATHS = ( - "$(inherited)", - "$(PROJECT_DIR)/Carthage/Build/Mac", - ); - INFOPLIST_FILE = App_macOS/Info.plist; - LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/../Frameworks"; - OTHER_LDFLAGS = ( - "$(inherited)", - "-ObjC", - ); - PRODUCT_BUNDLE_IDENTIFIER = "com.project.App-macOS"; - SDKROOT = macosx; - }; - name = "Test Debug"; - }; - BC_870421557533 /* Production Release */ = { - isa = XCBuildConfiguration; - buildSettings = { - CODE_SIGN_IDENTITY = ""; - COMBINE_HIDPI_IMAGES = YES; - CURRENT_PROJECT_VERSION = 1; - DEFINES_MODULE = YES; - DYLIB_COMPATIBILITY_VERSION = 1; - DYLIB_CURRENT_VERSION = 1; - DYLIB_INSTALL_NAME_BASE = "@rpath"; - INFOPLIST_FILE = Framework/Info.plist; - INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; - LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/../Frameworks"; - PRODUCT_BUNDLE_IDENTIFIER = "com.project.Framework2-macOS"; - PRODUCT_NAME = Framework2; - SDKROOT = macosx; - SKIP_INSTALL = YES; - VERSIONING_SYSTEM = "apple-generic"; - }; - name = "Production Release"; - }; - BC_878673788752 /* Test Debug */ = { - isa = XCBuildConfiguration; - buildSettings = { - CODE_SIGN_IDENTITY = ""; - CURRENT_PROJECT_VERSION = 1; - DEFINES_MODULE = YES; - DYLIB_COMPATIBILITY_VERSION = 1; - DYLIB_CURRENT_VERSION = 1; - DYLIB_INSTALL_NAME_BASE = "@rpath"; - INFOPLIST_FILE = Framework/Info.plist; - INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; - LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks"; - PRODUCT_BUNDLE_IDENTIFIER = "com.project.Framework2-tvOS"; - PRODUCT_NAME = Framework2; - SDKROOT = appletvos; - SKIP_INSTALL = YES; - TARGETED_DEVICE_FAMILY = 3; - VERSIONING_SYSTEM = "apple-generic"; - }; - name = "Test Debug"; - }; - BC_879000441352 /* Staging Debug */ = { - isa = XCBuildConfiguration; - buildSettings = { - CODE_SIGN_IDENTITY = ""; - COMBINE_HIDPI_IMAGES = YES; - CURRENT_PROJECT_VERSION = 1; - DEFINES_MODULE = YES; - DYLIB_COMPATIBILITY_VERSION = 1; - DYLIB_CURRENT_VERSION = 1; - DYLIB_INSTALL_NAME_BASE = "@rpath"; - FRAMEWORK_SEARCH_PATHS = ( - "$(inherited)", - "$(PROJECT_DIR)/Carthage/Build/Mac", - ); - INFOPLIST_FILE = Framework/Info.plist; - INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; - LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/../Frameworks"; - PRODUCT_BUNDLE_IDENTIFIER = "com.project.Framework-macOS"; - PRODUCT_NAME = Framework; - SDKROOT = macosx; - SKIP_INSTALL = YES; - VERSIONING_SYSTEM = "apple-generic"; - }; - name = "Staging Debug"; - }; - BC_901772102479 /* Test Debug */ = { - isa = XCBuildConfiguration; - buildSettings = { - PRODUCT_BUNDLE_IDENTIFIER = "com.project.StaticLibrary-ObjC-watchOS"; - PRODUCT_NAME = StaticLibrary_ObjC; - SDKROOT = watchos; - SKIP_INSTALL = YES; - TARGETED_DEVICE_FAMILY = 4; - }; - name = "Test Debug"; - }; - BC_906683798476 /* Production Release */ = { - isa = XCBuildConfiguration; - buildSettings = { - COMBINE_HIDPI_IMAGES = YES; - INFOPLIST_FILE = "XPC Service/Info.plist"; - LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/../Frameworks"; - PRODUCT_BUNDLE_IDENTIFIER = com.project.XPCService; - SDKROOT = macosx; - }; - name = "Production Release"; - }; - BC_914036878229 /* Staging Release */ = { - isa = XCBuildConfiguration; - buildSettings = { - ALWAYS_EMBED_SWIFT_STANDARD_LIBRARIES = YES; - ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon; - COMBINE_HIDPI_IMAGES = YES; - FRAMEWORK_SEARCH_PATHS = ( - "$(inherited)", - "$(PROJECT_DIR)/Carthage/Build/Mac", - ); - INFOPLIST_FILE = App_macOS/Info.plist; - LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/../Frameworks"; - OTHER_LDFLAGS = ( - "$(inherited)", - "-ObjC", - ); - PRODUCT_BUNDLE_IDENTIFIER = "com.project.App-macOS"; - SDKROOT = macosx; - }; - name = "Staging Release"; - }; - BC_990974077989 /* Staging Debug */ = { + BC_FF3600FA7FDB235869A6CB7BBDBD8C86 /* Production Release */ = { isa = XCBuildConfiguration; buildSettings = { CODE_SIGN_IDENTITY = ""; @@ -4759,332 +4717,332 @@ TARGETED_DEVICE_FAMILY = 4; VERSIONING_SYSTEM = "apple-generic"; }; - name = "Staging Debug"; + name = "Production Release"; }; /* End XCBuildConfiguration section */ /* Begin XCConfigurationList section */ - CL_105280345645 /* Build configuration list for PBXNativeTarget "Framework2_watchOS" */ = { + CL_0562279D56EF60E8CCC0973D2C663637 /* Build configuration list for PBXNativeTarget "Framework2_iOS" */ = { isa = XCConfigurationList; buildConfigurations = ( - BC_721815976999 /* Production Debug */, - BC_317429236477 /* Production Release */, - BC_990974077989 /* Staging Debug */, - BC_659994766813 /* Staging Release */, - BC_496162047138 /* Test Debug */, - BC_536614240472 /* Test Release */, + BC_F9F3A5E30D3C940B7D85E1AE59A6B3D8 /* Production Debug */, + BC_4346300D78CE0EC28B467470E8C4DB2E /* Production Release */, + BC_DD94802386549D49D781D0BF313007D4 /* Staging Debug */, + BC_89C8C1848F2559C9E46F22CB83CDB25A /* Staging Release */, + BC_54F3754420D0F7418AB42235B1D71751 /* Test Debug */, + BC_3134697E7D6C32A5C4376C581C189D6B /* Test Release */, ); defaultConfigurationIsVisible = 0; defaultConfigurationName = ""; }; - CL_123503999387 /* Build configuration list for PBXNativeTarget "App_iOS_UITests" */ = { + CL_11BB9F4DF26D98C0A2C8E1668356269F /* Build configuration list for PBXNativeTarget "Framework_tvOS" */ = { isa = XCConfigurationList; buildConfigurations = ( - BC_355674198163 /* Production Debug */, - BC_437463937945 /* Production Release */, - BC_769258280401 /* Staging Debug */, - BC_257261481133 /* Staging Release */, - BC_447998896881 /* Test Debug */, - BC_474716674004 /* Test Release */, + BC_032D44BB36CD1AC13FFFAC654631D432 /* Production Debug */, + BC_B0011E28621230A66DBE3070C59108D4 /* Production Release */, + BC_A3FC5819178DDC45D4D2249ECCCA158D /* Staging Debug */, + BC_0B57E3E0E8C194293ABFEEF97F104F30 /* Staging Release */, + BC_0B1CBABAB9579A064729249F5E1B7B84 /* Test Debug */, + BC_1603C1C58A4D6AE1BD0707D13D2C8F44 /* Test Release */, ); defaultConfigurationIsVisible = 0; defaultConfigurationName = ""; }; - CL_281269793733 /* Build configuration list for PBXNativeTarget "StaticLibrary_ObjC_macOS" */ = { + CL_159255858B3EEC02844A3059326A6B93 /* Build configuration list for PBXNativeTarget "StaticLibrary_Swift" */ = { isa = XCConfigurationList; buildConfigurations = ( - BC_142190149658 /* Production Debug */, - BC_602034372772 /* Production Release */, - BC_716189724726 /* Staging Debug */, - BC_462061816889 /* Staging Release */, - BC_192679864336 /* Test Debug */, - BC_682637821562 /* Test Release */, + BC_606DC3CBE672B2D9CA4B68FF6F55762D /* Production Debug */, + BC_9B4D15D591EA1FDE03F33A0EE5B01DAB /* Production Release */, + BC_5CA18B8A4079FC28EF3A05BDC5E4D501 /* Staging Debug */, + BC_98CCC502104C412E1F48BB2F610EA45E /* Staging Release */, + BC_5996DB19FBFE69C54C671E0624798C4B /* Test Debug */, + BC_541CCB32267A890B3BABCE62FFE461E2 /* Test Release */, ); defaultConfigurationIsVisible = 0; defaultConfigurationName = ""; }; - CL_324671077936 /* Build configuration list for PBXNativeTarget "App_watchOS" */ = { + CL_289609080F2D20D506C8A587BC92807B /* Build configuration list for PBXNativeTarget "Framework2_macOS" */ = { isa = XCConfigurationList; buildConfigurations = ( - BC_525459892506 /* Production Debug */, - BC_470682595853 /* Production Release */, - BC_634896623305 /* Staging Debug */, - BC_128566007109 /* Staging Release */, - BC_568928282286 /* Test Debug */, - BC_264159662496 /* Test Release */, + BC_656BA4FF26F3FB2ECFA5F81D7E133C94 /* Production Debug */, + BC_5D7B920759B10537602230A4B5520551 /* Production Release */, + BC_27A94FA771ABEE02868BCED0690C89E1 /* Staging Debug */, + BC_9081CEAEC2FCC555B0BFC28B4EEDF0D6 /* Staging Release */, + BC_B44CB3772859FEECDAFDCD4B2FFA2E26 /* Test Debug */, + BC_22D59B57A805B62A266F803CCDD49C26 /* Test Release */, ); defaultConfigurationIsVisible = 0; defaultConfigurationName = ""; }; - CL_376569054786 /* Build configuration list for PBXNativeTarget "XPC Service" */ = { + CL_2E30D27084B352548CCAA3500158519B /* Build configuration list for PBXNativeTarget "StaticLibrary_ObjC_watchOS" */ = { isa = XCConfigurationList; buildConfigurations = ( - BC_213267780961 /* Production Debug */, - BC_906683798476 /* Production Release */, - BC_825545455794 /* Staging Debug */, - BC_609604761299 /* Staging Release */, - BC_667304541586 /* Test Debug */, - BC_823301630526 /* Test Release */, + BC_0E104167F96EA087A23DFBE2430D5612 /* Production Debug */, + BC_6EDDF7399F4EE2E8226F9D006C31ACB1 /* Production Release */, + BC_56B4C0BD8630088AECC29D1D7064530F /* Staging Debug */, + BC_F7D27DC0894036434C159F86616307EF /* Staging Release */, + BC_E90B182AC1AF70BB78598DADECF9254B /* Test Debug */, + BC_ACF9A90E6BEFB16076EE5B78A3711D41 /* Test Release */, ); defaultConfigurationIsVisible = 0; defaultConfigurationName = ""; }; - CL_437179166843 /* Build configuration list for PBXNativeTarget "StaticLibrary_Swift" */ = { + CL_333C6C3162FB671343E806257FB2A411 /* Build configuration list for PBXNativeTarget "App_watchOS Extension" */ = { isa = XCConfigurationList; buildConfigurations = ( - BC_456712168038 /* Production Debug */, - BC_570828727916 /* Production Release */, - BC_424897564588 /* Staging Debug */, - BC_669628489596 /* Staging Release */, - BC_530814251927 /* Test Debug */, - BC_264139320591 /* Test Release */, + BC_B2819DF0E90F3F3341B2B3A828778827 /* Production Debug */, + BC_4AC83F754F5BB02C3019E8AE2303E966 /* Production Release */, + BC_6396C78E99C21A774B9819DC09D88BD7 /* Staging Debug */, + BC_9EA5ADC667D6445EB2976A3CA508E70D /* Staging Release */, + BC_0198386D4EF48A4C053820EEEE1936CB /* Test Debug */, + BC_E9A1D87B4DB80BCC61D6B5F59D81865D /* Test Release */, ); defaultConfigurationIsVisible = 0; defaultConfigurationName = ""; }; - CL_438704538506 /* Build configuration list for PBXNativeTarget "Framework_watchOS" */ = { + CL_3ABBEC1A6EFC98F40894F5E4769650EF /* Build configuration list for PBXNativeTarget "iMessageExtension" */ = { isa = XCConfigurationList; buildConfigurations = ( - BC_499325041919 /* Production Debug */, - BC_381577484690 /* Production Release */, - BC_563308786207 /* Staging Debug */, - BC_790711614758 /* Staging Release */, - BC_835911551172 /* Test Debug */, - BC_685135820012 /* Test Release */, + BC_3D9C1A83637AB10D5FFC5D4F8331091E /* Production Debug */, + BC_679AB0D3CA0237CCB4B711609C0CB16A /* Production Release */, + BC_9CAC5683B65F9EA32F4A78810EAE488B /* Staging Debug */, + BC_2F352436A75D33C6D3337012367BE90C /* Staging Release */, + BC_7527094FD7492E6A964EC95E7378EF22 /* Test Debug */, + BC_7477F8344D6D7313C39D897C1864F1B7 /* Test Release */, ); defaultConfigurationIsVisible = 0; defaultConfigurationName = ""; }; - CL_445731917037 /* Build configuration list for PBXAggregateTarget "SuperTarget" */ = { + CL_3BB54CFB2F2EFE7302C0B0709BD0AE04 /* Build configuration list for PBXNativeTarget "StaticLibrary_ObjC_macOS" */ = { isa = XCConfigurationList; buildConfigurations = ( - BC_370290618113 /* Production Debug */, - BC_334821934458 /* Production Release */, - BC_439666751882 /* Staging Debug */, - BC_851086512031 /* Staging Release */, - BC_612244244384 /* Test Debug */, - BC_122527152613 /* Test Release */, + BC_5CBE4F01DBB084436375039EFEDDE6E4 /* Production Debug */, + BC_FF1009503385A37130A5A131E70F0B18 /* Production Release */, + BC_53BBB90244275C55B50604E0DC26809E /* Staging Debug */, + BC_F81BA31D0E5421AC0DDFB2D799C84E2E /* Staging Release */, + BC_63E4D52E21696EFA858D20EA01500612 /* Test Debug */, + BC_8433EE3901A89DD2CDDE9F61906433E5 /* Test Release */, ); defaultConfigurationIsVisible = 0; defaultConfigurationName = ""; }; - CL_472296042419 /* Build configuration list for PBXNativeTarget "Framework_iOS" */ = { + CL_674C71F7D7B679C67A944F0110840758 /* Build configuration list for PBXNativeTarget "Framework_watchOS" */ = { isa = XCConfigurationList; buildConfigurations = ( - BC_622471558373 /* Production Debug */, - BC_594849660073 /* Production Release */, - BC_313103118526 /* Staging Debug */, - BC_517306343059 /* Staging Release */, - BC_351179072988 /* Test Debug */, - BC_210338877784 /* Test Release */, + BC_FAA6D28DC24848759E58A2552BD37359 /* Production Debug */, + BC_5BC104FB79C437B79CC9D676B3B964D2 /* Production Release */, + BC_9F1E5E527BE355504381023DED9562C9 /* Staging Debug */, + BC_C60CBFC5B28D2B8906EAF4D4D3C81597 /* Staging Release */, + BC_BBA77AE6DA089F82907B6DFC338A6F37 /* Test Debug */, + BC_0271561C28AF4A74C6924A2187BC8487 /* Test Release */, ); defaultConfigurationIsVisible = 0; defaultConfigurationName = ""; }; - CL_479264660374 /* Build configuration list for PBXLegacyTarget "Legacy" */ = { + CL_6993244897DFCCF1F61A6136FDBE3C01 /* Build configuration list for PBXNativeTarget "XPC Service" */ = { isa = XCConfigurationList; buildConfigurations = ( - BC_805283956103 /* Production Debug */, - BC_467730755629 /* Production Release */, - BC_444705348320 /* Staging Debug */, - BC_645651856160 /* Staging Release */, - BC_799591451484 /* Test Debug */, - BC_129177384103 /* Test Release */, + BC_9F549905032A4927CF6B843899EF5775 /* Production Debug */, + BC_C9DCD449062A9160795D3701B9D2286E /* Production Release */, + BC_4F7A9BAD8AB16D47ECA510689FB5F899 /* Staging Debug */, + BC_11CBEB05340DE3C8F396B359A9144039 /* Staging Release */, + BC_D4F031939A239C28219748EFD83D30AA /* Test Debug */, + BC_80FA279C7B3455A79612ECAB12C9E8F6 /* Test Release */, ); defaultConfigurationIsVisible = 0; defaultConfigurationName = ""; }; - CL_480982116789 /* Build configuration list for PBXNativeTarget "App_macOS" */ = { + CL_7A3206BF9A92D4552AE40D148897BB3E /* Build configuration list for PBXNativeTarget "Framework_macOS" */ = { isa = XCConfigurationList; buildConfigurations = ( - BC_280651168996 /* Production Debug */, - BC_627109222781 /* Production Release */, - BC_563702409464 /* Staging Debug */, - BC_914036878229 /* Staging Release */, - BC_866352849045 /* Test Debug */, - BC_707904794064 /* Test Release */, + BC_5D33E2C3F29594425D03B339108871CF /* Production Debug */, + BC_58D5B708B08789E2DFD4D60A906AAA6E /* Production Release */, + BC_120D6C5C7E4D1D6566CBD71E11C3DF37 /* Staging Debug */, + BC_0D96F61E117D6A8D2353B0E7CB445AEA /* Staging Release */, + BC_5A05C344BCA2E54DFF945E68ECC21064 /* Test Debug */, + BC_6D1ED651D660692438EF3196506DC5AD /* Test Release */, ); defaultConfigurationIsVisible = 0; defaultConfigurationName = ""; }; - CL_507023492251 /* Build configuration list for PBXNativeTarget "App_watchOS Extension" */ = { + CL_85167C2DED9F1F2F7D5162C1DD252426 /* Build configuration list for PBXProject "Project" */ = { isa = XCConfigurationList; buildConfigurations = ( - BC_504862512837 /* Production Debug */, - BC_702596407424 /* Production Release */, - BC_864485046941 /* Staging Debug */, - BC_697789525657 /* Staging Release */, - BC_823840129404 /* Test Debug */, - BC_296138297674 /* Test Release */, - ); - defaultConfigurationIsVisible = 0; - defaultConfigurationName = ""; - }; - CL_525119120469 /* Build configuration list for PBXNativeTarget "Framework_macOS" */ = { - isa = XCConfigurationList; - buildConfigurations = ( - BC_705279564212 /* Production Debug */, - BC_282993554784 /* Production Release */, - BC_879000441352 /* Staging Debug */, - BC_765441740976 /* Staging Release */, - BC_108053643718 /* Test Debug */, - BC_741359447852 /* Test Release */, - ); - defaultConfigurationIsVisible = 0; - defaultConfigurationName = ""; - }; - CL_530818555464 /* Build configuration list for PBXNativeTarget "StaticLibrary_ObjC_watchOS" */ = { - isa = XCConfigurationList; - buildConfigurations = ( - BC_806582710863 /* Production Debug */, - BC_611527832268 /* Production Release */, - BC_495401711721 /* Staging Debug */, - BC_530610845178 /* Staging Release */, - BC_901772102479 /* Test Debug */, - BC_580113529988 /* Test Release */, - ); - defaultConfigurationIsVisible = 0; - defaultConfigurationName = ""; - }; - CL_563193937230 /* Build configuration list for PBXNativeTarget "Framework2_tvOS" */ = { - isa = XCConfigurationList; - buildConfigurations = ( - BC_132887277508 /* Production Debug */, - BC_282993316269 /* Production Release */, - BC_704319259740 /* Staging Debug */, - BC_598666093104 /* Staging Release */, - BC_878673788752 /* Test Debug */, - BC_233005332042 /* Test Release */, - ); - defaultConfigurationIsVisible = 0; - defaultConfigurationName = ""; - }; - CL_618687462494 /* Build configuration list for PBXNativeTarget "iMessageExtension" */ = { - isa = XCConfigurationList; - buildConfigurations = ( - BC_488246438798 /* Production Debug */, - BC_831819337335 /* Production Release */, - BC_766399414659 /* Staging Debug */, - BC_167564962969 /* Staging Release */, - BC_309031681908 /* Test Debug */, - BC_609023497374 /* Test Release */, - ); - defaultConfigurationIsVisible = 0; - defaultConfigurationName = ""; - }; - CL_651103371726 /* Build configuration list for PBXNativeTarget "Framework2_macOS" */ = { - isa = XCConfigurationList; - buildConfigurations = ( - BC_469509245400 /* Production Debug */, - BC_870421557533 /* Production Release */, - BC_800851631390 /* Staging Debug */, - BC_649616542112 /* Staging Release */, - BC_706746828714 /* Test Debug */, - BC_516808329453 /* Test Release */, - ); - defaultConfigurationIsVisible = 0; - defaultConfigurationName = ""; - }; - CL_662315837182 /* Build configuration list for PBXNativeTarget "Framework_tvOS" */ = { - isa = XCConfigurationList; - buildConfigurations = ( - BC_275347760107 /* Production Debug */, - BC_493052431451 /* Production Release */, - BC_533481109982 /* Staging Debug */, - BC_760168680599 /* Staging Release */, - BC_655752097950 /* Test Debug */, - BC_380703106572 /* Test Release */, - ); - defaultConfigurationIsVisible = 0; - defaultConfigurationName = ""; - }; - CL_662897337290 /* Build configuration list for PBXNativeTarget "Framework2_iOS" */ = { - isa = XCConfigurationList; - buildConfigurations = ( - BC_572479882124 /* Production Debug */, - BC_493052429980 /* Production Release */, - BC_283605270658 /* Staging Debug */, - BC_345911583907 /* Staging Release */, - BC_650615721579 /* Test Debug */, - BC_162130726969 /* Test Release */, - ); - defaultConfigurationIsVisible = 0; - defaultConfigurationName = ""; - }; - CL_704531614016 /* Build configuration list for PBXNativeTarget "StaticLibrary_ObjC_tvOS" */ = { - isa = XCConfigurationList; - buildConfigurations = ( - BC_208278321332 /* Production Debug */, - BC_865955650456 /* Production Release */, - BC_758688409542 /* Staging Debug */, - BC_479820670317 /* Staging Release */, - BC_767358549642 /* Test Debug */, - BC_338399173120 /* Test Release */, - ); - defaultConfigurationIsVisible = 0; - defaultConfigurationName = ""; - }; - CL_783122899910 /* Build configuration list for PBXNativeTarget "App_iOS_Tests" */ = { - isa = XCConfigurationList; - buildConfigurations = ( - BC_568886047790 /* Production Debug */, - BC_368555321779 /* Production Release */, - BC_644737893954 /* Staging Debug */, - BC_210307580165 /* Staging Release */, - BC_240587562436 /* Test Debug */, - BC_793714544511 /* Test Release */, - ); - defaultConfigurationIsVisible = 0; - defaultConfigurationName = ""; - }; - CL_825232110500 /* Build configuration list for PBXNativeTarget "App_iOS" */ = { - isa = XCConfigurationList; - buildConfigurations = ( - BC_799916603316 /* Production Debug */, - BC_128103534773 /* Production Release */, - BC_480688547948 /* Staging Debug */, - BC_265230327262 /* Staging Release */, - BC_749393271654 /* Test Debug */, - BC_530755208334 /* Test Release */, - ); - defaultConfigurationIsVisible = 0; - defaultConfigurationName = ""; - }; - CL_844877120535 /* Build configuration list for PBXProject "Project" */ = { - isa = XCConfigurationList; - buildConfigurations = ( - BC_709947688544 /* Production Debug */, - BC_242096321611 /* Production Release */, - BC_397339763951 /* Staging Debug */, - BC_730521266150 /* Staging Release */, - BC_832100796021 /* Test Debug */, - BC_575374366235 /* Test Release */, + BC_209579D4C144FB697FDD46843485CC6A /* Production Debug */, + BC_6851DF4113AFF271AA5DD6D587181A03 /* Production Release */, + BC_96931434222054E6D7469B6B4EC67E87 /* Staging Debug */, + BC_A61B5D8B6C38C2B4C738A48343FB4CDA /* Staging Release */, + BC_FBF3614A1E9EDDE43929E81FDBD8B4B8 /* Test Debug */, + BC_19E3B21D0DA59BAF1B99899A35858D52 /* Test Release */, ); defaultConfigurationIsVisible = 0; defaultConfigurationName = "Production Debug"; }; - CL_919543414727 /* Build configuration list for PBXNativeTarget "StaticLibrary_ObjC_iOS" */ = { + CL_89763567DCA601C83E4C78A9917D81AD /* Build configuration list for PBXNativeTarget "App_iOS_Tests" */ = { isa = XCConfigurationList; buildConfigurations = ( - BC_796723710441 /* Production Debug */, - BC_192293528117 /* Production Release */, - BC_556794548954 /* Staging Debug */, - BC_699627374397 /* Staging Release */, - BC_601792226085 /* Test Debug */, - BC_806236101497 /* Test Release */, + BC_5901F7B4A1799821B3061B5EA7C4A033 /* Production Debug */, + BC_E52BEBA72F64BEC8F09733B49F7BA392 /* Production Release */, + BC_E6F51B0AAB0A7B33D902BD20A14E355C /* Staging Debug */, + BC_689C05D134F6C4AB2A86666C7C2D1E8F /* Staging Release */, + BC_A46551B496D75A9F6D5FF83C2308DC79 /* Test Debug */, + BC_833320F190FC427049CDF16E1B1AF316 /* Test Release */, ); defaultConfigurationIsVisible = 0; defaultConfigurationName = ""; }; - CL_935153865209 /* Build configuration list for PBXNativeTarget "iMessageApp" */ = { + CL_91682ADED17A2C81A700A67F5D70BA1F /* Build configuration list for PBXNativeTarget "StaticLibrary_ObjC_tvOS" */ = { isa = XCConfigurationList; buildConfigurations = ( - BC_507219048168 /* Production Debug */, - BC_609753632568 /* Production Release */, - BC_301490151478 /* Staging Debug */, - BC_275754663824 /* Staging Release */, - BC_704315531994 /* Test Debug */, - BC_249152711841 /* Test Release */, + BC_C38327E8FC090ADC83AA700666F26B0E /* Production Debug */, + BC_0D53E4051E21792867D5FA4A11B751AB /* Production Release */, + BC_69E8021CB05224B9CAC27F6AFA1763CA /* Staging Debug */, + BC_9360F45D8F5B06962ACEBF423299C71B /* Staging Release */, + BC_791A2E3F88BE34E647BEE192E06BBA74 /* Test Debug */, + BC_46EDEC047C02E1E271BADF861EFB2F8D /* Test Release */, + ); + defaultConfigurationIsVisible = 0; + defaultConfigurationName = ""; + }; + CL_9FEF3E411E281B1820B2B067FC1C1B85 /* Build configuration list for PBXNativeTarget "Framework_iOS" */ = { + isa = XCConfigurationList; + buildConfigurations = ( + BC_724E9BA97FC0605F596460587FFD4C61 /* Production Debug */, + BC_D02EB4360B13F2E445DB48AD85FDFCE6 /* Production Release */, + BC_874C935D654D12F1F106CBEFBC4D2074 /* Staging Debug */, + BC_6A4D0B334934E5E4901A4164AD2DF70A /* Staging Release */, + BC_71D19FC08A12CCAB1A85C7A5320A451A /* Test Debug */, + BC_917ABD477C99455FF6BE1A89107FDEC9 /* Test Release */, + ); + defaultConfigurationIsVisible = 0; + defaultConfigurationName = ""; + }; + CL_A55E6C4018D2631D41C660DBF2113765 /* Build configuration list for PBXNativeTarget "Framework2_tvOS" */ = { + isa = XCConfigurationList; + buildConfigurations = ( + BC_BFFBE0C278E007152F06241181A3457E /* Production Debug */, + BC_24042033AF9D3DEDAD53ACAF1C2BB0B2 /* Production Release */, + BC_88D810589CFF611B0D20C0CB47822274 /* Staging Debug */, + BC_DF27A9642DF4C47995FB0B0F4F6C2A98 /* Staging Release */, + BC_313481FFED1411A2B5969B70EBA94383 /* Test Debug */, + BC_8624FCCF5B865B80E0B21BA20FA0FAC5 /* Test Release */, + ); + defaultConfigurationIsVisible = 0; + defaultConfigurationName = ""; + }; + CL_AA475AE6741D5744A91627E7FAF4C986 /* Build configuration list for PBXNativeTarget "iMessageApp" */ = { + isa = XCConfigurationList; + buildConfigurations = ( + BC_50C3D866E3B57D83181A8F04E553F557 /* Production Debug */, + BC_CD673788A57DF4BFEB50B4F1581C742E /* Production Release */, + BC_5951C33138E508D3E6CA672980D5F2B6 /* Staging Debug */, + BC_93685F04BC9D8657E5D7B62B22E043AF /* Staging Release */, + BC_B19AA9EDCE45F13CA00B669DADF86395 /* Test Debug */, + BC_7A2C8B05671807E16D816BD7F0436418 /* Test Release */, + ); + defaultConfigurationIsVisible = 0; + defaultConfigurationName = ""; + }; + CL_B523BC91AF70F483BF998E2BA8DD6669 /* Build configuration list for PBXAggregateTarget "SuperTarget" */ = { + isa = XCConfigurationList; + buildConfigurations = ( + BC_1841B61F3F85EC24C4AACBC5C025BD08 /* Production Debug */, + BC_904676A8DD86F548E50090FAA97FD9E1 /* Production Release */, + BC_0E087681CE92CC2069F9E562ECC9FD23 /* Staging Debug */, + BC_C07EA83764F4BDE5F0059DC49805D92B /* Staging Release */, + BC_B2EA5B6CE006C3C8DB5A6AC3A2C78E59 /* Test Debug */, + BC_57D3973CA01D421550D834AFA79D2B4B /* Test Release */, + ); + defaultConfigurationIsVisible = 0; + defaultConfigurationName = ""; + }; + CL_C50D7BB75115E8561A0975DE1B65E088 /* Build configuration list for PBXNativeTarget "App_watchOS" */ = { + isa = XCConfigurationList; + buildConfigurations = ( + BC_853248A59437336C149C6DD8E6E4A208 /* Production Debug */, + BC_42C4FEAD23C2FE1A906F4D37F43182AB /* Production Release */, + BC_3CCE54849732E01493DDDB7D86E033D4 /* Staging Debug */, + BC_919006DE8A7D104D16D1D4C0AB2CC241 /* Staging Release */, + BC_F1A1A29B491BDE527B8095C7420311D9 /* Test Debug */, + BC_16E1FCDA9DB6E70091B54603E4E6F58B /* Test Release */, + ); + defaultConfigurationIsVisible = 0; + defaultConfigurationName = ""; + }; + CL_C7673A8886407721BA5BFA1B18F184D4 /* Build configuration list for PBXNativeTarget "App_iOS" */ = { + isa = XCConfigurationList; + buildConfigurations = ( + BC_C7D3757F2E3D9743FDC0CA97F807919C /* Production Debug */, + BC_1CF7F7BC6E19981DCBBFE6FE2D9FCB62 /* Production Release */, + BC_161B10E65E0BE143A17EADFA5EE88B3D /* Staging Debug */, + BC_DA5027F5182F7A40FB94FD282B57BC3E /* Staging Release */, + BC_AE11EA7D0985D3AD750BDB7F362B6726 /* Test Debug */, + BC_CECBF50DBAC4771C31C83814C20D07B2 /* Test Release */, + ); + defaultConfigurationIsVisible = 0; + defaultConfigurationName = ""; + }; + CL_D72660834ED9ED4EB0E973ABC256E014 /* Build configuration list for PBXNativeTarget "App_macOS" */ = { + isa = XCConfigurationList; + buildConfigurations = ( + BC_80331E927C4BB7E48B375DB00FD90281 /* Production Debug */, + BC_C5288877BBCE2FA6BA4D3FACBFF3BA7F /* Production Release */, + BC_F947CECE4A424652DB631A640F423950 /* Staging Debug */, + BC_079D311B8C64F17C816583A1A4D84F42 /* Staging Release */, + BC_B52BB5E51BF8953D7DA1F42BA3803D2E /* Test Debug */, + BC_C507150F28216FCF1029C0C97677DBE5 /* Test Release */, + ); + defaultConfigurationIsVisible = 0; + defaultConfigurationName = ""; + }; + CL_DB66C428B606518C825ECFF73A5EF059 /* Build configuration list for PBXNativeTarget "App_iOS_UITests" */ = { + isa = XCConfigurationList; + buildConfigurations = ( + BC_9CDD286FAE4CE2FC296246C95A178023 /* Production Debug */, + BC_291E5C210DD53C3B3A4C6057C2B9652A /* Production Release */, + BC_E8AE376BBD8C86CFB51C9D5A490FDDBE /* Staging Debug */, + BC_19CBA184C0BDC24CE3657C025A8FC279 /* Staging Release */, + BC_B290BF236EBF078304DB54D0CE99B85A /* Test Debug */, + BC_E254C909463A5ADF59BD226772066ADA /* Test Release */, + ); + defaultConfigurationIsVisible = 0; + defaultConfigurationName = ""; + }; + CL_E92E1636D45B284E44D38EB3EF7C98C9 /* Build configuration list for PBXNativeTarget "Framework2_watchOS" */ = { + isa = XCConfigurationList; + buildConfigurations = ( + BC_B3B360DE1D00D5D3DE54D0467886EEDD /* Production Debug */, + BC_FF3600FA7FDB235869A6CB7BBDBD8C86 /* Production Release */, + BC_85A9D050B594B6F44602E90470E75818 /* Staging Debug */, + BC_865AB65A39A201C7BF448737D287EF85 /* Staging Release */, + BC_D4FC53C776F8F2638D1D294F70517658 /* Test Debug */, + BC_83922E2AEA387FB9ABF402C3F401DBA1 /* Test Release */, + ); + defaultConfigurationIsVisible = 0; + defaultConfigurationName = ""; + }; + CL_F6ECF2D45799DBBB48DE9AE80AC280AA /* Build configuration list for PBXNativeTarget "StaticLibrary_ObjC_iOS" */ = { + isa = XCConfigurationList; + buildConfigurations = ( + BC_B3CC7B17DDF2C081536FC92CF25981BD /* Production Debug */, + BC_7D0687E6BFF4B05D03341A00447B5070 /* Production Release */, + BC_B6F81B24E04D91DFE5F36AAF99FCFA5D /* Staging Debug */, + BC_BC88A6EBF48BB9B821C5B8001678AC2E /* Staging Release */, + BC_1D9A30F2A4E9057FD8A7101D4AA4F47D /* Test Debug */, + BC_DA0BB134B708A4D257F250D3FA757711 /* Test Release */, + ); + defaultConfigurationIsVisible = 0; + defaultConfigurationName = ""; + }; + CL_F8A83116F913B5DD0538C3680E08BDDB /* Build configuration list for PBXLegacyTarget "Legacy" */ = { + isa = XCConfigurationList; + buildConfigurations = ( + BC_057931652E9069AFF23BA573B6564BE5 /* Production Debug */, + BC_5B12F047BB0206FED25C955314A29B18 /* Production Release */, + BC_8895B9B729A8000331A682AF912CA229 /* Staging Debug */, + BC_2DB4D72679A12506C6A8B4728F130B7D /* Staging Release */, + BC_2D532F03F57D7D107FDAC3EF23DBFBFE /* Test Debug */, + BC_7BA9BA11D163D5F132FE6FFBA4DA1AB8 /* Test Release */, ); defaultConfigurationIsVisible = 0; defaultConfigurationName = ""; @@ -5092,19 +5050,19 @@ /* End XCConfigurationList section */ /* Begin XCVersionGroup section */ - VG_229021855709 /* Model.xcdatamodeld */ = { + VG_EB676136B9F946373D4796800CC00AD4 /* Model.xcdatamodeld */ = { isa = XCVersionGroup; children = ( - FR_796781152159 /* Model 2.xcdatamodel */, - FR_263408310401 /* Model 3.xcdatamodel */, - FR_570918052822 /* Model.xcdatamodel */, + FR_347062562C9C212A082B1326BBCDC71B /* Model 2.xcdatamodel */, + FR_6643E0FE8DD9AAC71691A739070C6833 /* Model 3.xcdatamodel */, + FR_58A974F0E117C1384FD1B5147E524659 /* Model.xcdatamodel */, ); - currentVersion = FR_796781152159 /* Model 2.xcdatamodel */; + currentVersion = FR_347062562C9C212A082B1326BBCDC71B /* Model 2.xcdatamodel */; path = Model.xcdatamodeld; sourceTree = ""; versionGroupType = wrapper.xcdatamodel; }; /* End XCVersionGroup section */ }; - rootObject = P_8448771205358 /* Project object */; + rootObject = P_88EC38DC1E39C9039D2FA49EDC2FA124 /* Project object */; } diff --git a/Tests/Fixtures/TestProject/Project.xcodeproj/xcshareddata/xcschemes/App_iOS Production.xcscheme b/Tests/Fixtures/TestProject/Project.xcodeproj/xcshareddata/xcschemes/App_iOS Production.xcscheme index 7ab45029..3c8c9251 100644 --- a/Tests/Fixtures/TestProject/Project.xcodeproj/xcshareddata/xcschemes/App_iOS Production.xcscheme +++ b/Tests/Fixtures/TestProject/Project.xcodeproj/xcshareddata/xcschemes/App_iOS Production.xcscheme @@ -14,7 +14,7 @@ buildForAnalyzing = "YES"> @@ -33,7 +33,7 @@ skipped = "NO"> @@ -43,7 +43,7 @@ skipped = "NO"> @@ -53,21 +53,21 @@ - - + + @@ -86,21 +86,21 @@ runnableDebuggingMode = "0"> - - + + @@ -115,21 +115,21 @@ runnableDebuggingMode = "0"> - - + + @@ -33,7 +33,7 @@ skipped = "NO"> @@ -43,7 +43,7 @@ skipped = "NO"> @@ -53,21 +53,21 @@ - - + + @@ -86,21 +86,21 @@ runnableDebuggingMode = "0"> - - + + @@ -115,21 +115,21 @@ runnableDebuggingMode = "0"> - - + + @@ -33,7 +33,7 @@ skipped = "NO"> @@ -43,7 +43,7 @@ skipped = "NO"> @@ -53,21 +53,21 @@ - - + + @@ -86,21 +86,21 @@ runnableDebuggingMode = "0"> - - + + @@ -115,21 +115,21 @@ runnableDebuggingMode = "0"> - - + + @@ -32,7 +32,7 @@ @@ -57,7 +57,7 @@ runnableDebuggingMode = "0"> @@ -78,7 +78,7 @@ runnableDebuggingMode = "0"> diff --git a/Tests/Fixtures/TestProject/Project.xcodeproj/xcshareddata/xcschemes/Framework.xcscheme b/Tests/Fixtures/TestProject/Project.xcodeproj/xcshareddata/xcschemes/Framework.xcscheme index 7cd199b6..a9f290e1 100644 --- a/Tests/Fixtures/TestProject/Project.xcodeproj/xcshareddata/xcschemes/Framework.xcscheme +++ b/Tests/Fixtures/TestProject/Project.xcodeproj/xcshareddata/xcschemes/Framework.xcscheme @@ -14,7 +14,7 @@ @@ -32,7 +32,7 @@ buildForAnalyzing = "YES"> @@ -50,7 +50,7 @@ @@ -72,7 +72,7 @@ @@ -101,7 +101,7 @@ runnableDebuggingMode = "0"> diff --git a/Tests/Fixtures/TestProject/Project.xcodeproj/xcshareddata/xcschemes/iMessageApp.xcscheme b/Tests/Fixtures/TestProject/Project.xcodeproj/xcshareddata/xcschemes/iMessageApp.xcscheme index 5715467e..3bed2d8f 100644 --- a/Tests/Fixtures/TestProject/Project.xcodeproj/xcshareddata/xcschemes/iMessageApp.xcscheme +++ b/Tests/Fixtures/TestProject/Project.xcodeproj/xcshareddata/xcschemes/iMessageApp.xcscheme @@ -14,7 +14,7 @@ buildForAnalyzing = "YES"> @@ -32,7 +32,7 @@ @@ -57,7 +57,7 @@ runnableDebuggingMode = "0"> @@ -78,7 +78,7 @@ runnableDebuggingMode = "0"> diff --git a/Tests/XcodeGenKitTests/GeneratorHelpers.swift b/Tests/XcodeGenKitTests/GeneratorHelpers.swift index 11157fca..24a077eb 100644 --- a/Tests/XcodeGenKitTests/GeneratorHelpers.swift +++ b/Tests/XcodeGenKitTests/GeneratorHelpers.swift @@ -2,7 +2,7 @@ import PathKit import ProjectSpec import Spectre import XcodeGenKit -import xcproj +import xcodeproj import XCTest import Yams @@ -34,10 +34,10 @@ extension PBXProj { func validateGroup(_ group: PBXGroup) throws { let hasDuplicatedChildren = group.children.count != Set(group.children).count if hasDuplicatedChildren { - throw failure("Group \"\(group.nameOrPath)\" has duplicated children:\n - \(group.children.sorted().joined(separator: "\n - "))") + throw failure("Group \"\(group.nameOrPath)\" has duplicated children:\n - \(group.children.map { String(describing: $0) }.joined(separator: "\n - "))") } for child in group.children { - if let group = objects.groups.getReference(child) { + if let group = child as? PBXGroup { try validateGroup(group) } } diff --git a/Tests/XcodeGenKitTests/PerformanceTests.swift b/Tests/XcodeGenKitTests/PerformanceTests.swift index 1aed1194..6ecaec3d 100644 --- a/Tests/XcodeGenKitTests/PerformanceTests.swift +++ b/Tests/XcodeGenKitTests/PerformanceTests.swift @@ -1,5 +1,5 @@ import XcodeGenKit -import xcproj +import xcodeproj import Foundation import XCTest import ProjectSpec @@ -22,6 +22,7 @@ class GeneratedPerformanceTests: XCTestCase { let generator = ProjectGenerator(project: project) let xcodeProject = try generator.generateXcodeProject() self.measure { + xcodeProject.pbxproj.invalidateUUIDs() try! xcodeProject.write(path: project.projectPath) } } @@ -50,6 +51,7 @@ class FixturePerformanceTests: XCTestCase { let generator = ProjectGenerator(project: project) let xcodeProject = try generator.generateXcodeProject() self.measure { + xcodeProject.pbxproj.invalidateUUIDs() try! xcodeProject.write(path: project.projectPath) } } diff --git a/Tests/XcodeGenKitTests/ProjectFixtureTests.swift b/Tests/XcodeGenKitTests/ProjectFixtureTests.swift index 8019b0dc..6a0fae4f 100644 --- a/Tests/XcodeGenKitTests/ProjectFixtureTests.swift +++ b/Tests/XcodeGenKitTests/ProjectFixtureTests.swift @@ -2,7 +2,7 @@ import PathKit import ProjectSpec import Spectre import XcodeGenKit -import xcproj +import xcodeproj import XCTest class ProjectFixtureTests: XCTestCase { @@ -18,12 +18,12 @@ class ProjectFixtureTests: XCTestCase { $0.it("generates variant group") { guard let xcodeProject = xcodeProject else { return } - func getFileReferences(_ path: String) -> [ObjectReference] { - return xcodeProject.pbxproj.objects.fileReferences.objectReferences.filter { $0.object.path == path } + func getFileReferences(_ path: String) -> [PBXFileReference] { + return xcodeProject.pbxproj.fileReferences.filter { $0.path == path } } func getVariableGroups(_ name: String?) -> [PBXVariantGroup] { - return xcodeProject.pbxproj.objects.variantGroups.referenceValues.filter { $0.name == name } + return xcodeProject.pbxproj.variantGroups.filter { $0.name == name } } let resourceName = "LocalizedStoryboard.storyboard" @@ -35,13 +35,13 @@ class ProjectFixtureTests: XCTestCase { do { let refs = getFileReferences(baseResource) try expect(refs.count) == 1 - try expect(variableGroup.children.filter { $0 == refs.first?.reference }.count) == 1 + try expect(variableGroup.children.filter { $0 == refs.first }.count) == 1 } do { let refs = getFileReferences(localizedResource) try expect(refs.count) == 1 - try expect(variableGroup.children.filter { $0 == refs.first?.reference }.count) == 1 + try expect(variableGroup.children.filter { $0 == refs.first }.count) == 1 } } diff --git a/Tests/XcodeGenKitTests/ProjectGeneratorTests.swift b/Tests/XcodeGenKitTests/ProjectGeneratorTests.swift index 5db24c36..7c77635b 100644 --- a/Tests/XcodeGenKitTests/ProjectGeneratorTests.swift +++ b/Tests/XcodeGenKitTests/ProjectGeneratorTests.swift @@ -2,7 +2,7 @@ import PathKit import ProjectSpec import Spectre import XcodeGenKit -import xcproj +import xcodeproj import XCTest import Yams @@ -47,11 +47,9 @@ class ProjectGeneratorTests: XCTestCase { let options = SpecOptions(bundleIdPrefix: "com.test") let project = Project(basePath: "", name: "test", targets: [framework], options: options) let pbxProj = try project.generatePbxProj() - guard let target = pbxProj.objects.nativeTargets.first?.value, + guard let target = pbxProj.nativeTargets.first, let buildConfigList = target.buildConfigurationList, - let buildConfigs = pbxProj.objects.configurationLists.getReference(buildConfigList), - let buildConfigReference = buildConfigs.buildConfigurations.first, - let buildConfig = pbxProj.objects.buildConfigurations.getReference(buildConfigReference) else { + let buildConfig = buildConfigList.buildConfigurations.first else { throw failure("Build Config not found") } try expect(buildConfig.buildSettings["PRODUCT_BUNDLE_IDENTIFIER"] as? String) == "com.test.MyFramework" @@ -61,7 +59,7 @@ class ProjectGeneratorTests: XCTestCase { let options = SpecOptions(settingPresets: .none) let project = Project(basePath: "", name: "test", targets: [framework], options: options) let pbxProj = try project.generatePbxProj() - let allSettings = pbxProj.objects.buildConfigurations.referenceValues.reduce([:]) { $0.merged($1.buildSettings) }.keys.sorted() + let allSettings = pbxProj.buildConfigurations.reduce([:]) { $0.merged($1.buildSettings) }.keys.sorted() try expect(allSettings) == ["SETTING_2"] } @@ -69,7 +67,7 @@ class ProjectGeneratorTests: XCTestCase { let options = SpecOptions(developmentLanguage: "de") let project = Project(basePath: "", name: "test", options: options) let pbxProj = try project.generatePbxProj() - guard let pbxProject = pbxProj.objects.projects.first?.value else { + guard let pbxProject = pbxProj.projects.first else { throw failure("Could't find PBXProject") } try expect(pbxProject.developmentRegion) == "de" @@ -98,8 +96,8 @@ class ProjectGeneratorTests: XCTestCase { let project = Project(basePath: "", name: "test", configs: [Config(name: "Aconfig"), Config(name: "Bconfig")], targets: [framework], options: options) let pbxProject = try project.generatePbxProj() - guard let projectConfigListReference = pbxProject.objects.projects.values.first?.buildConfigurationList, - let defaultConfigurationName = pbxProject.objects.configurationLists[projectConfigListReference]?.defaultConfigurationName + guard let projectConfigList = pbxProject.projects.first?.buildConfigurationList, + let defaultConfigurationName = projectConfigList.defaultConfigurationName else { throw failure("Default configuration name not found") } @@ -115,7 +113,7 @@ class ProjectGeneratorTests: XCTestCase { $0.it("generates config defaults") { let project = Project(basePath: "", name: "test") let pbxProj = try project.generatePbxProj() - let configs = pbxProj.objects.buildConfigurations.referenceValues + let configs = pbxProj.buildConfigurations try expect(configs.count) == 2 try expect(configs).contains(name: "Debug") try expect(configs).contains(name: "Release") @@ -128,7 +126,7 @@ class ProjectGeneratorTests: XCTestCase { configs: [Config(name: "config1"), Config(name: "config2")] ) let pbxProj = try project.generatePbxProj() - let configs = pbxProj.objects.buildConfigurations.referenceValues + let configs = pbxProj.buildConfigurations try expect(configs.count) == 2 try expect(configs).contains(name: "config1") try expect(configs).contains(name: "config2") @@ -141,7 +139,7 @@ class ProjectGeneratorTests: XCTestCase { configs: [Config(name: "config")] ) let pbxProj = try project.generatePbxProj() - guard let config = pbxProj.objects.buildConfigurations.first?.value else { + guard let config = pbxProj.buildConfigurations.first else { throw failure("configuration not found") } try expect(config.buildSettings.isEmpty).to.beTrue() @@ -204,8 +202,8 @@ class ProjectGeneratorTests: XCTestCase { $0.it("generates aggregate targets") { let pbxProject = try project.generatePbxProj() - let nativeTargets = pbxProject.objects.nativeTargets.referenceValues - let aggregateTargets = pbxProject.objects.aggregateTargets.referenceValues + let nativeTargets = pbxProject.nativeTargets.sorted { $0.name < $1.name } + let aggregateTargets = pbxProject.aggregateTargets.sorted { $0.name < $1.name } try expect(nativeTargets.count) == 4 try expect(aggregateTargets.count) == 2 @@ -222,8 +220,7 @@ class ProjectGeneratorTests: XCTestCase { let target2 = nativeTargets.first { $0.name == "Other2" } try expect(target2?.dependencies.count) == 2 - let targetDependencies = pbxProject.objects.targetDependencies.referenceValues - try expect(targetDependencies.count) == 7 + try expect(pbxProject.targetDependencies.count) == 7 } } } @@ -235,7 +232,7 @@ class ProjectGeneratorTests: XCTestCase { $0.it("generates targets") { let pbxProject = try project.generatePbxProj() - let nativeTargets = pbxProject.objects.nativeTargets.referenceValues + let nativeTargets = pbxProject.nativeTargets try expect(nativeTargets.count) == 4 try expect(nativeTargets.contains { $0.name == app.name }).beTrue() try expect(nativeTargets.contains { $0.name == framework.name }).beTrue() @@ -253,22 +250,22 @@ class ProjectGeneratorTests: XCTestCase { let project = Project(basePath: "", name: "test", targets: [appTargetWithAttributes, framework, optionalFramework, testTargetWithAttributes]) let pbxProject = try project.generatePbxProj() - guard let targetAttributes = pbxProject.objects.projects.referenceValues.first?.attributes["TargetAttributes"] as? [String: [String: Any]] else { + guard let targetAttributes = pbxProject.projects.first?.targetAttributes else { throw failure("Couldn't find Project TargetAttributes") } - guard let appTarget = pbxProject.objects.targets(named: app.name).first else { + guard let appTarget = pbxProject.targets(named: app.name).first else { throw failure("Couldn't find App Target") } - guard let uiTestTarget = pbxProject.objects.targets(named: uiTest.name).first else { + guard let uiTestTarget = pbxProject.targets(named: uiTest.name).first else { throw failure("Couldn't find UITest Target") } - try expect(targetAttributes[uiTestTarget.reference]?["TestTargetID"] as? String) == appTarget.reference - try expect(targetAttributes[uiTestTarget.reference]?["ProvisioningStyle"] as? String) == "Manual" - try expect(targetAttributes[appTarget.reference]?["ProvisioningStyle"] as? String) == "Automatic" - try expect(targetAttributes[appTarget.reference]?["DevelopmentTeam"] as? String) == "123" + try expect((targetAttributes[uiTestTarget]?["TestTargetID"] as? PBXNativeTarget)?.name) == app.name + try expect(targetAttributes[uiTestTarget]?["ProvisioningStyle"] as? String) == "Manual" + try expect(targetAttributes[appTarget]?["ProvisioningStyle"] as? String) == "Automatic" + try expect(targetAttributes[appTarget]?["DevelopmentTeam"] as? String) == "123" } $0.it("generates platform version") { @@ -277,16 +274,14 @@ class ProjectGeneratorTests: XCTestCase { let pbxProject = try project.generatePbxProj() - guard let projectConfigListReference = pbxProject.objects.projects.values.first?.buildConfigurationList, - let projectConfigReference = pbxProject.objects.configurationLists[projectConfigListReference]?.buildConfigurations.first, - let projectConfig = pbxProject.objects.buildConfigurations[projectConfigReference] + guard let projectConfigList = pbxProject.projects.first?.buildConfigurationList, + let projectConfig = projectConfigList.buildConfigurations.first else { throw failure("Couldn't find Project config") } - guard let targetConfigListReference = pbxProject.objects.nativeTargets.referenceValues.first?.buildConfigurationList, - let targetConfigReference = pbxProject.objects.configurationLists[targetConfigListReference]?.buildConfigurations.first, - let targetConfig = pbxProject.objects.buildConfigurations[targetConfigReference] + guard let targetConfigList = pbxProject.nativeTargets.first?.buildConfigurationList, + let targetConfig = targetConfigList.buildConfigurations.first else { throw failure("Couldn't find Target config") } @@ -303,14 +298,14 @@ class ProjectGeneratorTests: XCTestCase { $0.it("generates dependencies") { let pbxProject = try project.generatePbxProj() - let nativeTargets = pbxProject.objects.nativeTargets.objectReferences - let dependencies = pbxProject.objects.targetDependencies.objectReferences + let nativeTargets = pbxProject.nativeTargets + let dependencies = pbxProject.targetDependencies.sorted { $0.target?.name ?? "" < $1.target?.name ?? "" } try expect(dependencies.count) == 2 - let appTarget = nativeTargets.first { $0.object.name == app.name } - let frameworkTarget = nativeTargets.first { $0.object.name == framework.name } + let appTarget = nativeTargets.first { $0.name == app.name } + let frameworkTarget = nativeTargets.first { $0.name == framework.name } - try expect(dependencies).contains { $0.object.target == appTarget?.reference } - try expect(dependencies).contains { $0.object.target == frameworkTarget?.reference } + try expect(dependencies).contains { $0.target == appTarget } + try expect(dependencies).contains { $0.target == frameworkTarget } } $0.it("generates targets with correct transitive embeds") { @@ -550,20 +545,21 @@ class ProjectGeneratorTests: XCTestCase { let pbxProject = try project.generatePbxProj() for target in targets { - guard let nativeTarget = pbxProject.objects.nativeTargets.referenceValues.first(where: { $0.name == target.name }) else { + guard let nativeTarget = pbxProject.nativeTargets.first(where: { $0.name == target.name }) else { throw failure("PBXNativeTarget for \(target) not found") } let buildPhases = nativeTarget.buildPhases - let resourcesPhases = pbxProject.objects.resourcesBuildPhases.objectReferences.filter { buildPhases.contains($0.reference) } - let frameworkPhases = pbxProject.objects.frameworksBuildPhases.objectReferences.filter { buildPhases.contains($0.reference) } - let copyFilesPhases = pbxProject.objects.copyFilesBuildPhases.objectReferences.filter { buildPhases.contains($0.reference) } + let resourcesPhases = pbxProject.resourcesBuildPhases.filter { buildPhases.contains($0) } + let frameworkPhases = pbxProject.frameworksBuildPhases.filter { buildPhases.contains($0) } + let copyFilesPhases = pbxProject.copyFilesBuildPhases.filter { buildPhases.contains($0) } // ensure only the right resources are copies, no more, no less let expectedResourceFiles = expectedResourceFiles[target.name]! try expect(resourcesPhases.count) == (expectedResourceFiles.isEmpty ? 0 : 1) if !expectedResourceFiles.isEmpty { - let resourceFiles = resourcesPhases[0].object.files - .compactMap { pbxProject.objects.buildFiles[$0]?.fileRef.flatMap { pbxProject.objects.fileReferences[$0]?.nameOrPath } } + let resourceFiles = resourcesPhases[0].files + .compactMap { $0.file } + .map { $0.nameOrPath } try expect(Set(resourceFiles)) == expectedResourceFiles } @@ -571,8 +567,8 @@ class ProjectGeneratorTests: XCTestCase { let expectedLinkedFiles = expectedLinkedFiles[target.name]! try expect(frameworkPhases.count) == (expectedLinkedFiles.isEmpty ? 0 : 1) if !expectedLinkedFiles.isEmpty { - let linkFrameworks = frameworkPhases[0].object.files - .compactMap { pbxProject.objects.buildFiles[$0]?.fileRef.flatMap { pbxProject.objects.fileReferences[$0]?.nameOrPath } } + let linkFrameworks = frameworkPhases[0].files + .compactMap { $0.file?.nameOrPath } try expect(Set(linkFrameworks)) == expectedLinkedFiles } @@ -580,8 +576,8 @@ class ProjectGeneratorTests: XCTestCase { let expectedEmbeddedFrameworks = expectedEmbeddedFrameworks[target.name]! try expect(copyFilesPhases.count) == (expectedEmbeddedFrameworks.isEmpty ? 0 : 1) if !expectedEmbeddedFrameworks.isEmpty { - let copyFiles = copyFilesPhases[0].object.files - .compactMap { pbxProject.objects.buildFiles[$0]?.fileRef.flatMap { pbxProject.objects.fileReferences[$0]?.nameOrPath } } + let copyFiles = copyFilesPhases[0].files + .compactMap { $0.file?.nameOrPath } try expect(Set(copyFiles)) == expectedEmbeddedFrameworks } } @@ -648,11 +644,9 @@ class ProjectGeneratorTests: XCTestCase { let pbxProj = try project.generatePbxProj() func buildSettings(for target: Target) throws -> BuildSettings { - guard let nativeTarget = pbxProj.objects.targets(named: target.name).first?.object, + guard let nativeTarget = pbxProj.targets(named: target.name).first, let buildConfigList = nativeTarget.buildConfigurationList, - let buildConfigs = pbxProj.objects.configurationLists.getReference(buildConfigList), - let buildConfigReference = buildConfigs.buildConfigurations.first, - let buildConfig = pbxProj.objects.buildConfigurations.getReference(buildConfigReference) else { + let buildConfig = buildConfigList.buildConfigurations.first else { throw failure("XCBuildConfiguration not found for Target \(target.name.quoted)") } @@ -706,16 +700,15 @@ class ProjectGeneratorTests: XCTestCase { let pbxProject = try project.generatePbxProj() func scriptBuildPhases(target: Target) throws -> [PBXShellScriptBuildPhase] { - guard let nativeTarget = pbxProject.objects.nativeTargets.referenceValues.first(where: { $0.name == target.name }) else { + guard let nativeTarget = pbxProject.nativeTargets.first(where: { $0.name == target.name }) else { throw failure("PBXNativeTarget for \(target) not found") } let buildPhases = nativeTarget.buildPhases - let scriptPhases = pbxProject.objects.shellScriptBuildPhases.objectReferences.filter({ buildPhases.contains($0.reference) }).map { $0.object } + let scriptPhases = buildPhases.compactMap { $0 as? PBXShellScriptBuildPhase } return scriptPhases } let expectedScriptPhase = PBXShellScriptBuildPhase( - files: [], name: "Copy Swift Objective-C Interface Header", inputPaths: ["$(DERIVED_SOURCES_DIR)/$(SWIFT_OBJC_INTERFACE_HEADER_NAME)"], outputPaths: ["$(BUILT_PRODUCTS_DIR)/include/$(PRODUCT_MODULE_NAME)/$(SWIFT_OBJC_INTERFACE_HEADER_NAME)"], @@ -734,20 +727,18 @@ class ProjectGeneratorTests: XCTestCase { scriptSpec.targets[0].postbuildScripts = [BuildScript(script: .script("script2"))] let pbxProject = try scriptSpec.generatePbxProj() - guard let nativeTarget = pbxProject.objects.nativeTargets.referenceValues + guard let nativeTarget = pbxProject.nativeTargets .first(where: { $0.buildPhases.count >= 2 }) else { throw failure("Target with build phases not found") } let buildPhases = nativeTarget.buildPhases - let scripts = pbxProject.objects.shellScriptBuildPhases - let script1 = scripts.first { $0.value.shellScript == "script1" } - let script2 = scripts.first { $0.value.shellScript == "script2" } - + let scripts = pbxProject.shellScriptBuildPhases + let script1 = scripts.first { $0.shellScript == "script1" } + let script2 = scripts.first { $0.shellScript == "script2" } try expect(scripts.count) == 2 - - try expect(buildPhases.first) == script1?.key - try expect(buildPhases.last) == script2?.key + try expect(buildPhases.first) == script1 + try expect(buildPhases.last) == script2 } $0.it("generates targets with cylical dependencies") { @@ -789,7 +780,7 @@ class ProjectGeneratorTests: XCTestCase { ] let pbxProject = try scriptSpec.generatePbxProj() - let buildRules = pbxProject.objects.buildRules.referenceValues + let buildRules = pbxProject.buildRules try expect(buildRules.count) == 2 let first = buildRules.first { $0.name == "My Rule" }! let second = buildRules.first { $0.name != "My Rule" }! @@ -826,13 +817,12 @@ class ProjectGeneratorTests: XCTestCase { let project = Project(basePath: "", name: "test", targets: [app, framework, optionalFramework, uiTest]) let pbxProject = try project.generatePbxProj() - guard let nativeTarget = pbxProject.objects.nativeTargets.referenceValues.first(where: { $0.name == app.name }) else { + guard let nativeTarget = pbxProject.nativeTargets.first(where: { $0.name == app.name }) else { throw failure("PBXNativeTarget for \(app.name) not found") } - let buildPhases = nativeTarget.buildPhases - let frameworkPhases = pbxProject.objects.frameworksBuildPhases.objectReferences.filter { buildPhases.contains($0.reference) } + let frameworkPhases = nativeTarget.buildPhases.compactMap { $0 as? PBXFrameworksBuildPhase } - let frameworkBuildFiles = frameworkPhases[0].object.files.compactMap { pbxProject.objects.buildFiles[$0] } + let frameworkBuildFiles = frameworkPhases[0].files let buildFileSettings = frameworkBuildFiles.map { $0.settings } try expect(frameworkBuildFiles.count) == 2 @@ -860,8 +850,8 @@ class ProjectGeneratorTests: XCTestCase { schemes: [scheme] ) let xcodeProject = try project.generateXcodeProject() - guard let target = xcodeProject.pbxproj.objects.nativeTargets.objectReferences - .first(where: { $0.object.name == app.name }) else { + guard let target = xcodeProject.pbxproj.nativeTargets + .first(where: { $0.name == app.name }) else { throw failure("Target not found") } guard let xcscheme = xcodeProject.sharedData?.schemes.first else { @@ -887,9 +877,9 @@ class ProjectGeneratorTests: XCTestCase { ].compactMap { $0 } for buildableReference in buildableReferences { - try expect(buildableReference.blueprintIdentifier) == target.reference - try expect(buildableReference.blueprintName) == target.object.name - try expect(buildableReference.buildableName) == "\(target.object.name).\(target.object.productType!.fileExtension!)" + // FIXME: try expect(buildableReference.blueprintIdentifier) == target.reference + try expect(buildableReference.blueprintName) == target.name + try expect(buildableReference.buildableName) == "\(target.name).\(target.productType!.fileExtension!)" } try expect(xcscheme.launchAction?.buildConfiguration) == "Debug" @@ -925,8 +915,8 @@ class ProjectGeneratorTests: XCTestCase { } try expect( - xcodeProject.pbxproj.objects.nativeTargets.objectReferences - .contains(where: { $0.object.name == app.name }) + xcodeProject.pbxproj.nativeTargets + .contains(where: { $0.name == app.name }) ).beTrue() try expect(xcscheme.launchAction?.environmentVariables) == runVariables try expect(xcscheme.testAction?.environmentVariables).to.beNil() @@ -949,10 +939,6 @@ class ProjectGeneratorTests: XCTestCase { try expect(xcodeProject.sharedData?.schemes.count) == 2 - guard let nativeTarget = xcodeProject.pbxproj.objects.nativeTargets.objectReferences - .first(where: { $0.object.name == app.name }) else { - throw failure("Target not found") - } guard let xcscheme = xcodeProject.sharedData?.schemes .first(where: { $0.name == "\(target.name) Test" }) else { throw failure("Scheme not found") @@ -960,7 +946,8 @@ class ProjectGeneratorTests: XCTestCase { guard let buildActionEntry = xcscheme.buildAction?.buildActionEntries.first else { throw failure("Build Action entry not found") } - try expect(buildActionEntry.buildableReference.blueprintIdentifier) == nativeTarget.reference + + try expect(buildActionEntry.buildableReference.blueprintIdentifier.count > 0) == true try expect(xcscheme.launchAction?.buildConfiguration) == "Test Debug" try expect(xcscheme.testAction?.buildConfiguration) == "Test Debug" diff --git a/Tests/XcodeGenKitTests/ProjectSpecTests.swift b/Tests/XcodeGenKitTests/ProjectSpecTests.swift index b3994ca2..d2ff0cba 100644 --- a/Tests/XcodeGenKitTests/ProjectSpecTests.swift +++ b/Tests/XcodeGenKitTests/ProjectSpecTests.swift @@ -2,7 +2,7 @@ import PathKit import ProjectSpec import Spectre import XcodeGenKit -import xcproj +import xcodeproj import XCTest class ProjectSpecTests: XCTestCase { diff --git a/Tests/XcodeGenKitTests/SourceGeneratorTests.swift b/Tests/XcodeGenKitTests/SourceGeneratorTests.swift index b382ab9c..7dec0a53 100644 --- a/Tests/XcodeGenKitTests/SourceGeneratorTests.swift +++ b/Tests/XcodeGenKitTests/SourceGeneratorTests.swift @@ -2,7 +2,7 @@ import PathKit import ProjectSpec import Spectre import XcodeGenKit -import xcproj +import xcodeproj import XCTest import Yams @@ -85,14 +85,16 @@ class SourceGeneratorTests: XCTestCase { let project = Project(basePath: directoryPath, name: "Test", targets: [target]) let pbxProj = try project.generatePbxProj() try pbxProj.expectFile(paths: ["Sources", "Bar.swift"], buildPhase: .sources) - let buildPhase = pbxProj.objects.copyFilesBuildPhases.referenceValues.first + let buildPhase = pbxProj.copyFilesBuildPhases.first try expect(buildPhase?.dstSubfolderSpec) == .frameworks let fileReference = pbxProj.getFileReference( paths: ["Sources", "Foo.framework"], names: ["Sources", "Foo.framework"] - )?.reference ?? "" - let buildFile = pbxProj.objects.buildFiles.objectReferences - .first(where: { $0.object.fileRef == fileReference })?.reference ?? "" + ) + guard let buildFile = pbxProj.buildFiles + .first(where: { $0.file == fileReference }) else { + throw failure("Cant find build file") + } try expect(buildPhase?.files.count) == 1 try expect(buildPhase?.files.contains(buildFile)) == true } @@ -112,16 +114,16 @@ class SourceGeneratorTests: XCTestCase { let project = Project(basePath: directoryPath, name: "Test", targets: [target]) let pbxProj = try project.generatePbxProj() - guard let fileReference = pbxProj.objects.fileReferences.first(where: { $0.value.nameOrPath == "model2.xcdatamodel" }) else { + guard let fileReference = pbxProj.fileReferences.first(where: { $0.nameOrPath == "model2.xcdatamodel" }) else { throw failure("Couldn't find model file reference") } - guard let versionGroup = pbxProj.objects.versionGroups.values.first else { + guard let versionGroup = pbxProj.versionGroups.first else { throw failure("Couldn't find version group") } - try expect(versionGroup.currentVersion) == fileReference.key + try expect(versionGroup.currentVersion) == fileReference try expect(versionGroup.children.count) == 3 try expect(versionGroup.path) == "model.xcdatamodeld" - try expect(fileReference.value.path) == "model2.xcdatamodel" + try expect(fileReference.path) == "model2.xcdatamodel" } $0.it("handles duplicate names") { @@ -458,9 +460,7 @@ class SourceGeneratorTests: XCTestCase { let pbxProj = try project.generatePbxProj() try pbxProj.expectFile(paths: ["Sources/A", "a.swift"], names: ["A", "a.swift"], buildPhase: .sources) - let sourcesBuildPhase = pbxProj.objects.buildPhases - .first(where: { $0.1.buildPhase == BuildPhase.sources })! - .value + let sourcesBuildPhase = pbxProj.buildPhases.first(where: { $0.buildPhase == BuildPhase.sources })! try expect(sourcesBuildPhase.files.count) == 1 } @@ -480,7 +480,7 @@ class SourceGeneratorTests: XCTestCase { let project = Project(basePath: directoryPath, name: "Test", targets: [target]) let pbxProj = try project.generatePbxProj() - let groups = try pbxProj.getMainGroup().children.compactMap { pbxProj.objects.getFileElement(reference: $0)?.nameOrPath } + let groups = try pbxProj.getMainGroup().children.map { $0.nameOrPath } try expect(groups) == ["A", "P", "S", "Frameworks", "Products"] } @@ -503,8 +503,9 @@ class SourceGeneratorTests: XCTestCase { let project = Project(basePath: directoryPath, name: "Test", targets: [target]) let pbxProj = try project.generatePbxProj() - let group = pbxProj.objects.group(named: "Sources", inGroup: try pbxProj.getMainGroup())!.object - let names = group.children.compactMap { pbxProj.objects.getFileElement(reference: $0)?.nameOrPath } + let mainGroup = try pbxProj.getMainGroup() + let group = mainGroup.children.compactMap { $0 as? PBXGroup }.first { $0.nameOrPath == "Sources" }! + let names = group.children.compactMap { $0.nameOrPath } try expect(names) == [ "1file.a", "10file.a", @@ -532,10 +533,10 @@ extension PBXProj { } if let buildPhase = buildPhase { - let buildFile = objects.buildFiles.objectReferences - .first(where: { $0.object.fileRef == fileReference.reference }) + let buildFile = buildFiles + .first(where: { $0.file === fileReference }) let actualBuildPhase = buildFile - .flatMap { buildFile in objects.buildPhases.referenceValues.first { $0.files.contains(buildFile.reference) } }?.buildPhase + .flatMap { buildFile in buildPhases.first { $0.files.contains(buildFile) } }?.buildPhase var error: String? if let buildPhase = buildPhase.buildPhase { @@ -563,24 +564,20 @@ extension PBXProj { } } - func getFileReference(paths: [String], names: [String], file: String = #file, line: Int = #line) -> ObjectReference? { - guard let project = objects.projects.first?.value else { return nil } - guard let mainGroup = objects.groups.getReference(project.mainGroup) else { return nil } + func getFileReference(paths: [String], names: [String], file: String = #file, line: Int = #line) -> PBXFileReference? { + guard let mainGroup = projects.first?.mainGroup else { return nil } return getFileReference(group: mainGroup, paths: paths, names: names) } func getMainGroup(function: String = #function, file: String = #file, line: Int = #line) throws -> PBXGroup { - guard let project = objects.projects.first?.value else { - throw failure("Couldn't find project", file: file, line: line) - } - guard let mainGroup = objects.groups.getReference(project.mainGroup) else { + guard let mainGroup = projects.first?.mainGroup else { throw failure("Couldn't find main group", file: file, line: line) } return mainGroup } - private func getFileReference(group: PBXGroup, paths: [String], names: [String]) -> ObjectReference? { + private func getFileReference(group: PBXGroup, paths: [String], names: [String]) -> PBXFileReference? { guard !paths.isEmpty else { return nil } let path = paths.first! @@ -588,16 +585,10 @@ extension PBXProj { let restOfPath = Array(paths.dropFirst()) let restOfName = Array(names.dropFirst()) if restOfPath.isEmpty { - let fileReferences: [ObjectReference] = group.children.compactMap { reference in - if let fileReference = self.objects.fileReferences.getReference(reference) { - return ObjectReference(reference: reference, object: fileReference) - } else { - return nil - } - } - return fileReferences.first { $0.object.path == path && $0.object.nameOrPath == name } + let fileReferences: [PBXFileReference] = group.children.compactMap { $0 as? PBXFileReference } + return fileReferences.first { $0.path == path && $0.nameOrPath == name } } else { - let groups = group.children.compactMap { self.objects.groups.getReference($0) } + let groups = group.children.compactMap { $0 as? PBXGroup } guard let group = groups.first(where: { $0.path == path && $0.nameOrPath == name }) else { return nil } return getFileReference(group: group, paths: restOfPath, names: restOfName) } diff --git a/Tests/XcodeGenKitTests/SpecLoadingTests.swift b/Tests/XcodeGenKitTests/SpecLoadingTests.swift index ce9836d2..6c2de296 100644 --- a/Tests/XcodeGenKitTests/SpecLoadingTests.swift +++ b/Tests/XcodeGenKitTests/SpecLoadingTests.swift @@ -3,7 +3,7 @@ import PathKit import ProjectSpec import Spectre import XcodeGenKit -import xcproj +import xcodeproj import XCTest class SpecLoadingTests: XCTestCase { diff --git a/Tests/XcodeGenKitTests/TestHelpers.swift b/Tests/XcodeGenKitTests/TestHelpers.swift index 49b07818..54a7b700 100644 --- a/Tests/XcodeGenKitTests/TestHelpers.swift +++ b/Tests/XcodeGenKitTests/TestHelpers.swift @@ -2,7 +2,7 @@ import Foundation import PathKit import ProjectSpec import Spectre -import xcproj +import xcodeproj import XCTest let fixturePath = Path(#file).parent().parent() + "Fixtures" diff --git a/Tests/XcodeGenKitTests/TestProject.swift b/Tests/XcodeGenKitTests/TestProject.swift index ebc28180..defb3d22 100644 --- a/Tests/XcodeGenKitTests/TestProject.swift +++ b/Tests/XcodeGenKitTests/TestProject.swift @@ -1,7 +1,7 @@ import Foundation import ProjectSpec import PathKit -import xcproj +import xcodeproj extension Project {