summaryrefslogtreecommitdiff
path: root/media-libs/libpipewire/libpipewire-0.3.43-r10.ebuild
diff options
context:
space:
mode:
Diffstat (limited to 'media-libs/libpipewire/libpipewire-0.3.43-r10.ebuild')
-rw-r--r--media-libs/libpipewire/libpipewire-0.3.43-r10.ebuild191
1 files changed, 0 insertions, 191 deletions
diff --git a/media-libs/libpipewire/libpipewire-0.3.43-r10.ebuild b/media-libs/libpipewire/libpipewire-0.3.43-r10.ebuild
deleted file mode 100644
index 2d229a07..00000000
--- a/media-libs/libpipewire/libpipewire-0.3.43-r10.ebuild
+++ /dev/null
@@ -1,191 +0,0 @@
-# Copyright 1999-2022 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=8
-
-PYTHON_COMPAT=( python3_{8..10} )
-
-inherit meson-multilib optfeature prefix python-any-r1 systemd udev
-
-MY_PN="pipewire"
-
-SRC_URI="https://gitlab.freedesktop.org/${MY_PN}/${MY_PN}/-/archive/${PV}/${MY_PN}-${PV}.tar.gz"
-KEYWORDS="~amd64 ~arm ~arm64 ~ppc ~ppc64 ~riscv ~sparc ~x86"
-
-DESCRIPTION="Pipewire client libraries"
-HOMEPAGE="https://pipewire.org/"
-
-LICENSE="MIT LGPL-2.1+ GPL-2"
-# ABI was broken in 0.3.42 for https://gitlab.freedesktop.org/pipewire/wireplumber/-/issues/49
-SLOT="0/0.4"
-IUSE="bluetooth doc echo-cancel extra gstreamer jack-client jack-sdk lv2 pipewire-alsa ssl systemd test v4l zeroconf"
-
-# Once replacing system JACK libraries is possible, it's likely that
-# jack-client IUSE will need blocking to avoid users accidentally
-# configuring their systems to send PW sink output to the emulated
-# JACK's sink - doing so is likely to yield no audio, cause a CPU
-# cycles consuming loop (and may even cause GUI crashes)!
-
-REQUIRED_USE="jack-sdk? ( !jack-client )"
-
-RESTRICT="!test? ( test )"
-
-BDEPEND="
- >=dev-util/meson-0.59
- virtual/pkgconfig
- ${PYTHON_DEPS}
- $(python_gen_any_dep 'dev-python/docutils[${PYTHON_USEDEP}]')
- doc? (
- app-doc/doxygen
- media-gfx/graphviz
- )
-"
-RDEPEND="
- acct-group/audio
- media-libs/alsa-lib
- sys-apps/dbus[${MULTILIB_USEDEP}]
- sys-libs/readline:=
- sys-libs/ncurses:=[unicode(+)]
- virtual/libintl[${MULTILIB_USEDEP}]
- virtual/libudev[${MULTILIB_USEDEP}]
- bluetooth? (
- media-libs/fdk-aac
- media-libs/libldac
- media-libs/libfreeaptx
- media-libs/sbc
- >=net-wireless/bluez-4.101:=
- virtual/libusb:1
- )
- echo-cancel? ( media-libs/webrtc-audio-processing:0 )
- extra? (
- >=media-libs/libsndfile-1.0.20
- )
- gstreamer? (
- >=dev-libs/glib-2.32.0:2
- >=media-libs/gstreamer-1.10.0:1.0
- media-libs/gst-plugins-base:1.0
- )
- jack-client? ( >=media-sound/jack2-1.9.10:2[dbus] )
- jack-sdk? (
- !media-sound/jack-audio-connection-kit
- !media-sound/jack2
- )
- lv2? ( media-libs/lilv )
- pipewire-alsa? (
- >=media-libs/alsa-lib-1.1.7[${MULTILIB_USEDEP}]
- !media-plugins/alsa-plugins[${MULTILIB_USEDEP},pulseaudio]
- )
- !pipewire-alsa? ( media-plugins/alsa-plugins[${MULTILIB_USEDEP},pulseaudio] )
- ssl? ( dev-libs/openssl:= )
- systemd? ( sys-apps/systemd )
- v4l? ( media-libs/libv4l )
- zeroconf? ( net-dns/avahi )
-"
-
-DEPEND="${RDEPEND}"
-
-S="${WORKDIR}/${MY_PN}-${PV}"
-
-PATCHES=(
- "${FILESDIR}"/${MY_PN}-0.3.25-enable-failed-mlock-warning.patch
-
- # Upstream patches/backports
- "${FILESDIR}"/${MY_PN}-${PV}-systemd-user-unit-dir.patch
-)
-
-# limitsdfile related code taken from =sys-auth/realtime-base-0.1
-# with changes as necessary.
-limitsdfile=40-${PN}.conf
-
-python_check_deps() {
- has_version -b "dev-python/docutils[${PYTHON_USEDEP}]"
-}
-
-src_prepare() {
- default
-
- einfo "Generating ${limitsdfile}"
- cat > ${limitsdfile} <<- EOF || die
- # Start of ${limitsdfile} from ${P}
-
- @audio - memlock 256
-
- # End of ${limitsdfile} from ${P}
- EOF
-}
-
-multilib_src_configure() {
- local emesonargs=(
- -Ddocdir="${EPREFIX}"/usr/share/doc/${PF}
- $(meson_native_use_feature zeroconf avahi)
- $(meson_native_use_feature doc docs)
- $(meson_native_enabled examples) # TODO: Figure out if this is still important now that media-session gone
- $(meson_native_enabled man)
- $(meson_feature test tests)
- -Dinstalled_tests=disabled # Matches upstream; Gentoo never installs tests
- $(meson_native_use_feature gstreamer)
- $(meson_native_use_feature gstreamer gstreamer-device-provider)
- $(meson_native_use_feature systemd)
-
- -Dsystemd-system-service=disabled # Matches upstream
- -Dsystemd-system-unit-dir="$(systemd_get_systemunitdir)"
- -Dsystemd-user-unit-dir="$(systemd_get_userunitdir)"
-
- $(meson_native_use_feature systemd systemd-user-service)
- $(meson_feature pipewire-alsa) # Allows integrating ALSA apps into PW graph
- -Dspa-plugins=enabled
- -Dalsa=enabled # Allows using kernel ALSA for sound I/O (NOTE: media-session is gone so IUSE=alsa/spa_alsa/alsa-backend might be possible)
- -Daudiomixer=enabled # Matches upstream
- -Daudioconvert=enabled # Matches upstream
- $(meson_native_use_feature bluetooth bluez5)
- $(meson_native_use_feature bluetooth bluez5-backend-hsp-native)
- $(meson_native_use_feature bluetooth bluez5-backend-hfp-native)
- $(meson_native_use_feature bluetooth bluez5-backend-ofono)
- $(meson_native_use_feature bluetooth bluez5-backend-hsphfpd)
- $(meson_native_use_feature bluetooth bluez5-codec-aac)
- $(meson_native_use_feature bluetooth bluez5-codec-aptx)
- $(meson_native_use_feature bluetooth bluez5-codec-ldac)
- $(meson_native_use_feature bluetooth libusb) # At least for now only used by bluez5 native (quirk detection of adapters)
- $(meson_native_use_feature echo-cancel echo-cancel-webrtc) #807889
- -Dcontrol=enabled # Matches upstream
- -Daudiotestsrc=enabled # Matches upstream
- -Dffmpeg=disabled # Disabled by upstream and no major developments to spa/plugins/ffmpeg/ since May 2020
- -Dpipewire-jack=enabled # Allows integrating JACK apps into PW graph
- $(meson_native_use_feature jack-client jack) # Allows PW to act as a JACK client
- $(meson_use jack-sdk jack-devel)
- $(usex jack-sdk "-Dlibjack-path=${EPREFIX}/usr/$(get_libdir)" '')
- -Dsupport=enabled # Miscellaneous/common plugins, such as null sink
- -Devl=disabled # Matches upstream
- -Dtest=disabled # fakesink and fakesource plugins
- $(meson_native_use_feature lv2)
- $(meson_native_use_feature v4l v4l2)
- -Dlibcamera=disabled # libcamera is not in Portage tree
- $(meson_native_use_feature ssl raop)
- -Dvideoconvert=enabled # Matches upstream
- -Dvideotestsrc=enabled # Matches upstream
- -Dvolume=enabled # Matches upstream
- -Dvulkan=disabled # Uses pre-compiled Vulkan compute shader to provide a CGI video source (dev thing; disabled by upstream)
- $(meson_native_use_feature extra pw-cat)
- -Dudev=enabled
- -Dudevrulesdir="${EPREFIX}$(get_udevdir)/rules.d"
- -Dsdl2=disabled # Controls SDL2 dependent code (currently only examples when -Dinstalled_tests=enabled which we never install)
- $(meson_native_use_feature extra sndfile) # Enables libsndfile dependent code (currently only pw-cat)
- -Dsession-managers="[]" # All available session managers are now their own projects, so there's nothing to build
- )
-
- meson_src_configure
-}
-
-multilib_src_install() {
- meson_src_install
-
- # We only need some libraries, trim out the rest
- rm -rvf ${D}/lib
- rm -rvf ${D}/usr/bin
- rm -rvf ${D}/usr/include
- rm -rvf ${D}/usr/$(get_libdir)/alsa-lib
- rm -rvf ${D}/usr/$(get_libdir)/gstreamer-1.0
- rm -rvf ${D}/usr/$(get_libdir)/pipewire-0.3/jack
- rm -rfv ${D}/usr/$(get_libdir)/pkgconfig
- rm -rvf ${D}/usr/share
-}