mirror of
https://github.com/yonaskolb/XcodeGen.git
synced 2024-09-20 09:08:46 +03:00
Automatically copy XPC Services to correct location
This commit is contained in:
parent
0a88147956
commit
341e0214ed
@ -40,6 +40,11 @@ public struct TargetSource: Equatable {
|
||||
case carbonResources
|
||||
|
||||
public struct CopyFilesSettings: Equatable, Hashable {
|
||||
public static let xpcServices = CopyFilesSettings(
|
||||
destination: .productsDirectory,
|
||||
subpath: "$(CONTENTS_FOLDER_PATH)/XPCServices"
|
||||
)
|
||||
|
||||
public enum Destination: String {
|
||||
case absolutePath
|
||||
case productsDirectory
|
||||
|
@ -429,6 +429,7 @@ public class PBXProjGenerator {
|
||||
var dependencies: [String] = []
|
||||
var targetFrameworkBuildFiles: [String] = []
|
||||
var frameworkBuildPaths = Set<String>()
|
||||
var copyFilesBuildPhasesFiles: [TargetSource.BuildPhase.CopyFilesSettings: [String]] = [:]
|
||||
var copyFrameworksReferences: [String] = []
|
||||
var copyResourcesReferences: [String] = []
|
||||
var copyWatchReferences: [String] = []
|
||||
@ -500,6 +501,8 @@ public class PBXProjGenerator {
|
||||
copyFrameworksReferences.append(embedFile.reference)
|
||||
} else if dependencyTarget.type.isApp && dependencyTarget.platform == .watchOS {
|
||||
copyWatchReferences.append(embedFile.reference)
|
||||
} else if dependencyTarget.type == .xpcService {
|
||||
copyFilesBuildPhasesFiles[.xpcServices, default: []].append(embedFile.reference)
|
||||
} else {
|
||||
copyResourcesReferences.append(embedFile.reference)
|
||||
}
|
||||
@ -657,7 +660,7 @@ public class PBXProjGenerator {
|
||||
buildPhases.append(script.reference)
|
||||
}
|
||||
|
||||
let copyFilesBuildPhasesFiles = getBuildFilesForCopyFilesPhases()
|
||||
copyFilesBuildPhasesFiles.merge(getBuildFilesForCopyFilesPhases()) { $0 + $1 }
|
||||
if !copyFilesBuildPhasesFiles.isEmpty {
|
||||
for (copyFiles, buildPhaseFiles) in copyFilesBuildPhasesFiles {
|
||||
let copyFilesBuildPhase = createObject(
|
||||
|
@ -197,6 +197,7 @@ class SourceGenerator {
|
||||
subpath: "include/$(PRODUCT_NAME)"
|
||||
))
|
||||
case "framework": return .frameworks
|
||||
case "xpc": return .copyFiles(.xpcServices)
|
||||
case "xcconfig", "entitlements", "gpx", "lproj", "apns": return nil
|
||||
default: return .resources
|
||||
}
|
||||
|
@ -29,6 +29,7 @@
|
||||
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_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 */; };
|
||||
@ -45,6 +46,8 @@
|
||||
BF_284620660317 /* MyBundle.bundle in Resources */ = {isa = PBXBuildFile; fileRef = FR_238161558082 /* MyBundle.bundle */; };
|
||||
BF_292474606791 = {isa = PBXBuildFile; fileRef = FR_525119120469 /* Framework.framework */; };
|
||||
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_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"; }; };
|
||||
@ -62,35 +65,46 @@
|
||||
BF_501771188469 /* Alamofire.framework in Embed Frameworks */ = {isa = PBXBuildFile; fileRef = FR_410645050443 /* Alamofire.framework */; settings = {ATTRIBUTES = (CodeSignOnCopy, RemoveHeadersOnCopy, ); }; };
|
||||
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_518775144316 /* SomeXPCService.xpc in CopyFiles */ = {isa = PBXBuildFile; fileRef = FR_229826849033 /* SomeXPCService.xpc */; };
|
||||
BF_526105569599 = {isa = PBXBuildFile; fileRef = FR_437179166843 /* StaticLibrary_Swift.a */; };
|
||||
BF_535236390262 /* Alamofire.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = FR_257516580010 /* Alamofire.framework */; };
|
||||
BF_538515166673 /* LaunchScreen.storyboard in Resources */ = {isa = PBXBuildFile; fileRef = VG_256263906698 /* LaunchScreen.storyboard */; };
|
||||
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_597639300414 /* Framework.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = FR_525119120469 /* Framework.framework */; };
|
||||
BF_607543323797 /* StaticLibrary_ObjC.h in CopyFiles */ = {isa = PBXBuildFile; fileRef = FR_698230898030 /* StaticLibrary_ObjC.h */; };
|
||||
BF_612351978356 /* Interface.storyboard in Resources */ = {isa = PBXBuildFile; fileRef = VG_264279911176 /* Interface.storyboard */; };
|
||||
BF_624802436672 /* FrameworkFile.swift in Sources */ = {isa = PBXBuildFile; fileRef = FR_172952167809 /* FrameworkFile.swift */; };
|
||||
BF_632297340262 /* StaticLibrary_ObjC.m in Sources */ = {isa = PBXBuildFile; fileRef = "FR_698230898030-1" /* StaticLibrary_ObjC.m */; };
|
||||
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_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_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_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_742449020987 /* Alamofire.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = FR_410645050443 /* Alamofire.framework */; };
|
||||
BF_747443236192 /* App_watchOS.app in Embed Watch Content */ = {isa = PBXBuildFile; fileRef = FR_324671077936 /* App_watchOS.app */; settings = {ATTRIBUTES = (RemoveHeadersOnCopy, ); }; };
|
||||
BF_752022362638 /* module.modulemap in CopyFiles */ = {isa = PBXBuildFile; fileRef = FR_665156855283 /* module.modulemap */; };
|
||||
BF_757906110813 = {isa = PBXBuildFile; fileRef = FR_662315837182 /* Framework.framework */; };
|
||||
BF_770495922915 /* StaticLibrary_ObjC.a in Frameworks */ = {isa = PBXBuildFile; fileRef = FR_399755008402 /* StaticLibrary_ObjC.a */; };
|
||||
BF_803757127643 = {isa = PBXBuildFile; fileRef = FR_739513596122 /* XPC_ServiceProtocol.h */; settings = {ATTRIBUTES = (Public, ); }; };
|
||||
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_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_854463933379 = {isa = PBXBuildFile; fileRef = FR_438704538506 /* Framework.framework */; };
|
||||
BF_854691035877 /* Alamofire.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = FR_257516580010 /* Alamofire.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_863842036151 /* Alamofire.framework in Embed Frameworks */ = {isa = PBXBuildFile; fileRef = FR_410645050443 /* Alamofire.framework */; settings = {ATTRIBUTES = (CodeSignOnCopy, RemoveHeadersOnCopy, ); }; };
|
||||
BF_870702193513 /* iMessageExtension.appex in Embed App Extensions */ = {isa = PBXBuildFile; fileRef = FR_618687462494 /* iMessageExtension.appex */; settings = {ATTRIBUTES = (RemoveHeadersOnCopy, ); }; };
|
||||
BF_892119987440 /* AppDelegate.swift in Sources */ = {isa = PBXBuildFile; fileRef = FR_854336462818 /* AppDelegate.swift */; settings = {COMPILER_FLAGS = "-Werror"; }; };
|
||||
BF_897881229855 /* Alamofire.framework in Embed Frameworks */ = {isa = PBXBuildFile; fileRef = FR_257516580010 /* Alamofire.framework */; settings = {ATTRIBUTES = (CodeSignOnCopy, RemoveHeadersOnCopy, ); }; };
|
||||
BF_898051828670 /* Alamofire.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = FR_752394658615 /* Alamofire.framework */; };
|
||||
BF_901390118565 /* FrameworkFile.swift in Sources */ = {isa = PBXBuildFile; fileRef = FR_172952167809 /* FrameworkFile.swift */; };
|
||||
BF_905038616071 /* Framework.framework in Embed Frameworks */ = {isa = PBXBuildFile; fileRef = FR_472296042419 /* Framework.framework */; settings = {ATTRIBUTES = (CodeSignOnCopy, RemoveHeadersOnCopy, ); }; };
|
||||
@ -121,6 +135,13 @@
|
||||
remoteGlobalIDString = NT_825232110500;
|
||||
remoteInfo = App_iOS;
|
||||
};
|
||||
CIP_23558050412 /* PBXContainerItemProxy */ = {
|
||||
isa = PBXContainerItemProxy;
|
||||
containerPortal = P_8448771205358 /* Project object */;
|
||||
proxyType = 1;
|
||||
remoteGlobalIDString = NT_525119120469;
|
||||
remoteInfo = Framework_macOS;
|
||||
};
|
||||
CIP_28856087625 /* PBXContainerItemProxy */ = {
|
||||
isa = PBXContainerItemProxy;
|
||||
containerPortal = P_8448771205358 /* Project object */;
|
||||
@ -142,6 +163,13 @@
|
||||
remoteGlobalIDString = NT_399755008402;
|
||||
remoteInfo = StaticLibrary_ObjC;
|
||||
};
|
||||
CIP_62903878492 /* PBXContainerItemProxy */ = {
|
||||
isa = PBXContainerItemProxy;
|
||||
containerPortal = P_8448771205358 /* Project object */;
|
||||
proxyType = 1;
|
||||
remoteGlobalIDString = NT_399755008402;
|
||||
remoteInfo = StaticLibrary_ObjC;
|
||||
};
|
||||
CIP_66745555235 /* PBXContainerItemProxy */ = {
|
||||
isa = PBXContainerItemProxy;
|
||||
containerPortal = P_8448771205358 /* Project object */;
|
||||
@ -163,6 +191,13 @@
|
||||
remoteGlobalIDString = NT_399755008402;
|
||||
remoteInfo = StaticLibrary_ObjC;
|
||||
};
|
||||
CIP_74378499241 /* PBXContainerItemProxy */ = {
|
||||
isa = PBXContainerItemProxy;
|
||||
containerPortal = P_8448771205358 /* Project object */;
|
||||
proxyType = 1;
|
||||
remoteGlobalIDString = NT_376569054786;
|
||||
remoteInfo = "XPC Service";
|
||||
};
|
||||
CIP_74741847386 /* PBXContainerItemProxy */ = {
|
||||
isa = PBXContainerItemProxy;
|
||||
containerPortal = P_8448771205358 /* Project object */;
|
||||
@ -256,6 +291,18 @@
|
||||
name = "Embed App Extensions";
|
||||
runOnlyForDeploymentPostprocessing = 0;
|
||||
};
|
||||
CFBP_4930089528 /* Embed Frameworks */ = {
|
||||
isa = PBXCopyFilesBuildPhase;
|
||||
buildActionMask = 2147483647;
|
||||
dstPath = "";
|
||||
dstSubfolderSpec = 10;
|
||||
files = (
|
||||
BF_552913093094 /* Framework.framework in Embed Frameworks */,
|
||||
BF_897881229855 /* Alamofire.framework in Embed Frameworks */,
|
||||
);
|
||||
name = "Embed Frameworks";
|
||||
runOnlyForDeploymentPostprocessing = 0;
|
||||
};
|
||||
CFBP_5460766702 /* Embed App Extensions */ = {
|
||||
isa = PBXCopyFilesBuildPhase;
|
||||
buildActionMask = 2147483647;
|
||||
@ -289,16 +336,29 @@
|
||||
);
|
||||
runOnlyForDeploymentPostprocessing = 0;
|
||||
};
|
||||
CFBP_8368933518 /* 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 */,
|
||||
);
|
||||
runOnlyForDeploymentPostprocessing = 0;
|
||||
};
|
||||
/* End PBXCopyFilesBuildPhase section */
|
||||
|
||||
/* Begin PBXFileReference section */
|
||||
FR_118219888726 /* Base */ = {isa = PBXFileReference; lastKnownFileType = file.storyboard; name = Base; path = Base.lproj/LocalizedStoryboard.storyboard; sourceTree = "<group>"; };
|
||||
FR_123503999387 /* App_iOS_UITests.xctest */ = {isa = PBXFileReference; includeInIndex = 0; lastKnownFileType = wrapper.cfbundle; path = App_iOS_UITests.xctest; sourceTree = BUILT_PRODUCTS_DIR; };
|
||||
FR_145531354566 /* TestProjectUITests.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = TestProjectUITests.swift; sourceTree = "<group>"; };
|
||||
FR_151462316179 /* main.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = main.m; sourceTree = "<group>"; };
|
||||
FR_172952167809 /* FrameworkFile.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = FrameworkFile.swift; sourceTree = "<group>"; };
|
||||
FR_183521624014 /* MyFramework.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = MyFramework.h; sourceTree = "<group>"; };
|
||||
FR_196911129660 /* MoreUnder.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = MoreUnder.swift; sourceTree = "<group>"; };
|
||||
FR_201160695646 /* Base */ = {isa = PBXFileReference; lastKnownFileType = file.storyboard; name = Base; path = Base.lproj/MainInterface.storyboard; sourceTree = "<group>"; };
|
||||
FR_229826849033 /* SomeXPCService.xpc */ = {isa = PBXFileReference; path = SomeXPCService.xpc; sourceTree = "<group>"; };
|
||||
FR_232605427418 /* Mintfile */ = {isa = PBXFileReference; path = Mintfile; sourceTree = "<group>"; };
|
||||
FR_238161558082 /* MyBundle.bundle */ = {isa = PBXFileReference; lastKnownFileType = "wrapper.plug-in"; path = MyBundle.bundle; sourceTree = "<group>"; };
|
||||
FR_247808626608 /* Info.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = "<group>"; };
|
||||
@ -313,6 +373,7 @@
|
||||
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 = "<group>"; };
|
||||
FR_363921640403 /* InterfaceController.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = InterfaceController.swift; sourceTree = "<group>"; };
|
||||
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 = "<group>"; };
|
||||
FR_399755008402 /* StaticLibrary_ObjC.a */ = {isa = PBXFileReference; includeInIndex = 0; lastKnownFileType = archive.ar; path = StaticLibrary_ObjC.a; sourceTree = BUILT_PRODUCTS_DIR; };
|
||||
FR_408537768279 /* StandaloneAssets.xcassets */ = {isa = PBXFileReference; lastKnownFileType = folder.assetcatalog; path = StandaloneAssets.xcassets; sourceTree = "<group>"; };
|
||||
@ -325,6 +386,7 @@
|
||||
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 = "<group>"; };
|
||||
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 = "<group>"; };
|
||||
FR_500792082643 /* en */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = en; path = en.lproj/LocalizedStoryboard.strings; sourceTree = "<group>"; };
|
||||
FR_505327409380 /* Info.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = "<group>"; };
|
||||
@ -334,6 +396,8 @@
|
||||
FR_570918052822 /* Model.xcdatamodel */ = {isa = PBXFileReference; lastKnownFileType = wrapper.xcdatamodel; path = Model.xcdatamodel; sourceTree = "<group>"; };
|
||||
FR_587738154368 /* Assets.xcassets */ = {isa = PBXFileReference; lastKnownFileType = folder.assetcatalog; path = Assets.xcassets; sourceTree = "<group>"; };
|
||||
FR_602633703434 /* en */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = en; path = en.lproj/Localizable.stringsdict; sourceTree = "<group>"; };
|
||||
FR_602719163945 /* XPC_Service.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = XPC_Service.m; sourceTree = "<group>"; };
|
||||
FR_602719163962 /* XPC_Service.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = XPC_Service.h; sourceTree = "<group>"; };
|
||||
FR_609193904586 /* Base */ = {isa = PBXFileReference; lastKnownFileType = file.storyboard; name = Base; path = Base.lproj/Main.storyboard; sourceTree = "<group>"; };
|
||||
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 = "<group>"; };
|
||||
@ -348,6 +412,7 @@
|
||||
"FR_698230898030-1" /* StaticLibrary_ObjC.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = StaticLibrary_ObjC.m; sourceTree = "<group>"; };
|
||||
FR_722239415598 /* TestProjectTests.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = TestProjectTests.swift; sourceTree = "<group>"; };
|
||||
FR_725187762757 /* Info.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = "<group>"; };
|
||||
FR_739513596122 /* XPC_ServiceProtocol.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = XPC_ServiceProtocol.h; sourceTree = "<group>"; };
|
||||
FR_746876637628 /* Base */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = Base; path = Base.lproj/Localizable.stringsdict; sourceTree = "<group>"; };
|
||||
FR_748548478992 /* PushNotificationPayload.apns */ = {isa = PBXFileReference; lastKnownFileType = text; path = PushNotificationPayload.apns; sourceTree = "<group>"; };
|
||||
FR_752394658615 /* Alamofire.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; path = Alamofire.framework; sourceTree = "<group>"; };
|
||||
@ -355,6 +420,7 @@
|
||||
FR_775316160345 /* SomeFile */ = {isa = PBXFileReference; path = SomeFile; sourceTree = "<group>"; };
|
||||
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 = "<group>"; };
|
||||
FR_803921963291 /* Info.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = "<group>"; };
|
||||
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 = "<group>"; };
|
||||
@ -391,6 +457,16 @@
|
||||
);
|
||||
runOnlyForDeploymentPostprocessing = 0;
|
||||
};
|
||||
FBP_48098211678 /* Frameworks */ = {
|
||||
isa = PBXFrameworksBuildPhase;
|
||||
buildActionMask = 2147483647;
|
||||
files = (
|
||||
BF_535236390262 /* Alamofire.framework in Frameworks */,
|
||||
BF_597639300414 /* Framework.framework in Frameworks */,
|
||||
BF_770495922915 /* StaticLibrary_ObjC.a in Frameworks */,
|
||||
);
|
||||
runOnlyForDeploymentPostprocessing = 0;
|
||||
};
|
||||
FBP_50702349225 /* Frameworks */ = {
|
||||
isa = PBXFrameworksBuildPhase;
|
||||
buildActionMask = 2147483647;
|
||||
@ -512,6 +588,18 @@
|
||||
path = App_watchOS;
|
||||
sourceTree = "<group>";
|
||||
};
|
||||
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 = "<group>";
|
||||
};
|
||||
G_3997550084026 /* StaticLibrary_ObjC */ = {
|
||||
isa = PBXGroup;
|
||||
children = (
|
||||
@ -540,6 +628,14 @@
|
||||
path = Framework;
|
||||
sourceTree = "<group>";
|
||||
};
|
||||
G_4793969390202 /* Vendor */ = {
|
||||
isa = PBXGroup;
|
||||
children = (
|
||||
FR_229826849033 /* SomeXPCService.xpc */,
|
||||
);
|
||||
path = Vendor;
|
||||
sourceTree = "<group>";
|
||||
};
|
||||
G_5070234922517 /* App_watchOS Extension */ = {
|
||||
isa = PBXGroup;
|
||||
children = (
|
||||
@ -658,6 +754,8 @@
|
||||
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 */,
|
||||
@ -677,6 +775,7 @@
|
||||
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_525119120469 /* Framework.framework */,
|
||||
@ -687,6 +786,7 @@
|
||||
FR_618687462494 /* iMessageExtension.appex */,
|
||||
FR_399755008402 /* StaticLibrary_ObjC.a */,
|
||||
FR_437179166843 /* StaticLibrary_Swift.a */,
|
||||
FR_376569054786 /* XPC Service.xpc */,
|
||||
);
|
||||
name = Products;
|
||||
sourceTree = "<group>";
|
||||
@ -794,6 +894,21 @@
|
||||
productReference = FR_324671077936 /* App_watchOS.app */;
|
||||
productType = "com.apple.product-type.application.watchapp2";
|
||||
};
|
||||
NT_376569054786 /* XPC Service */ = {
|
||||
isa = PBXNativeTarget;
|
||||
buildConfigurationList = CL_376569054786 /* Build configuration list for PBXNativeTarget "XPC Service" */;
|
||||
buildPhases = (
|
||||
SBP_37656905478 /* Sources */,
|
||||
);
|
||||
buildRules = (
|
||||
);
|
||||
dependencies = (
|
||||
);
|
||||
name = "XPC Service";
|
||||
productName = "XPC Service";
|
||||
productReference = FR_376569054786 /* XPC Service.xpc */;
|
||||
productType = "com.apple.product-type.xpc-service";
|
||||
};
|
||||
NT_399755008402 /* StaticLibrary_ObjC */ = {
|
||||
isa = PBXNativeTarget;
|
||||
buildConfigurationList = CL_399755008402 /* Build configuration list for PBXNativeTarget "StaticLibrary_ObjC" */;
|
||||
@ -864,6 +979,27 @@
|
||||
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 */,
|
||||
CFBP_8368933518 /* CopyFiles */,
|
||||
FBP_48098211678 /* Frameworks */,
|
||||
CFBP_4930089528 /* Embed Frameworks */,
|
||||
);
|
||||
buildRules = (
|
||||
);
|
||||
dependencies = (
|
||||
TD_235580504123 /* PBXTargetDependency */,
|
||||
TD_629038784927 /* 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" */;
|
||||
@ -1011,6 +1147,9 @@
|
||||
NT_123503999387 = {
|
||||
TestTargetID = NT_825232110500;
|
||||
};
|
||||
NT_480982116789 = {
|
||||
ProvisioningStyle = Automatic;
|
||||
};
|
||||
NT_825232110500 = {
|
||||
ProvisioningStyle = Automatic;
|
||||
};
|
||||
@ -1031,6 +1170,7 @@
|
||||
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_472296042419 /* Framework_iOS */,
|
||||
@ -1041,6 +1181,7 @@
|
||||
NT_399755008402 /* StaticLibrary_ObjC */,
|
||||
NT_437179166843 /* StaticLibrary_Swift */,
|
||||
AT_445731917037 /* SuperTarget */,
|
||||
NT_376569054786 /* XPC Service */,
|
||||
NT_935153865209 /* iMessageApp */,
|
||||
NT_618687462494 /* iMessageExtension */,
|
||||
);
|
||||
@ -1266,6 +1407,15 @@
|
||||
);
|
||||
runOnlyForDeploymentPostprocessing = 0;
|
||||
};
|
||||
SBP_37656905478 /* Sources */ = {
|
||||
isa = PBXSourcesBuildPhase;
|
||||
buildActionMask = 2147483647;
|
||||
files = (
|
||||
BF_855988705556 /* XPC_Service.m in Sources */,
|
||||
BF_304637845091 /* main.m in Sources */,
|
||||
);
|
||||
runOnlyForDeploymentPostprocessing = 0;
|
||||
};
|
||||
SBP_39975500840 /* Sources */ = {
|
||||
isa = PBXSourcesBuildPhase;
|
||||
buildActionMask = 2147483647;
|
||||
@ -1305,6 +1455,14 @@
|
||||
);
|
||||
runOnlyForDeploymentPostprocessing = 0;
|
||||
};
|
||||
SBP_48098211678 /* Sources */ = {
|
||||
isa = PBXSourcesBuildPhase;
|
||||
buildActionMask = 2147483647;
|
||||
files = (
|
||||
BF_704149935229 /* Standalone.swift in Sources */,
|
||||
);
|
||||
runOnlyForDeploymentPostprocessing = 0;
|
||||
};
|
||||
SBP_50702349225 /* Sources */ = {
|
||||
isa = PBXSourcesBuildPhase;
|
||||
buildActionMask = 2147483647;
|
||||
@ -1384,6 +1542,11 @@
|
||||
target = NT_825232110500 /* App_iOS */;
|
||||
targetProxy = CIP_20801090045 /* PBXContainerItemProxy */;
|
||||
};
|
||||
TD_235580504123 /* PBXTargetDependency */ = {
|
||||
isa = PBXTargetDependency;
|
||||
target = NT_525119120469 /* Framework_macOS */;
|
||||
targetProxy = CIP_23558050412 /* PBXContainerItemProxy */;
|
||||
};
|
||||
TD_288560876254 /* PBXTargetDependency */ = {
|
||||
isa = PBXTargetDependency;
|
||||
target = NT_935153865209 /* iMessageApp */;
|
||||
@ -1399,6 +1562,11 @@
|
||||
target = NT_399755008402 /* StaticLibrary_ObjC */;
|
||||
targetProxy = CIP_33710394010 /* PBXContainerItemProxy */;
|
||||
};
|
||||
TD_629038784927 /* PBXTargetDependency */ = {
|
||||
isa = PBXTargetDependency;
|
||||
target = NT_399755008402 /* StaticLibrary_ObjC */;
|
||||
targetProxy = CIP_62903878492 /* PBXContainerItemProxy */;
|
||||
};
|
||||
TD_667455552356 /* PBXTargetDependency */ = {
|
||||
isa = PBXTargetDependency;
|
||||
target = NT_399755008402 /* StaticLibrary_ObjC */;
|
||||
@ -1414,6 +1582,11 @@
|
||||
target = NT_399755008402 /* StaticLibrary_ObjC */;
|
||||
targetProxy = CIP_72152212817 /* PBXContainerItemProxy */;
|
||||
};
|
||||
TD_743784992411 /* PBXTargetDependency */ = {
|
||||
isa = PBXTargetDependency;
|
||||
target = NT_376569054786 /* XPC Service */;
|
||||
targetProxy = CIP_74378499241 /* PBXContainerItemProxy */;
|
||||
};
|
||||
TD_747418473860 /* PBXTargetDependency */ = {
|
||||
isa = PBXTargetDependency;
|
||||
target = NT_472296042419 /* Framework_iOS */;
|
||||
@ -1639,6 +1812,17 @@
|
||||
};
|
||||
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_240587562436 /* Test Debug */ = {
|
||||
isa = XCBuildConfiguration;
|
||||
buildSettings = {
|
||||
@ -1821,6 +2005,27 @@
|
||||
};
|
||||
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 = Vendor/SomeXPCService.xpc/Contents/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_282993554784 /* Production Release */ = {
|
||||
isa = XCBuildConfiguration;
|
||||
buildSettings = {
|
||||
@ -2457,6 +2662,27 @@
|
||||
};
|
||||
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 = Vendor/SomeXPCService.xpc/Contents/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 */ = {
|
||||
isa = XCBuildConfiguration;
|
||||
buildSettings = {
|
||||
@ -2601,6 +2827,17 @@
|
||||
};
|
||||
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 = {
|
||||
@ -2644,6 +2881,27 @@
|
||||
};
|
||||
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 = Vendor/SomeXPCService.xpc/Contents/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_629891546665 /* Production Debug */ = {
|
||||
isa = XCBuildConfiguration;
|
||||
buildSettings = {
|
||||
@ -2723,6 +2981,17 @@
|
||||
};
|
||||
name = "Test Debug";
|
||||
};
|
||||
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 = {
|
||||
@ -2828,6 +3097,27 @@
|
||||
};
|
||||
name = "Production 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 = Vendor/SomeXPCService.xpc/Contents/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 = {
|
||||
@ -3171,6 +3461,17 @@
|
||||
};
|
||||
name = "Production 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 */ = {
|
||||
isa = XCBuildConfiguration;
|
||||
buildSettings = {
|
||||
@ -3188,6 +3489,17 @@
|
||||
};
|
||||
name = "Test Debug";
|
||||
};
|
||||
BC_825545455794 /* 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_831819337335 /* Production Release */ = {
|
||||
isa = XCBuildConfiguration;
|
||||
buildSettings = {
|
||||
@ -3320,6 +3632,27 @@
|
||||
};
|
||||
name = "Test Debug";
|
||||
};
|
||||
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 = Vendor/SomeXPCService.xpc/Contents/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_879000441352 /* Staging Debug */ = {
|
||||
isa = XCBuildConfiguration;
|
||||
buildSettings = {
|
||||
@ -3345,6 +3678,38 @@
|
||||
};
|
||||
name = "Staging 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 = Vendor/SomeXPCService.xpc/Contents/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";
|
||||
};
|
||||
/* End XCBuildConfiguration section */
|
||||
|
||||
/* Begin XCConfigurationList section */
|
||||
@ -3374,6 +3739,19 @@
|
||||
defaultConfigurationIsVisible = 0;
|
||||
defaultConfigurationName = "";
|
||||
};
|
||||
CL_376569054786 /* Build configuration list for PBXNativeTarget "XPC Service" */ = {
|
||||
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 */,
|
||||
);
|
||||
defaultConfigurationIsVisible = 0;
|
||||
defaultConfigurationName = "";
|
||||
};
|
||||
CL_399755008402 /* Build configuration list for PBXNativeTarget "StaticLibrary_ObjC" */ = {
|
||||
isa = XCConfigurationList;
|
||||
buildConfigurations = (
|
||||
@ -3452,6 +3830,19 @@
|
||||
defaultConfigurationIsVisible = 0;
|
||||
defaultConfigurationName = "";
|
||||
};
|
||||
CL_480982116789 /* Build configuration list for PBXNativeTarget "App_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 */,
|
||||
);
|
||||
defaultConfigurationIsVisible = 0;
|
||||
defaultConfigurationName = "";
|
||||
};
|
||||
CL_507023492251 /* Build configuration list for PBXNativeTarget "App_watchOS Extension" */ = {
|
||||
isa = XCConfigurationList;
|
||||
buildConfigurations = (
|
||||
|
49
Tests/Fixtures/TestProject/Vendor/SomeXPCService.xpc/Contents/Info.plist
vendored
Normal file
49
Tests/Fixtures/TestProject/Vendor/SomeXPCService.xpc/Contents/Info.plist
vendored
Normal file
@ -0,0 +1,49 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
|
||||
<plist version="1.0">
|
||||
<dict>
|
||||
<key>BuildMachineOSBuild</key>
|
||||
<string>17G65</string>
|
||||
<key>CFBundleDevelopmentRegion</key>
|
||||
<string>en</string>
|
||||
<key>CFBundleDisplayName</key>
|
||||
<string>XPC Service</string>
|
||||
<key>CFBundleExecutable</key>
|
||||
<string>XPC Service</string>
|
||||
<key>CFBundleIdentifier</key>
|
||||
<string>com.project.XPCService</string>
|
||||
<key>CFBundleInfoDictionaryVersion</key>
|
||||
<string>6.0</string>
|
||||
<key>CFBundleName</key>
|
||||
<string>XPC Service</string>
|
||||
<key>CFBundlePackageType</key>
|
||||
<string>XPC!</string>
|
||||
<key>CFBundleShortVersionString</key>
|
||||
<string>1.0</string>
|
||||
<key>CFBundleSupportedPlatforms</key>
|
||||
<array>
|
||||
<string>MacOSX</string>
|
||||
</array>
|
||||
<key>CFBundleVersion</key>
|
||||
<string>1</string>
|
||||
<key>DTCompiler</key>
|
||||
<string>com.apple.compilers.llvm.clang.1_0</string>
|
||||
<key>DTPlatformBuild</key>
|
||||
<string>9F2000</string>
|
||||
<key>DTPlatformVersion</key>
|
||||
<string>GM</string>
|
||||
<key>DTSDKBuild</key>
|
||||
<string>17E189</string>
|
||||
<key>DTSDKName</key>
|
||||
<string>macosx10.13</string>
|
||||
<key>DTXcode</key>
|
||||
<string>0941</string>
|
||||
<key>DTXcodeBuild</key>
|
||||
<string>9F2000</string>
|
||||
<key>XPCService</key>
|
||||
<dict>
|
||||
<key>ServiceType</key>
|
||||
<string>Application</string>
|
||||
</dict>
|
||||
</dict>
|
||||
</plist>
|
BIN
Tests/Fixtures/TestProject/Vendor/SomeXPCService.xpc/Contents/MacOS/XPC Service
vendored
Executable file
BIN
Tests/Fixtures/TestProject/Vendor/SomeXPCService.xpc/Contents/MacOS/XPC Service
vendored
Executable file
Binary file not shown.
115
Tests/Fixtures/TestProject/Vendor/SomeXPCService.xpc/Contents/_CodeSignature/CodeResources
vendored
Normal file
115
Tests/Fixtures/TestProject/Vendor/SomeXPCService.xpc/Contents/_CodeSignature/CodeResources
vendored
Normal file
@ -0,0 +1,115 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
|
||||
<plist version="1.0">
|
||||
<dict>
|
||||
<key>files</key>
|
||||
<dict/>
|
||||
<key>files2</key>
|
||||
<dict/>
|
||||
<key>rules</key>
|
||||
<dict>
|
||||
<key>^Resources/</key>
|
||||
<true/>
|
||||
<key>^Resources/.*\.lproj/</key>
|
||||
<dict>
|
||||
<key>optional</key>
|
||||
<true/>
|
||||
<key>weight</key>
|
||||
<real>1000</real>
|
||||
</dict>
|
||||
<key>^Resources/.*\.lproj/locversion.plist$</key>
|
||||
<dict>
|
||||
<key>omit</key>
|
||||
<true/>
|
||||
<key>weight</key>
|
||||
<real>1100</real>
|
||||
</dict>
|
||||
<key>^Resources/Base\.lproj/</key>
|
||||
<dict>
|
||||
<key>weight</key>
|
||||
<real>1010</real>
|
||||
</dict>
|
||||
<key>^version.plist$</key>
|
||||
<true/>
|
||||
</dict>
|
||||
<key>rules2</key>
|
||||
<dict>
|
||||
<key>.*\.dSYM($|/)</key>
|
||||
<dict>
|
||||
<key>weight</key>
|
||||
<real>11</real>
|
||||
</dict>
|
||||
<key>^(.*/)?\.DS_Store$</key>
|
||||
<dict>
|
||||
<key>omit</key>
|
||||
<true/>
|
||||
<key>weight</key>
|
||||
<real>2000</real>
|
||||
</dict>
|
||||
<key>^(Frameworks|SharedFrameworks|PlugIns|Plug-ins|XPCServices|Helpers|MacOS|Library/(Automator|Spotlight|LoginItems))/</key>
|
||||
<dict>
|
||||
<key>nested</key>
|
||||
<true/>
|
||||
<key>weight</key>
|
||||
<real>10</real>
|
||||
</dict>
|
||||
<key>^.*</key>
|
||||
<true/>
|
||||
<key>^Info\.plist$</key>
|
||||
<dict>
|
||||
<key>omit</key>
|
||||
<true/>
|
||||
<key>weight</key>
|
||||
<real>20</real>
|
||||
</dict>
|
||||
<key>^PkgInfo$</key>
|
||||
<dict>
|
||||
<key>omit</key>
|
||||
<true/>
|
||||
<key>weight</key>
|
||||
<real>20</real>
|
||||
</dict>
|
||||
<key>^Resources/</key>
|
||||
<dict>
|
||||
<key>weight</key>
|
||||
<real>20</real>
|
||||
</dict>
|
||||
<key>^Resources/.*\.lproj/</key>
|
||||
<dict>
|
||||
<key>optional</key>
|
||||
<true/>
|
||||
<key>weight</key>
|
||||
<real>1000</real>
|
||||
</dict>
|
||||
<key>^Resources/.*\.lproj/locversion.plist$</key>
|
||||
<dict>
|
||||
<key>omit</key>
|
||||
<true/>
|
||||
<key>weight</key>
|
||||
<real>1100</real>
|
||||
</dict>
|
||||
<key>^Resources/Base\.lproj/</key>
|
||||
<dict>
|
||||
<key>weight</key>
|
||||
<real>1010</real>
|
||||
</dict>
|
||||
<key>^[^/]+$</key>
|
||||
<dict>
|
||||
<key>nested</key>
|
||||
<true/>
|
||||
<key>weight</key>
|
||||
<real>10</real>
|
||||
</dict>
|
||||
<key>^embedded\.provisionprofile$</key>
|
||||
<dict>
|
||||
<key>weight</key>
|
||||
<real>20</real>
|
||||
</dict>
|
||||
<key>^version\.plist$</key>
|
||||
<dict>
|
||||
<key>weight</key>
|
||||
<real>20</real>
|
||||
</dict>
|
||||
</dict>
|
||||
</dict>
|
||||
</plist>
|
29
Tests/Fixtures/TestProject/XPC Service/Info.plist
Normal file
29
Tests/Fixtures/TestProject/XPC Service/Info.plist
Normal file
@ -0,0 +1,29 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
|
||||
<plist version="1.0">
|
||||
<dict>
|
||||
<key>CFBundleDevelopmentRegion</key>
|
||||
<string>$(DEVELOPMENT_LANGUAGE)</string>
|
||||
<key>CFBundleDisplayName</key>
|
||||
<string>XPC Service</string>
|
||||
<key>CFBundleExecutable</key>
|
||||
<string>$(EXECUTABLE_NAME)</string>
|
||||
<key>CFBundleIdentifier</key>
|
||||
<string>$(PRODUCT_BUNDLE_IDENTIFIER)</string>
|
||||
<key>CFBundleInfoDictionaryVersion</key>
|
||||
<string>6.0</string>
|
||||
<key>CFBundleName</key>
|
||||
<string>$(PRODUCT_NAME)</string>
|
||||
<key>CFBundlePackageType</key>
|
||||
<string>XPC!</string>
|
||||
<key>CFBundleShortVersionString</key>
|
||||
<string>1.0</string>
|
||||
<key>CFBundleVersion</key>
|
||||
<string>1</string>
|
||||
<key>XPCService</key>
|
||||
<dict>
|
||||
<key>ServiceType</key>
|
||||
<string>Application</string>
|
||||
</dict>
|
||||
</dict>
|
||||
</plist>
|
5
Tests/Fixtures/TestProject/XPC Service/XPC_Service.h
Normal file
5
Tests/Fixtures/TestProject/XPC Service/XPC_Service.h
Normal file
@ -0,0 +1,5 @@
|
||||
#import <Foundation/Foundation.h>
|
||||
#import "XPC_ServiceProtocol.h"
|
||||
|
||||
@interface XPC_Service : NSObject <XPC_ServiceProtocol>
|
||||
@end
|
10
Tests/Fixtures/TestProject/XPC Service/XPC_Service.m
Normal file
10
Tests/Fixtures/TestProject/XPC Service/XPC_Service.m
Normal file
@ -0,0 +1,10 @@
|
||||
#import "XPC_Service.h"
|
||||
|
||||
@implementation XPC_Service
|
||||
|
||||
- (void)upperCaseString:(NSString *)aString withReply:(void (^)(NSString *))reply {
|
||||
NSString *response = [aString uppercaseString];
|
||||
reply(response);
|
||||
}
|
||||
|
||||
@end
|
@ -0,0 +1,9 @@
|
||||
#import <Foundation/Foundation.h>
|
||||
|
||||
// The protocol that this service will vend as its API. This header file will also need to be visible to the process hosting the service.
|
||||
@protocol XPC_ServiceProtocol
|
||||
|
||||
// Replace the API of this protocol with an API appropriate to the service you are vending.
|
||||
- (void)upperCaseString:(NSString *)aString withReply:(void (^)(NSString *))reply;
|
||||
|
||||
@end
|
41
Tests/Fixtures/TestProject/XPC Service/main.m
Normal file
41
Tests/Fixtures/TestProject/XPC Service/main.m
Normal file
@ -0,0 +1,41 @@
|
||||
#import <Foundation/Foundation.h>
|
||||
#import "XPC_Service.h"
|
||||
|
||||
@interface ServiceDelegate : NSObject <NSXPCListenerDelegate>
|
||||
@end
|
||||
|
||||
@implementation ServiceDelegate
|
||||
|
||||
- (BOOL)listener:(NSXPCListener *)listener shouldAcceptNewConnection:(NSXPCConnection *)newConnection {
|
||||
// This method is where the NSXPCListener configures, accepts, and resumes a new incoming NSXPCConnection.
|
||||
|
||||
// Configure the connection.
|
||||
// First, set the interface that the exported object implements.
|
||||
newConnection.exportedInterface = [NSXPCInterface interfaceWithProtocol:@protocol(XPC_ServiceProtocol)];
|
||||
|
||||
// Next, set the object that the connection exports. All messages sent on the connection to this service will be sent to the exported object to handle. The connection retains the exported object.
|
||||
XPC_Service *exportedObject = [XPC_Service new];
|
||||
newConnection.exportedObject = exportedObject;
|
||||
|
||||
// Resuming the connection allows the system to deliver more incoming messages.
|
||||
[newConnection resume];
|
||||
|
||||
// Returning YES from this method tells the system that you have accepted this connection. If you want to reject the connection for some reason, call -invalidate on the connection and return NO.
|
||||
return YES;
|
||||
}
|
||||
|
||||
@end
|
||||
|
||||
int main(int argc, const char *argv[])
|
||||
{
|
||||
// Create the delegate for the service.
|
||||
ServiceDelegate *delegate = [ServiceDelegate new];
|
||||
|
||||
// Set up the one NSXPCListener for this service. It will handle all incoming connections.
|
||||
NSXPCListener *listener = [NSXPCListener serviceListener];
|
||||
listener.delegate = delegate;
|
||||
|
||||
// Resuming the serviceListener starts this service. This method does not return.
|
||||
[listener resume];
|
||||
return 0;
|
||||
}
|
@ -22,6 +22,19 @@ targets:
|
||||
legacy:
|
||||
toolPath: /usr/bin/true
|
||||
passSettings: true
|
||||
|
||||
App_macOS:
|
||||
type: application
|
||||
platform: macOS
|
||||
attributes:
|
||||
ProvisioningStyle: Automatic
|
||||
sources:
|
||||
- path: StandaloneFiles/Standalone.swift
|
||||
- path: Vendor/SomeXPCService.xpc
|
||||
dependencies:
|
||||
- target: Framework_macOS
|
||||
- target: XPC Service
|
||||
|
||||
App_iOS:
|
||||
type: application
|
||||
platform: iOS
|
||||
@ -154,6 +167,13 @@ targets:
|
||||
sources: App_iOS_UITests
|
||||
dependencies:
|
||||
- target: App_iOS
|
||||
|
||||
XPC Service:
|
||||
type: xpc-service
|
||||
platform: macOS
|
||||
sources:
|
||||
- path: XPC Service
|
||||
|
||||
schemes:
|
||||
Framework:
|
||||
build:
|
||||
|
Loading…
Reference in New Issue
Block a user