6
Some checks failed
Build Eden Emulator (Wine Native) / build-windows-wine (push) Failing after 12m25s

This commit is contained in:
2025-12-27 04:17:32 -03:00
parent 2b8e269b28
commit b4ee143fc7

View File

@@ -1,4 +1,4 @@
name: Build Eden Emulator
name: Build Eden Emulator (Wine Native)
on:
push:
@@ -7,7 +7,7 @@ on:
workflow_dispatch:
jobs:
build-windows:
build-windows-wine:
runs-on: ubuntu-latest
steps:
@@ -17,62 +17,66 @@ jobs:
submodules: recursive
fetch-depth: 0
- name: Install dependencies
- name: Install Wine and Dependencies
run: |
sudo dpkg --add-architecture i386
sudo apt-get update
sudo apt-get install -y \
build-essential \
cmake \
ninja-build \
ccache \
git \
wget \
python3 \
python3-pip \
mingw-w64 \
wine64
p7zip-full \
wine \
wine32 \
wine64 \
xvfb
- name: Setup ccache
uses: actions/cache@v4
with:
path: ~/.ccache
key: ${{ runner.os }}-ccache-windows-${{ github.sha }}
restore-keys: |
${{ runner.os }}-ccache-windows-
# Configure Wine
export DISPLAY=:99
Xvfb :99 -screen 0 1024x768x16 &
sleep 3
wineboot --init || true
sleep 5
- name: Setup CPM cache
uses: actions/cache@v4
with:
path: .cache/cpm
key: ${{ runner.os }}-cpm-${{ hashFiles('**/cpmfile.json') }}
restore-keys: |
${{ runner.os }}-cpm-
- name: Install MinGW toolchain
- name: Download Windows Tools
run: |
# Set up MinGW-w64 for cross-compilation
sudo update-alternatives --set x86_64-w64-mingw32-gcc /usr/bin/x86_64-w64-mingw32-gcc-posix
sudo update-alternatives --set x86_64-w64-mingw32-g++ /usr/bin/x86_64-w64-mingw32-g++-posix
mkdir -p tools
cd tools
- name: Configure CMake for Windows
run: |
cmake -S . -B build \
-G "Ninja" \
-DCMAKE_BUILD_TYPE=Release \
-DCMAKE_TOOLCHAIN_FILE=${{ github.workspace }}/.gitea/toolchains/mingw-w64-x86_64.cmake \
-DYUZU_TESTS=OFF \
-DENABLE_QT_TRANSLATION=ON \
-DCMAKE_C_COMPILER_LAUNCHER=ccache \
-DCMAKE_CXX_COMPILER_LAUNCHER=ccache \
-DYUZU_USE_BUNDLED_OPENSSL=ON \
-DYUZU_USE_BUNDLED_FFMPEG=ON \
-DYUZU_USE_BUNDLED_SDL2=ON \
-DYUZU_USE_BUNDLED_QT=ON \
-DYUZU_USE_CPM=ON
# Download LLVM-MinGW (Windows Toolchain)
wget https://github.com/mstorsjo/llvm-mingw/releases/download/20240619/llvm-mingw-20240619-ucrt-x86_64.zip
unzip -q llvm-mingw-20240619-ucrt-x86_64.zip
mv llvm-mingw-20240619-ucrt-x86_64 llvm
- name: Build Eden
# Download CMake (Windows)
wget https://github.com/Kitware/CMake/releases/download/v3.29.2/cmake-3.29.2-windows-x86_64.zip
unzip -q cmake-3.29.2-windows-x86_64.zip
mv cmake-3.29.2-windows-x86_64 cmake
# Download Ninja (Windows)
wget https://github.com/ninja-build/ninja/releases/download/v1.12.1/ninja-win.zip
unzip -q ninja-win.zip
mkdir ninja
mv ninja.exe ninja/
- name: Setup Environment
run: |
cmake --build build --parallel $(nproc)
# Create a setup script to add tools to PATH in Wine
echo "@echo off" > setup_env.bat
echo "set PATH=Z:\home\runner\work\eden\eden\tools\llvm\bin;Z:\home\runner\work\eden\eden\tools\cmake\bin;Z:\home\runner\work\eden\eden\tools\ninja;%PATH%" >> setup_env.bat
echo "set CC=clang" >> setup_env.bat
echo "set CXX=clang++" >> setup_env.bat
- name: Configure (Wine Native)
env:
DISPLAY: :99
run: |
# We run cmake as if we are on Windows
wine cmd /c "setup_env.bat && cmake -S . -B build -G Ninja -DCMAKE_BUILD_TYPE=Release -DYUZU_TESTS=OFF -DYUZU_USE_BUNDLED_OPENSSL=ON -DYUZU_USE_BUNDLED_FFMPEG=ON -DYUZU_USE_BUNDLED_SDL2=ON -DYUZU_USE_BUNDLED_QT=ON -DYUZU_USE_CPM=ON"
- name: Build (Wine Native)
env:
DISPLAY: :99
run: |
wine cmd /c "setup_env.bat && cmake --build build --config Release"
- name: Prepare artifacts
run: |