Skip to content
Snippets Groups Projects
Verified Commit 691addba authored by Tobias Frisch's avatar Tobias Frisch
Browse files

Add basic cmake configuration for slang

parent c6b25451
No related branches found
No related tags found
No related merge requests found
This commit is part of merge request !115. Comments created here will be created in the context of that merge request.
......@@ -36,6 +36,9 @@ set(vkcv_shader_compiler_lib_path ${PROJECT_SOURCE_DIR}/${vkcv_shader_compiler_l
# Check and load GLSLANG
include(config/GLSLANG.cmake)
# Check and load SLANG
include(config/SLANG.cmake)
# link the required libraries to the module
target_link_libraries(vkcv_shader_compiler ${vkcv_shader_compiler_libraries} vkcv)
......
use_git_submodule("${vkcv_shader_compiler_lib_path}/slang" slang_status)
if (${slang_status})
add_subdirectory(config/slang)
list(APPEND vkcv_shader_compiler_libraries slang)
list(APPEND vkcv_shader_compiler_includes ${vkcv_shader_compiler_lib})
endif ()
cmake_minimum_required(VERSION 3.9)
project(slang)
# settings c++ standard for slang
set(CMAKE_CXX_STANDARD 20)
set(CMAKE_CXX_STANDARD_REQUIRED ON)
find_package(Vulkan REQUIRED)
set(slang_base external/source/base)
set(slang_dir ../../${vkcv_shader_compiler_lib}/slang)
set(slang_source ${slang_dir}/source)
set(slang_source_compiler_core ${slang_source}/compiler-core)
set(slang_source_core ${slang_source}/core)
set(slang_source_slang ${slang_source}/slang)
file(GLOB slang_sources
${slang_source_compiler_core}/*.cpp
${slang_source_core}/*.cpp
${slang_source_slang}/*.cpp
)
if (${VMA_STATIC_VULKAN_FUNCTIONS})
add_library(slang STATIC ${slang_sources})
else()
add_library(slang SHARED ${slang_sources})
endif()
set_target_properties(
slang PROPERTIES
CXX_EXTENSIONS OFF
CXX_STANDARD ${CMAKE_CXX_STANDARD}
CXX_STANDARD_REQUIRED ON
)
target_include_directories(slang PUBLIC ${slang_base} ${slang_source})
# Only link to Vulkan if static linking is used
if (NOT ${VMA_DYNAMIC_VULKAN_FUNCTIONS})
target_link_libraries(slang PUBLIC Vulkan::Vulkan)
endif()
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment