[gtk+] Visual Studio builds: Support Vulkan builds



commit 2fdd0cefa57b8540ea6d75f6d7fa2a40f6927289
Author: Chun-wei Fan <fanchunwei src gnome org>
Date:   Fri Dec 30 14:42:38 2016 +0800

    Visual Studio builds: Support Vulkan builds
    
    This will assume that the Vulkan SDK can be found in the INCLUDE/LIB paths
    that are used by the Visual Studio compiler.

 build/win32/gtkpc.py                               |   14 +-
 build/win32/vs12/gdk-4.vcxprojin                   |  112 +---------
 build/win32/vs12/gsk-4.vcxprojin                   |  124 ++++++++++-
 build/win32/vs12/gtk+-4.sln                        |  232 ++++++++++----------
 build/win32/vs12/gtk-4.vcxprojin                   |   88 ++++----
 build/win32/vs12/gtk4-build-defines.props          |    6 +-
 build/win32/vs12/gtk4-gen-srcs.props               |   26 ++-
 build/win32/vs12/gtk4-install.propsin              |   14 +-
 build/win32/vs12/gtk4-install.vcxproj              |  114 +++++-----
 build/win32/vs12/gtk4-prebuild.vcxproj             |   98 ++++----
 build/win32/vs12/gtk4-prebuild.vcxproj.filters     |    2 +-
 gdk/Makefile.am                                    |    2 +-
 ...g.h.win32_broadway => gdkconfig.h.win32_vulkan} |    2 +-
 13 files changed, 421 insertions(+), 413 deletions(-)
---
diff --git a/build/win32/gtkpc.py b/build/win32/gtkpc.py
index 5deca91..919bfa9 100644
--- a/build/win32/gtkpc.py
+++ b/build/win32/gtkpc.py
@@ -18,10 +18,10 @@ def main(argv):
     base_pc = BasePCItems()
 
     gdk_parser = argparse.ArgumentParser(description='Setup basic .pc file info')
-    gdk_parser.add_argument('--broadway',
+    gdk_parser.add_argument('--vulkan',
                               action='store_const',
                               const=1,
-                              help='GDK with Broadway backend')
+                              help='GSK with Vulkan renderer')
     gdk_parser.add_argument('--host',
                             required=True,
                             help='Build type')
@@ -38,13 +38,13 @@ def main(argv):
     cairo_backends = 'cairo-win32'
     gdk_backends = 'win32'
     gio_package = 'gio-2.0 >= ' + glib_min_ver
-    broadway_extra_libs = ''
+    vulkan_extra_libs = ''
 
     gdk_args = gdk_parser.parse_args()
-    if getattr(gdk_args, 'broadway', None) is 1:
+    if getattr(gdk_args, 'vulkan', None) is 1:
         # On Visual Studio, we link to zlib1.lib
-        broadway_extra_libs = '-lzlib1'
-        gdk_backends += ' broadway'
+        vulkan_extra_libs = '-lvulkan-1'
+        gdk_backends += ' vulkan'
         cairo_backends += ' cairo'
 
     pkg_replace_items = {'@GTK_API_VERSION@': '4.0',
@@ -70,7 +70,7 @@ def main(argv):
                             '@GDK_EXTRA_CFLAGS@': '',
                             '@GSK_EXTRA_CFLAGS@': '',
                             '@GTK_EXTRA_CFLAGS@': '',
-                            '@GDK_EXTRA_LIBS@': gdk_win32_sys_libs + broadway_extra_libs,
+                            '@GDK_EXTRA_LIBS@': gdk_win32_sys_libs + vulkan_extra_libs,
                             '@GSK_EXTRA_LIBS@': '',
                             '@GTK_EXTRA_LIBS@': ''}
 
diff --git a/build/win32/vs12/gdk-4.vcxprojin b/build/win32/vs12/gdk-4.vcxprojin
index bbb5046..9b63e3a 100644
--- a/build/win32/vs12/gdk-4.vcxprojin
+++ b/build/win32/vs12/gdk-4.vcxprojin
@@ -17,22 +17,6 @@
       <Configuration>Release</Configuration>
       <Platform>x64</Platform>
     </ProjectConfiguration>
-    <ProjectConfiguration Include="Debug_Broadway|Win32">
-      <Configuration>Debug_Broadway</Configuration>
-      <Platform>Win32</Platform>
-    </ProjectConfiguration>
-    <ProjectConfiguration Include="Debug_Broadway|x64">
-      <Configuration>Debug_Broadway</Configuration>
-      <Platform>x64</Platform>
-    </ProjectConfiguration>
-    <ProjectConfiguration Include="Release_Broadway|Win32">
-      <Configuration>Release_Broadway</Configuration>
-      <Platform>Win32</Platform>
-    </ProjectConfiguration>
-    <ProjectConfiguration Include="Release_Broadway|x64">
-      <Configuration>Release_Broadway</Configuration>
-      <Platform>x64</Platform>
-    </ProjectConfiguration>
   </ItemGroup>
   <PropertyGroup Label="Globals">
     <ProjectGuid>{5AE8F5CE-9103-4951-AEDE-EA2F3B573BE8}</ProjectGuid>
@@ -40,82 +24,44 @@
     <Keyword>Win32Proj</Keyword>
   </PropertyGroup>
   <Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />
-  <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="Configuration">
-    <ConfigurationType>StaticLibrary</ConfigurationType>
-    <CharacterSet>MultiByte</CharacterSet>
-    <WholeProgramOptimization>true</WholeProgramOptimization>
-    <PlatformToolset>v120</PlatformToolset>
-  </PropertyGroup>
   <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="Configuration">
     <ConfigurationType>StaticLibrary</ConfigurationType>
     <CharacterSet>MultiByte</CharacterSet>
     <PlatformToolset>v120</PlatformToolset>
   </PropertyGroup>
-  <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="Configuration">
-    <ConfigurationType>StaticLibrary</ConfigurationType>
-    <CharacterSet>MultiByte</CharacterSet>
-    <WholeProgramOptimization>true</WholeProgramOptimization>
-    <PlatformToolset>v120</PlatformToolset>
-  </PropertyGroup>
   <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="Configuration">
     <ConfigurationType>StaticLibrary</ConfigurationType>
     <CharacterSet>MultiByte</CharacterSet>
     <PlatformToolset>v120</PlatformToolset>
   </PropertyGroup>
-  <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release_Broadway|Win32'" Label="Configuration">
+  <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="Configuration">
     <ConfigurationType>StaticLibrary</ConfigurationType>
     <CharacterSet>MultiByte</CharacterSet>
     <WholeProgramOptimization>true</WholeProgramOptimization>
     <PlatformToolset>v120</PlatformToolset>
   </PropertyGroup>
-  <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug_Broadway|Win32'" Label="Configuration">
-    <ConfigurationType>StaticLibrary</ConfigurationType>
-    <CharacterSet>MultiByte</CharacterSet>
-    <PlatformToolset>v120</PlatformToolset>
-  </PropertyGroup>
-  <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release_Broadway|x64'" Label="Configuration">
+  <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="Configuration">
     <ConfigurationType>StaticLibrary</ConfigurationType>
     <CharacterSet>MultiByte</CharacterSet>
     <WholeProgramOptimization>true</WholeProgramOptimization>
     <PlatformToolset>v120</PlatformToolset>
   </PropertyGroup>
-  <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug_Broadway|x64'" Label="Configuration">
-    <ConfigurationType>StaticLibrary</ConfigurationType>
-    <CharacterSet>MultiByte</CharacterSet>
-    <PlatformToolset>v120</PlatformToolset>
-  </PropertyGroup>
   <Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />
   <ImportGroup Label="ExtensionSettings">
   </ImportGroup>
-  <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="PropertySheets">
-    <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" 
Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
-    <Import Project="gtk4-build-defines.props" />
-  </ImportGroup>
   <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="PropertySheets">
     <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" 
Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
     <Import Project="gtk4-build-defines.props" />
   </ImportGroup>
-  <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="PropertySheets">
-    <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" 
Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
-    <Import Project="gtk4-build-defines.props" />
-  </ImportGroup>
   <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="PropertySheets">
     <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" 
Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
     <Import Project="gtk4-build-defines.props" />
   </ImportGroup>
-  <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release_Broadway|Win32'" Label="PropertySheets">
-    <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" 
Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
-    <Import Project="gtk4-build-defines.props" />
-  </ImportGroup>
-  <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug_Broadway|Win32'" Label="PropertySheets">
-    <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" 
Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
-    <Import Project="gtk4-build-defines.props" />
-  </ImportGroup>
-  <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release_Broadway|x64'" Label="PropertySheets">
+  <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="PropertySheets">
     <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" 
Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
     <Import Project="gtk4-build-defines.props" />
   </ImportGroup>
-  <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug_Broadway|x64'" Label="PropertySheets">
+  <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="PropertySheets">
     <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" 
Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
     <Import Project="gtk4-build-defines.props" />
   </ImportGroup>
@@ -134,20 +80,6 @@
       <DebugInformationFormat>EditAndContinue</DebugInformationFormat>
     </ClCompile>
   </ItemDefinitionGroup>
-  <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug_Broadway|Win32'">
-    <ClCompile>
-      <Optimization>Disabled</Optimization>
-      
<AdditionalIncludeDirectories>..\..\..\gdk;..\..\..\gdk\win32;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
-      
<PreprocessorDefinitions>_DEBUG;G_ENABLE_DEBUG;$(GdkDefines);%(PreprocessorDefinitions)</PreprocessorDefinitions>
-      <MinimalRebuild>true</MinimalRebuild>
-      <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
-      <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
-      <PrecompiledHeader>
-      </PrecompiledHeader>
-      <WarningLevel>Level3</WarningLevel>
-      <DebugInformationFormat>EditAndContinue</DebugInformationFormat>
-    </ClCompile>
-  </ItemDefinitionGroup>
   <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
     <ClCompile>
       
<AdditionalIncludeDirectories>..\..\..\gdk;..\..\..\gdk\win32;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
@@ -159,17 +91,6 @@
       <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
     </ClCompile>
   </ItemDefinitionGroup>
-  <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release_Broadway|Win32'">
-    <ClCompile>
-      
<AdditionalIncludeDirectories>..\..\..\gdk;..\..\..\gdk\win32;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
-      <PreprocessorDefinitions>$(GdkDefines);%(PreprocessorDefinitions)</PreprocessorDefinitions>
-      <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
-      <PrecompiledHeader>
-      </PrecompiledHeader>
-      <WarningLevel>Level3</WarningLevel>
-      <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
-    </ClCompile>
-  </ItemDefinitionGroup>
   <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
     <ClCompile>
       <Optimization>Disabled</Optimization>
@@ -184,20 +105,6 @@
       <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
     </ClCompile>
   </ItemDefinitionGroup>
-  <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug_Broadway|x64'">
-    <ClCompile>
-      <Optimization>Disabled</Optimization>
-      
<AdditionalIncludeDirectories>..\..\..\gdk;..\..\..\gdk\win32;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
-      
<PreprocessorDefinitions>_DEBUG;G_ENABLE_DEBUG;$(GdkDefines);%(PreprocessorDefinitions)</PreprocessorDefinitions>
-      <MinimalRebuild>true</MinimalRebuild>
-      <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
-      <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
-      <PrecompiledHeader>
-      </PrecompiledHeader>
-      <WarningLevel>Level3</WarningLevel>
-      <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
-    </ClCompile>
-  </ItemDefinitionGroup>
   <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
     <ClCompile>
       
<AdditionalIncludeDirectories>..\..\..\gdk;..\..\..\gdk\win32;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
@@ -209,17 +116,6 @@
       <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
     </ClCompile>
   </ItemDefinitionGroup>
-  <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release_Broadway|x64'">
-    <ClCompile>
-      
<AdditionalIncludeDirectories>..\..\..\gdk;..\..\..\gdk\win32;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
-      <PreprocessorDefinitions>$(GdkDefines);%(PreprocessorDefinitions)</PreprocessorDefinitions>
-      <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
-      <PrecompiledHeader>
-      </PrecompiledHeader>
-      <WarningLevel>Level3</WarningLevel>
-      <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
-    </ClCompile>
-  </ItemDefinitionGroup>
   <ItemGroup>
 #include "gdk-4.vs12.sourcefiles"
     <ClCompile Include="..\..\..\gdk\gdkkeynames.c" />
diff --git a/build/win32/vs12/gsk-4.vcxprojin b/build/win32/vs12/gsk-4.vcxprojin
index 4837d3d..510d570 100755
--- a/build/win32/vs12/gsk-4.vcxprojin
+++ b/build/win32/vs12/gsk-4.vcxprojin
@@ -5,18 +5,34 @@
       <Configuration>Debug</Configuration>
       <Platform>Win32</Platform>
     </ProjectConfiguration>
+    <ProjectConfiguration Include="Debug_Vulkan|Win32">
+      <Configuration>Debug_Vulkan</Configuration>
+      <Platform>Win32</Platform>
+    </ProjectConfiguration>
     <ProjectConfiguration Include="Debug|x64">
       <Configuration>Debug</Configuration>
       <Platform>x64</Platform>
     </ProjectConfiguration>
+    <ProjectConfiguration Include="Debug_Vulkan|x64">
+      <Configuration>Debug_Vulkan</Configuration>
+      <Platform>x64</Platform>
+    </ProjectConfiguration>
     <ProjectConfiguration Include="Release|Win32">
       <Configuration>Release</Configuration>
       <Platform>Win32</Platform>
     </ProjectConfiguration>
+    <ProjectConfiguration Include="Release_Vulkan|Win32">
+      <Configuration>Release_Vulkan</Configuration>
+      <Platform>Win32</Platform>
+    </ProjectConfiguration>
     <ProjectConfiguration Include="Release|x64">
       <Configuration>Release</Configuration>
       <Platform>x64</Platform>
     </ProjectConfiguration>
+    <ProjectConfiguration Include="Release_Vulkan|x64">
+      <Configuration>Release_Vulkan</Configuration>
+      <Platform>x64</Platform>
+    </ProjectConfiguration>
   </ItemGroup>
   <PropertyGroup Label="Globals">
     <ProjectGuid>{5AE8F5CE-9103-4951-AEDE-EB2F3B573BE8}</ProjectGuid>
@@ -24,13 +40,34 @@
     <Keyword>Win32Proj</Keyword>
   </PropertyGroup>
   <Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />
+  <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="Configuration">
+    <ConfigurationType>StaticLibrary</ConfigurationType>
+    <CharacterSet>MultiByte</CharacterSet>
+    <PlatformToolset>v120</PlatformToolset>
+  </PropertyGroup>
+  <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug_Vulkan|Win32'" Label="Configuration">
+    <ConfigurationType>StaticLibrary</ConfigurationType>
+    <CharacterSet>MultiByte</CharacterSet>
+    <PlatformToolset>v120</PlatformToolset>
+  </PropertyGroup>
   <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="Configuration">
     <ConfigurationType>StaticLibrary</ConfigurationType>
     <CharacterSet>MultiByte</CharacterSet>
     <WholeProgramOptimization>true</WholeProgramOptimization>
     <PlatformToolset>v120</PlatformToolset>
   </PropertyGroup>
-  <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="Configuration">
+  <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release_Vulkan|Win32'" Label="Configuration">
+    <ConfigurationType>StaticLibrary</ConfigurationType>
+    <CharacterSet>MultiByte</CharacterSet>
+    <WholeProgramOptimization>true</WholeProgramOptimization>
+    <PlatformToolset>v120</PlatformToolset>
+  </PropertyGroup>
+  <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="Configuration">
+    <ConfigurationType>StaticLibrary</ConfigurationType>
+    <CharacterSet>MultiByte</CharacterSet>
+    <PlatformToolset>v120</PlatformToolset>
+  </PropertyGroup>
+  <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug_Vulkan|x64'" Label="Configuration">
     <ConfigurationType>StaticLibrary</ConfigurationType>
     <CharacterSet>MultiByte</CharacterSet>
     <PlatformToolset>v120</PlatformToolset>
@@ -41,19 +78,36 @@
     <WholeProgramOptimization>true</WholeProgramOptimization>
     <PlatformToolset>v120</PlatformToolset>
   </PropertyGroup>
-  <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="Configuration">
+  <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release_Vulkan|x64'" Label="Configuration">
     <ConfigurationType>StaticLibrary</ConfigurationType>
     <CharacterSet>MultiByte</CharacterSet>
+    <WholeProgramOptimization>true</WholeProgramOptimization>
     <PlatformToolset>v120</PlatformToolset>
   </PropertyGroup>
   <Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />
   <ImportGroup Label="ExtensionSettings">
   </ImportGroup>
+  <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="PropertySheets">
+    <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" 
Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+    <Import Project="gtk4-gen-srcs.props" />
+  </ImportGroup>
+  <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug_Vulkan|Win32'" Label="PropertySheets">
+    <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" 
Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+    <Import Project="gtk4-gen-srcs.props" />
+  </ImportGroup>
+  <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="PropertySheets">
+    <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" 
Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+    <Import Project="gtk4-gen-srcs.props" />
+  </ImportGroup>
+  <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug_Vulkan|x64'" Label="PropertySheets">
+    <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" 
Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+    <Import Project="gtk4-gen-srcs.props" />
+  </ImportGroup>
   <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="PropertySheets">
     <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" 
Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
     <Import Project="gtk4-gen-srcs.props" />
   </ImportGroup>
-  <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="PropertySheets">
+  <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release_Vulkan|Win32'" Label="PropertySheets">
     <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" 
Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
     <Import Project="gtk4-gen-srcs.props" />
   </ImportGroup>
@@ -61,7 +115,7 @@
     <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" 
Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
     <Import Project="gtk4-gen-srcs.props" />
   </ImportGroup>
-  <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="PropertySheets">
+  <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release_Vulkan|x64'" Label="PropertySheets">
     <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" 
Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
     <Import Project="gtk4-gen-srcs.props" />
   </ImportGroup>
@@ -80,6 +134,20 @@
       <DebugInformationFormat>EditAndContinue</DebugInformationFormat>
     </ClCompile>
   </ItemDefinitionGroup>
+  <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug_Vulkan|Win32'">
+    <ClCompile>
+      <Optimization>Disabled</Optimization>
+      
<AdditionalIncludeDirectories>..\..\..\gsk;..\..\..\gdk;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
+      
<PreprocessorDefinitions>_DEBUG;G_ENABLE_DEBUG;$(GskDefines);%(PreprocessorDefinitions)</PreprocessorDefinitions>
+      <MinimalRebuild>true</MinimalRebuild>
+      <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
+      <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
+      <PrecompiledHeader>
+      </PrecompiledHeader>
+      <WarningLevel>Level3</WarningLevel>
+      <DebugInformationFormat>EditAndContinue</DebugInformationFormat>
+    </ClCompile>
+  </ItemDefinitionGroup>
   <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
     <ClCompile>
       
<AdditionalIncludeDirectories>..\..\..\gsk;..\..\..\gdk;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
@@ -91,6 +159,17 @@
       <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
     </ClCompile>
   </ItemDefinitionGroup>
+  <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release_Vulkan|Win32'">
+    <ClCompile>
+      
<AdditionalIncludeDirectories>..\..\..\gsk;..\..\..\gdk;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
+      <PreprocessorDefinitions>$(GskDefines);%(PreprocessorDefinitions)</PreprocessorDefinitions>
+      <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
+      <PrecompiledHeader>
+      </PrecompiledHeader>
+      <WarningLevel>Level3</WarningLevel>
+      <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
+    </ClCompile>
+  </ItemDefinitionGroup>
   <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
     <ClCompile>
       <Optimization>Disabled</Optimization>
@@ -105,6 +184,20 @@
       <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
     </ClCompile>
   </ItemDefinitionGroup>
+  <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug_Vulkan|x64'">
+    <ClCompile>
+      <Optimization>Disabled</Optimization>
+      
<AdditionalIncludeDirectories>..\..\..\gsk;..\..\..\gdk;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
+      
<PreprocessorDefinitions>_DEBUG;G_ENABLE_DEBUG;$(GskDefines);%(PreprocessorDefinitions)</PreprocessorDefinitions>
+      <MinimalRebuild>true</MinimalRebuild>
+      <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
+      <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
+      <PrecompiledHeader>
+      </PrecompiledHeader>
+      <WarningLevel>Level3</WarningLevel>
+      <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
+    </ClCompile>
+  </ItemDefinitionGroup>
   <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
     <ClCompile>
       
<AdditionalIncludeDirectories>..\..\..\gsk;..\..\..\gdk;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
@@ -116,22 +209,45 @@
       <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
     </ClCompile>
   </ItemDefinitionGroup>
+  <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release_Vulkan|x64'">
+    <ClCompile>
+      
<AdditionalIncludeDirectories>..\..\..\gsk;..\..\..\gdk;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
+      <PreprocessorDefinitions>$(GskDefines);%(PreprocessorDefinitions)</PreprocessorDefinitions>
+      <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
+      <PrecompiledHeader>
+      </PrecompiledHeader>
+      <WarningLevel>Level3</WarningLevel>
+      <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
+    </ClCompile>
+  </ItemDefinitionGroup>
   <ItemGroup>
     <CustomBuild Include="..\..\..\gsk\gskenumtypes.c.template">
       <Message Condition="'$(Configuration)'=='Debug'">Generating GSK enumeration sources...</Message>
       <Command Condition="'$(Configuration)'=='Debug'">$(GenGSKEnumSrcs)</Command>
       <Outputs 
Condition="'$(Configuration)'=='Debug'">..\..\..\gsk\gskenumtypes.h;..\..\..\gsk\gskenumtypes.c;%(Outputs)</Outputs>
+      <Message Condition="'$(Configuration)'=='Debug_Vulkan'">Generating GSK enumeration sources...</Message>
+      <Command Condition="'$(Configuration)'=='Debug_Vulkan'">$(GenGSKEnumSrcs)</Command>
+      <Outputs 
Condition="'$(Configuration)'=='Debug_Vulkan'">..\..\..\gsk\gskenumtypes.h;..\..\..\gsk\gskenumtypes.c;%(Outputs)</Outputs>
       <Message Condition="'$(Configuration)'=='Release'">Generating GSK enumeration sources...</Message>
       <Command Condition="'$(Configuration)'=='Release'">$(GenGSKEnumSrcs)</Command>
       <Outputs 
Condition="'$(Configuration)'=='Release'">..\..\..\gsk\gskenumtypes.h;..\..\..\gsk\gskenumtypes.c;%(Outputs)</Outputs>
+      <Message Condition="'$(Configuration)'=='Release_Vulkan'">Generating GSK enumeration 
sources...</Message>
+      <Command Condition="'$(Configuration)'=='Release_Vulkan'">$(GenGSKEnumSrcs)</Command>
+      <Outputs 
Condition="'$(Configuration)'=='Release_Vulkan'">..\..\..\gsk\gskenumtypes.h;..\..\..\gsk\gskenumtypes.c;%(Outputs)</Outputs>
     </CustomBuild>
     <CustomBuild Include="..\..\..\gsk\gsk.gresource.xml">
       <Message Condition="'$(Configuration)'=='Debug'">Generating GSK resource sources...</Message>
       <Command Condition="'$(Configuration)'=='Debug'">$(GenGSKRsrcSrcs)</Command>
       <Outputs 
Condition="'$(Configuration)'=='Debug'">..\..\..\gsk\gskresources.h;..\..\..\gsk\gskresources.c;..\..\..\gsk\gsk.gresource.xml;%(Outputs)</Outputs>
+      <Message Condition="'$(Configuration)'=='Debug_Vulkan'">Generating GSK resource sources...</Message>
+      <Command Condition="'$(Configuration)'=='Debug_Vulkan'">$(GenGSKRsrcSrcs)</Command>
+      <Outputs 
Condition="'$(Configuration)'=='Debug_Vulkan'">..\..\..\gsk\gskresources.h;..\..\..\gsk\gskresources.c;..\..\..\gsk\gsk.gresource.xml;%(Outputs)</Outputs>
       <Message Condition="'$(Configuration)'=='Release'">Generating GSK resource sources...</Message>
       <Command Condition="'$(Configuration)'=='Release'">$(GenGSKRsrcSrcs)</Command>
       <Outputs 
Condition="'$(Configuration)'=='Release'">..\..\..\gsk\gskresources.h;..\..\..\gsk\gskresources.c;..\..\..\gsk\gsk.gresource.xml;%(Outputs)</Outputs>
+      <Message Condition="'$(Configuration)'=='Release_Vulkan'">Generating GSK resource sources...</Message>
+      <Command Condition="'$(Configuration)'=='Release_Vulkan'">$(GenGSKRsrcSrcs)</Command>
+      <Outputs 
Condition="'$(Configuration)'=='Release_Vulkan'">..\..\..\gsk\gskresources.h;..\..\..\gsk\gskresources.c;..\..\..\gsk\gsk.gresource.xml;%(Outputs)</Outputs>
     </CustomBuild>
   </ItemGroup>
   <ItemGroup>
diff --git a/build/win32/vs12/gtk+-4.sln b/build/win32/vs12/gtk+-4.sln
index cdadd0b..1e9f3aa 100644
--- a/build/win32/vs12/gtk+-4.sln
+++ b/build/win32/vs12/gtk+-4.sln
@@ -29,223 +29,223 @@ EndProject
 Global
        GlobalSection(SolutionConfigurationPlatforms) = preSolution
                Debug|Win32 = Debug|Win32
-               Debug_Broadway|Win32 = Debug_Broadway|Win32
+               Debug_Vulkan|Win32 = Debug_Vulkan|Win32
                Debug|x64 = Debug|x64
-               Debug_Broadway|x64 = Debug_Broadway|x64
+               Debug_Vulkan|x64 = Debug_Vulkan|x64
                Release|Win32 = Release|Win32
-               Release_Broadway|Win32 = Release_Broadway|Win32
+               Release_Vulkan|Win32 = Release_Vulkan|Win32
                Release|x64 = Release|x64
-               Release_Broadway|x64 = Release_Broadway|x64
+               Release_Vulkan|x64 = Release_Vulkan|x64
        EndGlobalSection
        GlobalSection(ProjectConfigurationPlatforms) = postSolution
                {B98FBE68-B03C-48E3-8F32-C3C010720D30}.Debug|Win32.ActiveCfg = Debug|Win32
                {B98FBE68-B03C-48E3-8F32-C3C010720D30}.Debug|Win32.Build.0 = Debug|Win32
+               {B98FBE68-B03C-48E3-8F32-C3C010720D30}.Debug_Vulkan|Win32.ActiveCfg = Debug_Vulkan|Win32
+               {B98FBE68-B03C-48E3-8F32-C3C010720D30}.Debug_Vulkan|Win32.Build.0 = Debug_Vulkan|Win32
                {B98FBE68-B03C-48E3-8F32-C3C010720D30}.Debug|x64.ActiveCfg = Debug|x64
                {B98FBE68-B03C-48E3-8F32-C3C010720D30}.Debug|x64.Build.0 = Debug|x64
+               {B98FBE68-B03C-48E3-8F32-C3C010720D30}.Debug_Vulkan|x64.ActiveCfg = Debug_Vulkan|x64
+               {B98FBE68-B03C-48E3-8F32-C3C010720D30}.Debug_Vulkan|x64.Build.0 = Debug_Vulkan|x64
                {B98FBE68-B03C-48E3-8F32-C3C010720D30}.Release|Win32.ActiveCfg = Release|Win32
                {B98FBE68-B03C-48E3-8F32-C3C010720D30}.Release|Win32.Build.0 = Release|Win32
+               {B98FBE68-B03C-48E3-8F32-C3C010720D30}.Release_Vulkan|Win32.ActiveCfg = Release_Vulkan|Win32
+               {B98FBE68-B03C-48E3-8F32-C3C010720D30}.Release_Vulkan|Win32.Build.0 = Release_Vulkan|Win32
                {B98FBE68-B03C-48E3-8F32-C3C010720D30}.Release|x64.ActiveCfg = Release|x64
                {B98FBE68-B03C-48E3-8F32-C3C010720D30}.Release|x64.Build.0 = Release|x64
-               {B98FBE68-B03C-48E3-8F32-C3C010720D30}.Debug_Broadway|Win32.ActiveCfg = Debug_Broadway|Win32
-               {B98FBE68-B03C-48E3-8F32-C3C010720D30}.Debug_Broadway|Win32.Build.0 = Debug_Broadway|Win32
-               {B98FBE68-B03C-48E3-8F32-C3C010720D30}.Debug_Broadway|x64.ActiveCfg = Debug_Broadway|x64
-               {B98FBE68-B03C-48E3-8F32-C3C010720D30}.Debug_Broadway|x64.Build.0 = Debug_Broadway|x64
-               {B98FBE68-B03C-48E3-8F32-C3C010720D30}.Release_Broadway|Win32.ActiveCfg = 
Release_Broadway|Win32
-               {B98FBE68-B03C-48E3-8F32-C3C010720D30}.Release_Broadway|Win32.Build.0 = Release_Broadway|Win32
-               {B98FBE68-B03C-48E3-8F32-C3C010720D30}.Release_Broadway|x64.ActiveCfg = Release_Broadway|x64
-               {B98FBE68-B03C-48E3-8F32-C3C010720D30}.Release_Broadway|x64.Build.0 = Release_Broadway|x64
+               {B98FBE68-B03C-48E3-8F32-C3C010720D30}.Release_Vulkan|x64.Build.0 = Release_Vulkan|x64
+               {B98FBE68-B03C-48E3-8F32-C3C010720D30}.Release_Vulkan|x64.ActiveCfg = Release_Vulkan|x64
                {ABA7685A-7CBB-4626-B5E5-6EEEA5B489EF}.Debug|Win32.ActiveCfg = Debug|Win32
                {ABA7685A-7CBB-4626-B5E5-6EEEA5B489EF}.Debug|Win32.Build.0 = Debug|Win32
+               {ABA7685A-7CBB-4626-B5E5-6EEEA5B489EF}.Debug_Vulkan|Win32.ActiveCfg = Debug|Win32
+               {ABA7685A-7CBB-4626-B5E5-6EEEA5B489EF}.Debug_Vulkan|Win32.Build.0 = Debug|Win32
                {ABA7685A-7CBB-4626-B5E5-6EEEA5B489EF}.Debug|x64.ActiveCfg = Debug|x64
                {ABA7685A-7CBB-4626-B5E5-6EEEA5B489EF}.Debug|x64.Build.0 = Debug|x64
+               {ABA7685A-7CBB-4626-B5E5-6EEEA5B489EF}.Debug_Vulkan|x64.ActiveCfg = Debug|x64
+               {ABA7685A-7CBB-4626-B5E5-6EEEA5B489EF}.Debug_Vulkan|x64.Build.0 = Debug|x64
                {ABA7685A-7CBB-4626-B5E5-6EEEA5B489EF}.Release|Win32.ActiveCfg = Release|Win32
                {ABA7685A-7CBB-4626-B5E5-6EEEA5B489EF}.Release|Win32.Build.0 = Release|Win32
+               {ABA7685A-7CBB-4626-B5E5-6EEEA5B489EF}.Release_Vulkan|Win32.ActiveCfg = Release|Win32
+               {ABA7685A-7CBB-4626-B5E5-6EEEA5B489EF}.Release_Vulkan|Win32.Build.0 = Release|Win32
                {ABA7685A-7CBB-4626-B5E5-6EEEA5B489EF}.Release|x64.ActiveCfg = Release|x64
                {ABA7685A-7CBB-4626-B5E5-6EEEA5B489EF}.Release|x64.Build.0 = Release|x64
-               {ABA7685A-7CBB-4626-B5E5-6EEEA5B489EF}.Debug_Broadway|Win32.ActiveCfg = Debug|Win32
-               {ABA7685A-7CBB-4626-B5E5-6EEEA5B489EF}.Debug_Broadway|Win32.Build.0 = Debug|Win32
-               {ABA7685A-7CBB-4626-B5E5-6EEEA5B489EF}.Debug_Broadway|x64.ActiveCfg = Debug|x64
-               {ABA7685A-7CBB-4626-B5E5-6EEEA5B489EF}.Debug_Broadway|x64.Build.0 = Debug|x64
-               {ABA7685A-7CBB-4626-B5E5-6EEEA5B489EF}.Release_Broadway|Win32.ActiveCfg = Release|Win32
-               {ABA7685A-7CBB-4626-B5E5-6EEEA5B489EF}.Release_Broadway|Win32.Build.0 = Release|Win32
-               {ABA7685A-7CBB-4626-B5E5-6EEEA5B489EF}.Release_Broadway|x64.ActiveCfg = Release|x64
-               {ABA7685A-7CBB-4626-B5E5-6EEEA5B489EF}.Release_Broadway|x64.Build.0 = Release|x64
+               {ABA7685A-7CBB-4626-B5E5-6EEEA5B489EF}.Release_Vulkan|x64.ActiveCfg = Release|x64
+               {ABA7685A-7CBB-4626-B5E5-6EEEA5B489EF}.Release_Vulkan|x64.Build.0 = Release|x64
                {5AE8F5CE-9103-4951-AEDE-EA2F3B573BE8}.Debug|Win32.ActiveCfg = Debug|Win32
                {5AE8F5CE-9103-4951-AEDE-EA2F3B573BE8}.Debug|Win32.Build.0 = Debug|Win32
+               {5AE8F5CE-9103-4951-AEDE-EA2F3B573BE8}.Debug_Vulkan|Win32.ActiveCfg = Debug|Win32
+               {5AE8F5CE-9103-4951-AEDE-EA2F3B573BE8}.Debug_Vulkan|Win32.Build.0 = Debug|Win32
                {5AE8F5CE-9103-4951-AEDE-EA2F3B573BE8}.Debug|x64.ActiveCfg = Debug|x64
                {5AE8F5CE-9103-4951-AEDE-EA2F3B573BE8}.Debug|x64.Build.0 = Debug|x64
+               {5AE8F5CE-9103-4951-AEDE-EA2F3B573BE8}.Debug_Vulkan|x64.ActiveCfg = Debug|x64
+               {5AE8F5CE-9103-4951-AEDE-EA2F3B573BE8}.Debug_Vulkan|x64.Build.0 = Debug|x64
                {5AE8F5CE-9103-4951-AEDE-EA2F3B573BE8}.Release|Win32.ActiveCfg = Release|Win32
                {5AE8F5CE-9103-4951-AEDE-EA2F3B573BE8}.Release|Win32.Build.0 = Release|Win32
+               {5AE8F5CE-9103-4951-AEDE-EA2F3B573BE8}.Release_Vulkan|Win32.ActiveCfg = Release|Win32
+               {5AE8F5CE-9103-4951-AEDE-EA2F3B573BE8}.Release_Vulkan|Win32.Build.0 = Release|Win32
                {5AE8F5CE-9103-4951-AEDE-EA2F3B573BE8}.Release|x64.ActiveCfg = Release|x64
                {5AE8F5CE-9103-4951-AEDE-EA2F3B573BE8}.Release|x64.Build.0 = Release|x64
-               {5AE8F5CE-9103-4951-AEDE-EA2F3B573BE8}.Debug_Broadway|Win32.ActiveCfg = Debug_Broadway|Win32
-               {5AE8F5CE-9103-4951-AEDE-EA2F3B573BE8}.Debug_Broadway|Win32.Build.0 = Debug_Broadway|Win32
-               {5AE8F5CE-9103-4951-AEDE-EA2F3B573BE8}.Debug_Broadway|x64.ActiveCfg = Debug_Broadway|x64
-               {5AE8F5CE-9103-4951-AEDE-EA2F3B573BE8}.Debug_Broadway|x64.Build.0 = Debug_Broadway|x64
-               {5AE8F5CE-9103-4951-AEDE-EA2F3B573BE8}.Release_Broadway|Win32.ActiveCfg = 
Release_Broadway|Win32
-               {5AE8F5CE-9103-4951-AEDE-EA2F3B573BE8}.Release_Broadway|Win32.Build.0 = Release_Broadway|Win32
-               {5AE8F5CE-9103-4951-AEDE-EA2F3B573BE8}.Release_Broadway|x64.ActiveCfg = Release_Broadway|x64
-               {5AE8F5CE-9103-4951-AEDE-EA2F3B573BE8}.Release_Broadway|x64.Build.0 = Release_Broadway|x64
+               {5AE8F5CE-9103-4951-AEDE-EA2F3B573BE8}.Release_Vulkan|x64.ActiveCfg = Release|x64
+               {5AE8F5CE-9103-4951-AEDE-EA2F3B573BE8}.Release_Vulkan|x64.Build.0 = Release|x64
                {5AE8F5CE-9103-4951-AEDE-EB2F3B573BE8}.Debug|Win32.ActiveCfg = Debug|Win32
                {5AE8F5CE-9103-4951-AEDE-EB2F3B573BE8}.Debug|Win32.Build.0 = Debug|Win32
+               {5AE8F5CE-9103-4951-AEDE-EB2F3B573BE8}.Debug_Vulkan|Win32.ActiveCfg = Debug_Vulkan|Win32
+               {5AE8F5CE-9103-4951-AEDE-EB2F3B573BE8}.Debug_Vulkan|Win32.Build.0 = Debug_Vulkan|Win32
                {5AE8F5CE-9103-4951-AEDE-EB2F3B573BE8}.Debug|x64.ActiveCfg = Debug|x64
                {5AE8F5CE-9103-4951-AEDE-EB2F3B573BE8}.Debug|x64.Build.0 = Debug|x64
+               {5AE8F5CE-9103-4951-AEDE-EB2F3B573BE8}.Debug_Vulkan|x64.ActiveCfg = Debug_Vulkan|x64
+               {5AE8F5CE-9103-4951-AEDE-EB2F3B573BE8}.Debug_Vulkan|x64.Build.0 = Debug_Vulkan|x64
                {5AE8F5CE-9103-4951-AEDE-EB2F3B573BE8}.Release|Win32.ActiveCfg = Release|Win32
                {5AE8F5CE-9103-4951-AEDE-EB2F3B573BE8}.Release|Win32.Build.0 = Release|Win32
+               {5AE8F5CE-9103-4951-AEDE-EB2F3B573BE8}.Release_Vulkan|Win32.ActiveCfg = Release_Vulkan|Win32
+               {5AE8F5CE-9103-4951-AEDE-EB2F3B573BE8}.Release_Vulkan|Win32.Build.0 = Release_Vulkan|Win32
                {5AE8F5CE-9103-4951-AEDE-EB2F3B573BE8}.Release|x64.ActiveCfg = Release|x64
                {5AE8F5CE-9103-4951-AEDE-EB2F3B573BE8}.Release|x64.Build.0 = Release|x64
-               {5AE8F5CE-9103-4951-AEDE-EB2F3B573BE8}.Debug_Broadway|Win32.ActiveCfg = Debug|Win32
-               {5AE8F5CE-9103-4951-AEDE-EB2F3B573BE8}.Debug_Broadway|Win32.Build.0 = Debug|Win32
-               {5AE8F5CE-9103-4951-AEDE-EB2F3B573BE8}.Debug_Broadway|x64.ActiveCfg = Debug|x64
-               {5AE8F5CE-9103-4951-AEDE-EB2F3B573BE8}.Debug_Broadway|x64.Build.0 = Debug|x64
-               {5AE8F5CE-9103-4951-AEDE-EB2F3B573BE8}.Release_Broadway|Win32.ActiveCfg = Release|Win32
-               {5AE8F5CE-9103-4951-AEDE-EB2F3B573BE8}.Release_Broadway|Win32.Build.0 = Release|Win32
-               {5AE8F5CE-9103-4951-AEDE-EB2F3B573BE8}.Release_Broadway|x64.ActiveCfg = Release|x64
-               {5AE8F5CE-9103-4951-AEDE-EB2F3B573BE8}.Release_Broadway|x64.Build.0 = Release|x64
+               {5AE8F5CE-9103-4951-AEDE-EB2F3B573BE8}.Release_Vulkan|x64.ActiveCfg = Release_Vulkan|x64
+               {5AE8F5CE-9103-4951-AEDE-EB2F3B573BE8}.Release_Vulkan|x64.Build.0 = Release_Vulkan|x64
                {95A4B53D-2773-4406-A2C1-8FD2840BBAD8}.Debug|Win32.ActiveCfg = Debug|Win32
                {95A4B53D-2773-4406-A2C1-8FD2840BBAD8}.Debug|Win32.Build.0 = Debug|Win32
+               {95A4B53D-2773-4406-A2C1-8FD2840BBAD8}.Debug_Vulkan|Win32.ActiveCfg = Debug_Vulkan|Win32
+               {95A4B53D-2773-4406-A2C1-8FD2840BBAD8}.Debug_Vulkan|Win32.Build.0 = Debug_Vulkan|Win32
                {95A4B53D-2773-4406-A2C1-8FD2840BBAD8}.Debug|x64.ActiveCfg = Debug|x64
                {95A4B53D-2773-4406-A2C1-8FD2840BBAD8}.Debug|x64.Build.0 = Debug|x64
+               {95A4B53D-2773-4406-A2C1-8FD2840BBAD8}.Debug_Vulkan|x64.ActiveCfg = Debug_Vulkan|x64
+               {95A4B53D-2773-4406-A2C1-8FD2840BBAD8}.Debug_Vulkan|x64.Build.0 = Debug_Vulkan|x64
                {95A4B53D-2773-4406-A2C1-8FD2840BBAD8}.Release|Win32.ActiveCfg = Release|Win32
                {95A4B53D-2773-4406-A2C1-8FD2840BBAD8}.Release|Win32.Build.0 = Release|Win32
+               {95A4B53D-2773-4406-A2C1-8FD2840BBAD8}.Release_Vulkan|Win32.ActiveCfg = Release_Vulkan|Win32
+               {95A4B53D-2773-4406-A2C1-8FD2840BBAD8}.Release_Vulkan|Win32.Build.0 = Release_Vulkan|Win32
                {95A4B53D-2773-4406-A2C1-8FD2840BBAD8}.Release|x64.ActiveCfg = Release|x64
                {95A4B53D-2773-4406-A2C1-8FD2840BBAD8}.Release|x64.Build.0 = Release|x64
-               {95A4B53D-2773-4406-A2C1-8FD2840BBAD8}.Debug_Broadway|Win32.ActiveCfg = Debug_Broadway|Win32
-               {95A4B53D-2773-4406-A2C1-8FD2840BBAD8}.Debug_Broadway|Win32.Build.0 = Debug_Broadway|Win32
-               {95A4B53D-2773-4406-A2C1-8FD2840BBAD8}.Debug_Broadway|x64.ActiveCfg = Debug_Broadway|x64
-               {95A4B53D-2773-4406-A2C1-8FD2840BBAD8}.Debug_Broadway|x64.Build.0 = Debug_Broadway|x64
-               {95A4B53D-2773-4406-A2C1-8FD2840BBAD8}.Release_Broadway|Win32.ActiveCfg = 
Release_Broadway|Win32
-               {95A4B53D-2773-4406-A2C1-8FD2840BBAD8}.Release_Broadway|Win32.Build.0 = Release_Broadway|Win32
-               {95A4B53D-2773-4406-A2C1-8FD2840BBAD8}.Release_Broadway|x64.ActiveCfg = Release_Broadway|x64
-               {95A4B53D-2773-4406-A2C1-8FD2840BBAD8}.Release_Broadway|x64.Build.0 = Release_Broadway|x64
+               {95A4B53D-2773-4406-A2C1-8FD2840BBAD8}.Release_Vulkan|x64.ActiveCfg = Release_Vulkan|x64
+               {95A4B53D-2773-4406-A2C1-8FD2840BBAD8}.Release_Vulkan|x64.Build.0 = Release_Vulkan|x64
                {BDAE6DE2-6BCC-4107-94F0-DA12214A02DE}.Debug|Win32.ActiveCfg = Debug|Win32
                {BDAE6DE2-6BCC-4107-94F0-DA12214A02DE}.Debug|Win32.Build.0 = Debug|Win32
+               {BDAE6DE2-6BCC-4107-94F0-DA12214A02DE}.Debug_Vulkan|Win32.ActiveCfg = Debug|Win32
+               {BDAE6DE2-6BCC-4107-94F0-DA12214A02DE}.Debug_Vulkan|Win32.Build.0 = Debug|Win32
                {BDAE6DE2-6BCC-4107-94F0-DA12214A02DE}.Debug|x64.ActiveCfg = Debug|x64
                {BDAE6DE2-6BCC-4107-94F0-DA12214A02DE}.Debug|x64.Build.0 = Debug|x64
+               {BDAE6DE2-6BCC-4107-94F0-DA12214A02DE}.Debug_Vulkan|x64.ActiveCfg = Debug|x64
+               {BDAE6DE2-6BCC-4107-94F0-DA12214A02DE}.Debug_Vulkan|x64.Build.0 = Debug|x64
                {BDAE6DE2-6BCC-4107-94F0-DA12214A02DE}.Release|Win32.ActiveCfg = Release|Win32
                {BDAE6DE2-6BCC-4107-94F0-DA12214A02DE}.Release|Win32.Build.0 = Release|Win32
+               {BDAE6DE2-6BCC-4107-94F0-DA12214A02DE}.Release_Vulkan|Win32.ActiveCfg = Release|Win32
+               {BDAE6DE2-6BCC-4107-94F0-DA12214A02DE}.Release_Vulkan|Win32.Build.0 = Release|Win32
                {BDAE6DE2-6BCC-4107-94F0-DA12214A02DE}.Release|x64.ActiveCfg = Release|x64
                {BDAE6DE2-6BCC-4107-94F0-DA12214A02DE}.Release|x64.Build.0 = Release|x64
-               {BDAE6DE2-6BCC-4107-94F0-DA12214A02DE}.Debug_Broadway|Win32.ActiveCfg = Debug|Win32
-               {BDAE6DE2-6BCC-4107-94F0-DA12214A02DE}.Debug_Broadway|Win32.Build.0 = Debug|Win32
-               {BDAE6DE2-6BCC-4107-94F0-DA12214A02DE}.Debug_Broadway|x64.ActiveCfg = Debug|x64
-               {BDAE6DE2-6BCC-4107-94F0-DA12214A02DE}.Debug_Broadway|x64.Build.0 = Debug|x64
-               {BDAE6DE2-6BCC-4107-94F0-DA12214A02DE}.Release_Broadway|Win32.ActiveCfg = Release|Win32
-               {BDAE6DE2-6BCC-4107-94F0-DA12214A02DE}.Release_Broadway|Win32.Build.0 = Release|Win32
-               {BDAE6DE2-6BCC-4107-94F0-DA12214A02DE}.Release_Broadway|x64.ActiveCfg = Release|x64
-               {BDAE6DE2-6BCC-4107-94F0-DA12214A02DE}.Release_Broadway|x64.Build.0 = Release|x64
-               {23BBF35F-78AF-4E8C-983F-7B90448CD7DF}.Debug|Win32.ActiveCfg = Debug|Win32
-               {23BBF35F-78AF-4E8C-983F-7B90448CD7DF}.Debug|Win32.Build.0 = Debug|Win32
-               {23BBF35F-78AF-4E8C-983F-7B90448CD7DF}.Debug|x64.ActiveCfg = Debug|x64
-               {23BBF35F-78AF-4E8C-983F-7B90448CD7DF}.Debug|x64.Build.0 = Debug|x64
-               {23BBF35F-78AF-4E8C-983F-7B90448CD7DF}.Release|Win32.ActiveCfg = Release|Win32
-               {23BBF35F-78AF-4E8C-983F-7B90448CD7DF}.Release|Win32.Build.0 = Release|Win32
-               {23BBF35F-78AF-4E8C-983F-7B90448CD7DF}.Release|x64.ActiveCfg = Release|x64
-               {23BBF35F-78AF-4E8C-983F-7B90448CD7DF}.Release|x64.Build.0 = Release|x64
-               {23BBF35F-78AF-4E8C-983F-7B90448CD7DF}.Debug_Broadway|Win32.ActiveCfg = Debug_Broadway|Win32
-               {23BBF35F-78AF-4E8C-983F-7B90448CD7DF}.Debug_Broadway|Win32.Build.0 = Debug_Broadway|Win32
-               {23BBF35F-78AF-4E8C-983F-7B90448CD7DF}.Debug_Broadway|x64.ActiveCfg = Debug_Broadway|x64
-               {23BBF35F-78AF-4E8C-983F-7B90448CD7DF}.Debug_Broadway|x64.Build.0 = Debug_Broadway|x64
-               {23BBF35F-78AF-4E8C-983F-7B90448CD7DF}.Release_Broadway|Win32.ActiveCfg = 
Release_Broadway|Win32
-               {23BBF35F-78AF-4E8C-983F-7B90448CD7DF}.Release_Broadway|Win32.Build.0 = Release_Broadway|Win32
-               {23BBF35F-78AF-4E8C-983F-7B90448CD7DF}.Release_Broadway|x64.ActiveCfg = Release_Broadway|x64
-               {23BBF35F-78AF-4E8C-983F-7B90448CD7DF}.Release_Broadway|x64.Build.0 = Release_Broadway|x64
+               {BDAE6DE2-6BCC-4107-94F0-DA12214A02DE}.Release_Vulkan|x64.ActiveCfg = Release|x64
+               {BDAE6DE2-6BCC-4107-94F0-DA12214A02DE}.Release_Vulkan|x64.Build.0 = Release|x64
                {BE6B4973-C6FF-4C8F-8E97-A47793C50F44}.Debug|Win32.ActiveCfg = Debug|Win32
                {BE6B4973-C6FF-4C8F-8E97-A47793C50F44}.Debug|Win32.Build.0 = Debug|Win32
+               {BE6B4973-C6FF-4C8F-8E97-A47793C50F44}.Debug_Vulkan|Win32.ActiveCfg = Debug|Win32
+               {BE6B4973-C6FF-4C8F-8E97-A47793C50F44}.Debug_Vulkan|Win32.Build.0 = Debug|Win32
                {BE6B4973-C6FF-4C8F-8E97-A47793C50F44}.Debug|x64.ActiveCfg = Debug|x64
                {BE6B4973-C6FF-4C8F-8E97-A47793C50F44}.Debug|x64.Build.0 = Debug|x64
+               {BE6B4973-C6FF-4C8F-8E97-A47793C50F44}.Debug_Vulkan|x64.ActiveCfg = Debug|x64
+               {BE6B4973-C6FF-4C8F-8E97-A47793C50F44}.Debug_Vulkan|x64.Build.0 = Debug|x64
                {BE6B4973-C6FF-4C8F-8E97-A47793C50F44}.Release|Win32.ActiveCfg = Release|Win32
                {BE6B4973-C6FF-4C8F-8E97-A47793C50F44}.Release|Win32.Build.0 = Release|Win32
+               {BE6B4973-C6FF-4C8F-8E97-A47793C50F44}.Release_Vulkan|Win32.ActiveCfg = Release|Win32
+               {BE6B4973-C6FF-4C8F-8E97-A47793C50F44}.Release_Vulkan|Win32.Build.0 = Release|Win32
                {BE6B4973-C6FF-4C8F-8E97-A47793C50F44}.Release|x64.ActiveCfg = Release|x64
                {BE6B4973-C6FF-4C8F-8E97-A47793C50F44}.Release|x64.Build.0 = Release|x64
-               {BE6B4973-C6FF-4C8F-8E97-A47793C50F44}.Debug_Broadway|Win32.ActiveCfg = Debug|Win32
-               {BE6B4973-C6FF-4C8F-8E97-A47793C50F44}.Debug_Broadway|Win32.Build.0 = Debug|Win32
-               {BE6B4973-C6FF-4C8F-8E97-A47793C50F44}.Debug_Broadway|x64.ActiveCfg = Debug|x64
-               {BE6B4973-C6FF-4C8F-8E97-A47793C50F44}.Debug_Broadway|x64.Build.0 = Debug|x64
-               {BE6B4973-C6FF-4C8F-8E97-A47793C50F44}.Release_Broadway|Win32.ActiveCfg = Release|Win32
-               {BE6B4973-C6FF-4C8F-8E97-A47793C50F44}.Release_Broadway|Win32.Build.0 = Release|Win32
-               {BE6B4973-C6FF-4C8F-8E97-A47793C50F44}.Release_Broadway|x64.ActiveCfg = Release|x64
-               {BE6B4973-C6FF-4C8F-8E97-A47793C50F44}.Release_Broadway|x64.Build.0 = Release|x64
+               {BE6B4973-C6FF-4C8F-8E97-A47793C50F44}.Release_Vulkan|x64.ActiveCfg = Release|x64
+               {BE6B4973-C6FF-4C8F-8E97-A47793C50F44}.Release_Vulkan|x64.Build.0 = Release|x64
                {343333C4-D46C-4C97-A986-959CCA6F1DE0}.Debug|Win32.ActiveCfg = Debug|Win32
                {343333C4-D46C-4C97-A986-959CCA6F1DE0}.Debug|Win32.Build.0 = Debug|Win32
+               {343333C4-D46C-4C97-A986-959CCA6F1DE0}.Debug_Vulkan|Win32.ActiveCfg = Debug|Win32
+               {343333C4-D46C-4C97-A986-959CCA6F1DE0}.Debug_Vulkan|Win32.Build.0 = Debug|Win32
+               {343333C4-D46C-4C97-A986-959CCA6F1DE0}.Debug_Vulkan|x64.ActiveCfg = Debug|x64
+               {343333C4-D46C-4C97-A986-959CCA6F1DE0}.Debug_Vulkan|x64.Build.0 = Debug|x64
                {343333C4-D46C-4C97-A986-959CCA6F1DE0}.Debug|x64.ActiveCfg = Debug|x64
                {343333C4-D46C-4C97-A986-959CCA6F1DE0}.Debug|x64.Build.0 = Debug|x64
                {343333C4-D46C-4C97-A986-959CCA6F1DE0}.Release|Win32.ActiveCfg = Release|Win32
                {343333C4-D46C-4C97-A986-959CCA6F1DE0}.Release|Win32.Build.0 = Release|Win32
+               {343333C4-D46C-4C97-A986-959CCA6F1DE0}.Release_Vulkan|Win32.ActiveCfg = Release|Win32
+               {343333C4-D46C-4C97-A986-959CCA6F1DE0}.Release_Vulkan|Win32.Build.0 = Release|Win32
                {343333C4-D46C-4C97-A986-959CCA6F1DE0}.Release|x64.ActiveCfg = Release|x64
                {343333C4-D46C-4C97-A986-959CCA6F1DE0}.Release|x64.Build.0 = Release|x64
-               {343333C4-D46C-4C97-A986-959CCA6F1DE0}.Debug_Broadway|Win32.ActiveCfg = Debug|Win32
-               {343333C4-D46C-4C97-A986-959CCA6F1DE0}.Debug_Broadway|Win32.Build.0 = Debug|Win32
-               {343333C4-D46C-4C97-A986-959CCA6F1DE0}.Debug_Broadway|x64.ActiveCfg = Debug|x64
-               {343333C4-D46C-4C97-A986-959CCA6F1DE0}.Debug_Broadway|x64.Build.0 = Debug|x64
-               {343333C4-D46C-4C97-A986-959CCA6F1DE0}.Release_Broadway|Win32.ActiveCfg = Release|Win32
-               {343333C4-D46C-4C97-A986-959CCA6F1DE0}.Release_Broadway|Win32.Build.0 = Release|Win32
-               {343333C4-D46C-4C97-A986-959CCA6F1DE0}.Release_Broadway|x64.ActiveCfg = Release|x64
-               {343333C4-D46C-4C97-A986-959CCA6F1DE0}.Release_Broadway|x64.Build.0 = Release|x64
+               {343333C4-D46C-4C97-A986-959CCA6F1DE0}.Release_Vulkan|x64.ActiveCfg = Release|x64
+               {343333C4-D46C-4C97-A986-959CCA6F1DE0}.Release_Vulkan|x64.Build.0 = Release|x64
                {F280BF1A-777A-4FB5-8005-DFBE04621EDB}.Debug|Win32.ActiveCfg = Debug|Win32
                {F280BF1A-777A-4FB5-8005-DFBE04621EDB}.Debug|Win32.Build.0 = Debug|Win32
+               {F280BF1A-777A-4FB5-8005-DFBE04621EDB}.Debug_Vulkan|Win32.ActiveCfg = Debug|Win32
+               {F280BF1A-777A-4FB5-8005-DFBE04621EDB}.Debug_Vulkan|Win32.Build.0 = Debug|Win32
                {F280BF1A-777A-4FB5-8005-DFBE04621EDB}.Debug|x64.ActiveCfg = Debug|x64
                {F280BF1A-777A-4FB5-8005-DFBE04621EDB}.Debug|x64.Build.0 = Debug|x64
+               {F280BF1A-777A-4FB5-8005-DFBE04621EDB}.Debug_Vulkan|x64.ActiveCfg = Debug|x64
+               {F280BF1A-777A-4FB5-8005-DFBE04621EDB}.Debug_Vulkan|x64.Build.0 = Debug|x64
                {F280BF1A-777A-4FB5-8005-DFBE04621EDB}.Release|Win32.ActiveCfg = Release|Win32
                {F280BF1A-777A-4FB5-8005-DFBE04621EDB}.Release|Win32.Build.0 = Release|Win32
+               {F280BF1A-777A-4FB5-8005-DFBE04621EDB}.Release_Vulkan|Win32.ActiveCfg = Release|Win32
+               {F280BF1A-777A-4FB5-8005-DFBE04621EDB}.Release_Vulkan|Win32.Build.0 = Release|Win32
                {F280BF1A-777A-4FB5-8005-DFBE04621EDB}.Release|x64.ActiveCfg = Release|x64
                {F280BF1A-777A-4FB5-8005-DFBE04621EDB}.Release|x64.Build.0 = Release|x64
-               {F280BF1A-777A-4FB5-8005-DFBE04621EDB}.Debug_Broadway|Win32.ActiveCfg = Debug|Win32
-               {F280BF1A-777A-4FB5-8005-DFBE04621EDB}.Debug_Broadway|Win32.Build.0 = Debug|Win32
-               {F280BF1A-777A-4FB5-8005-DFBE04621EDB}.Debug_Broadway|x64.ActiveCfg = Debug|x64
-               {F280BF1A-777A-4FB5-8005-DFBE04621EDB}.Debug_Broadway|x64.Build.0 = Debug|x64
-               {F280BF1A-777A-4FB5-8005-DFBE04621EDB}.Release_Broadway|Win32.ActiveCfg = Release|Win32
-               {F280BF1A-777A-4FB5-8005-DFBE04621EDB}.Release_Broadway|Win32.Build.0 = Release|Win32
-               {F280BF1A-777A-4FB5-8005-DFBE04621EDB}.Release_Broadway|x64.ActiveCfg = Release|x64
-               {F280BF1A-777A-4FB5-8005-DFBE04621EDB}.Release_Broadway|x64.Build.0 = Release|x64
+               {F280BF1A-777A-4FB5-8005-DFBE04621EDB}.Release_Vulkan|x64.ActiveCfg = Release|x64
+               {F280BF1A-777A-4FB5-8005-DFBE04621EDB}.Release_Vulkan|x64.Build.0 = Release|x64
                {FC98AF16-4C68-42DF-906B-93A6804C198A}.Debug|Win32.ActiveCfg = Debug|Win32
                {FC98AF16-4C68-42DF-906B-93A6804C198A}.Debug|Win32.Build.0 = Debug|Win32
+               {FC98AF16-4C68-42DF-906B-93A6804C198A}.Debug_Vulkan|Win32.ActiveCfg = Debug|Win32
+               {FC98AF16-4C68-42DF-906B-93A6804C198A}.Debug_Vulkan|Win32.Build.0 = Debug|Win32
                {FC98AF16-4C68-42DF-906B-93A6804C198A}.Debug|x64.ActiveCfg = Debug|x64
                {FC98AF16-4C68-42DF-906B-93A6804C198A}.Debug|x64.Build.0 = Debug|x64
+               {FC98AF16-4C68-42DF-906B-93A6804C198A}.Debug_Vulkan|x64.ActiveCfg = Debug|x64
+               {FC98AF16-4C68-42DF-906B-93A6804C198A}.Debug_Vulkan|x64.Build.0 = Debug|x64
                {FC98AF16-4C68-42DF-906B-93A6804C198A}.Release|Win32.ActiveCfg = Release|Win32
                {FC98AF16-4C68-42DF-906B-93A6804C198A}.Release|Win32.Build.0 = Release|Win32
+               {FC98AF16-4C68-42DF-906B-93A6804C198A}.Release_Vulkan|Win32.ActiveCfg = Release|Win32
+               {FC98AF16-4C68-42DF-906B-93A6804C198A}.Release_Vulkan|Win32.Build.0 = Release|Win32
                {FC98AF16-4C68-42DF-906B-93A6804C198A}.Release|x64.ActiveCfg = Release|x64
                {FC98AF16-4C68-42DF-906B-93A6804C198A}.Release|x64.Build.0 = Release|x64
-               {FC98AF16-4C68-42DF-906B-93A6804C198A}.Debug_Broadway|Win32.ActiveCfg = Debug|Win32
-               {FC98AF16-4C68-42DF-906B-93A6804C198A}.Debug_Broadway|Win32.Build.0 = Debug|Win32
-               {FC98AF16-4C68-42DF-906B-93A6804C198A}.Debug_Broadway|x64.ActiveCfg = Debug|x64
-               {FC98AF16-4C68-42DF-906B-93A6804C198A}.Debug_Broadway|x64.Build.0 = Debug|x64
-               {FC98AF16-4C68-42DF-906B-93A6804C198A}.Release_Broadway|Win32.ActiveCfg = Release|Win32
-               {FC98AF16-4C68-42DF-906B-93A6804C198A}.Release_Broadway|Win32.Build.0 = Release|Win32
-               {FC98AF16-4C68-42DF-906B-93A6804C198A}.Release_Broadway|x64.ActiveCfg = Release|x64
-               {FC98AF16-4C68-42DF-906B-93A6804C198A}.Release_Broadway|x64.Build.0 = Release|x64
+               {FC98AF16-4C68-42DF-906B-93A6804C198A}.Release_Vulkan|x64.ActiveCfg = Release|x64
+               {FC98AF16-4C68-42DF-906B-93A6804C198A}.Release_Vulkan|x64.Build.0 = Release|x64
                {7D2397CF-4C25-45BC-A1BB-CB4B6E154BBD}.Debug|Win32.ActiveCfg = Debug|Win32
                {7D2397CF-4C25-45BC-A1BB-CB4B6E154BBD}.Debug|Win32.Build.0 = Debug|Win32
+               {7D2397CF-4C25-45BC-A1BB-CB4B6E154BBD}.Debug_Vulkan|Win32.ActiveCfg = Debug|Win32
+               {7D2397CF-4C25-45BC-A1BB-CB4B6E154BBD}.Debug_Vulkan|Win32.Build.0 = Debug|Win32
                {7D2397CF-4C25-45BC-A1BB-CB4B6E154BBD}.Debug|x64.ActiveCfg = Debug|x64
                {7D2397CF-4C25-45BC-A1BB-CB4B6E154BBD}.Debug|x64.Build.0 = Debug|x64
+               {7D2397CF-4C25-45BC-A1BB-CB4B6E154BBD}.Debug_Vulkan|x64.ActiveCfg = Debug|x64
+               {7D2397CF-4C25-45BC-A1BB-CB4B6E154BBD}.Debug_Vulkan|x64.Build.0 = Debug|x64
                {7D2397CF-4C25-45BC-A1BB-CB4B6E154BBD}.Release|Win32.ActiveCfg = Release|Win32
                {7D2397CF-4C25-45BC-A1BB-CB4B6E154BBD}.Release|Win32.Build.0 = Release|Win32
+               {7D2397CF-4C25-45BC-A1BB-CB4B6E154BBD}.Release_Vulkan|Win32.ActiveCfg = Release|Win32
+               {7D2397CF-4C25-45BC-A1BB-CB4B6E154BBD}.Release_Vulkan|Win32.Build.0 = Release|Win32
                {7D2397CF-4C25-45BC-A1BB-CB4B6E154BBD}.Release|x64.ActiveCfg = Release|x64
                {7D2397CF-4C25-45BC-A1BB-CB4B6E154BBD}.Release|x64.Build.0 = Release|x64
-               {7D2397CF-4C25-45BC-A1BB-CB4B6E154BBD}.Debug_Broadway|Win32.ActiveCfg = Debug|Win32
-               {7D2397CF-4C25-45BC-A1BB-CB4B6E154BBD}.Debug_Broadway|Win32.Build.0 = Debug|Win32
-               {7D2397CF-4C25-45BC-A1BB-CB4B6E154BBD}.Debug_Broadway|x64.ActiveCfg = Debug|x64
-               {7D2397CF-4C25-45BC-A1BB-CB4B6E154BBD}.Debug_Broadway|x64.Build.0 = Debug|x64
-               {7D2397CF-4C25-45BC-A1BB-CB4B6E154BBD}.Release_Broadway|Win32.ActiveCfg = Release|Win32
-               {7D2397CF-4C25-45BC-A1BB-CB4B6E154BBD}.Release_Broadway|Win32.Build.0 = Release|Win32
-               {7D2397CF-4C25-45BC-A1BB-CB4B6E154BBD}.Release_Broadway|x64.ActiveCfg = Release|x64
-               {7D2397CF-4C25-45BC-A1BB-CB4B6E154BBD}.Release_Broadway|x64.Build.0 = Release|x64
+               {7D2397CF-4C25-45BC-A1BB-CB4B6E154BBD}.Release_Vulkan|x64.ActiveCfg = Release|x64
+               {7D2397CF-4C25-45BC-A1BB-CB4B6E154BBD}.Release_Vulkan|x64.Build.0 = Release|x64
                {9F22107A-3EF7-4B52-B269-747B65307F36}.Debug|Win32.ActiveCfg = Debug|Win32
                {9F22107A-3EF7-4B52-B269-747B65307F36}.Debug|Win32.Build.0 = Debug|Win32
+               {9F22107A-3EF7-4B52-B269-747B65307F36}.Debug_Vulkan|Win32.ActiveCfg = Debug|Win32
+               {9F22107A-3EF7-4B52-B269-747B65307F36}.Debug_Vulkan|Win32.Build.0 = Debug|Win32
                {9F22107A-3EF7-4B52-B269-747B65307F36}.Debug|x64.ActiveCfg = Debug|x64
                {9F22107A-3EF7-4B52-B269-747B65307F36}.Debug|x64.Build.0 = Debug|x64
+               {9F22107A-3EF7-4B52-B269-747B65307F36}.Debug_Vulkan|x64.ActiveCfg = Debug|x64
+               {9F22107A-3EF7-4B52-B269-747B65307F36}.Debug_Vulkan|x64.Build.0 = Debug|x64
                {9F22107A-3EF7-4B52-B269-747B65307F36}.Release|Win32.ActiveCfg = Release|Win32
                {9F22107A-3EF7-4B52-B269-747B65307F36}.Release|Win32.Build.0 = Release|Win32
+               {9F22107A-3EF7-4B52-B269-747B65307F36}.Release_Vulkan|Win32.ActiveCfg = Release|Win32
+               {9F22107A-3EF7-4B52-B269-747B65307F36}.Release_Vulkan|Win32.Build.0 = Release|Win32
                {9F22107A-3EF7-4B52-B269-747B65307F36}.Release|x64.ActiveCfg = Release|x64
                {9F22107A-3EF7-4B52-B269-747B65307F36}.Release|x64.Build.0 = Release|x64
-               {9F22107A-3EF7-4B52-B269-747B65307F36}.Debug_Broadway|Win32.ActiveCfg = Debug|Win32
-               {9F22107A-3EF7-4B52-B269-747B65307F36}.Debug_Broadway|Win32.Build.0 = Debug|Win32
-               {9F22107A-3EF7-4B52-B269-747B65307F36}.Debug_Broadway|x64.ActiveCfg = Debug|x64
-               {9F22107A-3EF7-4B52-B269-747B65307F36}.Debug_Broadway|x64.Build.0 = Debug|x64
-               {9F22107A-3EF7-4B52-B269-747B65307F36}.Release_Broadway|Win32.ActiveCfg = Release|Win32
-               {9F22107A-3EF7-4B52-B269-747B65307F36}.Release_Broadway|Win32.Build.0 = Release|Win32
-               {9F22107A-3EF7-4B52-B269-747B65307F36}.Release_Broadway|x64.ActiveCfg = Release|x64
-               {9F22107A-3EF7-4B52-B269-747B65307F36}.Release_Broadway|x64.Build.0 = Release|x64
+               {9F22107A-3EF7-4B52-B269-747B65307F36}.Release_Vulkan|x64.ActiveCfg = Release|x64
+               {9F22107A-3EF7-4B52-B269-747B65307F36}.Release_Vulkan|x64.Build.0 = Release|x64
+               {23BBF35F-78AF-4E8C-983F-7B90448CD7DF}.Debug|Win32.ActiveCfg = Debug|Win32
+               {23BBF35F-78AF-4E8C-983F-7B90448CD7DF}.Debug|Win32.Build.0 = Debug|Win32
+               {23BBF35F-78AF-4E8C-983F-7B90448CD7DF}.Debug_Vulkan|Win32.ActiveCfg = Debug_Vulkan|Win32
+               {23BBF35F-78AF-4E8C-983F-7B90448CD7DF}.Debug_Vulkan|Win32.Build.0 = Debug_Vulkan|Win32
+               {23BBF35F-78AF-4E8C-983F-7B90448CD7DF}.Debug|x64.ActiveCfg = Debug|x64
+               {23BBF35F-78AF-4E8C-983F-7B90448CD7DF}.Debug|x64.Build.0 = Debug|x64
+               {23BBF35F-78AF-4E8C-983F-7B90448CD7DF}.Debug_Vulkan|x64.ActiveCfg = Debug_Vulkan|x64
+               {23BBF35F-78AF-4E8C-983F-7B90448CD7DF}.Debug_Vulkan|x64.Build.0 = Debug_Vulkan|x64
+               {23BBF35F-78AF-4E8C-983F-7B90448CD7DF}.Release|Win32.ActiveCfg = Release|Win32
+               {23BBF35F-78AF-4E8C-983F-7B90448CD7DF}.Release|Win32.Build.0 = Release|Win32
+               {23BBF35F-78AF-4E8C-983F-7B90448CD7DF}.Release_Vulkan|Win32.ActiveCfg = Release_Vulkan|Win32
+               {23BBF35F-78AF-4E8C-983F-7B90448CD7DF}.Release_Vulkan|Win32.Build.0 = Release_Vulkan|Win32
+               {23BBF35F-78AF-4E8C-983F-7B90448CD7DF}.Release|x64.ActiveCfg = Release|x64
+               {23BBF35F-78AF-4E8C-983F-7B90448CD7DF}.Release|x64.Build.0 = Release|x64
+               {23BBF35F-78AF-4E8C-983F-7B90448CD7DF}.Release_Vulkan|x64.ActiveCfg = Release_Vulkan|x64
+               {23BBF35F-78AF-4E8C-983F-7B90448CD7DF}.Release_Vulkan|x64.Build.0 = Release_Vulkan|x64
        EndGlobalSection
        GlobalSection(SolutionProperties) = preSolution
                HideSolutionNode = FALSE
diff --git a/build/win32/vs12/gtk-4.vcxprojin b/build/win32/vs12/gtk-4.vcxprojin
index 59fddaa..5c17aea 100644
--- a/build/win32/vs12/gtk-4.vcxprojin
+++ b/build/win32/vs12/gtk-4.vcxprojin
@@ -5,16 +5,16 @@
       <Configuration>Debug</Configuration>
       <Platform>Win32</Platform>
     </ProjectConfiguration>
-    <ProjectConfiguration Include="Debug_Broadway|Win32">
-      <Configuration>Debug_Broadway</Configuration>
+    <ProjectConfiguration Include="Debug_Vulkan|Win32">
+      <Configuration>Debug_Vulkan</Configuration>
       <Platform>Win32</Platform>
     </ProjectConfiguration>
     <ProjectConfiguration Include="Debug|x64">
       <Configuration>Debug</Configuration>
       <Platform>x64</Platform>
     </ProjectConfiguration>
-    <ProjectConfiguration Include="Debug_Broadway|x64">
-      <Configuration>Debug_Broadway</Configuration>
+    <ProjectConfiguration Include="Debug_Vulkan|x64">
+      <Configuration>Debug_Vulkan</Configuration>
       <Platform>x64</Platform>
     </ProjectConfiguration>
     <ProjectConfiguration Include="Release|Win32">
@@ -22,8 +22,8 @@
       <Platform>Win32</Platform>
       <WholeProgramOptimization>true</WholeProgramOptimization>
     </ProjectConfiguration>
-    <ProjectConfiguration Include="Release_Broadway|Win32">
-      <Configuration>Release_Broadway</Configuration>
+    <ProjectConfiguration Include="Release_Vulkan|Win32">
+      <Configuration>Release_Vulkan</Configuration>
       <Platform>Win32</Platform>
     </ProjectConfiguration>
     <ProjectConfiguration Include="Release|x64">
@@ -31,8 +31,8 @@
       <Platform>x64</Platform>
       <WholeProgramOptimization>true</WholeProgramOptimization>
     </ProjectConfiguration>
-    <ProjectConfiguration Include="Release_Broadway|x64">
-      <Configuration>Release_Broadway</Configuration>
+    <ProjectConfiguration Include="Release_Vulkan|x64">
+      <Configuration>Release_Vulkan</Configuration>
       <Platform>x64</Platform>
     </ProjectConfiguration>
   </ItemGroup>
@@ -47,7 +47,7 @@
     <CharacterSet>MultiByte</CharacterSet>
     <PlatformToolset>v120</PlatformToolset>
   </PropertyGroup>
-  <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug_Broadway|Win32'" Label="Configuration">
+  <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug_Vulkan|Win32'" Label="Configuration">
     <ConfigurationType>DynamicLibrary</ConfigurationType>
     <CharacterSet>MultiByte</CharacterSet>
     <PlatformToolset>v120</PlatformToolset>
@@ -57,7 +57,7 @@
     <CharacterSet>MultiByte</CharacterSet>
     <PlatformToolset>v120</PlatformToolset>
   </PropertyGroup>
-  <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug_Broadway|x64'" Label="Configuration">
+  <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug_Vulkan|x64'" Label="Configuration">
     <ConfigurationType>DynamicLibrary</ConfigurationType>
     <CharacterSet>MultiByte</CharacterSet>
     <PlatformToolset>v120</PlatformToolset>
@@ -67,7 +67,7 @@
     <CharacterSet>MultiByte</CharacterSet>
     <PlatformToolset>v120</PlatformToolset>
   </PropertyGroup>
-  <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release_Broadway|Win32'" Label="Configuration">
+  <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release_Vulkan|Win32'" Label="Configuration">
     <ConfigurationType>DynamicLibrary</ConfigurationType>
     <CharacterSet>MultiByte</CharacterSet>
     <WholeProgramOptimization>true</WholeProgramOptimization>
@@ -78,7 +78,7 @@
     <CharacterSet>MultiByte</CharacterSet>
     <PlatformToolset>v120</PlatformToolset>
   </PropertyGroup>
-  <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release_Broadway|x64'" Label="Configuration">
+  <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release_Vulkan|x64'" Label="Configuration">
     <ConfigurationType>DynamicLibrary</ConfigurationType>
     <CharacterSet>MultiByte</CharacterSet>
     <WholeProgramOptimization>true</WholeProgramOptimization>
@@ -91,7 +91,7 @@
     <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" 
Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
     <Import Project="gtk4-gen-srcs.props" />
   </ImportGroup>
-  <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug_Broadway|Win32'" Label="PropertySheets">
+  <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug_Vulkan|Win32'" Label="PropertySheets">
     <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" 
Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
     <Import Project="gtk4-gen-srcs.props" />
   </ImportGroup>
@@ -99,7 +99,7 @@
     <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" 
Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
     <Import Project="gtk4-gen-srcs.props" />
   </ImportGroup>
-  <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug_Broadway|x64'" Label="PropertySheets">
+  <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug_Vulkan|x64'" Label="PropertySheets">
     <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" 
Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
     <Import Project="gtk4-gen-srcs.props" />
   </ImportGroup>
@@ -107,7 +107,7 @@
     <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" 
Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
     <Import Project="gtk4-gen-srcs.props" />
   </ImportGroup>
-  <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release_Broadway|Win32'" Label="PropertySheets">
+  <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release_Vulkan|Win32'" Label="PropertySheets">
     <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" 
Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
     <Import Project="gtk4-gen-srcs.props" />
   </ImportGroup>
@@ -115,16 +115,16 @@
     <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" 
Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
     <Import Project="gtk4-gen-srcs.props" />
   </ImportGroup>
-  <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release_Broadway|x64'" Label="PropertySheets">
+  <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release_Vulkan|x64'" Label="PropertySheets">
     <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" 
Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
     <Import Project="gtk4-gen-srcs.props" />
   </ImportGroup>
   <PropertyGroup Label="UserMacros" />
   <PropertyGroup>
     <LinkIncremental Condition="'$(Configuration)'=='Debug'">true</LinkIncremental>
-    <LinkIncremental Condition="'$(Configuration)'=='Debug_Broadway'">true</LinkIncremental>
+    <LinkIncremental Condition="'$(Configuration)'=='Debug_Vulkan'">true</LinkIncremental>
     <LinkIncremental Condition="'$(Configuration)'=='Release'">false</LinkIncremental>
-    <LinkIncremental Condition="'$(Configuration)'=='Release_Broadway'">false</LinkIncremental>
+    <LinkIncremental Condition="'$(Configuration)'=='Release_Vulkan'">false</LinkIncremental>
   </PropertyGroup>
   <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
     <ClCompile>
@@ -150,7 +150,7 @@
       <TargetMachine>MachineX86</TargetMachine>
     </Link>
   </ItemDefinitionGroup>
-  <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug_Broadway|Win32'">
+  <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug_Vulkan|Win32'">
     <ClCompile>
       <Optimization>Disabled</Optimization>
       
<AdditionalIncludeDirectories>..\..\..\gtk;..\..\..\gdk;..\..\..\gdk\win32;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
@@ -164,7 +164,7 @@
       <DebugInformationFormat>EditAndContinue</DebugInformationFormat>
     </ClCompile>
     <Link>
-      <AdditionalDependencies>$(GtkAdditionalLibs);%(AdditionalDependencies)</AdditionalDependencies>
+      
<AdditionalDependencies>$(GtkAdditionalLibs);$(VulkanLibs);%(AdditionalDependencies)</AdditionalDependencies>
       
<OutputFile>$(SolutionDir)Debug\$(Platform)\bin\$(GtkDllPrefix)$(ProjectName)$(GtkDllSuffix).dll</OutputFile>
       <ImportLibrary>$(SolutionDir)Debug\$(Platform)\bin\$(ProjectName).lib</ImportLibrary>
       <GenerateDebugInformation>true</GenerateDebugInformation>
@@ -197,7 +197,7 @@
       <TargetMachine>MachineX86</TargetMachine>
     </Link>
   </ItemDefinitionGroup>
-  <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release_Broadway|Win32'">
+  <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release_Vulkan|Win32'">
     <ClCompile>
       
<AdditionalIncludeDirectories>..\..\..\gtk;..\..\..\gdk;..\..\..\gdk\win32;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
       <PreprocessorDefinitions>$(GtkDefines);%(PreprocessorDefinitions)</PreprocessorDefinitions>
@@ -208,7 +208,7 @@
       <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
     </ClCompile>
     <Link>
-      <AdditionalDependencies>$(GtkAdditionalLibs);%(AdditionalDependencies)</AdditionalDependencies>
+      
<AdditionalDependencies>$(GtkAdditionalLibs);$(VulkanLibs);%(AdditionalDependencies)</AdditionalDependencies>
       
<OutputFile>$(SolutionDir)Release\$(Platform)\bin\$(GtkDllPrefix)$(ProjectName)$(GtkDllSuffix).dll</OutputFile>
       <ImportLibrary>$(SolutionDir)Release\$(Platform)\bin\$(ProjectName).lib</ImportLibrary>
       <GenerateDebugInformation>true</GenerateDebugInformation>
@@ -244,7 +244,7 @@
       <TargetMachine>MachineX64</TargetMachine>
     </Link>
   </ItemDefinitionGroup>
-  <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug_Broadway|x64'">
+  <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug_Vulkan|x64'">
     <ClCompile>
       <Optimization>Disabled</Optimization>
       
<AdditionalIncludeDirectories>..\..\..\gtk;..\..\..\gdk;..\..\..\gdk\win32;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
@@ -258,7 +258,7 @@
       <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
     </ClCompile>
     <Link>
-      <AdditionalDependencies>$(GtkAdditionalLibs);%(AdditionalDependencies)</AdditionalDependencies>
+      
<AdditionalDependencies>$(GtkAdditionalLibs);$(VulkanLibs);%(AdditionalDependencies)</AdditionalDependencies>
       
<OutputFile>$(SolutionDir)Debug\$(Platform)\bin\$(GtkDllPrefix)$(ProjectName)$(GtkDllSuffix).dll</OutputFile>
       <ImportLibrary>$(SolutionDir)Debug\$(Platform)\bin\$(ProjectName).lib</ImportLibrary>
       <GenerateDebugInformation>true</GenerateDebugInformation>
@@ -291,7 +291,7 @@
       <TargetMachine>MachineX64</TargetMachine>
     </Link>
   </ItemDefinitionGroup>
-  <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release_Broadway|x64'">
+  <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release_Vulkan|x64'">
     <ClCompile>
       
<AdditionalIncludeDirectories>..\..\..\gtk;..\..\..\gdk;..\..\..\gdk\win32;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
       <PreprocessorDefinitions>$(GtkDefines);%(PreprocessorDefinitions)</PreprocessorDefinitions>
@@ -302,7 +302,7 @@
       <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
     </ClCompile>
     <Link>
-      <AdditionalDependencies>$(GtkAdditionalLibs);%(AdditionalDependencies)</AdditionalDependencies>
+      
<AdditionalDependencies>$(GtkAdditionalLibs);$(VulkanLibs);%(AdditionalDependencies)</AdditionalDependencies>
       
<OutputFile>$(SolutionDir)Release\$(Platform)\bin\$(GtkDllPrefix)$(ProjectName)$(GtkDllSuffix).dll</OutputFile>
       <ImportLibrary>$(SolutionDir)Release\$(Platform)\bin\$(ProjectName).lib</ImportLibrary>
       <GenerateDebugInformation>true</GenerateDebugInformation>
@@ -322,12 +322,12 @@
       <Message Condition="'$(Configuration)'=='Release'">Generating GTK+ DBus Sources...</Message>
       <Command Condition="'$(Configuration)'=='Release'">$(GenerateGtkDbusBuiltSources)</Command>
       <Outputs 
Condition="'$(Configuration)'=='Release'">..\..\..\gtk\gtkdbusgenerated.c;..\..\..\gtk\gtkdbusgenerated.h;%(Outputs)</Outputs>
-      <Message Condition="'$(Configuration)'=='Debug_Broadway'">Generating GTK+ DBus Sources...</Message>
-      <Command Condition="'$(Configuration)'=='Debug_Broadway'">$(GenerateGtkDbusBuiltSources)</Command>
-      <Outputs 
Condition="'$(Configuration)'=='Debug_Broadway'">..\..\..\gtk\gtkdbusgenerated.c;..\..\..\gtk\gtkdbusgenerated.h;%(Outputs)</Outputs>
-      <Message Condition="'$(Configuration)'=='Release_Broadway'">Generating GTK+ DBus Sources...</Message>
-      <Command Condition="'$(Configuration)'=='Release_Broadway'">$(GenerateGtkDbusBuiltSources)</Command>
-      <Outputs 
Condition="'$(Configuration)'=='Release_Broadway'">..\..\..\gtk\gtkdbusgenerated.c;..\..\..\gtk\gtkdbusgenerated.h;%(Outputs)</Outputs>
+      <Message Condition="'$(Configuration)'=='Debug_Vulkan'">Generating GTK+ DBus Sources...</Message>
+      <Command Condition="'$(Configuration)'=='Debug_Vulkan'">$(GenerateGtkDbusBuiltSources)</Command>
+      <Outputs 
Condition="'$(Configuration)'=='Debug_Vulkan'">..\..\..\gtk\gtkdbusgenerated.c;..\..\..\gtk\gtkdbusgenerated.h;%(Outputs)</Outputs>
+      <Message Condition="'$(Configuration)'=='Release_Vulkan'">Generating GTK+ DBus Sources...</Message>
+      <Command Condition="'$(Configuration)'=='Release_Vulkan'">$(GenerateGtkDbusBuiltSources)</Command>
+      <Outputs 
Condition="'$(Configuration)'=='Release_Vulkan'">..\..\..\gtk\gtkdbusgenerated.c;..\..\..\gtk\gtkdbusgenerated.h;%(Outputs)</Outputs>
     </CustomBuild>
     <CustomBuild Include="..\..\..\gtk\gtk-win32.rc.body">
       <Message Condition="'$(Configuration)'=='Debug'">Copying GTK+ Win32 Version Resource...</Message>
@@ -336,12 +336,12 @@
       <Message Condition="'$(Configuration)'=='Release'">Copying GTK+ Win32 Version Resource...</Message>
       <Command Condition="'$(Configuration)'=='Release'">$(CopyGtkWin32RC)</Command>
       <Outputs Condition="'$(Configuration)'=='Release'">..\..\..\gtk\gtk-win32.rc;%(Outputs)</Outputs>
-      <Message Condition="'$(Configuration)'=='Debug_Broadway'">Copying GTK+ Win32 Version 
Resource...</Message>
-      <Command Condition="'$(Configuration)'=='Debug_Broadway'">$(CopyGtkWin32RC)</Command>
-      <Outputs 
Condition="'$(Configuration)'=='Debug_Broadway'">..\..\..\gtk\gtk-win32.rc;%(Outputs)</Outputs>
-      <Message Condition="'$(Configuration)'=='Release_Broadway'">Copying GTK+ Win32 Version 
Resource...</Message>
-      <Command Condition="'$(Configuration)'=='Release_Broadway'">$(CopyGtkWin32RC)</Command>
-      <Outputs 
Condition="'$(Configuration)'=='Release_Broadway'">..\..\..\gtk\gtk-win32.rc;%(Outputs)</Outputs>
+      <Message Condition="'$(Configuration)'=='Debug_Vulkan'">Copying GTK+ Win32 Version 
Resource...</Message>
+      <Command Condition="'$(Configuration)'=='Debug_Vulkan'">$(CopyGtkWin32RC)</Command>
+      <Outputs Condition="'$(Configuration)'=='Debug_Vulkan'">..\..\..\gtk\gtk-win32.rc;%(Outputs)</Outputs>
+      <Message Condition="'$(Configuration)'=='Release_Vulkan'">Copying GTK+ Win32 Version 
Resource...</Message>
+      <Command Condition="'$(Configuration)'=='Release_Vulkan'">$(CopyGtkWin32RC)</Command>
+      <Outputs 
Condition="'$(Configuration)'=='Release_Vulkan'">..\..\..\gtk\gtk-win32.rc;%(Outputs)</Outputs>
     </CustomBuild>
     <CustomBuild Include="..\..\..\gtk\libgtk4.manifest.in">
       <Message Condition="'$(Configuration)'=='Debug'">Generating GTK+ Win32 Manifest...</Message>
@@ -350,12 +350,12 @@
       <Message Condition="'$(Configuration)'=='Release'">Generating GTK+ Win32 Manifest...</Message>
       <Command Condition="'$(Configuration)'=='Release'">$(GenerateGtkWin32Manifest)</Command>
       <Outputs Condition="'$(Configuration)'=='Release'">..\..\..\gtk\libgtk4.manifest;%(Outputs)</Outputs>
-      <Message Condition="'$(Configuration)'=='Debug_Broadway'">Generating GTK+ Win32 Manifest...</Message>
-      <Command Condition="'$(Configuration)'=='Debug_Broadway'">$(GenerateGtkWin32Manifest)</Command>
-      <Outputs 
Condition="'$(Configuration)'=='Debug_Broadway'">..\..\..\gtk\libgtk4.manifest;%(Outputs)</Outputs>
-      <Message Condition="'$(Configuration)'=='Release_Broadway'">Generating GTK+ Win32 Manifest...</Message>
-      <Command Condition="'$(Configuration)'=='Release_Broadway'">$(GenerateGtkWin32Manifest)</Command>
-      <Outputs 
Condition="'$(Configuration)'=='Release_Broadway'">..\..\..\gtk\libgtk4.manifest;%(Outputs)</Outputs>
+      <Message Condition="'$(Configuration)'=='Debug_Vulkan'">Generating GTK+ Win32 Manifest...</Message>
+      <Command Condition="'$(Configuration)'=='Debug_Vulkan'">$(GenerateGtkWin32Manifest)</Command>
+      <Outputs 
Condition="'$(Configuration)'=='Debug_Vulkan'">..\..\..\gtk\libgtk4.manifest;%(Outputs)</Outputs>
+      <Message Condition="'$(Configuration)'=='Release_Vulkan'">Generating GTK+ Win32 Manifest...</Message>
+      <Command Condition="'$(Configuration)'=='Release_Vulkan'">$(GenerateGtkWin32Manifest)</Command>
+      <Outputs 
Condition="'$(Configuration)'=='Release_Vulkan'">..\..\..\gtk\libgtk4.manifest;%(Outputs)</Outputs>
     </CustomBuild>
   </ItemGroup>
   <ItemGroup>
diff --git a/build/win32/vs12/gtk4-build-defines.props b/build/win32/vs12/gtk4-build-defines.props
index d16ec2b..3a8523c 100644
--- a/build/win32/vs12/gtk4-build-defines.props
+++ b/build/win32/vs12/gtk4-build-defines.props
@@ -13,7 +13,7 @@
     
<GtkDefines>GTK_COMPILATION;G_LOG_DOMAIN="Gtk";GTK_HOST="i686-pc-vs$(VSVer)";GTK_PRINT_BACKENDS="file";GTK_PRINT_BACKEND_ENABLE_UNSUPPORTED;$(GtkIncludedImmodulesDefines);GTK_LIBDIR="$(GtkDummyPrefix)/lib";GTK_DATADIR="$(GtkDummyPrefix)/share";GTK_DATA_PREFIX="$(GtkDummyPrefix)";GTK_SYSCONFDIR="$(GtkDummyPrefix)/etc";MULTIPRESS_CONFDIR="$(GtkDummyPrefix)/etc/gtk-$(ApiVersion)";MULTIPRESS_LOCALEDIR="$(GtkDummyPrefix)/share/locale";GTK_VERSION="$(GtkVersion)/etc";GTK_BINARY_VERSION="$(GtkBinaryVersion)/etc";GDK_DISABLE_DEPRECATED;ISOLATION_AWARE_ENABLED</GtkDefines>
     <GtkGdkCommonLibs>imm32.lib</GtkGdkCommonLibs>
     <GdkAdditionalLibs>winmm.lib;dwmapi.lib;setupapi.lib;$(GtkGdkCommonLibs)</GdkAdditionalLibs>
-    <GdkBroadwayAdditionalLibs>ws2_32.lib</GdkBroadwayAdditionalLibs>
+    <VulkanLibs>vulkan-1.lib</VulkanLibs>
     
<GtkAdditionalLibs>atk-1.0.lib;pangowin32-1.0.lib;winspool.lib;comctl32.lib;$(GdkAdditionalLibs)</GtkAdditionalLibs>
     <GtkExportGdkWin32DisplayMgr>/EXPORT:gdk_win32_display_manager_get_type</GtkExportGdkWin32DisplayMgr>
   </PropertyGroup>
@@ -60,8 +60,8 @@
     <BuildMacro Include="GdkAdditionalLibs">
       <Value>$(GdkAdditionalLibs)</Value>
     </BuildMacro>
-    <BuildMacro Include="GdkBroadwayAdditionalLibs">
-      <Value>$(GdkBroadwayAdditionalLibs)</Value>
+    <BuildMacro Include="VulkanLibs">
+      <Value>$(VulkanLibs)</Value>
     </BuildMacro>
     <BuildMacro Include="GtkAdditionalLibs">
       <Value>$(GtkAdditionalLibs)</Value>
diff --git a/build/win32/vs12/gtk4-gen-srcs.props b/build/win32/vs12/gtk4-gen-srcs.props
index 5aeaab1..73728f3 100644
--- a/build/win32/vs12/gtk4-gen-srcs.props
+++ b/build/win32/vs12/gtk4-gen-srcs.props
@@ -9,8 +9,8 @@
 if exist ..\..\..\MSVC_$(Configuration) goto DONE_GDKCONFIG_H
 
 if exist ..\..\..\gdk\gdkconfig.h del ..\..\..\gdk\gdkconfig.h
-if exist ..\..\..\GDK_BROADWAY_BUILD del ..\..\..\GDK_BROADWAY_BUILD
-if exist ..\..\..\MSVC_$(Configuration)_Broadway del ..\..\..\MSVC_$(Configuration)_Broadway
+if exist ..\..\..\GDK_VULKAN_BUILD del ..\..\..\GDK_VULKAN_BUILD
+if exist ..\..\..\MSVC_$(Configuration)_Vulkan del ..\..\..\MSVC_$(Configuration)_Vulkan
 if exist $(Configuration)\$(Platform)\bin\$(GtkDllPrefix)gdk$(GtkDllSuffix).dll del 
$(Configuration)\$(Platform)\bin\$(GtkDllPrefix)gdk$(GtkDllSuffix).dll
 if exist $(Configuration)\$(Platform)\bin\gdk-$(ApiVersion).lib del 
$(Configuration)\$(Platform)\bin\gdk-$(ApiVersion).lib
 if "$(Configuration)" == "Release" del ..\..\..\MSVC_Debug
@@ -21,23 +21,23 @@ echo $(Configuration) &gt; ..\..\..\MSVC_$(Configuration)
 
 :DONE_GDKCONFIG_H
     </GenGdkConfigHWin32>
-    <GenGdkConfigHBroadway>
-if exist ..\..\..\MSVC_$(Configuration)_Broadway goto DONE_GDKCONFIG_H
+    <GenGdkConfigHVulkan>
+if exist ..\..\..\MSVC_$(Configuration)_Vulkan goto DONE_GDKCONFIG_H
 
 if exist ..\..\..\gdk\gdkconfig.h del ..\..\..\gdk\gdkconfig.h
 if exist ..\..\..\GDK_WIN32ONLY_BUILD del ..\..\..\GDK_WIN32ONLY_BUILD
 if exist ..\..\..\MSVC_Release del ..\..\..\MSVC_Release
 if exist ..\..\..\MSVC_Debug del ..\..\..\MSVC_Debug
 
-if "$(Configuration)" == "Release_Broadway" del ..\..\..\MSVC_Debug_Broadway
-if "$(Configuration)" == "Debug_Broadway" del ..\..\..\MSVC_Release_Broadway
+if "$(Configuration)" == "Release_Vulkan" del ..\..\..\MSVC_Debug_Vulkan
+if "$(Configuration)" == "Debug_Vulkan" del ..\..\..\MSVC_Release_Vulkan
 
-copy ..\..\..\gdk\gdkconfig.h.win32_broadway ..\..\..\gdk\gdkconfig.h
-copy ..\..\..\gdk\gdkconfig.h.win32_broadway ..\..\..\GDK_BROADWAY_BUILD
-echo $(Configuration) &gt; ..\..\..\MSVC_$(Configuration)_Broadway
+copy ..\..\..\gdk\gdkconfig.h.win32_vulkan ..\..\..\gdk\gdkconfig.h
+copy ..\..\..\gdk\gdkconfig.h.win32_vulkan ..\..\..\GDK_VULKAN_BUILD
+echo $(Configuration) &gt; ..\..\..\MSVC_$(Configuration)_Vulkan
 
 :DONE_GDKCONFIG_H
-    </GenGdkConfigHBroadway>
+    </GenGdkConfigHVulkan>
     <GDbusCodeGenCmd>$(GlibEtcInstallRoot)\bin\gdbus-codegen --interface-prefix org.Gtk. --c-namespace _Gtk 
--generate-c-code gtkdbusgenerated ./gtkdbusinterfaces.xml</GDbusCodeGenCmd>
     <GenerateGtkDbusBuiltSources>cd ..\..\..\gtk &amp; $(PythonPath)\python $(GDbusCodeGenCmd) &amp; cd 
$(SolutionDir)</GenerateGtkDbusBuiltSources>
     <GenerateGtkDbusBuiltSourcesX64>cd ..\..\..\gtk &amp; $(PythonPathX64)\python $(GDbusCodeGenCmd) &amp; 
cd $(SolutionDir)</GenerateGtkDbusBuiltSourcesX64>
@@ -50,6 +50,8 @@ echo ^&lt;?xml version='1.0' encoding='UTF-8'?^&gt; &gt; ..\..\..\gsk\gsk.gresou
 echo ^&lt;gresources^&gt; &gt;&gt; ..\..\..\gsk\gsk.gresource.xml
 echo   ^&lt;gresource prefix='/org/gtk/libgsk'^&gt; &gt;&gt; ..\..\..\gsk\gsk.gresource.xml
 for /f &#37;&#37;f in ('dir /b ..\..\..\gsk\resources\glsl\*') do echo     ^&lt;file 
alias='glsl/&#37;&#37;f'^&gt;resources/glsl/&#37;&#37;f^&lt;/file^&gt; &gt;&gt; ..\..\..\gsk\gsk.gresource.xml
+for /f &#37;&#37;f in ('dir /b ..\..\..\gsk\resources\vulkan\*.spv') do echo     ^&lt;file 
alias='vulkan/&#37;&#37;f'^&gt;resources/vulkan/&#37;&#37;f^&lt;/file^&gt; &gt;&gt; 
..\..\..\gsk\gsk.gresource.xml
+for /f &#37;&#37;f in ('dir /b ..\..\..\gsk\resources\vulkan\*.glsl') do echo     ^&lt;file 
alias='vulkan/&#37;&#37;f'^&gt;resources/vulkan/&#37;&#37;f^&lt;/file^&gt; &gt;&gt; 
..\..\..\gsk\gsk.gresource.xml
 echo   ^&lt;/gresource^&gt; &gt;&gt; ..\..\..\gsk\gsk.gresource.xml
 echo ^&lt;/gresources^&gt; &gt;&gt; ..\..\..\gsk\gsk.gresource.xml
 
@@ -67,8 +69,8 @@ $(GlibEtcInstallRoot)\bin\glib-compile-resources.exe --sourcedir=..\..\..\gsk --
     <BuildMacro Include="GenGdkConfigHWin32">
       <Value>$(GenGdkConfigHWin32)</Value>
     </BuildMacro>
-    <BuildMacro Include="GenGdkConfigHBroadway">
-      <Value>$(GenGdkConfigHBroadway)</Value>
+    <BuildMacro Include="GenGdkConfigHVulkan">
+      <Value>$(GenGdkConfigHVulkan)</Value>
     </BuildMacro>
     <BuildMacro Include="GDbusCodeGenCmd">
       <Value>$(GDbusCodeGenCmd)</Value>
diff --git a/build/win32/vs12/gtk4-install.propsin b/build/win32/vs12/gtk4-install.propsin
index 2a6ea09..8044ab4 100644
--- a/build/win32/vs12/gtk4-install.propsin
+++ b/build/win32/vs12/gtk4-install.propsin
@@ -9,8 +9,8 @@
 mkdir $(CopyDir)\bin
 mkdir $(CopyDir)\lib\pkgconfig
 
-if "$(Configuration)" == "Release_Broadway" goto DO_BROADWAY_RELEASE
-if "$(Configuration)" == "Debug_Broadway" goto DO_BROADWAY_DEBUG
+if "$(Configuration)" == "Release_Vulkan" goto DO_VULKAN_RELEASE
+if "$(Configuration)" == "Debug_Vulkan" goto DO_VULKAN_DEBUG
 
 copy "$(BinDir)\$(GtkDllPrefix)gtk-$(ApiVersionShort)$(GtkDllSuffix).dll" $(CopyDir)\bin
 copy "$(BinDir)\$(GtkDllPrefix)gtk-$(ApiVersionShort)$(GtkDllSuffix).pdb" $(CopyDir)\bin
@@ -30,7 +30,7 @@ copy "$(BinDir)\gtk$(ApiVersionShort)-query-settings.pdb" $(CopyDir)\bin
 copy "$(BinDir)\gtk$(ApiVersionShort)-builder-tool.exe" $(CopyDir)\bin
 copy "$(BinDir)\gtk$(ApiVersionShort)-builder-tool.pdb" $(CopyDir)\bin
 
-:DO_BROADWAY_RELEASE
+:DO_VULKAN_RELEASE
 copy .\Release\$(Platform)\bin\$(GtkDllPrefix)gtk-$(ApiVersionShort)$(GtkDllSuffix).dll $(CopyDir)\bin
 copy .\Release\$(Platform)\bin\$(GtkDllPrefix)gtk-$(ApiVersionShort)$(GtkDllSuffix).pdb $(CopyDir)\bin
 copy .\Release\$(Platform)\bin\gtk-$(ApiVersionShort).lib $(CopyDir)\lib
@@ -51,7 +51,7 @@ copy .\Release\$(Platform)\bin\gtk$(ApiVersionShort)-builder-tool.pdb $(CopyDir)
 
 goto DONE_BIN
 
-:DO_BROADWAY_DEBUG
+:DO_VULKAN_DEBUG
 copy .\Debug\$(Platform)\bin\$(GtkDllPrefix)gtk-$(ApiVersionShort)$(GtkDllSuffix).dll $(CopyDir)\bin
 copy .\Debug\$(Platform)\bin\$(GtkDllPrefix)gtk-$(ApiVersionShort)$(GtkDllSuffix).pdb $(CopyDir)\bin
 copy .\Debug\$(Platform)\bin\gtk-$(ApiVersionShort).lib $(CopyDir)\lib
