Magellan Linux

Contents of /branches/magellan-next/core/pulseaudio/pulseaudio-1.1-r3.smage2

Parent Directory Parent Directory | Revision Log Revision Log


Revision 9798 - (show annotations) (download)
Wed Jan 11 23:32:19 2012 UTC (12 years, 4 months ago) by niro
File size: 11087 byte(s)
-disable rpath and use --as-needed to drop unused deps
1 # $Id$
2
3 PNAME="pulseaudio"
4 PVER="1.1"
5 PBUILD="r3"
6
7 SPLIT_PACKAGES="libpulse
8 pulseaudio
9 pulseaudio-zeroconf
10 pulseaudio-bluetooth
11 pulseaudio-raop
12 pulseaudio-alsa
13 pulseaudio-esound
14 pulseaudio-x11
15 pulseaudio-utils"
16
17 PCATEGORIE="media-sound"
18
19 HOMEPAGE="http://www.pulseaudio.org/"
20
21 LIBPULSE_DEPEND=">= dev-libs/glib2-2.28
22 >= dev-libs/json-c-0.9
23 >= x11-libs/libSM-1
24 >= x11-libs/libICE
25 >= x11-libs/libXtst
26 >= x11-libs/libX11-1.4
27 >= x11-libs/libxcb-1.7
28 >= x11-libs/xcb-util-0.3.8
29 >= sys-libs/libcap-2.20
30 >= sys-apps/dbus-1.5
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-171
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.30
46 >= sys-libs/libssp-4.6"
47 BLUETOOTH_DEPEND=">= net-wlan/bluez-4.96"
48 RAOP_DEPEND=">= dev-libs/openssl-1.0.0e
49 >= sys-libs/libssp-4.6"
50 ALSA_DEPEND=">= media-libs/alsa-lib-1.0.24"
51
52 SDEPEND="${LIBPULSE_DEPEND}
53 ${COMMON_DEPEND}
54 ${ZEROCONF_DEPEND}
55 ${BLUETOOTH_DEPEND}
56 ${RAOP_DEPEND}
57 ${ALSA_DEPEND}
58 >= x11-proto/xproto-7
59 >= dev-util/pkgconfig-0.25
60 >= dev-util/intltool-0.41"
61
62 SRCFILE="${PNAME}-${PVER}.tar.gz"
63 SRCDIR="${BUILDDIR}/${PNAME}-${PVER}"
64
65 sminclude mtools multilib cleanutils
66
67 SRC_URI=(
68 http://freedesktop.org/software/${PNAME}/releases/${SRCFILE}
69 mirror://${PNAME}/${SRCFILE}
70 )
71
72 UP2DATE="updatecmd ${HOMEPAGE} | firsttarball gz"
73
74 split_info_libpulse()
75 {
76 DESCRIPTION="Libraries for PulseAudio clients."
77 DEPEND="${LIBPULSE_DEPEND}"
78 }
79
80 split_info_pulseaudio()
81 {
82 DESCRIPTION="A networked sound server with an advanced plugin system."
83 DEPEND="== media-sound/libpulse-${PVER}
84 ${COMMON_DEPEND}"
85 }
86
87 split_info_pulseaudio-zeroconf()
88 {
89 DESCRIPTION="Zeroconf support for the PulseAudio sound server."
90 DEPEND="== media-sound/libpulse-${PVER}
91 == media-sound/pulseaudio-${PVER}
92 ${ZEROCONF_DEPEND}"
93 }
94
95 split_info_pulseaudio-bluetooth()
96 {
97 DESCRIPTION="Bluetooth support for the PulseAudio sound server."
98 DEPEND="== media-sound/libpulse-${PVER}
99 == media-sound/pulseaudio-${PVER}
100 ${BLUETOOTH_DEPEND}"
101 }
102
103 split_info_pulseaudio-raop()
104 {
105 DESCRIPTION="RAOP support for the PulseAudio sound server."
106 DEPEND="== media-sound/libpulse-${PVER}
107 == media-sound/pulseaudio-${PVER}
108 ${RAOP_DEPEND}"
109 }
110
111 split_info_pulseaudio-alsa()
112 {
113 DESCRIPTION="ALSA support for the PulseAudio sound server."
114 DEPEND="== media-sound/libpulse-${PVER}
115 == media-sound/pulseaudio-${PVER}
116 ${ALSA_DEPEND}"
117 }
118
119 split_info_pulseaudio-esound()
120 {
121 DESCRIPTION="PulseAudio EsounD daemon compatibility script."
122 DEPEND="== media-sound/libpulse-${PVER}
123 == media-sound/pulseaudio-${PVER}"
124 }
125
126 split_info_pulseaudio-x11()
127 {
128 DESCRIPTION="X11 support for the PulseAudio sound server."
129 DEPEND="== media-sound/libpulse-${PVER}
130 == media-sound/pulseaudio-${PVER}"
131 }
132
133 split_info_pulseaudio-utils()
134 {
135 DESCRIPTION="PulseAudio sound server utilities."
136 DEPEND="== media-sound/libpulse-${PVER}
137 == media-sound/pulseaudio-${PVER}"
138 }
139
140 src_compile()
141 {
142 mconfigure \
143 --libexecdir=/usr/'$(mlibdir)'/pulse-${PVER} \
144 --localstatedir=/var \
145 --with-udev-rules-dir=/lib/udev/rules.d \
146 --with-database=tdb \
147 --with-caps \
148 --disable-per-user-esound-socket \
149 --disable-solaris \
150 --disable-hal \
151 --disable-rpath \
152 --enable-largefile \
153 --enable-glib2 \
154 --enable-udev \
155 --enable-dbus \
156 --enable-alsa \
157 --enable-samplerate \
158 --enable-ipv6 \
159 --enable-avahi \
160 --enable-tcpwrap \
161 --enable-x11 \
162 --enable-bluez \
163 --disable-asyncns \
164 --disable-oss-output \
165 --disable-lirc \
166 --disable-jack \
167 --disable-gconf \
168 --disable-default-build-tests \
169 || die
170
171 # fight unused direct deps
172 sed -i 's: -shared : -Wl,-O1,--as-needed\0:g' libtool || die
173
174 mmake || die
175 }
176
177 src_install_libpulse()
178 {
179 mmake DESTDIR=${BINDIR} install || die
180 zapmost ${BINDIR} \
181 etc/pulse/client.conf \
182 usr/include \
183 usr/$(mlibdir)/*.so usr/$(mlibdir)/*.so.* usr/$(mlibdir)/*.la usr/$(mlibdir)/cmake usr/$(mlibdir)/pkgconfig \
184 $([[ $(mlibdir) != lib ]] && echo "usr/lib/*.so usr/lib/*.so.* usr/lib/*.la usr/lib/cmake usr/lib/pkgconfig") \
185 usr/share/vala \
186 usr/share/man/man5/pulse-client.conf.5 \
187 || die
188
189 # remove libpulsecore and libpulsedsp
190 rm ${BINDIR}/usr/$(mlibdir)/libpulsecore-${PVER}.* || die
191 rm ${BINDIR}/usr/$(mlibdir)/libpulsedsp.* || die
192 if [[ $(mlibdir) != lib ]]
193 then
194 rm ${BINDIR}/usr/lib/libpulsecore-${PVER}.* || die
195 rm ${BINDIR}/usr/lib/libpulsedsp.* || die
196 fi
197 }
198
199 src_install_pulseaudio()
200 {
201 mmake DESTDIR=${BINDIR} install || die
202
203 # enable avahi support
204 sed -i '/module-zeroconf-publish/s:^#::' ${BINDIR}/etc/pulse/default.pa || die
205
206 zapmost ${BINDIR} \
207 etc/pulse/daemon.conf \
208 etc/pulse/*.pa \
209 etc/dbus-1 \
210 usr/bin/pulseaudio \
211 usr/$(mlibdir)/libpulsecore-*.* \
212 usr/$(mlibdir)/pulse-${PVER}/modules/*always* \
213 usr/$(mlibdir)/pulse-${PVER}/modules/*augment* \
214 usr/$(mlibdir)/pulse-${PVER}/modules/*card-restore* \
215 usr/$(mlibdir)/pulse-${PVER}/modules/*combine* \
216 usr/$(mlibdir)/pulse-${PVER}/modules/*console* \
217 usr/$(mlibdir)/pulse-${PVER}/modules/*cli* \
218 usr/$(mlibdir)/pulse-${PVER}/modules/*dbus* \
219 usr/$(mlibdir)/pulse-${PVER}/modules/*default* \
220 usr/$(mlibdir)/pulse-${PVER}/modules/*detect* \
221 usr/$(mlibdir)/pulse-${PVER}/modules/*echo* \
222 usr/$(mlibdir)/pulse-${PVER}/modules/*equalizer* \
223 usr/$(mlibdir)/pulse-${PVER}/modules/*filter* \
224 usr/$(mlibdir)/pulse-${PVER}/modules/*hal* \
225 usr/$(mlibdir)/pulse-${PVER}/modules/*http* \
226 usr/$(mlibdir)/pulse-${PVER}/modules/*intended* \
227 usr/$(mlibdir)/pulse-${PVER}/modules/*ladspa* \
228 usr/$(mlibdir)/pulse-${PVER}/modules/*loopback* \
229 usr/$(mlibdir)/pulse-${PVER}/modules/*match* \
230 usr/$(mlibdir)/pulse-${PVER}/modules/*mmkbd* \
231 usr/$(mlibdir)/pulse-${PVER}/modules/*native* \
232 usr/$(mlibdir)/pulse-${PVER}/modules/*null* \
233 usr/$(mlibdir)/pulse-${PVER}/modules/*phone* \
234 usr/$(mlibdir)/pulse-${PVER}/modules/*pipe* \
235 usr/$(mlibdir)/pulse-${PVER}/modules/*position* \
236 usr/$(mlibdir)/pulse-${PVER}/modules/*remap* \
237 usr/$(mlibdir)/pulse-${PVER}/modules/*rtp* \
238 usr/$(mlibdir)/pulse-${PVER}/modules/*rygel* \
239 usr/$(mlibdir)/pulse-${PVER}/modules/*simple* \
240 usr/$(mlibdir)/pulse-${PVER}/modules/*sine* \
241 usr/$(mlibdir)/pulse-${PVER}/modules/*stream* \
242 usr/$(mlibdir)/pulse-${PVER}/modules/*suspend* \
243 usr/$(mlibdir)/pulse-${PVER}/modules/*switch* \
244 usr/$(mlibdir)/pulse-${PVER}/modules/*tunnel* \
245 usr/$(mlibdir)/pulse-${PVER}/modules/*udev* \
246 usr/$(mlibdir)/pulse-${PVER}/modules/*virtual* \
247 usr/$(mlibdir)/pulse-${PVER}/modules/*volume* \
248 $([[ $(mlibdir) != lib ]] && echo "usr/lib/libpulsecore-*.*
249 usr/lib/pulse-${PVER}/modules/*always*
250 usr/lib/pulse-${PVER}/modules/*augment*
251 usr/lib/pulse-${PVER}/modules/*card-restore*
252 usr/lib/pulse-${PVER}/modules/*combine*
253 usr/lib/pulse-${PVER}/modules/*console*
254 usr/lib/pulse-${PVER}/modules/*cli*
255 usr/lib/pulse-${PVER}/modules/*dbus*
256 usr/lib/pulse-${PVER}/modules/*default*
257 usr/lib/pulse-${PVER}/modules/*detect*
258 usr/lib/pulse-${PVER}/modules/*echo*
259 usr/lib/pulse-${PVER}/modules/*equalizer*
260 usr/lib/pulse-${PVER}/modules/*filter*
261 usr/lib/pulse-${PVER}/modules/*hal*
262 usr/lib/pulse-${PVER}/modules/*http*
263 usr/lib/pulse-${PVER}/modules/*intended*
264 usr/lib/pulse-${PVER}/modules/*ladspa*
265 usr/lib/pulse-${PVER}/modules/*loopback*
266 usr/lib/pulse-${PVER}/modules/*match*
267 usr/lib/pulse-${PVER}/modules/*mmkbd*
268 usr/lib/pulse-${PVER}/modules/*native*
269 usr/lib/pulse-${PVER}/modules/*null*
270 usr/lib/pulse-${PVER}/modules/*phone*
271 usr/lib/pulse-${PVER}/modules/*pipe*
272 usr/lib/pulse-${PVER}/modules/*position*
273 usr/lib/pulse-${PVER}/modules/*remap*
274 usr/lib/pulse-${PVER}/modules/*rtp*
275 usr/lib/pulse-${PVER}/modules/*rygel*
276 usr/lib/pulse-${PVER}/modules/*simple*
277 usr/lib/pulse-${PVER}/modules/*sine*
278 usr/lib/pulse-${PVER}/modules/*stream*
279 usr/lib/pulse-${PVER}/modules/*suspend*
280 usr/lib/pulse-${PVER}/modules/*switch*
281 usr/lib/pulse-${PVER}/modules/*tunnel*
282 usr/lib/pulse-${PVER}/modules/*udev*
283 usr/lib/pulse-${PVER}/modules/*virtual*
284 usr/lib/pulse-${PVER}/modules/*volume*") \
285 usr/share/locale \
286 usr/share/man/man1/pulseaudio.1 \
287 usr/share/man/man5/default.pa.5 \
288 usr/share/man/man5/pulse-daemon.conf.5 \
289 lib/udev \
290 || die
291
292 # state dir
293 mkeepdir /var/run/pulse || die
294 mchown pulse.pulse /var/run/pulse || die
295 }
296
297 src_install_pulseaudio-alsa()
298 {
299 mmake DESTDIR=${BINDIR} install || die
300
301 zapmost ${BINDIR} \
302 usr/$(mlibdir)/pulse-${PVER}/modules/*alsa* \
303 $([[ $(mlibdir) != lib ]] && echo "usr/lib/pulse-${PVER}/modules/*alsa*") \
304 usr/share/pulseaudio/alsa-mixer \
305 || die
306 }
307
308 src_install_pulseaudio-esound()
309 {
310 mmake DESTDIR=${BINDIR} install || die
311
312 zapmost ${BINDIR} \
313 usr/bin/esdcompat \
314 usr/$(mlibdir)/pulse-${PVER}/modules/*esound* \
315 $([[ $(mlibdir) != lib ]] && echo "usr/lib/pulse-${PVER}/modules/*esound*") \
316 usr/share/man/man1/esdcompat.1 \
317 || die
318 }
319
320 src_install_pulseaudio-zeroconf()
321 {
322 mmake DESTDIR=${BINDIR} install || die
323
324 zapmost ${BINDIR} \
325 usr/$(mlibdir)/pulse-${PVER}/modules/*avahi* \
326 usr/$(mlibdir)/pulse-${PVER}/modules/*zeroconf* \
327 $([[ $(mlibdir) != lib ]] && echo "usr/lib/pulse-${PVER}/modules/*avahi*
328 usr/lib/pulse-${PVER}/modules/*zeroconf*") \
329 || die
330 }
331
332 src_install_pulseaudio-x11()
333 {
334 mmake DESTDIR=${BINDIR} install || die
335
336 zapmost ${BINDIR} \
337 etc/xdg \
338 usr/bin/start-pulseaudio* \
339 usr/$(mlibdir)/pulse-${PVER}/modules/*x11* \
340 $([[ $(mlibdir) != lib ]] && echo "usr/lib/pulse-${PVER}/modules/*x11*") \
341 usr/share/man/man1/start-pulseaudio* \
342 || die
343 }
344
345 src_install_pulseaudio-bluetooth()
346 {
347 mmake DESTDIR=${BINDIR} install || die
348
349 zapmost ${BINDIR} \
350 usr/$(mlibdir)/pulse-${PVER}/modules/*bluetooth* \
351 usr/$(mlibdir)/pulse-${PVER}/proximity-helper \
352 $([[ $(mlibdir) != lib ]] && echo "usr/lib/pulse-${PVER}/modules/*bluetooth*
353 usr/lib/pulse-${PVER}/proximity-helper") \
354 || die
355 }
356
357 src_install_pulseaudio-raop()
358 {
359 mmake DESTDIR=${BINDIR} install || die
360
361 zapmost ${BINDIR} \
362 usr/$(mlibdir)/pulse-${PVER}/modules/*raop* \
363 $([[ $(mlibdir) != lib ]] && echo "usr/lib/pulse-${PVER}/modules/*raop*") \
364 || die
365 }
366
367 src_install_pulseaudio-utils()
368 {
369 mmake DESTDIR=${BINDIR} install || die
370
371 zapmost ${BINDIR} \
372 usr/bin/pa* \
373 usr/$(mlibdir)/libpulsedsp.* \
374 $([[ $(mlibdir) != lib ]] && echo "usr/lib/libpulsedsp.*") \
375 usr/share/man/man1/pa* \
376 || die
377 }
378
379 preinstall_pulseaudio()
380 {
381 # adding pulse user
382 ${MLIBDIR}/mgroupadd -o "-g 11" audio
383 ${MLIBDIR}/mgroupadd pulse-access
384 ${MLIBDIR}/mgroupadd pulse
385 ${MLIBDIR}/museradd -o "-g pulse -G audio -d /var/run/pulse -s /bin/false" pulse
386 }
387
388 postinstall_pulseaudio()
389 {
390 if [[ -z $(magequery -n alsa-plugins) ]]
391 then
392 echo "You have alsa support enabled so you probably want to install"
393 echo "'media-sound/alsa-plugins' with pulseaudio support to have"
394 echo "alsa using applications route their sound through pulseaudio."
395 fi
396 }