Magellan Linux

Contents of /branches/R11-stable/extras/pulseaudio/pulseaudio-3.0-r2.smage2

Parent Directory Parent Directory | Revision Log Revision Log


Revision 16156 - (show annotations) (download)
Fri Jan 25 00:26:46 2013 UTC (11 years, 4 months ago) by niro
File size: 9322 byte(s)
-release branches/R11-stable
1 # $Id$
2
3 PNAME="pulseaudio"
4 PVER="3.0"
5 PBUILD="r2"
6
7 SPLIT_PACKAGES="libpulse
8 pulseaudio
9 pulseaudio-zeroconf
10 pulseaudio-bluetooth
11 pulseaudio-raop
12 pulseaudio-alsa
13 pulseaudio-esound
14 pulseaudio-utils
15 pulseaudio-x11"
16
17 PCAT="media-sound"
18
19 HOMEPAGE="http://www.pulseaudio.org/"
20
21 LIBPULSE_DEPEND=">= dev-libs/glib2-2.34
22 >= dev-libs/json-c-0.9
23 >= x11-libs/libSM-1
24 >= x11-libs/libICE-1
25 >= x11-libs/libXtst-1.2
26 >= x11-libs/libX11-1.4
27 >= x11-libs/libxcb-1.7
28 >= x11-libs/xcb-util-0.3.9
29 >= sys-libs/libcap-2.20
30 >= sys-apps/dbus-1.6
31 >= media-libs/flac-1.2
32 >= media-libs/libogg-1.3
33 >= media-libs/libvorbis-1.3
34 >= media-libs/libsndfile-1.0.24
35 >= sys-apps/tcp-wrappers-7.6"
36
37 COMMON_DEPEND=">= dev-db/tdb-1.2.9
38 >= sys-fs/udev-196
39 >= media-libs/audiofile-0.2.7
40 >= media-libs/libsamplerate-0.1.8
41 >= media-libs/speex-1.2
42 >= sci-libs/fftw3-3.3"
43 # todo rtkit deamon for realtime support ?
44
45 ZEROCONF_DEPEND=">= net-dns/avahi-0.6.31
46 >= sys-libs/libssp-4.7"
47 BLUETOOTH_DEPEND=">= net-wlan/bluez-4.101
48 >= media-libs/sbc-1"
49 RAOP_DEPEND=">= dev-libs/openssl-1.0.1c
50 >= sys-libs/libssp-4.7"
51 ALSA_DEPEND=">= media-libs/alsa-lib-1.0.26"
52
53 SDEPEND="${LIBPULSE_DEPEND}
54 ${COMMON_DEPEND}
55 ${ZEROCONF_DEPEND}
56 ${BLUETOOTH_DEPEND}
57 ${RAOP_DEPEND}
58 ${ALSA_DEPEND}
59 >= x11-proto/xproto-7
60 >= dev-util/pkgconfig-0.25
61 >= dev-util/intltool-0.50"
62
63 SRCFILE="${PNAME}-${PVER}.tar.xz"
64 SRCDIR="${BUILDDIR}/${PNAME}-${PVER}"
65
66 sminclude mtools multilib cleanutils
67 msetfeature "!check"
68
69 SRC_URI=(
70 http://freedesktop.org/software/${PNAME}/releases/${SRCFILE}
71 mirror://${PNAME}/${SRCFILE}
72 )
73
74 UP2DATE="updatecmd 'http://freedesktop.org/software/pulseaudio/releases/?C=M;O=A' | lasttarball xz"
75
76 split_info_libpulse()
77 {
78 DESCRIPTION="Libraries for PulseAudio clients."
79 DEPEND="${LIBPULSE_DEPEND}"
80 }
81
82 split_info_pulseaudio()
83 {
84 DESCRIPTION="A networked sound server with an advanced plugin system."
85 DEPEND="== media-sound/libpulse-${PVER}
86 ${COMMON_DEPEND}"
87 }
88
89 split_info_pulseaudio-zeroconf()
90 {
91 DESCRIPTION="Zeroconf support for the PulseAudio sound server."
92 DEPEND="== media-sound/libpulse-${PVER}
93 == media-sound/pulseaudio-${PVER}
94 ${ZEROCONF_DEPEND}"
95 }
96
97 split_info_pulseaudio-bluetooth()
98 {
99 DESCRIPTION="Bluetooth support for the PulseAudio sound server."
100 DEPEND="== media-sound/libpulse-${PVER}
101 == media-sound/pulseaudio-${PVER}
102 ${BLUETOOTH_DEPEND}"
103 }
104
105 split_info_pulseaudio-raop()
106 {
107 DESCRIPTION="RAOP support for the PulseAudio sound server."
108 DEPEND="== media-sound/libpulse-${PVER}
109 == media-sound/pulseaudio-${PVER}
110 ${RAOP_DEPEND}"
111 }
112
113 split_info_pulseaudio-alsa()
114 {
115 DESCRIPTION="ALSA support for the PulseAudio sound server."
116 DEPEND="== media-sound/libpulse-${PVER}
117 == media-sound/pulseaudio-${PVER}
118 ${ALSA_DEPEND}"
119 }
120
121 split_info_pulseaudio-esound()
122 {
123 DESCRIPTION="PulseAudio EsounD daemon compatibility script."
124 DEPEND="== media-sound/libpulse-${PVER}
125 == media-sound/pulseaudio-${PVER}"
126 }
127
128 split_info_pulseaudio-x11()
129 {
130 DESCRIPTION="X11 support for the PulseAudio sound server."
131 DEPEND="== media-sound/libpulse-${PVER}
132 == media-sound/pulseaudio-${PVER}
133 == media-sound/pulseaudio-utils-${PVER}"
134 }
135
136 split_info_pulseaudio-utils()
137 {
138 DESCRIPTION="PulseAudio sound server utilities."
139 DEPEND="== media-sound/libpulse-${PVER}
140 == media-sound/pulseaudio-${PVER}"
141 }
142
143 src_prepare()
144 {
145 munpack ${SRCFILE} || die
146
147 # fix /var/run -> /run
148 all-abis "sed -i 's:^\(PA_SYSTEM_RUNTIME_PATH=\).*:\1\"/run/pulse\":' configure.ac || die"
149 mautoreconf || die
150 }
151
152 src_compile()
153 {
154 mconfigure \
155 --libexecdir=/usr/'$(mlibdir)'/pulse-${PVER} \
156 --localstatedir=/var \
157 --with-udev-rules-dir=/usr/lib/udev/rules.d \
158 --with-database=tdb \
159 --with-caps \
160 --disable-per-user-esound-socket \
161 --disable-solaris \
162 --disable-hal \
163 --disable-rpath \
164 --enable-largefile \
165 --enable-glib2 \
166 --enable-udev \
167 --enable-dbus \
168 --enable-alsa \
169 --enable-samplerate \
170 --enable-ipv6 \
171 --enable-avahi \
172 --enable-tcpwrap \
173 --enable-x11 \
174 --enable-bluez \
175 --enable-systemd \
176 --disable-asyncns \
177 --disable-oss-output \
178 --disable-lirc \
179 --disable-jack \
180 --disable-gconf \
181 --disable-default-build-tests \
182 || die
183
184 mmake || die
185 }
186
187 src_install_libpulse()
188 {
189 mmake -j1 DESTDIR=${BINDIR} install || die
190 zapmost ${BINDIR} \
191 etc/pulse/client.conf \
192 usr/include \
193 usr/$(mlibdir)/*.so usr/$(mlibdir)/*.so.* usr/$(mlibdir)/*.la usr/$(mlibdir)/cmake usr/$(mlibdir)/pkgconfig usr/$(mlibdir)/pulseaudio \
194 $([[ $(mlibdir) != lib ]] && echo "usr/lib/*.so usr/lib/*.so.* usr/lib/*.la usr/lib/cmake usr/lib/pkgconfig usr/lib/pulseaudio") \
195 usr/share/vala \
196 usr/share/man/man5/pulse-client.conf.5 \
197 || die
198
199 # remove libpulsecore and libpulsedsp
200 rm ${BINDIR}/usr/$(mlibdir)/libpulsecore-${PVER}.* || die
201 if [[ $(mlibdir) != lib ]]
202 then
203 rm ${BINDIR}/usr/lib/libpulsecore-${PVER}.* || die
204 fi
205 }
206
207 src_install_pulseaudio()
208 {
209 mmake -j1 DESTDIR=${BINDIR} install || die
210
211 # make avahi support optional
212 sed -i '/load-module\ module-zeroconf-publish/s:^#::' ${BINDIR}/etc/pulse/default.pa || die
213 sed -i $'/load-module\ module-zeroconf-publish/{i.ifexists\ module-zeroconf-publish.so\n;a.endif\n;}' ${BINDIR}/etc/pulse/default.pa || die
214
215 # disable consolekit, use systemd
216 sed -i '/load-module\ module-console-kit/s:^:#:' ${BINDIR}/etc/pulse/default.pa || die
217
218 zapmost ${BINDIR} \
219 etc/pulse/daemon.conf \
220 etc/pulse/*.pa \
221 etc/dbus-1 \
222 usr/bin/pulseaudio \
223 usr/$(mlibdir)/libpulsecore-*.* \
224 usr/$(mlibdir)/pulse-${PVER}/modules \
225 $([[ $(mlibdir) != lib ]] && echo "usr/lib/libpulsecore-*.*
226 usr/lib/pulse-${PVER}/modules") \
227 usr/share/locale \
228 usr/share/man/man1/pulseaudio.1 \
229 usr/share/man/man5/default.pa.5 \
230 usr/share/man/man5/pulse-daemon.conf.5 \
231 lib/udev \
232 || die
233
234 # remove modules which are in other packages
235 rm -rf ${BINDIR}/usr/$(mlibdir)/pulse-${PVER}/modules/*alsa* || die
236 rm -rf ${BINDIR}/usr/$(mlibdir)/pulse-${PVER}/modules/*esound* || die
237 rm -rf ${BINDIR}/usr/$(mlibdir)/pulse-${PVER}/modules/*avahi* || die
238 rm -rf ${BINDIR}/usr/$(mlibdir)/pulse-${PVER}/modules/*zeroconf* || die
239 rm -rf ${BINDIR}/usr/$(mlibdir)/pulse-${PVER}/modules/*x11* || die
240 rm -rf ${BINDIR}/usr/$(mlibdir)/pulse-${PVER}/modules/*bluetooth* || die
241 rm -rf ${BINDIR}/usr/$(mlibdir)/pulse-${PVER}/modules/*raop* || die
242 if [[ $(mlibdir) != lib ]]
243 then
244 rm -rf ${BINDIR}/usr/lib/pulse-${PVER}/modules/*alsa* || die
245 rm -rf ${BINDIR}/usr/lib/pulse-${PVER}/modules/*esound* || die
246 rm -rf ${BINDIR}/usr/lib/pulse-${PVER}/modules/*avahi* || die
247 rm -rf ${BINDIR}/usr/lib/pulse-${PVER}/modules/*zeroconf* || die
248 rm -rf ${BINDIR}/usr/lib/pulse-${PVER}/modules/*x11* || die
249 rm -rf ${BINDIR}/usr/lib/pulse-${PVER}/modules/*bluetooth* || die
250 rm -rf ${BINDIR}/usr/lib/pulse-${PVER}/modules/*raop* || die
251 fi
252
253 # state dir
254 mkeepdir /run/pulse || die
255 mchown pulse.pulse /run/pulse || die
256 }
257
258 src_install_pulseaudio-alsa()
259 {
260 mmake -j1 DESTDIR=${BINDIR} install || die
261
262 zapmost ${BINDIR} \
263 usr/$(mlibdir)/pulse-${PVER}/modules/*alsa* \
264 $([[ $(mlibdir) != lib ]] && echo "usr/lib/pulse-${PVER}/modules/*alsa*") \
265 usr/share/pulseaudio/alsa-mixer \
266 || die
267 }
268
269 src_install_pulseaudio-esound()
270 {
271 mmake -j1 DESTDIR=${BINDIR} install || die
272
273 zapmost ${BINDIR} \
274 usr/bin/esdcompat \
275 usr/$(mlibdir)/pulse-${PVER}/modules/*esound* \
276 $([[ $(mlibdir) != lib ]] && echo "usr/lib/pulse-${PVER}/modules/*esound*") \
277 usr/share/man/man1/esdcompat.1 \
278 || die
279 }
280
281 src_install_pulseaudio-zeroconf()
282 {
283 mmake -j1 DESTDIR=${BINDIR} install || die
284
285 zapmost ${BINDIR} \
286 usr/$(mlibdir)/pulse-${PVER}/modules/*avahi* \
287 usr/$(mlibdir)/pulse-${PVER}/modules/*zeroconf* \
288 $([[ $(mlibdir) != lib ]] && echo "usr/lib/pulse-${PVER}/modules/*avahi*
289 usr/lib/pulse-${PVER}/modules/*zeroconf*") \
290 || die
291 }
292
293 src_install_pulseaudio-x11()
294 {
295 mmake -j1 DESTDIR=${BINDIR} install || die
296
297 zapmost ${BINDIR} \
298 etc/xdg \
299 usr/bin/start-pulseaudio* \
300 usr/$(mlibdir)/pulse-${PVER}/modules/*x11* \
301 $([[ $(mlibdir) != lib ]] && echo "usr/lib/pulse-${PVER}/modules/*x11*") \
302 usr/share/man/man1/start-pulseaudio* \
303 || die
304 }
305
306 src_install_pulseaudio-bluetooth()
307 {
308 mmake -j1 DESTDIR=${BINDIR} install || die
309
310 zapmost ${BINDIR} \
311 usr/$(mlibdir)/pulse-${PVER}/modules/*bluetooth* \
312 usr/$(mlibdir)/pulse-${PVER}/pulse/proximity-helper \
313 $([[ $(mlibdir) != lib ]] && echo "usr/lib/pulse-${PVER}/modules/*bluetooth*
314 usr/lib/pulse-${PVER}/pulse/proximity-helper") \
315 || die
316 }
317
318 src_install_pulseaudio-raop()
319 {
320 mmake -j1 DESTDIR=${BINDIR} install || die
321
322 zapmost ${BINDIR} \
323 usr/$(mlibdir)/pulse-${PVER}/modules/*raop* \
324 $([[ $(mlibdir) != lib ]] && echo "usr/lib/pulse-${PVER}/modules/*raop*") \
325 || die
326 }
327
328 src_install_pulseaudio-utils()
329 {
330 mmake -j1 DESTDIR=${BINDIR} install || die
331
332 zapmost ${BINDIR} \
333 usr/bin/pa* \
334 usr/share/man/man1/pa* \
335 || die
336 }
337
338 preinstall_pulseaudio()
339 {
340 # adding pulse user
341 ${MLIBDIR}/mgroupadd -o "-g 11" audio
342 ${MLIBDIR}/mgroupadd pulse-access
343 ${MLIBDIR}/mgroupadd pulse
344 ${MLIBDIR}/museradd -o "-g pulse -G audio -d /run/pulse -s /bin/false" pulse
345 }
346
347 postinstall_pulseaudio()
348 {
349 if [[ -z $(magequery -n alsa-plugins) ]]
350 then
351 echo "You have alsa support enabled so you probably want to install"
352 echo "'media-sound/alsa-plugins' with pulseaudio support to have"
353 echo "alsa using applications route their sound through pulseaudio."
354 fi
355 }