diff --git a/dep/CMakeLists.txt b/dep/CMakeLists.txt index 8a49fc272..f2307edf5 100644 --- a/dep/CMakeLists.txt +++ b/dep/CMakeLists.txt @@ -8,7 +8,6 @@ add_subdirectory(libchdr) add_subdirectory(xxhash) add_subdirectory(rapidjson) add_subdirectory(glslang) -add_subdirectory(vulkan-loader) add_subdirectory(imgui) add_subdirectory(simpleini) diff --git a/dep/vulkan-loader/CMakeLists.txt b/dep/vulkan-loader/CMakeLists.txt deleted file mode 100644 index baf945a9d..000000000 --- a/dep/vulkan-loader/CMakeLists.txt +++ /dev/null @@ -1,37 +0,0 @@ -set(SRCS - include/vulkan_entry_points.h - include/vulkan_loader.h - include/vulkan/vulkan_android.h - include/vulkan/vulkan_win32.h - include/vulkan/vk_layer.h - include/vulkan/vulkan.h - include/vulkan/vulkan_metal.h - include/vulkan/vulkan_core.h - include/vulkan/vulkan_fuchsia.h - include/vulkan/vulkan_xlib_xrandr.h - include/vulkan/vk_sdk_platform.h - include/vulkan/vulkan_xlib.h - include/vulkan/vulkan_ios.h - include/vulkan/vk_platform.h - include/vulkan/vulkan_ggp.h - include/vulkan/vulkan_wayland.h - include/vulkan/vulkan_xcb.h - include/vulkan/vulkan_vi.h - include/vulkan/vulkan_beta.h - include/vulkan/vk_icd.h - include/vulkan/vulkan_macos.h - src/vulkan_loader.cpp -) - -add_library(vulkan-loader ${SRCS}) -target_include_directories(vulkan-loader PUBLIC "${CMAKE_CURRENT_SOURCE_DIR}/include") -target_link_libraries(vulkan-loader PRIVATE ${CMAKE_DL_LIBS}) - -if(USE_X11) - target_compile_definitions(vulkan-loader PUBLIC "VULKAN_USE_X11=1") - target_include_directories(vulkan-loader PUBLIC "${X11_INCLUDE_DIR}") -endif() - -if(USE_WAYLAND) - target_compile_definitions(vulkan-loader PUBLIC "VULKAN_USE_WAYLAND=1") -endif() diff --git a/dep/vulkan-loader/vulkan-loader.vcxproj b/dep/vulkan-loader/vulkan-loader.vcxproj deleted file mode 100644 index c515601a1..000000000 --- a/dep/vulkan-loader/vulkan-loader.vcxproj +++ /dev/null @@ -1,48 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - {9C8DDEB0-2B8F-4F5F-BA86-127CDF27F035} - - - - - - - $(ProjectDir)\include;%(AdditionalIncludeDirectories) - - - - - \ No newline at end of file diff --git a/dep/vulkan-loader/vulkan-loader.vcxproj.filters b/dep/vulkan-loader/vulkan-loader.vcxproj.filters deleted file mode 100644 index 72b7cca37..000000000 --- a/dep/vulkan-loader/vulkan-loader.vcxproj.filters +++ /dev/null @@ -1,75 +0,0 @@ - - - - - - vulkan - - - vulkan - - - vulkan - - - vulkan - - - vulkan - - - vulkan - - - vulkan - - - vulkan - - - vulkan - - - vulkan - - - vulkan - - - vulkan - - - vulkan - - - vulkan - - - vulkan - - - vulkan - - - vulkan - - - vulkan - - - vulkan - - - - - - {b9d919db-dff6-4d4e-b6fa-36ecaa507aea} - - - - - - - - - \ No newline at end of file diff --git a/dep/vulkan-loader/include/vulkan/vk_icd.h b/dep/vulkan/include/vulkan/vk_icd.h similarity index 100% rename from dep/vulkan-loader/include/vulkan/vk_icd.h rename to dep/vulkan/include/vulkan/vk_icd.h diff --git a/dep/vulkan-loader/include/vulkan/vk_layer.h b/dep/vulkan/include/vulkan/vk_layer.h similarity index 100% rename from dep/vulkan-loader/include/vulkan/vk_layer.h rename to dep/vulkan/include/vulkan/vk_layer.h diff --git a/dep/vulkan-loader/include/vulkan/vk_platform.h b/dep/vulkan/include/vulkan/vk_platform.h similarity index 100% rename from dep/vulkan-loader/include/vulkan/vk_platform.h rename to dep/vulkan/include/vulkan/vk_platform.h diff --git a/dep/vulkan-loader/include/vulkan/vk_sdk_platform.h b/dep/vulkan/include/vulkan/vk_sdk_platform.h similarity index 100% rename from dep/vulkan-loader/include/vulkan/vk_sdk_platform.h rename to dep/vulkan/include/vulkan/vk_sdk_platform.h diff --git a/dep/vulkan-loader/include/vulkan/vulkan.h b/dep/vulkan/include/vulkan/vulkan.h similarity index 100% rename from dep/vulkan-loader/include/vulkan/vulkan.h rename to dep/vulkan/include/vulkan/vulkan.h diff --git a/dep/vulkan-loader/include/vulkan/vulkan_android.h b/dep/vulkan/include/vulkan/vulkan_android.h similarity index 100% rename from dep/vulkan-loader/include/vulkan/vulkan_android.h rename to dep/vulkan/include/vulkan/vulkan_android.h diff --git a/dep/vulkan-loader/include/vulkan/vulkan_beta.h b/dep/vulkan/include/vulkan/vulkan_beta.h similarity index 100% rename from dep/vulkan-loader/include/vulkan/vulkan_beta.h rename to dep/vulkan/include/vulkan/vulkan_beta.h diff --git a/dep/vulkan-loader/include/vulkan/vulkan_core.h b/dep/vulkan/include/vulkan/vulkan_core.h similarity index 100% rename from dep/vulkan-loader/include/vulkan/vulkan_core.h rename to dep/vulkan/include/vulkan/vulkan_core.h diff --git a/dep/vulkan-loader/include/vulkan/vulkan_fuchsia.h b/dep/vulkan/include/vulkan/vulkan_fuchsia.h similarity index 100% rename from dep/vulkan-loader/include/vulkan/vulkan_fuchsia.h rename to dep/vulkan/include/vulkan/vulkan_fuchsia.h diff --git a/dep/vulkan-loader/include/vulkan/vulkan_ggp.h b/dep/vulkan/include/vulkan/vulkan_ggp.h similarity index 100% rename from dep/vulkan-loader/include/vulkan/vulkan_ggp.h rename to dep/vulkan/include/vulkan/vulkan_ggp.h diff --git a/dep/vulkan-loader/include/vulkan/vulkan_ios.h b/dep/vulkan/include/vulkan/vulkan_ios.h similarity index 100% rename from dep/vulkan-loader/include/vulkan/vulkan_ios.h rename to dep/vulkan/include/vulkan/vulkan_ios.h diff --git a/dep/vulkan-loader/include/vulkan/vulkan_macos.h b/dep/vulkan/include/vulkan/vulkan_macos.h similarity index 100% rename from dep/vulkan-loader/include/vulkan/vulkan_macos.h rename to dep/vulkan/include/vulkan/vulkan_macos.h diff --git a/dep/vulkan-loader/include/vulkan/vulkan_metal.h b/dep/vulkan/include/vulkan/vulkan_metal.h similarity index 100% rename from dep/vulkan-loader/include/vulkan/vulkan_metal.h rename to dep/vulkan/include/vulkan/vulkan_metal.h diff --git a/dep/vulkan-loader/include/vulkan/vulkan_vi.h b/dep/vulkan/include/vulkan/vulkan_vi.h similarity index 100% rename from dep/vulkan-loader/include/vulkan/vulkan_vi.h rename to dep/vulkan/include/vulkan/vulkan_vi.h diff --git a/dep/vulkan-loader/include/vulkan/vulkan_wayland.h b/dep/vulkan/include/vulkan/vulkan_wayland.h similarity index 100% rename from dep/vulkan-loader/include/vulkan/vulkan_wayland.h rename to dep/vulkan/include/vulkan/vulkan_wayland.h diff --git a/dep/vulkan-loader/include/vulkan/vulkan_win32.h b/dep/vulkan/include/vulkan/vulkan_win32.h similarity index 100% rename from dep/vulkan-loader/include/vulkan/vulkan_win32.h rename to dep/vulkan/include/vulkan/vulkan_win32.h diff --git a/dep/vulkan-loader/include/vulkan/vulkan_xcb.h b/dep/vulkan/include/vulkan/vulkan_xcb.h similarity index 100% rename from dep/vulkan-loader/include/vulkan/vulkan_xcb.h rename to dep/vulkan/include/vulkan/vulkan_xcb.h diff --git a/dep/vulkan-loader/include/vulkan/vulkan_xlib.h b/dep/vulkan/include/vulkan/vulkan_xlib.h similarity index 100% rename from dep/vulkan-loader/include/vulkan/vulkan_xlib.h rename to dep/vulkan/include/vulkan/vulkan_xlib.h diff --git a/dep/vulkan-loader/include/vulkan/vulkan_xlib_xrandr.h b/dep/vulkan/include/vulkan/vulkan_xlib_xrandr.h similarity index 100% rename from dep/vulkan-loader/include/vulkan/vulkan_xlib_xrandr.h rename to dep/vulkan/include/vulkan/vulkan_xlib_xrandr.h diff --git a/duckstation.sln b/duckstation.sln index 7a1d8ceb6..dad40ac49 100644 --- a/duckstation.sln +++ b/duckstation.sln @@ -16,7 +16,6 @@ Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "common", "src\common\common {ED601289-AC1A-46B8-A8ED-17DB9EB73423} = {ED601289-AC1A-46B8-A8ED-17DB9EB73423} {425D6C99-D1C8-43C2-B8AC-4D7B1D941017} = {425D6C99-D1C8-43C2-B8AC-4D7B1D941017} {8BDA439C-6358-45FB-9994-2FF083BABE06} = {8BDA439C-6358-45FB-9994-2FF083BABE06} - {9C8DDEB0-2B8F-4F5F-BA86-127CDF27F035} = {9C8DDEB0-2B8F-4F5F-BA86-127CDF27F035} {7FF9FDB9-D504-47DB-A16A-B08071999620} = {7FF9FDB9-D504-47DB-A16A-B08071999620} {39F0ADFF-3A84-470D-9CF0-CA49E164F2F3} = {39F0ADFF-3A84-470D-9CF0-CA49E164F2F3} EndProjectSection @@ -29,7 +28,6 @@ Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "core", "src\core\core.vcxpr {E4357877-D459-45C7-B8F6-DCBB587BB528} = {E4357877-D459-45C7-B8F6-DCBB587BB528} {ED601289-AC1A-46B8-A8ED-17DB9EB73423} = {ED601289-AC1A-46B8-A8ED-17DB9EB73423} {09553C96-9F39-49BF-8AE6-7ACBD07C410C} = {09553C96-9F39-49BF-8AE6-7ACBD07C410C} - {9C8DDEB0-2B8F-4F5F-BA86-127CDF27F035} = {9C8DDEB0-2B8F-4F5F-BA86-127CDF27F035} {7FF9FDB9-D504-47DB-A16A-B08071999620} = {7FF9FDB9-D504-47DB-A16A-B08071999620} {4BA0A6D4-3AE1-42B2-9347-096FD023FF64} = {4BA0A6D4-3AE1-42B2-9347-096FD023FF64} EndProjectSection @@ -84,8 +82,6 @@ Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "discord-rpc", "dep\discord- EndProject Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "glslang", "dep\glslang\glslang.vcxproj", "{7F909E29-4808-4BD9-A60C-56C51A3AAEC2}" EndProject -Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "vulkan-loader", "dep\vulkan-loader\vulkan-loader.vcxproj", "{9C8DDEB0-2B8F-4F5F-BA86-127CDF27F035}" -EndProject Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "updater", "src\updater\updater.vcxproj", "{32EEAF44-57F8-4C6C-A6F0-DE5667123DD5}" EndProject Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "vixl", "dep\vixl\vixl.vcxproj", "{8906836E-F06E-46E8-B11A-74E5E8C7B8FB}" @@ -727,36 +723,6 @@ Global {7F909E29-4808-4BD9-A60C-56C51A3AAEC2}.ReleaseUWP|ARM64.ActiveCfg = ReleaseUWP|ARM64 {7F909E29-4808-4BD9-A60C-56C51A3AAEC2}.ReleaseUWP|x64.ActiveCfg = ReleaseUWP|x64 {7F909E29-4808-4BD9-A60C-56C51A3AAEC2}.ReleaseUWP|x86.ActiveCfg = ReleaseUWP|Win32 - {9C8DDEB0-2B8F-4F5F-BA86-127CDF27F035}.Debug|ARM64.ActiveCfg = Debug|ARM64 - {9C8DDEB0-2B8F-4F5F-BA86-127CDF27F035}.Debug|ARM64.Build.0 = Debug|ARM64 - {9C8DDEB0-2B8F-4F5F-BA86-127CDF27F035}.Debug|x64.ActiveCfg = Debug|x64 - {9C8DDEB0-2B8F-4F5F-BA86-127CDF27F035}.Debug|x64.Build.0 = Debug|x64 - {9C8DDEB0-2B8F-4F5F-BA86-127CDF27F035}.Debug|x86.ActiveCfg = Debug|Win32 - {9C8DDEB0-2B8F-4F5F-BA86-127CDF27F035}.Debug|x86.Build.0 = Debug|Win32 - {9C8DDEB0-2B8F-4F5F-BA86-127CDF27F035}.DebugFast|ARM64.ActiveCfg = DebugFast|ARM64 - {9C8DDEB0-2B8F-4F5F-BA86-127CDF27F035}.DebugFast|ARM64.Build.0 = DebugFast|ARM64 - {9C8DDEB0-2B8F-4F5F-BA86-127CDF27F035}.DebugFast|x64.ActiveCfg = DebugFast|x64 - {9C8DDEB0-2B8F-4F5F-BA86-127CDF27F035}.DebugFast|x64.Build.0 = DebugFast|x64 - {9C8DDEB0-2B8F-4F5F-BA86-127CDF27F035}.DebugFast|x86.ActiveCfg = DebugFast|Win32 - {9C8DDEB0-2B8F-4F5F-BA86-127CDF27F035}.DebugFast|x86.Build.0 = DebugFast|Win32 - {9C8DDEB0-2B8F-4F5F-BA86-127CDF27F035}.DebugUWP|ARM64.ActiveCfg = DebugUWP|ARM64 - {9C8DDEB0-2B8F-4F5F-BA86-127CDF27F035}.DebugUWP|x64.ActiveCfg = DebugUWP|x64 - {9C8DDEB0-2B8F-4F5F-BA86-127CDF27F035}.DebugUWP|x86.ActiveCfg = DebugUWP|Win32 - {9C8DDEB0-2B8F-4F5F-BA86-127CDF27F035}.Release|ARM64.ActiveCfg = Release|ARM64 - {9C8DDEB0-2B8F-4F5F-BA86-127CDF27F035}.Release|ARM64.Build.0 = Release|ARM64 - {9C8DDEB0-2B8F-4F5F-BA86-127CDF27F035}.Release|x64.ActiveCfg = Release|x64 - {9C8DDEB0-2B8F-4F5F-BA86-127CDF27F035}.Release|x64.Build.0 = Release|x64 - {9C8DDEB0-2B8F-4F5F-BA86-127CDF27F035}.Release|x86.ActiveCfg = Release|Win32 - {9C8DDEB0-2B8F-4F5F-BA86-127CDF27F035}.Release|x86.Build.0 = Release|Win32 - {9C8DDEB0-2B8F-4F5F-BA86-127CDF27F035}.ReleaseLTCG|ARM64.ActiveCfg = ReleaseLTCG|ARM64 - {9C8DDEB0-2B8F-4F5F-BA86-127CDF27F035}.ReleaseLTCG|ARM64.Build.0 = ReleaseLTCG|ARM64 - {9C8DDEB0-2B8F-4F5F-BA86-127CDF27F035}.ReleaseLTCG|x64.ActiveCfg = ReleaseLTCG|x64 - {9C8DDEB0-2B8F-4F5F-BA86-127CDF27F035}.ReleaseLTCG|x64.Build.0 = ReleaseLTCG|x64 - {9C8DDEB0-2B8F-4F5F-BA86-127CDF27F035}.ReleaseLTCG|x86.ActiveCfg = ReleaseLTCG|Win32 - {9C8DDEB0-2B8F-4F5F-BA86-127CDF27F035}.ReleaseLTCG|x86.Build.0 = ReleaseLTCG|Win32 - {9C8DDEB0-2B8F-4F5F-BA86-127CDF27F035}.ReleaseUWP|ARM64.ActiveCfg = ReleaseUWP|ARM64 - {9C8DDEB0-2B8F-4F5F-BA86-127CDF27F035}.ReleaseUWP|x64.ActiveCfg = ReleaseUWP|x64 - {9C8DDEB0-2B8F-4F5F-BA86-127CDF27F035}.ReleaseUWP|x86.ActiveCfg = ReleaseUWP|Win32 {32EEAF44-57F8-4C6C-A6F0-DE5667123DD5}.Debug|ARM64.ActiveCfg = Debug|ARM64 {32EEAF44-57F8-4C6C-A6F0-DE5667123DD5}.Debug|ARM64.Build.0 = Debug|ARM64 {32EEAF44-57F8-4C6C-A6F0-DE5667123DD5}.Debug|x64.ActiveCfg = Debug|x64 @@ -1008,7 +974,6 @@ Global {49953E1B-2EF7-46A4-B88B-1BF9E099093B} = {BA490C0E-497D-4634-A21E-E65012006385} {4266505B-DBAF-484B-AB31-B53B9C8235B3} = {BA490C0E-497D-4634-A21E-E65012006385} {7F909E29-4808-4BD9-A60C-56C51A3AAEC2} = {BA490C0E-497D-4634-A21E-E65012006385} - {9C8DDEB0-2B8F-4F5F-BA86-127CDF27F035} = {BA490C0E-497D-4634-A21E-E65012006385} {8906836E-F06E-46E8-B11A-74E5E8C7B8FB} = {BA490C0E-497D-4634-A21E-E65012006385} {39F0ADFF-3A84-470D-9CF0-CA49E164F2F3} = {BA490C0E-497D-4634-A21E-E65012006385} {4BA0A6D4-3AE1-42B2-9347-096FD023FF64} = {BA490C0E-497D-4634-A21E-E65012006385} diff --git a/src/common/CMakeLists.txt b/src/common/CMakeLists.txt index 39ed15183..e4a337309 100644 --- a/src/common/CMakeLists.txt +++ b/src/common/CMakeLists.txt @@ -94,6 +94,8 @@ add_library(common vulkan/builders.h vulkan/context.cpp vulkan/context.h + vulkan/loader.h + vulkan/loader.cpp vulkan/shader_cache.cpp vulkan/shader_cache.h vulkan/shader_compiler.cpp @@ -119,7 +121,7 @@ add_library(common target_include_directories(common PRIVATE "${CMAKE_CURRENT_SOURCE_DIR}/..") target_include_directories(common PUBLIC "${CMAKE_CURRENT_SOURCE_DIR}/..") target_link_libraries(common PUBLIC fmt Threads::Threads) -target_link_libraries(common PRIVATE glad stb libchdr glslang vulkan-loader zlib minizip samplerate) +target_link_libraries(common PRIVATE glad stb libchdr glslang zlib minizip samplerate "${CMAKE_DL_LIBS}") if(WIN32) target_sources(common PRIVATE diff --git a/src/common/common.props b/src/common/common.props index 6e39e69dc..c2bf639de 100644 --- a/src/common/common.props +++ b/src/common/common.props @@ -2,7 +2,7 @@ - $(SolutionDir)dep\fmt\include;$(SolutionDir)dep\libsamplerate\include;$(SolutionDir)dep\glad\include;$(SolutionDir)dep\libcue\include;$(SolutionDir)dep\libchdr\include;$(SolutionDir)dep\stb\include;$(SolutionDir)dep\vulkan-loader\include;$(SolutionDir)dep\glslang;$(SolutionDir)dep\zlib\include;$(SolutionDir)dep\minizip\include;$(SolutionDir)src;%(AdditionalIncludeDirectories) + $(SolutionDir)dep\fmt\include;$(SolutionDir)dep\libsamplerate\include;$(SolutionDir)dep\glad\include;$(SolutionDir)dep\vulkan\include;$(SolutionDir)dep\libcue\include;$(SolutionDir)dep\libchdr\include;$(SolutionDir)dep\stb\include;$(SolutionDir)dep\glslang;$(SolutionDir)dep\zlib\include;$(SolutionDir)dep\minizip\include;$(SolutionDir)src;%(AdditionalIncludeDirectories) diff --git a/src/common/common.vcxproj b/src/common/common.vcxproj index beba97268..91659905a 100644 --- a/src/common/common.vcxproj +++ b/src/common/common.vcxproj @@ -77,6 +77,8 @@ + + @@ -162,6 +164,7 @@ + @@ -179,6 +182,9 @@ + + + {EE054E08-3799-4A59-A422-18259C105FFD} diff --git a/src/common/common.vcxproj.filters b/src/common/common.vcxproj.filters index 4e3e97536..9c6f5ba10 100644 --- a/src/common/common.vcxproj.filters +++ b/src/common/common.vcxproj.filters @@ -137,6 +137,12 @@ + + vulkan + + + vulkan + @@ -270,6 +276,9 @@ + + vulkan + @@ -291,4 +300,9 @@ {358e11c4-34af-4169-9a66-ec66342a6a2f} + + + vulkan + + \ No newline at end of file diff --git a/src/common/vulkan/builders.h b/src/common/vulkan/builders.h index 217e3e7a8..25fe634ee 100644 --- a/src/common/vulkan/builders.h +++ b/src/common/vulkan/builders.h @@ -1,6 +1,6 @@ #pragma once #include "../types.h" -#include "vulkan_loader.h" +#include "loader.h" #include namespace Vulkan { diff --git a/src/common/vulkan/context.h b/src/common/vulkan/context.h index 4b3f28b13..d49e65299 100644 --- a/src/common/vulkan/context.h +++ b/src/common/vulkan/context.h @@ -6,7 +6,7 @@ #pragma once #include "../types.h" -#include "vulkan_loader.h" +#include "loader.h" #include #include #include diff --git a/dep/vulkan-loader/include/vulkan_entry_points.h b/src/common/vulkan/entry_points.h similarity index 99% rename from dep/vulkan-loader/include/vulkan_entry_points.h rename to src/common/vulkan/entry_points.h index dbad499f1..6f584dbb2 100644 --- a/dep/vulkan-loader/include/vulkan_entry_points.h +++ b/src/common/vulkan/entry_points.h @@ -6,7 +6,7 @@ #define VULKAN_INSTANCE_ENTRY_POINT(name, required) extern PFN_##name ds_##name; #define VULKAN_DEVICE_ENTRY_POINT(name, required) extern PFN_##name ds_##name; #define VULKAN_DEFINE_NAME_PREFIX ds_ -#include "vulkan_entry_points.inl" +#include "entry_points.inl" #undef VULKAN_DEFINE_NAME_PREFIX #undef VULKAN_DEVICE_ENTRY_POINT #undef VULKAN_INSTANCE_ENTRY_POINT diff --git a/dep/vulkan-loader/include/vulkan_entry_points.inl b/src/common/vulkan/entry_points.inl similarity index 100% rename from dep/vulkan-loader/include/vulkan_entry_points.inl rename to src/common/vulkan/entry_points.inl diff --git a/dep/vulkan-loader/src/vulkan_loader.cpp b/src/common/vulkan/loader.cpp similarity index 96% rename from dep/vulkan-loader/src/vulkan_loader.cpp rename to src/common/vulkan/loader.cpp index 6d6b1d352..a035f11eb 100644 --- a/dep/vulkan-loader/src/vulkan_loader.cpp +++ b/src/common/vulkan/loader.cpp @@ -10,7 +10,7 @@ #include #include -#include "vulkan_loader.h" +#include "loader.h" #ifndef _WIN32 #include @@ -23,7 +23,7 @@ #define VULKAN_MODULE_ENTRY_POINT(name, required) PFN_##name ds_##name; #define VULKAN_INSTANCE_ENTRY_POINT(name, required) PFN_##name ds_##name; #define VULKAN_DEVICE_ENTRY_POINT(name, required) PFN_##name ds_##name; -#include "vulkan_entry_points.inl" +#include "entry_points.inl" #undef VULKAN_DEVICE_ENTRY_POINT #undef VULKAN_INSTANCE_ENTRY_POINT #undef VULKAN_MODULE_ENTRY_POINT @@ -35,7 +35,7 @@ void ResetVulkanLibraryFunctionPointers() #define VULKAN_MODULE_ENTRY_POINT(name, required) ds_##name = nullptr; #define VULKAN_INSTANCE_ENTRY_POINT(name, required) ds_##name = nullptr; #define VULKAN_DEVICE_ENTRY_POINT(name, required) ds_##name = nullptr; -#include "vulkan_entry_points.inl" +#include "entry_points.inl" #undef VULKAN_DEVICE_ENTRY_POINT #undef VULKAN_INSTANCE_ENTRY_POINT #undef VULKAN_MODULE_ENTRY_POINT @@ -77,7 +77,7 @@ bool LoadVulkanLibrary() }; #define VULKAN_MODULE_ENTRY_POINT(name, required) LoadFunction(reinterpret_cast(&name), #name, required); -#include "vulkan_entry_points.inl" +#include "entry_points.inl" #undef VULKAN_MODULE_ENTRY_POINT if (required_functions_missing) @@ -170,7 +170,7 @@ bool LoadVulkanLibrary() }; #define VULKAN_MODULE_ENTRY_POINT(name, required) LoadFunction(reinterpret_cast(&name), #name, required); -#include "vulkan_entry_points.inl" +#include "entry_points.inl" #undef VULKAN_MODULE_ENTRY_POINT if (required_functions_missing) @@ -211,7 +211,7 @@ bool LoadVulkanInstanceFunctions(VkInstance instance) #define VULKAN_INSTANCE_ENTRY_POINT(name, required) \ LoadFunction(reinterpret_cast(&name), #name, required); -#include "vulkan_entry_points.inl" +#include "entry_points.inl" #undef VULKAN_INSTANCE_ENTRY_POINT return !required_functions_missing; @@ -231,7 +231,7 @@ bool LoadVulkanDeviceFunctions(VkDevice device) #define VULKAN_DEVICE_ENTRY_POINT(name, required) \ LoadFunction(reinterpret_cast(&name), #name, required); -#include "vulkan_entry_points.inl" +#include "entry_points.inl" #undef VULKAN_DEVICE_ENTRY_POINT return !required_functions_missing; diff --git a/dep/vulkan-loader/include/vulkan_loader.h b/src/common/vulkan/loader.h similarity index 79% rename from dep/vulkan-loader/include/vulkan_loader.h rename to src/common/vulkan/loader.h index b2b3fc9ef..3b2848647 100644 --- a/dep/vulkan-loader/include/vulkan_loader.h +++ b/src/common/vulkan/loader.h @@ -12,30 +12,15 @@ #define VK_USE_PLATFORM_WIN32_KHR // vulkan.h pulls in windows.h on Windows, so we need to include our replacement header first -#ifndef WIN32_LEAN_AND_MEAN -#define WIN32_LEAN_AND_MEAN 1 -#endif -#ifndef NOMINMAX -#define NOMINMAX 1 -#endif - -// require vista+ -#ifndef WINAPI_FAMILY -#ifdef _WIN32_WINNT -#undef _WIN32_WINNT -#endif -#define _WIN32_WINNT _WIN32_WINNT_VISTA -#endif - -#include +#include "../windows_headers.h" #endif -#if defined(VULKAN_USE_X11) +#if defined(USE_X11) #define VK_USE_PLATFORM_XLIB_KHR #endif -#if defined(VULKAN_USE_WAYLAND) +#if defined(USE_WAYLAND) #define VK_USE_PLATFORM_WAYLAND_KHR #endif @@ -55,7 +40,7 @@ #define SUPPORTS_VULKAN_EXCLUSIVE_FULLSCREEN 1 #endif -#if defined(VULKAN_USE_X11) +#if defined(USE_X11) // This breaks a bunch of our code. They shouldn't be #defines in the first place. #ifdef None @@ -94,7 +79,7 @@ #endif -#include "vulkan_entry_points.h" +#include "entry_points.h" namespace Vulkan { diff --git a/src/common/vulkan/shader_cache.h b/src/common/vulkan/shader_cache.h index 961272d4c..99f606d72 100644 --- a/src/common/vulkan/shader_cache.h +++ b/src/common/vulkan/shader_cache.h @@ -1,8 +1,8 @@ #pragma once #include "../hash_combine.h" #include "../types.h" +#include "loader.h" #include "shader_compiler.h" -#include "vulkan_loader.h" #include #include #include diff --git a/src/common/vulkan/staging_buffer.h b/src/common/vulkan/staging_buffer.h index 421272e52..f93446047 100644 --- a/src/common/vulkan/staging_buffer.h +++ b/src/common/vulkan/staging_buffer.h @@ -5,7 +5,7 @@ #pragma once #include "../types.h" -#include "vulkan_loader.h" +#include "loader.h" #include namespace Vulkan { diff --git a/src/common/vulkan/stream_buffer.h b/src/common/vulkan/stream_buffer.h index c1895a9fd..bc5935bd0 100644 --- a/src/common/vulkan/stream_buffer.h +++ b/src/common/vulkan/stream_buffer.h @@ -6,7 +6,7 @@ #pragma once #include "../types.h" -#include "vulkan_loader.h" +#include "loader.h" #include #include diff --git a/src/common/vulkan/swap_chain.h b/src/common/vulkan/swap_chain.h index 02360145a..0c8341495 100644 --- a/src/common/vulkan/swap_chain.h +++ b/src/common/vulkan/swap_chain.h @@ -8,7 +8,7 @@ #include "../types.h" #include "../window_info.h" #include "texture.h" -#include "vulkan_loader.h" +#include "loader.h" #include #include diff --git a/src/common/vulkan/texture.h b/src/common/vulkan/texture.h index 179244bce..c8fc6eeee 100644 --- a/src/common/vulkan/texture.h +++ b/src/common/vulkan/texture.h @@ -5,7 +5,7 @@ #pragma once #include "../types.h" -#include "vulkan_loader.h" +#include "loader.h" #include #include diff --git a/src/common/vulkan/util.h b/src/common/vulkan/util.h index d80f20328..969a645c4 100644 --- a/src/common/vulkan/util.h +++ b/src/common/vulkan/util.h @@ -7,7 +7,7 @@ #include "../string.h" #include "../types.h" -#include "vulkan_loader.h" +#include "loader.h" #include #include #include diff --git a/src/core/CMakeLists.txt b/src/core/CMakeLists.txt index 019e0ab6e..0702e882c 100644 --- a/src/core/CMakeLists.txt +++ b/src/core/CMakeLists.txt @@ -120,7 +120,7 @@ set(RECOMPILER_SRCS target_include_directories(core PRIVATE "${CMAKE_CURRENT_SOURCE_DIR}/..") target_include_directories(core PUBLIC "${CMAKE_CURRENT_SOURCE_DIR}/..") -target_link_libraries(core PUBLIC Threads::Threads common zlib vulkan-loader) +target_link_libraries(core PUBLIC Threads::Threads common zlib) target_link_libraries(core PRIVATE glad stb xxhash imgui) if(WIN32) diff --git a/src/core/core.props b/src/core/core.props index 8c27effa8..d917e83c8 100644 --- a/src/core/core.props +++ b/src/core/core.props @@ -9,7 +9,7 @@ WITH_RECOMPILER=1;%(PreprocessorDefinitions) WITH_MMAP_FASTMEM=1;%(PreprocessorDefinitions) - $(SolutionDir)dep\glad\include;$(SolutionDir)dep\stb\include;$(SolutionDir)dep\imgui\include;$(SolutionDir)dep\xxhash\include;$(SolutionDir)dep\zlib\include;$(SolutionDir)dep\vulkan-loader\include;$(SolutionDir)dep\rcheevos\include;$(SolutionDir)dep\rapidjson\include;$(SolutionDir)src;%(AdditionalIncludeDirectories) + $(SolutionDir)dep\glad\include;$(SolutionDir)dep\stb\include;$(SolutionDir)dep\imgui\include;$(SolutionDir)dep\xxhash\include;$(SolutionDir)dep\zlib\include;$(SolutionDir)dep\rcheevos\include;$(SolutionDir)dep\rapidjson\include;$(SolutionDir)src;%(AdditionalIncludeDirectories) $(SolutionDir)dep\rainterface;%(AdditionalIncludeDirectories) $(SolutionDir)dep\xbyak\xbyak;%(AdditionalIncludeDirectories) @@ -19,7 +19,7 @@ - $(RootBuildDir)rcheevos\rcheevos.lib;$(RootBuildDir)imgui\imgui.lib;$(RootBuildDir)stb\stb.lib;$(RootBuildDir)vulkan-loader\vulkan-loader.lib;$(RootBuildDir)xxhash\xxhash.lib;$(RootBuildDir)zlib\zlib.lib;$(RootBuildDir)common\common.lib;%(AdditionalDependencies) + $(RootBuildDir)rcheevos\rcheevos.lib;$(RootBuildDir)imgui\imgui.lib;$(RootBuildDir)stb\stb.lib;$(RootBuildDir)xxhash\xxhash.lib;$(RootBuildDir)zlib\zlib.lib;$(RootBuildDir)common\common.lib;%(AdditionalDependencies) $(RootBuildDir)rainterface\rainterface.lib;%(AdditionalDependencies) $(RootBuildDir)vixl\vixl.lib;%(AdditionalDependencies) diff --git a/src/duckstation-nogui/CMakeLists.txt b/src/duckstation-nogui/CMakeLists.txt index d362c7665..b11cef477 100644 --- a/src/duckstation-nogui/CMakeLists.txt +++ b/src/duckstation-nogui/CMakeLists.txt @@ -4,7 +4,7 @@ add_executable(duckstation-nogui nogui_host_interface.h ) -target_link_libraries(duckstation-nogui PRIVATE core common imgui glad frontend-common scmversion vulkan-loader) +target_link_libraries(duckstation-nogui PRIVATE core common imgui glad frontend-common scmversion) if(USE_SDL2) target_sources(duckstation-nogui PRIVATE diff --git a/src/duckstation-qt/CMakeLists.txt b/src/duckstation-qt/CMakeLists.txt index b54e83051..76a893a87 100644 --- a/src/duckstation-qt/CMakeLists.txt +++ b/src/duckstation-qt/CMakeLists.txt @@ -139,7 +139,7 @@ qt5_add_translation(QM_FILES ${TS_FILES}) add_executable(duckstation-qt ${SRCS} ${QM_FILES}) target_include_directories(duckstation-qt PRIVATE "${Qt5Gui_PRIVATE_INCLUDE_DIRS}") -target_link_libraries(duckstation-qt PRIVATE frontend-common core common imgui glad minizip scmversion vulkan-loader Qt5::Core Qt5::Gui Qt5::Widgets Qt5::Network) +target_link_libraries(duckstation-qt PRIVATE frontend-common core common imgui glad minizip scmversion Qt5::Core Qt5::Gui Qt5::Widgets Qt5::Network) if(WIN32) # We want a Windows subsystem application not console. diff --git a/src/frontend-common/CMakeLists.txt b/src/frontend-common/CMakeLists.txt index 97e67b0c0..4238bc3ff 100644 --- a/src/frontend-common/CMakeLists.txt +++ b/src/frontend-common/CMakeLists.txt @@ -41,7 +41,7 @@ add_library(frontend-common vulkan_host_display.h ) -target_link_libraries(frontend-common PUBLIC core common glad vulkan-loader cubeb imgui simpleini tinyxml2 rapidjson scmversion) +target_link_libraries(frontend-common PUBLIC core common glad cubeb imgui simpleini tinyxml2 rapidjson scmversion) if(WIN32) target_sources(frontend-common PRIVATE diff --git a/src/frontend-common/frontend-common.props b/src/frontend-common/frontend-common.props index 251cc5c98..f55b5bdba 100644 --- a/src/frontend-common/frontend-common.props +++ b/src/frontend-common/frontend-common.props @@ -4,7 +4,7 @@ - $(SolutionDir)dep\simpleini\include;$(SolutionDir)dep\tinyxml2\include;$(SolutionDir)dep\glad\include;$(SolutionDir)dep\vulkan-loader\include;$(SolutionDir)src;%(AdditionalIncludeDirectories) + $(SolutionDir)dep\simpleini\include;$(SolutionDir)dep\tinyxml2\include;$(SolutionDir)src;%(AdditionalIncludeDirectories) $(RootBuildDir)simpleini\simpleini.lib;$(RootBuildDir)tinyxml2\tinyxml2.lib;$(RootBuildDir)core\core.lib;$(RootBuildDir)scmversion\scmversion.lib;%(AdditionalDependencies) diff --git a/src/frontend-common/imgui_impl_vulkan.h b/src/frontend-common/imgui_impl_vulkan.h index 747037b17..173bdcbef 100644 --- a/src/frontend-common/imgui_impl_vulkan.h +++ b/src/frontend-common/imgui_impl_vulkan.h @@ -22,7 +22,7 @@ #pragma once -#include "vulkan_loader.h" +#include "common/vulkan/loader.h" // Initialization data, for ImGui_ImplVulkan_Init() // [Please zero-clear before use!] diff --git a/src/frontend-common/vulkan_host_display.h b/src/frontend-common/vulkan_host_display.h index 9edd12b11..c7639cd70 100644 --- a/src/frontend-common/vulkan_host_display.h +++ b/src/frontend-common/vulkan_host_display.h @@ -1,11 +1,11 @@ #pragma once +#include "common/vulkan/loader.h" #include "common/vulkan/staging_texture.h" #include "common/vulkan/stream_buffer.h" #include "common/vulkan/swap_chain.h" #include "common/window_info.h" #include "core/host_display.h" #include "postprocessing_chain.h" -#include "vulkan_loader.h" #include #include @@ -30,9 +30,9 @@ public: bool HasRenderSurface() const override; bool CreateRenderDevice(const WindowInfo& wi, std::string_view adapter_name, bool debug_device, - bool threaded_presentation) override; + bool threaded_presentation) override; bool InitializeRenderDevice(std::string_view shader_cache_directory, bool debug_device, - bool threaded_presentation) override; + bool threaded_presentation) override; void DestroyRenderDevice() override; bool MakeRenderContextCurrent() override; @@ -65,7 +65,7 @@ public: bool Render() override; bool RenderScreenshot(u32 width, u32 height, std::vector* out_pixels, u32* out_stride, - HostDisplayPixelFormat* out_format) override; + HostDisplayPixelFormat* out_format) override; static AdapterAndModeList StaticGetAdapterAndModeList(const WindowInfo* wi);