Contents of /smage/branches/alx07x-unstable/extras/pulseaudio/pulseaudio-13.0-r1.smage2
Parent Directory | Revision Log
Revision 15413 -
(show annotations)
(download)
Mon Aug 31 08:25:27 2020 UTC (3 years, 9 months ago) by niro
File size: 7213 byte(s)
Mon Aug 31 08:25:27 2020 UTC (3 years, 9 months ago) by niro
File size: 7213 byte(s)
-release branches/alx07x-unstable
1 | # $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 | sminclude mtools multilib meson cleanutils udev |
70 | 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 | all-abis "sed -i \"s:\(.*PA_SYSTEM_RUNTIME_PATH.*\)localstatedir,\(.*\):\1\'/\',\2:\" meson.build || die" |
138 | } |
139 | |
140 | src_compile() |
141 | { |
142 | meson_setup_builddir || die |
143 | |
144 | meson_configure \ |
145 | --localstatedir=/var \ |
146 | $(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 | || die |
167 | |
168 | mninja || die |
169 | } |
170 | |
171 | src_install_libpulse() |
172 | { |
173 | DESTDIR=${BINDIR} mninja install || die |
174 | 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 | DESTDIR=${BINDIR} mninja install || die |
184 | 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 | DESTDIR=${BINDIR} mninja install || die |
198 | |
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 | DESTDIR=${BINDIR} mninja install || die |
233 | |
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 | DESTDIR=${BINDIR} mninja install || die |
247 | |
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 | DESTDIR=${BINDIR} mninja install || die |
260 | |
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 | DESTDIR=${BINDIR} mninja install || die |
273 | |
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 | } |