summaryrefslogtreecommitdiffstats
path: root/.github
diff options
context:
space:
mode:
authorLaserEyess <lasereyess@users.noreply.github.com>2024-02-25 11:37:03 -0500
committerDudemanguy <random342@airmail.cc>2024-02-26 15:37:37 +0000
commitd5dc1e80259b88ac05ae20f3f8df7e0c6b1bf3d7 (patch)
treed024dc8e0bd9e79af06a9948428445fd48639a8e /.github
parentf493922e301b4c627d8d0d0e09646ec3a3fa2c92 (diff)
downloadmpv-d5dc1e80259b88ac05ae20f3f8df7e0c6b1bf3d7.tar.bz2
mpv-d5dc1e80259b88ac05ae20f3f8df7e0c6b1bf3d7.tar.xz
ci: add explicit build test for ffmpeg 4.4
This uses an alpine 3.15 container, which should be one of the oldest distros that mpv master can compile on and that uses ffmpeg 4.4. Some functionality is missing due to library versions being too old on alpine, e.g. wayland, mujs, and pipewire. The alpine build is also explicitly minimal, to test builds in conditions where many common mpv features may not be available.
Diffstat (limited to '.github')
-rw-r--r--.github/workflows/build.yml52
1 files changed, 52 insertions, 0 deletions
diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml
index 595c91f28d..58781439df 100644
--- a/.github/workflows/build.yml
+++ b/.github/workflows/build.yml
@@ -205,6 +205,58 @@ jobs:
run: |
cat ./build/meson-logs/testlog.txt
+ linux-ffmpeg-4-4:
+ runs-on: ubuntu-22.04
+ container:
+ # We want to test ffmpeg 4.4 which alpine 3.15 has exactly.
+ # Furthermore, this is a very minimal build of mpv without commonly
+ # used features to test build compatibility. Musl is a nice bonus as well
+ image: alpine:3.15
+ steps:
+ - uses: actions/checkout@v4
+ - name: Install dependencies
+ run: |
+ apk update
+ apk add \
+ binutils \
+ ffmpeg-dev \
+ gcc \
+ git \
+ g++ \
+ libass-dev \
+ lua5.2-dev \
+ pulseaudio-dev \
+ libx11-dev \
+ libxfixes-dev \
+ libxkbcommon-dev \
+ libxrandr-dev \
+ libxpresent-dev \
+ libxscrnsaver-dev \
+ musl-dev \
+ py3-pip \
+ samurai
+ pip install meson
+
+ - name: Build with meson
+ id: build
+ run: |
+ ./ci/build-linux-old.sh
+
+ - name: Print meson log
+ if: ${{ failure() && steps.build.outcome == 'failure' }}
+ run: |
+ cat ./build/meson-logs/meson-log.txt
+
+ - name: Run meson tests
+ id: tests
+ run: |
+ meson test -C build
+
+ - name: Print meson test log
+ if: ${{ failure() && steps.tests.outcome == 'failure' }}
+ run: |
+ cat ./build/meson-logs/testlog.txt
+
openbsd:
runs-on: ubuntu-latest # until https://github.com/actions/runner/issues/385
timeout-minutes: 30 # avoid any weirdness with the VM