Merge branch 'master' of https://github.com/billhollings/MoltenVK into xcode12
diff --git a/Demos/LunarG-VulkanSamples/API-Samples/API-Samples.xcodeproj/project.pbxproj b/Demos/LunarG-VulkanSamples/API-Samples/API-Samples.xcodeproj/project.pbxproj
index d00af95..c7e6862 100644
--- a/Demos/LunarG-VulkanSamples/API-Samples/API-Samples.xcodeproj/project.pbxproj
+++ b/Demos/LunarG-VulkanSamples/API-Samples/API-Samples.xcodeproj/project.pbxproj
@@ -733,8 +733,7 @@
 				GCC_WARN_ABOUT_DEPRECATED_FUNCTIONS = NO;
 				GCC_WARN_ABOUT_RETURN_TYPE = YES;
 				HEADER_SEARCH_PATHS = (
-					"\"$(SRCROOT)/../../../MoltenVK/include\"",
-					"\"$(SRCROOT)/../../../MoltenVKShaderConverter/include\"",
+					"\"$(SRCROOT)/include\"",
 					"\"$(SRCROOT)/../VulkanSamples/API-Samples/utils\"",
 				);
 				ONLY_ACTIVE_ARCH = YES;
@@ -762,8 +761,7 @@
 				GCC_WARN_ABOUT_DEPRECATED_FUNCTIONS = NO;
 				GCC_WARN_ABOUT_RETURN_TYPE = YES;
 				HEADER_SEARCH_PATHS = (
-					"\"$(SRCROOT)/../../../MoltenVK/include\"",
-					"\"$(SRCROOT)/../../../MoltenVKShaderConverter/include\"",
+					"\"$(SRCROOT)/include\"",
 					"\"$(SRCROOT)/../VulkanSamples/API-Samples/utils\"",
 				);
 				PRODUCT_BUNDLE_IDENTIFIER = "com.moltenvk.${PRODUCT_NAME:identifier}";
diff --git a/Demos/LunarG-VulkanSamples/API-Samples/include/MoltenVK b/Demos/LunarG-VulkanSamples/API-Samples/include/MoltenVK
new file mode 120000
index 0000000..aa025ad
--- /dev/null
+++ b/Demos/LunarG-VulkanSamples/API-Samples/include/MoltenVK
@@ -0,0 +1 @@
+../../../../MoltenVK/include/MoltenVK
\ No newline at end of file
diff --git a/Demos/LunarG-VulkanSamples/API-Samples/include/MoltenVKGLSLToSPIRVConverter b/Demos/LunarG-VulkanSamples/API-Samples/include/MoltenVKGLSLToSPIRVConverter
new file mode 120000
index 0000000..b03c7b1
--- /dev/null
+++ b/Demos/LunarG-VulkanSamples/API-Samples/include/MoltenVKGLSLToSPIRVConverter
@@ -0,0 +1 @@
+../../../../MoltenVKShaderConverter/include/MoltenVKShaderConverter
\ No newline at end of file
diff --git a/Demos/LunarG-VulkanSamples/API-Samples/include/vulkan b/Demos/LunarG-VulkanSamples/API-Samples/include/vulkan
new file mode 120000
index 0000000..00414df
--- /dev/null
+++ b/Demos/LunarG-VulkanSamples/API-Samples/include/vulkan
@@ -0,0 +1 @@
+../../../../MoltenVK/include/vulkan
\ No newline at end of file
diff --git a/Docs/Whats_New.md b/Docs/Whats_New.md
index 6ee632b..001246a 100644
--- a/Docs/Whats_New.md
+++ b/Docs/Whats_New.md
@@ -52,6 +52,8 @@
   within each descriptor set.
 - `vkCmdCopyImage` on macOS flush non-coherent image memory before copy operation.
 - Re-add support for bitcode generation on *iOS* and *tvOS*.
+- Combine `MoltenVKSPIRVToMSLConverter` and `MoltenVKGLSLToSPIRVConverter` 
+  frameworks into a single `MoltenVKShaderConverter` framework.
 - Fix Metal validation error when occlusion query and renderpass are in separate 
   Vulkan command buffers.
 
diff --git a/MoltenVK/MoltenVK.xcodeproj/project.pbxproj b/MoltenVK/MoltenVK.xcodeproj/project.pbxproj
index 4c1567c..3998810 100644
--- a/MoltenVK/MoltenVK.xcodeproj/project.pbxproj
+++ b/MoltenVK/MoltenVK.xcodeproj/project.pbxproj
@@ -365,13 +365,6 @@
 /* End PBXBuildFile section */
 
 /* Begin PBXContainerItemProxy section */
-		2F21D82C24983488009BEA5F /* PBXContainerItemProxy */ = {
-			isa = PBXContainerItemProxy;
-			containerPortal = A9C86CB61C55B8350096CAF2 /* MoltenVKShaderConverter.xcodeproj */;
-			proxyType = 1;
-			remoteGlobalIDString = 2FEA0AC42490305800EEF3AD;
-			remoteInfo = "MoltenVKGLSLToSPIRVConverter-tvOS";
-		};
 		2F21D82E24983488009BEA5F /* PBXContainerItemProxy */ = {
 			isa = PBXContainerItemProxy;
 			containerPortal = A9C86CB61C55B8350096CAF2 /* MoltenVKShaderConverter.xcodeproj */;
@@ -379,13 +372,6 @@
 			remoteGlobalIDString = 2FEA0CFF2490381A00EEF3AD;
 			remoteInfo = "MoltenVKSPIRVToMSLConverter-tvOS";
 		};
-		2FEA0D19249040CA00EEF3AD /* PBXContainerItemProxy */ = {
-			isa = PBXContainerItemProxy;
-			containerPortal = A9C86CB61C55B8350096CAF2 /* MoltenVKShaderConverter.xcodeproj */;
-			proxyType = 2;
-			remoteGlobalIDString = 2FEA0AD72490305800EEF3AD;
-			remoteInfo = "MoltenVKGLSLToSPIRVConverter-tvOS";
-		};
 		2FEA0D1B249040CA00EEF3AD /* PBXContainerItemProxy */ = {
 			isa = PBXContainerItemProxy;
 			containerPortal = A9C86CB61C55B8350096CAF2 /* MoltenVKShaderConverter.xcodeproj */;
@@ -393,20 +379,6 @@
 			remoteGlobalIDString = 2FEA0D142490381A00EEF3AD;
 			remoteInfo = "MoltenVKSPIRVToMSLConverter-tvOS";
 		};
-		A96B8156227BF6FD008A772B /* PBXContainerItemProxy */ = {
-			isa = PBXContainerItemProxy;
-			containerPortal = A9C86CB61C55B8350096CAF2 /* MoltenVKShaderConverter.xcodeproj */;
-			proxyType = 1;
-			remoteGlobalIDString = A937472B1A9A8B2900F29B34;
-			remoteInfo = "MoltenVKGLSLToSPIRVConverter-iOS";
-		};
-		A96B8158227BF715008A772B /* PBXContainerItemProxy */ = {
-			isa = PBXContainerItemProxy;
-			containerPortal = A9C86CB61C55B8350096CAF2 /* MoltenVKShaderConverter.xcodeproj */;
-			proxyType = 1;
-			remoteGlobalIDString = A93747701A9A98D000F29B34;
-			remoteInfo = "MoltenVKGLSLToSPIRVConverter-macOS";
-		};
 		A981497B1FB6B566005F00B4 /* PBXContainerItemProxy */ = {
 			isa = PBXContainerItemProxy;
 			containerPortal = A9C86CB61C55B8350096CAF2 /* MoltenVKShaderConverter.xcodeproj */;
@@ -414,20 +386,6 @@
 			remoteGlobalIDString = A964BD5F1C57EFBD00D930D8;
 			remoteInfo = MoltenVKShaderConverter;
 		};
-		A981497D1FB6B566005F00B4 /* PBXContainerItemProxy */ = {
-			isa = PBXContainerItemProxy;
-			containerPortal = A9C86CB61C55B8350096CAF2 /* MoltenVKShaderConverter.xcodeproj */;
-			proxyType = 2;
-			remoteGlobalIDString = A964BD611C57EFBD00D930D8;
-			remoteInfo = "MVKGLSLToSPIRVConverter-iOS";
-		};
-		A981497F1FB6B566005F00B4 /* PBXContainerItemProxy */ = {
-			isa = PBXContainerItemProxy;
-			containerPortal = A9C86CB61C55B8350096CAF2 /* MoltenVKShaderConverter.xcodeproj */;
-			proxyType = 2;
-			remoteGlobalIDString = A964BD601C57EFBD00D930D8;
-			remoteInfo = "MVKGLSLToSPIRVConverter-macOS";
-		};
 		A98149811FB6B566005F00B4 /* PBXContainerItemProxy */ = {
 			isa = PBXContainerItemProxy;
 			containerPortal = A9C86CB61C55B8350096CAF2 /* MoltenVKShaderConverter.xcodeproj */;
@@ -449,12 +407,12 @@
 			remoteGlobalIDString = A93903B81C57E9D700FE90DC;
 			remoteInfo = "MVKSPIRVToMSLConverter-iOS";
 		};
-		A98149A31FB6B9EB005F00B4 /* PBXContainerItemProxy */ = {
+		A9B1C7F4251AA5AF001D12CC /* PBXContainerItemProxy */ = {
 			isa = PBXContainerItemProxy;
 			containerPortal = A9C86CB61C55B8350096CAF2 /* MoltenVKShaderConverter.xcodeproj */;
 			proxyType = 1;
-			remoteGlobalIDString = A93903C01C57E9ED00FE90DC;
-			remoteInfo = "MVKSPIRVToMSLConverter-macOS";
+			remoteGlobalIDString = A9092A8C1A81717B00051823;
+			remoteInfo = MoltenVKShaderConverter;
 		};
 /* End PBXContainerItemProxy section */
 
@@ -749,9 +707,6 @@
 			isa = PBXGroup;
 			children = (
 				A981497C1FB6B566005F00B4 /* MoltenVKShaderConverter */,
-				A981497E1FB6B566005F00B4 /* libMoltenVKGLSLToSPIRVConverter.a */,
-				2FEA0D1A249040CA00EEF3AD /* libMoltenVKGLSLToSPIRVConverter.a */,
-				A98149801FB6B566005F00B4 /* libMoltenVKGLSLToSPIRVConverter.a */,
 				A98149821FB6B566005F00B4 /* libMoltenVKSPIRVToMSLConverter.a */,
 				2FEA0D1C249040CA00EEF3AD /* libMoltenVKSPIRVToMSLConverter.a */,
 				A98149841FB6B566005F00B4 /* libMoltenVKSPIRVToMSLConverter.a */,
@@ -1067,7 +1022,6 @@
 			buildRules = (
 			);
 			dependencies = (
-				2F21D82D24983488009BEA5F /* PBXTargetDependency */,
 				2F21D82F24983488009BEA5F /* PBXTargetDependency */,
 			);
 			name = "MoltenVK-tvOS";
@@ -1089,7 +1043,6 @@
 			);
 			dependencies = (
 				A981499B1FB6B9CF005F00B4 /* PBXTargetDependency */,
-				A96B8157227BF6FD008A772B /* PBXTargetDependency */,
 			);
 			name = "MoltenVK-iOS";
 			productName = MoltenVK;
@@ -1109,8 +1062,7 @@
 			buildRules = (
 			);
 			dependencies = (
-				A98149A41FB6B9EB005F00B4 /* PBXTargetDependency */,
-				A96B8159227BF715008A772B /* PBXTargetDependency */,
+				A9B1C7F5251AA5AF001D12CC /* PBXTargetDependency */,
 			);
 			name = "MoltenVK-macOS";
 			productName = MoltenVK;
@@ -1162,17 +1114,10 @@
 /* End PBXProject section */
 
 /* Begin PBXReferenceProxy section */
-		2FEA0D1A249040CA00EEF3AD /* libMoltenVKGLSLToSPIRVConverter.a */ = {
-			isa = PBXReferenceProxy;
-			fileType = archive.ar;
-			path = libMoltenVKGLSLToSPIRVConverter.a;
-			remoteRef = 2FEA0D19249040CA00EEF3AD /* PBXContainerItemProxy */;
-			sourceTree = BUILT_PRODUCTS_DIR;
-		};
 		2FEA0D1C249040CA00EEF3AD /* libMoltenVKSPIRVToMSLConverter.a */ = {
 			isa = PBXReferenceProxy;
 			fileType = archive.ar;
-			path = libMoltenVKSPIRVToMSLConverter.a;
+			path = libMoltenVKShaderConverter.a;
 			remoteRef = 2FEA0D1B249040CA00EEF3AD /* PBXContainerItemProxy */;
 			sourceTree = BUILT_PRODUCTS_DIR;
 		};
@@ -1183,31 +1128,17 @@
 			remoteRef = A981497B1FB6B566005F00B4 /* PBXContainerItemProxy */;
 			sourceTree = BUILT_PRODUCTS_DIR;
 		};
-		A981497E1FB6B566005F00B4 /* libMoltenVKGLSLToSPIRVConverter.a */ = {
-			isa = PBXReferenceProxy;
-			fileType = archive.ar;
-			path = libMoltenVKGLSLToSPIRVConverter.a;
-			remoteRef = A981497D1FB6B566005F00B4 /* PBXContainerItemProxy */;
-			sourceTree = BUILT_PRODUCTS_DIR;
-		};
-		A98149801FB6B566005F00B4 /* libMoltenVKGLSLToSPIRVConverter.a */ = {
-			isa = PBXReferenceProxy;
-			fileType = archive.ar;
-			path = libMoltenVKGLSLToSPIRVConverter.a;
-			remoteRef = A981497F1FB6B566005F00B4 /* PBXContainerItemProxy */;
-			sourceTree = BUILT_PRODUCTS_DIR;
-		};
 		A98149821FB6B566005F00B4 /* libMoltenVKSPIRVToMSLConverter.a */ = {
 			isa = PBXReferenceProxy;
 			fileType = archive.ar;
-			path = libMoltenVKSPIRVToMSLConverter.a;
+			path = libMoltenVKShaderConverter.a;
 			remoteRef = A98149811FB6B566005F00B4 /* PBXContainerItemProxy */;
 			sourceTree = BUILT_PRODUCTS_DIR;
 		};
 		A98149841FB6B566005F00B4 /* libMoltenVKSPIRVToMSLConverter.a */ = {
 			isa = PBXReferenceProxy;
 			fileType = archive.ar;
-			path = libMoltenVKSPIRVToMSLConverter.a;
+			path = libMoltenVKShaderConverter.a;
 			remoteRef = A98149831FB6B566005F00B4 /* PBXContainerItemProxy */;
 			sourceTree = BUILT_PRODUCTS_DIR;
 		};
@@ -1546,35 +1477,20 @@
 /* End PBXSourcesBuildPhase section */
 
 /* Begin PBXTargetDependency section */
-		2F21D82D24983488009BEA5F /* PBXTargetDependency */ = {
-			isa = PBXTargetDependency;
-			name = "MoltenVKGLSLToSPIRVConverter-tvOS";
-			targetProxy = 2F21D82C24983488009BEA5F /* PBXContainerItemProxy */;
-		};
 		2F21D82F24983488009BEA5F /* PBXTargetDependency */ = {
 			isa = PBXTargetDependency;
 			name = "MoltenVKSPIRVToMSLConverter-tvOS";
 			targetProxy = 2F21D82E24983488009BEA5F /* PBXContainerItemProxy */;
 		};
-		A96B8157227BF6FD008A772B /* PBXTargetDependency */ = {
-			isa = PBXTargetDependency;
-			name = "MoltenVKGLSLToSPIRVConverter-iOS";
-			targetProxy = A96B8156227BF6FD008A772B /* PBXContainerItemProxy */;
-		};
-		A96B8159227BF715008A772B /* PBXTargetDependency */ = {
-			isa = PBXTargetDependency;
-			name = "MoltenVKGLSLToSPIRVConverter-macOS";
-			targetProxy = A96B8158227BF715008A772B /* PBXContainerItemProxy */;
-		};
 		A981499B1FB6B9CF005F00B4 /* PBXTargetDependency */ = {
 			isa = PBXTargetDependency;
 			name = "MVKSPIRVToMSLConverter-iOS";
 			targetProxy = A981499A1FB6B9CF005F00B4 /* PBXContainerItemProxy */;
 		};
-		A98149A41FB6B9EB005F00B4 /* PBXTargetDependency */ = {
+		A9B1C7F5251AA5AF001D12CC /* PBXTargetDependency */ = {
 			isa = PBXTargetDependency;
-			name = "MVKSPIRVToMSLConverter-macOS";
-			targetProxy = A98149A31FB6B9EB005F00B4 /* PBXContainerItemProxy */;
+			name = MoltenVKShaderConverter;
+			targetProxy = A9B1C7F4251AA5AF001D12CC /* PBXContainerItemProxy */;
 		};
 /* End PBXTargetDependency section */
 
@@ -1687,7 +1603,7 @@
 				"MVK_SKIP_DYLIB[sdk=appletvsimulator*]" = YES;
 				"MVK_SKIP_DYLIB[sdk=iphonesimulator*]" = YES;
 				ONLY_ACTIVE_ARCH = YES;
-				PRELINK_LIBS = "${CONFIGURATION_BUILD_DIR}/libMoltenVKSPIRVToMSLConverter.a ${CONFIGURATION_BUILD_DIR}/libMoltenVKGLSLToSPIRVConverter.a";
+				PRELINK_LIBS = "${CONFIGURATION_BUILD_DIR}/libMoltenVKShaderConverter.a";
 				PRODUCT_NAME = MoltenVK;
 				SKIP_INSTALL = YES;
 			};
@@ -1750,7 +1666,7 @@
 				MVK_SKIP_DYLIB = "";
 				"MVK_SKIP_DYLIB[sdk=appletvsimulator*]" = YES;
 				"MVK_SKIP_DYLIB[sdk=iphonesimulator*]" = YES;
-				PRELINK_LIBS = "${CONFIGURATION_BUILD_DIR}/libMoltenVKSPIRVToMSLConverter.a ${CONFIGURATION_BUILD_DIR}/libMoltenVKGLSLToSPIRVConverter.a";
+				PRELINK_LIBS = "${CONFIGURATION_BUILD_DIR}/libMoltenVKShaderConverter.a";
 				PRODUCT_NAME = MoltenVK;
 				SKIP_INSTALL = YES;
 				VALIDATE_PRODUCT = YES;
diff --git a/MoltenVK/MoltenVK/GPUObjects/MVKDevice.mm b/MoltenVK/MoltenVK/GPUObjects/MVKDevice.mm
index e485d39..61ebd09 100644
--- a/MoltenVK/MoltenVK/GPUObjects/MVKDevice.mm
+++ b/MoltenVK/MoltenVK/GPUObjects/MVKDevice.mm
@@ -33,7 +33,7 @@
 #include "MVKCodec.h"
 #include "MVKEnvironment.h"
 #include "MVKLogging.h"
-#include <MoltenVKSPIRVToMSLConverter/SPIRVToMSLConverter.h>
+#include <MoltenVKShaderConverter/SPIRVToMSLConverter.h>
 #include "vk_mvk_moltenvk.h"
 
 #import "CAMetalLayer+MoltenVK.h"
diff --git a/MoltenVK/MoltenVK/GPUObjects/MVKImage.h b/MoltenVK/MoltenVK/GPUObjects/MVKImage.h
index 227fe3e..ea8c68c 100644
--- a/MoltenVK/MoltenVK/GPUObjects/MVKImage.h
+++ b/MoltenVK/MoltenVK/GPUObjects/MVKImage.h
@@ -22,7 +22,7 @@
 #include "MVKCommandResourceFactory.h"
 #include "MVKSync.h"
 #include "MVKSmallVector.h"
-#include <MoltenVKSPIRVToMSLConverter/SPIRVToMSLConverter.h>
+#include <MoltenVKShaderConverter/SPIRVToMSLConverter.h>
 #include <unordered_map>
 #include <mutex>
 
diff --git a/MoltenVK/MoltenVK/GPUObjects/MVKPipeline.h b/MoltenVK/MoltenVK/GPUObjects/MVKPipeline.h
index 9b9b40a..7c53e82 100644
--- a/MoltenVK/MoltenVK/GPUObjects/MVKPipeline.h
+++ b/MoltenVK/MoltenVK/GPUObjects/MVKPipeline.h
@@ -23,8 +23,8 @@
 #include "MVKShaderModule.h"
 #include "MVKSync.h"
 #include "MVKSmallVector.h"
-#include <MoltenVKSPIRVToMSLConverter/SPIRVReflection.h>
-#include <MoltenVKSPIRVToMSLConverter/SPIRVToMSLConverter.h>
+#include <MoltenVKShaderConverter/SPIRVReflection.h>
+#include <MoltenVKShaderConverter/SPIRVToMSLConverter.h>
 #include <unordered_map>
 #include <unordered_set>
 #include <ostream>
diff --git a/MoltenVK/MoltenVK/GPUObjects/MVKPipeline.mm b/MoltenVK/MoltenVK/GPUObjects/MVKPipeline.mm
index 28d7c9c..4f59111 100644
--- a/MoltenVK/MoltenVK/GPUObjects/MVKPipeline.mm
+++ b/MoltenVK/MoltenVK/GPUObjects/MVKPipeline.mm
@@ -17,7 +17,7 @@
  */
 
 #include "MVKPipeline.h"
-#include <MoltenVKSPIRVToMSLConverter/SPIRVToMSLConverter.h>
+#include <MoltenVKShaderConverter/SPIRVToMSLConverter.h>
 #include "MVKRenderPass.h"
 #include "MVKCommandBuffer.h"
 #include "MVKFoundation.h"
diff --git a/MoltenVK/MoltenVK/GPUObjects/MVKShaderModule.h b/MoltenVK/MoltenVK/GPUObjects/MVKShaderModule.h
index 3af05fc..832189e 100644
--- a/MoltenVK/MoltenVK/GPUObjects/MVKShaderModule.h
+++ b/MoltenVK/MoltenVK/GPUObjects/MVKShaderModule.h
@@ -21,8 +21,8 @@
 #include "MVKDevice.h"
 #include "MVKSync.h"
 #include "MVKSmallVector.h"
-#include <MoltenVKSPIRVToMSLConverter/SPIRVToMSLConverter.h>
-#include <MoltenVKGLSLToSPIRVConverter/GLSLToSPIRVConverter.h>
+#include <MoltenVKShaderConverter/SPIRVToMSLConverter.h>
+#include <MoltenVKShaderConverter/GLSLToSPIRVConverter.h>
 #include <mutex>
 
 #import <Metal/Metal.h>
diff --git a/MoltenVK/MoltenVK/Vulkan/mvk_datatypes.mm b/MoltenVK/MoltenVK/Vulkan/mvk_datatypes.mm
index 8bee86e..623c648 100644
--- a/MoltenVK/MoltenVK/Vulkan/mvk_datatypes.mm
+++ b/MoltenVK/MoltenVK/Vulkan/mvk_datatypes.mm
@@ -22,7 +22,7 @@
 #include "MVKFoundation.h"
 #include "MVKOSExtensions.h"
 #include "MVKBaseObject.h"
-#include <MoltenVKSPIRVToMSLConverter/SPIRVReflection.h>
+#include <MoltenVKShaderConverter/SPIRVReflection.h>
 #include <unordered_map>
 #include <string>
 #include <limits>
diff --git a/MoltenVKPackaging.xcodeproj/project.pbxproj b/MoltenVKPackaging.xcodeproj/project.pbxproj
index 541efd7..983965f 100644
--- a/MoltenVKPackaging.xcodeproj/project.pbxproj
+++ b/MoltenVKPackaging.xcodeproj/project.pbxproj
@@ -39,7 +39,6 @@
 			);
 			dependencies = (
 				A975D58E2140586700D4834F /* PBXTargetDependency */,
-				A975D5982140586700D4834F /* PBXTargetDependency */,
 			);
 			name = "MoltenVK-macOS";
 			productName = Package;
@@ -66,7 +65,6 @@
 				A9B1008124F84BA700EADC6E /* PBXTargetDependency */,
 				A9B1008324F84BA700EADC6E /* PBXTargetDependency */,
 				A9B1008524F84BA700EADC6E /* PBXTargetDependency */,
-				A9B1008724F84BA700EADC6E /* PBXTargetDependency */,
 			);
 			name = MoltenVK;
 			productName = Package;
@@ -123,13 +121,6 @@
 			remoteGlobalIDString = A9CBED861B6299D800E45FDC;
 			remoteInfo = "MoltenVK-macOS";
 		};
-		A975D5992140586700D4834F /* PBXContainerItemProxy */ = {
-			isa = PBXContainerItemProxy;
-			containerPortal = A92DB40E1CE0F89600FBC835 /* MoltenVKShaderConverter.xcodeproj */;
-			proxyType = 1;
-			remoteGlobalIDString = A9092A8C1A81717B00051823;
-			remoteInfo = MoltenVKShaderConverter;
-		};
 		A981498A1FB6B566005F00B4 /* PBXContainerItemProxy */ = {
 			isa = PBXContainerItemProxy;
 			containerPortal = A92DB40E1CE0F89600FBC835 /* MoltenVKShaderConverter.xcodeproj */;
@@ -193,13 +184,6 @@
 			remoteGlobalIDString = 2FEA0A3B24902F9F00EEF3AD;
 			remoteInfo = "MoltenVK-tvOS";
 		};
-		A9B1008624F84BA700EADC6E /* PBXContainerItemProxy */ = {
-			isa = PBXContainerItemProxy;
-			containerPortal = A92DB40E1CE0F89600FBC835 /* MoltenVKShaderConverter.xcodeproj */;
-			proxyType = 1;
-			remoteGlobalIDString = A9092A8C1A81717B00051823;
-			remoteInfo = MoltenVKShaderConverter;
-		};
 		A9FC5F5C249D2547003CB086 /* PBXContainerItemProxy */ = {
 			isa = PBXContainerItemProxy;
 			containerPortal = A92DB40E1CE0F89600FBC835 /* MoltenVKShaderConverter.xcodeproj */;
@@ -525,11 +509,6 @@
 			name = "MoltenVK-macOS";
 			targetProxy = A975D58F2140586700D4834F /* PBXContainerItemProxy */;
 		};
-		A975D5982140586700D4834F /* PBXTargetDependency */ = {
-			isa = PBXTargetDependency;
-			name = MoltenVKShaderConverter;
-			targetProxy = A975D5992140586700D4834F /* PBXContainerItemProxy */;
-		};
 		A9AD70102440ED3B00B9E254 /* PBXTargetDependency */ = {
 			isa = PBXTargetDependency;
 			name = MoltenVKShaderConverter;
@@ -550,11 +529,6 @@
 			name = "MoltenVK-tvOS";
 			targetProxy = A9B1008424F84BA700EADC6E /* PBXContainerItemProxy */;
 		};
-		A9B1008724F84BA700EADC6E /* PBXTargetDependency */ = {
-			isa = PBXTargetDependency;
-			name = MoltenVKShaderConverter;
-			targetProxy = A9B1008624F84BA700EADC6E /* PBXContainerItemProxy */;
-		};
 /* End PBXTargetDependency section */
 
 /* Begin XCBuildConfiguration section */
diff --git a/MoltenVKShaderConverter/MoltenVKGLSLToSPIRVConverter.xcframework b/MoltenVKShaderConverter/MoltenVKGLSLToSPIRVConverter.xcframework
deleted file mode 120000
index cf42e4b..0000000
--- a/MoltenVKShaderConverter/MoltenVKGLSLToSPIRVConverter.xcframework
+++ /dev/null
@@ -1 +0,0 @@
-../Package/Latest/MoltenVKShaderConverter/MoltenVKGLSLToSPIRVConverter.xcframework
\ No newline at end of file
diff --git a/MoltenVKShaderConverter/MoltenVKSPIRVToMSLConverter.xcframework b/MoltenVKShaderConverter/MoltenVKSPIRVToMSLConverter.xcframework
deleted file mode 120000
index 1ba785f..0000000
--- a/MoltenVKShaderConverter/MoltenVKSPIRVToMSLConverter.xcframework
+++ /dev/null
@@ -1 +0,0 @@
-../Package/Latest/MoltenVKShaderConverter/MoltenVKSPIRVToMSLConverter.xcframework
\ No newline at end of file
diff --git a/MoltenVKShaderConverter/MoltenVKShaderConverter.xcframework b/MoltenVKShaderConverter/MoltenVKShaderConverter.xcframework
new file mode 120000
index 0000000..326ce4d
--- /dev/null
+++ b/MoltenVKShaderConverter/MoltenVKShaderConverter.xcframework
@@ -0,0 +1 @@
+../Package/Latest/MoltenVKShaderConverter/MoltenVKShaderConverter.xcframework
\ No newline at end of file
diff --git a/MoltenVKShaderConverter/MoltenVKShaderConverter.xcodeproj/project.pbxproj b/MoltenVKShaderConverter/MoltenVKShaderConverter.xcodeproj/project.pbxproj
index 8157a46..0375ed4 100644
--- a/MoltenVKShaderConverter/MoltenVKShaderConverter.xcodeproj/project.pbxproj
+++ b/MoltenVKShaderConverter/MoltenVKShaderConverter.xcodeproj/project.pbxproj
@@ -7,14 +7,6 @@
 	objects = {
 
 /* Begin PBXBuildFile section */
-		2FEA0AC62490305800EEF3AD /* SPIRVSupport.h in Headers */ = {isa = PBXBuildFile; fileRef = A9C70F5D221B321600FBA31A /* SPIRVSupport.h */; };
-		2FEA0AC72490305800EEF3AD /* GLSLConversion.h in Headers */ = {isa = PBXBuildFile; fileRef = A90941A21C581F840094110D /* GLSLConversion.h */; };
-		2FEA0AC82490305800EEF3AD /* GLSLToSPIRVConverter.h in Headers */ = {isa = PBXBuildFile; fileRef = A90940A41C5808BB0094110D /* GLSLToSPIRVConverter.h */; };
-		2FEA0AC92490305800EEF3AD /* MVKCommonEnvironment.h in Headers */ = {isa = PBXBuildFile; fileRef = A9F042AA1FB4D060009FCCB8 /* MVKCommonEnvironment.h */; };
-		2FEA0ACA2490305800EEF3AD /* MVKStrings.h in Headers */ = {isa = PBXBuildFile; fileRef = A98149651FB6A98A005F00B4 /* MVKStrings.h */; };
-		2FEA0ACC2490305800EEF3AD /* GLSLConversion.mm in Sources */ = {isa = PBXBuildFile; fileRef = A90941A11C581F840094110D /* GLSLConversion.mm */; };
-		2FEA0ACD2490305800EEF3AD /* SPIRVSupport.cpp in Sources */ = {isa = PBXBuildFile; fileRef = A9C70F5E221B321700FBA31A /* SPIRVSupport.cpp */; };
-		2FEA0ACE2490305800EEF3AD /* GLSLToSPIRVConverter.cpp in Sources */ = {isa = PBXBuildFile; fileRef = A90940A31C5808BB0094110D /* GLSLToSPIRVConverter.cpp */; };
 		2FEA0D012490381A00EEF3AD /* SPIRVReflection.h in Headers */ = {isa = PBXBuildFile; fileRef = 450A4F5E220CB180007203D7 /* SPIRVReflection.h */; };
 		2FEA0D022490381A00EEF3AD /* MVKStrings.h in Headers */ = {isa = PBXBuildFile; fileRef = A98149651FB6A98A005F00B4 /* MVKStrings.h */; };
 		2FEA0D032490381A00EEF3AD /* SPIRVSupport.h in Headers */ = {isa = PBXBuildFile; fileRef = A9C70F5D221B321600FBA31A /* SPIRVSupport.h */; };
@@ -31,16 +23,22 @@
 		A909408B1C58013E0094110D /* SPIRVToMSLConverter.cpp in Sources */ = {isa = PBXBuildFile; fileRef = A9093F5A1C58013E0094110D /* SPIRVToMSLConverter.cpp */; };
 		A909408C1C58013E0094110D /* SPIRVToMSLConverter.h in Headers */ = {isa = PBXBuildFile; fileRef = A9093F5B1C58013E0094110D /* SPIRVToMSLConverter.h */; };
 		A909408D1C58013E0094110D /* SPIRVToMSLConverter.h in Headers */ = {isa = PBXBuildFile; fileRef = A9093F5B1C58013E0094110D /* SPIRVToMSLConverter.h */; };
-		A90940A71C5808BB0094110D /* GLSLToSPIRVConverter.cpp in Sources */ = {isa = PBXBuildFile; fileRef = A90940A31C5808BB0094110D /* GLSLToSPIRVConverter.cpp */; };
-		A90940A81C5808BB0094110D /* GLSLToSPIRVConverter.cpp in Sources */ = {isa = PBXBuildFile; fileRef = A90940A31C5808BB0094110D /* GLSLToSPIRVConverter.cpp */; };
-		A90940A91C5808BB0094110D /* GLSLToSPIRVConverter.h in Headers */ = {isa = PBXBuildFile; fileRef = A90940A41C5808BB0094110D /* GLSLToSPIRVConverter.h */; };
-		A90940AA1C5808BB0094110D /* GLSLToSPIRVConverter.h in Headers */ = {isa = PBXBuildFile; fileRef = A90940A41C5808BB0094110D /* GLSLToSPIRVConverter.h */; };
-		A90941A31C581F840094110D /* GLSLConversion.mm in Sources */ = {isa = PBXBuildFile; fileRef = A90941A11C581F840094110D /* GLSLConversion.mm */; };
-		A90941A41C581F840094110D /* GLSLConversion.mm in Sources */ = {isa = PBXBuildFile; fileRef = A90941A11C581F840094110D /* GLSLConversion.mm */; };
-		A90941A51C581F840094110D /* GLSLConversion.h in Headers */ = {isa = PBXBuildFile; fileRef = A90941A21C581F840094110D /* GLSLConversion.h */; };
-		A90941A61C581F840094110D /* GLSLConversion.h in Headers */ = {isa = PBXBuildFile; fileRef = A90941A21C581F840094110D /* GLSLConversion.h */; };
-		A925B71A1C78DEB2006E7ECD /* libMoltenVKGLSLToSPIRVConverter.a in Frameworks */ = {isa = PBXBuildFile; fileRef = A964BD601C57EFBD00D930D8 /* libMoltenVKGLSLToSPIRVConverter.a */; };
-		A925B71B1C78DEB2006E7ECD /* libMoltenVKSPIRVToMSLConverter.a in Frameworks */ = {isa = PBXBuildFile; fileRef = A93903C71C57E9ED00FE90DC /* libMoltenVKSPIRVToMSLConverter.a */; };
+		A920A8A3251B75B70076851C /* GLSLToSPIRVConverter.cpp in Sources */ = {isa = PBXBuildFile; fileRef = A920A89F251B75B70076851C /* GLSLToSPIRVConverter.cpp */; };
+		A920A8A4251B75B70076851C /* GLSLToSPIRVConverter.cpp in Sources */ = {isa = PBXBuildFile; fileRef = A920A89F251B75B70076851C /* GLSLToSPIRVConverter.cpp */; };
+		A920A8A5251B75B70076851C /* GLSLToSPIRVConverter.cpp in Sources */ = {isa = PBXBuildFile; fileRef = A920A89F251B75B70076851C /* GLSLToSPIRVConverter.cpp */; };
+		A920A8A6251B75B70076851C /* GLSLConversion.h in Headers */ = {isa = PBXBuildFile; fileRef = A920A8A0251B75B70076851C /* GLSLConversion.h */; };
+		A920A8A7251B75B70076851C /* GLSLConversion.h in Headers */ = {isa = PBXBuildFile; fileRef = A920A8A0251B75B70076851C /* GLSLConversion.h */; };
+		A920A8A8251B75B70076851C /* GLSLConversion.h in Headers */ = {isa = PBXBuildFile; fileRef = A920A8A0251B75B70076851C /* GLSLConversion.h */; };
+		A920A8A9251B75B70076851C /* GLSLConversion.mm in Sources */ = {isa = PBXBuildFile; fileRef = A920A8A1251B75B70076851C /* GLSLConversion.mm */; };
+		A920A8AA251B75B70076851C /* GLSLConversion.mm in Sources */ = {isa = PBXBuildFile; fileRef = A920A8A1251B75B70076851C /* GLSLConversion.mm */; };
+		A920A8AB251B75B70076851C /* GLSLConversion.mm in Sources */ = {isa = PBXBuildFile; fileRef = A920A8A1251B75B70076851C /* GLSLConversion.mm */; };
+		A920A8AC251B75B70076851C /* GLSLToSPIRVConverter.h in Headers */ = {isa = PBXBuildFile; fileRef = A920A8A2251B75B70076851C /* GLSLToSPIRVConverter.h */; };
+		A920A8AD251B75B80076851C /* GLSLToSPIRVConverter.h in Headers */ = {isa = PBXBuildFile; fileRef = A920A8A2251B75B70076851C /* GLSLToSPIRVConverter.h */; };
+		A920A8AE251B75B80076851C /* GLSLToSPIRVConverter.h in Headers */ = {isa = PBXBuildFile; fileRef = A920A8A2251B75B70076851C /* GLSLToSPIRVConverter.h */; };
+		A920A8AF251B77900076851C /* glslang.xcframework in Frameworks */ = {isa = PBXBuildFile; fileRef = A98386FD24EEE93700199A05 /* glslang.xcframework */; };
+		A920A8B0251B77910076851C /* glslang.xcframework in Frameworks */ = {isa = PBXBuildFile; fileRef = A98386FD24EEE93700199A05 /* glslang.xcframework */; };
+		A920A8B1251B77920076851C /* glslang.xcframework in Frameworks */ = {isa = PBXBuildFile; fileRef = A98386FD24EEE93700199A05 /* glslang.xcframework */; };
+		A925B71B1C78DEB2006E7ECD /* libMoltenVKShaderConverter.a in Frameworks */ = {isa = PBXBuildFile; fileRef = A93903C71C57E9ED00FE90DC /* libMoltenVKShaderConverter.a */; };
 		A928C9191D0488DC00071B88 /* SPIRVConversion.h in Headers */ = {isa = PBXBuildFile; fileRef = A928C9171D0488DC00071B88 /* SPIRVConversion.h */; };
 		A928C91A1D0488DC00071B88 /* SPIRVConversion.h in Headers */ = {isa = PBXBuildFile; fileRef = A928C9171D0488DC00071B88 /* SPIRVConversion.h */; };
 		A928C91B1D0488DC00071B88 /* SPIRVConversion.mm in Sources */ = {isa = PBXBuildFile; fileRef = A928C9181D0488DC00071B88 /* SPIRVConversion.mm */; };
@@ -50,38 +48,21 @@
 		A95096BF2003D32400F10950 /* OSSupport.mm in Sources */ = {isa = PBXBuildFile; fileRef = A95096BD2003D32400F10950 /* OSSupport.mm */; };
 		A97CC7401C7527F3004A5C7E /* main.cpp in Sources */ = {isa = PBXBuildFile; fileRef = A97CC73D1C7527F3004A5C7E /* main.cpp */; };
 		A97CC7411C7527F3004A5C7E /* MoltenVKShaderConverterTool.cpp in Sources */ = {isa = PBXBuildFile; fileRef = A97CC73E1C7527F3004A5C7E /* MoltenVKShaderConverterTool.cpp */; };
-		A98149661FB6A98A005F00B4 /* MVKStrings.h in Headers */ = {isa = PBXBuildFile; fileRef = A98149651FB6A98A005F00B4 /* MVKStrings.h */; };
-		A98149671FB6A98A005F00B4 /* MVKStrings.h in Headers */ = {isa = PBXBuildFile; fileRef = A98149651FB6A98A005F00B4 /* MVKStrings.h */; };
 		A98149681FB6A98A005F00B4 /* MVKStrings.h in Headers */ = {isa = PBXBuildFile; fileRef = A98149651FB6A98A005F00B4 /* MVKStrings.h */; };
 		A98149691FB6A98A005F00B4 /* MVKStrings.h in Headers */ = {isa = PBXBuildFile; fileRef = A98149651FB6A98A005F00B4 /* MVKStrings.h */; };
-		A98386F924EEE91A00199A05 /* SPIRVCross.xcframework in Frameworks */ = {isa = PBXBuildFile; fileRef = A98386F824EEE91A00199A05 /* SPIRVCross.xcframework */; };
 		A98386FA24EEE91A00199A05 /* SPIRVCross.xcframework in Frameworks */ = {isa = PBXBuildFile; fileRef = A98386F824EEE91A00199A05 /* SPIRVCross.xcframework */; };
 		A98386FB24EEE91A00199A05 /* SPIRVCross.xcframework in Frameworks */ = {isa = PBXBuildFile; fileRef = A98386F824EEE91A00199A05 /* SPIRVCross.xcframework */; };
 		A98386FC24EEE91A00199A05 /* SPIRVCross.xcframework in Frameworks */ = {isa = PBXBuildFile; fileRef = A98386F824EEE91A00199A05 /* SPIRVCross.xcframework */; };
-		A98386FE24EEE93700199A05 /* glslang.xcframework in Frameworks */ = {isa = PBXBuildFile; fileRef = A98386FD24EEE93700199A05 /* glslang.xcframework */; };
-		A98386FF24EEE93700199A05 /* glslang.xcframework in Frameworks */ = {isa = PBXBuildFile; fileRef = A98386FD24EEE93700199A05 /* glslang.xcframework */; };
-		A983870024EEE93700199A05 /* glslang.xcframework in Frameworks */ = {isa = PBXBuildFile; fileRef = A98386FD24EEE93700199A05 /* glslang.xcframework */; };
-		A983870124EEE93700199A05 /* glslang.xcframework in Frameworks */ = {isa = PBXBuildFile; fileRef = A98386FD24EEE93700199A05 /* glslang.xcframework */; };
-		A983870324EEE94800199A05 /* SPIRVTools.xcframework in Frameworks */ = {isa = PBXBuildFile; fileRef = A983870224EEE94800199A05 /* SPIRVTools.xcframework */; };
-		A983870424EEE94800199A05 /* SPIRVTools.xcframework in Frameworks */ = {isa = PBXBuildFile; fileRef = A983870224EEE94800199A05 /* SPIRVTools.xcframework */; };
-		A983870524EEE94800199A05 /* SPIRVTools.xcframework in Frameworks */ = {isa = PBXBuildFile; fileRef = A983870224EEE94800199A05 /* SPIRVTools.xcframework */; };
-		A983870624EEE94800199A05 /* SPIRVTools.xcframework in Frameworks */ = {isa = PBXBuildFile; fileRef = A983870224EEE94800199A05 /* SPIRVTools.xcframework */; };
 		A983870724EEE94800199A05 /* SPIRVTools.xcframework in Frameworks */ = {isa = PBXBuildFile; fileRef = A983870224EEE94800199A05 /* SPIRVTools.xcframework */; };
 		A983870824EEE94800199A05 /* SPIRVTools.xcframework in Frameworks */ = {isa = PBXBuildFile; fileRef = A983870224EEE94800199A05 /* SPIRVTools.xcframework */; };
 		A983870924EEE94800199A05 /* SPIRVTools.xcframework in Frameworks */ = {isa = PBXBuildFile; fileRef = A983870224EEE94800199A05 /* SPIRVTools.xcframework */; };
 		A9A14E332244388700C080F3 /* Metal.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = A9A14E322244388700C080F3 /* Metal.framework */; };
 		A9B51BDD225E98BB00AC74D2 /* MVKOSExtensions.mm in Sources */ = {isa = PBXBuildFile; fileRef = A9B51BDB225E98BB00AC74D2 /* MVKOSExtensions.mm */; };
-		A9C70F5F221B321700FBA31A /* SPIRVSupport.h in Headers */ = {isa = PBXBuildFile; fileRef = A9C70F5D221B321600FBA31A /* SPIRVSupport.h */; };
-		A9C70F60221B321700FBA31A /* SPIRVSupport.h in Headers */ = {isa = PBXBuildFile; fileRef = A9C70F5D221B321600FBA31A /* SPIRVSupport.h */; };
 		A9C70F61221B321700FBA31A /* SPIRVSupport.h in Headers */ = {isa = PBXBuildFile; fileRef = A9C70F5D221B321600FBA31A /* SPIRVSupport.h */; };
 		A9C70F62221B321700FBA31A /* SPIRVSupport.h in Headers */ = {isa = PBXBuildFile; fileRef = A9C70F5D221B321600FBA31A /* SPIRVSupport.h */; };
 		A9C70F63221B321700FBA31A /* SPIRVSupport.cpp in Sources */ = {isa = PBXBuildFile; fileRef = A9C70F5E221B321700FBA31A /* SPIRVSupport.cpp */; };
-		A9C70F64221B321700FBA31A /* SPIRVSupport.cpp in Sources */ = {isa = PBXBuildFile; fileRef = A9C70F5E221B321700FBA31A /* SPIRVSupport.cpp */; };
-		A9C70F65221B321700FBA31A /* SPIRVSupport.cpp in Sources */ = {isa = PBXBuildFile; fileRef = A9C70F5E221B321700FBA31A /* SPIRVSupport.cpp */; };
 		A9C70F66221B321700FBA31A /* SPIRVSupport.cpp in Sources */ = {isa = PBXBuildFile; fileRef = A9C70F5E221B321700FBA31A /* SPIRVSupport.cpp */; };
 		A9C70F67221B321700FBA31A /* SPIRVSupport.cpp in Sources */ = {isa = PBXBuildFile; fileRef = A9C70F5E221B321700FBA31A /* SPIRVSupport.cpp */; };
-		A9F042B01FB4D060009FCCB8 /* MVKCommonEnvironment.h in Headers */ = {isa = PBXBuildFile; fileRef = A9F042AA1FB4D060009FCCB8 /* MVKCommonEnvironment.h */; };
-		A9F042B11FB4D060009FCCB8 /* MVKCommonEnvironment.h in Headers */ = {isa = PBXBuildFile; fileRef = A9F042AA1FB4D060009FCCB8 /* MVKCommonEnvironment.h */; };
 		A9F042B21FB4D060009FCCB8 /* MVKCommonEnvironment.h in Headers */ = {isa = PBXBuildFile; fileRef = A9F042AA1FB4D060009FCCB8 /* MVKCommonEnvironment.h */; };
 		A9F042B31FB4D060009FCCB8 /* MVKCommonEnvironment.h in Headers */ = {isa = PBXBuildFile; fileRef = A9F042AA1FB4D060009FCCB8 /* MVKCommonEnvironment.h */; };
 /* End PBXBuildFile section */
@@ -94,36 +75,26 @@
 			remoteGlobalIDString = A93903C01C57E9ED00FE90DC;
 			remoteInfo = "MoltenVKSPIRVToMSLConverter-macOS";
 		};
-		A93749CE1A9AA7AF00F29B34 /* PBXContainerItemProxy */ = {
-			isa = PBXContainerItemProxy;
-			containerPortal = A9F55D25198BE6A7004EC31B /* Project object */;
-			proxyType = 1;
-			remoteGlobalIDString = A93747701A9A98D000F29B34;
-			remoteInfo = "MetalGLShaderConverter-macOS";
-		};
 /* End PBXContainerItemProxy section */
 
 /* Begin PBXFileReference section */
