fix issues when openvulkano is linked as library

This commit is contained in:
ohyzha
2024-09-23 15:59:23 +03:00
parent b7f640fe53
commit 69f07f09f9
6 changed files with 41 additions and 29 deletions

View File

@@ -6,10 +6,14 @@ if ("${BASH_EXECUTABLE}" STREQUAL "")
find_program(BASH_PROGRAM bash NO_CACHE REQUIRED)
set(BASH_EXECUTABLE ${BASH_PROGRAM} CACHE FILEPATH "Path to bash executable" FORCE)
endif()
set(ROOT_FOLDER ${CMAKE_SOURCE_DIR})
set(SHADER_OUTPUT_DEST ${CMAKE_BINARY_DIR}/GeneratedShaderData)
configure_file(${CMAKE_SOURCE_DIR}/cmake/TryCompileShaders.cmake.in ${CMAKE_BINARY_DIR}/TryCompileShaders.cmake @ONLY)
execute_process(COMMAND ${BASH_EXECUTABLE} CompileShaders.sh "${SHADER_OUTPUT_DEST}" WORKING_DIRECTORY ${CMAKE_SOURCE_DIR}/Scripts)
# go from openVulkano/OpenVulkanoCpp to openVulkano
cmake_path(GET CMAKE_CURRENT_SOURCE_DIR PARENT_PATH ROOT_FOLDER)
set(SCRIPT_FOLDER "${ROOT_FOLDER}/Scripts")
set(SHADER_OUTPUT_DEST "${CMAKE_CURRENT_BINARY_DIR}/GeneratedShaderData")
set(SHADER_FILES_LOCATION "${CMAKE_CURRENT_SOURCE_DIR}/Shader")
set(UNIQUE_ENTRY_NAME "OpenVulkano")
configure_file(${ROOT_FOLDER}/cmake/TryCompileShaders.cmake.in ${CMAKE_CURRENT_BINARY_DIR}/TryCompileShaders.cmake @ONLY)
execute_process(COMMAND ${BASH_EXECUTABLE} CompileShaders.sh ${SHADER_OUTPUT_DEST} "${CMAKE_CURRENT_SOURCE_DIR}/Shader" ${UNIQUE_ENTRY_NAME} WORKING_DIRECTORY ${SCRIPT_FOLDER})
file(GLOB GENERATED_SHADER_SOURCES "${SHADER_OUTPUT_DEST}/*")
file(GLOB_RECURSE sources CONFIGURE_DEPENDS "${CMAKE_CURRENT_SOURCE_DIR}/*.h" "${CMAKE_CURRENT_SOURCE_DIR}/*.c" "${CMAKE_CURRENT_SOURCE_DIR}/*.hpp" "${CMAKE_CURRENT_SOURCE_DIR}/*.cpp")