Update to workflow to v4 of tarball artifact actions. #223
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
name: C/C++ CI | |
on: [push, pull_request] | |
jobs: | |
Tarball: | |
runs-on: ubuntu-latest | |
steps: | |
- uses: actions/checkout@v4 | |
with: | |
fetch-depth: 0 | |
- name: install dependencies | |
run: | |
sudo apt-get update | |
&& sudo apt-get install g++ autoconf-archive libasound-dev doxygen | |
- name: automake | |
run: | |
(./autogen.sh || (cat config.log; false)) | |
&& make distcheck && make clean | |
- name: Archive dist tarball artifact | |
uses: actions/upload-artifact@v4 | |
with: | |
name: rtaudio-dev-tarball | |
path: rtaudio-*.tar.gz | |
Linux: | |
runs-on: ubuntu-latest | |
strategy: | |
matrix: | |
include: | |
- api: jack | |
APIcmake: JACK | |
mesonapi: jack=enabled | |
deps: libjack-dev | |
- api: alsa | |
APIcmake: ALSA | |
mesonapi: alsa=enabled | |
deps: libasound-dev | |
- api: pulse | |
APIcmake: PULSE | |
mesonapi: pulse=enabled | |
deps: libpulse-dev | |
- api: oss | |
APIcmake: OSS | |
mesonapi: oss=true | |
deps: oss4-dev | |
steps: | |
- uses: actions/checkout@v2 | |
with: | |
fetch-depth: 0 | |
- name: install dependencies | |
run: | |
sudo apt-get update | |
&& sudo apt-get install g++ autoconf-archive cmake python3-pip ninja-build doxygen ${{matrix.deps}} | |
&& sudo pip install meson>=0.55.0 | |
- name: automake | |
run: | |
env NOCONFIGURE=1 ./autogen.sh && mkdir bld-automake && cd bld-automake | |
&& (../configure --prefix=$PWD/inst --with-${{matrix.api}} || (cat config.log; false)) | |
&& make V=1 && make check && make install && find inst | |
- name: CMake | |
run: | |
mkdir bld-cmake && cd bld-cmake | |
&& cmake .. -DCMAKE_INSTALL_PREFIX=$PWD/inst -DRTAUDIO_API_OSS=OFF -DRTAUDIO_API_ALSA=OFF -DRTAUDIO_API_PULSE=OFF -DRTAUDIO_API_JACK=OFF -DRTAUDIO_API_${{matrix.APIcmake}}=ON && make VERBOSE=1 && make install && find inst | |
- name: Meson | |
run: meson bld-meson --prefix=$PWD/bld-meson/inst -Ddocs=true -Dalsa=disabled -Djack=disabled -Dpulse=disabled -Doss=false -D${{matrix.mesonapi}} && cd bld-meson && ninja -j1 -v install && find inst | |
MacOS: | |
runs-on: macOS-latest | |
steps: | |
- uses: actions/checkout@v2 | |
with: | |
fetch-depth: 0 | |
- name: install dependencies | |
run: brew install autoconf-archive automake cmake meson libtool | |
- name: automake | |
run: | |
env NOCONFIGURE=1 ./autogen.sh && mkdir bld-automake && cd bld-automake | |
&& (../configure --prefix=$PWD/inst || (cat config.log; false)) | |
&& make V=1 && make check && make install && find inst | |
- name: CMake | |
run: mkdir bld-cmake && cd bld-cmake && cmake .. -DCMAKE_INSTALL_PREFIX=$PWD/inst && make VERBOSE=1 && make install && find inst | |
- name: Meson | |
run: meson bld-meson --prefix=$PWD/bld-meson/inst && cd bld-meson && ninja -j1 -v install && find inst | |
MinGW: | |
runs-on: ubuntu-latest | |
strategy: | |
matrix: | |
include: | |
- host: i686-w64-mingw32 | |
api: dsound | |
- host: x86_64-w64-mingw32 | |
api: dsound | |
- host: i686-w64-mingw32 | |
api: asio | |
cppflags: -Wno-unused-but-set-variable | |
- host: x86_64-w64-mingw32 | |
api: asio | |
cppflags: -Wno-unused-but-set-variable | |
- host: i686-w64-mingw32 | |
api: wasapi | |
- host: x86_64-w64-mingw32 | |
api: wasapi | |
steps: | |
- uses: actions/checkout@v2 | |
with: | |
fetch-depth: 0 | |
- name: install dependencies | |
run: sudo apt-get update && sudo apt-get install g++-mingw-w64 autoconf-archive | |
- name: automake | |
run: | |
env NOCONFIGURE=1 ./autogen.sh | |
&& mkdir bld-automake && cd bld-automake | |
&& (../configure --prefix=$PWD/inst --host=${{matrix.host}} --with-${{matrix.api}} CPPFLAGS=${{matrix.cppflags}} || (cat config.log; false)) | |
&& make V=1 && make install && find inst |