CMake reorg, use my updated modules, CI vvl
Some checks failed
eden-license / license-header (pull_request) Failing after 24s
Some checks failed
eden-license / license-header (pull_request) Failing after 24s
Signed-off-by: crueter <crueter@eden-emu.dev>
This commit is contained in:
parent
d086d75cab
commit
21302cbc3e
13 changed files with 174 additions and 427 deletions
40
externals/CMakeLists.txt
vendored
40
externals/CMakeLists.txt
vendored
|
@ -398,3 +398,43 @@ if (ARCHITECTURE_arm64 AND NOT TARGET sse2neon)
|
|||
add_library(sse2neon INTERFACE)
|
||||
target_include_directories(sse2neon INTERFACE sse2neon)
|
||||
endif()
|
||||
|
||||
# MoltenVK
|
||||
if (APPLE)
|
||||
find_library(MOLTENVK_LIBRARY MoltenVK)
|
||||
|
||||
if (NOT MOLTENVK_LIBRARY OR YUZU_USE_BUNDLED_MOLTENVK)
|
||||
message(STATUS "Using bundled MoltenVK")
|
||||
|
||||
# TODO: is this portable?
|
||||
set(MVK_STATIC "${MOLTENVK_DIR}/MoltenVK/static/MoltenVK.xcframework/macos-arm64_x86_64/libMoltenVK.a")
|
||||
set(MVK_DYLIB "${MOLTENVK_DIR}/MoltenVK/dylib/${platform}/libMoltenVK.dylib")
|
||||
|
||||
# prefer static lib if it exists for smaller executable size
|
||||
if (EXISTS "${MVK_STATIC}")
|
||||
# Using static MoltenVK requires linking to a few Apple frameworks
|
||||
find_library(IOSURFACE_LIBRARY IOSurface REQUIRED)
|
||||
find_library(QUARTZCORE_LIBRARY QuartzCore REQUIRED)
|
||||
|
||||
add_library(MoltenVK::MoltenVK STATIC IMPORTED)
|
||||
set_target_properties(MoltenVK::MoltenVK PROPERTIES
|
||||
IMPORTED_LOCATION "${MVK_STATIC}"
|
||||
)
|
||||
|
||||
target_link_libraries(MoltenVK::MoltenVK INTERFACE ${IOSURFACE_LIBRARY} ${QUARTZCORE_LIBRARY})
|
||||
else()
|
||||
add_library(MoltenVK::MoltenVK SHARED IMPORTED)
|
||||
set_target_properties(MoltenVK::MoltenVK PROPERTIES
|
||||
IMPORTED_LOCATION "${MVK_DYLIB}"
|
||||
)
|
||||
endif()
|
||||
|
||||
target_link_libraries(yuzu PRIVATE MoltenVK::MoltenVK)
|
||||
else()
|
||||
message(STATUS "Using MoltenVK at ${MOLTENVK_LIBRARY}.")
|
||||
set_source_files_properties(${MOLTENVK_LIBRARY} PROPERTIES MACOSX_PACKAGE_LOCATION Frameworks
|
||||
XCODE_FILE_ATTRIBUTES "CodeSignOnCopy")
|
||||
|
||||
target_sources(yuzu ${MOLTENVK_LIBRARY})
|
||||
endif()
|
||||
endif()
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue