File pulseaudio.spec of Package pulseaudio

#
# spec file for package pulseaudio (Version 0.9.14)
#
# Copyright (c) 2010 SUSE LINUX Products GmbH, Nuernberg, Germany.
#
# 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 http://bugs.opensuse.org/
#

# norootforbuild


Name:           pulseaudio
%define drvver 0.9
Summary:        A Networked Sound Server
Version:        0.9.14
Release:        2.<RELEASE3>
License:        GPL v2 or later; LGPL v2.1 or later
Group:          System/Sound Daemons
Source:         %{name}-%{version}.tar.bz2
Source1:        default.pa
Source2:        setup-pulseaudio
Url:            http://pulseaudio.org
BuildRoot:      %{_tmppath}/%{name}-%{version}-build
BuildRequires:  PolicyKit-devel alsa-devel bluez-devel doxygen gconf2-devel gdbm-devel glib2-devel hal-devel intltool jack-devel libatomic-ops-devel libavahi-devel liboil-devel libsamplerate-devel libsndfile-devel libtool lirc-devel speex-devel tcpd-devel update-desktop-files xorg-x11-devel
Provides:       libpulsecore7 = 0.9.12
Provides:       libpulsecore4 = 0.9.12
Obsoletes:      libpulsecore7 <= 0.9.12
Obsoletes:      libpulsecore4 <= 0.9.12
Recommends:     alsa-plugins-pulse
PreReq:         pwdutils
# PATCH-FIX-UPSTREAM pulseaudio-defaults-daemon-conf.patch
Patch3:         pulseaudio-defaults-daemon-conf.patch
# PATCH-FIX-UPSTREAM pulseaudio-bnc464994-libtool.patch bnc#464994 sreeves@novell.com
Patch7:         pulseaudio-bnc464994-libtool.patch
# PATCH-FIX-UPSTREAM pulseaudio-bnc461361-sound-crackles.patch bnc#461361 sreeves@novell.com
# already in .14 Patch8:         pulseaudio-bnc461361-sound-crackles.patch
# PATCH-FIX-UPSTREAM pulseaudio-bnc584938.patch bnc#584938 sreeves@novell.com
Patch9:         pulseaudio-bnc584938.patch
Requires:       %{name}-lang = %{version}

%description
pulseaudio is a networked sound server for Linux and other Unix like
operating systems and Microsoft Windows. It is intended to be an
improved drop-in replacement for the Enlightened Sound Daemon (ESOUND).



Authors:
--------
    Lennart Poettering
    Pierre Ossman

%package esound-compat
License:        GPL v2 or later; LGPL v2.1 or later
Summary:        ESOUND compatibility for PulseAudio
Group:          System/Sound Daemons
Requires:       %{name} = %{version}
Provides:       esound-daemon = 0.2.41
Obsoletes:      esound-daemon <= 0.2.41

%description esound-compat
pulseaudio is a networked sound server for Linux and other Unix like
operating systems and Microsoft Windows. It is intended to be an
improved drop-in replacement for the Enlightened Sound Daemon (ESOUND).

This package provides the compatibility layer for drop-in replacement
of ESOUND.



Authors:
--------
    Lennart Poettering
    Pierre Ossman

%package module-lirc
License:        GPL v2 or later; LGPL v2.1 or later
Summary:        LIRC module for PulseAudio
Group:          System/Sound Daemons
Requires:       %{name} = %{version}

%description module-lirc
pulseaudio is a networked sound server for Linux and other Unix like
operating systems and Microsoft Windows. It is intended to be an
improved drop-in replacement for the Enlightened Sound Daemon (ESOUND).



Authors:
--------
    Lennart Poettering
    Pierre Ossman

%package module-x11
License:        GPL v2 or later; LGPL v2.1 or later
Summary:        X11 module for PulseAudio
Group:          System/Sound Daemons
Requires:       %{name} = %{version}

%description module-x11
pulseaudio is a networked sound server for Linux and other Unix like
operating systems and Microsoft Windows. It is intended to be an
improved drop-in replacement for the Enlightened Sound Daemon (ESOUND).



Authors:
--------
    Lennart Poettering
    Pierre Ossman

%package module-zeroconf
License:        GPL v2 or later; LGPL v2.1 or later
Summary:        Zeroconf module for PulseAudio
Group:          System/Sound Daemons
Requires:       %{name} = %{version}

%description module-zeroconf
pulseaudio is a networked sound server for Linux and other Unix like
operating systems and Microsoft Windows. It is intended to be an
improved drop-in replacement for the Enlightened Sound Daemon (ESOUND).



Authors:
--------
    Lennart Poettering
    Pierre Ossman

%package module-jack
License:        GPL v2 or later; LGPL v2.1 or later
Summary:        JACK support for the PulseAudio sound server
Group:          System/Sound Daemons
Requires:       %{name} = %{version}

%description module-jack
pulseaudio is a networked sound server for Linux and other Unix like
operating systems and Microsoft Windows. It is intended to be an
improved drop-in replacement for the Enlightened Sound Daemon (ESOUND).

This package includes support for Jack-based applications.



Authors:
--------
    Lennart Poettering
    Pierre Ossman

%package module-bluetooth
License:        GPL v2 or later; LGPL v2.1 or later
Summary:        Bluetooth proximity support for the PulseAudio sound server
Group:          System/Sound Daemons
Requires:       %{name} = %{version}

%description module-bluetooth
pulseaudio is a networked sound server for Linux and other Unix like
operating systems and Microsoft Windows. It is intended to be an
improved drop-in replacement for the Enlightened Sound Daemon (ESOUND).

This package includes support for Bluetooth-based sound devices.



Authors:
--------
    Lennart Poettering
    Pierre Ossman

%package module-gconf
License:        GPL v2 or later; LGPL v2.1 or later
Summary:        GCONF module for PulseAudio
Group:          System/Sound Daemons
Requires:       %{name} = %{version}

%description module-gconf
pulseaudio is a networked sound server for Linux and other Unix like
operating systems and Microsoft Windows. It is intended to be an
improved drop-in replacement for the Enlightened Sound Daemon (ESOUND).



Authors:
--------
    Lennart Poettering
    Pierre Ossman

%package -n libpulse0
Summary:        Client interface to PulseAudio
License:        GPL v2 or later; LGPL v2.1 or later
Group:          System/Libraries
Provides:       pulseaudio-libs = %{version}-%{release}
Obsoletes:      pulseaudio-libs < %{version}

%description -n libpulse0
pulseaudio is a networked sound server for Linux and other Unix like
operating systems and Microsoft Windows. It is intended to be an
improved drop-in replacement for the Enlightened Sound Daemon (ESOUND).

This package contains the system libraries for clients of pulseaudio
sound server.



Authors:
--------
    Lennart Poettering
    Pierre Ossman

%package -n libpulse-mainloop-glib0
Summary:        GLIB 2.0 Main Loop wrapper for PulseAudio
License:        GPL v2 or later; LGPL v2.1 or later
Group:          System/Sound Daemons
Provides:       pulseaudio-libs-glib2 = %{version}-%{release}
Obsoletes:      pulseaudio-libs-glib2 < %{version}

%description -n libpulse-mainloop-glib0
pulseaudio is a networked sound server for Linux and other Unix like
operating systems and Microsoft Windows. It is intended to be an
improved drop-in replacement for the Enlightened Sound Daemon (ESOUND).



Authors:
--------
    Lennart Poettering
    Pierre Ossman

%package -n libpulse-browse0
Summary:        PulseAudio network browsing API
License:        GPL v2 or later; LGPL v2.1 or later
Group:          System/Sound Daemons
Provides:       pulseaudio-libs-zeroconf = %{version}-%{release}
Obsoletes:      pulseaudio-libs-zeroconf < %{version}

%description -n libpulse-browse0
pulseaudio is a networked sound server for Linux and other Unix like
operating systems and Microsoft Windows. It is intended to be an
improved drop-in replacement for the Enlightened Sound Daemon (ESOUND).



Authors:
--------
    Lennart Poettering
    Pierre Ossman

%package -n libpulse-devel
Summary:        Development package for the pulseaudio library
License:        GPL v2 or later; LGPL v2.1 or later
Group:          Development/Libraries/C and C++
Requires:       libpulse0 = %{version}
Requires:       libpulse-mainloop-glib0 = %{version}
Requires:       libpulse-browse0 = %{version}
Requires:       pkgconfig glib2-devel
Provides:       pulseaudio-devel = %{version}-%{release}
Obsoletes:      pulseaudio-devel < %{version}

%description -n libpulse-devel
pulseaudio is a networked sound server for Linux and other Unix like
operating systems and Microsoft Windows. It is intended to be an
improved drop-in replacement for the Enlightened Sound Daemon (ESOUND).

