|
|
@ -4,9 +4,9 @@ name: eden-build |
|
|
|
|
|
|
|
|
on: |
|
|
on: |
|
|
push: |
|
|
push: |
|
|
branches: [ "*" ] |
|
|
|
|
|
|
|
|
branches: [ "master" ] |
|
|
tags: [ "*" ] |
|
|
tags: [ "*" ] |
|
|
pull_request_target: |
|
|
|
|
|
|
|
|
pull_request: |
|
|
branches: [ master ] |
|
|
branches: [ master ] |
|
|
|
|
|
|
|
|
jobs: |
|
|
jobs: |
|
|
@ -25,7 +25,7 @@ jobs: |
|
|
name: source.zip |
|
|
name: source.zip |
|
|
path: artifacts/ |
|
|
path: artifacts/ |
|
|
windows: |
|
|
windows: |
|
|
runs-on: windows-latest |
|
|
|
|
|
|
|
|
runs-on: windows |
|
|
strategy: |
|
|
strategy: |
|
|
matrix: |
|
|
matrix: |
|
|
target: ["msvc"] # TODO: Add msys2 |
|
|
target: ["msvc"] # TODO: Add msys2 |
|
|
@ -42,8 +42,7 @@ jobs: |
|
|
- uses: actions/checkout@v4 |
|
|
- uses: actions/checkout@v4 |
|
|
with: |
|
|
with: |
|
|
submodules: recursive |
|
|
submodules: recursive |
|
|
fetch-depth: 1 |
|
|
|
|
|
fetch-tags: true |
|
|
|
|
|
|
|
|
fetch-depth: 0 |
|
|
|
|
|
|
|
|
- name: Set up vcpkg cache |
|
|
- name: Set up vcpkg cache |
|
|
uses: actions/cache@v4 |
|
|
uses: actions/cache@v4 |
|
|
@ -57,21 +56,24 @@ jobs: |
|
|
${{ runner.os }}-${{ matrix.target }}-vcpkg- |
|
|
${{ runner.os }}-${{ matrix.target }}-vcpkg- |
|
|
|
|
|
|
|
|
- name: Set up MSVC |
|
|
- name: Set up MSVC |
|
|
uses: ilammy/msvc-dev-cmd@v1 |
|
|
|
|
|
|
|
|
uses: https://github.com/ilammy/msvc-dev-cmd@v1 |
|
|
if: ${{ matrix.target == 'msvc' }} |
|
|
if: ${{ matrix.target == 'msvc' }} |
|
|
- name: Install extra tools |
|
|
|
|
|
run: choco install ccache ninja wget cygwin |
|
|
|
|
|
if: ${{ matrix.target == 'msvc' }} |
|
|
|
|
|
- name: Install vulkan-SDK |
|
|
|
|
|
run: ./.ci/install-vulkan-sdk.ps1 |
|
|
|
|
|
shell: pwsh |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
# - name: Install extra tools |
|
|
|
|
|
# run: choco install ccache ninja wget cygwin |
|
|
|
|
|
# if: ${{ matrix.target == 'msvc' }} |
|
|
|
|
|
|
|
|
|
|
|
# - name: Install vulkan-SDK |
|
|
|
|
|
# run: ./.ci/install-vulkan-sdk.ps1 |
|
|
|
|
|
# shell: powershell |
|
|
|
|
|
|
|
|
- name: Cygwin with autoconf # NEEDED FOR LIBUSB |
|
|
- name: Cygwin with autoconf # NEEDED FOR LIBUSB |
|
|
shell: cmd |
|
|
shell: cmd |
|
|
run: | |
|
|
run: | |
|
|
C:\tools\cygwin\cygwinsetup.exe -q -P autoconf,automake,libtool,make,pkg-config |
|
|
C:\tools\cygwin\cygwinsetup.exe -q -P autoconf,automake,libtool,make,pkg-config |
|
|
|
|
|
|
|
|
REM Create wrapper batch files for Cygwin tools in a directory that will be in PATH |
|
|
REM Create wrapper batch files for Cygwin tools in a directory that will be in PATH |
|
|
mkdir C:\cygwin-wrappers |
|
|
|
|
|
|
|
|
REM mkdir C:\cygwin-wrappers |
|
|
|
|
|
|
|
|
REM Create autoconf.bat wrapper |
|
|
REM Create autoconf.bat wrapper |
|
|
echo @echo off > C:\cygwin-wrappers\autoconf.bat |
|
|
echo @echo off > C:\cygwin-wrappers\autoconf.bat |
|
|
@ -84,6 +86,7 @@ jobs: |
|
|
REM Add the wrappers directory to PATH |
|
|
REM Add the wrappers directory to PATH |
|
|
echo C:\cygwin-wrappers>>"%GITHUB_PATH%" |
|
|
echo C:\cygwin-wrappers>>"%GITHUB_PATH%" |
|
|
echo C:\tools\cygwin\bin>>"%GITHUB_PATH%" |
|
|
echo C:\tools\cygwin\bin>>"%GITHUB_PATH%" |
|
|
|
|
|
|
|
|
- name: CMake Configure |
|
|
- name: CMake Configure |
|
|
id: cmake |
|
|
id: cmake |
|
|
shell: cmd |
|
|
shell: cmd |
|
|
@ -91,16 +94,18 @@ jobs: |
|
|
mkdir build |
|
|
mkdir build |
|
|
cd build |
|
|
cd build |
|
|
cmake .. -G Ninja -DCMAKE_BUILD_TYPE=Release -DCMAKE_C_COMPILER_LAUNCHER=ccache -DCMAKE_CXX_COMPILER_LAUNCHER=ccache -DCMAKE_TOOLCHAIN_FILE="%CD%\..\CMakeModules\MSVCCache.cmake" -DYUZU_USE_BUNDLED_QT=ON -DENABLE_QT_TRANSLATION=ON -DUSE_DISCORD_PRESENCE=ON -DYUZU_USE_BUNDLED_VCPKG=ON -DYUZU_USE_BUNDLED_SDL2=ON -DUSE_CCACHE=ON |
|
|
cmake .. -G Ninja -DCMAKE_BUILD_TYPE=Release -DCMAKE_C_COMPILER_LAUNCHER=ccache -DCMAKE_CXX_COMPILER_LAUNCHER=ccache -DCMAKE_TOOLCHAIN_FILE="%CD%\..\CMakeModules\MSVCCache.cmake" -DYUZU_USE_BUNDLED_QT=ON -DENABLE_QT_TRANSLATION=ON -DUSE_DISCORD_PRESENCE=ON -DYUZU_USE_BUNDLED_VCPKG=ON -DYUZU_USE_BUNDLED_SDL2=ON -DUSE_CCACHE=ON |
|
|
|
|
|
|
|
|
- name: Build |
|
|
- name: Build |
|
|
id: build |
|
|
id: build |
|
|
shell: cmd |
|
|
shell: cmd |
|
|
run: | |
|
|
run: | |
|
|
cd build |
|
|
cd build |
|
|
ninja yuzu yuzu-cmd yuzu-room tests -j4 |
|
|
|
|
|
|
|
|
ninja yuzu yuzu-cmd yuzu-room tests |
|
|
ccache -s -v |
|
|
ccache -s -v |
|
|
|
|
|
|
|
|
- name: Package artifacts |
|
|
- name: Package artifacts |
|
|
if: steps.build.outcome == 'success' |
|
|
if: steps.build.outcome == 'success' |
|
|
shell: pwsh |
|
|
|
|
|
|
|
|
shell: powershell |
|
|
run: | |
|
|
run: | |
|
|
$GITDATE = $(git show -s --date=short --format='%ad') -replace "-", "" |
|
|
$GITDATE = $(git show -s --date=short --format='%ad') -replace "-", "" |
|
|
$GITREV = $(git show -s --format='%h') |
|
|
$GITREV = $(git show -s --format='%h') |
|
|
@ -137,6 +142,7 @@ jobs: |
|
|
|
|
|
|
|
|
Copy-Item "LICENSE*" -Destination "$RELEASE_DIST" -ErrorAction SilentlyContinue |
|
|
Copy-Item "LICENSE*" -Destination "$RELEASE_DIST" -ErrorAction SilentlyContinue |
|
|
Copy-Item "README*" -Destination "$RELEASE_DIST" -ErrorAction SilentlyContinue |
|
|
Copy-Item "README*" -Destination "$RELEASE_DIST" -ErrorAction SilentlyContinue |
|
|
|
|
|
|
|
|
- name: Upload Windows artifacts |
|
|
- name: Upload Windows artifacts |
|
|
if: steps.build.outcome == 'success' |
|
|
if: steps.build.outcome == 'success' |
|
|
uses: forgejo/upload-artifact@v4 |
|
|
uses: forgejo/upload-artifact@v4 |
|
|
|