mirror of
https://github.com/dolphin-emu/dolphin.git
synced 2025-01-09 07:39:26 +01:00
CMake: Make bundled MoltenVK optional
Adds ~20s to incremental build time in Xcode projects
This commit is contained in:
parent
e4614067b3
commit
7cf5547b97
@ -101,6 +101,7 @@ if(APPLE)
|
|||||||
option(SKIP_POSTPROCESS_BUNDLE "Skip postprocessing bundle for redistributability" OFF)
|
option(SKIP_POSTPROCESS_BUNDLE "Skip postprocessing bundle for redistributability" OFF)
|
||||||
# Enable adhoc code signing by default (otherwise makefile builds on ARM will not work)
|
# Enable adhoc code signing by default (otherwise makefile builds on ARM will not work)
|
||||||
option(MACOS_CODE_SIGNING "Enable codesigning" ON)
|
option(MACOS_CODE_SIGNING "Enable codesigning" ON)
|
||||||
|
option(USE_BUNDLED_MOLTENVK "Build MoltenVK from Externals with Dolphin-specific patches" ON)
|
||||||
set(MACOS_CODE_SIGNING_IDENTITY "-" CACHE STRING "The identity used for codesigning.")
|
set(MACOS_CODE_SIGNING_IDENTITY "-" CACHE STRING "The identity used for codesigning.")
|
||||||
set(MACOS_CODE_SIGNING_IDENTITY_UPDATER "-" CACHE STRING "The identity used for codesigning, for the updater.")
|
set(MACOS_CODE_SIGNING_IDENTITY_UPDATER "-" CACHE STRING "The identity used for codesigning, for the updater.")
|
||||||
endif()
|
endif()
|
||||||
@ -663,7 +664,7 @@ add_subdirectory(Externals/glslang)
|
|||||||
if(ENABLE_VULKAN)
|
if(ENABLE_VULKAN)
|
||||||
add_definitions(-DHAS_VULKAN)
|
add_definitions(-DHAS_VULKAN)
|
||||||
|
|
||||||
if(APPLE)
|
if(APPLE AND USE_BUNDLED_MOLTENVK)
|
||||||
add_subdirectory(Externals/MoltenVK)
|
add_subdirectory(Externals/MoltenVK)
|
||||||
endif()
|
endif()
|
||||||
endif()
|
endif()
|
||||||
|
@ -572,10 +572,19 @@ if(APPLE)
|
|||||||
|
|
||||||
# Copy MoltenVK into the bundle
|
# Copy MoltenVK into the bundle
|
||||||
if(ENABLE_VULKAN)
|
if(ENABLE_VULKAN)
|
||||||
add_dependencies(dolphin-emu MoltenVK)
|
if(USE_BUNDLED_MOLTENVK)
|
||||||
ExternalProject_Get_Property(MoltenVK SOURCE_DIR)
|
add_dependencies(dolphin-emu MoltenVK)
|
||||||
target_sources(dolphin-emu PRIVATE "${SOURCE_DIR}/Package/Release/MoltenVK/dylib/macOS/libMoltenVK.dylib")
|
ExternalProject_Get_Property(MoltenVK SOURCE_DIR)
|
||||||
set_source_files_properties("${SOURCE_DIR}/Package/Release/MoltenVK/dylib/macOS/libMoltenVK.dylib" PROPERTIES MACOSX_PACKAGE_LOCATION Frameworks GENERATED ON)
|
target_sources(dolphin-emu PRIVATE "${SOURCE_DIR}/Package/Release/MoltenVK/dylib/macOS/libMoltenVK.dylib")
|
||||||
|
set_source_files_properties("${SOURCE_DIR}/Package/Release/MoltenVK/dylib/macOS/libMoltenVK.dylib" PROPERTIES MACOSX_PACKAGE_LOCATION Frameworks GENERATED ON)
|
||||||
|
else()
|
||||||
|
find_file(MOLTENVK_DYLIB NAMES libMoltenVK.dylib PATH_SUFFIXES lib)
|
||||||
|
if(NOT MOLTENVK_DYLIB)
|
||||||
|
message(FATAL_ERROR "Couldn't find libMoltenVK.dylib. Enable USE_BUNDLED_MOLTENVK?")
|
||||||
|
endif()
|
||||||
|
target_sources(dolphin-emu PRIVATE ${MOLTENVK_DYLIB})
|
||||||
|
set_source_files_properties(${MOLTENVK_DYLIB} PROPERTIES MACOSX_PACKAGE_LOCATION Frameworks)
|
||||||
|
endif()
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
if(NOT SKIP_POSTPROCESS_BUNDLE)
|
if(NOT SKIP_POSTPROCESS_BUNDLE)
|
||||||
|
Loading…
x
Reference in New Issue
Block a user