Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
7 changes: 5 additions & 2 deletions .github/workflows/build-ios-ipa.yml
Original file line number Diff line number Diff line change
Expand Up @@ -65,8 +65,11 @@ jobs:
-DUNLEASHED_RECOMP_METAL=ON \
../..

# Generate the shader headers and binary resource sources needed by the iOS build.
cmake --build . --target UnleashedRecompShaders UnleashedRecompResources
# Generate the shader headers, binary resource sources, and PPC recompiled sources
# needed by the iOS build. UnleashedRecompPPC is generated here (host macOS config)
# because the iOS build uses UNLEASHED_RECOMP_USE_PREGENERATED_RECOMP and expects
# the ppc/* and shader/shader_cache.cpp sources to already exist on disk.
cmake --build . --target UnleashedRecompShaders UnleashedRecompResources UnleashedRecompPPC

cd ../..
echo "SPIR-V headers generated successfully"
Expand Down
9 changes: 9 additions & 0 deletions UnleashedRecompLib/CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -93,6 +93,15 @@ if (NOT UNLEASHED_RECOMP_USE_PREGENERATED_RECOMP)
)
endif()

# Custom target that only depends on the generated PPC recompiled sources and shader
# cache, without requiring the sources to be compiled. This allows a host build (e.g.
# macOS) to generate these files ahead of time for an iOS build, which relies on
# UNLEASHED_RECOMP_USE_PREGENERATED_RECOMP and does not regenerate them itself.
add_custom_target(UnleashedRecompPPC DEPENDS
${UNLEASHED_RECOMP_PPC_RECOMPILED_SOURCES}
"${CMAKE_CURRENT_SOURCE_DIR}/shader/shader_cache.cpp"
)

add_library(UnleashedRecompLib
${UNLEASHED_RECOMP_PPC_RECOMPILED_SOURCES}
"shader/shader_cache.h"
Expand Down