From 93b7854f957cae3697ccf506533f87d9adbceb65 Mon Sep 17 00:00:00 2001 From: administrator Date: Tue, 21 May 2024 02:12:22 +0200 Subject: [PATCH 1/8] Remove unsanctioned Discord invite Having a Discord server linked to Suyu poses a risk to the accounts of its members. Moreover, many of the members of this server have quit the Suyu project and do not wish to continue its development. --- README.md | 1 - 1 file changed, 1 deletion(-) diff --git a/README.md b/README.md index a423a83169..6fa5ed4d2e 100644 --- a/README.md +++ b/README.md @@ -9,7 +9,6 @@ SPDX-License-Identifier: GPL-3.0-or-later We're in need of developers. Please join our chat below if you want to contribute! This repo was based on Yuzu EA 4176 but the code is being rewritten from the ground up for legal and performance reasons. -Support the original suyu developer team [here](https://discord.gg/79B6wqFPnc).
From 267ba83d407df2330a1ccd71af8525e4535733e6 Mon Sep 17 00:00:00 2001 From: administrator Date: Tue, 21 May 2024 02:12:22 +0200 Subject: [PATCH 2/8] Remove unsanctioned Discord invite Having a Discord server linked to Suyu poses a risk to the accounts of its members. Moreover, many of the members of this server have quit the Suyu project and do not wish to continue its development. --- MIGRATION.md | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/MIGRATION.md b/MIGRATION.md index 425e301136..3963b5004f 100644 --- a/MIGRATION.md +++ b/MIGRATION.md @@ -1,3 +1,7 @@ + # Migrating from yuzu When coming from yuzu, the migration is as easy as renaming some directories. From 433bcabb72ef52f6f09ae769d7dd51a6fd274538 Mon Sep 17 00:00:00 2001 From: Crimson Hawk Date: Wed, 29 May 2024 08:53:17 +0800 Subject: [PATCH 3/8] make pipeline run on every branch --- .forgejo/workflows/verify.yml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/.forgejo/workflows/verify.yml b/.forgejo/workflows/verify.yml index c858448468..aebb79e616 100644 --- a/.forgejo/workflows/verify.yml +++ b/.forgejo/workflows/verify.yml @@ -8,7 +8,7 @@ name: 'suyu verify' on: pull_request: - branches: [ "dev" ] + # branches: [ "dev" ] paths: - 'src/**' - 'CMakeModules/**' @@ -19,7 +19,7 @@ on: # paths-ignore: # - 'src/android/**' push: - branches: [ "dev" ] + # branches: [ "dev" ] paths: - 'src/**' - 'CMakeModules/**' From b95cfe64830033280e14c57993ce4b54c4933963 Mon Sep 17 00:00:00 2001 From: Crimson-Hawk Date: Wed, 29 May 2024 16:51:35 +0800 Subject: [PATCH 4/8] fixed reference to gitlab in ci --- .ci/scripts/linux/docker.sh | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/.ci/scripts/linux/docker.sh b/.ci/scripts/linux/docker.sh index 82432bd835..43492940c3 100755 --- a/.ci/scripts/linux/docker.sh +++ b/.ci/scripts/linux/docker.sh @@ -52,9 +52,9 @@ DESTDIR="$PWD/AppDir" ninja install rm -vf AppDir/usr/bin/suyu-cmd AppDir/usr/bin/suyu-tester # Download tools needed to build an AppImage -wget -nc https://gitlab.com/suyu-emu/ext-linux-bin/-/raw/main/appimage/deploy-linux.sh -wget -nc https://gitlab.com/suyu-emu/ext-linux-bin/-/raw/main/appimage/exec-x86_64.so -wget -nc https://gitlab.com/suyu-emu/AppImageKit-checkrt/-/raw/old/AppRun.sh +wget -nc https://git.suyu.dev/suyu/ext-linux-bin/raw/branch/main/appimage/deploy-linux.sh +wget -nc https://git.suyu.dev/suyu/ext-linux-bin/raw/branch/main/appimage/exec-x86_64.so +wget -nc https://git.suyu.dev/suyu/AppImageKit-checkrt/raw/branch/gh-workflow/AppRun # Set executable bit chmod 755 \ From e1f809079ed36a6d094f38bf8ba44b27c4332afb Mon Sep 17 00:00:00 2001 From: Crimson-Hawk Date: Wed, 29 May 2024 16:51:35 +0800 Subject: [PATCH 5/8] fixed reference to gitlab in ci --- .ci/scripts/clang/docker.sh | 2 +- .ci/scripts/linux/docker.sh | 2 +- .ci/scripts/windows/docker.sh | 2 +- 3 files changed, 3 insertions(+), 3 deletions(-) diff --git a/.ci/scripts/clang/docker.sh b/.ci/scripts/clang/docker.sh index 57fbb97544..2fd100b8f8 100755 --- a/.ci/scripts/clang/docker.sh +++ b/.ci/scripts/clang/docker.sh @@ -7,7 +7,7 @@ # Exit on error, rather than continuing with the rest of the script. set -e -ccache -sv +ccache -s mkdir build || true && cd build cmake .. \ diff --git a/.ci/scripts/linux/docker.sh b/.ci/scripts/linux/docker.sh index 43492940c3..c932b5a88a 100755 --- a/.ci/scripts/linux/docker.sh +++ b/.ci/scripts/linux/docker.sh @@ -6,7 +6,7 @@ # Exit on error, rather than continuing with the rest of the script. set -e -ccache -sv +ccache -s mkdir build || true && cd build cmake .. \ diff --git a/.ci/scripts/windows/docker.sh b/.ci/scripts/windows/docker.sh index 73e000324c..12264576e9 100755 --- a/.ci/scripts/windows/docker.sh +++ b/.ci/scripts/windows/docker.sh @@ -8,7 +8,7 @@ set -e #cd /suyu -ccache -sv +ccache -s rm -rf build mkdir -p build && cd build From 7b13512b41682ec85395f4a9144f67da1a7f1c53 Mon Sep 17 00:00:00 2001 From: Crimson-Hawk Date: Wed, 29 May 2024 16:51:35 +0800 Subject: [PATCH 6/8] fixed reference to gitlab in ci --- .ci/scripts/clang/docker.sh | 2 + .ci/scripts/linux/docker.sh | 2 + .ci/scripts/windows/docker.sh | 2 + temp.sh | 75 +++++++++++++++++++++++++++++++++++ 4 files changed, 81 insertions(+) create mode 100644 temp.sh diff --git a/.ci/scripts/clang/docker.sh b/.ci/scripts/clang/docker.sh index 2fd100b8f8..d59f672087 100755 --- a/.ci/scripts/clang/docker.sh +++ b/.ci/scripts/clang/docker.sh @@ -9,6 +9,8 @@ set -e ccache -s +git submodule update --init --recursive + mkdir build || true && cd build cmake .. \ -DCMAKE_BUILD_TYPE=Release \ diff --git a/.ci/scripts/linux/docker.sh b/.ci/scripts/linux/docker.sh index c932b5a88a..9854429257 100755 --- a/.ci/scripts/linux/docker.sh +++ b/.ci/scripts/linux/docker.sh @@ -8,6 +8,8 @@ set -e ccache -s +git submodule update --init --recursive + mkdir build || true && cd build cmake .. \ -DBoost_USE_STATIC_LIBS=ON \ diff --git a/.ci/scripts/windows/docker.sh b/.ci/scripts/windows/docker.sh index 12264576e9..ba40e5dbbb 100755 --- a/.ci/scripts/windows/docker.sh +++ b/.ci/scripts/windows/docker.sh @@ -10,6 +10,8 @@ set -e ccache -s +git submodule update --init --recursive + rm -rf build mkdir -p build && cd build /usr/bin/x86_64-w64-mingw32-cmake .. \ diff --git a/temp.sh b/temp.sh new file mode 100644 index 0000000000..61aff76cbf --- /dev/null +++ b/temp.sh @@ -0,0 +1,75 @@ +ccache -sv + +mkdir build || true && cd build +cmake .. \ + -DBoost_USE_STATIC_LIBS=ON \ + -DCMAKE_BUILD_TYPE=RelWithDebInfo \ + -DSUYU_USE_PRECOMPILED_HEADERS=OFF \ + -DDYNARMIC_USE_PRECOMPILED_HEADERS=OFF \ + -DCMAKE_CXX_FLAGS="-march=x86-64-v2" \ + -DCMAKE_CXX_COMPILER=/usr/local/bin/g++ \ + -DCMAKE_C_COMPILER=/usr/local/bin/gcc \ + -DCMAKE_INSTALL_PREFIX="/usr" \ + -DDISPLAY_VERSION=$1 \ + -DENABLE_COMPATIBILITY_LIST_DOWNLOAD=OFF \ + -DENABLE_QT_TRANSLATION=OFF \ + -DUSE_DISCORD_PRESENCE=ON \ + -DSUYU_ENABLE_COMPATIBILITY_REPORTING=${ENABLE_COMPATIBILITY_REPORTING:-"OFF"} \ + -DSUYU_USE_BUNDLED_FFMPEG=ON \ + -DSUYU_ENABLE_LTO=OFF \ + -DSUYU_CRASH_DUMPS=ON \ + -DSUYU_USE_FASTER_LD=ON \ + -GNinja + +ninja + +ccache -sv + +ctest -VV -C Release + +# Separate debug symbols from specified executables +for EXE in suyu; do + EXE_PATH="bin/$EXE" + # Copy debug symbols out + objcopy --only-keep-debug $EXE_PATH $EXE_PATH.debug + # Add debug link and strip debug symbols + objcopy -g --add-gnu-debuglink=$EXE_PATH.debug $EXE_PATH $EXE_PATH.out + # Overwrite original with stripped copy + mv $EXE_PATH.out $EXE_PATH +done +# Strip debug symbols from all executables +find bin/ -type f -not -regex '.*.debug' -exec strip -g {} ';' + +DESTDIR="$PWD/AppDir" ninja install +rm -vf AppDir/usr/bin/suyu-cmd AppDir/usr/bin/suyu-tester + +# Download tools needed to build an AppImage +wget -nc https://git.suyu.dev/suyu/ext-linux-bin/raw/branch/main/appimage/deploy-linux.sh +wget -nc https://git.suyu.dev/suyu/ext-linux-bin/raw/branch/main/appimage/exec-x86_64.so +wget -nc https://git.suyu.dev/suyu/AppImageKit-checkrt/raw/branch/gh-workflow/AppRun + +# Set executable bit +chmod 755 \ + deploy-linux.sh \ + AppRun.sh \ + exec-x86_64.so \ + +# Workaround for https://github.com/AppImage/AppImageKit/issues/828 +export APPIMAGE_EXTRACT_AND_RUN=1 + +mkdir -p AppDir/usr/optional +mkdir -p AppDir/usr/optional/libstdc++ +mkdir -p AppDir/usr/optional/libgcc_s + +# Deploy suyu's needed dependencies +DEPLOY_QT=1 ./deploy-linux.sh AppDir/usr/bin/suyu AppDir + +# Workaround for libQt5MultimediaGstTools indirectly requiring libwayland-client and breaking Vulkan usage on end-user systems +find AppDir -type f -regex '.*libwayland-client\.so.*' -delete -print + +# Workaround for building suyu with GCC 10 but also trying to distribute it to Ubuntu 18.04 et al. +# See https://github.com/darealshinji/AppImageKit-checkrt +cp exec-x86_64.so AppDir/usr/optional/exec.so +cp AppRun.sh AppDir/AppRun +cp --dereference /usr/lib/x86_64-linux-gnu/libstdc++.so.6 AppDir/usr/optional/libstdc++/libstdc++.so.6 +cp --dereference /lib/x86_64-linux-gnu/libgcc_s.so.1 AppDir/usr/optional/libgcc_s/libgcc_s.so.1 From 5f351bf2b37d380371fef5c357eaf571c760ed46 Mon Sep 17 00:00:00 2001 From: Crimson-Hawk Date: Wed, 29 May 2024 17:30:20 +0800 Subject: [PATCH 7/8] remove temp.sh --- temp.sh | 75 --------------------------------------------------------- 1 file changed, 75 deletions(-) delete mode 100644 temp.sh diff --git a/temp.sh b/temp.sh deleted file mode 100644 index 61aff76cbf..0000000000 --- a/temp.sh +++ /dev/null @@ -1,75 +0,0 @@ -ccache -sv - -mkdir build || true && cd build -cmake .. \ - -DBoost_USE_STATIC_LIBS=ON \ - -DCMAKE_BUILD_TYPE=RelWithDebInfo \ - -DSUYU_USE_PRECOMPILED_HEADERS=OFF \ - -DDYNARMIC_USE_PRECOMPILED_HEADERS=OFF \ - -DCMAKE_CXX_FLAGS="-march=x86-64-v2" \ - -DCMAKE_CXX_COMPILER=/usr/local/bin/g++ \ - -DCMAKE_C_COMPILER=/usr/local/bin/gcc \ - -DCMAKE_INSTALL_PREFIX="/usr" \ - -DDISPLAY_VERSION=$1 \ - -DENABLE_COMPATIBILITY_LIST_DOWNLOAD=OFF \ - -DENABLE_QT_TRANSLATION=OFF \ - -DUSE_DISCORD_PRESENCE=ON \ - -DSUYU_ENABLE_COMPATIBILITY_REPORTING=${ENABLE_COMPATIBILITY_REPORTING:-"OFF"} \ - -DSUYU_USE_BUNDLED_FFMPEG=ON \ - -DSUYU_ENABLE_LTO=OFF \ - -DSUYU_CRASH_DUMPS=ON \ - -DSUYU_USE_FASTER_LD=ON \ - -GNinja - -ninja - -ccache -sv - -ctest -VV -C Release - -# Separate debug symbols from specified executables -for EXE in suyu; do - EXE_PATH="bin/$EXE" - # Copy debug symbols out - objcopy --only-keep-debug $EXE_PATH $EXE_PATH.debug - # Add debug link and strip debug symbols - objcopy -g --add-gnu-debuglink=$EXE_PATH.debug $EXE_PATH $EXE_PATH.out - # Overwrite original with stripped copy - mv $EXE_PATH.out $EXE_PATH -done -# Strip debug symbols from all executables -find bin/ -type f -not -regex '.*.debug' -exec strip -g {} ';' - -DESTDIR="$PWD/AppDir" ninja install -rm -vf AppDir/usr/bin/suyu-cmd AppDir/usr/bin/suyu-tester - -# Download tools needed to build an AppImage -wget -nc https://git.suyu.dev/suyu/ext-linux-bin/raw/branch/main/appimage/deploy-linux.sh -wget -nc https://git.suyu.dev/suyu/ext-linux-bin/raw/branch/main/appimage/exec-x86_64.so -wget -nc https://git.suyu.dev/suyu/AppImageKit-checkrt/raw/branch/gh-workflow/AppRun - -# Set executable bit -chmod 755 \ - deploy-linux.sh \ - AppRun.sh \ - exec-x86_64.so \ - -# Workaround for https://github.com/AppImage/AppImageKit/issues/828 -export APPIMAGE_EXTRACT_AND_RUN=1 - -mkdir -p AppDir/usr/optional -mkdir -p AppDir/usr/optional/libstdc++ -mkdir -p AppDir/usr/optional/libgcc_s - -# Deploy suyu's needed dependencies -DEPLOY_QT=1 ./deploy-linux.sh AppDir/usr/bin/suyu AppDir - -# Workaround for libQt5MultimediaGstTools indirectly requiring libwayland-client and breaking Vulkan usage on end-user systems -find AppDir -type f -regex '.*libwayland-client\.so.*' -delete -print - -# Workaround for building suyu with GCC 10 but also trying to distribute it to Ubuntu 18.04 et al. -# See https://github.com/darealshinji/AppImageKit-checkrt -cp exec-x86_64.so AppDir/usr/optional/exec.so -cp AppRun.sh AppDir/AppRun -cp --dereference /usr/lib/x86_64-linux-gnu/libstdc++.so.6 AppDir/usr/optional/libstdc++/libstdc++.so.6 -cp --dereference /lib/x86_64-linux-gnu/libgcc_s.so.1 AppDir/usr/optional/libgcc_s/libgcc_s.so.1 From daf2c1f49658ebe88d9038baf35d4e3c3703a454 Mon Sep 17 00:00:00 2001 From: Crimson-Hawk Date: Wed, 29 May 2024 17:43:46 +0800 Subject: [PATCH 8/8] fix android build --- .ci/scripts/android/build.sh | 2 ++ 1 file changed, 2 insertions(+) diff --git a/.ci/scripts/android/build.sh b/.ci/scripts/android/build.sh index 935919b6de..885ebfee4c 100755 --- a/.ci/scripts/android/build.sh +++ b/.ci/scripts/android/build.sh @@ -7,6 +7,8 @@ export NDK_CCACHE="$(which ccache)" ccache -s +git submodule update --init --recursive + BUILD_FLAVOR="mainline" BUILD_TYPE="release"