Skip to content

Windows fix

Windows fix #46

Workflow file for this run

name: CMake
on: [push, workflow_dispatch]
env:
# Customize the CMake build type here (Release, Debug, RelWithDebInfo, etc.)
BUILD_TYPE: Release
CMAKE_BUILD_PARALLEL_LEVEL: 4
jobs:
macos-universal-build:
runs-on: macos-latest
steps:
- uses: actions/checkout@v4
with:
submodules: recursive
fetch-depth: 0
- name: ccache
uses: hendrikmuhs/ccache-action@v1.2
with:
key: macos
- name: Build plugins
run: |
python3 ./build.py --compiler-launcher ccache
mv Build Build-macOS-Universal
- name: Archive Artifacts
uses: actions/upload-artifact@v4
with:
name: Build-macOS-Universal
path: Build-macOS-Universal
windows-64-build:
runs-on: windows-2022
steps:
- uses: actions/checkout@v4
with:
submodules: recursive
fetch-depth: 0
- name: Set up MSVC environment
uses: ilammy/msvc-dev-cmd@v1
with:
arch: x64
- name: Install Ninja
uses: seanmiddleditch/gha-setup-ninja@v3
- name: Build plugins
shell: bash
run: |
python3 ./build.py
mv Build Build-Win64
- name: Archive Artifacts
uses: actions/upload-artifact@v4
with:
name: Build-Win64
path: Build-Win64
windows-32-build:
runs-on: windows-2022
steps:
- uses: actions/checkout@v4
with:
submodules: recursive
fetch-depth: 0
- name: Build plugins
shell: bash
run: |
python3 ./build.py
mv Build Build-Win32
- name: Archive Artifacts
uses: actions/upload-artifact@v4
with:
name: Build-Win32
path: Build-Win32
linux-x64-build:
name: ${{ matrix.name }}
runs-on: ubuntu-latest
container:
image: ${{ matrix.os }}
options: --privileged
volumes:
- /sys/fs/cgroup:/sys/fs/cgroup
strategy:
fail-fast: false
matrix:
include:
- name: Ubuntu-22.04-x64
os: ubuntu:22.04
pacman: apt
- name: Ubuntu-24.04-x64
os: ubuntu:24.04
pacman: apt
- name: Debian-x64
os: debian
pacman: apt
- name: Fedora-41-x64
os: fedora:41
pacman: dnf
- name: Fedora-42-x64
os: fedora:42
pacman: dnf
- name: OpenSUSE-Tumbleweed-x64
os: opensuse/tumbleweed
pacman: zypper
- name: Arch-x64
os: archlinux
pacman: pacman
steps:
- name: Install Dependencies (dnf)
if: ${{ matrix.pacman == 'dnf' }}
run: dnf install -y git cmake alsa-lib-devel libXinerama-devel freetype-devel curl libcurl-devel wget bzip2 gcc-c++ libXi-devel libXcomposite-devel freeglut-devel libXrandr-devel libXcursor-devel xz ccache python python3-pip jack-audio-connection-kit-devel libatomic unzip ninja-build
- name: Install Dependencies (apt)
if: ${{ matrix.pacman == 'apt' }}
run: apt update && DEBIAN_FRONTEND=noninteractive TZ="Europe/Amsterdam" apt install -y cmake git wget bzip2 build-essential libasound2-dev libjack-jackd2-dev curl libcurl4-openssl-dev libfreetype6-dev libx11-dev libxi-dev libxcomposite-dev libxcursor-dev libxcursor-dev libxext-dev libxrandr-dev libxinerama-dev ccache python3 python3-pip freeglut3-dev unzip ninja-build
- name: Install Dependencies (zypper)
if: ${{ matrix.pacman == 'zypper' }}
run: zypper refresh && zypper install -y git rsync wget bzip2 xz tar cmake alsa-devel libXinerama-devel libXi-devel libcurl-devel libXcomposite-devel freeglut-devel libXrandr-devel libXcursor-devel freetype2-devel gcc gcc-c++ curl ccache python3 libjack-devel gawk unzip ninja
- name: Install Dependencies (pacman)
if: ${{ matrix.pacman == 'pacman' }}
run: pacman -Sy && pacman -S --noconfirm cmake wget bzip2 git alsa-lib freetype2 libx11 libxcursor libxi libxext libxinerama libxrandr libxrender webkit2gtk cmake make gcc pkgconf python python-pip curl ccache freeglut mesa glfw-x11 glew jack2 openssl unzip ninja && pacman --noconfirm -Syu
- uses: actions/checkout@v4
with:
submodules: recursive
fetch-depth: 0
- name: Update cmake
working-directory: ${{github.workspace}}
run: ./.github/scripts/install-cmake.sh
- name: ccache
uses: hendrikmuhs/ccache-action@v1.2
with:
key: ${{ matrix.name }}
- name: Build plugins
run: |
python3 ./build.py --compiler-launcher ccache
mv Build Build-${{ matrix.name }}
- name: Archive Artifacts
uses: actions/upload-artifact@v4
with:
name: Build-${{ matrix.name }}
path: Build-${{ matrix.name }}
linux-arm-build:
name: ${{ matrix.name }}
runs-on: ubuntu-24.04-arm
container:
image: ${{ matrix.os }}
options: --privileged
volumes:
- /sys/fs/cgroup:/sys/fs/cgroup
strategy:
fail-fast: false
matrix:
include:
- name: Ubuntu-22.04-aarch64
os: ubuntu:22.04
pacman: apt
- name: Ubuntu-24.04-aarch64
os: ubuntu:24.04
pacman: apt
- name: Debian-aarch64
os: debian
pacman: apt
- name: Fedora-41-aarch64
os: fedora:41
pacman: dnf
- name: Fedora-42-aarch64
os: fedora:42
pacman: dnf
steps:
- name: Install Dependencies (dnf)
if: ${{ matrix.pacman == 'dnf' }}
run: dnf install -y git cmake alsa-lib-devel libXinerama-devel freetype-devel curl libcurl-devel wget bzip2 gcc-c++ libXi-devel libXcomposite-devel freeglut-devel libXrandr-devel libXcursor-devel xz ccache python python3-pip jack-audio-connection-kit-devel libatomic unzip ninja-build
- name: Install Dependencies (apt)
if: ${{ matrix.pacman == 'apt' }}
run: apt update && DEBIAN_FRONTEND=noninteractive TZ="Europe/Amsterdam" apt install -y cmake git wget bzip2 build-essential libasound2-dev libjack-jackd2-dev curl libcurl4-openssl-dev libfreetype6-dev libx11-dev libxi-dev libxcomposite-dev libxcursor-dev libxcursor-dev libxext-dev libxrandr-dev libxinerama-dev ccache python3 python3-pip freeglut3-dev unzip ninja-build
- uses: actions/checkout@v4
with:
submodules: recursive
fetch-depth: 0
- name: Update cmake
working-directory: ${{github.workspace}}
run: ./.github/scripts/install-cmake.sh
- name: ccache
uses: hendrikmuhs/ccache-action@v1.2
with:
key: ${{ matrix.name }}
- name: Build plugins
run: |
python3 ./build.py --compiler-launcher ccache
mv Build Build-${{ matrix.name }}
- name: Archive Artifacts
uses: actions/upload-artifact@v4
with:
name: Build-${{ matrix.name }}
path: Build-${{ matrix.name }}