summaryrefslogtreecommitdiffstats
path: root/Graphics/GraphicsEngineVulkan
diff options
context:
space:
mode:
authorazhirnov <zh1dron@gmail.com>2020-09-01 18:24:44 +0000
committerazhirnov <zh1dron@gmail.com>2020-09-01 18:24:44 +0000
commitf74b374c22a3fd411ef5c7b39297296f6d0aa041 (patch)
treef8671e2512f47b0c6ddb479d8af83b354c51c8b3 /Graphics/GraphicsEngineVulkan
parentvalidate included file name (fix for samples) (diff)
downloadDiligentCore-f74b374c22a3fd411ef5c7b39297296f6d0aa041.tar.gz
DiligentCore-f74b374c22a3fd411ef5c7b39297296f6d0aa041.zip
fixed compilation on linux & android
Diffstat (limited to 'Graphics/GraphicsEngineVulkan')
-rw-r--r--Graphics/GraphicsEngineVulkan/CMakeLists.txt9
-rw-r--r--Graphics/GraphicsEngineVulkan/src/ShaderVkImpl.cpp6
2 files changed, 12 insertions, 3 deletions
diff --git a/Graphics/GraphicsEngineVulkan/CMakeLists.txt b/Graphics/GraphicsEngineVulkan/CMakeLists.txt
index 4d4e495b..896d91f1 100644
--- a/Graphics/GraphicsEngineVulkan/CMakeLists.txt
+++ b/Graphics/GraphicsEngineVulkan/CMakeLists.txt
@@ -179,9 +179,12 @@ set(PRIVATE_DEPENDENCIES
Diligent-TargetPlatform
Diligent-GraphicsEngineNextGenBase
Diligent-GLSLTools
- Diligent-HLSLTools
)
+if(NOT ${DILIGENT_NO_VK_DXIL})
+ list(APPEND PRIVATE_DEPENDENCIES Diligent-HLSLTools)
+endif()
+
if (${DILIGENT_NO_HLSL})
message("HLSL support is disabled. Vulkan backend may not be able to consume SPIRV bytecode generated from HLSL.")
else()
@@ -226,7 +229,8 @@ if(NOT Vulkan_FOUND)
endif()
endif()
endif()
-if(EXISTS ${Vulkan_BINARY})
+
+if(NOT ${DILIGENT_NO_VK_DXIL} AND EXISTS ${Vulkan_BINARY})
set(DILIGENT_HAS_VK_DXIL_COMPILER TRUE CACHE INTERNAL "" FORCE)
set(DXC_VK_COMPILER_PATH "${Vulkan_BINARY}" CACHE INTERNAL "" FORCE)
target_compile_definitions(Diligent-GraphicsEngineVk-static PRIVATE DILIGENT_HAS_VK_DXIL_COMPILER)
@@ -249,6 +253,7 @@ elseif(PLATFORM_IOS)
list(APPEND PRIVATE_DEPENDENCIES ${CORE_GRAPHICS} ${METAL_LIBRARY} ${QUARTZ_CORE} ${UI_KIT})
elseif(PLATFORM_LINUX)
# Use Volk
+ list(APPEND PRIVATE_DEPENDENCIES dl)
elseif(PLATFORM_ANDROID)
# Use Volk
else()
diff --git a/Graphics/GraphicsEngineVulkan/src/ShaderVkImpl.cpp b/Graphics/GraphicsEngineVulkan/src/ShaderVkImpl.cpp
index 554d9b73..41ecaaa9 100644
--- a/Graphics/GraphicsEngineVulkan/src/ShaderVkImpl.cpp
+++ b/Graphics/GraphicsEngineVulkan/src/ShaderVkImpl.cpp
@@ -37,7 +37,9 @@
#if !DILIGENT_NO_GLSLANG
# include "SPIRVUtils.hpp"
#endif
-#include "DXILUtils.hpp"
+#ifdef DILIGENT_HAS_VK_DXIL_COMPILER
+# include "DXILUtils.hpp"
+#endif
namespace Diligent
{
@@ -66,9 +68,11 @@ ShaderVkImpl::ShaderVkImpl(IReferenceCounters* pRefCounters,
switch (CreationAttribs.ShaderCompiler)
{
+#ifdef DILIGENT_HAS_VK_DXIL_COMPILER
case SHADER_COMPILER_DXC:
m_SPIRV = DXILtoSPIRV(CreationAttribs, VulkanDefine, CreationAttribs.ppCompilerOutput);
break;
+#endif
case SHADER_COMPILER_DEFAULT:
case SHADER_COMPILER_GLSLANG: