From 3a2f072e189b6fd08651079c9e260eb9707841be Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?R=C3=A9mi=20Thebault?= Date: Sun, 11 Aug 2024 01:00:36 +0200 Subject: [PATCH] CI build pipewire --- buildscripts/ci/linux/setup.sh | 45 +++++++++++++++++++++++++++++++++- 1 file changed, 44 insertions(+), 1 deletion(-) diff --git a/buildscripts/ci/linux/setup.sh b/buildscripts/ci/linux/setup.sh index a2c0a25320efd..8eaf2fe96d6a5 100644 --- a/buildscripts/ci/linux/setup.sh +++ b/buildscripts/ci/linux/setup.sh @@ -116,12 +116,17 @@ apt_packages_ffmpeg=( libswscale-dev ) +apt_packages_pw_deps=( + libdbus-1-dev +) + sudo apt-get update sudo apt-get install -y --no-install-recommends \ "${apt_packages_basic[@]}" \ "${apt_packages_standard[@]}" \ "${apt_packages_runtime[@]}" \ - "${apt_packages_ffmpeg[@]}" + "${apt_packages_ffmpeg[@]}" \ + "${apt_packages_pw_deps[@]}" ########################################################################## # GET QT @@ -201,6 +206,44 @@ echo export PATH="${ninja_dir}:\${PATH}" >> ${ENV_FILE} echo "ninja version" $ninja_dir/ninja --version +# MESON +# Get recent version of Meson (to build pipewire) +meson_version="0.63.1" +sudo python3 -m pip install meson==${meson_version} + +########################################################################## +# BUILD PIPWIRE +########################################################################## + +pw_version="1.2.2" +pw_dir="$BUILD_TOOLS/pipewire-${pw_version}" +pw_url="https://gitlab.freedesktop.org/pipewire/pipewire/-/archive/${pw_version}/pipewire-${pw_version}.tar.gz" +if [[ ! -d "${pw_dir}" ]]; then + mkdir -p "${pw_dir}" + wget -q --show-progress -O pw.tar.gz "${pw_url}" + tar -xzf pw.tar.gz -C "${pw_dir}" --strip-components=1 + rm pw.tar.gz + pushd "${pw_dir}" + meson setup builddir \ + --buildtype=release \ + -Dsession-managers=[] \ + -Dgstreamer=disabled \ + -Dexamples=disabled \ + -Dsystemd=disabled \ + -Dselinux=disabled \ + -Dpipewire-jack=disabled \ + -Dpipewire-v4l2=disabled \ + -Djack-devel=false \ + -Dpw-cat=disabled \ + -Dpw-cat-ffmpeg=disabled + meson compile -C builddir + popd +fi + +pushd ${pw_dir} +sudo meson install -C builddir +popd + ########################################################################## # OTHER ##########################################################################