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