This package contains the files needed to compile programs that use the
pulseaudio library.



Authors:
--------
    Lennart Poettering
    Pierre Ossman

%package utils
Summary:        PulseAudio utilities
License:        GPL v2 or later; LGPL v2.1 or later
Group:          System/Sound Daemons
Requires:       libpulse0 = %{version}
Requires:       libpulse-browse0 = %{version}
Requires:       libpulse-mainloop-glib0 = %{version}

%description utils
pulseaudio is a networked sound server for Linux and other Unix like
operating systems and Microsoft Windows. It is intended to be an
improved drop-in replacement for the Enlightened Sound Daemon (ESOUND).



Authors:
--------
    Lennart Poettering
    Pierre Ossman

%lang_package
%prep
%setup -q -T -b0
%patch3 -p1
%patch7 -p1
%patch9 -p1
#already in 0.9.14 %patch8 -p1

%build
autoreconf -fi
export CFLAGS="$RPM_OPT_FLAGS -fno-strict-aliasing"
%configure --disable-ltdl-install --disable-static --disable-rpath --with-system-user=pulse --with-system-group=pulse --with-realtime-group=pulse-rt --with-access-group=pulse-access
make %{?jobs:-j%jobs}
make doxygen

%install
%makeinstall
rm -rf $RPM_BUILD_ROOT%{_libdir}/*.la $RPM_BUILD_ROOT%{_libdir}/pulse-%{drvver}/modules/*.la
# configure --disable-static had no effect; delete manually.
rm -rf $RPM_BUILD_ROOT%{_libdir}/*.a
%suse_update_desktop_file pulseaudio
%find_lang %{name}
chmod 755 $RPM_BUILD_ROOT%{_bindir}/pulseaudio
install %SOURCE2 $RPM_BUILD_ROOT%{_bindir}
chmod 755 $RPM_BUILD_ROOT%{_bindir}/setup-pulseaudio
ln -s esdcompat $RPM_BUILD_ROOT%{_bindir}/esd
rm $RPM_BUILD_ROOT/%{_libdir}/libpulsecore.so

%clean
rm -rf $RPM_BUILD_ROOT

%pre
groupadd -r pulse &>/dev/null || :
useradd -r -c 'PulseAudio daemon' \
    -s /sbin/nologin -d /var/lib/pulseaudio -g pulse -G audio pulse &>/dev/null || :
groupadd -r pulse-rt &>/dev/null || :
groupadd -r pulse-access &>/dev/null || :

%post -n libpulse0 -p /sbin/ldconfig

%postun -n libpulse0 -p /sbin/ldconfig

%post -n libpulse-mainloop-glib0 -p /sbin/ldconfig

%postun -n libpulse-mainloop-glib0 -p /sbin/ldconfig

%post -n libpulse-browse0 -p /sbin/ldconfig

%postun -n libpulse-browse0 -p /sbin/ldconfig

%post -p /sbin/ldconfig

%postun -p /sbin/ldconfig

%files
%defattr(-,root,root)
%doc README LICENSE GPL LGPL
%dir %{_sysconfdir}/pulse/
%config(noreplace) %{_sysconfdir}/pulse/daemon.conf
%config(noreplace) %{_sysconfdir}/pulse/default.pa
%config(noreplace) %{_sysconfdir}/pulse/system.pa
%{_sysconfdir}/xdg/autostart/pulseaudio.desktop
#%attr(4755,root,root) %{_bindir}/pulseaudio
%{_bindir}/pulseaudio
%{_bindir}/setup-pulseaudio
%{_bindir}/start-pulseaudio-x11
%dir %{_libdir}/pulse-%{drvver}/
%dir %{_libdir}/pulse-%{drvver}/modules/
%{_libdir}/libpulsecore.so.*
%{_libdir}/libpulsedsp.so
%{_libdir}/pulse-%{drvver}/modules/libalsa-util.so
%{_libdir}/pulse-%{drvver}/modules/libauth-cookie.so
%{_libdir}/pulse-%{drvver}/modules/libauthkey.so
%{_libdir}/pulse-%{drvver}/modules/libcli.so
%{_libdir}/pulse-%{drvver}/modules/libdbus-util.so
%{_libdir}/pulse-%{drvver}/modules/libiochannel.so
%{_libdir}/pulse-%{drvver}/modules/libioline.so
%{_libdir}/pulse-%{drvver}/modules/libipacl.so
%{_libdir}/pulse-%{drvver}/modules/liboss-util.so
%{_libdir}/pulse-%{drvver}/modules/libpacket.so
%{_libdir}/pulse-%{drvver}/modules/libparseaddr.so
%{_libdir}/pulse-%{drvver}/modules/libpdispatch.so
%{_libdir}/pulse-%{drvver}/modules/libprotocol-cli.so
%{_libdir}/pulse-%{drvver}/modules/libprotocol-esound.so
%{_libdir}/pulse-%{drvver}/modules/libprotocol-http.so
%{_libdir}/pulse-%{drvver}/modules/libprotocol-native.so
%{_libdir}/pulse-%{drvver}/modules/libprotocol-simple.so
%{_libdir}/pulse-%{drvver}/modules/libpstream-util.so
%{_libdir}/pulse-%{drvver}/modules/libpstream.so
%{_libdir}/pulse-%{drvver}/modules/librtp.so
%{_libdir}/pulse-%{drvver}/modules/libsocket-client.so
%{_libdir}/pulse-%{drvver}/modules/libsocket-server.so
%{_libdir}/pulse-%{drvver}/modules/libsocket-util.so
%{_libdir}/pulse-%{drvver}/modules/libstrlist.so
%{_libdir}/pulse-%{drvver}/modules/libtagstruct.so
%{_libdir}/pulse-%{drvver}/modules/module-alsa-sink.so
%{_libdir}/pulse-%{drvver}/modules/module-alsa-source.so
%{_libdir}/pulse-%{drvver}/modules/module-always-sink.so
%{_libdir}/pulse-%{drvver}/modules/module-cli-protocol-tcp.so
%{_libdir}/pulse-%{drvver}/modules/module-cli-protocol-unix.so
%{_libdir}/pulse-%{drvver}/modules/module-cli.so
%{_libdir}/pulse-%{drvver}/modules/module-combine.so
%{_libdir}/pulse-%{drvver}/modules/module-console-kit.so
%{_libdir}/pulse-%{drvver}/modules/module-detect.so
%{_libdir}/pulse-%{drvver}/modules/module-device-restore.so
%{_libdir}/pulse-%{drvver}/modules/module-esound-compat-spawnfd.so
%{_libdir}/pulse-%{drvver}/modules/module-esound-compat-spawnpid.so
%{_libdir}/pulse-%{drvver}/modules/module-esound-protocol-tcp.so
%{_libdir}/pulse-%{drvver}/modules/module-esound-protocol-unix.so
%{_libdir}/pulse-%{drvver}/modules/module-esound-sink.so
%{_libdir}/pulse-%{drvver}/modules/module-hal-detect.so
%{_libdir}/pulse-%{drvver}/modules/module-http-protocol-tcp.so
%{_libdir}/pulse-%{drvver}/modules/module-http-protocol-unix.so
%{_libdir}/pulse-%{drvver}/modules/module-match.so
%{_libdir}/pulse-%{drvver}/modules/module-mmkbd-evdev.so
%{_libdir}/pulse-%{drvver}/modules/module-native-protocol-fd.so
%{_libdir}/pulse-%{drvver}/modules/module-native-protocol-tcp.so
%{_libdir}/pulse-%{drvver}/modules/module-native-protocol-unix.so
%{_libdir}/pulse-%{drvver}/modules/module-null-sink.so
%{_libdir}/pulse-%{drvver}/modules/module-oss.so
%{_libdir}/pulse-%{drvver}/modules/module-pipe-sink.so
%{_libdir}/pulse-%{drvver}/modules/module-pipe-source.so
%{_libdir}/pulse-%{drvver}/modules/module-position-event-sounds.so
%{_libdir}/pulse-%{drvver}/modules/module-rescue-streams.so
%{_libdir}/pulse-%{drvver}/modules/module-rtp-recv.so
%{_libdir}/pulse-%{drvver}/modules/module-rtp-send.so
%{_libdir}/pulse-%{drvver}/modules/module-simple-protocol-tcp.so
%{_libdir}/pulse-%{drvver}/modules/module-simple-protocol-unix.so
%{_libdir}/pulse-%{drvver}/modules/module-stream-restore.so
%{_libdir}/pulse-%{drvver}/modules/module-sine.so
%{_libdir}/pulse-%{drvver}/modules/module-tunnel-sink.so
%{_libdir}/pulse-%{drvver}/modules/module-tunnel-source.so
%{_libdir}/pulse-%{drvver}/modules/module-volume-restore.so
%{_libdir}/pulse-%{drvver}/modules/module-suspend-on-idle.so
%{_libdir}/pulse-%{drvver}/modules/module-default-device-restore.so
%{_libdir}/pulse-%{drvver}/modules/module-ladspa-sink.so
%{_libdir}/pulse-%{drvver}/modules/module-remap-sink.so
%{_datadir}/PolicyKit/policy/org.pulseaudio.policy
%{_mandir}/man1/pulseaudio.1.gz
%{_mandir}/man5/default.pa.5.gz
%{_mandir}/man5/pulse-client.conf.5.gz
%{_mandir}/man5/pulse-daemon.conf.5.gz

%files esound-compat
%defattr(-,root,root)
%{_bindir}/esdcompat
%{_bindir}/esd
%{_mandir}/man1/esdcompat.1.gz

%files module-lirc
%defattr(-,root,root)
%{_libdir}/pulse-%{drvver}/modules/module-lirc.so

%files module-x11
%defattr(-,root,root)
%{_libdir}/pulse-%{drvver}/modules/libx11prop.so
%{_libdir}/pulse-%{drvver}/modules/libx11wrap.so
%{_libdir}/pulse-%{drvver}/modules/module-x11-bell.so
%{_libdir}/pulse-%{drvver}/modules/module-x11-publish.so
%{_libdir}/pulse-%{drvver}/modules/module-x11-xsmp.so

%files module-zeroconf
%defattr(-,root,root)
%{_libdir}/pulse-%{drvver}/modules/libavahi-wrap.so
%{_libdir}/pulse-%{drvver}/modules/module-zeroconf-publish.so
%{_libdir}/pulse-%{drvver}/modules/module-zeroconf-discover.so

%files module-jack
%defattr(-,root,root)
%{_libdir}/pulse-%{drvver}/modules/module-jack-sink.so
%{_libdir}/pulse-%{drvver}/modules/module-jack-source.so

%files module-bluetooth
%defattr(-,root,root)
%{_libdir}/pulse-%{drvver}/modules/libbluetooth-ipc.so
%{_libdir}/pulse-%{drvver}/modules/libbluetooth-sbc.so
%{_libdir}/pulse-%{drvver}/modules/module-bluetooth-device.so
%{_libdir}/pulse-%{drvver}/modules/module-bluetooth-discover.so
%{_libdir}/pulse-%{drvver}/modules/module-bluetooth-proximity.so
%attr(0755,root,root) %{_libexecdir}/pulse/proximity-helper

%files module-gconf
%defattr(-,root,root)
%dir %{_libdir}/pulse
%{_libdir}/pulse-%{drvver}/modules/module-gconf.so
%{_libexecdir}/pulse/gconf-helper

%files -n libpulse0
%defattr(-,root,root)
%doc README LICENSE GPL LGPL
%dir %{_sysconfdir}/pulse/
%config(noreplace) %{_sysconfdir}/pulse/client.conf
%{_libdir}/libpulse.so.*
%{_libdir}/libpulse-simple.so.*

%files -n libpulse-mainloop-glib0
%defattr(-,root,root)
%{_libdir}/libpulse-mainloop-glib.so.*

%files -n libpulse-browse0
%defattr(-,root,root)
%{_bindir}/pabrowse
%{_libdir}/libpulse-browse.so.*

%files -n libpulse-devel
%defattr(-,root,root)
%doc doxygen/html
%{_includedir}/pulse/
%{_libdir}/libpulse.so
%{_libdir}/libpulse-mainloop-glib.so
%{_libdir}/libpulse-simple.so
%{_libdir}/libpulse-browse.so
%{_libdir}/pkgconfig/libpulse*.pc

%files utils
%defattr(-,root,root)
%{_bindir}/pacat
%{_bindir}/pacmd
%{_bindir}/pactl
%{_bindir}/paplay
%{_bindir}/parec
%{_bindir}/pax11publish
%{_bindir}/padsp
%{_bindir}/pasuspender
%{_mandir}/man1/pabrowse.1.gz
%{_mandir}/man1/pacat.1.gz
%{_mandir}/man1/pacmd.1.gz
%{_mandir}/man1/pactl.1.gz
%{_mandir}/man1/paplay.1.gz
%{_mandir}/man1/pasuspender.1.gz
%{_mandir}/man1/padsp.1.gz
%{_mandir}/man1/pax11publish.1.gz

%files lang -f %{name}.lang

%changelog
openSUSE Build Service is sponsored by