diff --git a/CMakeModules/DuckStationDependencies.cmake b/CMakeModules/DuckStationDependencies.cmake index 13db26a60..621b31aad 100644 --- a/CMakeModules/DuckStationDependencies.cmake +++ b/CMakeModules/DuckStationDependencies.cmake @@ -43,6 +43,7 @@ if(ENABLE_VULKAN) if(LINUX) # We need to add the rpath for shaderc to the executable. + get_target_property(SHADERC_LIBRARY Shaderc::shaderc_shared IMPORTED_LOCATION) get_filename_component(SHADERC_LIBRARY_DIRECTORY ${SHADERC_LIBRARY} DIRECTORY) list(APPEND CMAKE_BUILD_RPATH ${SHADERC_LIBRARY_DIRECTORY}) get_target_property(SPIRV_CROSS_LIBRARY spirv-cross-c-shared IMPORTED_LOCATION) diff --git a/CMakeModules/FindShaderc.cmake b/CMakeModules/FindShaderc.cmake deleted file mode 100644 index 760184aa0..000000000 --- a/CMakeModules/FindShaderc.cmake +++ /dev/null @@ -1,31 +0,0 @@ -# - Try to find SHADERC -# Once done this will define -# SHADERC_FOUND - System has SHADERC -# SHADERC_INCLUDE_DIRS - The SHADERC include directories -# SHADERC_LIBRARIES - The libraries needed to use SHADERC - -find_path( - SHADERC_INCLUDE_DIR shaderc/shaderc.h - ${SHADERC_PATH_INCLUDES} -) - -find_library( - SHADERC_LIBRARY - NAMES shaderc_shared.1 shaderc_shared - PATHS ${ADDITIONAL_LIBRARY_PATHS} ${SHADERC_PATH_LIB} -) - -include(FindPackageHandleStandardArgs) -find_package_handle_standard_args(Shaderc DEFAULT_MSG - SHADERC_LIBRARY SHADERC_INCLUDE_DIR) - -if(SHADERC_FOUND) - add_library(Shaderc::shaderc_shared UNKNOWN IMPORTED) - set_target_properties(Shaderc::shaderc_shared PROPERTIES - IMPORTED_LOCATION ${SHADERC_LIBRARY} - INTERFACE_INCLUDE_DIRECTORIES ${SHADERC_INCLUDE_DIR} - INTERFACE_COMPILE_DEFINITIONS "SHADERC_SHAREDLIB" - ) -endif() - -mark_as_advanced(SHADERC_INCLUDE_DIR SHADERC_LIBRARY) diff --git a/scripts/deps/build-dependencies-linux.sh b/scripts/deps/build-dependencies-linux.sh index 3566efc1c..d883ec0da 100755 --- a/scripts/deps/build-dependencies-linux.sh +++ b/scripts/deps/build-dependencies-linux.sh @@ -24,7 +24,7 @@ ZSTD=1.5.6 CPUINFO=7524ad504fdcfcf75a18a133da6abd75c5d48053 DISCORD_RPC=144f3a3f1209994d8d9e8a87964a989cb9911c1e -SHADERC=feb2460bf3a504d67011246edeb810c45ea58826 +SHADERC=f60bb80e255144e71776e2ad570d89b78ea2ab4f SOUNDTOUCH=463ade388f3a51da078dc9ed062bf28e4ba29da7 SPIRV_CROSS=vulkan-sdk-1.3.290.0 @@ -46,7 +46,7 @@ fb0d1286a35be3583fee34aeb5843c94719e07193bdf1d4d8b0dc14009caef01 qtsvg-everywhe a2a057e1dd644bd44abb9990fecc194b2e25c2e0f39e81aa9fee4c1e5e2a8a5b qtwayland-everywhere-src-$QT.tar.xz e1351218d270db49c3dddcba04fb2153b09731ea3fa6830e423f5952f44585be cpuinfo-$CPUINFO.tar.gz 3eea5ccce6670c126282f1ba4d32c19d486db49a1a5cbfb8d6f48774784d310c discord-rpc-$DISCORD_RPC.tar.gz -5a7f86eba3c6301bb573def825977c31aa3d5fc5500f213c123498707fdbd378 shaderc-$SHADERC.tar.gz +4c1780b6c65c27c4dcb109f08ab632241c98b77fe2e22be726c151ff514482bf shaderc-$SHADERC.tar.gz fe45c2af99f6102d2704277d392c1c83b55180a70bfd17fb888cc84a54b70573 soundtouch-$SOUNDTOUCH.tar.gz EOF diff --git a/scripts/deps/build-dependencies-mac.sh b/scripts/deps/build-dependencies-mac.sh index 5ebfbe890..4e8bc966b 100755 --- a/scripts/deps/build-dependencies-mac.sh +++ b/scripts/deps/build-dependencies-mac.sh @@ -47,7 +47,7 @@ QT=6.7.2 CPUINFO=7524ad504fdcfcf75a18a133da6abd75c5d48053 DISCORD_RPC=144f3a3f1209994d8d9e8a87964a989cb9911c1e -SHADERC=feb2460bf3a504d67011246edeb810c45ea58826 +SHADERC=f60bb80e255144e71776e2ad570d89b78ea2ab4f SOUNDTOUCH=463ade388f3a51da078dc9ed062bf28e4ba29da7 SPIRV_CROSS=vulkan-sdk-1.3.290.0 @@ -86,7 +86,7 @@ fb0d1286a35be3583fee34aeb5843c94719e07193bdf1d4d8b0dc14009caef01 qtsvg-everywhe 9845780b5dc1b7279d57836db51aeaf2e4a1160c42be09750616f39157582ca9 qttranslations-everywhere-src-$QT.tar.xz e1351218d270db49c3dddcba04fb2153b09731ea3fa6830e423f5952f44585be cpuinfo-$CPUINFO.tar.gz 3eea5ccce6670c126282f1ba4d32c19d486db49a1a5cbfb8d6f48774784d310c discord-rpc-$DISCORD_RPC.tar.gz -5a7f86eba3c6301bb573def825977c31aa3d5fc5500f213c123498707fdbd378 shaderc-$SHADERC.tar.gz +4c1780b6c65c27c4dcb109f08ab632241c98b77fe2e22be726c151ff514482bf shaderc-$SHADERC.tar.gz fe45c2af99f6102d2704277d392c1c83b55180a70bfd17fb888cc84a54b70573 soundtouch-$SOUNDTOUCH.tar.gz EOF diff --git a/scripts/deps/build-dependencies-windows-arm64.bat b/scripts/deps/build-dependencies-windows-arm64.bat index bd1b97429..d0df3d540 100644 --- a/scripts/deps/build-dependencies-windows-arm64.bat +++ b/scripts/deps/build-dependencies-windows-arm64.bat @@ -56,7 +56,7 @@ set ZSTD=1.5.6 set CPUINFO=7524ad504fdcfcf75a18a133da6abd75c5d48053 set DISCORD_RPC=144f3a3f1209994d8d9e8a87964a989cb9911c1e -set SHADERC=feb2460bf3a504d67011246edeb810c45ea58826 +set SHADERC=f60bb80e255144e71776e2ad570d89b78ea2ab4f set SOUNDTOUCH=463ade388f3a51da078dc9ed062bf28e4ba29da7 set SPIRV_CROSS=vulkan-sdk-1.3.290.0 @@ -77,7 +77,7 @@ call :downloadfile "zstd-fd5f8106a58601a963ee816e6a57aa7c61fafc53.patch" https:/ call :downloadfile "cpuinfo-%CPUINFO%.zip" "https://github.com/pytorch/cpuinfo/archive/%CPUINFO%.zip" 13146ae7983d767a678dd01b0d6af591e77cec82babd41264b9164ab808d7d41 || goto error call :downloadfile "discord-rpc-%DISCORD_RPC%.zip" "https://github.com/stenzek/discord-rpc/archive/%DISCORD_RPC%.zip" 61e185e75d37b360c314125bcdf4697192d15e2d5209db3306ed6cd736d508b3 || goto error -call :downloadfile "shaderc-%SHADERC%.zip" "https://github.com/stenzek/shaderc/archive/%SHADERC%.zip" a50687a3903328976c3a49f6ba6326196f7713660048957eb033408630af70b1 || goto error +call :downloadfile "shaderc-%SHADERC%.zip" "https://github.com/stenzek/shaderc/archive/%SHADERC%.zip" d24760f3c20a0ca39dfa85b84b6cf65eee077cd168e7aa08502e60c168ef05f6 || goto error call :downloadfile "soundtouch-%SOUNDTOUCH%.zip" "https://github.com/stenzek/soundtouch/archive/%SOUNDTOUCH%.zip" 107a1941181a69abe28018b9ad26fc0218625758ac193bc979abc9e26b7c0c3a || goto error if not exist SPIRV-Cross\ ( diff --git a/scripts/deps/build-dependencies-windows-x64.bat b/scripts/deps/build-dependencies-windows-x64.bat index 1be8f625a..d6d8176c5 100644 --- a/scripts/deps/build-dependencies-windows-x64.bat +++ b/scripts/deps/build-dependencies-windows-x64.bat @@ -54,7 +54,7 @@ set ZSTD=1.5.6 set CPUINFO=7524ad504fdcfcf75a18a133da6abd75c5d48053 set DISCORD_RPC=144f3a3f1209994d8d9e8a87964a989cb9911c1e -set SHADERC=feb2460bf3a504d67011246edeb810c45ea58826 +set SHADERC=f60bb80e255144e71776e2ad570d89b78ea2ab4f set SOUNDTOUCH=463ade388f3a51da078dc9ed062bf28e4ba29da7 set SPIRV_CROSS=vulkan-sdk-1.3.290.0 @@ -75,7 +75,7 @@ call :downloadfile "zstd-fd5f8106a58601a963ee816e6a57aa7c61fafc53.patch" https:/ call :downloadfile "cpuinfo-%CPUINFO%.zip" "https://github.com/pytorch/cpuinfo/archive/%CPUINFO%.zip" 13146ae7983d767a678dd01b0d6af591e77cec82babd41264b9164ab808d7d41 || goto error call :downloadfile "discord-rpc-%DISCORD_RPC%.zip" "https://github.com/stenzek/discord-rpc/archive/%DISCORD_RPC%.zip" 61e185e75d37b360c314125bcdf4697192d15e2d5209db3306ed6cd736d508b3 || goto error -call :downloadfile "shaderc-%SHADERC%.zip" "https://github.com/stenzek/shaderc/archive/%SHADERC%.zip" a50687a3903328976c3a49f6ba6326196f7713660048957eb033408630af70b1 || goto error +call :downloadfile "shaderc-%SHADERC%.zip" "https://github.com/stenzek/shaderc/archive/%SHADERC%.zip" d24760f3c20a0ca39dfa85b84b6cf65eee077cd168e7aa08502e60c168ef05f6 || goto error call :downloadfile "soundtouch-%SOUNDTOUCH%.zip" "https://github.com/stenzek/soundtouch/archive/%SOUNDTOUCH%.zip" 107a1941181a69abe28018b9ad26fc0218625758ac193bc979abc9e26b7c0c3a || goto error if not exist SPIRV-Cross\ ( diff --git a/scripts/flatpak/modules/22-shaderc.yaml b/scripts/flatpak/modules/22-shaderc.yaml index b31be4233..a94237685 100644 --- a/scripts/flatpak/modules/22-shaderc.yaml +++ b/scripts/flatpak/modules/22-shaderc.yaml @@ -11,7 +11,7 @@ build-options: sources: - type: git url: "https://github.com/stenzek/shaderc.git" - commit: "feb2460bf3a504d67011246edeb810c45ea58826" + commit: "f60bb80e255144e71776e2ad570d89b78ea2ab4f" cleanup: - /bin - /include diff --git a/src/util/CMakeLists.txt b/src/util/CMakeLists.txt index 41115bdcd..3ceffc1d7 100644 --- a/src/util/CMakeLists.txt +++ b/src/util/CMakeLists.txt @@ -169,6 +169,7 @@ endif() if(ENABLE_VULKAN OR APPLE) # shaderc is loaded dynamically to reduce module loads on startup. + get_target_property(SHADERC_INCLUDE_DIR Shaderc::shaderc_shared INTERFACE_INCLUDE_DIRECTORIES) target_include_directories(util PUBLIC ${SHADERC_INCLUDE_DIR}) endif() @@ -292,8 +293,9 @@ function(add_util_resources target) message(WARNING "MoltenVK not found in path, it will depend on the target system having it.") endif() - # Copy shaderc into the bundle + # Copy shaderc/spirv-cross into the bundle get_target_property(SPIRV_CROSS_LIBRARY spirv-cross-c-shared IMPORTED_SONAME_RELEASE) + get_target_property(SHADERC_LIBRARY Shaderc::shaderc_shared IMPORTED_LOCATION_RELEASE) target_sources(${target} PRIVATE "${SHADERC_LIBRARY}" "${SPIRV_CROSS_LIBRARY}") set_source_files_properties("${SHADERC_LIBRARY}" "${SPIRV_CROSS_LIBRARY}" PROPERTIES MACOSX_PACKAGE_LOCATION Frameworks)