-		2FEA0AD72490305800EEF3AD /* libMoltenVKGLSLToSPIRVConverter.a */ = {isa = PBXFileReference; explicitFileType = archive.ar; includeInIndex = 0; path = libMoltenVKGLSLToSPIRVConverter.a; sourceTree = BUILT_PRODUCTS_DIR; };
-		2FEA0D142490381A00EEF3AD /* libMoltenVKSPIRVToMSLConverter.a */ = {isa = PBXFileReference; explicitFileType = archive.ar; includeInIndex = 0; path = libMoltenVKSPIRVToMSLConverter.a; sourceTree = BUILT_PRODUCTS_DIR; };
+		2FEA0D142490381A00EEF3AD /* libMoltenVKShaderConverter.a */ = {isa = PBXFileReference; explicitFileType = archive.ar; includeInIndex = 0; path = libMoltenVKShaderConverter.a; sourceTree = BUILT_PRODUCTS_DIR; };
 		450A4F5E220CB180007203D7 /* SPIRVReflection.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SPIRVReflection.h; sourceTree = "<group>"; };
 		A9093F5A1C58013E0094110D /* SPIRVToMSLConverter.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = SPIRVToMSLConverter.cpp; sourceTree = "<group>"; };
 		A9093F5B1C58013E0094110D /* SPIRVToMSLConverter.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SPIRVToMSLConverter.h; sourceTree = "<group>"; };
-		A90940A31C5808BB0094110D /* GLSLToSPIRVConverter.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = GLSLToSPIRVConverter.cpp; sourceTree = "<group>"; };
-		A90940A41C5808BB0094110D /* GLSLToSPIRVConverter.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = GLSLToSPIRVConverter.h; sourceTree = "<group>"; };
-		A90941A11C581F840094110D /* GLSLConversion.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; path = GLSLConversion.mm; sourceTree = "<group>"; };
-		A90941A21C581F840094110D /* GLSLConversion.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = GLSLConversion.h; sourceTree = "<group>"; };
+		A920A89F251B75B70076851C /* GLSLToSPIRVConverter.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = GLSLToSPIRVConverter.cpp; sourceTree = "<group>"; };
+		A920A8A0251B75B70076851C /* GLSLConversion.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = GLSLConversion.h; sourceTree = "<group>"; };
+		A920A8A1251B75B70076851C /* GLSLConversion.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; path = GLSLConversion.mm; sourceTree = "<group>"; };
+		A920A8A2251B75B70076851C /* GLSLToSPIRVConverter.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = GLSLToSPIRVConverter.h; sourceTree = "<group>"; };
 		A925B70A1C7754B2006E7ECD /* FileSupport.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; path = FileSupport.mm; sourceTree = "<group>"; };
 		A925B70B1C7754B2006E7ECD /* FileSupport.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = FileSupport.h; sourceTree = "<group>"; };
 		A928C9171D0488DC00071B88 /* SPIRVConversion.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SPIRVConversion.h; sourceTree = "<group>"; };
 		A928C9181D0488DC00071B88 /* SPIRVConversion.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; path = SPIRVConversion.mm; sourceTree = "<group>"; };
-		A93903BF1C57E9D700FE90DC /* libMoltenVKSPIRVToMSLConverter.a */ = {isa = PBXFileReference; explicitFileType = archive.ar; includeInIndex = 0; path = libMoltenVKSPIRVToMSLConverter.a; sourceTree = BUILT_PRODUCTS_DIR; };
-		A93903C71C57E9ED00FE90DC /* libMoltenVKSPIRVToMSLConverter.a */ = {isa = PBXFileReference; explicitFileType = archive.ar; includeInIndex = 0; path = libMoltenVKSPIRVToMSLConverter.a; sourceTree = BUILT_PRODUCTS_DIR; };
+		A93903BF1C57E9D700FE90DC /* libMoltenVKShaderConverter.a */ = {isa = PBXFileReference; explicitFileType = archive.ar; includeInIndex = 0; path = libMoltenVKShaderConverter.a; sourceTree = BUILT_PRODUCTS_DIR; };
+		A93903C71C57E9ED00FE90DC /* libMoltenVKShaderConverter.a */ = {isa = PBXFileReference; explicitFileType = archive.ar; includeInIndex = 0; path = libMoltenVKShaderConverter.a; sourceTree = BUILT_PRODUCTS_DIR; };
 		A95096BD2003D32400F10950 /* OSSupport.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; path = OSSupport.mm; sourceTree = "<group>"; };
 		A95096BE2003D32400F10950 /* OSSupport.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = OSSupport.h; sourceTree = "<group>"; };
 		A964BD5F1C57EFBD00D930D8 /* MoltenVKShaderConverter */ = {isa = PBXFileReference; explicitFileType = "compiled.mach-o.executable"; includeInIndex = 0; path = MoltenVKShaderConverter; sourceTree = BUILT_PRODUCTS_DIR; };
-		A964BD601C57EFBD00D930D8 /* libMoltenVKGLSLToSPIRVConverter.a */ = {isa = PBXFileReference; explicitFileType = archive.ar; includeInIndex = 0; path = libMoltenVKGLSLToSPIRVConverter.a; sourceTree = BUILT_PRODUCTS_DIR; };
-		A964BD611C57EFBD00D930D8 /* libMoltenVKGLSLToSPIRVConverter.a */ = {isa = PBXFileReference; explicitFileType = archive.ar; includeInIndex = 0; path = libMoltenVKGLSLToSPIRVConverter.a; sourceTree = BUILT_PRODUCTS_DIR; };
 		A97CC73D1C7527F3004A5C7E /* main.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = main.cpp; sourceTree = "<group>"; };
 		A97CC73E1C7527F3004A5C7E /* MoltenVKShaderConverterTool.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = MoltenVKShaderConverterTool.cpp; sourceTree = "<group>"; };
 		A97CC73F1C7527F3004A5C7E /* MoltenVKShaderConverterTool.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MoltenVKShaderConverterTool.h; sourceTree = "<group>"; };
@@ -140,21 +111,13 @@
 /* End PBXFileReference section */
 
 /* Begin PBXFrameworksBuildPhase section */
-		2FEA0ACF2490305800EEF3AD /* Frameworks */ = {
-			isa = PBXFrameworksBuildPhase;
-			buildActionMask = 2147483647;
-			files = (
-				A983870524EEE94800199A05 /* SPIRVTools.xcframework in Frameworks */,
-				A983870024EEE93700199A05 /* glslang.xcframework in Frameworks */,
-			);
-			runOnlyForDeploymentPostprocessing = 0;
-		};
 		2FEA0D0C2490381A00EEF3AD /* Frameworks */ = {
 			isa = PBXFrameworksBuildPhase;
 			buildActionMask = 2147483647;
 			files = (
 				A983870824EEE94800199A05 /* SPIRVTools.xcframework in Frameworks */,
 				A98386FB24EEE91A00199A05 /* SPIRVCross.xcframework in Frameworks */,
+				A920A8B0251B77910076851C /* glslang.xcframework in Frameworks */,
 			);
 			runOnlyForDeploymentPostprocessing = 0;
 		};
@@ -162,30 +125,8 @@
 			isa = PBXFrameworksBuildPhase;
 			buildActionMask = 2147483647;
 			files = (
-				A98386FE24EEE93700199A05 /* glslang.xcframework in Frameworks */,
 				A9A14E332244388700C080F3 /* Metal.framework in Frameworks */,
-				A925B71A1C78DEB2006E7ECD /* libMoltenVKGLSLToSPIRVConverter.a in Frameworks */,
-				A925B71B1C78DEB2006E7ECD /* libMoltenVKSPIRVToMSLConverter.a in Frameworks */,
-				A983870324EEE94800199A05 /* SPIRVTools.xcframework in Frameworks */,
-				A98386F924EEE91A00199A05 /* SPIRVCross.xcframework in Frameworks */,
-			);
-			runOnlyForDeploymentPostprocessing = 0;
-		};
-		A972AD2821CEE6310013AB25 /* Frameworks */ = {
-			isa = PBXFrameworksBuildPhase;
-			buildActionMask = 2147483647;
-			files = (
-				A983870424EEE94800199A05 /* SPIRVTools.xcframework in Frameworks */,
-				A98386FF24EEE93700199A05 /* glslang.xcframework in Frameworks */,
-			);
-			runOnlyForDeploymentPostprocessing = 0;
-		};
-		A972AD2C21CEE6C30013AB25 /* Frameworks */ = {
-			isa = PBXFrameworksBuildPhase;
-			buildActionMask = 2147483647;
-			files = (
-				A983870624EEE94800199A05 /* SPIRVTools.xcframework in Frameworks */,
-				A983870124EEE93700199A05 /* glslang.xcframework in Frameworks */,
+				A925B71B1C78DEB2006E7ECD /* libMoltenVKShaderConverter.a in Frameworks */,
 			);
 			runOnlyForDeploymentPostprocessing = 0;
 		};
@@ -195,6 +136,7 @@
 			files = (
 				A983870724EEE94800199A05 /* SPIRVTools.xcframework in Frameworks */,
 				A98386FA24EEE91A00199A05 /* SPIRVCross.xcframework in Frameworks */,
+				A920A8AF251B77900076851C /* glslang.xcframework in Frameworks */,
 			);
 			runOnlyForDeploymentPostprocessing = 0;
 		};
@@ -204,47 +146,38 @@
 			files = (
 				A983870924EEE94800199A05 /* SPIRVTools.xcframework in Frameworks */,
 				A98386FC24EEE91A00199A05 /* SPIRVCross.xcframework in Frameworks */,
+				A920A8B1251B77920076851C /* glslang.xcframework in Frameworks */,
 			);
 			runOnlyForDeploymentPostprocessing = 0;
 		};
 /* End PBXFrameworksBuildPhase section */
 
 /* Begin PBXGroup section */
-		A9093C561C58013D0094110D /* MoltenVKSPIRVToMSLConverter */ = {
+		A9093C561C58013D0094110D /* MoltenVKShaderConverter */ = {
 			isa = PBXGroup;
 			children = (
 				A925B70B1C7754B2006E7ECD /* FileSupport.h */,
 				A925B70A1C7754B2006E7ECD /* FileSupport.mm */,
+				A920A8A0251B75B70076851C /* GLSLConversion.h */,
+				A920A8A1251B75B70076851C /* GLSLConversion.mm */,
+				A920A89F251B75B70076851C /* GLSLToSPIRVConverter.cpp */,
+				A920A8A2251B75B70076851C /* GLSLToSPIRVConverter.h */,
 				A928C9171D0488DC00071B88 /* SPIRVConversion.h */,
 				A928C9181D0488DC00071B88 /* SPIRVConversion.mm */,
 				450A4F5E220CB180007203D7 /* SPIRVReflection.h */,
 				A9093F5A1C58013E0094110D /* SPIRVToMSLConverter.cpp */,
 				A9093F5B1C58013E0094110D /* SPIRVToMSLConverter.h */,
 			);
-			path = MoltenVKSPIRVToMSLConverter;
-			sourceTree = "<group>";
-		};
-		A90940A11C5808BB0094110D /* MoltenVKGLSLToSPIRVConverter */ = {
-			isa = PBXGroup;
-			children = (
-				A90941A21C581F840094110D /* GLSLConversion.h */,
-				A90941A11C581F840094110D /* GLSLConversion.mm */,
-				A90940A31C5808BB0094110D /* GLSLToSPIRVConverter.cpp */,
-				A90940A41C5808BB0094110D /* GLSLToSPIRVConverter.h */,
-			);
-			path = MoltenVKGLSLToSPIRVConverter;
+			path = MoltenVKShaderConverter;
 			sourceTree = "<group>";
 		};
 		A964B28D1C57EBC400D930D8 /* Products */ = {
 			isa = PBXGroup;
 			children = (
-				A93903C71C57E9ED00FE90DC /* libMoltenVKSPIRVToMSLConverter.a */,
-				A93903BF1C57E9D700FE90DC /* libMoltenVKSPIRVToMSLConverter.a */,
-				2FEA0D142490381A00EEF3AD /* libMoltenVKSPIRVToMSLConverter.a */,
+				A93903C71C57E9ED00FE90DC /* libMoltenVKShaderConverter.a */,
+				A93903BF1C57E9D700FE90DC /* libMoltenVKShaderConverter.a */,
+				2FEA0D142490381A00EEF3AD /* libMoltenVKShaderConverter.a */,
 				A964BD5F1C57EFBD00D930D8 /* MoltenVKShaderConverter */,
-				A964BD601C57EFBD00D930D8 /* libMoltenVKGLSLToSPIRVConverter.a */,
-				A964BD611C57EFBD00D930D8 /* libMoltenVKGLSLToSPIRVConverter.a */,
-				2FEA0AD72490305800EEF3AD /* libMoltenVKGLSLToSPIRVConverter.a */,
 			);
 			name = Products;
 			sourceTree = "<group>";
@@ -290,8 +223,7 @@
 		A9F55D24198BE6A7004EC31B = {
 			isa = PBXGroup;
 			children = (
-				A9093C561C58013D0094110D /* MoltenVKSPIRVToMSLConverter */,
-				A90940A11C5808BB0094110D /* MoltenVKGLSLToSPIRVConverter */,
+				A9093C561C58013D0094110D /* MoltenVKShaderConverter */,
 				A97CC73C1C7527F3004A5C7E /* MoltenVKShaderConverterTool */,
 				A9F042A81FB4D060009FCCB8 /* Common */,
 				A964B28D1C57EBC400D930D8 /* Products */,
@@ -302,63 +234,31 @@
 /* End PBXGroup section */
 
 /* Begin PBXHeadersBuildPhase section */
-		2FEA0AC52490305800EEF3AD /* Headers */ = {
-			isa = PBXHeadersBuildPhase;
-			buildActionMask = 2147483647;
-			files = (
-				2FEA0AC62490305800EEF3AD /* SPIRVSupport.h in Headers */,
-				2FEA0AC72490305800EEF3AD /* GLSLConversion.h in Headers */,
-				2FEA0AC82490305800EEF3AD /* GLSLToSPIRVConverter.h in Headers */,
-				2FEA0AC92490305800EEF3AD /* MVKCommonEnvironment.h in Headers */,
-				2FEA0ACA2490305800EEF3AD /* MVKStrings.h in Headers */,
-			);
-			runOnlyForDeploymentPostprocessing = 0;
-		};
 		2FEA0D002490381A00EEF3AD /* Headers */ = {
 			isa = PBXHeadersBuildPhase;
 			buildActionMask = 2147483647;
 			files = (
 				2FEA0D012490381A00EEF3AD /* SPIRVReflection.h in Headers */,
+				A920A8A7251B75B70076851C /* GLSLConversion.h in Headers */,
 				2FEA0D022490381A00EEF3AD /* MVKStrings.h in Headers */,
 				2FEA0D032490381A00EEF3AD /* SPIRVSupport.h in Headers */,
 				2FEA0D042490381A00EEF3AD /* SPIRVConversion.h in Headers */,
+				A920A8AD251B75B80076851C /* GLSLToSPIRVConverter.h in Headers */,
 				2FEA0D052490381A00EEF3AD /* SPIRVToMSLConverter.h in Headers */,
 				2FEA0D062490381A00EEF3AD /* MVKCommonEnvironment.h in Headers */,
 			);
 			runOnlyForDeploymentPostprocessing = 0;
 		};
-		A93747291A9A8B2900F29B34 /* Headers */ = {
-			isa = PBXHeadersBuildPhase;
-			buildActionMask = 2147483647;
-			files = (
-				A9C70F5F221B321700FBA31A /* SPIRVSupport.h in Headers */,
-				A90941A51C581F840094110D /* GLSLConversion.h in Headers */,
-				A90940A91C5808BB0094110D /* GLSLToSPIRVConverter.h in Headers */,
-				A9F042B01FB4D060009FCCB8 /* MVKCommonEnvironment.h in Headers */,
-				A98149661FB6A98A005F00B4 /* MVKStrings.h in Headers */,
-			);
-			runOnlyForDeploymentPostprocessing = 0;
-		};
-		A937476E1A9A98D000F29B34 /* Headers */ = {
-			isa = PBXHeadersBuildPhase;
-			buildActionMask = 2147483647;
-			files = (
-				A9C70F60221B321700FBA31A /* SPIRVSupport.h in Headers */,
-				A90941A61C581F840094110D /* GLSLConversion.h in Headers */,
-				A90940AA1C5808BB0094110D /* GLSLToSPIRVConverter.h in Headers */,
-				A9F042B11FB4D060009FCCB8 /* MVKCommonEnvironment.h in Headers */,
-				A98149671FB6A98A005F00B4 /* MVKStrings.h in Headers */,
-			);
-			runOnlyForDeploymentPostprocessing = 0;
-		};
 		A93903B91C57E9D700FE90DC /* Headers */ = {
 			isa = PBXHeadersBuildPhase;
 			buildActionMask = 2147483647;
 			files = (
 				450A4F61220CB180007203D7 /* SPIRVReflection.h in Headers */,
+				A920A8A6251B75B70076851C /* GLSLConversion.h in Headers */,
 				A98149681FB6A98A005F00B4 /* MVKStrings.h in Headers */,
 				A9C70F61221B321700FBA31A /* SPIRVSupport.h in Headers */,
 				A928C9191D0488DC00071B88 /* SPIRVConversion.h in Headers */,
+				A920A8AC251B75B70076851C /* GLSLToSPIRVConverter.h in Headers */,
 				A909408C1C58013E0094110D /* SPIRVToMSLConverter.h in Headers */,
 				A9F042B21FB4D060009FCCB8 /* MVKCommonEnvironment.h in Headers */,
 			);
@@ -369,9 +269,11 @@
 			buildActionMask = 2147483647;
 			files = (
 				450A4F62220CB180007203D7 /* SPIRVReflection.h in Headers */,
+				A920A8A8251B75B70076851C /* GLSLConversion.h in Headers */,
 				A98149691FB6A98A005F00B4 /* MVKStrings.h in Headers */,
 				A9C70F62221B321700FBA31A /* SPIRVSupport.h in Headers */,
 				A928C91A1D0488DC00071B88 /* SPIRVConversion.h in Headers */,
+				A920A8AE251B75B80076851C /* GLSLToSPIRVConverter.h in Headers */,
 				A909408D1C58013E0094110D /* SPIRVToMSLConverter.h in Headers */,
 				A9F042B31FB4D060009FCCB8 /* MVKCommonEnvironment.h in Headers */,
 			);
@@ -380,27 +282,9 @@
 /* End PBXHeadersBuildPhase section */
 
 /* Begin PBXNativeTarget section */
-		2FEA0AC42490305800EEF3AD /* MoltenVKGLSLToSPIRVConverter-tvOS */ = {
+		2FEA0CFF2490381A00EEF3AD /* MoltenVKShaderConverter-tvOS */ = {
 			isa = PBXNativeTarget;
-			buildConfigurationList = 2FEA0AD42490305800EEF3AD /* Build configuration list for PBXNativeTarget "MoltenVKGLSLToSPIRVConverter-tvOS" */;
-			buildPhases = (
-				2FEA0AC52490305800EEF3AD /* Headers */,
-				2FEA0ACB2490305800EEF3AD /* Sources */,
-				2FEA0ACF2490305800EEF3AD /* Frameworks */,
-				A93ED4E524F59DEA00FEB018 /* Copy to Staging */,
-			);
-			buildRules = (
-			);
-			dependencies = (
-			);
-			name = "MoltenVKGLSLToSPIRVConverter-tvOS";
-			productName = "MetalGLShaderConverter-iOS";
-			productReference = 2FEA0AD72490305800EEF3AD /* libMoltenVKGLSLToSPIRVConverter.a */;
-			productType = "com.apple.product-type.library.static";
-		};
-		2FEA0CFF2490381A00EEF3AD /* MoltenVKSPIRVToMSLConverter-tvOS */ = {
-			isa = PBXNativeTarget;
-			buildConfigurationList = 2FEA0D112490381A00EEF3AD /* Build configuration list for PBXNativeTarget "MoltenVKSPIRVToMSLConverter-tvOS" */;
+			buildConfigurationList = 2FEA0D112490381A00EEF3AD /* Build configuration list for PBXNativeTarget "MoltenVKShaderConverter-tvOS" */;
 			buildPhases = (
 				2FEA0D002490381A00EEF3AD /* Headers */,
 				2FEA0D072490381A00EEF3AD /* Sources */,
@@ -411,9 +295,9 @@
 			);
 			dependencies = (
 			);
-			name = "MoltenVKSPIRVToMSLConverter-tvOS";
+			name = "MoltenVKShaderConverter-tvOS";
 			productName = "MetalGLShaderConverter-iOS";
-			productReference = 2FEA0D142490381A00EEF3AD /* libMoltenVKSPIRVToMSLConverter.a */;
+			productReference = 2FEA0D142490381A00EEF3AD /* libMoltenVKShaderConverter.a */;
 			productType = "com.apple.product-type.library.static";
 		};
 		A9092A8C1A81717B00051823 /* MoltenVKShaderConverter */ = {
@@ -427,52 +311,15 @@
 			);
 			dependencies = (
 				A925B71D1C78DEBF006E7ECD /* PBXTargetDependency */,
-				A93749CF1A9AA7AF00F29B34 /* PBXTargetDependency */,
 			);
 			name = MoltenVKShaderConverter;
 			productName = MetalGLShaderConverterTool;
 			productReference = A964BD5F1C57EFBD00D930D8 /* MoltenVKShaderConverter */;
 			productType = "com.apple.product-type.tool";
 		};
-		A937472B1A9A8B2900F29B34 /* MoltenVKGLSLToSPIRVConverter-iOS */ = {
+		A93903B81C57E9D700FE90DC /* MoltenVKShaderConverter-iOS */ = {
 			isa = PBXNativeTarget;
-			buildConfigurationList = A937473F1A9A8B2900F29B34 /* Build configuration list for PBXNativeTarget "MoltenVKGLSLToSPIRVConverter-iOS" */;
-			buildPhases = (
-				A93747291A9A8B2900F29B34 /* Headers */,
-				A93747271A9A8B2900F29B34 /* Sources */,
-				A972AD2821CEE6310013AB25 /* Frameworks */,
-				A93ED4E424F59DC600FEB018 /* Copy to Staging */,
-			);
-			buildRules = (
-			);
-			dependencies = (
-			);
-			name = "MoltenVKGLSLToSPIRVConverter-iOS";
-			productName = "MetalGLShaderConverter-iOS";
-			productReference = A964BD611C57EFBD00D930D8 /* libMoltenVKGLSLToSPIRVConverter.a */;
-			productType = "com.apple.product-type.library.static";
-		};
-		A93747701A9A98D000F29B34 /* MoltenVKGLSLToSPIRVConverter-macOS */ = {
-			isa = PBXNativeTarget;
-			buildConfigurationList = A93747841A9A98D000F29B34 /* Build configuration list for PBXNativeTarget "MoltenVKGLSLToSPIRVConverter-macOS" */;
-			buildPhases = (
-				A937476E1A9A98D000F29B34 /* Headers */,
-				A937476C1A9A98D000F29B34 /* Sources */,
-				A972AD2C21CEE6C30013AB25 /* Frameworks */,
-				A93ED4E624F59DFB00FEB018 /* Copy to Staging */,
-			);
-			buildRules = (
-			);
-			dependencies = (
-			);
-			name = "MoltenVKGLSLToSPIRVConverter-macOS";
-			productName = "MetalGLShaderConverter-macOS";
-			productReference = A964BD601C57EFBD00D930D8 /* libMoltenVKGLSLToSPIRVConverter.a */;
-			productType = "com.apple.product-type.library.static";
-		};
-		A93903B81C57E9D700FE90DC /* MoltenVKSPIRVToMSLConverter-iOS */ = {
-			isa = PBXNativeTarget;
-			buildConfigurationList = A93903BC1C57E9D700FE90DC /* Build configuration list for PBXNativeTarget "MoltenVKSPIRVToMSLConverter-iOS" */;
+			buildConfigurationList = A93903BC1C57E9D700FE90DC /* Build configuration list for PBXNativeTarget "MoltenVKShaderConverter-iOS" */;
 			buildPhases = (
 				A93903B91C57E9D700FE90DC /* Headers */,
 				A93903BA1C57E9D700FE90DC /* Sources */,
@@ -483,14 +330,14 @@
 			);
 			dependencies = (
 			);
-			name = "MoltenVKSPIRVToMSLConverter-iOS";
+			name = "MoltenVKShaderConverter-iOS";
 			productName = "MetalGLShaderConverter-iOS";
-			productReference = A93903BF1C57E9D700FE90DC /* libMoltenVKSPIRVToMSLConverter.a */;
+			productReference = A93903BF1C57E9D700FE90DC /* libMoltenVKShaderConverter.a */;
 			productType = "com.apple.product-type.library.static";
 		};
-		A93903C01C57E9ED00FE90DC /* MoltenVKSPIRVToMSLConverter-macOS */ = {
+		A93903C01C57E9ED00FE90DC /* MoltenVKShaderConverter-macOS */ = {
 			isa = PBXNativeTarget;
-			buildConfigurationList = A93903C41C57E9ED00FE90DC /* Build configuration list for PBXNativeTarget "MoltenVKSPIRVToMSLConverter-macOS" */;
+			buildConfigurationList = A93903C41C57E9ED00FE90DC /* Build configuration list for PBXNativeTarget "MoltenVKShaderConverter-macOS" */;
 			buildPhases = (
 				A93903C11C57E9ED00FE90DC /* Headers */,
 				A93903C21C57E9ED00FE90DC /* Sources */,
@@ -501,9 +348,9 @@
 			);
 			dependencies = (
 			);
-			name = "MoltenVKSPIRVToMSLConverter-macOS";
+			name = "MoltenVKShaderConverter-macOS";
 			productName = "MetalGLShaderConverter-macOS";
-			productReference = A93903C71C57E9ED00FE90DC /* libMoltenVKSPIRVToMSLConverter.a */;
+			productReference = A93903C71C57E9ED00FE90DC /* libMoltenVKShaderConverter.a */;
 			productType = "com.apple.product-type.library.static";
 		};
 /* End PBXNativeTarget section */
@@ -519,14 +366,6 @@
 						CreatedOnToolsVersion = 6.1.1;
 						DevelopmentTeam = VU3TCKU48B;
 					};
-					A937472B1A9A8B2900F29B34 = {
-						CreatedOnToolsVersion = 6.1.1;
-						DevelopmentTeam = VU3TCKU48B;
-					};
-					A93747701A9A98D000F29B34 = {
-						CreatedOnToolsVersion = 6.1.1;
-						DevelopmentTeam = VU3TCKU48B;
-					};
 					A93903B81C57E9D700FE90DC = {
 						DevelopmentTeam = VU3TCKU48B;
 					};
@@ -549,71 +388,14 @@
 			projectRoot = "";
 			targets = (
 				A9092A8C1A81717B00051823 /* MoltenVKShaderConverter */,
-				A937472B1A9A8B2900F29B34 /* MoltenVKGLSLToSPIRVConverter-iOS */,
-				2FEA0AC42490305800EEF3AD /* MoltenVKGLSLToSPIRVConverter-tvOS */,
-				A93747701A9A98D000F29B34 /* MoltenVKGLSLToSPIRVConverter-macOS */,
-				A93903B81C57E9D700FE90DC /* MoltenVKSPIRVToMSLConverter-iOS */,
-				2FEA0CFF2490381A00EEF3AD /* MoltenVKSPIRVToMSLConverter-tvOS */,
-				A93903C01C57E9ED00FE90DC /* MoltenVKSPIRVToMSLConverter-macOS */,
+				A93903B81C57E9D700FE90DC /* MoltenVKShaderConverter-iOS */,
+				2FEA0CFF2490381A00EEF3AD /* MoltenVKShaderConverter-tvOS */,
+				A93903C01C57E9ED00FE90DC /* MoltenVKShaderConverter-macOS */,
 			);
 		};
 /* End PBXProject section */
 
 /* Begin PBXShellScriptBuildPhase section */
-		A93ED4E424F59DC600FEB018 /* Copy to Staging */ = {
-			isa = PBXShellScriptBuildPhase;
-			buildActionMask = 2147483647;
-			files = (
-			);
-			inputFileListPaths = (
-			);
-			inputPaths = (
-			);
-			name = "Copy to Staging";
-			outputFileListPaths = (
-			);
-			outputPaths = (
-			);
-			runOnlyForDeploymentPostprocessing = 0;
-			shellPath = /bin/sh;
-			shellScript = ". \"${SRCROOT}/../Scripts/copy_to_staging.sh\"\n";
-		};
-		A93ED4E524F59DEA00FEB018 /* Copy to Staging */ = {
-			isa = PBXShellScriptBuildPhase;
-			buildActionMask = 2147483647;
-			files = (
-			);
-			inputFileListPaths = (
-			);
-			inputPaths = (
-			);
-			name = "Copy to Staging";
-			outputFileListPaths = (
-			);
-			outputPaths = (
-			);
-			runOnlyForDeploymentPostprocessing = 0;
-			shellPath = /bin/sh;
-			shellScript = ". \"${SRCROOT}/../Scripts/copy_to_staging.sh\"\n";
-		};
-		A93ED4E624F59DFB00FEB018 /* Copy to Staging */ = {
-			isa = PBXShellScriptBuildPhase;
-			buildActionMask = 2147483647;
-			files = (
-			);
-			inputFileListPaths = (
-			);
-			inputPaths = (
-			);
-			name = "Copy to Staging";
-			outputFileListPaths = (
-			);
-			outputPaths = (
-			);
-			runOnlyForDeploymentPostprocessing = 0;
-			shellPath = /bin/sh;
-			shellScript = ". \"${SRCROOT}/../Scripts/copy_to_staging.sh\"\n";
-		};
 		A93ED4E724F59E0900FEB018 /* Copy to Staging */ = {
 			isa = PBXShellScriptBuildPhase;
 			buildActionMask = 2147483647;
@@ -671,21 +453,13 @@
 /* End PBXShellScriptBuildPhase section */
 
 /* Begin PBXSourcesBuildPhase section */
-		2FEA0ACB2490305800EEF3AD /* Sources */ = {
-			isa = PBXSourcesBuildPhase;
-			buildActionMask = 2147483647;
-			files = (
-				2FEA0ACC2490305800EEF3AD /* GLSLConversion.mm in Sources */,
-				2FEA0ACD2490305800EEF3AD /* SPIRVSupport.cpp in Sources */,
-				2FEA0ACE2490305800EEF3AD /* GLSLToSPIRVConverter.cpp in Sources */,
-			);
-			runOnlyForDeploymentPostprocessing = 0;
-		};
 		2FEA0D072490381A00EEF3AD /* Sources */ = {
 			isa = PBXSourcesBuildPhase;
 			buildActionMask = 2147483647;
 			files = (
 				2FEA0D082490381A00EEF3AD /* FileSupport.mm in Sources */,
+				A920A8AA251B75B70076851C /* GLSLConversion.mm in Sources */,
+				A920A8A4251B75B70076851C /* GLSLToSPIRVConverter.cpp in Sources */,
 				2FEA0D092490381A00EEF3AD /* SPIRVToMSLConverter.cpp in Sources */,
 				2FEA0D0A2490381A00EEF3AD /* SPIRVSupport.cpp in Sources */,
 				2FEA0D0B2490381A00EEF3AD /* SPIRVConversion.mm in Sources */,
@@ -704,31 +478,13 @@
 			);
 			runOnlyForDeploymentPostprocessing = 0;
 		};
-		A93747271A9A8B2900F29B34 /* Sources */ = {
-			isa = PBXSourcesBuildPhase;
-			buildActionMask = 2147483647;
-			files = (
-				A90941A31C581F840094110D /* GLSLConversion.mm in Sources */,
-				A9C70F64221B321700FBA31A /* SPIRVSupport.cpp in Sources */,
-				A90940A71C5808BB0094110D /* GLSLToSPIRVConverter.cpp in Sources */,
-			);
-			runOnlyForDeploymentPostprocessing = 0;
-		};
-		A937476C1A9A98D000F29B34 /* Sources */ = {
-			isa = PBXSourcesBuildPhase;
-			buildActionMask = 2147483647;
-			files = (
-				A90941A41C581F840094110D /* GLSLConversion.mm in Sources */,
-				A9C70F65221B321700FBA31A /* SPIRVSupport.cpp in Sources */,
-				A90940A81C5808BB0094110D /* GLSLToSPIRVConverter.cpp in Sources */,
-			);
-			runOnlyForDeploymentPostprocessing = 0;
-		};
 		A93903BA1C57E9D700FE90DC /* Sources */ = {
 			isa = PBXSourcesBuildPhase;
 			buildActionMask = 2147483647;
 			files = (
 				A95096BB2003D00300F10950 /* FileSupport.mm in Sources */,
+				A920A8A9251B75B70076851C /* GLSLConversion.mm in Sources */,
+				A920A8A3251B75B70076851C /* GLSLToSPIRVConverter.cpp in Sources */,
 				A909408A1C58013E0094110D /* SPIRVToMSLConverter.cpp in Sources */,
 				A9C70F66221B321700FBA31A /* SPIRVSupport.cpp in Sources */,
 				A928C91B1D0488DC00071B88 /* SPIRVConversion.mm in Sources */,
@@ -740,6 +496,8 @@
 			buildActionMask = 2147483647;
 			files = (
 				A95096BC2003D00300F10950 /* FileSupport.mm in Sources */,
+				A920A8AB251B75B70076851C /* GLSLConversion.mm in Sources */,
+				A920A8A5251B75B70076851C /* GLSLToSPIRVConverter.cpp in Sources */,
 				A909408B1C58013E0094110D /* SPIRVToMSLConverter.cpp in Sources */,
 				A9C70F67221B321700FBA31A /* SPIRVSupport.cpp in Sources */,
 				A928C91C1D0488DC00071B88 /* SPIRVConversion.mm in Sources */,
@@ -751,47 +509,12 @@
 /* Begin PBXTargetDependency section */
 		A925B71D1C78DEBF006E7ECD /* PBXTargetDependency */ = {
 			isa = PBXTargetDependency;
-			target = A93903C01C57E9ED00FE90DC /* MoltenVKSPIRVToMSLConverter-macOS */;
+			target = A93903C01C57E9ED00FE90DC /* MoltenVKShaderConverter-macOS */;
 			targetProxy = A925B71C1C78DEBF006E7ECD /* PBXContainerItemProxy */;
 		};
-		A93749CF1A9AA7AF00F29B34 /* PBXTargetDependency */ = {
-			isa = PBXTargetDependency;
-			target = A93747701A9A98D000F29B34 /* MoltenVKGLSLToSPIRVConverter-macOS */;
-			targetProxy = A93749CE1A9AA7AF00F29B34 /* PBXContainerItemProxy */;
-		};
 /* End PBXTargetDependency section */
 
 /* Begin XCBuildConfiguration section */
-		2FEA0AD52490305800EEF3AD /* Debug */ = {
-			isa = XCBuildConfiguration;
-			buildSettings = {
-				CLANG_WARN_SUSPICIOUS_IMPLICIT_CONVERSION = NO;
-				CLANG_WARN_UNREACHABLE_CODE = NO;
-				GCC_WARN_ABOUT_MISSING_FIELD_INITIALIZERS = NO;
-				GCC_WARN_CHECK_SWITCH_STATEMENTS = NO;
-				GCC_WARN_UNUSED_PARAMETER = NO;
-				LIBRARY_SEARCH_PATHS = "\"$(SRCROOT)/../External/build/Latest/tvOS\"";
-				PRODUCT_NAME = MoltenVKGLSLToSPIRVConverter;
-				SDKROOT = appletvos;
-				TVOS_DEPLOYMENT_TARGET = 11.0;
-			};
-			name = Debug;
-		};
-		2FEA0AD62490305800EEF3AD /* Release */ = {
-			isa = XCBuildConfiguration;
-			buildSettings = {
-				CLANG_WARN_SUSPICIOUS_IMPLICIT_CONVERSION = NO;
-				CLANG_WARN_UNREACHABLE_CODE = NO;
-				GCC_WARN_ABOUT_MISSING_FIELD_INITIALIZERS = NO;
-				GCC_WARN_CHECK_SWITCH_STATEMENTS = NO;
-				GCC_WARN_UNUSED_PARAMETER = NO;
-				LIBRARY_SEARCH_PATHS = "\"$(SRCROOT)/../External/build/Latest/tvOS\"";
-				PRODUCT_NAME = MoltenVKGLSLToSPIRVConverter;
-				SDKROOT = appletvos;
-				TVOS_DEPLOYMENT_TARGET = 11.0;
-			};
-			name = Release;
-		};
 		2FEA0D122490381A00EEF3AD /* Debug */ = {
 			isa = XCBuildConfiguration;
 			buildSettings = {
@@ -800,8 +523,6 @@
 					"SPIRV_CROSS_NAMESPACE_OVERRIDE=MVK_spirv_cross",
 				);
 				GCC_WARN_ABOUT_MISSING_PROTOTYPES = NO;
-				LIBRARY_SEARCH_PATHS = "\"$(SRCROOT)/../External/build/Latest/tvOS\"";
-				PRODUCT_NAME = MoltenVKSPIRVToMSLConverter;
 				SDKROOT = appletvos;
 				TVOS_DEPLOYMENT_TARGET = 11.0;
 			};
@@ -815,8 +536,6 @@
 					"SPIRV_CROSS_NAMESPACE_OVERRIDE=MVK_spirv_cross",
 				);
 				GCC_WARN_ABOUT_MISSING_PROTOTYPES = NO;
-				LIBRARY_SEARCH_PATHS = "\"$(SRCROOT)/../External/build/Latest/tvOS\"";
-				PRODUCT_NAME = MoltenVKSPIRVToMSLConverter;
 				SDKROOT = appletvos;
 				TVOS_DEPLOYMENT_TARGET = 11.0;
 			};
@@ -831,7 +550,6 @@
 					"-ObjC",
 					"-w",
 				);
-				PRODUCT_NAME = MoltenVKShaderConverter;
 				SDKROOT = macosx;
 			};
 			name = Debug;
@@ -845,63 +563,6 @@
 					"-ObjC",
 					"-w",
 				);
-				PRODUCT_NAME = MoltenVKShaderConverter;
-				SDKROOT = macosx;
-			};
-			name = Release;
-		};
-		A93747401A9A8B2900F29B34 /* Debug */ = {
-			isa = XCBuildConfiguration;
-			buildSettings = {
-				CLANG_WARN_SUSPICIOUS_IMPLICIT_CONVERSION = NO;
-				CLANG_WARN_UNREACHABLE_CODE = NO;
-				GCC_WARN_ABOUT_MISSING_FIELD_INITIALIZERS = NO;
-				GCC_WARN_CHECK_SWITCH_STATEMENTS = NO;
-				GCC_WARN_UNUSED_PARAMETER = NO;
-				LIBRARY_SEARCH_PATHS = "\"$(SRCROOT)/../External/build/Latest/iOS\"";
-				PRODUCT_NAME = MoltenVKGLSLToSPIRVConverter;
-				SDKROOT = iphoneos;
-			};
-			name = Debug;
-		};
-		A93747411A9A8B2900F29B34 /* Release */ = {
-			isa = XCBuildConfiguration;
-			buildSettings = {
-				CLANG_WARN_SUSPICIOUS_IMPLICIT_CONVERSION = NO;
-				CLANG_WARN_UNREACHABLE_CODE = NO;
-				GCC_WARN_ABOUT_MISSING_FIELD_INITIALIZERS = NO;
-				GCC_WARN_CHECK_SWITCH_STATEMENTS = NO;
-				GCC_WARN_UNUSED_PARAMETER = NO;
-				LIBRARY_SEARCH_PATHS = "\"$(SRCROOT)/../External/build/Latest/iOS\"";
-				PRODUCT_NAME = MoltenVKGLSLToSPIRVConverter;
-				SDKROOT = iphoneos;
-			};
-			name = Release;
-		};
-		A93747851A9A98D000F29B34 /* Debug */ = {
-			isa = XCBuildConfiguration;
-			buildSettings = {
-				CLANG_WARN_SUSPICIOUS_IMPLICIT_CONVERSION = NO;
-				CLANG_WARN_UNREACHABLE_CODE = NO;
-				GCC_WARN_ABOUT_MISSING_FIELD_INITIALIZERS = NO;
-				GCC_WARN_CHECK_SWITCH_STATEMENTS = NO;
-				GCC_WARN_UNUSED_PARAMETER = NO;
-				LIBRARY_SEARCH_PATHS = "\"$(SRCROOT)/../External/build/Latest/macOS\"";
-				PRODUCT_NAME = MoltenVKGLSLToSPIRVConverter;
-				SDKROOT = macosx;
-			};
-			name = Debug;
-		};
-		A93747861A9A98D000F29B34 /* Release */ = {
-			isa = XCBuildConfiguration;
-			buildSettings = {
-				CLANG_WARN_SUSPICIOUS_IMPLICIT_CONVERSION = NO;
-				CLANG_WARN_UNREACHABLE_CODE = NO;
-				GCC_WARN_ABOUT_MISSING_FIELD_INITIALIZERS = NO;
-				GCC_WARN_CHECK_SWITCH_STATEMENTS = NO;
-				GCC_WARN_UNUSED_PARAMETER = NO;
-				LIBRARY_SEARCH_PATHS = "\"$(SRCROOT)/../External/build/Latest/macOS\"";
-				PRODUCT_NAME = MoltenVKGLSLToSPIRVConverter;
 				SDKROOT = macosx;
 			};
 			name = Release;
@@ -914,8 +575,6 @@
 					"SPIRV_CROSS_NAMESPACE_OVERRIDE=MVK_spirv_cross",
 				);
 				GCC_WARN_ABOUT_MISSING_PROTOTYPES = NO;
-				LIBRARY_SEARCH_PATHS = "\"$(SRCROOT)/../External/build/Latest/iOS\"";
-				PRODUCT_NAME = MoltenVKSPIRVToMSLConverter;
 				SDKROOT = iphoneos;
 			};
 			name = Debug;
@@ -928,8 +587,6 @@
 					"SPIRV_CROSS_NAMESPACE_OVERRIDE=MVK_spirv_cross",
 				);
 				GCC_WARN_ABOUT_MISSING_PROTOTYPES = NO;
-				LIBRARY_SEARCH_PATHS = "\"$(SRCROOT)/../External/build/Latest/iOS\"";
-				PRODUCT_NAME = MoltenVKSPIRVToMSLConverter;
 				SDKROOT = iphoneos;
 			};
 			name = Release;
@@ -942,8 +599,6 @@
 					"SPIRV_CROSS_NAMESPACE_OVERRIDE=MVK_spirv_cross",
 				);
 				GCC_WARN_ABOUT_MISSING_PROTOTYPES = NO;
-				LIBRARY_SEARCH_PATHS = "\"$(SRCROOT)/../External/build/Latest/macOS\"";
-				PRODUCT_NAME = MoltenVKSPIRVToMSLConverter;
 				SDKROOT = macosx;
 			};
 			name = Debug;
@@ -956,8 +611,6 @@
 					"SPIRV_CROSS_NAMESPACE_OVERRIDE=MVK_spirv_cross",
 				);
 				GCC_WARN_ABOUT_MISSING_PROTOTYPES = NO;
-				LIBRARY_SEARCH_PATHS = "\"$(SRCROOT)/../External/build/Latest/macOS\"";
-				PRODUCT_NAME = MoltenVKSPIRVToMSLConverter;
 				SDKROOT = macosx;
 			};
 			name = Release;
@@ -981,10 +634,8 @@
 				CLANG_WARN_INT_CONVERSION = YES;
 				CLANG_WARN_OBJC_IMPLICIT_RETAIN_SELF = YES;
 				CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR;
-				CLANG_WARN_SUSPICIOUS_IMPLICIT_CONVERSION = NO;
 				CLANG_WARN_SUSPICIOUS_MOVE = YES;
 				CLANG_WARN_UNGUARDED_AVAILABILITY = NO;
-				CLANG_WARN_UNREACHABLE_CODE = YES;
 				CLANG_WARN__DUPLICATE_METHOD_MATCH = YES;
 				COPY_PHASE_STRIP = NO;
 				ENABLE_STRICT_OBJC_MSGSEND = YES;
@@ -995,15 +646,14 @@
 				GCC_PREPROCESSOR_DEFINITIONS = "DEBUG=1";
 				GCC_SYMBOLS_PRIVATE_EXTERN = YES;
 				GCC_WARN_64_TO_32_BIT_CONVERSION = YES;
-				GCC_WARN_ABOUT_MISSING_FIELD_INITIALIZERS = YES;
 				GCC_WARN_ABOUT_MISSING_PROTOTYPES = YES;
 				GCC_WARN_ABOUT_RETURN_TYPE = YES;
+				GCC_WARN_CHECK_SWITCH_STATEMENTS = NO;
 				GCC_WARN_HIDDEN_VIRTUAL_FUNCTIONS = YES;
 				GCC_WARN_NON_VIRTUAL_DESTRUCTOR = YES;
 				GCC_WARN_UNDECLARED_SELECTOR = YES;
 				GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE;
 				GCC_WARN_UNUSED_FUNCTION = YES;
-				GCC_WARN_UNUSED_VARIABLE = NO;
 				HEADER_SEARCH_PATHS = (
 					"$(inherited)",
 					"\"$(SRCROOT)\"",
@@ -1014,6 +664,7 @@
 				MACH_O_TYPE = staticlib;
 				MACOSX_DEPLOYMENT_TARGET = 10.11;
 				ONLY_ACTIVE_ARCH = YES;
+				PRODUCT_NAME = MoltenVKShaderConverter;
 				SKIP_INSTALL = YES;
 			};
 			name = Debug;
@@ -1037,10 +688,8 @@
 				CLANG_WARN_INT_CONVERSION = YES;
 				CLANG_WARN_OBJC_IMPLICIT_RETAIN_SELF = YES;
 				CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR;
-				CLANG_WARN_SUSPICIOUS_IMPLICIT_CONVERSION = NO;
 				CLANG_WARN_SUSPICIOUS_MOVE = YES;
 				CLANG_WARN_UNGUARDED_AVAILABILITY = NO;
-				CLANG_WARN_UNREACHABLE_CODE = YES;
 				CLANG_WARN__DUPLICATE_METHOD_MATCH = YES;
 				COPY_PHASE_STRIP = YES;
 				ENABLE_NS_ASSERTIONS = NO;
@@ -1051,15 +700,14 @@
 				GCC_OPTIMIZATION_LEVEL = fast;
 				GCC_SYMBOLS_PRIVATE_EXTERN = YES;
 				GCC_WARN_64_TO_32_BIT_CONVERSION = YES;
-				GCC_WARN_ABOUT_MISSING_FIELD_INITIALIZERS = YES;
 				GCC_WARN_ABOUT_MISSING_PROTOTYPES = YES;
 				GCC_WARN_ABOUT_RETURN_TYPE = YES;
+				GCC_WARN_CHECK_SWITCH_STATEMENTS = NO;
 				GCC_WARN_HIDDEN_VIRTUAL_FUNCTIONS = YES;
 				GCC_WARN_NON_VIRTUAL_DESTRUCTOR = YES;
 				GCC_WARN_UNDECLARED_SELECTOR = YES;
 				GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE;
 				GCC_WARN_UNUSED_FUNCTION = YES;
-				GCC_WARN_UNUSED_VARIABLE = NO;
 				HEADER_SEARCH_PATHS = (
 					"$(inherited)",
 					"\"$(SRCROOT)\"",
@@ -1069,6 +717,7 @@
 				IPHONEOS_DEPLOYMENT_TARGET = 9.0;
 				MACH_O_TYPE = staticlib;
 				MACOSX_DEPLOYMENT_TARGET = 10.11;
+				PRODUCT_NAME = MoltenVKShaderConverter;
 				SKIP_INSTALL = YES;
 				VALIDATE_PRODUCT = YES;
 			};
@@ -1077,16 +726,7 @@
 /* End XCBuildConfiguration section */
 
 /* Begin XCConfigurationList section */
-		2FEA0AD42490305800EEF3AD /* Build configuration list for PBXNativeTarget "MoltenVKGLSLToSPIRVConverter-tvOS" */ = {
-			isa = XCConfigurationList;
-			buildConfigurations = (
-				2FEA0AD52490305800EEF3AD /* Debug */,
-				2FEA0AD62490305800EEF3AD /* Release */,
-			);
-			defaultConfigurationIsVisible = 0;
-			defaultConfigurationName = Release;
-		};
-		2FEA0D112490381A00EEF3AD /* Build configuration list for PBXNativeTarget "MoltenVKSPIRVToMSLConverter-tvOS" */ = {
+		2FEA0D112490381A00EEF3AD /* Build configuration list for PBXNativeTarget "MoltenVKShaderConverter-tvOS" */ = {
 			isa = XCConfigurationList;
 			buildConfigurations = (
 				2FEA0D122490381A00EEF3AD /* Debug */,
@@ -1104,25 +744,7 @@
 			defaultConfigurationIsVisible = 0;
 			defaultConfigurationName = Release;
 		};
-		A937473F1A9A8B2900F29B34 /* Build configuration list for PBXNativeTarget "MoltenVKGLSLToSPIRVConverter-iOS" */ = {
-			isa = XCConfigurationList;
-			buildConfigurations = (
-				A93747401A9A8B2900F29B34 /* Debug */,
-				A93747411A9A8B2900F29B34 /* Release */,
-			);
-			defaultConfigurationIsVisible = 0;
-			defaultConfigurationName = Release;
-		};
-		A93747841A9A98D000F29B34 /* Build configuration list for PBXNativeTarget "MoltenVKGLSLToSPIRVConverter-macOS" */ = {
-			isa = XCConfigurationList;
-			buildConfigurations = (
-				A93747851A9A98D000F29B34 /* Debug */,
-				A93747861A9A98D000F29B34 /* Release */,
-			);
-			defaultConfigurationIsVisible = 0;
-			defaultConfigurationName = Release;
-		};
-		A93903BC1C57E9D700FE90DC /* Build configuration list for PBXNativeTarget "MoltenVKSPIRVToMSLConverter-iOS" */ = {
+		A93903BC1C57E9D700FE90DC /* Build configuration list for PBXNativeTarget "MoltenVKShaderConverter-iOS" */ = {
 			isa = XCConfigurationList;
 			buildConfigurations = (
 				A93903BD1C57E9D700FE90DC /* Debug */,
@@ -1131,7 +753,7 @@
 			defaultConfigurationIsVisible = 0;
 			defaultConfigurationName = Release;
 		};
-		A93903C41C57E9ED00FE90DC /* Build configuration list for PBXNativeTarget "MoltenVKSPIRVToMSLConverter-macOS" */ = {
+		A93903C41C57E9ED00FE90DC /* Build configuration list for PBXNativeTarget "MoltenVKShaderConverter-macOS" */ = {
 			isa = XCConfigurationList;
 			buildConfigurations = (
 				A93903C51C57E9ED00FE90DC /* Debug */,
diff --git a/MoltenVKShaderConverter/MoltenVKShaderConverter.xcodeproj/xcshareddata/xcschemes/MoltenVKGLSLToSPIRVConverter-iOS.xcscheme b/MoltenVKShaderConverter/MoltenVKShaderConverter.xcodeproj/xcshareddata/xcschemes/MoltenVKGLSLToSPIRVConverter-iOS.xcscheme
deleted file mode 100644
index 0ec7c34..0000000
--- a/MoltenVKShaderConverter/MoltenVKShaderConverter.xcodeproj/xcshareddata/xcschemes/MoltenVKGLSLToSPIRVConverter-iOS.xcscheme
+++ /dev/null
@@ -1,81 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<Scheme
-   LastUpgradeVersion = "1170"
-   version = "2.0">
-   <BuildAction
-      parallelizeBuildables = "YES"
-      buildImplicitDependencies = "YES">
-      <BuildActionEntries>
-         <BuildActionEntry
-            buildForTesting = "YES"
-            buildForRunning = "YES"
-            buildForProfiling = "YES"
-            buildForArchiving = "YES"
-            buildForAnalyzing = "YES">
-            <BuildableReference
-               BuildableIdentifier = "primary"
-               BlueprintIdentifier = "A937472B1A9A8B2900F29B34"
-               BuildableName = "libMoltenVKGLSLToSPIRVConverter.a"
-               BlueprintName = "MoltenVKGLSLToSPIRVConverter-iOS"
-               ReferencedContainer = "container:MoltenVKShaderConverter.xcodeproj">
-            </BuildableReference>
-         </BuildActionEntry>
-      </BuildActionEntries>
-   </BuildAction>
-   <TestAction
-      buildConfiguration = "Debug"
-      selectedDebuggerIdentifier = "Xcode.DebuggerFoundation.Debugger.LLDB"
-      selectedLauncherIdentifier = "Xcode.DebuggerFoundation.Launcher.LLDB"
-      shouldUseLaunchSchemeArgsEnv = "YES">
-      <Testables>
-      </Testables>
-   </TestAction>
-   <LaunchAction
-      buildConfiguration = "Release"
-      selectedDebuggerIdentifier = "Xcode.DebuggerFoundation.Debugger.LLDB"
-      selectedLauncherIdentifier = "Xcode.DebuggerFoundation.Launcher.LLDB"
-      disableMainThreadChecker = "YES"
-      launchStyle = "0"
-      useCustomWorkingDirectory = "NO"
-      ignoresPersistentStateOnLaunch = "NO"
-      debugDocumentVersioning = "YES"
-      debugXPCServices = "NO"
-      debugServiceExtension = "internal"
-      enableGPUFrameCaptureMode = "3"
-      enableGPUValidationMode = "1"
-      allowLocationSimulation = "NO"
-      queueDebuggingEnabled = "No">
-      <MacroExpansion>
-         <BuildableReference
-            BuildableIdentifier = "primary"
-            BlueprintIdentifier = "A937472B1A9A8B2900F29B34"
-            BuildableName = "libMoltenVKGLSLToSPIRVConverter.a"
-            BlueprintName = "MoltenVKGLSLToSPIRVConverter-iOS"
-            ReferencedContainer = "container:MoltenVKShaderConverter.xcodeproj">
-         </BuildableReference>
-      </MacroExpansion>
-   </LaunchAction>
-   <ProfileAction
-      buildConfiguration = "Release"
-      shouldUseLaunchSchemeArgsEnv = "YES"
-      savedToolIdentifier = ""
-      useCustomWorkingDirectory = "NO"
-      debugDocumentVersioning = "YES">
-      <MacroExpansion>
-         <BuildableReference
-            BuildableIdentifier = "primary"
-            BlueprintIdentifier = "A937472B1A9A8B2900F29B34"
-            BuildableName = "libMoltenVKGLSLToSPIRVConverter.a"
-            BlueprintName = "MoltenVKGLSLToSPIRVConverter-iOS"
-            ReferencedContainer = "container:MoltenVKShaderConverter.xcodeproj">
-         </BuildableReference>
-      </MacroExpansion>
-   </ProfileAction>
-   <AnalyzeAction
-      buildConfiguration = "Debug">
-   </AnalyzeAction>
-   <ArchiveAction
-      buildConfiguration = "Release"
-      revealArchiveInOrganizer = "YES">
-   </ArchiveAction>
-</Scheme>
diff --git a/MoltenVKShaderConverter/MoltenVKShaderConverter.xcodeproj/xcshareddata/xcschemes/MoltenVKGLSLToSPIRVConverter-macOS.xcscheme b/MoltenVKShaderConverter/MoltenVKShaderConverter.xcodeproj/xcshareddata/xcschemes/MoltenVKGLSLToSPIRVConverter-macOS.xcscheme
deleted file mode 100644
index b53d82d..0000000
--- a/MoltenVKShaderConverter/MoltenVKShaderConverter.xcodeproj/xcshareddata/xcschemes/MoltenVKGLSLToSPIRVConverter-macOS.xcscheme
+++ /dev/null
@@ -1,81 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<Scheme
-   LastUpgradeVersion = "1170"
-   version = "2.0">
-   <BuildAction
-      parallelizeBuildables = "YES"
-      buildImplicitDependencies = "YES">
-      <BuildActionEntries>
-         <BuildActionEntry
-            buildForTesting = "YES"
-            buildForRunning = "YES"
-            buildForProfiling = "YES"
-            buildForArchiving = "YES"
-            buildForAnalyzing = "YES">
-            <BuildableReference
-               BuildableIdentifier = "primary"
-               BlueprintIdentifier = "A93747701A9A98D000F29B34"
-               BuildableName = "libMoltenVKGLSLToSPIRVConverter.a"
-               BlueprintName = "MoltenVKGLSLToSPIRVConverter-macOS"
-               ReferencedContainer = "container:MoltenVKShaderConverter.xcodeproj">
-            </BuildableReference>
-         </BuildActionEntry>
-      </BuildActionEntries>
-   </BuildAction>
-   <TestAction
-      buildConfiguration = "Debug"
-      selectedDebuggerIdentifier = "Xcode.DebuggerFoundation.Debugger.LLDB"
-      selectedLauncherIdentifier = "Xcode.DebuggerFoundation.Launcher.LLDB"
-      shouldUseLaunchSchemeArgsEnv = "YES">
-      <Testables>
-      </Testables>
-   </TestAction>
-   <LaunchAction
-      buildConfiguration = "Release"
-      selectedDebuggerIdentifier = "Xcode.DebuggerFoundation.Debugger.LLDB"
-      selectedLauncherIdentifier = "Xcode.DebuggerFoundation.Launcher.LLDB"
-      disableMainThreadChecker = "YES"
-      launchStyle = "0"
-      useCustomWorkingDirectory = "NO"
-      ignoresPersistentStateOnLaunch = "NO"
-      debugDocumentVersioning = "NO"
-      debugXPCServices = "NO"
-      debugServiceExtension = "internal"
-      enableGPUFrameCaptureMode = "3"
-      enableGPUValidationMode = "1"
-      allowLocationSimulation = "NO"
-      queueDebuggingEnabled = "No">
-      <MacroExpansion>
-         <BuildableReference
-            BuildableIdentifier = "primary"
-            BlueprintIdentifier = "A93747701A9A98D000F29B34"
-            BuildableName = "libMoltenVKGLSLToSPIRVConverter.a"
-            BlueprintName = "MoltenVKGLSLToSPIRVConverter-macOS"
-            ReferencedContainer = "container:MoltenVKShaderConverter.xcodeproj">
-         </BuildableReference>
-      </MacroExpansion>
-   </LaunchAction>
-   <ProfileAction
-      buildConfiguration = "Release"
-      shouldUseLaunchSchemeArgsEnv = "YES"
-      savedToolIdentifier = ""
-      useCustomWorkingDirectory = "NO"
-      debugDocumentVersioning = "YES">
-      <MacroExpansion>
-         <BuildableReference
-            BuildableIdentifier = "primary"
-            BlueprintIdentifier = "A93747701A9A98D000F29B34"
-            BuildableName = "libMoltenVKGLSLToSPIRVConverter.a"
-            BlueprintName = "MoltenVKGLSLToSPIRVConverter-macOS"
-            ReferencedContainer = "container:MoltenVKShaderConverter.xcodeproj">
-         </BuildableReference>
-      </MacroExpansion>
-   </ProfileAction>
-   <AnalyzeAction
-      buildConfiguration = "Debug">
-   </AnalyzeAction>
-   <ArchiveAction
-      buildConfiguration = "Release"
-      revealArchiveInOrganizer = "YES">
-   </ArchiveAction>
-</Scheme>
diff --git a/MoltenVKShaderConverter/MoltenVKShaderConverter.xcodeproj/xcshareddata/xcschemes/MoltenVKGLSLToSPIRVConverter-tvOS.xcscheme b/MoltenVKShaderConverter/MoltenVKShaderConverter.xcodeproj/xcshareddata/xcschemes/MoltenVKGLSLToSPIRVConverter-tvOS.xcscheme
deleted file mode 100644
index b2f6ebc..0000000
--- a/MoltenVKShaderConverter/MoltenVKShaderConverter.xcodeproj/xcshareddata/xcschemes/MoltenVKGLSLToSPIRVConverter-tvOS.xcscheme
+++ /dev/null
@@ -1,67 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<Scheme
-   LastUpgradeVersion = "1170"
-   version = "1.3">
-   <BuildAction
-      parallelizeBuildables = "YES"
-      buildImplicitDependencies = "YES">
-      <BuildActionEntries>
-         <BuildActionEntry
-            buildForTesting = "YES"
-            buildForRunning = "YES"
-            buildForProfiling = "YES"
-            buildForArchiving = "YES"
-            buildForAnalyzing = "YES">
-            <BuildableReference
-               BuildableIdentifier = "primary"
-               BlueprintIdentifier = "2FEA0AC42490305800EEF3AD"
-               BuildableName = "libMoltenVKGLSLToSPIRVConverter.a"
-               BlueprintName = "MoltenVKGLSLToSPIRVConverter-tvOS"
-               ReferencedContainer = "container:MoltenVKShaderConverter.xcodeproj">
-            </BuildableReference>
-         </BuildActionEntry>
-      </BuildActionEntries>
-   </BuildAction>
-   <TestAction
-      buildConfiguration = "Debug"
-      selectedDebuggerIdentifier = "Xcode.DebuggerFoundation.Debugger.LLDB"
-      selectedLauncherIdentifier = "Xcode.DebuggerFoundation.Launcher.LLDB"
-      shouldUseLaunchSchemeArgsEnv = "YES">
-      <Testables>
-      </Testables>
-   </TestAction>
-   <LaunchAction
-      buildConfiguration = "Debug"
-      selectedDebuggerIdentifier = "Xcode.DebuggerFoundation.Debugger.LLDB"
-      selectedLauncherIdentifier = "Xcode.DebuggerFoundation.Launcher.LLDB"
-      launchStyle = "0"
-      useCustomWorkingDirectory = "NO"
-      ignoresPersistentStateOnLaunch = "NO"
-      debugDocumentVersioning = "YES"
-      debugServiceExtension = "internal"
-      allowLocationSimulation = "YES">
-   </LaunchAction>
-   <ProfileAction
-      buildConfiguration = "Release"
-      shouldUseLaunchSchemeArgsEnv = "YES"
-      savedToolIdentifier = ""
-      useCustomWorkingDirectory = "NO"
-      debugDocumentVersioning = "YES">
-      <MacroExpansion>
-         <BuildableReference
-            BuildableIdentifier = "primary"
-            BlueprintIdentifier = "2FEA0AC42490305800EEF3AD"
-            BuildableName = "libMoltenVKGLSLToSPIRVConverter.a"
-            BlueprintName = "MoltenVKGLSLToSPIRVConverter-tvOS"
-            ReferencedContainer = "container:MoltenVKShaderConverter.xcodeproj">
-         </BuildableReference>
-      </MacroExpansion>
-   </ProfileAction>
-   <AnalyzeAction
-      buildConfiguration = "Debug">
-   </AnalyzeAction>
-   <ArchiveAction
-      buildConfiguration = "Release"
-      revealArchiveInOrganizer = "YES">
-   </ArchiveAction>
-</Scheme>
diff --git a/MoltenVKShaderConverter/MoltenVKShaderConverter.xcodeproj/xcshareddata/xcschemes/MoltenVKSPIRVToMSLConverter-iOS.xcscheme b/MoltenVKShaderConverter/MoltenVKShaderConverter.xcodeproj/xcshareddata/xcschemes/MoltenVKShaderConverter-iOS.xcscheme
similarity index 87%
rename from MoltenVKShaderConverter/MoltenVKShaderConverter.xcodeproj/xcshareddata/xcschemes/MoltenVKSPIRVToMSLConverter-iOS.xcscheme
rename to MoltenVKShaderConverter/MoltenVKShaderConverter.xcodeproj/xcshareddata/xcschemes/MoltenVKShaderConverter-iOS.xcscheme
index 0b5a9f4..075d0da 100644
--- a/MoltenVKShaderConverter/MoltenVKShaderConverter.xcodeproj/xcshareddata/xcschemes/MoltenVKSPIRVToMSLConverter-iOS.xcscheme
+++ b/MoltenVKShaderConverter/MoltenVKShaderConverter.xcodeproj/xcshareddata/xcschemes/MoltenVKShaderConverter-iOS.xcscheme
@@ -15,8 +15,8 @@
             <BuildableReference
                BuildableIdentifier = "primary"
                BlueprintIdentifier = "A93903B81C57E9D700FE90DC"
-               BuildableName = "libMoltenVKSPIRVToMSLConverter.a"
-               BlueprintName = "MoltenVKSPIRVToMSLConverter-iOS"
+               BuildableName = "libMoltenVKShaderConverter.a"
+               BlueprintName = "MoltenVKShaderConverter-iOS"
                ReferencedContainer = "container:MoltenVKShaderConverter.xcodeproj">
             </BuildableReference>
          </BuildActionEntry>
@@ -49,8 +49,8 @@
          <BuildableReference
             BuildableIdentifier = "primary"
             BlueprintIdentifier = "A93903B81C57E9D700FE90DC"
-            BuildableName = "libMoltenVKSPIRVToMSLConverter.a"
-            BlueprintName = "MoltenVKSPIRVToMSLConverter-iOS"
+            BuildableName = "libMoltenVKShaderConverter.a"
+            BlueprintName = "MoltenVKShaderConverter-iOS"
             ReferencedContainer = "container:MoltenVKShaderConverter.xcodeproj">
          </BuildableReference>
       </MacroExpansion>
@@ -65,8 +65,8 @@
          <BuildableReference
             BuildableIdentifier = "primary"
             BlueprintIdentifier = "A93903B81C57E9D700FE90DC"
-            BuildableName = "libMoltenVKSPIRVToMSLConverter.a"
-            BlueprintName = "MoltenVKSPIRVToMSLConverter-iOS"
+            BuildableName = "libMoltenVKShaderConverter.a"
+            BlueprintName = "MoltenVKShaderConverter-iOS"
             ReferencedContainer = "container:MoltenVKShaderConverter.xcodeproj">
          </BuildableReference>
       </MacroExpansion>
diff --git a/MoltenVKShaderConverter/MoltenVKShaderConverter.xcodeproj/xcshareddata/xcschemes/MoltenVKSPIRVToMSLConverter-macOS.xcscheme b/MoltenVKShaderConverter/MoltenVKShaderConverter.xcodeproj/xcshareddata/xcschemes/MoltenVKShaderConverter-macOS.xcscheme
similarity index 87%
rename from MoltenVKShaderConverter/MoltenVKShaderConverter.xcodeproj/xcshareddata/xcschemes/MoltenVKSPIRVToMSLConverter-macOS.xcscheme
rename to MoltenVKShaderConverter/MoltenVKShaderConverter.xcodeproj/xcshareddata/xcschemes/MoltenVKShaderConverter-macOS.xcscheme
index d58a425..662ab6a 100644
--- a/MoltenVKShaderConverter/MoltenVKShaderConverter.xcodeproj/xcshareddata/xcschemes/MoltenVKSPIRVToMSLConverter-macOS.xcscheme
+++ b/MoltenVKShaderConverter/MoltenVKShaderConverter.xcodeproj/xcshareddata/xcschemes/MoltenVKShaderConverter-macOS.xcscheme
@@ -15,8 +15,8 @@
             <BuildableReference
                BuildableIdentifier = "primary"
                BlueprintIdentifier = "A93903C01C57E9ED00FE90DC"
-               BuildableName = "libMoltenVKSPIRVToMSLConverter.a"
-               BlueprintName = "MoltenVKSPIRVToMSLConverter-macOS"
+               BuildableName = "libMoltenVKShaderConverter.a"
+               BlueprintName = "MoltenVKShaderConverter-macOS"
                ReferencedContainer = "container:MoltenVKShaderConverter.xcodeproj">
             </BuildableReference>
          </BuildActionEntry>
@@ -49,8 +49,8 @@
          <BuildableReference
             BuildableIdentifier = "primary"
             BlueprintIdentifier = "A93903C01C57E9ED00FE90DC"
-            BuildableName = "libMoltenVKSPIRVToMSLConverter.a"
-            BlueprintName = "MoltenVKSPIRVToMSLConverter-macOS"
+            BuildableName = "libMoltenVKShaderConverter.a"
+            BlueprintName = "MoltenVKShaderConverter-macOS"
             ReferencedContainer = "container:MoltenVKShaderConverter.xcodeproj">
          </BuildableReference>
       </MacroExpansion>
@@ -65,8 +65,8 @@
          <BuildableReference
             BuildableIdentifier = "primary"
             BlueprintIdentifier = "A93903C01C57E9ED00FE90DC"
-            BuildableName = "libMoltenVKSPIRVToMSLConverter.a"
-            BlueprintName = "MoltenVKSPIRVToMSLConverter-macOS"
+            BuildableName = "libMoltenVKShaderConverter.a"
+            BlueprintName = "MoltenVKShaderConverter-macOS"
             ReferencedContainer = "container:MoltenVKShaderConverter.xcodeproj">
          </BuildableReference>
       </MacroExpansion>
diff --git a/MoltenVKShaderConverter/MoltenVKShaderConverter.xcodeproj/xcshareddata/xcschemes/MoltenVKSPIRVToMSLConverter-tvOS.xcscheme b/MoltenVKShaderConverter/MoltenVKShaderConverter.xcodeproj/xcshareddata/xcschemes/MoltenVKShaderConverter-tvOS.xcscheme
similarity index 89%
rename from MoltenVKShaderConverter/MoltenVKShaderConverter.xcodeproj/xcshareddata/xcschemes/MoltenVKSPIRVToMSLConverter-tvOS.xcscheme
rename to MoltenVKShaderConverter/MoltenVKShaderConverter.xcodeproj/xcshareddata/xcschemes/MoltenVKShaderConverter-tvOS.xcscheme
index 6f7462c..2a8d372 100644
--- a/MoltenVKShaderConverter/MoltenVKShaderConverter.xcodeproj/xcshareddata/xcschemes/MoltenVKSPIRVToMSLConverter-tvOS.xcscheme
+++ b/MoltenVKShaderConverter/MoltenVKShaderConverter.xcodeproj/xcshareddata/xcschemes/MoltenVKShaderConverter-tvOS.xcscheme
@@ -15,8 +15,8 @@
             <BuildableReference
                BuildableIdentifier = "primary"
                BlueprintIdentifier = "2FEA0CFF2490381A00EEF3AD"
-               BuildableName = "libMoltenVKSPIRVToMSLConverter.a"
-               BlueprintName = "MoltenVKSPIRVToMSLConverter-tvOS"
+               BuildableName = "libMoltenVKShaderConverter.a"
+               BlueprintName = "MoltenVKShaderConverter-tvOS"
                ReferencedContainer = "container:MoltenVKShaderConverter.xcodeproj">
             </BuildableReference>
          </BuildActionEntry>
@@ -51,8 +51,8 @@
          <BuildableReference
             BuildableIdentifier = "primary"
             BlueprintIdentifier = "2FEA0CFF2490381A00EEF3AD"
-            BuildableName = "libMoltenVKSPIRVToMSLConverter.a"
-            BlueprintName = "MoltenVKSPIRVToMSLConverter-tvOS"
+            BuildableName = "libMoltenVKShaderConverter.a"
+            BlueprintName = "MoltenVKShaderConverter-tvOS"
             ReferencedContainer = "container:MoltenVKShaderConverter.xcodeproj">
          </BuildableReference>
       </MacroExpansion>
diff --git a/MoltenVKShaderConverter/MoltenVKSPIRVToMSLConverter/FileSupport.h b/MoltenVKShaderConverter/MoltenVKShaderConverter/FileSupport.h
similarity index 100%
rename from MoltenVKShaderConverter/MoltenVKSPIRVToMSLConverter/FileSupport.h
rename to MoltenVKShaderConverter/MoltenVKShaderConverter/FileSupport.h
diff --git a/MoltenVKShaderConverter/MoltenVKSPIRVToMSLConverter/FileSupport.mm b/MoltenVKShaderConverter/MoltenVKShaderConverter/FileSupport.mm
similarity index 100%
rename from MoltenVKShaderConverter/MoltenVKSPIRVToMSLConverter/FileSupport.mm
rename to MoltenVKShaderConverter/MoltenVKShaderConverter/FileSupport.mm
diff --git a/MoltenVKShaderConverter/MoltenVKGLSLToSPIRVConverter/GLSLConversion.h b/MoltenVKShaderConverter/MoltenVKShaderConverter/GLSLConversion.h
similarity index 100%
rename from MoltenVKShaderConverter/MoltenVKGLSLToSPIRVConverter/GLSLConversion.h
rename to MoltenVKShaderConverter/MoltenVKShaderConverter/GLSLConversion.h
diff --git a/MoltenVKShaderConverter/MoltenVKGLSLToSPIRVConverter/GLSLConversion.mm b/MoltenVKShaderConverter/MoltenVKShaderConverter/GLSLConversion.mm
similarity index 100%
rename from MoltenVKShaderConverter/MoltenVKGLSLToSPIRVConverter/GLSLConversion.mm
rename to MoltenVKShaderConverter/MoltenVKShaderConverter/GLSLConversion.mm
diff --git a/MoltenVKShaderConverter/MoltenVKGLSLToSPIRVConverter/GLSLToSPIRVConverter.cpp b/MoltenVKShaderConverter/MoltenVKShaderConverter/GLSLToSPIRVConverter.cpp
similarity index 100%
rename from MoltenVKShaderConverter/MoltenVKGLSLToSPIRVConverter/GLSLToSPIRVConverter.cpp
rename to MoltenVKShaderConverter/MoltenVKShaderConverter/GLSLToSPIRVConverter.cpp
diff --git a/MoltenVKShaderConverter/MoltenVKGLSLToSPIRVConverter/GLSLToSPIRVConverter.h b/MoltenVKShaderConverter/MoltenVKShaderConverter/GLSLToSPIRVConverter.h
similarity index 100%
rename from MoltenVKShaderConverter/MoltenVKGLSLToSPIRVConverter/GLSLToSPIRVConverter.h
rename to MoltenVKShaderConverter/MoltenVKShaderConverter/GLSLToSPIRVConverter.h
diff --git a/MoltenVKShaderConverter/MoltenVKSPIRVToMSLConverter/SPIRVConversion.h b/MoltenVKShaderConverter/MoltenVKShaderConverter/SPIRVConversion.h
similarity index 100%
rename from MoltenVKShaderConverter/MoltenVKSPIRVToMSLConverter/SPIRVConversion.h
rename to MoltenVKShaderConverter/MoltenVKShaderConverter/SPIRVConversion.h
diff --git a/MoltenVKShaderConverter/MoltenVKSPIRVToMSLConverter/SPIRVConversion.mm b/MoltenVKShaderConverter/MoltenVKShaderConverter/SPIRVConversion.mm
similarity index 100%
rename from MoltenVKShaderConverter/MoltenVKSPIRVToMSLConverter/SPIRVConversion.mm
rename to MoltenVKShaderConverter/MoltenVKShaderConverter/SPIRVConversion.mm
diff --git a/MoltenVKShaderConverter/MoltenVKSPIRVToMSLConverter/SPIRVReflection.h b/MoltenVKShaderConverter/MoltenVKShaderConverter/SPIRVReflection.h
similarity index 100%
rename from MoltenVKShaderConverter/MoltenVKSPIRVToMSLConverter/SPIRVReflection.h
rename to MoltenVKShaderConverter/MoltenVKShaderConverter/SPIRVReflection.h
diff --git a/MoltenVKShaderConverter/MoltenVKSPIRVToMSLConverter/SPIRVToMSLConverter.cpp b/MoltenVKShaderConverter/MoltenVKShaderConverter/SPIRVToMSLConverter.cpp
similarity index 100%
rename from MoltenVKShaderConverter/MoltenVKSPIRVToMSLConverter/SPIRVToMSLConverter.cpp
rename to MoltenVKShaderConverter/MoltenVKShaderConverter/SPIRVToMSLConverter.cpp
diff --git a/MoltenVKShaderConverter/MoltenVKSPIRVToMSLConverter/SPIRVToMSLConverter.h b/MoltenVKShaderConverter/MoltenVKShaderConverter/SPIRVToMSLConverter.h
similarity index 100%
rename from MoltenVKShaderConverter/MoltenVKSPIRVToMSLConverter/SPIRVToMSLConverter.h
rename to MoltenVKShaderConverter/MoltenVKShaderConverter/SPIRVToMSLConverter.h
diff --git a/MoltenVKShaderConverter/include/MoltenVKGLSLToSPIRVConverter/GLSLConversion.h b/MoltenVKShaderConverter/include/MoltenVKGLSLToSPIRVConverter/GLSLConversion.h
deleted file mode 120000
index 12a69d1..0000000
--- a/MoltenVKShaderConverter/include/MoltenVKGLSLToSPIRVConverter/GLSLConversion.h
+++ /dev/null
@@ -1 +0,0 @@
-../../MoltenVKGLSLToSPIRVConverter/GLSLConversion.h
\ No newline at end of file
diff --git a/MoltenVKShaderConverter/include/MoltenVKGLSLToSPIRVConverter/GLSLToSPIRVConverter.h b/MoltenVKShaderConverter/include/MoltenVKGLSLToSPIRVConverter/GLSLToSPIRVConverter.h
deleted file mode 120000
index 1fbe2d3..0000000
--- a/MoltenVKShaderConverter/include/MoltenVKGLSLToSPIRVConverter/GLSLToSPIRVConverter.h
+++ /dev/null
@@ -1 +0,0 @@
-../../MoltenVKGLSLToSPIRVConverter/GLSLToSPIRVConverter.h
\ No newline at end of file
diff --git a/MoltenVKShaderConverter/include/MoltenVKSPIRVToMSLConverter/SPIRVConversion.h b/MoltenVKShaderConverter/include/MoltenVKSPIRVToMSLConverter/SPIRVConversion.h
deleted file mode 120000
index b0ffadc..0000000
--- a/MoltenVKShaderConverter/include/MoltenVKSPIRVToMSLConverter/SPIRVConversion.h
+++ /dev/null
@@ -1 +0,0 @@
-../../MoltenVKSPIRVToMSLConverter/SPIRVConversion.h
\ No newline at end of file
diff --git a/MoltenVKShaderConverter/include/MoltenVKSPIRVToMSLConverter/SPIRVToMSLConverter.h b/MoltenVKShaderConverter/include/MoltenVKSPIRVToMSLConverter/SPIRVToMSLConverter.h
deleted file mode 120000
index b9a5def..0000000
--- a/MoltenVKShaderConverter/include/MoltenVKSPIRVToMSLConverter/SPIRVToMSLConverter.h
+++ /dev/null
@@ -1 +0,0 @@
-../../MoltenVKSPIRVToMSLConverter/SPIRVToMSLConverter.h
\ No newline at end of file
diff --git a/MoltenVKShaderConverter/include/MoltenVKShaderConverter/GLSLConversion.h b/MoltenVKShaderConverter/include/MoltenVKShaderConverter/GLSLConversion.h
new file mode 120000
index 0000000..f4c5096
--- /dev/null
+++ b/MoltenVKShaderConverter/include/MoltenVKShaderConverter/GLSLConversion.h
@@ -0,0 +1 @@
+../../MoltenVKShaderConverter/GLSLConversion.h
\ No newline at end of file
diff --git a/MoltenVKShaderConverter/include/MoltenVKShaderConverter/GLSLToSPIRVConverter.h b/MoltenVKShaderConverter/include/MoltenVKShaderConverter/GLSLToSPIRVConverter.h
new file mode 120000
index 0000000..d12b2a6
--- /dev/null
+++ b/MoltenVKShaderConverter/include/MoltenVKShaderConverter/GLSLToSPIRVConverter.h
@@ -0,0 +1 @@
+../../MoltenVKShaderConverter/GLSLToSPIRVConverter.h
\ No newline at end of file
diff --git a/MoltenVKShaderConverter/include/MoltenVKShaderConverter/SPIRVConversion.h b/MoltenVKShaderConverter/include/MoltenVKShaderConverter/SPIRVConversion.h
new file mode 120000
index 0000000..4bbf302
--- /dev/null
+++ b/MoltenVKShaderConverter/include/MoltenVKShaderConverter/SPIRVConversion.h
@@ -0,0 +1 @@
+../../MoltenVKShaderConverter/SPIRVConversion.h
\ No newline at end of file
diff --git a/MoltenVKShaderConverter/include/MoltenVKShaderConverter/SPIRVToMSLConverter.h b/MoltenVKShaderConverter/include/MoltenVKShaderConverter/SPIRVToMSLConverter.h
new file mode 120000
index 0000000..e4a3e40
--- /dev/null
+++ b/MoltenVKShaderConverter/include/MoltenVKShaderConverter/SPIRVToMSLConverter.h
@@ -0,0 +1 @@
+../../MoltenVKShaderConverter/SPIRVToMSLConverter.h
\ No newline at end of file
diff --git a/Scripts/package_shader_converter_xcframework.sh b/Scripts/package_shader_converter_xcframework.sh
index abb930a..3425515 100755
--- a/Scripts/package_shader_converter_xcframework.sh
+++ b/Scripts/package_shader_converter_xcframework.sh
@@ -11,15 +11,12 @@
 # Assemble the headers for the shader frameworks
 hdr_dir="${MVK_XCFWK_STAGING_DIR}/Headers"
 mkdir -p "${hdr_dir}"
-rm -rf "${hdr_dir}/MoltenVKSPIRVToMSLConverter"
-cp -pRL "${PROJECT_DIR}/${MVK_PROD_BASE_NAME}/include/MoltenVKSPIRVToMSLConverter" "${hdr_dir}"
-rm -rf "${hdr_dir}/MoltenVKGLSLToSPIRVConverter"
-cp -pRL "${PROJECT_DIR}/${MVK_PROD_BASE_NAME}/include/MoltenVKGLSLToSPIRVConverter" "${hdr_dir}"
+rm -rf "${hdr_dir}/MoltenVKShaderConverter"
+cp -pRL "${PROJECT_DIR}/${MVK_PROD_BASE_NAME}/include/MoltenVKShaderConverter" "${hdr_dir}"
 
 # Also copy headers to an include directory in the package.
 # This will not be needed once the XCFramework can be created with a Headers directory.
 mkdir -p "${MVK_XCFWK_DEST_DIR}"
 cp -pRL "${PROJECT_DIR}/${MVK_PROD_BASE_NAME}/include/" "${MVK_XCFWK_DEST_DIR}/include"
 
-create_xcframework "MoltenVKSPIRVToMSLConverter"
-create_xcframework "MoltenVKGLSLToSPIRVConverter"
+create_xcframework "MoltenVKShaderConverter"