lets try this

This commit is contained in:
Nayla Hanegan 2024-10-10 07:42:45 -04:00
commit 1962ba5f37
2 changed files with 105 additions and 65 deletions

28
.github/workflows/build.yml vendored Normal file
View file

@ -0,0 +1,28 @@
name: Combined CI
on:
push:
pull_request:
jobs:
build_flatpak:
runs-on: ubuntu-latest
container: bilelmoussaoui/flatpak-github-actions:gnome-44
steps:
- uses: actions/checkout@v2
- name: Setup Packages
run: |
sudo flatpak remote-add --if-not-exists flathub https://flathub.org/repo/flathub.flatpakrepo
sudo flatpak install org.kde.Sdk//5.15 org.kde.Platform//5.15 -y
sudo dnf install libusb1-devel cmake git gcc-c++ libXext-devel libgudev qt6-qtbase-devel systemd-devel openal-soft-devel libevdev-devel libao-devel SOIL-devel libXrandr-devel pulseaudio-libs-devel bluez-libs-devel p7zip SDL2-devel -y
- name: Build
run: flatpak-builder --user --install --force-clean build-dir Distribution/flatpak.yml
- name: Upload Build Artifact
uses: actions/upload-artifact@v4
with:
name: DolphinMPN-flatpak
path: build-dir

View file

