Merge branch 'dev' into dev

This commit is contained in:
XForYouX 2024-03-22 23:35:39 +01:00
commit 68f85e4e4f
3 changed files with 132 additions and 119 deletions

View file

@ -1,33 +1,38 @@
# SPDX-FileCopyrightText: 2021 yuzu Emulator Project # SPDX-FileCopyrightText: 2021 yuzu Emulator Project
# SPDX-FileCopyrightText: 2024 suyu Emulator Project
# SPDX-License-Identifier: GPL-2.0-or-later # SPDX-License-Identifier: GPL-2.0-or-later
name: yuzu-ci # Actions Documentation: https://forgejo.org/docs/next/user/actions/#list-of-tasks-in-a-repository
name: suyu-ci
on: on:
push: push:
branches: [ master ] branches: [ "*" ]
tags: [ "*" ] tags: [ "*" ]
pull_request: pull_request:
branches: [ master ] branches: [ "dev" ]
jobs: jobs:
transifex: # We don't have transifex for now.
runs-on: ubuntu-latest # transifex:
container: yuzuemu/build-environments:linux-transifex # runs-on: ubuntu-latest
if: ${{ github.repository == 'yuzu-emu/yuzu' && !github.head_ref }} # container: fijxu/build-environments:linux-transifex
steps: # if: ${{ GITHUB_REPOSITORY == 'suyu/suyu' && !GITHUB_HEAD_REF }}
- uses: actions/checkout@v3 # steps:
with: # - uses: https://code.forgejo.org/actions/checkout@v3
submodules: recursive # with:
fetch-depth: 0 # submodules: recursive
- name: Update Translation # fetch-depth: 0
run: ./.ci/scripts/transifex/docker.sh # - name: Update Translation
env: # run: ./.ci/scripts/transifex/docker.sh
TX_TOKEN: ${{ secrets.TRANSIFEX_API_TOKEN }} # env:
# TX_TOKEN: ${{ secrets.TRANSIFEX_API_TOKEN }}
reuse: reuse:
runs-on: ubuntu-latest runs-on: ubuntu-latest
if: ${{ github.repository == 'yuzu-emu/yuzu' }} if: ${{ github.repository == 'suyu/suyu' }}
steps: steps:
- uses: actions/checkout@v3 - uses: https://code.forgejo.org/actions/checkout@v3
- uses: fsfe/reuse-action@v1 - uses: https://github.com/fsfe/reuse-action@v1

View file

@ -1,11 +1,16 @@
# SPDX-FileCopyrightText: 2022 yuzu Emulator Project # SPDX-FileCopyrightText: 2022 yuzu Emulator Project
# SPDX-FileCopyrightText: 2024 suyu Emulator Project
# SPDX-License-Identifier: GPL-3.0-or-later # SPDX-License-Identifier: GPL-3.0-or-later
name: 'yuzu verify' # Actions Documentation: https://forgejo.org/docs/next/user/actions/#list-of-tasks-in-a-repository
name: 'suyu verify'
on: on:
pull_request: pull_request:
branches: [ master ] branches: [ "dev" ]
push:
branches: [ "dev" ]
env: env:
PR_NUMBER: pr${{ github.event.number }} PR_NUMBER: pr${{ github.event.number }}
@ -14,17 +19,17 @@ jobs:
name: 'verify format' name: 'verify format'
runs-on: ubuntu-latest runs-on: ubuntu-latest
steps: steps:
- uses: actions/checkout@v3 - uses: https://code.forgejo.org/actions/checkout@v3
with: with:
submodules: false submodules: false
- name: set up JDK 17 - name: set up JDK 17
uses: actions/setup-java@v3 uses: https://github.com/actions/setup-java@v3
with: with:
java-version: '17' java-version: '17'
distribution: 'temurin' distribution: 'temurin'
- name: 'Verify Formatting' - name: 'Verify Formatting'
run: bash -ex ./.ci/scripts/format/script.sh run: bash -ex ./.ci/scripts/format/script.sh
build: build-linux:
name: 'test build' name: 'test build'
needs: format needs: format
runs-on: ubuntu-latest runs-on: ubuntu-latest
@ -39,15 +44,15 @@ jobs:
- type: windows - type: windows
image: linux-mingw image: linux-mingw
container: container:
image: yuzuemu/build-environments:${{ matrix.image }} image: fijxu/build-environments:${{ matrix.image }}
options: -u 1001 options: -u 1001
steps: steps:
- uses: actions/checkout@v3 - uses: https://code.forgejo.org/actions/checkout@v3
with: with:
submodules: recursive submodules: recursive
fetch-depth: 0 fetch-depth: 0
- name: Set up cache - name: Set up cache
uses: actions/cache@v3 uses: https://code.forgejo.org/actions/cache@v3
id: ccache-restore id: ccache-restore
with: with:
path: ~/.ccache path: ~/.ccache
@ -66,102 +71,102 @@ jobs:
env: env:
NO_SOURCE_PACK: "YES" NO_SOURCE_PACK: "YES"
- name: Upload - name: Upload
uses: actions/upload-artifact@v3 uses: https://code.forgejo.org/actions/upload-artifact@v3
with: with:
name: ${{ matrix.type }} name: ${{ matrix.type }}
path: artifacts/ path: artifacts/
build-mac: # build-mac:
name: 'test build (macos)' # name: 'test build (macos)'
needs: format # needs: format
runs-on: macos-14 # runs-on: macos-14
steps: # steps:
- uses: actions/checkout@v3 # - uses: https://code.forgejo.org/actions/checkout@v3
with: # with:
submodules: recursive # submodules: recursive
fetch-depth: 0 # fetch-depth: 0
- name: Install dependencies # - name: Install dependencies
run: | # run: |
brew install autoconf automake boost ccache ffmpeg fmt glslang hidapi libtool libusb lz4 ninja nlohmann-json openssl pkg-config qt@5 sdl2 speexdsp zlib zlib zstd # brew install autoconf automake boost ccache ffmpeg fmt glslang hidapi libtool libusb lz4 ninja nlohmann-json openssl pkg-config qt@5 sdl2 speexdsp zlib zlib zstd
- name: Build # - name: Build
run: | # run: |
mkdir build # mkdir build
cd build # cd build
export Qt5_DIR="$(brew --prefix qt@5)/lib/cmake" # export Qt5_DIR="$(brew --prefix qt@5)/lib/cmake"
cmake .. -GNinja -DCMAKE_BUILD_TYPE=RelWithDebInfo -DSUYU_USE_BUNDLED_VCPKG=OFF -DSUYU_TESTS=OFF -DENABLE_WEB_SERVICE=OFF -DENABLE_LIBUSB=OFF # cmake .. -GNinja -DCMAKE_BUILD_TYPE=RelWithDebInfo -DSUYU_USE_BUNDLED_VCPKG=OFF -DSUYU_TESTS=OFF -DENABLE_WEB_SERVICE=OFF -DENABLE_LIBUSB=OFF
ninja # ninja
build-msvc: # build-msvc:
name: 'test build (windows, msvc)' # name: 'test build (windows, msvc)'
needs: format # needs: format
runs-on: windows-2022 # runs-on: windows-2022
steps: # steps:
- uses: actions/checkout@v3 # - uses: https://code.forgejo.org/actions/checkout@v3
with: # with:
submodules: recursive # submodules: recursive
fetch-depth: 0 # fetch-depth: 0
- name: Set up cache # - name: Set up cache
uses: actions/cache@v3 # uses: https://code.forgejo.org/actions/cache@v3
with: # with:
path: ~/.buildcache # path: ~/.buildcache
key: ${{ runner.os }}-msvc-${{ github.sha }} # key: ${{ runner.os }}-msvc-${{ github.sha }}
restore-keys: | # restore-keys: |
${{ runner.os }}-msvc- # ${{ runner.os }}-msvc-
- name: Install dependencies # - name: Install dependencies
shell: pwsh # shell: pwsh
run: | # run: |
$ErrorActionPreference = "Stop" # $ErrorActionPreference = "Stop"
$BuildCacheVer = "v0.28.4" # $BuildCacheVer = "v0.28.4"
$File = "buildcache-windows.zip" # $File = "buildcache-windows.zip"
$Uri = "https://github.com/mbitsnbites/buildcache/releases/download/$BuildCacheVer/$File" # $Uri = "https://github.com/mbitsnbites/buildcache/releases/download/$BuildCacheVer/$File"
$WebClient = New-Object System.Net.WebClient # $WebClient = New-Object System.Net.WebClient
$WebClient.DownloadFile($Uri, $File) # $WebClient.DownloadFile($Uri, $File)
7z x $File # 7z x $File
$CurrentDir = Convert-Path . # $CurrentDir = Convert-Path .
echo "$CurrentDir/buildcache/bin" | Out-File -FilePath $env:GITHUB_PATH -Encoding utf8 -Append # echo "$CurrentDir/buildcache/bin" | Out-File -FilePath $env:GITHUB_PATH -Encoding utf8 -Append
- name: Install Vulkan SDK # - name: Install Vulkan SDK
shell: pwsh # shell: pwsh
run: .\.ci\scripts\windows\install-vulkan-sdk.ps1 # run: .\.ci\scripts\windows\install-vulkan-sdk.ps1
- name: Set up MSVC # - name: Set up MSVC
uses: ilammy/msvc-dev-cmd@v1 # uses: https://github.com/ilammy/msvc-dev-cmd@v1
- name: Configure # - name: Configure
env: # env:
CC: cl.exe # CC: cl.exe
CXX: cl.exe # CXX: cl.exe
run: | # run: |
glslangValidator --version # glslangValidator --version
mkdir build # mkdir build
cmake . -B build -GNinja -DCMAKE_TOOLCHAIN_FILE="CMakeModules/MSVCCache.cmake" -DUSE_CCACHE=ON -DSUYU_USE_BUNDLED_QT=1 -DSUYU_USE_BUNDLED_SDL2=1 -DSUYU_USE_QT_WEB_ENGINE=ON -DENABLE_COMPATIBILITY_LIST_DOWNLOAD=ON -DSUYU_ENABLE_COMPATIBILITY_REPORTING=ON -DUSE_DISCORD_PRESENCE=ON -DENABLE_QT_TRANSLATION=ON -DCMAKE_BUILD_TYPE=Release -DGIT_BRANCH=pr-verify -DSUYU_CRASH_DUMPS=ON # cmake . -B build -GNinja -DCMAKE_TOOLCHAIN_FILE="CMakeModules/MSVCCache.cmake" -DUSE_CCACHE=ON -DSUYU_USE_BUNDLED_QT=1 -DSUYU_USE_BUNDLED_SDL2=1 -DSUYU_USE_QT_WEB_ENGINE=ON -DENABLE_COMPATIBILITY_LIST_DOWNLOAD=ON -DSUYU_ENABLE_COMPATIBILITY_REPORTING=ON -DUSE_DISCORD_PRESENCE=ON -DENABLE_QT_TRANSLATION=ON -DCMAKE_BUILD_TYPE=Release -DGIT_BRANCH=pr-verify -DSUYU_CRASH_DUMPS=ON
- name: Build # - name: Build
run: cmake --build build # run: cmake --build build
- name: Cache Summary # - name: Cache Summary
run: buildcache -s # run: buildcache -s
- name: Pack # - name: Pack
shell: pwsh # shell: pwsh
run: .\.ci\scripts\windows\upload.ps1 # run: .\.ci\scripts\windows\upload.ps1
- name: Upload # - name: Upload
uses: actions/upload-artifact@v3 # uses: https://code.forgejo.org/actions/upload-artifact@v3
with: # with:
name: msvc # name: msvc
path: artifacts/ # path: artifacts/
- name: Upload EXE # - name: Upload EXE
uses: actions/upload-artifact@v3 # uses: https://code.forgejo.org/actions/upload-artifact@v3
with: # with:
name: ${{ env.INDIVIDUAL_EXE }} # name: ${{ env.INDIVIDUAL_EXE }}
path: ${{ env.INDIVIDUAL_EXE }} # path: ${{ env.INDIVIDUAL_EXE }}
android: android:
runs-on: ubuntu-latest runs-on: ubuntu-latest
needs: format needs: format
steps: steps:
- uses: actions/checkout@v3 - uses: https://code.forgejo.org/actions/checkout@v3
with: with:
submodules: recursive submodules: recursive
fetch-depth: 0 fetch-depth: 0
- name: set up JDK 17 - name: set up JDK 17
uses: actions/setup-java@v3 uses: https://github.com/actions/setup-java@v3
with: with:
java-version: '17' java-version: '17'
distribution: 'temurin' distribution: 'temurin'
- name: Set up cache - name: Set up cache
uses: actions/cache@v3 uses: https://code.forgejo.org/actions/cache@v3
with: with:
path: | path: |
~/.gradle/caches ~/.gradle/caches
@ -171,7 +176,7 @@ jobs:
restore-keys: | restore-keys: |
${{ runner.os }}-android- ${{ runner.os }}-android-
- name: Query tag name - name: Query tag name
uses: olegtarasov/get-tag@v2.1.2 uses: https://github.com/olegtarasov/get-tag@v2.1.2
id: tagName id: tagName
- name: Install dependencies - name: Install dependencies
run: | run: |
@ -186,7 +191,8 @@ jobs:
ANDROID_KEYSTORE_PASS: ${{ secrets.ANDROID_KEYSTORE_PASS }} ANDROID_KEYSTORE_PASS: ${{ secrets.ANDROID_KEYSTORE_PASS }}
run: ./.ci/scripts/android/upload.sh run: ./.ci/scripts/android/upload.sh
- name: Upload - name: Upload
uses: actions/upload-artifact@v3 uses: https://code.forgejo.org/actions/upload-artifact@v3
with: with:
name: android name: android
path: artifacts/ path: artifacts/

