Magellan Linux

Contents of /smage/trunk/extras/pulseaudio/pulseaudio-3.0-r1.smage2

Parent Directory Parent Directory | Revision Log Revision Log


Revision 4468 - (show annotations) (download)
Wed Mar 13 09:39:04 2013 UTC (11 years, 3 months ago) by niro
File size: 9450 byte(s)
-use simple database not tdb
1 # $Id$
2
3 PNAME="pulseaudio"
4 PVER="3.0"
5 PBUILD="r1"
6
7 SPLIT_PACKAGES="libpulse
8 pulseaudio
9 pulseaudio-alsa
10 pulseaudio-esound
11 pulseaudio-utils
12 pulseaudio-x11"
13 # pulseaudio-zeroconf
14 # pulseaudio-bluetooth
15 # pulseaudio-raop
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=">= sys-fs/udev-196
38 >= media-libs/audiofile-0.2.7
39 >= media-libs/libsamplerate-0.1.8
40 >= media-libs/speex-1.2"
41 # >= dev-db/tdb-1.2.9
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 ${ALSA_DEPEND}
56 >= x11-proto/xproto-7
57 >= dev-util/pkgconfig-0.25
58 >= dev-util/intltool-0.50"
59 # ${ZEROCONF_DEPEND}
60 # ${BLUETOOTH_DEPEND}
61 # ${RAOP_DEPEND}
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=simple \
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 --disable-avahi \
172 --disable-tcpwrap \
173 --enable-x11 \
174 --disable-openssl \
175 --disable-bluez \
176 --enable-systemd \
177 --disable-asyncns \
178 --disable-oss-output \
179 --disable-lirc \
180 --disable-jack \
181 --disable-gconf \
182 --disable-default-build-tests \
183 || die
184 # --with-database=tdb
185
186 mmake || die
187 }
188
189 src_install_libpulse()
190 {
191 mmake -j1 DESTDIR=${BINDIR} install || die
192 zapmost ${BINDIR} \
193 etc/pulse/client.conf \
194 usr/include \
195 usr/$(mlibdir)/*.so usr/$(mlibdir)/*.so.* usr/$(mlibdir)/*.la usr/$(mlibdir)/cmake usr/$(mlibdir)/pkgconfig usr/$(mlibdir)/pulseaudio \
196 $([[ $(mlibdir) != lib ]] && echo "usr/lib/*.so usr/lib/*.so.* usr/lib/*.la usr/lib/cmake usr/lib/pkgconfig usr/lib/pulseaudio") \
197 usr/share/vala \
198 usr/share/man/man5/pulse-client.conf.5 \
199 || die
200
201 # remove libpulsecore and libpulsedsp
202 rm ${BINDIR}/usr/$(mlibdir)/libpulsecore-${PVER}.* || die
203 if [[ $(mlibdir) != lib ]]
204 then
205 rm ${BINDIR}/usr/lib/libpulsecore-${PVER}.* || die
206 fi
207 }
208
209 src_install_pulseaudio()
210 {
211 mmake -j1 DESTDIR=${BINDIR} install || die
212
213 # make avahi support optional
214 sed -i '/load-module\ module-zeroconf-publish/s:^#::' ${BINDIR}/etc/pulse/default.pa || die
215 sed -i $'/load-module\ module-zeroconf-publish/{i.ifexists\ module-zeroconf-publish.so\n;a.endif\n;}' ${BINDIR}/etc/pulse/default.pa || die
216
217 # disable consolekit, use systemd
218 sed -i '/load-module\ module-console-kit/s:^:#:' ${BINDIR}/etc/pulse/default.pa || die
219
220 zapmost ${BINDIR} \
221 etc/pulse/daemon.conf \
222 etc/pulse/*.pa \
223 etc/dbus-1 \
224 usr/bin/pulseaudio \
225 usr/$(mlibdir)/libpulsecore-*.* \
226 usr/$(mlibdir)/pulse-${PVER}/modules \
227 $([[ $(mlibdir) != lib ]] && echo "usr/lib/libpulsecore-*.*
228 usr/lib/pulse-${PVER}/modules") \
229 usr/share/locale \
230 usr/share/man/man1/pulseaudio.1 \
231 usr/share/man/man5/default.pa.5 \
232 usr/share/man/man5/pulse-daemon.conf.5 \
233 lib/udev \
234 || die
235
236 # remove modules which are in other packages
237 rm -rf ${BINDIR}/usr/$(mlibdir)/pulse-${PVER}/modules/*alsa* || die
238 rm -rf ${BINDIR}/usr/$(mlibdir)/pulse-${PVER}/modules/*esound* || die
239 # rm -rf ${BINDIR}/usr/$(mlibdir)/pulse-${PVER}/modules/*avahi* || die
240 # rm -rf ${BINDIR}/usr/$(mlibdir)/pulse-${PVER}/modules/*zeroconf* || die
241 rm -rf ${BINDIR}/usr/$(mlibdir)/pulse-${PVER}/modules/*x11* || die
242 # rm -rf ${BINDIR}/usr/$(mlibdir)/pulse-${PVER}/modules/*bluetooth* || die
243 # rm -rf ${BINDIR}/usr/$(mlibdir)/pulse-${PVER}/modules/*raop* || die
244 if [[ $(mlibdir) != lib ]]
245 then
246 rm -rf ${BINDIR}/usr/lib/pulse-${PVER}/modules/*alsa* || die
247 rm -rf ${BINDIR}/usr/lib/pulse-${PVER}/modules/*esound* || die
248 # rm -rf ${BINDIR}/usr/lib/pulse-${PVER}/modules/*avahi* || die
249 # rm -rf ${BINDIR}/usr/lib/pulse-${PVER}/modules/*zeroconf* || die
250 rm -rf ${BINDIR}/usr/lib/pulse-${PVER}/modules/*x11* || die
251 # rm -rf ${BINDIR}/usr/lib/pulse-${PVER}/modules/*bluetooth* || die
252 # rm -rf ${BINDIR}/usr/lib/pulse-${PVER}/modules/*raop* || die
253 fi
254
255 # state dir
256 mkeepdir /run/pulse || die
257 mchown pulse.pulse /run/pulse || die
258 }
259
260 src_install_pulseaudio-alsa()
261 {
262 mmake -j1 DESTDIR=${BINDIR} install || die
263
264 zapmost ${BINDIR} \
265 usr/$(mlibdir)/pulse-${PVER}/modules/*alsa* \
266 $([[ $(mlibdir) != lib ]] && echo "usr/lib/pulse-${PVER}/modules/*alsa*") \
267 usr/share/pulseaudio/alsa-mixer \
268 || die
269 }
270
271 src_install_pulseaudio-esound()
272 {
273 mmake -j1 DESTDIR=${BINDIR} install || die
274
275 zapmost ${BINDIR} \
276 usr/bin/esdcompat \
277 usr/$(mlibdir)/pulse-${PVER}/modules/*esound* \
278 $([[ $(mlibdir) != lib ]] && echo "usr/lib/pulse-${PVER}/modules/*esound*") \
279 usr/share/man/man1/esdcompat.1 \
280 || die
281 }
282
283 #src_install_pulseaudio-zeroconf()
284 #{
285 # mmake -j1 DESTDIR=${BINDIR} install || die
286 #
287 # zapmost ${BINDIR} \
288 # usr/$(mlibdir)/pulse-${PVER}/modules/*avahi* \
289 # usr/$(mlibdir)/pulse-${PVER}/modules/*zeroconf* \
290 # $([[ $(mlibdir) != lib ]] && echo "usr/lib/pulse-${PVER}/modules/*avahi*
291 # usr/lib/pulse-${PVER}/modules/*zeroconf*") \
292 # || die
293 #}
294
295 src_install_pulseaudio-x11()
296 {
297 mmake -j1 DESTDIR=${BINDIR} install || die
298
299 zapmost ${BINDIR} \
300 etc/xdg \
301 usr/bin/start-pulseaudio* \
302 usr/$(mlibdir)/pulse-${PVER}/modules/*x11* \
303 $([[ $(mlibdir) != lib ]] && echo "usr/lib/pulse-${PVER}/modules/*x11*") \
304 usr/share/man/man1/start-pulseaudio* \
305 || die
306 }
307
308 #src_install_pulseaudio-bluetooth()
309 #{
310 # mmake -j1 DESTDIR=${BINDIR} install || die
311 #
312 # zapmost ${BINDIR} \
313 # usr/$(mlibdir)/pulse-${PVER}/modules/*bluetooth* \
314 # usr/$(mlibdir)/pulse-${PVER}/pulse/proximity-helper \
315 # $([[ $(mlibdir) != lib ]] && echo "usr/lib/pulse-${PVER}/modules/*bluetooth*
316 # usr/lib/pulse-${PVER}/pulse/proximity-helper") \
317 # || die
318 #}
319
320 #src_install_pulseaudio-raop()
321 #{
322 # mmake -j1 DESTDIR=${BINDIR} install || die
323 #
324 # zapmost ${BINDIR} \
325 # usr/$(mlibdir)/pulse-${PVER}/modules/*raop* \
326 # $([[ $(mlibdir) != lib ]] && echo "usr/lib/pulse-${PVER}/modules/*raop*") \
327 # || die
328 #}
329
330 src_install_pulseaudio-utils()
331 {
332 mmake -j1 DESTDIR=${BINDIR} install || die
333
334 zapmost ${BINDIR} \
335 usr/bin/pa* \
336 usr/share/man/man1/pa* \
337 || die
338 }
339
340 preinstall_pulseaudio()
341 {
342 # adding pulse user
343 ${MLIBDIR}/mgroupadd -o "-g 11" audio
344 ${MLIBDIR}/mgroupadd pulse-access
345 ${MLIBDIR}/mgroupadd pulse
346 ${MLIBDIR}/museradd -o "-g pulse -G audio -d /run/pulse -s /bin/false" pulse
347 }
348
349 postinstall_pulseaudio()
350 {
351 if [[ -z $(magequery -n alsa-plugins) ]]
352 then
353 echo "You have alsa support enabled so you probably want to install"
354 echo "'media-sound/alsa-plugins' with pulseaudio support to have"
355 echo "alsa using applications route their sound through pulseaudio."
356 fi
357 }