mirror of
https://git.eden-emu.dev/eden-emu/eden
synced 2026-05-19 03:27:00 +02:00
[cmake] Bundle KosmicKrisp, MoltenVK, and Vulkan Loader
For future testing. Signed-off-by: crueter <crueter@eden-emu.dev>
This commit is contained in:
parent
a55ffc9225
commit
073ecd36af
4 changed files with 26 additions and 25 deletions
|
|
@ -444,6 +444,11 @@ if (NOT YUZU_STATIC_ROOM)
|
||||||
if (NOT TARGET Opus::opus)
|
if (NOT TARGET Opus::opus)
|
||||||
add_library(Opus::opus ALIAS opus)
|
add_library(Opus::opus ALIAS opus)
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
|
if (APPLE)
|
||||||
|
# KosmicKrisp
|
||||||
|
AddJsonPackage(kosmickrisp)
|
||||||
|
endif()
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
if(NOT TARGET Boost::headers)
|
if(NOT TARGET Boost::headers)
|
||||||
|
|
|
||||||
14
externals/CMakeLists.txt
vendored
14
externals/CMakeLists.txt
vendored
|
|
@ -389,17 +389,3 @@ if (ANDROID)
|
||||||
|
|
||||||
add_library(oboe::oboe ALIAS oboe)
|
add_library(oboe::oboe ALIAS oboe)
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
if (APPLE)
|
|
||||||
# moltenvk
|
|
||||||
if (NOT YUZU_USE_BUNDLED_MOLTENVK)
|
|
||||||
find_library(MOLTENVK_LIBRARY MoltenVK)
|
|
||||||
endif()
|
|
||||||
|
|
||||||
# TODO: kosmickrisp?
|
|
||||||
if (NOT MOLTENVK_LIBRARY OR YUZU_USE_BUNDLED_MOLTENVK)
|
|
||||||
AddJsonPackage(moltenvk)
|
|
||||||
|
|
||||||
set(MOLTENVK_LIBRARY "${moltenvk_SOURCE_DIR}/MoltenVK/dylib/macOS/libMoltenVK.dylib" CACHE STRING "" FORCE)
|
|
||||||
endif()
|
|
||||||
endif()
|
|
||||||
|
|
|
||||||
14
externals/cpmfile.json
vendored
14
externals/cpmfile.json
vendored
|
|
@ -174,12 +174,14 @@
|
||||||
"bundled": true,
|
"bundled": true,
|
||||||
"skip_updates": "true"
|
"skip_updates": "true"
|
||||||
},
|
},
|
||||||
"moltenvk": {
|
|
||||||
"repo": "V380-Ori/Ryujinx.MoltenVK",
|
"kosmickrisp": {
|
||||||
"tag": "v%VERSION%-ryujinx",
|
"package": "KosmicKrisp",
|
||||||
"git_version": "1.4.1",
|
"repo": "crueter-ci/KosmicKrisp",
|
||||||
"artifact": "MoltenVK-macOS.tar",
|
"hash": "2df127265580aca955d1ac226e159819802f680d4cdd5508c42784c1e2296ef55322ddaec44b2b71e9528f56a3a2c6db28ae9d4a18cbe75a77411251a3e8b07e",
|
||||||
"hash": "5695b36ca5775819a71791557fcb40a4a5ee4495be6b8442e0b666d0c436bec02aae68cc6210183f7a5c986bdbec0e117aecfad5396e496e9c2fd5c89133a347",
|
"git_version": "26.0.0",
|
||||||
|
"tag": "v%VERSION%",
|
||||||
|
"artifact": "KosmicKrisp-%VERSION%.tar.zst",
|
||||||
"bundled": true
|
"bundled": true
|
||||||
},
|
},
|
||||||
"gamemode": {
|
"gamemode": {
|
||||||
|
|
|
||||||
|
|
@ -389,14 +389,22 @@ if (APPLE)
|
||||||
set_target_properties(yuzu PROPERTIES MACOSX_BUNDLE TRUE)
|
set_target_properties(yuzu PROPERTIES MACOSX_BUNDLE TRUE)
|
||||||
set_target_properties(yuzu PROPERTIES MACOSX_BUNDLE_INFO_PLIST ${CMAKE_CURRENT_SOURCE_DIR}/Info.plist)
|
set_target_properties(yuzu PROPERTIES MACOSX_BUNDLE_INFO_PLIST ${CMAKE_CURRENT_SOURCE_DIR}/Info.plist)
|
||||||
|
|
||||||
set(CMAKE_FIND_LIBRARY_SUFFIXES ".dylib")
|
set(KK_LIBS
|
||||||
find_library(MOLTENVK_LIBRARY MoltenVK REQUIRED)
|
"${KosmicKrisp_SOURCE_DIR}/lib/libMoltenVK.dylib"
|
||||||
message(STATUS "Using MoltenVK at ${MOLTENVK_LIBRARY}.")
|
"${KosmicKrisp_SOURCE_DIR}/lib/libvulkan.1.dylib"
|
||||||
|
"${KosmicKrisp_SOURCE_DIR}/lib/libvulkan_kosmickrisp.dylib")
|
||||||
|
|
||||||
set_source_files_properties(${MOLTENVK_LIBRARY} PROPERTIES
|
set_source_files_properties(${KK_LIBS} PROPERTIES
|
||||||
MACOSX_PACKAGE_LOCATION Frameworks
|
MACOSX_PACKAGE_LOCATION Frameworks
|
||||||
XCODE_FILE_ATTRIBUTES "CodeSignOnCopy")
|
XCODE_FILE_ATTRIBUTES "CodeSignOnCopy")
|
||||||
target_sources(yuzu PRIVATE ${MOLTENVK_LIBRARY})
|
|
||||||
|
target_sources(yuzu PRIVATE ${KK_LIBS})
|
||||||
|
|
||||||
|
add_custom_command(TARGET yuzu POST_BUILD
|
||||||
|
COMMAND ${CMAKE_COMMAND} -E copy_directory
|
||||||
|
"${KosmicKrisp_SOURCE_DIR}/vulkan"
|
||||||
|
"$<TARGET_FILE_DIR:yuzu>/../Resources/vulkan"
|
||||||
|
COMMENT "Copying Vulkan ICDs")
|
||||||
elseif(WIN32)
|
elseif(WIN32)
|
||||||
# compile as a win32 gui application instead of a console application
|
# compile as a win32 gui application instead of a console application
|
||||||
target_link_libraries(yuzu PRIVATE Qt6::EntryPointPrivate)
|
target_link_libraries(yuzu PRIVATE Qt6::EntryPointPrivate)
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue