From d12380f26be749e02f7632ea499e28d1be039406 Mon Sep 17 00:00:00 2001 From: iwubcode Date: Fri, 23 Oct 2020 16:51:10 -0500 Subject: [PATCH 1/6] VideoCommon: rename USE_VULKAN to HAS_VULKAN in VideoBackendBase --- Source/Core/VideoCommon/VideoBackendBase.cpp | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/Source/Core/VideoCommon/VideoBackendBase.cpp b/Source/Core/VideoCommon/VideoBackendBase.cpp index 690745f9c8..3042d1f09f 100644 --- a/Source/Core/VideoCommon/VideoBackendBase.cpp +++ b/Source/Core/VideoCommon/VideoBackendBase.cpp @@ -37,7 +37,9 @@ #include "VideoBackends/OGL/VideoBackend.h" #include "VideoBackends/Software/VideoBackend.h" #endif +#ifdef HAS_VULKAN #include "VideoBackends/Vulkan/VideoBackend.h" +#endif #include "VideoCommon/AsyncRequests.h" #include "VideoCommon/BPStructs.h" @@ -225,7 +227,7 @@ const std::vector>& VideoBackendBase::GetAvail backends.push_back(std::make_unique()); backends.push_back(std::make_unique()); #endif -#ifdef USE_VULKAN +#ifdef HAS_VULKAN backends.push_back(std::make_unique()); #endif #ifdef HAS_OPENGL From 272717b3f48d0f846b06991c0312a73d9d3263ad Mon Sep 17 00:00:00 2001 From: iwubcode Date: Fri, 23 Oct 2020 16:51:40 -0500 Subject: [PATCH 2/6] VideoCommon: update vcproj file to set HAS_VULKAN --- Source/Core/VideoCommon/VideoCommon.vcxproj | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/Source/Core/VideoCommon/VideoCommon.vcxproj b/Source/Core/VideoCommon/VideoCommon.vcxproj index 53842ece7d..62f85a0c6e 100644 --- a/Source/Core/VideoCommon/VideoCommon.vcxproj +++ b/Source/Core/VideoCommon/VideoCommon.vcxproj @@ -15,6 +15,11 @@ + + + HAS_VULKAN;%(PreprocessorDefinitions) + + @@ -191,4 +196,4 @@ - + \ No newline at end of file From a34745926e101f76e4ee0e811b7811d951782418 Mon Sep 17 00:00:00 2001 From: iwubcode Date: Fri, 23 Oct 2020 16:52:53 -0500 Subject: [PATCH 3/6] VideoCommon: remove HAS_OPENGL from VideoBackendBase --- Source/Core/VideoCommon/VideoBackendBase.cpp | 5 ----- 1 file changed, 5 deletions(-) diff --git a/Source/Core/VideoCommon/VideoBackendBase.cpp b/Source/Core/VideoCommon/VideoBackendBase.cpp index 3042d1f09f..c4c26ed6a3 100644 --- a/Source/Core/VideoCommon/VideoBackendBase.cpp +++ b/Source/Core/VideoCommon/VideoBackendBase.cpp @@ -22,11 +22,6 @@ #include "Core/ConfigManager.h" #include "Core/Core.h" -// OpenGL is not available on Windows-on-ARM64 -#if !defined(_WIN32) || !defined(_M_ARM64) -#define HAS_OPENGL 1 -#endif - // TODO: ugly #ifdef _WIN32 #include "VideoBackends/D3D/VideoBackend.h" From 8a4773bc9144f265d4493edc6fdab7066616cbdd Mon Sep 17 00:00:00 2001 From: iwubcode Date: Fri, 23 Oct 2020 16:53:28 -0500 Subject: [PATCH 4/6] VideoCommon: update vcproj file to set HAS_OPENGL --- Source/Core/VideoCommon/VideoCommon.vcxproj | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/Source/Core/VideoCommon/VideoCommon.vcxproj b/Source/Core/VideoCommon/VideoCommon.vcxproj index 62f85a0c6e..bd144ae0f6 100644 --- a/Source/Core/VideoCommon/VideoCommon.vcxproj +++ b/Source/Core/VideoCommon/VideoCommon.vcxproj @@ -15,6 +15,11 @@ + + + HAS_OPENGL;%(PreprocessorDefinitions) + + HAS_VULKAN;%(PreprocessorDefinitions) From 22b0d105686c7cd600d7e3bc49eaf199393f40c4 Mon Sep 17 00:00:00 2001 From: iwubcode Date: Fri, 23 Oct 2020 16:48:37 -0500 Subject: [PATCH 5/6] CMake: Set HAS_OPENGL for every system other than arm64 --- CMakeLists.txt | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) diff --git a/CMakeLists.txt b/CMakeLists.txt index fdccd03027..b4b9370e28 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -115,8 +115,8 @@ set(CMAKE_RUNTIME_OUTPUT_DIRECTORY ${CMAKE_BINARY_DIR}/Binaries) if (WIN32) set(CMAKE_RUNTIME_OUTPUT_DIRECTORY ${CMAKE_SOURCE_DIR}/Binary) - if (CMAKE_SYSTEM_PROCESSOR STREQUAL "aarch64") - string(APPEND CMAKE_RUNTIME_OUTPUT_DIRECTORY /ARM64) + if (CMAKE_SYSTEM_PROCESSOR STREQUAL "aarch64") + string(APPEND CMAKE_RUNTIME_OUTPUT_DIRECTORY /ARM64) endif() set(CMAKE_RUNTIME_OUTPUT_DIRECTORY_DEBUG ${CMAKE_RUNTIME_OUTPUT_DIRECTORY}) @@ -560,6 +560,11 @@ if(ENABLE_VULKAN) add_definitions(-DUSE_VULKAN) endif() +if(NOT WIN32 OR (NOT (CMAKE_SYSTEM_PROCESSOR STREQUAL "aarch64"))) + # OpenGL is available on all platforms except windows-arm64 + add_definitions(-DHAS_OPENGL) +endif() + find_package(pugixml) if(NOT pugixml_FOUND) check_vendoring_approved(pugixml) From 02c32420787eff4c4d52ac9bb161368f85261438 Mon Sep 17 00:00:00 2001 From: iwubcode Date: Fri, 23 Oct 2020 16:47:39 -0500 Subject: [PATCH 6/6] CMake: Change "USE_VULKAN" to "HAS_VULKAN" --- CMakeLists.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/CMakeLists.txt b/CMakeLists.txt index b4b9370e28..99323807a9 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -557,7 +557,7 @@ add_subdirectory(Externals/imgui) add_subdirectory(Externals/glslang) if(ENABLE_VULKAN) - add_definitions(-DUSE_VULKAN) + add_definitions(-DHAS_VULKAN) endif() if(NOT WIN32 OR (NOT (CMAKE_SYSTEM_PROCESSOR STREQUAL "aarch64")))