@@ -121,18 +121,12 @@ $(CopyDir)\bin\gtk$(ApiVersionShort)-update-icon-cache.exe --ignore-theme-index
     <BuildMacro Include="InstalledBins">
       <Value>$(InstalledBins)</Value>
     </BuildMacro>
-    <BuildMacro Include="InstalledBroadwayBins">
-      <Value>$(InstalledBroadwayBins)</Value>
-    </BuildMacro>
     <BuildMacro Include="GtkDoInstallBin">
       <Value>$(GtkDoInstallBin)</Value>
     </BuildMacro>
     <BuildMacro Include="GtkDoInstall">
       <Value>$(GtkDoInstall)</Value>
     </BuildMacro>
-    <BuildMacro Include="GtkDoInstallBroadwayHeaders">
-      <Value>$(GtkDoInstallBroadwayHeaders)</Value>
-    </BuildMacro>
     <BuildMacro Include="GtkPostInstall">
       <Value>$(GtkPostInstall)</Value>
     </BuildMacro>
diff --git a/build/win32/vs12/gtk4-install.vcxproj b/build/win32/vs12/gtk4-install.vcxproj
index c7e8d5e..7477b4b 100644
--- a/build/win32/vs12/gtk4-install.vcxproj
+++ b/build/win32/vs12/gtk4-install.vcxproj
@@ -5,32 +5,32 @@
       <Configuration>Debug</Configuration>
       <Platform>Win32</Platform>
     </ProjectConfiguration>
+    <ProjectConfiguration Include="Debug_Vulkan|Win32">
+      <Configuration>Debug_Vulkan</Configuration>
+      <Platform>Win32</Platform>
+    </ProjectConfiguration>
     <ProjectConfiguration Include="Debug|x64">
       <Configuration>Debug</Configuration>
       <Platform>x64</Platform>
     </ProjectConfiguration>
+    <ProjectConfiguration Include="Debug_Vulkan|x64">
+      <Configuration>Debug_Vulkan</Configuration>
+      <Platform>x64</Platform>
+    </ProjectConfiguration>
     <ProjectConfiguration Include="Release|Win32">
       <Configuration>Release</Configuration>
       <Platform>Win32</Platform>
     </ProjectConfiguration>
-    <ProjectConfiguration Include="Release|x64">
-      <Configuration>Release</Configuration>
-      <Platform>x64</Platform>
-    </ProjectConfiguration>
-    <ProjectConfiguration Include="Debug_Broadway|Win32">
-      <Configuration>Debug_Broadway</Configuration>
+    <ProjectConfiguration Include="Release_Vulkan|Win32">
+      <Configuration>Release_Vulkan</Configuration>
       <Platform>Win32</Platform>
     </ProjectConfiguration>
-    <ProjectConfiguration Include="Debug_Broadway|x64">
-      <Configuration>Debug_Broadway</Configuration>
+    <ProjectConfiguration Include="Release|x64">
+      <Configuration>Release</Configuration>
       <Platform>x64</Platform>
     </ProjectConfiguration>
-    <ProjectConfiguration Include="Release_Broadway|Win32">
-      <Configuration>Release_Broadway</Configuration>
-      <Platform>Win32</Platform>
-    </ProjectConfiguration>
-    <ProjectConfiguration Include="Release_Broadway|x64">
-      <Configuration>Release_Broadway</Configuration>
+    <ProjectConfiguration Include="Release_Vulkan|x64">
+      <Configuration>Release_Vulkan</Configuration>
       <Platform>x64</Platform>
     </ProjectConfiguration>
   </ItemGroup>
@@ -62,24 +62,24 @@
     <CharacterSet>MultiByte</CharacterSet>
     <PlatformToolset>v120</PlatformToolset>
   </PropertyGroup>
-  <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release_Broadway|Win32'" Label="Configuration">
+  <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release_Vulkan|Win32'" Label="Configuration">
     <ConfigurationType>Utility</ConfigurationType>
     <CharacterSet>MultiByte</CharacterSet>
     <WholeProgramOptimization>true</WholeProgramOptimization>
     <PlatformToolset>v120</PlatformToolset>
   </PropertyGroup>
-  <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug_Broadway|Win32'" Label="Configuration">
+  <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug_Vulkan|Win32'" Label="Configuration">
     <ConfigurationType>Utility</ConfigurationType>
     <CharacterSet>MultiByte</CharacterSet>
     <PlatformToolset>v120</PlatformToolset>
   </PropertyGroup>
-  <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release_Broadway|x64'" Label="Configuration">
+  <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release_Vulkan|x64'" Label="Configuration">
     <ConfigurationType>Utility</ConfigurationType>
     <CharacterSet>MultiByte</CharacterSet>
     <WholeProgramOptimization>true</WholeProgramOptimization>
     <PlatformToolset>v120</PlatformToolset>
   </PropertyGroup>
-  <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug_Broadway|x64'" Label="Configuration">
+  <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug_Vulkan|x64'" Label="Configuration">
     <ConfigurationType>Utility</ConfigurationType>
     <CharacterSet>MultiByte</CharacterSet>
     <PlatformToolset>v120</PlatformToolset>
@@ -87,35 +87,35 @@
   <Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />
   <ImportGroup Label="ExtensionSettings">
   </ImportGroup>
-  <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="PropertySheets">
+  <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="PropertySheets">
     <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" 
Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
     <Import Project="gtk4-install.props" />
   </ImportGroup>
-  <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="PropertySheets">
+  <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug_Vulkan|Win32'" Label="PropertySheets">
     <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" 
Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
     <Import Project="gtk4-install.props" />
   </ImportGroup>
-  <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="PropertySheets">
+  <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="PropertySheets">
     <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" 
Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
     <Import Project="gtk4-install.props" />
   </ImportGroup>
-  <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="PropertySheets">
+  <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug_Vulkan|x64'" Label="PropertySheets">
     <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" 
Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
     <Import Project="gtk4-install.props" />
   </ImportGroup>
-  <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release_Broadway|Win32'" Label="PropertySheets">
+  <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="PropertySheets">
     <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" 
Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
     <Import Project="gtk4-install.props" />
   </ImportGroup>
-  <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug_Broadway|Win32'" Label="PropertySheets">
+  <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release_Vulkan|Win32'" Label="PropertySheets">
     <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" 
Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
     <Import Project="gtk4-install.props" />
   </ImportGroup>
-  <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release_Broadway|x64'" Label="PropertySheets">
+  <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="PropertySheets">
     <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" 
Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
     <Import Project="gtk4-install.props" />
   </ImportGroup>
-  <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug_Broadway|x64'" Label="PropertySheets">
+  <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release_Vulkan|x64'" Label="PropertySheets">
     <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" 
Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
     <Import Project="gtk4-install.props" />
   </ImportGroup>
@@ -125,26 +125,26 @@
     <ExtensionsToDeleteOnClean Condition="'$(Configuration)'=='Debug'" />
     <OutDir Condition="'$(Configuration)'=='Release'">$(GlibEtcInstallRoot)\</OutDir>
     <ExtensionsToDeleteOnClean Condition="'$(Configuration)'=='Release'" />
-    <OutDir Condition="'$(Configuration)'=='Debug_Broadway'">$(GlibEtcInstallRoot)\</OutDir>
-    <ExtensionsToDeleteOnClean Condition="'$(Configuration)'=='Debug_Broadway'" />
-    <OutDir Condition="'$(Configuration)'=='Release_Broadway'">$(GlibEtcInstallRoot)\</OutDir>
-    <ExtensionsToDeleteOnClean Condition="'$(Configuration)'=='Release_Broadway'" />
+    <OutDir Condition="'$(Configuration)'=='Debug_Vulkan'">$(GlibEtcInstallRoot)\</OutDir>
+    <ExtensionsToDeleteOnClean Condition="'$(Configuration)'=='Debug_Vulkan'" />
+    <OutDir Condition="'$(Configuration)'=='Release_Vulkan'">$(GlibEtcInstallRoot)\</OutDir>
+    <ExtensionsToDeleteOnClean Condition="'$(Configuration)'=='Release_Vulkan'" />
   </PropertyGroup>
   <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
   </ItemDefinitionGroup>
-  <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
+  <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug_Vulkan|Win32'">
   </ItemDefinitionGroup>
-  <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
+  <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
   </ItemDefinitionGroup>
-  <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
+  <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug_Vulkan|x64'">
   </ItemDefinitionGroup>
-  <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug_Broadway|Win32'">
+  <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
   </ItemDefinitionGroup>
-  <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug_Broadway|x64'">
+  <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release_Vulkan|Win32'">
   </ItemDefinitionGroup>
-  <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release_Broadway|Win32'">
+  <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
   </ItemDefinitionGroup>
-  <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release_Broadway|x64'">
+  <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release_Vulkan|x64'">
   </ItemDefinitionGroup>
   <ItemGroup>
     <CustomBuild Include="..\..\..\config.h.win32">
@@ -152,44 +152,44 @@
       <AdditionalInputs Condition="'$(Configuration)'=='Debug'">$(GtkPCFiles)</AdditionalInputs>
       <Command 
Condition="'$(Configuration)'=='Debug'">$(GtkDoInstallBin)$(GtkDoInstall)$(GtkPostInstall)</Command>
       <Outputs Condition="'$(Configuration)'=='Debug'">blah;%(Outputs)</Outputs>
-      <Message Condition="'$(Configuration)'=='Debug_Broadway'">Installing Build Results...</Message>
-      <AdditionalInputs Condition="'$(Configuration)'=='Debug_Broadway'">$(GtkPCFiles)</AdditionalInputs>
-      <Command 
Condition="'$(Configuration)'=='Debug_Broadway'">$(GtkDoInstallBin)$(GtkDoInstall)$(GtkDoInstallBroadwayHeaders)$(GtkPostInstall)</Command>
-      <Outputs Condition="'$(Configuration)'=='Debug_Broadway'">blah;%(Outputs)</Outputs>
+      <Message Condition="'$(Configuration)'=='Debug_Vulkan'">Installing Build Results...</Message>
+      <AdditionalInputs Condition="'$(Configuration)'=='Debug_Vulkan'">$(GtkPCFiles)</AdditionalInputs>
+      <Command 
Condition="'$(Configuration)'=='Debug_Vulkan'">$(GtkDoInstallBin)$(GtkDoInstall)$(GtkPostInstall)</Command>
+      <Outputs Condition="'$(Configuration)'=='Debug_Vulkan'">blah;%(Outputs)</Outputs>
       <Message Condition="'$(Configuration)'=='Release'">Installing Build Results...</Message>
       <AdditionalInputs Condition="'$(Configuration)'=='Release'">$(GtkPCFiles)</AdditionalInputs>
       <Command 
Condition="'$(Configuration)'=='Release'">$(GtkDoInstallBin)$(GtkDoInstall)$(GtkPostInstall)</Command>
       <Outputs Condition="'$(Configuration)'=='Release'">blah;%(Outputs)</Outputs>
-      <Message Condition="'$(Configuration)'=='Release_Broadway'">Installing Build Results...</Message>
-      <AdditionalInputs Condition="'$(Configuration)'=='Release_Broadway'">$(GtkPCFiles)</AdditionalInputs>
-      <Command 
Condition="'$(Configuration)'=='Release_Broadway'">$(GtkDoInstallBin)$(GtkDoInstall)$(GtkDoInstallBroadwayHeaders)$(GtkPostInstall)</Command>
-      <Outputs Condition="'$(Configuration)'=='Release_Broadway'">blah;%(Outputs)</Outputs>
+      <Message Condition="'$(Configuration)'=='Release_Vulkan'">Installing Build Results...</Message>
+      <AdditionalInputs Condition="'$(Configuration)'=='Release_Vulkan'">$(GtkPCFiles)</AdditionalInputs>
+      <Command 
Condition="'$(Configuration)'=='Release_Vulkan'">$(GtkDoInstallBin)$(GtkDoInstall)$(GtkPostInstall)</Command>
+      <Outputs Condition="'$(Configuration)'=='Release_Vulkan'">blah;%(Outputs)</Outputs>
     </CustomBuild>
     <CustomBuild Include="..\gtkpc.py">
       <Message Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">Generating .pc files...</Message>
       <Command Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">$(GenerateGtkPC)</Command>
       <Outputs Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">$(GtkPCFiles);%(Outputs)</Outputs>
-      <Message Condition="'$(Configuration)|$(Platform)'=='Debug_Broadway|Win32'">Generating .pc 
files...</Message>
-      <Command Condition="'$(Configuration)|$(Platform)'=='Debug_Broadway|Win32'">$(GenerateGtkPC) 
--broadway</Command>
-      <Outputs 
Condition="'$(Configuration)|$(Platform)'=='Debug_Broadway|Win32'">$(GtkPCFiles);%(Outputs)</Outputs>
+      <Message Condition="'$(Configuration)|$(Platform)'=='Debug_Vulkan|Win32'">Generating .pc 
files...</Message>
+      <Command Condition="'$(Configuration)|$(Platform)'=='Debug_Vulkan|Win32'">$(GenerateGtkPC) 
--vulkan</Command>
+      <Outputs 
Condition="'$(Configuration)|$(Platform)'=='Debug_Vulkan|Win32'">$(GtkPCFiles);%(Outputs)</Outputs>
       <Message Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">Generating .pc files...</Message>
       <Command Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">$(GenerateGtkPCX64)</Command>
       <Outputs Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">$(GtkPCFiles);%(Outputs)</Outputs>
-      <Message Condition="'$(Configuration)|$(Platform)'=='Debug_Broadway|x64'">Generating .pc 
files...</Message>
-      <Command Condition="'$(Configuration)|$(Platform)'=='Debug_Broadway|x64'">$(GenerateGtkPCX64) 
--broadway</Command>
-      <Outputs 
Condition="'$(Configuration)|$(Platform)'=='Debug_Broadway|x64'">$(GtkPCFiles);%(Outputs)</Outputs>
+      <Message Condition="'$(Configuration)|$(Platform)'=='Debug_Vulkan|x64'">Generating .pc 
files...</Message>
+      <Command Condition="'$(Configuration)|$(Platform)'=='Debug_Vulkan|x64'">$(GenerateGtkPCX64) 
--vulkan</Command>
+      <Outputs 
Condition="'$(Configuration)|$(Platform)'=='Debug_Vulkan|x64'">$(GtkPCFiles);%(Outputs)</Outputs>
       <Message Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">Generating .pc files...</Message>
       <Command Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">$(GenerateGtkPC)</Command>
       <Outputs Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">$(GtkPCFiles);%(Outputs)</Outputs>
-      <Message Condition="'$(Configuration)|$(Platform)'=='Release_Broadway|Win32'">Generating .pc 
files...</Message>
-      <Command Condition="'$(Configuration)|$(Platform)'=='Release_Broadway|Win32'">$(GenerateGtkPC) 
--broadway</Command>
-      <Outputs 
Condition="'$(Configuration)|$(Platform)'=='Release_Broadway|Win32'">$(GtkPCFiles);%(Outputs)</Outputs>
+      <Message Condition="'$(Configuration)|$(Platform)'=='Release_Vulkan|Win32'">Generating .pc 
files...</Message>
+      <Command Condition="'$(Configuration)|$(Platform)'=='Release_Vulkan|Win32'">$(GenerateGtkPC) 
--vulkan</Command>
+      <Outputs 
Condition="'$(Configuration)|$(Platform)'=='Release_Vulkan|Win32'">$(GtkPCFiles);%(Outputs)</Outputs>
       <Message Condition="'$(Configuration)|$(Platform)'=='Release|x64'">Generating .pc files...</Message>
       <Command Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(GenerateGtkPCX64)</Command>
       <Outputs Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(GtkPCFiles);%(Outputs)</Outputs>
-      <Message Condition="'$(Configuration)|$(Platform)'=='Release_Broadway|x64'">Generating .pc 
files...</Message>
-      <Command Condition="'$(Configuration)|$(Platform)'=='Release_Broadway|x64'">$(GenerateGtkPCX64) 
--broadway</Command>
-      <Outputs 
Condition="'$(Configuration)|$(Platform)'=='Release_Broadway|x64'">$(GtkPCFiles);%(Outputs)</Outputs>
+      <Message Condition="'$(Configuration)|$(Platform)'=='Release_Vulkan|x64'">Generating .pc 
files...</Message>
+      <Command Condition="'$(Configuration)|$(Platform)'=='Release_Vulkan|x64'">$(GenerateGtkPCX64) 
--vulkan</Command>
+      <Outputs 
Condition="'$(Configuration)|$(Platform)'=='Release_Vulkan|x64'">$(GtkPCFiles);%(Outputs)</Outputs>
     </CustomBuild>
   </ItemGroup>
   <ItemGroup>
diff --git a/build/win32/vs12/gtk4-prebuild.vcxproj b/build/win32/vs12/gtk4-prebuild.vcxproj
index b3f10d2..3b497bd 100644
--- a/build/win32/vs12/gtk4-prebuild.vcxproj
+++ b/build/win32/vs12/gtk4-prebuild.vcxproj
@@ -5,32 +5,32 @@
       <Configuration>Debug</Configuration>
       <Platform>Win32</Platform>
     </ProjectConfiguration>
+    <ProjectConfiguration Include="Debug_Vulkan|Win32">
+      <Configuration>Debug_Vulkan</Configuration>
+      <Platform>Win32</Platform>
+    </ProjectConfiguration>
     <ProjectConfiguration Include="Debug|x64">
       <Configuration>Debug</Configuration>
       <Platform>x64</Platform>
     </ProjectConfiguration>
+    <ProjectConfiguration Include="Debug_Vulkan|x64">
+      <Configuration>Debug_Vulkan</Configuration>
+      <Platform>x64</Platform>
+    </ProjectConfiguration>
     <ProjectConfiguration Include="Release|Win32">
       <Configuration>Release</Configuration>
       <Platform>Win32</Platform>
     </ProjectConfiguration>
-    <ProjectConfiguration Include="Release|x64">
-      <Configuration>Release</Configuration>
-      <Platform>x64</Platform>
-    </ProjectConfiguration>
-    <ProjectConfiguration Include="Debug_Broadway|Win32">
-      <Configuration>Debug_Broadway</Configuration>
+    <ProjectConfiguration Include="Release_Vulkan|Win32">
+      <Configuration>Release_Vulkan</Configuration>
       <Platform>Win32</Platform>
     </ProjectConfiguration>
-    <ProjectConfiguration Include="Debug_Broadway|x64">
-      <Configuration>Debug_Broadway</Configuration>
+    <ProjectConfiguration Include="Release|x64">
+      <Configuration>Release</Configuration>
       <Platform>x64</Platform>
     </ProjectConfiguration>
-    <ProjectConfiguration Include="Release_Broadway|Win32">
-      <Configuration>Release_Broadway</Configuration>
-      <Platform>Win32</Platform>
-    </ProjectConfiguration>
-    <ProjectConfiguration Include="Release_Broadway|x64">
-      <Configuration>Release_Broadway</Configuration>
+    <ProjectConfiguration Include="Release_Vulkan|x64">
+      <Configuration>Release_Vulkan</Configuration>
       <Platform>x64</Platform>
     </ProjectConfiguration>
   </ItemGroup>
@@ -62,24 +62,24 @@
     <CharacterSet>MultiByte</CharacterSet>
     <PlatformToolset>v120</PlatformToolset>
   </PropertyGroup>
-  <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release_Broadway|Win32'" Label="Configuration">
+  <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release_Vulkan|Win32'" Label="Configuration">
     <ConfigurationType>Utility</ConfigurationType>
     <CharacterSet>MultiByte</CharacterSet>
     <WholeProgramOptimization>true</WholeProgramOptimization>
     <PlatformToolset>v120</PlatformToolset>
   </PropertyGroup>
-  <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug_Broadway|Win32'" Label="Configuration">
+  <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug_Vulkan|Win32'" Label="Configuration">
     <ConfigurationType>Utility</ConfigurationType>
     <CharacterSet>MultiByte</CharacterSet>
     <PlatformToolset>v120</PlatformToolset>
   </PropertyGroup>
-  <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release_Broadway|x64'" Label="Configuration">
+  <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release_Vulkan|x64'" Label="Configuration">
     <ConfigurationType>Utility</ConfigurationType>
     <CharacterSet>MultiByte</CharacterSet>
     <WholeProgramOptimization>true</WholeProgramOptimization>
     <PlatformToolset>v120</PlatformToolset>
   </PropertyGroup>
-  <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug_Broadway|x64'" Label="Configuration">
+  <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug_Vulkan|x64'" Label="Configuration">
     <ConfigurationType>Utility</ConfigurationType>
     <CharacterSet>MultiByte</CharacterSet>
     <PlatformToolset>v120</PlatformToolset>
@@ -103,19 +103,19 @@
     <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" 
Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
     <Import Project="gtk4-gen-srcs.props" />
   </ImportGroup>
-  <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release_Broadway|Win32'" Label="PropertySheets">
+  <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release_Vulkan|Win32'" Label="PropertySheets">
     <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" 
Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
     <Import Project="gtk4-gen-srcs.props" />
   </ImportGroup>
-  <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug_Broadway|Win32'" Label="PropertySheets">
+  <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug_Vulkan|Win32'" Label="PropertySheets">
     <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" 
Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
     <Import Project="gtk4-gen-srcs.props" />
   </ImportGroup>
-  <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release_Broadway|x64'" Label="PropertySheets">
+  <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release_Vulkan|x64'" Label="PropertySheets">
     <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" 
Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
     <Import Project="gtk4-gen-srcs.props" />
   </ImportGroup>
-  <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug_Broadway|x64'" Label="PropertySheets">
+  <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug_Vulkan|x64'" Label="PropertySheets">
     <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" 
Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
     <Import Project="gtk4-gen-srcs.props" />
   </ImportGroup>
@@ -125,10 +125,10 @@
     <ExtensionsToDeleteOnClean Condition="'$(Configuration)'=='Debug'" />
     <OutDir Condition="'$(Configuration)'=='Release'">$(GlibEtcInstallRoot)\</OutDir>
     <ExtensionsToDeleteOnClean Condition="'$(Configuration)'=='Release'" />
-    <OutDir Condition="'$(Configuration)'=='Debug_Broadway'">$(GlibEtcInstallRoot)\</OutDir>
-    <ExtensionsToDeleteOnClean Condition="'$(Configuration)'=='Debug_Broadway'" />
-    <OutDir Condition="'$(Configuration)'=='Release_Broadway'">$(GlibEtcInstallRoot)\</OutDir>
-    <ExtensionsToDeleteOnClean Condition="'$(Configuration)'=='Release_Broadway'" />
+    <OutDir Condition="'$(Configuration)'=='Debug_Vulkan'">$(GlibEtcInstallRoot)\</OutDir>
+    <ExtensionsToDeleteOnClean Condition="'$(Configuration)'=='Debug_Vulkan'" />
+    <OutDir Condition="'$(Configuration)'=='Release_Vulkan'">$(GlibEtcInstallRoot)\</OutDir>
+    <ExtensionsToDeleteOnClean Condition="'$(Configuration)'=='Release_Vulkan'" />
   </PropertyGroup>
   <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
   </ItemDefinitionGroup>
@@ -138,28 +138,28 @@
   </ItemDefinitionGroup>
   <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
   </ItemDefinitionGroup>
-  <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug_Broadway|Win32'">
+  <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug_Vulkan|Win32'">
   </ItemDefinitionGroup>
-  <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug_Broadway|x64'">
+  <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug_Vulkan|x64'">
   </ItemDefinitionGroup>
-  <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release_Broadway|Win32'">
+  <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release_Vulkan|Win32'">
   </ItemDefinitionGroup>
-  <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release_Broadway|x64'">
+  <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release_Vulkan|x64'">
   </ItemDefinitionGroup>
   <ItemGroup>
     <CustomBuild Include="..\..\..\config.h.win32">
       <Message Condition="'$(Configuration)'=='Debug'">Copying config.h from config.h.win32...</Message>
       <Command Condition="'$(Configuration)'=='Debug'">$(GenConfigH)</Command>
       <Outputs Condition="'$(Configuration)'=='Debug'">..\..\..\config.h;%(Outputs)</Outputs>
-      <Message Condition="'$(Configuration)'=='Debug_Broadway'">Copying config.h from 
config.h.win32...</Message>
-      <Command Condition="'$(Configuration)'=='Debug_Broadway'">$(GenConfigH)</Command>
-      <Outputs Condition="'$(Configuration)'=='Debug_Broadway'">..\..\..\config.h;%(Outputs)</Outputs>
+      <Message Condition="'$(Configuration)'=='Debug_Vulkan'">Copying config.h from 
config.h.win32...</Message>
+      <Command Condition="'$(Configuration)'=='Debug_Vulkan'">$(GenConfigH)</Command>
+      <Outputs Condition="'$(Configuration)'=='Debug_Vulkan'">..\..\..\config.h;%(Outputs)</Outputs>
       <Message Condition="'$(Configuration)'=='Release'">Copying config.h from config.h.win32...</Message>
       <Command Condition="'$(Configuration)'=='Release'">$(GenConfigH)</Command>
       <Outputs Condition="'$(Configuration)'=='Release'">..\..\..\config.h;%(Outputs)</Outputs>
-      <Message Condition="'$(Configuration)'=='Release_Broadway'">Copying config.h from 
config.h.win32...</Message>
-      <Command Condition="'$(Configuration)'=='Release_Broadway'">$(GenConfigH)</Command>
-      <Outputs Condition="'$(Configuration)'=='Release_Broadway'">..\..\..\config.h;%(Outputs)</Outputs>
+      <Message Condition="'$(Configuration)'=='Release_Vulkan'">Copying config.h from 
config.h.win32...</Message>
+      <Command Condition="'$(Configuration)'=='Release_Vulkan'">$(GenConfigH)</Command>
+      <Outputs Condition="'$(Configuration)'=='Release_Vulkan'">..\..\..\config.h;%(Outputs)</Outputs>
     </CustomBuild>
     <CustomBuild Include="..\..\..\gdk\gdkconfig.h.win32">
       <Message Condition="'$(Configuration)'=='Debug'">Copying gdkconfig from gdkconfig.win32...</Message>
@@ -169,27 +169,27 @@
       <Command Condition="'$(Configuration)'=='Release'">$(GenGdkConfigHWin32)</Command>
       <Outputs 
Condition="'$(Configuration)'=='Release'">..\..\..\gdk\gdkconfig.h;..\..\..\GDK_WIN32ONLY_BUILD;..\..\..\MSVC_$(Configuration);%(Outputs)</Outputs>
     </CustomBuild>
-    <CustomBuild Include="..\..\..\gdk\gdkconfig.h.win32_broadway">
-      <Message Condition="'$(Configuration)'=='Debug_Broadway'">Copying gdkconfig from 
gdkconfig.win32_broadway...</Message>
-      <Command Condition="'$(Configuration)'=='Debug_Broadway'">$(GenGdkConfigHBroadway)</Command>
-      <Outputs 
Condition="'$(Configuration)'=='Debug_Broadway'">..\..\..\gdk\gdkconfig.h;..\..\..\GDK_BROADWAY_BUILD;..\..\..\MSVC_$(Configuration)_Broadway;%(Outputs)</Outputs>
-      <Message Condition="'$(Configuration)'=='Release_Broadway'">Copying gdkconfig from 
gdkconfig.win32_broadway...</Message>
-      <Command Condition="'$(Configuration)'=='Release_Broadway'">$(GenGdkConfigHBroadway)</Command>
-      <Outputs 
Condition="'$(Configuration)'=='Release_Broadway'">..\..\..\gdk\gdkconfig.h;..\..\..\GDK_BROADWAY_BUILD;..\..\..\MSVC_$(Configuration)_Broadway;%(Outputs)</Outputs>
+    <CustomBuild Include="..\..\..\gdk\gdkconfig.h.win32_vulkan">
+      <Message Condition="'$(Configuration)'=='Debug_Vulkan'">Copying gdkconfig from 
gdkconfig.win32_vulkan...</Message>
+      <Command Condition="'$(Configuration)'=='Debug_Vulkan'">$(GenGdkConfigHVulkan)</Command>
+      <Outputs 
Condition="'$(Configuration)'=='Debug_Vulkan'">..\..\..\gdk\gdkconfig.h;..\..\..\GDK_VULKAN_BUILD;..\..\..\MSVC_$(Configuration)_Vulkan;%(Outputs)</Outputs>
+      <Message Condition="'$(Configuration)'=='Release_Vulkan'">Copying gdkconfig from 
gdkconfig.win32_vulkan...</Message>
+      <Command Condition="'$(Configuration)'=='Release_Vulkan'">$(GenGdkConfigHVulkan)</Command>
+      <Outputs 
Condition="'$(Configuration)'=='Release_Vulkan'">..\..\..\gdk\gdkconfig.h;..\..\..\GDK_VULKAN_BUILD;..\..\..\MSVC_$(Configuration)_Vulkan;%(Outputs)</Outputs>
     </CustomBuild>
     <CustomBuild Include="..\..\..\demos\gtk-demo\demos.h.win32">
       <Message Condition="'$(Configuration)'=='Debug'">Copying demos.h from demos.h.win32...</Message>
       <Command Condition="'$(Configuration)'=='Debug'">$(CopyDemosH)</Command>
       <Outputs Condition="'$(Configuration)'=='Debug'">..\..\..\demos\gtk-demo\demos.h;%(Outputs)</Outputs>
-      <Message Condition="'$(Configuration)'=='Debug_Broadway'">Copying demos.h from 
demos.h.win32...</Message>
-      <Command Condition="'$(Configuration)'=='Debug_Broadway'">$(CopyDemosH)</Command>
-      <Outputs 
Condition="'$(Configuration)'=='Debug_Broadway'">..\..\..\demos\gtk-demo\demos.h;%(Outputs)</Outputs>
+      <Message Condition="'$(Configuration)'=='Debug_Vulkan'">Copying demos.h from demos.h.win32...</Message>
+      <Command Condition="'$(Configuration)'=='Debug_Vulkan'">$(CopyDemosH)</Command>
+      <Outputs 
Condition="'$(Configuration)'=='Debug_Vulkan'">..\..\..\demos\gtk-demo\demos.h;%(Outputs)</Outputs>
       <Message Condition="'$(Configuration)'=='Release'">Copying demos.h from demos.h.win32...</Message>
       <Command Condition="'$(Configuration)'=='Release'">$(CopyDemosH)</Command>
       <Outputs Condition="'$(Configuration)'=='Release'">..\..\..\demos\gtk-demo\demos.h;%(Outputs)</Outputs>
-      <Message Condition="'$(Configuration)'=='Release_Broadway'">Copying demos.h from 
demos.h.win32...</Message>
-      <Command Condition="'$(Configuration)'=='Release_Broadway'">$(CopyDemosH)</Command>
-      <Outputs 
Condition="'$(Configuration)'=='Release_Broadway'">..\..\..\demos\gtk-demo\demos.h;%(Outputs)</Outputs>
+      <Message Condition="'$(Configuration)'=='Release_Vulkan'">Copying demos.h from 
demos.h.win32...</Message>
+      <Command Condition="'$(Configuration)'=='Release_Vulkan'">$(CopyDemosH)</Command>
+      <Outputs 
Condition="'$(Configuration)'=='Release_Vulkan'">..\..\..\demos\gtk-demo\demos.h;%(Outputs)</Outputs>
     </CustomBuild>
   </ItemGroup>
   <ItemGroup>
diff --git a/build/win32/vs12/gtk4-prebuild.vcxproj.filters b/build/win32/vs12/gtk4-prebuild.vcxproj.filters
index f97b21d..d776972 100644
--- a/build/win32/vs12/gtk4-prebuild.vcxproj.filters
+++ b/build/win32/vs12/gtk4-prebuild.vcxproj.filters
@@ -9,7 +9,7 @@
   <ItemGroup>
     <CustomBuild Include="..\..\..\config.h.win32"><Filter>Resource Files</Filter></CustomBuild>
     <CustomBuild Include="..\..\..\gdk\gdkconfig.h.win32"><Filter>Resource Files</Filter></CustomBuild>
-    <CustomBuild Include="..\..\..\gdk\gdkconfig.h.win32_broadway"><Filter>Resource 
Files</Filter></CustomBuild>
+    <CustomBuild Include="..\..\..\gdk\gdkconfig.h.win32_vulkan"><Filter>Resource 
Files</Filter></CustomBuild>
     <CustomBuild Include="..\..\..\demos\gtk-demo\demos.h.win32"><Filter>Resource 
Files</Filter></CustomBuild>
   </ItemGroup>
 </Project>
diff --git a/gdk/Makefile.am b/gdk/Makefile.am
index 7b69289..f40ffc7 100644
--- a/gdk/Makefile.am
+++ b/gdk/Makefile.am
@@ -24,7 +24,7 @@ EXTRA_DIST +=                         \
        gdkkeynames.c           \
        gen-keyname-table.pl    \
        gdkconfig.h.win32       \
-       gdkconfig.h.win32_broadway      \
+       gdkconfig.h.win32_vulkan        \
        gdkkeysyms-update.pl    \
        gdkmarshalers.list      \
        gdkwindowimpl.h         \
diff --git a/gdk/gdkconfig.h.win32_broadway b/gdk/gdkconfig.h.win32_vulkan
similarity index 90%
rename from gdk/gdkconfig.h.win32_broadway
rename to gdk/gdkconfig.h.win32_vulkan
index 39be5c7..63f83a9 100644
--- a/gdk/gdkconfig.h.win32_broadway
+++ b/gdk/gdkconfig.h.win32_vulkan
@@ -16,7 +16,7 @@ G_BEGIN_DECLS
 
 
 #define GDK_WINDOWING_WIN32
-/* #define GDK_WINDOWING_BROADWAY */
+#define GDK_RENDERING_VULKAN
 
 G_END_DECLS
 


[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]