From b7679addd2c6808527d240ccd9be994bfe3bf99e Mon Sep 17 00:00:00 2001 From: Ray Molenkamp Date: Thu, 9 Mar 2023 08:41:17 -0700 Subject: [PATCH] cmake/win32: Fix building with WITH_VULKAN_BACKEND The shader libraries were not hooked up yet in cmake for windows since when the shaderc libs landed there was no code yet that used it. It's required now, so this change adds the missing bits. --- build_files/cmake/platform/platform_win32.cmake | 17 +++++++++++++++++ source/creator/CMakeLists.txt | 10 ++++++++++ 2 files changed, 27 insertions(+) diff --git a/build_files/cmake/platform/platform_win32.cmake b/build_files/cmake/platform/platform_win32.cmake index e52d2be3b34..fc1dcfc6803 100644 --- a/build_files/cmake/platform/platform_win32.cmake +++ b/build_files/cmake/platform/platform_win32.cmake @@ -993,6 +993,23 @@ if(WITH_VULKAN_BACKEND) endif() endif() +if(WITH_VULKAN_BACKEND) + if(EXISTS ${LIBDIR}/shaderc) + set(SHADERC_FOUND On) + set(SHADERC_ROOT_DIR ${LIBDIR}/shaderc) + set(SHADERC_INCLUDE_DIR ${SHADERC_ROOT_DIR}/include) + set(SHADERC_INCLUDE_DIRS ${SHADERC_INCLUDE_DIR}) + set(SHADERC_LIBRARY + DEBUG ${SHADERC_ROOT_DIR}/lib/shaderc_shared_d.lib + OPTIMIZED ${SHADERC_ROOT_DIR}/lib/shaderc_shared.lib + ) + set(SHADERC_LIBRARIES ${SHADERC_LIBRARY}) + else() + message(WARNING "Shaderc was not found, disabling WITH_VULKAN_BACKEND") + set(WITH_VULKAN_BACKEND OFF) + endif() +endif() + if(WITH_CYCLES AND WITH_CYCLES_PATH_GUIDING) find_package(openpgl QUIET) if(openpgl_FOUND) diff --git a/source/creator/CMakeLists.txt b/source/creator/CMakeLists.txt index ee09ce3374e..33dba24170a 100644 --- a/source/creator/CMakeLists.txt +++ b/source/creator/CMakeLists.txt @@ -1217,6 +1217,16 @@ elseif(WIN32) ALL ) + windows_install_shared_manifest( + FILES ${LIBDIR}/shaderc/bin/shaderc_shared.dll + RELEASE + ) + + windows_install_shared_manifest( + FILES ${LIBDIR}/shaderc/bin/shaderc_shared_d.dll + DEBUG + ) + windows_install_shared_manifest( FILES ${LIBDIR}/openal/lib/OpenAL32.dll