diff --git a/.github/workflows/check_ap2_systemd_basic.yml b/.github/workflows/check_ap2_systemd_basic.yml new file mode 100644 index 000000000..e4ddc504b --- /dev/null +++ b/.github/workflows/check_ap2_systemd_basic.yml @@ -0,0 +1,36 @@ +name: Basic ALSA configuration for systemd, using a build folder. + +on: + push: + branches: [ "development" ] + +jobs: + build: + + runs-on: ubuntu-latest + + steps: + - uses: actions/checkout@v3 + - name: Install Dependencies + run: sudo apt-get -y --no-install-recommends install build-essential git xmltoman autoconf automake libtool libpopt-dev libconfig-dev libasound2-dev avahi-daemon libavahi-client-dev libssl-dev libsoxr-dev libplist-dev libsodium-dev libavutil-dev libavcodec-dev libavformat-dev uuid-dev libgcrypt-dev xxd + - name: Configure + run: | + mkdir build + cd build + autoreconf -i .. + ../configure --sysconfdir=/etc --with-alsa --with-soxr --with-avahi --with-ssl=openssl --with-systemd --with-airplay-2 + - name: Make + run: | + cd build + make -j + - name: Install + run: | + cd build + sudo make install + - name: Invoke + run: | + sudo systemctl start shairport-sync + - name: Terminate + run: | + sudo systemctl stop shairport-sync + diff --git a/.github/workflows/check_ap2_systemd_full.yml b/.github/workflows/check_ap2_systemd_full.yml new file mode 100644 index 000000000..3461a4f9e --- /dev/null +++ b/.github/workflows/check_ap2_systemd_full.yml @@ -0,0 +1,32 @@ +name: Full configuration (but without apple-alac) for systemd. + +on: + push: + branches: [ "development" ] + +jobs: + build: + + runs-on: ubuntu-latest + + steps: + - uses: actions/checkout@v3 + - name: Install Dependencies + run: sudo apt-get -y --no-install-recommends install build-essential git xmltoman autoconf automake libtool libpopt-dev libconfig-dev libasound2-dev libao-dev libjack-dev libpulse-dev libsoundio-dev libsndio-dev libglib2.0-dev libmosquitto-dev avahi-daemon libavahi-client-dev libssl-dev libsoxr-dev libplist-dev libsodium-dev libavutil-dev libavcodec-dev libavformat-dev uuid-dev libgcrypt-dev xxd + - name: Configure + run: | + autoreconf -i + ./configure --sysconfdir=/etc --with-alsa --with-ao --with-dummy --with-jack --with-pa --with-pipe --with-sndio --with-soundio --with-stdout --with-soxr --with-avahi --with-ssl=openssl --with-systemd --with-dbus-interface --with-mpris-interface --with-mqtt-client --with-airplay-2 + - name: Make + run: | + make -j + - name: Install + run: | + sudo make install + - name: Invoke + run: | + sudo systemctl start shairport-sync + - name: Terminate + run: | + sudo systemctl stop shairport-sync + diff --git a/.github/workflows/check_ap2_systemd_full_build_folder.yml b/.github/workflows/check_ap2_systemd_full_build_folder.yml new file mode 100644 index 000000000..a877fc35d --- /dev/null +++ b/.github/workflows/check_ap2_systemd_full_build_folder.yml @@ -0,0 +1,36 @@ +name: Full configuration (but without apple-alac) for systemd, using a build folder. + +on: + push: + branches: [ "development" ] + +jobs: + build: + + runs-on: ubuntu-latest + + steps: + - uses: actions/checkout@v3 + - name: Install Dependencies + run: sudo apt-get -y --no-install-recommends install build-essential git xmltoman autoconf automake libtool libpopt-dev libconfig-dev libasound2-dev libao-dev libjack-dev libpulse-dev libsoundio-dev libsndio-dev libglib2.0-dev libmosquitto-dev avahi-daemon libavahi-client-dev libssl-dev libsoxr-dev libplist-dev libsodium-dev libavutil-dev libavcodec-dev libavformat-dev uuid-dev libgcrypt-dev xxd + - name: Configure + run: | + mkdir build + cd build + autoreconf -i .. + ../configure --sysconfdir=/etc --with-alsa --with-ao --with-dummy --with-jack --with-pa --with-pipe --with-sndio --with-soundio --with-stdout --with-soxr --with-avahi --with-ssl=openssl --with-systemd --with-dbus-interface --with-mpris-interface --with-mqtt-client --with-airplay-2 + - name: Make + run: | + cd build + make -j + - name: Install + run: | + cd build + sudo make install + - name: Invoke + run: | + sudo systemctl start shairport-sync + - name: Terminate + run: | + sudo systemctl stop shairport-sync + diff --git a/.github/workflows/check_ap2_systemv_full.yml b/.github/workflows/check_ap2_systemv_full.yml new file mode 100644 index 000000000..8397ecb0c --- /dev/null +++ b/.github/workflows/check_ap2_systemv_full.yml @@ -0,0 +1,33 @@ +name: Full configuration (but without apple-alac) for a System V system. + +on: + push: + branches: [ "development" ] + +jobs: + build: + + runs-on: ubuntu-latest + + steps: + - uses: actions/checkout@v3 + - name: Install Dependencies + run: sudo apt-get -y --no-install-recommends install build-essential git xmltoman autoconf automake libtool libpopt-dev libdaemon-dev libconfig-dev libasound2-dev libao-dev libjack-dev libpulse-dev libsoundio-dev libsndio-dev libglib2.0-dev libmosquitto-dev avahi-daemon libavahi-client-dev libssl-dev libsoxr-dev libplist-dev libsodium-dev libavutil-dev libavcodec-dev libavformat-dev uuid-dev libgcrypt-dev xxd + - name: Configure + run: | + autoreconf -i + ./configure --sysconfdir=/etc --with-alsa --with-ao --with-dummy --with-libdaemon --with-jack --with-pa --with-pipe --with-sndio --with-soundio --with-stdout --with-soxr --with-avahi --with-ssl=openssl --with-systemv --with-dbus-interface --with-mpris-interface --with-mqtt-client --with-airplay-2 + - name: Make + run: | + make -j + - name: Install + run: | + sudo make install + - name: Invoke + run: | + sudo /etc/init.d/shairport-sync start + sleep 2 + - name: Terminate + run: | + sudo /etc/init.d/shairport-sync stop + diff --git a/.github/workflows/check_classic_mac_basic.yml b/.github/workflows/check_classic_mac_basic.yml new file mode 100644 index 000000000..2dc4e7159 --- /dev/null +++ b/.github/workflows/check_classic_mac_basic.yml @@ -0,0 +1,34 @@ +name: Basic libao configuration for macOS with BREW -- classic only, because macOS can't host NQPTP. + +on: + push: + branches: [ "development" ] + +jobs: + build: + + runs-on: macos-latest + + steps: + - uses: actions/checkout@v3 + - name: Install Dependencies + run: | + brew update + brew install automake + brew install openssl + brew install popt + brew install libconfig + brew install libao + + - name: Configure + run: | + export CPPFLAGS="-I/usr/local/opt/openssl@3/include" + export LDFLAGS="-L/usr/local/opt/openssl@3/lib" + export PATH="/usr/local/opt/openssl/bin:${PATH}" + export PKG_CONFIG_PATH="/usr/local/opt/openssl@3/lib/pkgconfig" + autoreconf -fi + ./configure --with-os=darwin --with-ao --with-stdout --with-dns_sd --with-ssl=openssl + + - name: Make + run: | + make diff --git a/.github/workflows/check_classic_systemd_basic.yml b/.github/workflows/check_classic_systemd_basic.yml new file mode 100644 index 000000000..dc2e9ec43 --- /dev/null +++ b/.github/workflows/check_classic_systemd_basic.yml @@ -0,0 +1,36 @@ +name: Basic ALSA classic configuration for systemd, using a build folder. + +on: + push: + branches: [ "development" ] + +jobs: + build: + + runs-on: ubuntu-latest + + steps: + - uses: actions/checkout@v3 + - name: Install Dependencies + run: sudo apt-get -y --no-install-recommends install build-essential git xmltoman autoconf automake libtool libpopt-dev libconfig-dev libasound2-dev avahi-daemon libavahi-client-dev libssl-dev libsoxr-dev + - name: Configure + run: | + mkdir build + cd build + autoreconf -i .. + ../configure --sysconfdir=/etc --with-alsa --with-soxr --with-avahi --with-ssl=openssl --with-systemd + - name: Make + run: | + cd build + make -j + - name: Install + run: | + cd build + sudo make install + - name: Invoke + run: | + sudo systemctl start shairport-sync + - name: Terminate + run: | + sudo systemctl stop shairport-sync + diff --git a/.github/workflows/check_classic_systemd_full.yml b/.github/workflows/check_classic_systemd_full.yml new file mode 100644 index 000000000..bf3ad6513 --- /dev/null +++ b/.github/workflows/check_classic_systemd_full.yml @@ -0,0 +1,36 @@ +name: Full classic configuration (but without apple-alac) for systemd, using a build folder. + +on: + push: + branches: [ "development" ] + +jobs: + build: + + runs-on: ubuntu-latest + + steps: + - uses: actions/checkout@v3 + - name: Install Dependencies + run: sudo apt-get -y --no-install-recommends install build-essential git xmltoman autoconf automake libtool libpopt-dev libconfig-dev libasound2-dev libao-dev libjack-dev libpulse-dev libsoundio-dev libsndio-dev libglib2.0-dev libmosquitto-dev avahi-daemon libavahi-client-dev libssl-dev libsoxr-dev + - name: Configure + run: | + mkdir build + cd build + autoreconf -i .. + ../configure --sysconfdir=/etc --with-alsa --with-ao --with-dummy --with-jack --with-pa --with-pipe --with-sndio --with-soundio --with-stdout --with-soxr --with-avahi --with-ssl=openssl --with-systemd --with-dbus-interface --with-mpris-interface --with-mqtt-client + - name: Make + run: | + cd build + make -j + - name: Install + run: | + cd build + sudo make install + - name: Invoke + run: | + sudo systemctl start shairport-sync + - name: Terminate + run: | + sudo systemctl stop shairport-sync +