// !$*UTF8*$!
{
	archiveVersion = 1;
	classes = {
	};
	objectVersion = 48;
	objects = {

/* Begin PBXAggregateTarget section */
		2FEA0A2F24902F5E00EEF3AD /* MoltenVK-tvOS */ = {
			isa = PBXAggregateTarget;
			buildConfigurationList = 2FEA0A3524902F5E00EEF3AD /* Build configuration list for PBXAggregateTarget "MoltenVK-tvOS" */;
			buildPhases = (
				2FEA0A3424902F5E00EEF3AD /* Package MoltenVK */,
			);
			dependencies = (
				2FEA0AC32490303F00EEF3AD /* PBXTargetDependency */,
			);
			name = "MoltenVK-tvOS";
			productName = Package;
		};
		A975D5782140585200D4834F /* MoltenVK-iOS */ = {
			isa = PBXAggregateTarget;
			buildConfigurationList = A975D5882140585200D4834F /* Build configuration list for PBXAggregateTarget "MoltenVK-iOS" */;
			buildPhases = (
				A975D5872140585200D4834F /* Package MoltenVK */,
			);
			dependencies = (
				A975D5792140585200D4834F /* PBXTargetDependency */,
			);
			name = "MoltenVK-iOS";
			productName = Package;
		};
		A975D58B2140586700D4834F /* MoltenVK-macOS */ = {
			isa = PBXAggregateTarget;
			buildConfigurationList = A975D59B2140586700D4834F /* Build configuration list for PBXAggregateTarget "MoltenVK-macOS" */;
			buildPhases = (
				A975D59A2140586700D4834F /* Package MoltenVK */,
			);
			dependencies = (
				A975D58E2140586700D4834F /* PBXTargetDependency */,
			);
			name = "MoltenVK-macOS";
			productName = Package;
		};
		A9AD700D2440ED3B00B9E254 /* MVKShaderConverterTool */ = {
			isa = PBXAggregateTarget;
			buildConfigurationList = A9AD70132440ED3B00B9E254 /* Build configuration list for PBXAggregateTarget "MVKShaderConverterTool" */;
			buildPhases = (
				A9AD70122440ED3B00B9E254 /* Package MoltenVK */,
			);
			dependencies = (
				A9AD70102440ED3B00B9E254 /* PBXTargetDependency */,
			);
			name = MVKShaderConverterTool;
			productName = Package;
		};
		A9FEADBC1F3517480010240E /* MoltenVK */ = {
			isa = PBXAggregateTarget;
			buildConfigurationList = A9FEADDC1F3517480010240E /* Build configuration list for PBXAggregateTarget "MoltenVK" */;
			buildPhases = (
				A9B1008824F84BE400EADC6E /* Package MoltenVK */,
			);
			dependencies = (
				A9B1008124F84BA700EADC6E /* PBXTargetDependency */,
				A9B1008324F84BA700EADC6E /* PBXTargetDependency */,
				A9B1008524F84BA700EADC6E /* PBXTargetDependency */,
			);
			name = MoltenVK;
			productName = Package;
		};
/* End PBXAggregateTarget section */

/* Begin PBXContainerItemProxy section */
		2FEA0ABD2490302F00EEF3AD /* PBXContainerItemProxy */ = {
			isa = PBXContainerItemProxy;
			containerPortal = A92DB3EE1CE0F72500FBC835 /* MoltenVK.xcodeproj */;
			proxyType = 2;
			remoteGlobalIDString = 2FEA0ABA24902F9F00EEF3AD;
			remoteInfo = "MoltenVK-tvOS";
		};
		2FEA0AC22490303F00EEF3AD /* PBXContainerItemProxy */ = {
			isa = PBXContainerItemProxy;
			containerPortal = A92DB3EE1CE0F72500FBC835 /* MoltenVK.xcodeproj */;
			proxyType = 1;
			remoteGlobalIDString = 2FEA0A3B24902F9F00EEF3AD;
			remoteInfo = "MoltenVK-tvOS";
		};
		A92DB3F41CE0F72500FBC835 /* PBXContainerItemProxy */ = {
			isa = PBXContainerItemProxy;
			containerPortal = A92DB3EE1CE0F72500FBC835 /* MoltenVK.xcodeproj */;
			proxyType = 2;
			remoteGlobalIDString = A9B8EE0A1A98D796009C5A02;
			remoteInfo = "MoltenVK-iOS";
		};
		A92DB3F61CE0F72500FBC835 /* PBXContainerItemProxy */ = {
			isa = PBXContainerItemProxy;
			containerPortal = A92DB3EE1CE0F72500FBC835 /* MoltenVK.xcodeproj */;
			proxyType = 2;
			remoteGlobalIDString = A9CBEE011B6299D800E45FDC;
			remoteInfo = "MoltenVK-macOS";
		};
		A975D57A2140585200D4834F /* PBXContainerItemProxy */ = {
			isa = PBXContainerItemProxy;
			containerPortal = A92DB3EE1CE0F72500FBC835 /* MoltenVK.xcodeproj */;
			proxyType = 1;
			remoteGlobalIDString = A9B8EE091A98D796009C5A02;
			remoteInfo = "MoltenVK-iOS";
		};
		A975D58F2140586700D4834F /* PBXContainerItemProxy */ = {
			isa = PBXContainerItemProxy;
			containerPortal = A92DB3EE1CE0F72500FBC835 /* MoltenVK.xcodeproj */;
			proxyType = 1;
			remoteGlobalIDString = A9CBED861B6299D800E45FDC;
			remoteInfo = "MoltenVK-macOS";
		};
		A981498A1FB6B566005F00B4 /* PBXContainerItemProxy */ = {
			isa = PBXContainerItemProxy;
			containerPortal = A92DB40E1CE0F89600FBC835 /* MoltenVKShaderConverter.xcodeproj */;
			proxyType = 2;
			remoteGlobalIDString = A964BD5F1C57EFBD00D930D8;
			remoteInfo = MoltenVKShaderConverter;
		};
		A98149901FB6B566005F00B4 /* PBXContainerItemProxy */ = {
			isa = PBXContainerItemProxy;
			containerPortal = A92DB40E1CE0F89600FBC835 /* MoltenVKShaderConverter.xcodeproj */;
			proxyType = 2;
			remoteGlobalIDString = A93903BF1C57E9D700FE90DC;
			remoteInfo = "MoltenVKSPIRVToMSLConverter-iOS";
		};
		A98149921FB6B566005F00B4 /* PBXContainerItemProxy */ = {
			isa = PBXContainerItemProxy;
			containerPortal = A92DB40E1CE0F89600FBC835 /* MoltenVKShaderConverter.xcodeproj */;
			proxyType = 2;
			remoteGlobalIDString = A93903C71C57E9ED00FE90DC;
			remoteInfo = "MoltenVKSPIRVToMSLConverter-macOS";
		};
		A9AD70112440ED3B00B9E254 /* PBXContainerItemProxy */ = {
			isa = PBXContainerItemProxy;
			containerPortal = A92DB40E1CE0F89600FBC835 /* MoltenVKShaderConverter.xcodeproj */;
			proxyType = 1;
			remoteGlobalIDString = A9092A8C1A81717B00051823;
			remoteInfo = MoltenVKShaderConverter;
		};
		A9B1008024F84BA700EADC6E /* PBXContainerItemProxy */ = {
			isa = PBXContainerItemProxy;
			containerPortal = A92DB3EE1CE0F72500FBC835 /* MoltenVK.xcodeproj */;
			proxyType = 1;
			remoteGlobalIDString = A9B8EE091A98D796009C5A02;
			remoteInfo = "MoltenVK-iOS";
		};
		A9B1008224F84BA700EADC6E /* PBXContainerItemProxy */ = {
			isa = PBXContainerItemProxy;
			containerPortal = A92DB3EE1CE0F72500FBC835 /* MoltenVK.xcodeproj */;
			proxyType = 1;
			remoteGlobalIDString = A9CBED861B6299D800E45FDC;
			remoteInfo = "MoltenVK-macOS";
		};
		A9B1008424F84BA700EADC6E /* PBXContainerItemProxy */ = {
			isa = PBXContainerItemProxy;
			containerPortal = A92DB3EE1CE0F72500FBC835 /* MoltenVK.xcodeproj */;
			proxyType = 1;
			remoteGlobalIDString = 2FEA0A3B24902F9F00EEF3AD;
			remoteInfo = "MoltenVK-tvOS";
		};
		A9FC5F5C249D2547003CB086 /* PBXContainerItemProxy */ = {
			isa = PBXContainerItemProxy;
			containerPortal = A92DB40E1CE0F89600FBC835 /* MoltenVKShaderConverter.xcodeproj */;
			proxyType = 2;
			remoteGlobalIDString = 2FEA0D142490381A00EEF3AD;
			remoteInfo = "MoltenVKSPIRVToMSLConverter-tvOS";
		};
/* End PBXContainerItemProxy section */

/* Begin PBXFileReference section */
		A92DB3E41CE0F37D00FBC835 /* README.md */ = {isa = PBXFileReference; lastKnownFileType = net.daringfireball.markdown; path = README.md; sourceTree = "<group>"; };
		A92DB3E51CE0F37D00FBC835 /* LICENSE */ = {isa = PBXFileReference; lastKnownFileType = text; path = LICENSE; sourceTree = "<group>"; };
		A92DB3E61CE0F37D00FBC835 /* Whats_New.md */ = {isa = PBXFileReference; lastKnownFileType = net.daringfireball.markdown; name = Whats_New.md; path = Docs/Whats_New.md; sourceTree = "<group>"; };
		A92DB3EE1CE0F72500FBC835 /* MoltenVK.xcodeproj */ = {isa = PBXFileReference; lastKnownFileType = "wrapper.pb-project"; name = MoltenVK.xcodeproj; path = MoltenVK/MoltenVK.xcodeproj; sourceTree = "<group>"; };
		A92DB40E1CE0F89600FBC835 /* MoltenVKShaderConverter.xcodeproj */ = {isa = PBXFileReference; lastKnownFileType = "wrapper.pb-project"; name = MoltenVKShaderConverter.xcodeproj; path = MoltenVKShaderConverter/MoltenVKShaderConverter.xcodeproj; sourceTree = "<group>"; };
		A92EF7C621856EA200C8B91B /* package_moltenvk.sh */ = {isa = PBXFileReference; lastKnownFileType = text.script.sh; path = package_moltenvk.sh; sourceTree = "<group>"; };
		A92EF7C721856EA200C8B91B /* package_shader_converter_tool.sh */ = {isa = PBXFileReference; lastKnownFileType = text.script.sh; path = package_shader_converter_tool.sh; sourceTree = "<group>"; };
		A92EF7C921856EA200C8B91B /* package_docs.sh */ = {isa = PBXFileReference; lastKnownFileType = text.script.sh; path = package_docs.sh; sourceTree = "<group>"; };
		A92EF7CA21856EA200C8B91B /* package_update_latest.sh */ = {isa = PBXFileReference; lastKnownFileType = text.script.sh; path = package_update_latest.sh; sourceTree = "<group>"; };
		A92EF7CB21856EA300C8B91B /* package_shader_converter_xcframework.sh */ = {isa = PBXFileReference; lastKnownFileType = text.script.sh; path = package_shader_converter_xcframework.sh; sourceTree = "<group>"; };
		A92EF7DE2186451700C8B91B /* Makefile */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.make; name = Makefile; path = ../Makefile; sourceTree = "<group>"; };
		A93ED4DE24F59CDB00FEB018 /* copy_lib_to_staging.sh */ = {isa = PBXFileReference; lastKnownFileType = text.script.sh; path = copy_lib_to_staging.sh; sourceTree = "<group>"; };
		A93ED4E324F59CDB00FEB018 /* copy_to_staging.sh */ = {isa = PBXFileReference; lastKnownFileType = text.script.sh; path = copy_to_staging.sh; sourceTree = "<group>"; };
		A975D55C213F25D700D4834F /* create_dylib.sh */ = {isa = PBXFileReference; lastKnownFileType = text.script.sh; path = create_dylib.sh; sourceTree = "<group>"; };
		A980A25F24C628F3007A8F6F /* gen_moltenvk_rev_hdr.sh */ = {isa = PBXFileReference; lastKnownFileType = text.script.sh; path = gen_moltenvk_rev_hdr.sh; sourceTree = "<group>"; };
		A98149E51FB78829005F00B4 /* MoltenVK_Runtime_UserGuide.md */ = {isa = PBXFileReference; lastKnownFileType = net.daringfireball.markdown; name = MoltenVK_Runtime_UserGuide.md; path = Docs/MoltenVK_Runtime_UserGuide.md; sourceTree = "<group>"; };
		A9B1007A24F837AF00EADC6E /* create_xcframework_func.sh */ = {isa = PBXFileReference; lastKnownFileType = text.script.sh; path = create_xcframework_func.sh; sourceTree = "<group>"; };
		A9C70F41221B04C800FBA31A /* create_dylib_macos.sh */ = {isa = PBXFileReference; lastKnownFileType = text.script.sh; path = create_dylib_macos.sh; sourceTree = "<group>"; };
		A9C70F45221B04C800FBA31A /* create_dylib_ios.sh */ = {isa = PBXFileReference; lastKnownFileType = text.script.sh; path = create_dylib_ios.sh; sourceTree = "<group>"; };
		A9CBBFF924F8A1EB006D41EF /* package_moltenvk_xcframework.sh */ = {isa = PBXFileReference; lastKnownFileType = text.script.sh; path = package_moltenvk_xcframework.sh; sourceTree = "<group>"; };
		A9DA8340218A198C002AA662 /* .travis.yml */ = {isa = PBXFileReference; lastKnownFileType = text; path = .travis.yml; sourceTree = "<group>"; };
		A9DA8341218A198C002AA662 /* .gitignore */ = {isa = PBXFileReference; lastKnownFileType = text; path = .gitignore; sourceTree = "<group>"; };
		A9FC5F60249D2ED3003CB086 /* package_all.sh */ = {isa = PBXFileReference; lastKnownFileType = text.script.sh; path = package_all.sh; sourceTree = "<group>"; };
		A9FC5F64249D3778003CB086 /* create_dylib_tvos.sh */ = {isa = PBXFileReference; lastKnownFileType = text.script.sh; path = create_dylib_tvos.sh; sourceTree = "<group>"; };
/* End PBXFileReference section */

/* Begin PBXGroup section */
		A90B2B1C1A9B6170008EE819 = {
			isa = PBXGroup;
			children = (
				A92DB3EE1CE0F72500FBC835 /* MoltenVK.xcodeproj */,
				A92DB40E1CE0F89600FBC835 /* MoltenVKShaderConverter.xcodeproj */,
				A975D55B213F25AD00D4834F /* Scripts */,
				A92DB3E11CE0F34500FBC835 /* Docs */,
				A9DA833F218A193F002AA662 /* Git */,
			);
			sourceTree = "<group>";
		};
		A92DB3E11CE0F34500FBC835 /* Docs */ = {
			isa = PBXGroup;
			children = (
				A92DB3E51CE0F37D00FBC835 /* LICENSE */,
				A98149E51FB78829005F00B4 /* MoltenVK_Runtime_UserGuide.md */,
				A92DB3E41CE0F37D00FBC835 /* README.md */,
				A92DB3E61CE0F37D00FBC835 /* Whats_New.md */,
			);
			name = Docs;
			sourceTree = "<group>";
		};
		A92DB3EF1CE0F72500FBC835 /* Products */ = {
			isa = PBXGroup;
			children = (
				A92DB3F51CE0F72500FBC835 /* libMoltenVK.a */,
				2FEA0ABE2490302F00EEF3AD /* libMoltenVK.a */,
				A92DB3F71CE0F72500FBC835 /* libMoltenVK.a */,
			);
			name = Products;
			sourceTree = "<group>";
		};
		A975D55B213F25AD00D4834F /* Scripts */ = {
			isa = PBXGroup;
			children = (
				A93ED4E324F59CDB00FEB018 /* copy_to_staging.sh */,
				A93ED4DE24F59CDB00FEB018 /* copy_lib_to_staging.sh */,
				A9C70F45221B04C800FBA31A /* create_dylib_ios.sh */,
				A9C70F41221B04C800FBA31A /* create_dylib_macos.sh */,
				A9FC5F64249D3778003CB086 /* create_dylib_tvos.sh */,
				A975D55C213F25D700D4834F /* create_dylib.sh */,
				A9B1007A24F837AF00EADC6E /* create_xcframework_func.sh */,
				A980A25F24C628F3007A8F6F /* gen_moltenvk_rev_hdr.sh */,
				A9FC5F60249D2ED3003CB086 /* package_all.sh */,
				A92EF7C921856EA200C8B91B /* package_docs.sh */,
				A9CBBFF924F8A1EB006D41EF /* package_moltenvk_xcframework.sh */,
				A92EF7C621856EA200C8B91B /* package_moltenvk.sh */,
				A92EF7C721856EA200C8B91B /* package_shader_converter_tool.sh */,
				A92EF7CB21856EA300C8B91B /* package_shader_converter_xcframework.sh */,
				A92EF7CA21856EA200C8B91B /* package_update_latest.sh */,
				A92EF7DE2186451700C8B91B /* Makefile */,
			);
			path = Scripts;
			sourceTree = "<group>";
		};
		A98149741FB6B565005F00B4 /* Products */ = {
			isa = PBXGroup;
			children = (
				A981498B1FB6B566005F00B4 /* MoltenVKShaderConverter */,
				A98149911FB6B566005F00B4 /* libMoltenVKSPIRVToMSLConverter.a */,
				A9FC5F5D249D2547003CB086 /* libMoltenVKSPIRVToMSLConverter.a */,
				A98149931FB6B566005F00B4 /* libMoltenVKSPIRVToMSLConverter.a */,
			);
			name = Products;
			sourceTree = "<group>";
		};
		A9DA833F218A193F002AA662 /* Git */ = {
			isa = PBXGroup;
			children = (
				A9DA8341218A198C002AA662 /* .gitignore */,
				A9DA8340218A198C002AA662 /* .travis.yml */,
			);
			name = Git;
			sourceTree = "<group>";
		};
/* End PBXGroup section */

/* Begin PBXProject section */
		A90B2B1D1A9B6170008EE819 /* Project object */ = {
			isa = PBXProject;
			attributes = {
				LastUpgradeCheck = 1220;
				TargetAttributes = {
					A9FEADBC1F3517480010240E = {
						DevelopmentTeam = VU3TCKU48B;
					};
				};
			};
			buildConfigurationList = A90B2B201A9B6170008EE819 /* Build configuration list for PBXProject "MoltenVKPackaging" */;
			compatibilityVersion = "Xcode 8.0";
			developmentRegion = en;
			hasScannedForEncodings = 0;
			knownRegions = (
				en,
				Base,
			);
			mainGroup = A90B2B1C1A9B6170008EE819;
			projectDirPath = "";
			projectReferences = (
				{
					ProductGroup = A92DB3EF1CE0F72500FBC835 /* Products */;
					ProjectRef = A92DB3EE1CE0F72500FBC835 /* MoltenVK.xcodeproj */;
				},
				{
					ProductGroup = A98149741FB6B565005F00B4 /* Products */;
					ProjectRef = A92DB40E1CE0F89600FBC835 /* MoltenVKShaderConverter.xcodeproj */;
				},
			);
			projectRoot = "";
			targets = (
				A9FEADBC1F3517480010240E /* MoltenVK */,
				A975D5782140585200D4834F /* MoltenVK-iOS */,
				2FEA0A2F24902F5E00EEF3AD /* MoltenVK-tvOS */,
				A975D58B2140586700D4834F /* MoltenVK-macOS */,
				A9AD700D2440ED3B00B9E254 /* MVKShaderConverterTool */,
			);
		};
/* End PBXProject section */

/* Begin PBXReferenceProxy section */
		2FEA0ABE2490302F00EEF3AD /* libMoltenVK.a */ = {
			isa = PBXReferenceProxy;
			fileType = archive.ar;
			path = libMoltenVK.a;
			remoteRef = 2FEA0ABD2490302F00EEF3AD /* PBXContainerItemProxy */;
			sourceTree = BUILT_PRODUCTS_DIR;
		};
		A92DB3F51CE0F72500FBC835 /* libMoltenVK.a */ = {
			isa = PBXReferenceProxy;
			fileType = archive.ar;
			path = libMoltenVK.a;
			remoteRef = A92DB3F41CE0F72500FBC835 /* PBXContainerItemProxy */;
			sourceTree = BUILT_PRODUCTS_DIR;
		};
		A92DB3F71CE0F72500FBC835 /* libMoltenVK.a */ = {
			isa = PBXReferenceProxy;
			fileType = archive.ar;
			path = libMoltenVK.a;
			remoteRef = A92DB3F61CE0F72500FBC835 /* PBXContainerItemProxy */;
			sourceTree = BUILT_PRODUCTS_DIR;
		};
		A981498B1FB6B566005F00B4 /* MoltenVKShaderConverter */ = {
			isa = PBXReferenceProxy;
			fileType = "compiled.mach-o.executable";
			path = MoltenVKShaderConverter;
			remoteRef = A981498A1FB6B566005F00B4 /* PBXContainerItemProxy */;
			sourceTree = BUILT_PRODUCTS_DIR;
		};
		A98149911FB6B566005F00B4 /* libMoltenVKSPIRVToMSLConverter.a */ = {
			isa = PBXReferenceProxy;
			fileType = archive.ar;
			path = libMoltenVKShaderConverter.a;
			remoteRef = A98149901FB6B566005F00B4 /* PBXContainerItemProxy */;
			sourceTree = BUILT_PRODUCTS_DIR;
		};
		A98149931FB6B566005F00B4 /* libMoltenVKSPIRVToMSLConverter.a */ = {
			isa = PBXReferenceProxy;
			fileType = archive.ar;
			path = libMoltenVKShaderConverter.a;
			remoteRef = A98149921FB6B566005F00B4 /* PBXContainerItemProxy */;
			sourceTree = BUILT_PRODUCTS_DIR;
		};
		A9FC5F5D249D2547003CB086 /* libMoltenVKSPIRVToMSLConverter.a */ = {
			isa = PBXReferenceProxy;
			fileType = archive.ar;
			path = libMoltenVKShaderConverter.a;
			remoteRef = A9FC5F5C249D2547003CB086 /* PBXContainerItemProxy */;
			sourceTree = BUILT_PRODUCTS_DIR;
		};
/* End PBXReferenceProxy section */

/* Begin PBXShellScriptBuildPhase section */
		2FEA0A3424902F5E00EEF3AD /* Package MoltenVK */ = {
			isa = PBXShellScriptBuildPhase;
			buildActionMask = 2147483647;
			files = (
			);
			inputPaths = (
			);
			name = "Package MoltenVK";
			outputPaths = (
			);
			runOnlyForDeploymentPostprocessing = 0;
			shellPath = /bin/sh;
			shellScript = ". \"${SRCROOT}/Scripts/package_all.sh\"\n";
		};
		A975D5872140585200D4834F /* Package MoltenVK */ = {
			isa = PBXShellScriptBuildPhase;
			buildActionMask = 2147483647;
			files = (
			);
			inputPaths = (
			);
			name = "Package MoltenVK";
			outputPaths = (
			);
			runOnlyForDeploymentPostprocessing = 0;
			shellPath = /bin/sh;
			shellScript = ". \"${SRCROOT}/Scripts/package_all.sh\"\n";
		};
		A975D59A2140586700D4834F /* Package MoltenVK */ = {
			isa = PBXShellScriptBuildPhase;
			buildActionMask = 2147483647;
			files = (
			);
			inputPaths = (
			);
			name = "Package MoltenVK";
			outputPaths = (
			);
			runOnlyForDeploymentPostprocessing = 0;
			shellPath = /bin/sh;
			shellScript = ". \"${SRCROOT}/Scripts/package_all.sh\"\n. \"${SRCROOT}/Scripts/package_shader_converter_tool.sh\"\n";
		};
		A9AD70122440ED3B00B9E254 /* Package MoltenVK */ = {
			isa = PBXShellScriptBuildPhase;
			buildActionMask = 2147483647;
			files = (
			);
			inputPaths = (
			);
			name = "Package MoltenVK";
			outputPaths = (
			);
			runOnlyForDeploymentPostprocessing = 0;
			shellPath = /bin/sh;
			shellScript = ". \"${SRCROOT}/Scripts/package_shader_converter_tool.sh\"\n. \"${SRCROOT}/Scripts/package_update_latest.sh\"\n";
		};
		A9B1008824F84BE400EADC6E /* Package MoltenVK */ = {
			isa = PBXShellScriptBuildPhase;
			buildActionMask = 2147483647;
			files = (
			);
			inputFileListPaths = (
			);
			inputPaths = (
			);
			name = "Package MoltenVK";
			outputFileListPaths = (
			);
			outputPaths = (
			);
			runOnlyForDeploymentPostprocessing = 0;
			shellPath = /bin/sh;
			shellScript = ". \"${SRCROOT}/Scripts/package_all.sh\"\n. \"${SRCROOT}/Scripts/package_shader_converter_tool.sh\"\n\n";
		};
/* End PBXShellScriptBuildPhase section */

/* Begin PBXTargetDependency section */
		2FEA0AC32490303F00EEF3AD /* PBXTargetDependency */ = {
			isa = PBXTargetDependency;
			name = "MoltenVK-tvOS";
			targetProxy = 2FEA0AC22490303F00EEF3AD /* PBXContainerItemProxy */;
		};
		A975D5792140585200D4834F /* PBXTargetDependency */ = {
			isa = PBXTargetDependency;
			name = "MoltenVK-iOS";
			targetProxy = A975D57A2140585200D4834F /* PBXContainerItemProxy */;
		};
		A975D58E2140586700D4834F /* PBXTargetDependency */ = {
			isa = PBXTargetDependency;
			name = "MoltenVK-macOS";
			targetProxy = A975D58F2140586700D4834F /* PBXContainerItemProxy */;
		};
		A9AD70102440ED3B00B9E254 /* PBXTargetDependency */ = {
			isa = PBXTargetDependency;
			name = MoltenVKShaderConverter;
			targetProxy = A9AD70112440ED3B00B9E254 /* PBXContainerItemProxy */;
		};
		A9B1008124F84BA700EADC6E /* PBXTargetDependency */ = {
			isa = PBXTargetDependency;
			name = "MoltenVK-iOS";
			targetProxy = A9B1008024F84BA700EADC6E /* PBXContainerItemProxy */;
		};
		A9B1008324F84BA700EADC6E /* PBXTargetDependency */ = {
			isa = PBXTargetDependency;
			name = "MoltenVK-macOS";
			targetProxy = A9B1008224F84BA700EADC6E /* PBXContainerItemProxy */;
		};
		A9B1008524F84BA700EADC6E /* PBXTargetDependency */ = {
			isa = PBXTargetDependency;
			name = "MoltenVK-tvOS";
			targetProxy = A9B1008424F84BA700EADC6E /* PBXContainerItemProxy */;
		};
/* End PBXTargetDependency section */

/* Begin XCBuildConfiguration section */
		2FEA0A3624902F5E00EEF3AD /* Debug */ = {
			isa = XCBuildConfiguration;
			buildSettings = {
				PRODUCT_NAME = "$(TARGET_NAME)";
			};
			name = Debug;
		};
		2FEA0A3724902F5E00EEF3AD /* Release */ = {
			isa = XCBuildConfiguration;
			buildSettings = {
				PRODUCT_NAME = "$(TARGET_NAME)";
			};
			name = Release;
		};
		A90B2B211A9B6170008EE819 /* Debug */ = {
			isa = XCBuildConfiguration;
			buildSettings = {
			};
			name = Debug;
		};
		A90B2B221A9B6170008EE819 /* Release */ = {
			isa = XCBuildConfiguration;
			buildSettings = {
			};
			name = Release;
		};
		A975D5892140585200D4834F /* Debug */ = {
			isa = XCBuildConfiguration;
			buildSettings = {
				PRODUCT_NAME = "$(TARGET_NAME)";
			};
			name = Debug;
		};
		A975D58A2140585200D4834F /* Release */ = {
			isa = XCBuildConfiguration;
			buildSettings = {
				PRODUCT_NAME = "$(TARGET_NAME)";
			};
			name = Release;
		};
		A975D59C2140586700D4834F /* Debug */ = {
			isa = XCBuildConfiguration;
			buildSettings = {
				PRODUCT_NAME = "$(TARGET_NAME)";
			};
			name = Debug;
		};
		A975D59D2140586700D4834F /* Release */ = {
			isa = XCBuildConfiguration;
			buildSettings = {
				PRODUCT_NAME = "$(TARGET_NAME)";
			};
			name = Release;
		};
		A9AD70142440ED3B00B9E254 /* Debug */ = {
			isa = XCBuildConfiguration;
			buildSettings = {
				PRODUCT_NAME = "$(TARGET_NAME)";
			};
			name = Debug;
		};
		A9AD70152440ED3B00B9E254 /* Release */ = {
			isa = XCBuildConfiguration;
			buildSettings = {
				PRODUCT_NAME = "$(TARGET_NAME)";
			};
			name = Release;
		};
		A9FEADDD1F3517480010240E /* Debug */ = {
			isa = XCBuildConfiguration;
			buildSettings = {
				PRODUCT_NAME = "$(TARGET_NAME)";
			};
			name = Debug;
		};
		A9FEADDE1F3517480010240E /* Release */ = {
			isa = XCBuildConfiguration;
			buildSettings = {
				PRODUCT_NAME = "$(TARGET_NAME)";
			};
			name = Release;
		};
/* End XCBuildConfiguration section */

/* Begin XCConfigurationList section */
		2FEA0A3524902F5E00EEF3AD /* Build configuration list for PBXAggregateTarget "MoltenVK-tvOS" */ = {
			isa = XCConfigurationList;
			buildConfigurations = (
				2FEA0A3624902F5E00EEF3AD /* Debug */,
				2FEA0A3724902F5E00EEF3AD /* Release */,
			);
			defaultConfigurationIsVisible = 0;
			defaultConfigurationName = Release;
		};
		A90B2B201A9B6170008EE819 /* Build configuration list for PBXProject "MoltenVKPackaging" */ = {
			isa = XCConfigurationList;
			buildConfigurations = (
				A90B2B211A9B6170008EE819 /* Debug */,
				A90B2B221A9B6170008EE819 /* Release */,
			);
			defaultConfigurationIsVisible = 0;
			defaultConfigurationName = Release;
		};
		A975D5882140585200D4834F /* Build configuration list for PBXAggregateTarget "MoltenVK-iOS" */ = {
			isa = XCConfigurationList;
			buildConfigurations = (
				A975D5892140585200D4834F /* Debug */,
				A975D58A2140585200D4834F /* Release */,
			);
			defaultConfigurationIsVisible = 0;
			defaultConfigurationName = Release;
		};
		A975D59B2140586700D4834F /* Build configuration list for PBXAggregateTarget "MoltenVK-macOS" */ = {
			isa = XCConfigurationList;
			buildConfigurations = (
				A975D59C2140586700D4834F /* Debug */,
				A975D59D2140586700D4834F /* Release */,
			);
			defaultConfigurationIsVisible = 0;
			defaultConfigurationName = Release;
		};
		A9AD70132440ED3B00B9E254 /* Build configuration list for PBXAggregateTarget "MVKShaderConverterTool" */ = {
			isa = XCConfigurationList;
			buildConfigurations = (
				A9AD70142440ED3B00B9E254 /* Debug */,
				A9AD70152440ED3B00B9E254 /* Release */,
			);
			defaultConfigurationIsVisible = 0;
			defaultConfigurationName = Release;
		};
		A9FEADDC1F3517480010240E /* Build configuration list for PBXAggregateTarget "MoltenVK" */ = {
			isa = XCConfigurationList;
			buildConfigurations = (
				A9FEADDD1F3517480010240E /* Debug */,
				A9FEADDE1F3517480010240E /* Release */,
			);
			defaultConfigurationIsVisible = 0;
			defaultConfigurationName = Release;
		};
/* End XCConfigurationList section */
	};
	rootObject = A90B2B1D1A9B6170008EE819 /* Project object */;
}
