Magellan Linux

Contents of /branches/R11-stable/extras/pulseaudio/pulseaudio-4.0-r3.smage2

Parent Directory Parent Directory | Revision Log Revision Log


Revision 19482 - (show annotations) (download)
Mon Sep 16 09:35:50 2013 UTC (10 years, 8 months ago) by niro
File size: 9359 byte(s)
-release branches/R11-stable
1 # $Id$
2
3 PNAME="pulseaudio"
4 PVER="4.0"
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-utils
15 pulseaudio-x11"
16
17 PCAT="media-sound"
18
19 HOMEPAGE="http://www.pulseaudio.org/"
20
21 LIBPULSE_DEPEND=">= virtual/glibc
22 >= dev-libs/glib2-2.36
23 >= dev-libs/json-c-0.9
24 >= x11-libs/libSM-1
25 >= x11-libs/libICE-1
26 >= x11-libs/libXtst-1.2
27 >= x11-libs/libX11-1.4
28 >= x11-libs/libxcb-1.7
29 >= sys-libs/libcap-2.20
30 >= sys-apps/dbus-1.6
31 >= media-libs/libsndfile-1.0.24
32 >= sys-apps/tcp-wrappers-7.6"
33
34 COMMON_DEPEND=">= dev-db/tdb-1.2.9
35 >= sys-fs/libudev-206
36 >= sys-libs/libsystemd-login-206
37 >= media-libs/libsamplerate-0.1.8
38 >= media-libs/speex-1.2
39 >= sci-libs/fftw3-3.3
40 >= dev-libs/liborc-0.4
41 >= sys-libs/libltdl-2.4"
42 # todo rtkit deamon for realtime support ?
43
44 ZEROCONF_DEPEND=">= net-dns/avahi-0.6.31"
45 BLUETOOTH_DEPEND=">= net-wlan/bluez-libs-4.101
46 >= media-libs/sbc-1"
47 # module raop-discover needs zeroconf module
48 RAOP_DEPEND=">= dev-libs/openssl-1.0.1c"
49 ALSA_DEPEND=">= media-libs/alsa-lib-1.0.27"
50
51 SDEPEND="${LIBPULSE_DEPEND}
52 ${COMMON_DEPEND}
53 ${ZEROCONF_DEPEND}
54 ${BLUETOOTH_DEPEND}
55 ${RAOP_DEPEND}
56 ${ALSA_DEPEND}
57 >= x11-proto/xproto-7
58 >= dev-util/pkgconfig-0.25
59 >= dev-util/intltool-0.50
60 >= sys-dev/libtool-2.4"
61
62 SRCFILE="${PNAME}-${PVER}.tar.xz"
63 SRCDIR="${BUILDDIR}/${PNAME}-${PVER}"
64
65 sminclude mtools multilib cleanutils
66 msetfeature "!check"
67
68 SRC_URI=(
69 http://freedesktop.org/software/${PNAME}/releases/${SRCFILE}
70 mirror://${PNAME}/${SRCFILE}
71 )
72
73 UP2DATE="updatecmd 'http://freedesktop.org/software/pulseaudio/releases/?C=M;O=A' | lasttarball xz"
74
75 split_info_libpulse()
76 {
77 DESCRIPTION="Libraries for PulseAudio clients."
78 DEPEND="${LIBPULSE_DEPEND}"
79 }
80
81 split_info_pulseaudio()
82 {
83 DESCRIPTION="A networked sound server with an advanced plugin system."
84 DEPEND="== media-sound/libpulse-${PVER}
85 ${COMMON_DEPEND}"
86 }
87
88 split_info_pulseaudio-zeroconf()
89 {
90 DESCRIPTION="Zeroconf support for the PulseAudio sound server."
91 DEPEND="== media-sound/libpulse-${PVER}
92 == media-sound/pulseaudio-${PVER}
93 ${ZEROCONF_DEPEND}"
94 }
95
96 split_info_pulseaudio-bluetooth()
97 {
98 DESCRIPTION="Bluetooth support for the PulseAudio sound server."
99 DEPEND="== media-sound/libpulse-${PVER}
100 == media-sound/pulseaudio-${PVER}
101 ${BLUETOOTH_DEPEND}"
102 }
103
104 split_info_pulseaudio-raop()
105 {
106 DESCRIPTION="RAOP support for the PulseAudio sound server."
107 DEPEND="== media-sound/libpulse-${PVER}
108 == media-sound/pulseaudio-${PVER}
109 == media-sound/pulseaudio-zeroconf-${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 }