@ -5,79 +5,91 @@ on:
pull_request: pull_request:
jobs: jobs:
build: build_flatpak:
runs-on: ${{ matrix.os }} runs-on: ubuntu-latest
strategy: container: bilelmoussaoui/flatpak-github-actions:gnome-44
matrix:
os: [ubuntu-latest, ubuntu-latest, macos-13, windows-latest]
build_type: [flatpak, AppImage, darwin, win32]
include:
- os: ubuntu-latest
container: bilelmoussaoui/flatpak-github-actions:gnome-44
build_type: flatpak
- os: ubuntu-latest
build_type: AppImage
- os: macos-13
build_type: darwin
- os: windows-latest
build_type: win32
steps: steps:
- uses: actions/checkout@v2 - uses: actions/checkout@v2
- name: Setup Submodules
if: matrix.build_type != 'flatpak'
run: git submodule update --init --recursive
- name: Setup Packages for Flatpak - name: Setup Packages
if: matrix.os == 'ubuntu-latest' && matrix.build_type == 'flatpak' run: |
run: | sudo flatpak remote-add --if-not-exists flathub https://flathub.org/repo/flathub.flatpakrepo
sudo flatpak remote-add --if-not-exists flathub https://flathub.org/repo/flathub.flatpakrepo sudo flatpak install org.kde.Sdk//5.15 org.kde.Platform//5.15 -y
sudo flatpak install org.kde.Sdk//5.15 org.kde.Platform//5.15 -y sudo dnf install libusb1-devel cmake git gcc-c++ libXext-devel libgudev qt6-qtbase-devel systemd-devel openal-soft-devel libevdev-devel libao-devel SOIL-devel libXrandr-devel pulseaudio-libs-devel bluez-libs-devel p7zip SDL2-devel -y
sudo dnf install libusb1-devel cmake git gcc-c++ libXext-devel libgudev qt6-qtbase-devel systemd-devel openal-soft-devel libevdev-devel libao-devel SOIL-devel libXrandr-devel pulseaudio-libs-devel bluez-libs-devel p7zip SDL2-devel -y
- name: Setup Packages for AppImage - name: Build
if: matrix.os == 'ubuntu-latest' && matrix.build_type == 'AppImage' run: flatpak-builder --user --install --force-clean build-dir Distribution/flatpak.yml
run: sudo apt install ninja-build desktop-file-utils git cmake ffmpeg libavcodec-dev libavformat-dev libavutil-dev libswscale-dev libevdev-dev libusb-1.0-0-dev libxrandr-dev libxi-dev libpangocairo-1.0-0 qt6-base-private-dev libqt6svg6-dev libbluetooth-dev libasound2-dev libpulse-dev libgl1-mesa-dev libcurl4-openssl-dev
- name: Setup Packages for macOS - name: Upload Build Artifact
if: matrix.os == 'macos-13' uses: actions/upload-artifact@v4
run: brew install qt6 molten-vk p7zip pkgconfig cmake ninja with:
name: DolphinMPN-flatpak
path: Distribution/OUT/
- name: Setup MSBuild build_appimage:
if: matrix.os == 'windows-latest' runs-on: ubuntu-latest
uses: microsoft/setup-msbuild@v1.0.2
with:
vs-version: '16.6.2'
- name: Build Flatpak steps:
if: matrix.build_type == 'flatpak' - uses: actions/checkout@v2
run: flatpak-builder --user --install --force-clean build-dir Distribution/flatpak.yml
- name: Build AppImage - name: Setup Submodules
if: matrix.build_type == 'AppImage' run: git submodule update --init --recursive
run: |
mkdir -p build && cd build
cmake .. -G Ninja -DLINUX_LOCAL_DEV=true -DCMAKE_INSTALL_PREFIX=/usr -DDISTRIBUTOR="Mario Party Netplay"
ninja -j8
- name: Build macOS - name: Setup Packages
if: matrix.build_type == 'darwin' run: sudo apt install desktop-file-utils git cmake ffmpeg libavcodec-dev libavformat-dev libavutil-dev libswscale-dev libevdev-dev libusb-1.0-0-dev libxrandr-dev libxi-dev libpangocairo-1.0-0 qt6-base-private-dev libqt6svg6-dev libbluetooth-dev libasound2-dev libpulse-dev libgl1-mesa-dev libcurl4-openssl-dev
run: |
mkdir -p build && cd build
cmake .. -G Ninja -DCMAKE_CXX_FLAGS="-Xclang -fcolor-diagnostics" -DCMAKE_PREFIX_PATH=$(brew --prefix qt6) -DDISTRIBUTOR="Mario Party Netplay"
ninja -j8
- name: Build Windows - name: Build
if: matrix.build_type == 'win32' run: |
run: msbuild "D:\a\Dolphin-MPN\Dolphin-MPN\Source\dolphin-emu.sln" /verbosity:minimal /property:Configuration=Release /property:Platform=x64 mkdir -p build && cd build && cmake .. -G Ninja -DLINUX_LOCAL_DEV=true -DCMAKE_INSTALL_PREFIX=/usr -DDISTRIBUTOR="Mario Party Netplay" && ninja -j8
- name: Upload Build Artifact - name: Upload Build Artifact
uses: actions/upload-artifact@v4 uses: actions/upload-artifact@v4
with: with:
name: DolphinMPN-${{ matrix.build_type }} name: DolphinMPN-AppImage
path: | path: root/
${{ matrix.build_type == 'darwin' && github.workspace }}/build/Binaries/
${{ matrix.build_type == 'win32' && github.workspace }}/Binary/x64/ build_macos:
${{ matrix.build_type == 'AppImage' && github.workspace }}/root/ runs-on: macos-13
${{ matrix.build_type == 'flatpak' && github.workspace }}/Distribution/OUT/
steps:
- uses: actions/checkout@v2
- name: Setup Submodules
run: git submodule update --init --recursive
- name: Setup Packages
run: brew install qt6 molten-vk p7zip pkgconfig cmake ninja
- name: Build
run: |
mkdir -p build && cd build && cmake .. -G Ninja -DCMAKE_CXX_FLAGS="-Xclang -fcolor-diagnostics" -DCMAKE_PREFIX_PATH=$(brew --prefix qt6) -DDISTRIBUTOR="Mario Party Netplay" && ninja -j8
- name: Upload Build Artifact
uses: actions/upload-artifact@v4
with:
name: DolphinMPN-macOS
path: build/Binaries/
build_windows:
runs-on: windows-latest
steps:
- uses: actions/checkout@v2
- name: Setup Submodules
run: git submodule update --init --recursive
- name: Setup MSBuild
uses: microsoft/setup-msbuild@v1.0.2
with:
vs-version: '16.6.2'
- name: Build
run: msbuild "D:\a\Dolphin-MPN\Dolphin-MPN\Source\dolphin-emu.sln" /verbosity:minimal /property:Configuration=Release /property:Platform=x64
- name: Upload Build Artifact
uses: actions/upload-artifact@v4
with:
name: DolphinMPN-win32
path: Binary/x64/