189 lines
4.7 KiB
Bash
189 lines
4.7 KiB
Bash
# Template file for 'pipewire'
|
|
pkgname=pipewire
|
|
version=0.3.58
|
|
revision=1
|
|
_pms_version=0.4.1
|
|
create_wrksrc=yes
|
|
build_wrksrc="${pkgname}-${version}"
|
|
build_style=meson
|
|
configure_args="
|
|
--auto-features=enabled
|
|
-Db_ndebug=false
|
|
-Ddocs=enabled
|
|
-Dlibcamera=disabled
|
|
-Droc=disabled
|
|
-Dsdl2=$(vopt_if sdl2 enabled disabled)
|
|
-Dsystemd=disabled
|
|
-Dudevrulesdir=/usr/lib/udev/rules.d
|
|
-Dvulkan=enabled
|
|
-Dmedia-session:systemd=disabled
|
|
-Dbluez5-codec-lc3plus=disabled
|
|
"
|
|
hostmakedepends="doxygen graphviz pkg-config python3-docutils gettext"
|
|
makedepends="$(vopt_if sdl2 SDL2-devel) gst-plugins-base1-devel jack-devel
|
|
sbc-devel v4l-utils-devel libva-devel libbluetooth-devel ncurses-devel
|
|
libfreeaptx-devel libusb-devel fdk-aac-devel libsndfile-devel Vulkan-Headers
|
|
vulkan-loader pulseaudio-devel avahi-libs-devel webrtc-audio-processing-devel
|
|
readline-devel openssl-devel lilv-devel libcanberra-devel dbus-devel"
|
|
depends="libspa-alsa>=${version}_${revision} libspa-audioconvert>=${version}_${revision}
|
|
libspa-audiomixer>=${version}_${revision} libspa-control>=${version}_${revision}
|
|
libspa-v4l2>=${version}_${revision} pulseaudio-utils"
|
|
checkdepends="pulseaudio-utils"
|
|
short_desc="Server and user space API to deal with multimedia pipelines"
|
|
maintainer="Stefano Ragni <stefano.ragni@outlook.com>"
|
|
license="MIT"
|
|
homepage="https://pipewire.org/"
|
|
changelog="https://gitlab.freedesktop.org/pipewire/pipewire/-/raw/master/NEWS"
|
|
distfiles="https://gitlab.freedesktop.org/pipewire/pipewire/-/archive/${version}/pipewire-${version}.tar.gz
|
|
https://gitlab.freedesktop.org/pipewire/media-session/-/archive/${_pms_version}/media-session-${_pms_version}.tar.gz"
|
|
checksum="5cb73bf27b8b80e37804d7829c5ad8fa5510835f449bbb7e4773f188584771ad
|
|
119c9216070b54018217552c7924f9888da270c3c4647c5e2b85ffa6b1574975"
|
|
make_dirs="/var/lib/pipewire 0755 _pipewire _pipewire"
|
|
system_accounts="_pipewire"
|
|
patch_args="-Np1 --directory=${build_wrksrc}"
|
|
|
|
build_options="sdl2"
|
|
|
|
replaces="libpulseaudio-pipewire>=0"
|
|
|
|
if [ "$XBPS_TARGET_NO_ATOMIC8" ]; then
|
|
makedepends+=" libatomic-devel"
|
|
LDFLAGS+=" -latomic"
|
|
fi
|
|
|
|
if [ "$XBPS_TARGET_ENDIAN" = "le" ]; then
|
|
makedepends+=" ldacBT-devel"
|
|
else
|
|
configure_args+=" -Dbluez5-codec-ldac=disabled"
|
|
fi
|
|
|
|
post_extract() {
|
|
mv media-session-${_pms_version} ${build_wrksrc}/subprojects/media-session
|
|
}
|
|
|
|
post_install() {
|
|
vlicense LICENSE
|
|
vdoc "${FILESDIR}/README.voidlinux"
|
|
vsv pipewire
|
|
vsv pipewire-pulse
|
|
vmkdir usr/share/applications
|
|
cp "${FILESDIR}/pipewire.desktop" ${DESTDIR}/usr/share/applications/pipewire.desktop
|
|
cp "${FILESDIR}/pipewire-pulse.desktop" ${DESTDIR}/usr/share/applications/pipewire-pulse.desktop
|
|
}
|
|
|
|
libpipewire_package() {
|
|
short_desc+=" - pipewire library"
|
|
pkg_install() {
|
|
vmove "usr/lib/libpipewire-0.3.so.*"
|
|
vmove "usr/lib/pipewire-0.3/*.so"
|
|
}
|
|
}
|
|
|
|
pipewire-devel_package() {
|
|
depends="libpipewire>=${version}_${revision}"
|
|
short_desc+=" - pipewire and libspa development files"
|
|
pkg_install() {
|
|
vmove usr/include/pipewire-0.3
|
|
vmove usr/include/spa-0.2
|
|
vmove usr/lib/pkgconfig/libpipewire-0.3.pc
|
|
vmove usr/lib/pkgconfig/libspa-0.2.pc
|
|
vmove usr/lib/libpipewire-0.3.so
|
|
}
|
|
}
|
|
|
|
libspa-alsa_package() {
|
|
short_desc+=" - alsa plugins"
|
|
pkg_install() {
|
|
vmove usr/lib/spa-0.2/alsa
|
|
}
|
|
}
|
|
|
|
libspa-audioconvert_package() {
|
|
short_desc+=" - audioconvert plugins"
|
|
pkg_install() {
|
|
vmove usr/lib/spa-0.2/audioconvert
|
|
}
|
|
}
|
|
|
|
libspa-audiomixer_package() {
|
|
short_desc+=" - audiomixer plugins"
|
|
pkg_install() {
|
|
vmove usr/lib/spa-0.2/audiomixer
|
|
}
|
|
}
|
|
|
|
libspa-bluetooth_package() {
|
|
short_desc+=" - bluetooth plugins"
|
|
pkg_install() {
|
|
vmove usr/lib/spa-0.2/bluez5
|
|
}
|
|
}
|
|
|
|
libspa-control_package() {
|
|
short_desc+=" - control plugins"
|
|
pkg_install() {
|
|
vmove usr/lib/spa-0.2/control
|
|
}
|
|
}
|
|
|
|
libspa-jack_package() {
|
|
short_desc+=" - jack plugins"
|
|
pkg_install() {
|
|
vmove usr/lib/spa-0.2/jack
|
|
}
|
|
}
|
|
|
|
libspa-v4l2_package() {
|
|
short_desc+=" - v4l2 plugins"
|
|
pkg_install() {
|
|
vmove usr/lib/spa-0.2/v4l2
|
|
}
|
|
}
|
|
|
|
libspa-videoconvert_package() {
|
|
short_desc+=" - videoconvert plugins"
|
|
pkg_install() {
|
|
vmove usr/lib/spa-0.2/videoconvert
|
|
}
|
|
}
|
|
|
|
libspa-vulkan_package() {
|
|
short_desc+=" - vulkan plugins"
|
|
pkg_install() {
|
|
vmove usr/lib/spa-0.2/vulkan
|
|
}
|
|
}
|
|
|
|
gstreamer1-pipewire_package() {
|
|
short_desc+=" - gstreamer plugin"
|
|
pkg_install() {
|
|
vmove usr/lib/gstreamer-1.0
|
|
}
|
|
}
|
|
|
|
alsa-pipewire_package() {
|
|
depends="libpipewire>=${version}_${revision}"
|
|
short_desc+=" - ALSA client library"
|
|
pkg_install() {
|
|
vmove usr/lib/alsa-lib
|
|
vmove usr/share/alsa/alsa.conf.d
|
|
}
|
|
}
|
|
|
|
libjack-pipewire_package() {
|
|
depends="libpipewire>=${version}_${revision}"
|
|
short_desc+=" - JACK client library"
|
|
pkg_install() {
|
|
vmove usr/lib/pipewire-0.3/jack
|
|
vmove usr/bin/pw-jack
|
|
vmove usr/share/man/man1/pw-jack.1
|
|
}
|
|
}
|
|
|
|
pipewire-doc_package() {
|
|
short_desc+=" - documentation"
|
|
pkg_install() {
|
|
vmove usr/share/doc/pipewire/html
|
|
}
|
|
}
|