diff options
| author | 2021-12-22 23:31:57 -0700 | |
|---|---|---|
| committer | 2022-07-04 21:21:56 -0600 | |
| commit | a1815b617ceebf9a0a43c6fb89a13ac7f37f9ba4 (patch) | |
| tree | b5822f53279efae6dc0353732eae08e8d251f3d0 | |
| parent | Merge pull request #8521 from lat9nq/gdbstub-in-bounds (diff) | |
| download | yuzu-a1815b617ceebf9a0a43c6fb89a13ac7f37f9ba4.tar.gz yuzu-a1815b617ceebf9a0a43c6fb89a13ac7f37f9ba4.tar.xz yuzu-a1815b617ceebf9a0a43c6fb89a13ac7f37f9ba4.zip | |
CI: Use GitHub Actions to check pull requests
| -rwxr-xr-x | .ci/scripts/clang/docker.sh | 2 | ||||
| -rwxr-xr-x | .ci/scripts/linux/docker.sh | 2 | ||||
| -rwxr-xr-x | .ci/scripts/windows/docker.sh | 17 | ||||
| -rw-r--r-- | .github/workflows/verify.yml | 52 |
4 files changed, 63 insertions, 10 deletions
diff --git a/.ci/scripts/clang/docker.sh b/.ci/scripts/clang/docker.sh index 885d74e97..4bb07105a 100755 --- a/.ci/scripts/clang/docker.sh +++ b/.ci/scripts/clang/docker.sh | |||
| @@ -3,8 +3,6 @@ | |||
| 3 | # Exit on error, rather than continuing with the rest of the script. | 3 | # Exit on error, rather than continuing with the rest of the script. |
| 4 | set -e | 4 | set -e |
| 5 | 5 | ||
| 6 | cd /yuzu | ||
| 7 | |||
| 8 | ccache -s | 6 | ccache -s |
| 9 | 7 | ||
| 10 | mkdir build || true && cd build | 8 | mkdir build || true && cd build |
diff --git a/.ci/scripts/linux/docker.sh b/.ci/scripts/linux/docker.sh index 5070b92d1..38b29294c 100755 --- a/.ci/scripts/linux/docker.sh +++ b/.ci/scripts/linux/docker.sh | |||
| @@ -3,8 +3,6 @@ | |||
| 3 | # Exit on error, rather than continuing with the rest of the script. | 3 | # Exit on error, rather than continuing with the rest of the script. |
| 4 | set -e | 4 | set -e |
| 5 | 5 | ||
| 6 | cd /yuzu | ||
| 7 | |||
| 8 | ccache -s | 6 | ccache -s |
| 9 | 7 | ||
| 10 | mkdir build || true && cd build | 8 | mkdir build || true && cd build |
diff --git a/.ci/scripts/windows/docker.sh b/.ci/scripts/windows/docker.sh index f53d837d1..6420c8f7d 100755 --- a/.ci/scripts/windows/docker.sh +++ b/.ci/scripts/windows/docker.sh | |||
| @@ -2,19 +2,24 @@ | |||
| 2 | 2 | ||
| 3 | set -e | 3 | set -e |
| 4 | 4 | ||
| 5 | cd /yuzu | 5 | #cd /yuzu |
| 6 | 6 | ||
| 7 | ccache -s | 7 | ccache -s |
| 8 | 8 | ||
| 9 | mkdir build || true && cd build | 9 | mkdir -p "$HOME/.conan/" |
| 10 | LDFLAGS="-fuse-ld=lld" | 10 | cp -rv /home/yuzu/.conan/profiles/ "$HOME/.conan/" |
| 11 | cp -rv /home/yuzu/.conan/settings.yml "$HOME/.conan/" | ||
| 12 | |||
| 13 | mkdir -p build && cd build | ||
| 14 | export LDFLAGS="-fuse-ld=lld" | ||
| 11 | # -femulated-tls required due to an incompatibility between GCC and Clang | 15 | # -femulated-tls required due to an incompatibility between GCC and Clang |
| 12 | # TODO(lat9nq): If this is widespread, we probably need to add this to CMakeLists where appropriate | 16 | # TODO(lat9nq): If this is widespread, we probably need to add this to CMakeLists where appropriate |
| 17 | export CFLAGS="-femulated-tls" | ||
| 18 | export CXXFLAGS="${CFLAGS}" | ||
| 13 | cmake .. \ | 19 | cmake .. \ |
| 14 | -DCMAKE_BUILD_TYPE=Release \ | 20 | -DCMAKE_BUILD_TYPE=Release \ |
| 15 | -DCMAKE_CXX_FLAGS="-femulated-tls" \ | 21 | -DCMAKE_TOOLCHAIN_FILE="${PWD}/../CMakeModules/MinGWClangCross.cmake" \ |
| 16 | -DCMAKE_TOOLCHAIN_FILE="$(pwd)/../CMakeModules/MinGWClangCross.cmake" \ | 22 | -DDISPLAY_VERSION="$1" \ |
| 17 | -DDISPLAY_VERSION=$1 \ | ||
| 18 | -DENABLE_COMPATIBILITY_LIST_DOWNLOAD=ON \ | 23 | -DENABLE_COMPATIBILITY_LIST_DOWNLOAD=ON \ |
| 19 | -DENABLE_QT_TRANSLATION=ON \ | 24 | -DENABLE_QT_TRANSLATION=ON \ |
| 20 | -DUSE_CCACHE=ON \ | 25 | -DUSE_CCACHE=ON \ |
diff --git a/.github/workflows/verify.yml b/.github/workflows/verify.yml new file mode 100644 index 000000000..e601ecd40 --- /dev/null +++ b/.github/workflows/verify.yml | |||
| @@ -0,0 +1,52 @@ | |||
| 1 | name: 'yuzu verify' | ||
| 2 | |||
| 3 | on: | ||
| 4 | pull_request: | ||
| 5 | branches: [ master ] | ||
| 6 | |||
| 7 | jobs: | ||
| 8 | format: | ||
| 9 | name: 'verify formatting' | ||
| 10 | runs-on: ubuntu-latest | ||
| 11 | container: | ||
| 12 | image: yuzuemu/build-environments:linux-clang-format | ||
| 13 | options: -u 1001 | ||
| 14 | steps: | ||
| 15 | - uses: actions/checkout@v2 | ||
| 16 | with: | ||
| 17 | submodules: false | ||
| 18 | - name: 'Verify Formatting' | ||
| 19 | run: bash -ex ./.ci/scripts/format/script.sh | ||
| 20 | build: | ||
| 21 | name: 'test build' | ||
| 22 | needs: format | ||
| 23 | runs-on: ubuntu-latest | ||
| 24 | strategy: | ||
| 25 | fail-fast: false | ||
| 26 | matrix: | ||
| 27 | include: | ||
| 28 | - type: clang | ||
| 29 | image: linux-fresh | ||
| 30 | - type: linux | ||
| 31 | image: linux-fresh | ||
| 32 | - type: windows | ||
| 33 | image: linux-mingw | ||
| 34 | container: | ||
| 35 | image: yuzuemu/build-environments:${{ matrix.image }} | ||
| 36 | options: -u 1001 | ||
| 37 | steps: | ||
| 38 | - uses: actions/checkout@v2 | ||
| 39 | with: | ||
| 40 | submodules: recursive | ||
| 41 | fetch-depth: 0 | ||
| 42 | - name: Set up cache | ||
| 43 | uses: actions/cache@v2 | ||
| 44 | with: | ||
| 45 | path: ~/.ccache | ||
| 46 | key: ${{ runner.os }}-${{ matrix.image }}-${{ github.sha }} | ||
| 47 | restore-keys: | | ||
| 48 | ${{ runner.os }}-${{ matrix.image }}- | ||
| 49 | - name: Build | ||
| 50 | run: ./.ci/scripts/${{ matrix.type }}/docker.sh | ||
| 51 | env: | ||
| 52 | ENABLE_COMPATIBILITY_REPORTING: "ON" | ||