Sign Up
Log In
Log In
or
Sign Up
Places
All Projects
Status Monitor
Collapse sidebar
home:TechieNinjaM:Tumbleweed
pipewire
pipewire.spec
Overview
Repositories
Revisions
Requests
Users
Attributes
Meta
File pipewire.spec of Package pipewire
# # spec file for package pipewire # # Copyright (c) 2024 SUSE LLC # Copyright (c) 2018 Luciano Santos, luc14n0@linuxmail.org. # # All modifications and additions to the file contributed by third parties # remain the property of their copyright owners, unless otherwise agreed # upon. The license for this file, and modifications and additions to the # file, is the same license as for the pristine package itself (unless the # license for the pristine package is not an Open Source License, in which # case the license is the MIT License). An "Open Source License" is a # license that conforms to the Open Source Definition (Version 1.9) # published by the Open Source Initiative. # Please submit bugfixes or comments via https://bugs.opensuse.org/ # %define apiver 0.3 %define apiver_str 0_3 %define spa_ver 0.2 %define spa_ver_str 0_2 %define libpipewire libpipewire-%{apiver_str}-0 %if %{pkg_vcmp pkgconfig(vulkan) >= 1.3} %define with_vulkan 1 %else %define with_vulkan 0 %endif %ifnarch s390 s390x ppc64 %define with_ldacBT 1 %define with_webrtc_audio_processing 1 %else %define with_ldacBT 0 %define with_webrtc_audio_processing 0 %endif %if 0%{?suse_version} > 1500 %bcond_without libcamera %else %bcond_with libcamera %endif %if 0%{?suse_version} > 1500 || 0%{?sle_version} >= 150400 %bcond_without aac %else %bcond_with aac %endif %if %{?pkg_vcmp:%{pkg_vcmp meson >= 0.59.0}}%{!?pkg_vcmp:0} %bcond_without pipewire_jack_devel %endif %if 0%{?ffmpeg_pref:1} %bcond_without use_ffmpeg %else %bcond_with use_ffmpeg %endif %if 0%{?without_apparmor:0} %bcond_with apparmor %else %bcond_without apparmor %endif %bcond_with aptx Name: pipewire Version: 1.2.7 Release: 0 Summary: A Multimedia Framework designed to be an audio and video server and more License: MIT Group: Development/Libraries/C and C++ URL: https://pipewire.org/ Source0: %{name}-%{version}.tar.zst Source99: baselibs.conf # PATCH-FIX-OPENSUSE reduce-meson-dependency.patch Patch0: reduce-meson-dependency.patch BuildRequires: docutils %if 0%{suse_version} > 1500 BuildRequires: doxygen >= 1.9.7 %else BuildRequires: doxygen-1_10 %endif BuildRequires: fdupes BuildRequires: gcc-c++ %if 0%{?suse_version} <= 1500 BuildRequires: gcc11 BuildRequires: gcc11-c++ %endif BuildRequires: graphviz BuildRequires: meson >= 0.59.4 BuildRequires: pam-devel BuildRequires: pkgconfig BuildRequires: readline-devel BuildRequires: systemd-rpm-macros BuildRequires: pkgconfig(alsa) >= 1.1.7 BuildRequires: pkgconfig(avahi-client) BuildRequires: pkgconfig(bluez) BuildRequires: pkgconfig(dbus-1) %if %{with aac} BuildRequires: pkgconfig(fdk-aac) %endif BuildRequires: pkgconfig(gio-2.0) BuildRequires: pkgconfig(gio-unix-2.0) BuildRequires: pkgconfig(glib-2.0) >= 2.32.0 BuildRequires: pkgconfig(gmodule-2.0) BuildRequires: pkgconfig(gobject-2.0) BuildRequires: pkgconfig(gstreamer-1.0) BuildRequires: pkgconfig(gstreamer-allocators-1.0) BuildRequires: pkgconfig(gstreamer-audio-1.0) BuildRequires: pkgconfig(gstreamer-plugins-base-1.0) BuildRequires: pkgconfig(gstreamer-video-1.0) BuildRequires: pkgconfig(jack) >= 1.9.10 %if %{with_ldacBT} BuildRequires: pkgconfig(ldacBT-abr) BuildRequires: pkgconfig(ldacBT-enc) %endif %if %{with use_ffmpeg} # Break circular dependency with ffmpeg BuildRequires: %{ffmpeg_pref}-mini-devel %endif BuildRequires: pkgconfig(lc3) %if %{with libcamera} BuildRequires: libcamera-devel >= 0.2.0 %endif %if %{with apparmor} BuildRequires: pkgconfig(libapparmor) %endif BuildRequires: pkgconfig(libcanberra) BuildRequires: pkgconfig(libcap) BuildRequires: pkgconfig(libdrm) BuildRequires: pkgconfig(libffado) %if %{with aptx} BuildRequires: pkgconfig(libfreeaptx) %endif BuildRequires: pkgconfig(libmysofa) BuildRequires: pkgconfig(libpulse) BuildRequires: pkgconfig(libsystemd) BuildRequires: pkgconfig(libudev) BuildRequires: pkgconfig(libusb-1.0) BuildRequires: pkgconfig(lilv-0) BuildRequires: pkgconfig(ncurses) BuildRequires: pkgconfig(openssl) BuildRequires: pkgconfig(opus) BuildRequires: pkgconfig(sbc) BuildRequires: pkgconfig(sndfile) BuildRequires: pkgconfig(systemd) BuildRequires: pkgconfig(vulkan) %if %{with_webrtc_audio_processing} BuildRequires: pkgconfig(webrtc-audio-processing-1) %endif BuildRequires: pkgconfig(x11) %if 0%{?suse_version} > 1500 || 0%{?sle_version} >= 150400 BuildRequires: pkgconfig(xfixes) %endif BuildConflicts: pipewire-libjack-%{apiver_str}-devel Requires: %{libpipewire} = %{version} Requires: %{name}-modules-%{apiver_str} = %{version} Requires: %{name}-session-manager Requires: %{name}-spa-plugins-%{spa_ver_str} = %{version} Requires: %{name}-spa-tools = %{version} Requires: %{name}-tools = %{version} Requires: rtkit Suggests: wireplumber %{?systemd_ordering} %description PipeWire is a server and user space API to deal with multimedia pipelines. Some of its features include: * Capture and playback of audio and video with minimal latency; * Real-time Multimedia processing on audio and video; * Multiprocess architecture to let applications share multimedia content; * GStreamer plugins for easy use and integration in current applications; * Sandboxed applications support. %package module-roc Summary: PipeWire media server ROC support Requires: pipewire-modules-%{apiver_str} Requires: roc-toolkit BuildRequires: gcc-c++ BuildRequires: make BuildRequires: cmake BuildRequires: automake BuildRequires: autoconf BuildRequires: intltool BuildRequires: libtool BuildRequires: scons BuildRequires: ragel BuildRequires: gengetopt BuildRequires: pkg-config BuildRequires: pkgconfig(roc-toolkit) BuildRequires: pkgconfig(libuv) BuildRequires: pkgconfig(libunwind) BuildRequires: pkgconfig(speexdsp) BuildRequires: pkgconfig(sox) BuildRequires: pkgconfig(sndfile) BuildRequires: pkgconfig(openssl) BuildRequires: pkgconfig(libpulse) Requires: %{name} = %{version} %description module-roc This package contains the ROC support for PipeWire. %prep %autosetup -N %if %{?pkg_vcmp:%{pkg_vcmp meson <= 0.61.0}} sed -ie "s/version : '0.3.72'/version : '%{version}'/" %{P:0} %patch -P 0 -p1 %endif %autopatch -m 1 -p1 %build %if 0%{?suse_version} <= 1500 export CC=gcc-11 export CXX=g++-11 %endif %meson \ -Ddocs=enabled \ -Dman=enabled \ -Dgstreamer=enabled \ %if %{with use_ffmpeg} -Dffmpeg=enabled \ %else -Dffmpeg=disabled \ %endif -Dsystemd=enabled \ -Dsystemd-user-unit-dir=%{_userunitdir} \ -Droc=enabled \ %if %{with_vulkan} -Dvulkan=enabled \ %else -Dvulkan=disabled \ %endif -Dtest=enabled \ -Daudiotestsrc=enabled \ %if %{with aac} -Dbluez5-codec-aac=enabled \ %else -Dbluez5-codec-aac=disabled \ %endif %if %{with aptx} -Dbluez5-codec-aptx=enabled \ %else -Dbluez5-codec-aptx=disabled \ %endif %if %{with_ldacBT} -Dbluez5-codec-ldac=enabled \ %else -Dbluez5-codec-ldac=disabled \ %endif -Dbluez5-codec-lc3=enabled \ -Dbluez5-codec-lc3plus=disabled \ -Dgsettings-pulse-schema=disabled \ %if %{with libcamera} -Dlibcamera=enabled \ %else -Dlibcamera=disabled \ %endif -Dpipewire-jack=enabled \ -Djack=enabled \ %if %{with pipewire_jack_devel} -Djack-devel=true \ %else -Djack-devel=false \ %endif %if 0%{?suse_version} <= 1500 -Dreadline=disabled \ %endif -Dsession-managers="[]" \ -Dsdl2=disabled \ -Dsnap=disabled \ %if %{with_webrtc_audio_processing} -Decho-cancel-webrtc=enabled \ %else -Decho-cancel-webrtc=disabled \ %endif %{nil} %meson_build %install %meson_install mkdir -p %{buildroot}%{_sysconfdir}/alsa/conf.d/ cp %{buildroot}%{_datadir}/alsa/alsa.conf.d/50-pipewire.conf \ %{buildroot}%{_sysconfdir}/alsa/conf.d/50-pipewire.conf cp %{buildroot}%{_datadir}/alsa/alsa.conf.d/99-pipewire-default.conf \ %{buildroot}%{_sysconfdir}/alsa/conf.d/99-pipewire-default.conf %if 0%{?suse_version} > 1500 mkdir -p %{buildroot}%{_pam_secdistconfdir}/limits.d/ mv %{buildroot}%{_sysconfdir}/security/limits.d/*.conf %{buildroot}%{_pam_secdistconfdir}/limits.d/ %endif mkdir -p %{buildroot}%{_sysconfdir}/ld.so.conf.d/ echo %{_libdir}/pipewire-%{apiver}/jack/ > %{buildroot}%{_sysconfdir}/ld.so.conf.d/pipewire-jack-%{_arch}.conf mkdir -p %{buildroot}%{_sysconfdir}/alternatives for wrapper in pw-jack ; do mv %{buildroot}%{_bindir}/$wrapper %{buildroot}%{_bindir}/$wrapper-%{apiver} ln -s -f %{_sysconfdir}/alternatives/$wrapper %{buildroot}%{_bindir}/$wrapper done for manpage in pw-jack ; do mv %{buildroot}%{_mandir}/man1/$manpage.1 %{buildroot}%{_mandir}/man1/$manpage-%{apiver}.1 ln -s -f %{_sysconfdir}/alternatives/$manpage.1%{ext_man} %{buildroot}%{_mandir}/man1/$manpage.1%{ext_man} done # delete all but roc module .so files find %{buildroot} -type f -name "libpipewire-module-roc-*.so" -exec strip --strip-all {} \; find %{buildroot} -type f -not -name "libpipewire-module-roc-*.so" -delete # clean up find %{buildroot} -xtype l -delete find %{buildroot} -depth -empty -type d -delete %files module-roc %dir %{_libdir}/pipewire-%{apiver} %{_libdir}/pipewire-%{apiver}/libpipewire-module-roc-*.so
Locations
Projects
Search
Status Monitor
Help
OpenBuildService.org
Documentation
API Documentation
Code of Conduct
Contact
Support
@OBShq
Terms
openSUSE Build Service is sponsored by
The Open Build Service is an
openSUSE project
.
Sign Up
Log In
Places
Places
All Projects
Status Monitor