From 7cfcf98964808b8b77515931d61c0941711d6c7f Mon Sep 17 00:00:00 2001 From: falkTX Date: Sun, 6 Oct 2024 18:42:22 +0200 Subject: [PATCH] More extensive CI tests Signed-off-by: falkTX --- .github/workflows/{makefile.yml => build.yml} | 56 ++++++++++++++++--- 1 file changed, 47 insertions(+), 9 deletions(-) rename .github/workflows/{makefile.yml => build.yml} (62%) diff --git a/.github/workflows/makefile.yml b/.github/workflows/build.yml similarity index 62% rename from .github/workflows/makefile.yml rename to .github/workflows/build.yml index 06763ccfd..668f22d74 100644 --- a/.github/workflows/makefile.yml +++ b/.github/workflows/build.yml @@ -11,13 +11,23 @@ env: DEBIAN_FRONTEND: noninteractive jobs: - linux-x86_64: - runs-on: ubuntu-22.04 + build: + strategy: + matrix: + os: + - macos-12 + - macos-13 + - macos-14 + - ubuntu-20.04 + - ubuntu-22.04 + - ubuntu-24.04 + runs-on: ${{ matrix.os }} steps: - uses: actions/checkout@v4 with: submodules: recursive - name: Set up dependencies + if: ${{ runner.os == 'Linux' }} run: | sudo apt-get update -qq sudo apt-get install -yq libasound2-dev libcairo2-dev libdbus-1-dev libgl1-mesa-dev liblo-dev libpulse-dev libsdl2-dev libx11-dev libxcursor-dev libxext-dev libxrandr-dev xvfb @@ -27,7 +37,7 @@ jobs: CXXFLAGS: -Werror run: | make clean >/dev/null - make -j $(nproc) + make - name: Run tests env: CFLAGS: -Werror @@ -40,39 +50,67 @@ jobs: CXXFLAGS: -Werror -std=gnu++98 run: | make clean >/dev/null - make -j $(nproc) + make + - name: As C++11 mode + env: + CFLAGS: -Werror + CXXFLAGS: -Werror -std=gnu++11 + run: | + make clean >/dev/null + make + - name: As C++14 mode + env: + CFLAGS: -Werror + CXXFLAGS: -Werror -std=gnu++14 + run: | + make clean >/dev/null + make + - name: As C++17 mode + env: + CFLAGS: -Werror + CXXFLAGS: -Werror -std=gnu++17 + run: | + make clean >/dev/null + make + - name: As C++20 mode + env: + CFLAGS: -Werror + CXXFLAGS: -Werror -std=gnu++20 + run: | + make clean >/dev/null + make - name: No namespace env: CFLAGS: -Werror CXXFLAGS: -Werror -DDONT_SET_USING_DISTRHO_NAMESPACE -DDONT_SET_USING_DGL_NAMESPACE run: | make clean >/dev/null - make -j $(nproc) + make - name: Custom namespace env: CFLAGS: -Werror CXXFLAGS: -Werror -DDISTRHO_NAMESPACE=WubbWubb -DDGL_NAMESPACE=DabDab run: | make clean >/dev/null - make -j $(nproc) + make - name: With OpenGL 3.x env: CFLAGS: -Werror CXXFLAGS: -Werror run: | make clean >/dev/null - make -j $(nproc) USE_OPENGL3=true + make USE_OPENGL3=true - name: Without Cairo env: CFLAGS: -Werror CXXFLAGS: -Werror run: | make clean >/dev/null - make -j $(nproc) HAVE_CAIRO= + make HAVE_CAIRO=false - name: Without OpenGL env: CFLAGS: -Werror CXXFLAGS: -Werror run: | make clean >/dev/null - make -j $(nproc) HAVE_OPENGL= + make HAVE_OPENGL=false