blob: d28e4eee0f901d3cb84feeed751af32cb24cc8af (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
|
# Copyright 1999-2007 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
# $Header: /var/cvsroot/gentoo-x86/media-sound/pulseaudio/pulseaudio-0.9.6.ebuild,v 1.7 2007/07/22 08:41:31 drac Exp $
inherit eutils libtool # autotools
DESCRIPTION="A networked sound server with an advanced plugin system"
HOMEPAGE="http://0pointer.de/lennart/projects/pulseaudio/"
SRC_URI="http://0pointer.de/lennart/projects/${PN}/${P}.tar.gz"
LICENSE="LGPL-2 GPL-2"
SLOT="0"
KEYWORDS="~alpha ~amd64 ~arm ~hppa ~ia64 ~sh ~sparc ~x86 ~x86-fbsd"
IUSE="alsa avahi caps jack lirc oss tcpd X hal"
RDEPEND="X? ( x11-libs/libX11 )
caps? ( sys-libs/libcap )
>=media-libs/audiofile-0.2.6-r1
>=media-libs/libsamplerate-0.1.1-r1
>=media-libs/libsndfile-1.0.10
>=dev-libs/liboil-0.3.6
alsa? ( >=media-libs/alsa-lib-1.0.10 )
>=dev-libs/glib-2.4.0
avahi? ( >=net-dns/avahi-0.6.12 )
>=dev-libs/liboil-0.3.0
jack? ( >=media-sound/jack-audio-connection-kit-0.100 )
tcpd? ( sys-apps/tcp-wrappers )
lirc? ( app-misc/lirc )
hal? ( >=sys-apps/hal-0.5.7 )
app-admin/eselect-esd
sys-devel/libtool" # it's a valid RDEPEND, libltdl.so is used
DEPEND="${RDEPEND}
dev-libs/libatomic_ops
dev-util/pkgconfig"
# This is for the alsasound init.d script (see bug #155707)
RDEPEND="${RDEPEND}
alsa? ( media-sound/alsa-utils )"
pkg_setup() {
if use avahi && ! built_with_use net-dns/avahi dbus ; then
echo
eerror "In order to compile pulseaudio with avahi support, you need to have"
eerror "net-dns/avahi emerged with 'dbus' in your USE flag. Please add that"
eerror "flag, re-emerge avahi, and then emerge pulseaudio again."
die "net-dns/avahi is missing the D-Bus bindings."
fi
enewgroup audio 18 # Just make sure it exists
enewgroup pulse-access
enewgroup pulse-rt
enewgroup pulse
enewuser pulse -1 -1 /var/run/pulse pulse,audio
}
src_unpack() {
unpack ${A}
cd "${S}"
epatch "${FILESDIR}/${P}-build.patch"
# eautoreconf
elibtoolize
}
src_compile() {
econf \
--enable-largefile \
--enable-glib2 \
--disable-solaris \
--disable-asyncns \
$(use_enable oss) \
$(use_enable alsa) \
$(use_enable lirc) \
$(use_enable tcpd tcpwrap) \
$(use_enable jack) \
$(use_enable lirc) \
$(use_enable avahi) \
$(use_enable hal) \
$(use_with caps) \
$(use_with X x) \
--disable-ltdl-install \
--localstatedir=/var \
--with-realtime-group=pulse-rt \
|| die "econf failed"
emake || die "emake failed"
}
src_install() {
emake -j1 DESTDIR="${D}" install || die "make install failed"
newconfd "${FILESDIR}/pulseaudio.conf.d" pulseaudio
local neededservices
use alsa && neededservices="$neededservices alsasound"
use avahi && neededservices="$neededservices avahi-daemon"
use hal && neededservices="$neededservices hald"
[[ -n ${neededservices} ]] && sed -e "s/@neededservices@/need $neededservices/" "${FILESDIR}/pulseaudio.init.d-2" > "${T}/pulseaudio"
doinitd "${T}/pulseaudio"
if ! use hal; then
sed -i -e '/module-hal-detect/s:^:#: ; /module-detect/s:^#::' "${D}/etc/pulse/default.pa"
fi
use avahi && sed -i -e '/module-zeroconf-publish/s:^#::' "${D}/etc/pulse/default.pa"
dohtml -r doc
dodoc README
# Create the state directory
diropts -o pulse -g pulse -m0755
keepdir /var/run/pulse
}
pkg_postinst() {
elog "PulseAudio in Gentoo can use a system-wide pulseaudio daemon."
elog "This support is enabled by starting the pulseaudio init.d ."
elog "To be able to access that you need to be in the group pulse-access."
elog "For more information about system-wide support, please refer to"
elog " http://pulseaudio.org/wiki/SystemWideInstance"
elog "To use the ESounD wrapper while using a system-wide daemon, you also"
elog "need to enable auth-anonymous for the esound-unix module, or to copy"
elog "/var/run/pulse/.esd_auth into each home directory."
eselect esd update --if-unset
}
|