# SPDX-FileCopyrightText: 2024 shadPS4 Emulator Project # SPDX-License-Identifier: GPL-2.0-or-later name: macOS on: push: branches: [ "main" ] pull_request: branches: [ "main" ] workflow_dispatch: env: # Customize the CMake build type here (Release, Debug, RelWithDebInfo, etc.) BUILD_TYPE: Release jobs: build: runs-on: macos-latest steps: - uses: actions/checkout@v4 with: submodules: recursive - name: Setup latest Xcode uses: maxim-lobanov/setup-xcode@v1 with: xcode-version: latest - name: Install MoltenVK run: | curl -LO https://github.com/KhronosGroup/MoltenVK/releases/download/v1.2.10/MoltenVK-macos.tar tar xf MoltenVK-macos.tar sudo mkdir -p /usr/local/lib sudo cp MoltenVK/MoltenVK/dylib/macOS/libMoltenVK.dylib /usr/local/lib/libMoltenVK.dylib - name: Configure CMake run: cmake -B ${{github.workspace}}/build -DCMAKE_BUILD_TYPE=${{env.BUILD_TYPE}} -DCMAKE_OSX_ARCHITECTURES=x86_64 - name: Build run: cmake --build ${{github.workspace}}/build --config ${{env.BUILD_TYPE}} --parallel $(sysctl -n hw.ncpu) - name: Package run: | mkdir upload mv ${{github.workspace}}/build/shadps4 upload cp /usr/local/lib/libMoltenVK.dylib upload install_name_tool -add_rpath "@loader_path" upload/shadps4 tar cf shadps4-macos.tar.gz -C upload . - name: Upload executable uses: actions/upload-artifact@v4 with: name: shadps4-macos path: shadps4-macos.tar.gz