name: Pull Request Build on: workflow_dispatch: pull_request: types: [opened, reopened, synchronize] paths-ignore: - '.gitignore' - '*.md' - '.github/*.md' jobs: build: if: > !gitea.event.head_commit || !contains(gitea.event.head_commit.message, '[skip ci]') runs-on: ubuntu-24.04 steps: - name: Checkout uses: actions/checkout@v4 with: ref: ${{ gitea.event_name == 'workflow_dispatch' && inputs.branch || gitea.ref_name }} submodules: recursive - name: Install dependencies run: | sudo dpkg --add-architecture i386 wget https://apt.llvm.org/llvm.sh chmod +x llvm.sh sudo ./llvm.sh 21 sudo apt-get update -qq sudo apt-get install -y wine sudo apt-get install -y --no-install-recommends \ cmake ninja-build rsync zip util-linux \ clang-21 lld-21 llvm-21 clang-tools-21 jq - name: Install xwin (Binary) run: | curl -L https://github.com/Jake-Shadle/xwin/releases/download/0.8.0/xwin-0.8.0-x86_64-unknown-linux-musl.tar.gz | tar xz sudo mv xwin-*/xwin /usr/bin/ xwin --version - name: Create Tool Symlinks run: | sudo ln -sf /usr/bin/clang-cl-21 /usr/bin/clang-cl sudo ln -sf /usr/bin/llvm-ml-21 /usr/bin/llvm-ml sudo ln -sf /usr/bin/lld-link-21 /usr/bin/lld-link sudo ln -sf /usr/bin/clang-21 /usr/bin/clang sudo ln -sf /usr/bin/llvm-rc-21 /usr/bin/llvm-rc sudo ln -sf /usr/bin/llvm-lib-21 /usr/bin/llvm-lib sudo ln -sf /usr/bin/llvm-mt-21 /usr/bin/llvm-mt clang-cl --version - name: Setup .NET uses: actions/setup-dotnet@v4 with: dotnet-version: '10.0.x' - name: Build run: | export CMAKE_BUILD_PARALLEL_LEVEL=2 export INSTALL_PREFIX=$PWD/result taskset -c 2-3 ./build-linux.sh . Debug