From c1495170fe9bcc33e732cf5148303c0d8a4a2262 Mon Sep 17 00:00:00 2001 From: Skyth <19259897+blueskythlikesclouds@users.noreply.github.com> Date: Tue, 29 Oct 2024 20:27:12 +0300 Subject: [PATCH] Make shader recompilation depend on ShaderRecomp source files. --- UnleashedRecompLib/CMakeLists.txt | 13 +++++++++++-- thirdparty/ShaderRecomp | 2 +- 2 files changed, 12 insertions(+), 3 deletions(-) diff --git a/UnleashedRecompLib/CMakeLists.txt b/UnleashedRecompLib/CMakeLists.txt index 8aeaaaa..6303257 100644 --- a/UnleashedRecompLib/CMakeLists.txt +++ b/UnleashedRecompLib/CMakeLists.txt @@ -22,18 +22,27 @@ endforeach() add_custom_command( OUTPUT ${SWA_PPC_RECOMPILED_SOURCES} COMMAND PowerRecomp - DEPENDS "${CMAKE_CURRENT_SOURCE_DIR}/config/SWA.toml" + DEPENDS "${CMAKE_CURRENT_SOURCE_DIR}/private/default.xex" "${CMAKE_CURRENT_SOURCE_DIR}/config/SWA.toml" ) +set(SHADER_RECOMP_ROOT "${SWA_THIRDPARTY_ROOT}/ShaderRecomp/ShaderRecomp") +set(SHADER_RECOMP_INCLUDE "${SHADER_RECOMP_ROOT}/shader_common.hlsli") + target_compile_definitions(ShaderRecomp PRIVATE SHADER_RECOMP_INPUT=\"${CMAKE_CURRENT_SOURCE_DIR}/private\" SHADER_RECOMP_OUTPUT=\"${CMAKE_CURRENT_SOURCE_DIR}/shader/shader_cache.cpp\" + SHADER_RECOMP_INCLUDE_INPUT=\"${SHADER_RECOMP_SHADER_INCLUDE}\" +) + +file(GLOB SHADER_RECOMP_SOURCES + "${SHADER_RECOMP_ROOT}/*.h" + "${SHADER_RECOMP_ROOT}/*.cpp" ) add_custom_command( OUTPUT "${CMAKE_CURRENT_SOURCE_DIR}/shader/shader_cache.cpp" COMMAND ShaderRecomp - DEPENDS "${CMAKE_CURRENT_SOURCE_DIR}/private/shader.ar" + DEPENDS "${CMAKE_CURRENT_SOURCE_DIR}/private/shader.ar" ${SHADER_RECOMP_SOURCES} ${SHADER_RECOMP_INCLUDE} ) add_library(UnleashedRecompLib diff --git a/thirdparty/ShaderRecomp b/thirdparty/ShaderRecomp index 5f6a8e6..02967c4 160000 --- a/thirdparty/ShaderRecomp +++ b/thirdparty/ShaderRecomp @@ -1 +1 @@ -Subproject commit 5f6a8e6c2ad2a1dfc94a5196d5437176ea0a78db +Subproject commit 02967c4144e6eeff332c66060e0732934d33d9ce