Annotation of /smage/branches/alx07x-unstable/extras/pulseaudio/pulseaudio-13.0-r1.smage2
Parent Directory | Revision Log
Revision 15356 -
(hide annotations)
(download)
Thu Aug 27 12:02:39 2020 UTC (3 years, 8 months ago) by niro
Original Path: smage/trunk/extras/pulseaudio/pulseaudio-13.0-r1.smage2
File size: 7213 byte(s)
Thu Aug 27 12:02:39 2020 UTC (3 years, 8 months ago) by niro
Original Path: smage/trunk/extras/pulseaudio/pulseaudio-13.0-r1.smage2
File size: 7213 byte(s)
-use meson and drop esound and deprecated libsamplerate
1 | niro | 15347 | # $Id$ |
2 | |||
3 | PNAME="pulseaudio" | ||
4 | PVER="13.0" | ||
5 | PBUILD="r1" | ||
6 | |||
7 | SPLIT_PACKAGES="libpulse | ||
8 | libpulse-dev | ||
9 | pulseaudio | ||
10 | pulseaudio-dev | ||
11 | pulseaudio-alsa | ||
12 | pulseaudio-utils | ||
13 | pulseaudio-x11" | ||
14 | |||
15 | PCAT="media-sound" | ||
16 | |||
17 | HOMEPAGE="http://www.pulseaudio.org/" | ||
18 | |||
19 | LIBPULSE_DEPEND=">= virtual/glibc | ||
20 | >= dev-libs/glib2-2.64 | ||
21 | >= dev-libs/json-c-0.15 | ||
22 | >= x11-libs/libSM-1 | ||
23 | >= x11-libs/libICE-1 | ||
24 | >= x11-libs/libXtst-1.2 | ||
25 | >= x11-libs/libX11-1.6 | ||
26 | >= x11-libs/libxcb-1.11 | ||
27 | >= sys-libs/libcap-2.43 | ||
28 | >= sys-libs/dbus-libs-1.12 | ||
29 | >= sys-libs/libsystemd-242 | ||
30 | >= media-libs/libsndfile-1.0.28" | ||
31 | |||
32 | COMMON_DEPEND=">= dev-db/tdb-1.4 | ||
33 | >= sys-fs/libudev-242 | ||
34 | >= sci-libs/fftw3-3.3 | ||
35 | >= dev-libs/liborc-0.4.31 | ||
36 | >= sys-libs/libltdl-2.4" | ||
37 | # todo rtkit deamon for realtime support ? | ||
38 | |||
39 | ALSA_DEPEND=">= media-libs/alsa-lib-1.1" | ||
40 | |||
41 | ALX_DEV_DEPEND=">= dev-libs/glib2-dev-2.64 | ||
42 | >= dev-libs/json-c-dev-0.15 | ||
43 | >= x11-libs/libSM-dev-1 | ||
44 | >= x11-libs/libICE-dev-1 | ||
45 | >= x11-libs/libXtst-dev-1.2 | ||
46 | >= x11-libs/libX11-dev-1.6 | ||
47 | >= x11-libs/libxcb-dev-1.11 | ||
48 | >= sys-libs/libcap-dev-2.43 | ||
49 | >= sys-apps/dbus-dev-1.12 | ||
50 | >= sys-apps/systemd-dev-242 | ||
51 | >= media-libs/libsndfile-dev-1.0.28 | ||
52 | >= dev-db/tdb-dev-1.4 | ||
53 | >= sys-fs/udev-dev-242 | ||
54 | >= sci-libs/fftw3-dev-3.3 | ||
55 | >= media-libs/alsa-lib-dev-1.1" | ||
56 | |||
57 | SDEPEND="${LIBPULSE_DEPEND} | ||
58 | ${COMMON_DEPEND} | ||
59 | ${ALSA_DEPEND} | ||
60 | >= dev-lang/orc-0.4.31 | ||
61 | >= dev-util/pkgconfig-0.25 | ||
62 | >= dev-util/intltool-0.50 | ||
63 | >= sys-dev/libtool-2.4 | ||
64 | ${ALX_DEV_DEPEND}" | ||
65 | |||
66 | SRCFILE="${PNAME}-${PVER}.tar.xz" | ||
67 | SRCDIR="${BUILDDIR}/${PNAME}-${PVER}" | ||
68 | |||
69 | niro | 15356 | sminclude mtools multilib meson cleanutils udev |
70 | niro | 15347 | msetfeature "!check" |
71 | |||
72 | SRC_URI=( | ||
73 | http://freedesktop.org/software/${PNAME}/releases/${SRCFILE} | ||
74 | mirror://${PNAME}/${SRCFILE} | ||
75 | ) | ||
76 | |||
77 | UP2DATE="updatecmd http://freedesktop.org/software/pulseaudio/releases/ | highesttarball xz" | ||
78 | |||
79 | split_info_libpulse() | ||
80 | { | ||
81 | DESCRIPTION="Libraries for PulseAudio clients." | ||
82 | DEPEND="${LIBPULSE_DEPEND}" | ||
83 | } | ||
84 | |||
85 | split_info_libpulse-dev() | ||
86 | { | ||
87 | DESCRIPTION="Development files for libpulse." | ||
88 | DEPEND="== media-sound/libpulse-${PVER}" | ||
89 | } | ||
90 | |||
91 | split_info_pulseaudio() | ||
92 | { | ||
93 | DESCRIPTION="A networked sound server with an advanced plugin system." | ||
94 | DEPEND="== media-sound/libpulse-${PVER} | ||
95 | ${COMMON_DEPEND}" | ||
96 | } | ||
97 | |||
98 | split_info_pulseaudio-dev() | ||
99 | { | ||
100 | DESCRIPTION="Development files for pulseaudio." | ||
101 | DEPEND="== media-sound/pulseaudio-${PVER}" | ||
102 | } | ||
103 | |||
104 | split_info_pulseaudio-alsa() | ||
105 | { | ||
106 | DESCRIPTION="ALSA support for the PulseAudio sound server." | ||
107 | DEPEND="== media-sound/libpulse-${PVER} | ||
108 | == media-sound/pulseaudio-${PVER} | ||
109 | ${ALSA_DEPEND}" | ||
110 | } | ||
111 | |||
112 | split_info_pulseaudio-x11() | ||
113 | { | ||
114 | DESCRIPTION="X11 support for the PulseAudio sound server." | ||
115 | DEPEND="== media-sound/libpulse-${PVER} | ||
116 | == media-sound/pulseaudio-${PVER} | ||
117 | == media-sound/pulseaudio-utils-${PVER}" | ||
118 | } | ||
119 | |||
120 | split_info_pulseaudio-utils() | ||
121 | { | ||
122 | DESCRIPTION="PulseAudio sound server utilities." | ||
123 | DEPEND="== media-sound/libpulse-${PVER} | ||
124 | == media-sound/pulseaudio-${PVER}" | ||
125 | } | ||
126 | |||
127 | pkg_setup() | ||
128 | { | ||
129 | preinstall_pulseaudio | ||
130 | } | ||
131 | |||
132 | src_prepare() | ||
133 | { | ||
134 | munpack ${SRCFILE} || die | ||
135 | |||
136 | # fix /var/run -> /run | ||
137 | niro | 15356 | all-abis "sed -i \"s:\(.*PA_SYSTEM_RUNTIME_PATH.*\)localstatedir,\(.*\):\1\'/\',\2:\" meson.build || die" |
138 | niro | 15347 | } |
139 | |||
140 | src_compile() | ||
141 | { | ||
142 | niro | 15356 | meson_setup_builddir || die |
143 | |||
144 | meson_configure \ | ||
145 | niro | 15347 | --localstatedir=/var \ |
146 | niro | 15356 | $(meson_opt udevrulesdir $(mget-udev-rules-dir)) \ |
147 | $(meson_opt pulsedsp-location '/usr/\$LIB/pulseaudio' ) \ | ||
148 | $(meson_opt database tdb) \ | ||
149 | $(meson_enable udev) \ | ||
150 | $(meson_enable dbus) \ | ||
151 | $(meson_enable alsa) \ | ||
152 | $(meson_disable samplerate) \ | ||
153 | $(meson_bool_false hal-compat) \ | ||
154 | $(meson_bool_false ipv6) \ | ||
155 | $(meson_disable avahi) \ | ||
156 | $(meson_enable x11) \ | ||
157 | $(meson_disable openssl) \ | ||
158 | $(meson_bool_false bluez5) \ | ||
159 | $(meson_bool_false bluez5-native-headset) \ | ||
160 | $(meson_bool_false bluez5-ofono-headset) \ | ||
161 | $(meson_enable systemd) \ | ||
162 | $(meson_disable asyncns) \ | ||
163 | $(meson_disable lirc) \ | ||
164 | $(meson_disable jack) \ | ||
165 | $(meson_bool_false tests) \ | ||
166 | niro | 15347 | || die |
167 | niro | 15356 | |
168 | mninja || die | ||
169 | niro | 15347 | } |
170 | |||
171 | src_install_libpulse() | ||
172 | { | ||
173 | niro | 15356 | DESTDIR=${BINDIR} mninja install || die |
174 | niro | 15347 | zapmost ${BINDIR} \ |
175 | etc/pulse/client.conf \ | ||
176 | usr/$(mlibdir)/*.so.* usr/$(mlibdir)/pulseaudio \ | ||
177 | $([[ $(mlibdir) != lib ]] && echo "usr/lib/*.so.* usr/lib/pulseaudio") \ | ||
178 | || die | ||
179 | } | ||
180 | |||
181 | src_install_libpulse-dev() | ||
182 | { | ||
183 | niro | 15356 | DESTDIR=${BINDIR} mninja install || die |
184 | niro | 15347 | zapmost ${BINDIR} \ |
185 | usr/include \ | ||
186 | usr/$(mlibdir)/*.so usr/$(mlibdir)/*.la usr/$(mlibdir)/cmake usr/$(mlibdir)/pkgconfig \ | ||
187 | $([[ $(mlibdir) != lib ]] && echo "usr/lib/*.so usr/lib/*.la usr/lib/cmake usr/lib/pkgconfig") \ | ||
188 | usr/share/vala \ | ||
189 | usr/share/man/man5/pulse-client.conf.5 \ | ||
190 | || die | ||
191 | } | ||
192 | |||
193 | src_install_pulseaudio() | ||
194 | { | ||
195 | local major_pver="$(echo ${PVER} | cut -d. -f1-2)" | ||
196 | |||
197 | niro | 15356 | DESTDIR=${BINDIR} mninja install || die |
198 | niro | 15347 | |
199 | # make avahi support optional | ||
200 | sed -i '/load-module\ module-zeroconf-publish/s:^#::' ${BINDIR}/etc/pulse/default.pa || die | ||
201 | sed -i $'/load-module\ module-zeroconf-publish/{i.ifexists\ module-zeroconf-publish.so\n;a.endif\n;}' ${BINDIR}/etc/pulse/default.pa || die | ||
202 | |||
203 | # disable consolekit, use systemd | ||
204 | sed -i '/load-module\ module-console-kit/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)/pulse-${major_pver}/modules \ | ||
212 | $([[ $(mlibdir) != lib ]] && echo "usr/lib/pulse-${major_pver}/modules") \ | ||
213 | $(mget-udev-rules-dir) \ | ||
214 | || die | ||
215 | |||
216 | # remove modules which are in other packages | ||
217 | mdelete /usr/$(mlibdir)/pulse-${major_pver}/modules/\*alsa\* || die | ||
218 | mdelete /usr/$(mlibdir)/pulse-${major_pver}/modules/\*x11\* || die | ||
219 | if [[ $(mlibdir) != lib ]] | ||
220 | then | ||
221 | mdelete /usr/lib/pulse-${major_pver}/modules/\*alsa\* || die | ||
222 | mdelete /usr/lib/pulse-${major_pver}/modules/\*x11\* || die | ||
223 | fi | ||
224 | |||
225 | # state dir | ||
226 | mkeepdir /run/pulse || die | ||
227 | mchown pulse.pulse /run/pulse || die | ||
228 | } | ||
229 | |||
230 | src_install_pulseaudio-dev() | ||
231 | { | ||
232 | niro | 15356 | DESTDIR=${BINDIR} mninja install || die |
233 | niro | 15347 | |
234 | zapmost ${BINDIR} \ | ||
235 | usr/share/locale \ | ||
236 | usr/share/man/man1/pulseaudio.1 \ | ||
237 | usr/share/man/man5/default.pa.5 \ | ||
238 | usr/share/man/man5/pulse-daemon.conf.5 \ | ||
239 | || die | ||
240 | } | ||
241 | |||
242 | src_install_pulseaudio-alsa() | ||
243 | { | ||
244 | local major_pver="$(echo ${PVER} | cut -d. -f1-2)" | ||
245 | |||
246 | niro | 15356 | DESTDIR=${BINDIR} mninja install || die |
247 | niro | 15347 | |
248 | zapmost ${BINDIR} \ | ||
249 | usr/$(mlibdir)/pulse-${major_pver}/modules/*alsa* \ | ||
250 | $([[ $(mlibdir) != lib ]] && echo "usr/lib/pulse-${major_pver}/modules/*alsa*") \ | ||
251 | usr/share/pulseaudio/alsa-mixer \ | ||
252 | || die | ||
253 | } | ||
254 | |||
255 | src_install_pulseaudio-x11() | ||
256 | { | ||
257 | local major_pver="$(echo ${PVER} | cut -d. -f1-2)" | ||
258 | |||
259 | niro | 15356 | DESTDIR=${BINDIR} mninja install || die |
260 | niro | 15347 | |
261 | zapmost ${BINDIR} \ | ||
262 | etc/xdg \ | ||
263 | usr/bin/start-pulseaudio* \ | ||
264 | usr/$(mlibdir)/pulse-${major_pver}/modules/*x11* \ | ||
265 | $([[ $(mlibdir) != lib ]] && echo "usr/lib/pulse-${major_pver}/modules/*x11*") \ | ||
266 | usr/share/man/man1/start-pulseaudio* \ | ||
267 | || die | ||
268 | } | ||
269 | |||
270 | src_install_pulseaudio-utils() | ||
271 | { | ||
272 | niro | 15356 | DESTDIR=${BINDIR} mninja install || die |
273 | niro | 15347 | |
274 | zapmost ${BINDIR} \ | ||
275 | usr/bin/pa* \ | ||
276 | usr/share/man/man1/pa* \ | ||
277 | || die | ||
278 | } | ||
279 | |||
280 | preinstall_pulseaudio() | ||
281 | { | ||
282 | # adding pulse user | ||
283 | mgroupadd -o "-g 11" audio | ||
284 | mgroupadd pulse-access | ||
285 | mgroupadd pulse | ||
286 | museradd -o "-g pulse -G audio -d /run/pulse -s /bin/false" pulse | ||
287 | } | ||
288 | |||
289 | postinstall_pulseaudio() | ||
290 | { | ||
291 | if [[ -z $(magequery -n alsa-plugins) ]] | ||
292 | then | ||
293 | echo "You have alsa support enabled so you probably want to install" | ||
294 | echo "'media-sound/alsa-plugins' with pulseaudio support to have" | ||
295 | echo "alsa using applications route their sound through pulseaudio." | ||
296 | fi | ||
297 | } |