meson CI: test all features enabled and disabled

That was the original intention with wrap-mode.

Signed-off-by: Rosen Penev <rosenp@gmail.com>
This commit is contained in:
Rosen Penev 2023-04-05 14:27:23 -07:00
parent 63b5ea47f9
commit e2686569bf

View File

@ -9,39 +9,39 @@ concurrency:
jobs: jobs:
Ubuntu: Ubuntu:
runs-on: ubuntu-20.04 runs-on: ubuntu-20.04
name: Linux-GCC${{matrix.cxx}}-${{matrix.deps}} name: Linux-GCC${{matrix.cxx}}-deps=${{matrix.deps}}
strategy: strategy:
matrix: matrix:
cxx: ['7', '10'] cxx: ['7', '10']
deps: ['forcefallback', 'default'] deps: ['enabled', 'disabled']
steps: steps:
- uses: actions/checkout@v3 - uses: actions/checkout@v3
- name: Install packages - name: Install packages
run: | run: |
sudo apt install -y g++-${{matrix.cxx}} sudo apt install -y g++-${{matrix.cxx}} libcurl4-gnutls-dev
python3 -m pip install meson ninja python3 -m pip install meson ninja
- name: Compile and Test - name: Compile and Test
env: env:
CXX: g++-${{matrix.cxx}} CXX: g++-${{matrix.cxx}}
run: | run: |
meson setup "${{github.workspace}}/build" --wrap-mode=${{matrix.deps}} -Dwarning_level=3 meson setup "${{github.workspace}}/build" -Dauto_features=${{matrix.deps}} -Dwarning_level=3
meson compile -C "${{github.workspace}}/build" --verbose meson compile -C "${{github.workspace}}/build" --verbose
meson test -C "${{github.workspace}}/build" --verbose meson test -C "${{github.workspace}}/build" --verbose
Ubuntu-clang: Ubuntu-clang:
runs-on: ubuntu-20.04 runs-on: ubuntu-20.04
name: Linux-Clang${{matrix.cxx}}-${{matrix.deps}} name: Linux-Clang${{matrix.cxx}}-deps=${{matrix.deps}}
strategy: strategy:
matrix: matrix:
cxx: ['7', '12'] cxx: ['7', '12']
deps: ['forcefallback', 'default'] deps: ['enabled', 'disabled']
steps: steps:
- uses: actions/checkout@v3 - uses: actions/checkout@v3
- name: Install packages - name: Install packages
run: | run: |
sudo apt install -y clang-${{matrix.cxx}} libc++abi-${{matrix.cxx}}-dev libc++-${{matrix.cxx}}-dev lld-${{matrix.cxx}} sudo apt install -y clang-${{matrix.cxx}} libc++abi-${{matrix.cxx}}-dev libc++-${{matrix.cxx}}-dev lld-${{matrix.cxx}} libcurl4-gnutls-dev
python3 -m pip install meson ninja python3 -m pip install meson ninja
- name: Compile and Test - name: Compile and Test
@ -50,7 +50,7 @@ jobs:
CXXFLAGS: -stdlib=libc++ CXXFLAGS: -stdlib=libc++
CXX_LD: lld-${{matrix.cxx}} CXX_LD: lld-${{matrix.cxx}}
run: | run: |
meson setup "${{github.workspace}}/build" --wrap-mode=${{matrix.deps}} -Dwarning_level=3 -Dcpp_std=c++20 meson setup "${{github.workspace}}/build" -Dauto_features=${{matrix.deps}} -Dwarning_level=3 -Dcpp_std=c++20
meson compile -C "${{github.workspace}}/build" --verbose meson compile -C "${{github.workspace}}/build" --verbose
meson test -C "${{github.workspace}}/build" --verbose meson test -C "${{github.workspace}}/build" --verbose
VisualStudio: VisualStudio:
@ -78,10 +78,10 @@ jobs:
meson test -C "${{github.workspace}}/build" --verbose meson test -C "${{github.workspace}}/build" --verbose
MSYS2: MSYS2:
runs-on: windows-latest runs-on: windows-latest
name: MSYS2-${{matrix.deps}}-${{matrix.platform}} name: MSYS2-${{matrix.platform}}-deps=${{matrix.deps}}
strategy: strategy:
matrix: matrix:
deps: ['forcefallback', 'default'] deps: ['enabled', 'disabled']
platform: ['MINGW32', 'MINGW64', 'UCRT64', 'CLANG32', 'CLANG64'] platform: ['MINGW32', 'MINGW64', 'UCRT64', 'CLANG32', 'CLANG64']
steps: steps:
- uses: actions/checkout@v3 - uses: actions/checkout@v3
@ -89,33 +89,40 @@ jobs:
- uses: msys2/setup-msys2@v2 - uses: msys2/setup-msys2@v2
with: with:
msystem: ${{matrix.platform}} msystem: ${{matrix.platform}}
install: >-
dos2unix
pacboy: >- pacboy: >-
cc:p cc:p
curl:p
gtest:p
libinih:p
meson:p meson:p
ninja:p ninja:p
pkgconf:p
- name: Compile and Test - name: Compile and Test
shell: msys2 {0} shell: msys2 {0}
run: | run: |
meson setup "${{github.workspace}}/build" --wrap-mode=${{matrix.deps}} -Dwarning_level=3 -Dcpp_std=c++20 meson setup "${{github.workspace}}/build" -Dauto_features=${{matrix.deps}} -Dwarning_level=3 -Dcpp_std=c++20
meson compile -C "${{github.workspace}}/build" --verbose meson compile -C "${{github.workspace}}/build" --verbose
meson test -C "${{github.workspace}}/build" --verbose meson test -C "${{github.workspace}}/build" --verbose
MacOS: MacOS:
runs-on: macos-latest runs-on: macos-latest
name: macOS-${{matrix.deps}} name: macOS-deps=${{matrix.deps}}
strategy: strategy:
matrix: matrix:
deps: ['forcefallback', 'default'] deps: ['enabled', 'disabled']
steps: steps:
- uses: actions/checkout@v3 - uses: actions/checkout@v3
- name: Install packages - name: Install packages
run: | run: |
brew install curl
python3 -m pip install meson ninja python3 -m pip install meson ninja
- name: Compile and Test - name: Compile and Test
run: | run: |
meson setup "${{github.workspace}}/build" --wrap-mode=${{matrix.deps}} -Dwarning_level=3 -Dcpp_std=c++20 meson setup "${{github.workspace}}/build" -Dauto_features=${{matrix.deps}} -Dwarning_level=3 -Dcpp_std=c++20
meson compile -C "${{github.workspace}}/build" --verbose meson compile -C "${{github.workspace}}/build" --verbose
meson test -C "${{github.workspace}}/build" --verbose meson test -C "${{github.workspace}}/build" --verbose
FreeBSD: FreeBSD: