gstreamer-rs/ci/install-gst.sh
Nirbheek Chauhan 4349ef5b03 ci: Use debian's gtk package instead of building our own
GTK 4.14 needs a newer glib, but we cannot build and use our own
because the system glib ends up taking precedence because cargo-c
doesn't set RPATHs for the plugins it builds.

The oldest GTK that supports glib 2.74 is GTK 4.10, and Debian 12
ships GTK 4.8, so let's just use the system GTK.

Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer-rs/-/merge_requests/1506>
2024-08-22 10:56:51 +01:00

50 lines
1 KiB
Bash
Executable file

#! /bin/bash
set -e
DEFAULT_BRANCH="$GST_UPSTREAM_BRANCH"
pip3 install meson==1.5.1 --break-system-packages
# gstreamer-rs already has a 'gstreamer' directory so don't clone there
pushd .
cd ..
git clone https://gitlab.freedesktop.org/gstreamer/gstreamer.git \
--depth 1 \
--branch "$DEFAULT_BRANCH"
cd gstreamer
# plugins required by tests
PLUGINS=(
-Dgst-plugins-base:ogg=enabled
-Dgst-plugins-base:vorbis=enabled
-Dgst-plugins-base:theora=enabled
-Dgst-plugins-good:matroska=enabled
-Dgst-plugins-good:vpx=enabled
-Dgst-plugins-bad:opus=enabled
-Dgst-plugins-ugly:x264=enabled
)
meson setup build \
-Dprefix=/usr/local \
-Dgpl=enabled \
-Dugly=enabled \
-Dexamples=disabled \
-Dgtk_doc=disabled \
-Dintrospection=disabled \
-Dlibav=disabled \
-Dpython=disabled \
-Dvaapi=disabled \
"${PLUGINS[@]}" "$@"
meson compile -C build
meson install -C build
ldconfig
cd ..
rm -rf gstreamer/
# Check what plugins we installed
gst-inspect-1.0
popd