mirror of
https://gitlab.freedesktop.org/pipewire/pipewire.git
synced 2025-10-29 05:40:27 -04:00
Release 0.1.4
Remove spec file Fix systemd service file Send error on link errors Init socket to -1 so that we don't close anything on error Wait for all proxy objects in device monitor
This commit is contained in:
parent
5cc4c5c378
commit
b7e334e55d
6 changed files with 22 additions and 181 deletions
|
|
@ -1,5 +1,5 @@
|
|||
project('pipewire', 'c',
|
||||
version : '0.1.3.1',
|
||||
version : '0.1.4',
|
||||
meson_version : '>= 0.36.0',
|
||||
default_options : [ 'warning_level=1',
|
||||
'c_std=gnu99',
|
||||
|
|
|
|||
176
pipewire.spec
176
pipewire.spec
|
|
@ -1,176 +0,0 @@
|
|||
%global majorminor 0.1
|
||||
|
||||
#global snap 20141103
|
||||
#global gitrel 327
|
||||
#global gitcommit aec811798cd883a454b9b5cd82c77831906bbd2d
|
||||
#global shortcommit %(c=%{gitcommit}; echo ${c:0:5})
|
||||
|
||||
# https://bugzilla.redhat.com/983606
|
||||
%global _hardened_build 1
|
||||
|
||||
# where/how to apply multilib hacks
|
||||
%global multilib_archs x86_64 %{ix86} ppc64 ppc s390x s390 sparc64 sparcv9 ppc64le
|
||||
|
||||
Name: pipewire
|
||||
Summary: Media Sharing Server
|
||||
Version: 0.1.3.1
|
||||
Release: 1%{?snap:.%{snap}git%{shortcommit}}%{?dist}
|
||||
License: LGPLv2+
|
||||
URL: http://www.freedesktop.org/wiki/Software/PipeWire
|
||||
%if 0%{?gitrel}
|
||||
# git clone git://anongit.freedesktop.org/gstreamer/pipewire
|
||||
# cd pipewire; git reset --hard %{gitcommit}; ./autogen.sh; make; make distcheck
|
||||
Source0: pipewire-%{version}-%{gitrel}-g%{shortcommit}.tar.gz
|
||||
%else
|
||||
Source0: http://freedesktop.org/software/pipewire/releases/pipewire-%{version}.tar.gz
|
||||
%endif
|
||||
|
||||
## upstream patches
|
||||
|
||||
## upstreamable patches
|
||||
|
||||
BuildRequires: meson >= 0.35.0
|
||||
BuildRequires: pkgconfig
|
||||
BuildRequires: pkgconfig(libudev)
|
||||
BuildRequires: pkgconfig(dbus-1)
|
||||
BuildRequires: pkgconfig(glib-2.0) >= 2.32
|
||||
BuildRequires: pkgconfig(gio-unix-2.0) >= 2.32
|
||||
BuildRequires: pkgconfig(gstreamer-1.0) >= 1.10.0
|
||||
BuildRequires: pkgconfig(gstreamer-base-1.0) >= 1.10.0
|
||||
BuildRequires: pkgconfig(gstreamer-plugins-base-1.0) >= 1.10.0
|
||||
BuildRequires: pkgconfig(gstreamer-net-1.0) >= 1.10.0
|
||||
BuildRequires: pkgconfig(gstreamer-allocators-1.0) >= 1.10.0
|
||||
BuildRequires: systemd-devel >= 184
|
||||
BuildRequires: alsa-lib-devel
|
||||
BuildRequires: libv4l-devel
|
||||
BuildRequires: doxygen
|
||||
BuildRequires: xmltoman
|
||||
BuildRequires: graphviz
|
||||
|
||||
Requires(pre): shadow-utils
|
||||
Requires: %{name}-libs%{?_isa} = %{version}-%{release}
|
||||
Requires: systemd >= 184
|
||||
Requires: rtkit
|
||||
|
||||
# https://bugzilla.redhat.com/983606
|
||||
%global _hardened_build 1
|
||||
|
||||
## enable systemd activation
|
||||
%global systemd 1
|
||||
|
||||
%description
|
||||
PipeWire is a multimedia server for Linux and other Unix like operating
|
||||
systems.
|
||||
|
||||
%package libs
|
||||
Summary: Libraries for PipeWire clients
|
||||
License: LGPLv2+
|
||||
|
||||
%description libs
|
||||
This package contains the runtime libraries for any application that wishes
|
||||
to interface with a PipeWire media server.
|
||||
|
||||
%package devel
|
||||
Summary: Headers and libraries for PipeWire client development
|
||||
License: LGPLv2+
|
||||
Requires: %{name}-libs%{?_isa} = %{version}-%{release}
|
||||
%description devel
|
||||
Headers and libraries for developing applications that can communicate with
|
||||
a PipeWire media server.
|
||||
|
||||
%package doc
|
||||
Summary: PipeWire media server documentation
|
||||
License: LGPLv2+
|
||||
|
||||
%description doc
|
||||
This package contains documentation for the PipeWire media server.
|
||||
|
||||
%package utils
|
||||
Summary: PipeWire media server utilities
|
||||
License: LGPLv2+
|
||||
Requires: %{name}-libs%{?_isa} = %{version}-%{release}
|
||||
|
||||
%description utils
|
||||
This package contains command line utilities for the PipeWire media server.
|
||||
|
||||
%prep
|
||||
%setup -q -T -b0 -n %{name}-%{version}%{?gitrel:-%{gitrel}-g%{shortcommit}}
|
||||
|
||||
%build
|
||||
%meson
|
||||
%meson_build
|
||||
|
||||
%install
|
||||
%meson_install
|
||||
|
||||
%check
|
||||
%meson_test
|
||||
|
||||
%pre
|
||||
getent group pipewire >/dev/null || groupadd -r pipewire
|
||||
getent passwd pipewire >/dev/null || \
|
||||
useradd -r -g pipewire -d /var/run/pipewire -s /sbin/nologin -c "PipeWire System Daemon" pipewire
|
||||
exit 0
|
||||
|
||||
%post -p /sbin/ldconfig
|
||||
%postun -p /sbin/ldconfig
|
||||
|
||||
%files
|
||||
%license LICENSE GPL LGPL
|
||||
%doc README
|
||||
%if 0%{?systemd}
|
||||
%{_userunitdir}/pipewire.*
|
||||
%endif
|
||||
%{_bindir}/pipewire
|
||||
%{_libdir}/libpipewire-%{majorminor}.so.*
|
||||
%{_libdir}/libspa-lib.so.*
|
||||
%{_libdir}/gstreamer-1.0/libgstpipewire.*
|
||||
%{_libdir}/pipewire-%{majorminor}/
|
||||
%{_libdir}/spa/
|
||||
%{_mandir}/man1/pipewire.1*
|
||||
%{_sysconfdir}/pipewire/pipewire.conf
|
||||
|
||||
%files libs
|
||||
%license LICENSE GPL LGPL
|
||||
%doc README
|
||||
%dir %{_sysconfdir}/pipewire/
|
||||
#%dir %{_libdir}/pipewire/
|
||||
|
||||
%files devel
|
||||
%{_libdir}/libpipewire-%{majorminor}.so
|
||||
%{_libdir}/libspa-lib.so
|
||||
%{_includedir}/pipewire/
|
||||
%{_includedir}/spa/
|
||||
%{_libdir}/pkgconfig/libpipewire-%{majorminor}.pc
|
||||
%{_libdir}/pkgconfig/libspa-%{majorminor}.pc
|
||||
|
||||
%files doc
|
||||
%{_datadir}/doc/pipewire/html
|
||||
|
||||
%files utils
|
||||
%{_bindir}/pipewire-monitor
|
||||
%{_mandir}/man1/pipewire-monitor.1*
|
||||
%{_bindir}/spa-monitor
|
||||
%{_bindir}/spa-inspect
|
||||
|
||||
%changelog
|
||||
* Wed Aug 09 2017 Wim Taymans <wtaymans@redhat.com> - 0.1.3-1
|
||||
- Update to 0.1.3
|
||||
|
||||
* Tue Jul 04 2017 Wim Taymans <wtaymans@redhat.com> - 0.1.2-1
|
||||
- Update to 0.1.2
|
||||
- Added more build requirements
|
||||
- Make separate doc package
|
||||
|
||||
* Mon Jun 26 2017 Wim Taymans <wtaymans@redhat.com> - 0.1.1-1
|
||||
- Update to 0.1.1
|
||||
- Add dbus-1 to BuildRequires
|
||||
- change libs-devel to -devel
|
||||
|
||||
* Wed Sep 9 2015 Wim Taymans <wtaymans@redhat.com> - 0.1.0-2
|
||||
- Fix BuildRequires to use pkgconfig, add all dependencies found in configure.ac
|
||||
- Add user and groups if needed
|
||||
- Add license to %%licence
|
||||
|
||||
* Tue Sep 1 2015 Wim Taymans <wtaymans@redhat.com> - 0.1.0-1
|
||||
- First version
|
||||
|
|
@ -16,8 +16,7 @@ Description=Multimedia Service
|
|||
Requires=pipewire.socket
|
||||
|
||||
[Service]
|
||||
# Note that notify will only work if --daemonize=no
|
||||
Type=notify
|
||||
Type=simple
|
||||
ExecStart=@PW_BINARY@
|
||||
Restart=on-failure
|
||||
|
||||
|
|
|
|||
|
|
@ -297,8 +297,11 @@ on_sync_reply (void *data, uint32_t seq)
|
|||
GstPipeWireDeviceProvider *self = data;
|
||||
if (seq == 1)
|
||||
pw_core_proxy_sync(self->core_proxy, 2);
|
||||
else if (seq == 2)
|
||||
else if (seq == 2) {
|
||||
self->end = true;
|
||||
if (self->main_loop)
|
||||
pw_thread_loop_signal (self->main_loop, FALSE);
|
||||
}
|
||||
}
|
||||
|
||||
static void
|
||||
|
|
@ -563,6 +566,13 @@ gst_pipewire_device_provider_start (GstDeviceProvider * provider)
|
|||
pw_registry_proxy_add_listener(self->registry, &data->registry_listener, ®istry_events, data);
|
||||
pw_core_proxy_sync(self->core_proxy, 1);
|
||||
|
||||
for (;;) {
|
||||
if (self->end)
|
||||
break;
|
||||
pw_thread_loop_wait (self->main_loop);
|
||||
}
|
||||
GST_DEBUG_OBJECT (self, "started");
|
||||
|
||||
pw_thread_loop_unlock (self->main_loop);
|
||||
|
||||
return TRUE;
|
||||
|
|
|
|||
|
|
@ -117,8 +117,15 @@ link_state_changed(void *data, enum pw_link_state old, enum pw_link_state state,
|
|||
|
||||
switch (state) {
|
||||
case PW_LINK_STATE_ERROR:
|
||||
{
|
||||
struct pw_resource *owner = pw_node_get_owner(info->node);
|
||||
|
||||
pw_log_debug("module %p: link %p: state error: %s", impl, link, error);
|
||||
if (owner)
|
||||
pw_resource_error(owner, SPA_RESULT_ERROR, error);
|
||||
|
||||
break;
|
||||
}
|
||||
|
||||
case PW_LINK_STATE_UNLINKED:
|
||||
pw_log_debug("module %p: link %p: unlinked", impl, link);
|
||||
|
|
|
|||
|
|
@ -625,7 +625,8 @@ impl_new_client(struct pw_protocol *protocol,
|
|||
this->disconnect = impl_disconnect;
|
||||
this->destroy = impl_destroy;
|
||||
|
||||
impl->flush_event = pw_loop_add_event(remote->core->main_loop, do_flush_event, impl);
|
||||
impl->fd = -1;
|
||||
impl->flush_event = pw_loop_add_event(remote->core->main_loop, do_flush_event, impl);
|
||||
|
||||
spa_list_append(&protocol->client_list, &this->link);
|
||||
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue