Merge branch 'dev' into 'dev'

Adding beggining of CI build

See merge request suyu-emu/suyu!69
This commit is contained in:
Jermz 2024-03-08 05:02:31 +00:00
commit 82fc4ddacc
1 changed files with 69 additions and 0 deletions

View File

@ -1,5 +1,25 @@
variables:
PR_NUMBER: "pr$CI_MERGE_REQUEST_IID"
stages: stages:
- format
- build - build
- build-mac
- build-msvc
- android
format:
stage: format
image: ubuntu:latest
before_script:
- echo "deb http://apt.llvm.org/jammy/ llvm-toolchain-jammy main" >> /etc/apt/sources.list
- apt-get update
- apt-get -y install git clang-format-15 clang-15 sdkmanager android-sdk bash openjdk-21-jdk openjdk-21-jre && clang-format-15 --version
- export ANDROID_HOME="/usr/lib/android-sdk/"
- echo y | sdkmanager --sdk_root=/usr/lib/android-sdk --licenses
script:
- bash -ex ./.ci/scripts/format/script.sh
build-linux: build-linux:
stage: build stage: build
@ -17,3 +37,52 @@ build-linux:
artifacts: artifacts:
paths: paths:
- artifacts/* - artifacts/*
build-mac:
stage: build-mac
image: ubuntu:latest
script:
- apt-get update -y
- apt-get install -y autoconf automake boost ccache ffmpeg fmt glslang hidapi libtool libusb lz4 ninja-build nlohmann-json openssl pkg-config qt5-default libsdl2-dev speex zlib1g-dev zlib zstd
- mkdir build
- cd build
- export Qt5_DIR="/usr/local/Qt-5.x/lib/cmake"
- cmake .. -GNinja -DCMAKE_BUILD_TYPE=RelWithDebInfo -DYUZU_USE_BUNDLED_VCPKG=OFF -DYUZU_TESTS=OFF -DENABLE_WEB_SERVICE=OFF -DENABLE_LIBUSB=OFF
- ninja
artifacts:
name: "macos"
paths:
- build/
build-msvc:
stage: build-msvc
image: mcr.microsoft.com/windows/servercore:ltsc2019
script:
- Invoke-WebRequest -Uri "https://github.com/mbitsnbites/buildcache/releases/download/v0.28.4/buildcache-windows.zip" -OutFile "buildcache-windows.zip"
- Expand-Archive -Path "buildcache-windows.zip" -DestinationPath "C:\buildcache"
- echo "C:\buildcache\bin" | Out-File -FilePath $env:Path -Encoding utf8 -Append
- .\.ci\scripts\windows\install-vulkan-sdk.ps1
- .\CMakeModules\MSVCCache.cmake
- glslangValidator --version
- mkdir build
- cd build
- cmake .. -GNinja -DCMAKE_TOOLCHAIN_FILE="CMakeModules/MSVCCache.cmake" -DUSE_CCACHE=ON -DYUZU_USE_BUNDLED_QT=1 -DYUZU_USE_BUNDLED_SDL2=1 -DYUZU_USE_QT_WEB_ENGINE=ON -DENABLE_COMPATIBILITY_LIST_DOWNLOAD=ON -DYUZU_ENABLE_COMPATIBILITY_REPORTING=ON -DUSE_DISCORD_PRESENCE=ON -DENABLE_QT_TRANSLATION=ON -DCMAKE_BUILD_TYPE=Release -DGIT_BRANCH=pr-verify -DYUZU_CRASH_DUMPS=ON
- cmake --build .
artifacts:
name: "msvc"
paths:
- build/
android:
stage: android
image: openjdk:17
script:
- apt-get update -y
- apt-get install -y ccache apksigner glslang-dev glslang-tools
- bash -c "export PR_NUMBER=$PR_NUMBER; ./.ci/scripts/android/build.sh"
artifacts:
name: "android"
paths:
- artifacts/