View file

@ -31,7 +31,7 @@ It is written in C++ with portability in mind, and we're actively working on bui
<a href="#building">Building</a> | <a href="#building">Building</a> |
<a href="#support">Support</a> | <a href="#support">Support</a> |
<a href="#license">License</a> | <a href="#license">License</a> |
<a href="https://gitlab.com/suyu-emu/suyu/-/pipelines">Pipelines</a> <a href="https://git.suyu.dev/suyu/suyu/actions">Pipelines</a>
</p> </p>
## Status ## Status
@ -46,22 +46,24 @@ This project is completely free and open source, and anyone can contribute to he
Most of the development happens on GitLab. For development discussion, please join us on [Discord](https://discord.gg/suyu). Most of the development happens on GitLab. For development discussion, please join us on [Discord](https://discord.gg/suyu).
If you want to contribute, please take a look at the [Contributor's Guide](https://gitlab.com/suyu-emu/suyu/-/wikis/Contributing) and [Developer Information](https://gitlab.com/suyu-emu/suyu/-/wikis/Developer-Information). If you want to contribute, please take a look at the [Contributor's Guide](https://git.suyu.dev/suyu/suyu/wiki/Contributing) and [Developer Information](https://git.suyu.dev/suyu/suyu/wiki/Developer-Information).
You can also contact any of the developers on Discord to learn more about the current state of suyu. You can also contact any of the developers on Discord to learn more about the current state of suyu.
## Downloads ## Downloads
* __Windows__: [Releases](https://gitlab.com/suyu-emu/suyu/-/releases) * __Windows__: [Releases](https://git.suyu.dev/suyu/suyu/releases)
* __Linux__: [Releases](https://gitlab.com/suyu-emu/suyu/-/releases) * __Linux__: [Releases](https://git.suyu.dev/suyu/suyu/releases)
* __macOS__: [Releases](https://gitlab.com/suyu-emu/suyu/-/releases) * __macOS__: [Releases](https://git.suyu.dev/suyu/suyu/releases)
* __Android__: [Releases](https://gitlab.com/suyu-emu/suyu/-/releases) * __Android__: [Releases](https://git.suyu.dev/suyu/suyu/releases)
We have official builds [here.](https://gitlab.com/suyu-emu/suyu/-/releases) If any website or person is claiming to have a build for suyu, take that with a grain of salt. We have official builds [here.](https://git.suyu.dev/suyu/suyu/releases) If any website or person is claiming to have a build for suyu, take that with a grain of salt.
## Building ## Building
* __Windows__: [Wiki page](https://gitlab.com/suyu-emu/suyu/-/wikis/Building-for-Windows) * __Windows__: [Windows Build](https://git.suyu.dev/suyu/suyu/wiki/Building-For-Windows)
* __Linux__: [Wiki page](https://gitlab.com/suyu-emu/suyu/-/wikis/Building-for-Linux) * __Linux__: [Linux Build](https://git.suyu.dev/suyu/suyu/wiki/Building-For-Linux)
* __Android__: [Android Build](https://git.suyu.dev/suyu/suyu/wiki/Building-For-Android)
* __MacOS__: [MacOS Build](https://git.suyu.dev/suyu/suyu/wiki/Building-for-macOS)