1 # TODO: --iio (BR: gtkIOStream >= 1.4.0, eigen3 >= 3.1.2)
4 %bcond_without apidocs # Doxygen docs
5 %bcond_without ffado # firewire (FFADO) driver
6 %bcond_with classic # build also classic jackd server (see http://trac.jackaudio.org/wiki/JackDbusPackaging)
8 Summary: The JACK Audio Connection Kit
9 Summary(pl.UTF-8): JACK - zestaw do połączeń audio
10 Name: jack-audio-connection-kit
13 License: LGPL v2.1+ (libjack), GPL v2+ (the rest)
15 #Source0Download: http://jackaudio.org/downloads/
16 #Source0: https://github.com/jackaudio/jack2/releases/download/v%{version}/jack2-%{version}.tar.gz
17 Source0: https://github.com/jackaudio/jack2/archive/v%{version}/jack2-%{version}.tar.gz
18 # Source0-md5: bdc547d3d56c4ab3bf7b1a32df6ca270
19 Patch0: jack-doxygen-fix.patch
20 URL: http://jackaudio.org/
21 BuildRequires: alsa-lib-devel >= 1.0.18
22 BuildRequires: autoconf >= 2.50
23 BuildRequires: automake
24 BuildRequires: celt-devel >= 0.11.0
25 BuildRequires: dbus-devel >= 1.0.0
26 %{?with_apidocs:BuildRequires: doxygen}
27 BuildRequires: expat-devel
28 %{?with_ffado:BuildRequires: libffado-devel >= 1.999.17}
29 BuildRequires: libsamplerate-devel
30 BuildRequires: libsndfile-devel >= 1.0.0
31 BuildRequires: libstdc++-devel
32 BuildRequires: libtool
33 BuildRequires: pkgconfig
34 BuildRequires: readline-devel
35 BuildRequires: rpmbuild(macros) >= 1.752
36 # with opus_custom interface
37 BuildRequires: opus-devel >= 1.0.3-2
38 %{?with_apidocs:BuildRequires: texlive-pdftex}
39 Requires: %{name}-libs = %{version}-%{release}
40 Requires: alsa-lib >= 1.0.18
41 Obsoletes: jack-audio-connection-kit-driver-alsa
42 Obsoletes: jack-audio-connection-kit-driver-iec61883
43 Obsoletes: jack-audio-connection-kit-static
44 BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
47 JACK is a low-latency audio server, written primarily for the Linux
48 operating system. It can connect a number of different applications to
49 an audio device, as well as allowing them to share audio between
50 themselves. Its clients can run in their own processes (ie. as a
51 normal application), or can they can run within a JACK server (ie. a
54 JACK is different from other audio server efforts in that it has been
55 designed from the ground up to be suitable for professional audio
56 work. This means that it focuses on two key areas: synchronous
57 execution of all clients, and low latency operation.
59 %description -l pl.UTF-8
60 JACK to serwer dźwięku o małych opóźnieniach, napisany głównie dla
61 systemu operacyjnego Linux. Może przyjąć połączenia od wielu różnych
62 aplikacji do urządzenia dźwiękowego, a także pozwolić im na dzielenie
63 dźwięku pomiędzy siebie. Programy klienckie działają jako własne
64 procesy (tzn. normalne aplikacje) lub mogą działać wewnątrz serwera
67 JACK różni się od innych serwerów dźwięku tym, że został
68 zaprojektowany od początku z myślą o profesjonalnej obróbce dźwięku.
69 Oznacza to, że skupia się na dwóch rzeczach: synchronicznym
70 wykonywaniu wszystkich klientów i małych opóźnieniach działania.
74 Summary(pl.UTF-8): Biblioteka JACK-a
77 Requires: celt >= 0.11.0
78 Requires: dbus-libs >= 1.0.0
79 Requires: opus >= 1.0.3-2
80 Conflicts: jack-audio-connection-kit < 0.100.7
85 %description libs -l pl.UTF-8
86 Biblioteka współdzielona JACK-a.
89 Summary: Header files for JACK
90 Summary(pl.UTF-8): JACK - pliki nagłówkowe
92 Group: Development/Libraries
93 Requires: %{name}-libs = %{version}-%{release}
96 Header files for the JACK Audio Connection Kit.
98 %description devel -l pl.UTF-8
99 Pliki nagłówkowe dla zestawu do połączeń audio JACK.
102 Summary: JACK Audio Connection Kit API documentation
103 Summary(pl.UTF-8): Dokumentacja API JACK Audio Connection Kit
105 Requires: gtk-doc-common
109 JACK Audio Connection Kit API documentation.
111 %description apidocs -l pl.UTF-8
112 Dokumentacja API JACK Audio Connection Kit.
114 %package driver-firewire
115 Summary: FireWire (FFADO) sound driver for JACK
116 Summary(pl.UTF-8): Sterownik dźwięku FireWire (FFADO) dla JACK-a
119 Requires: %{name} = %{version}-%{release}
120 Requires: libffado >= 1.999.17
121 Obsoletes: jack-driver-freebob < 1.9.13
123 %description driver-firewire
124 FireWire (FFADO) sound driver for JACK.
126 %description driver-firewire -l pl.UTF-8
127 Sterownik dźwięku FireWire (FFADO) dla JACK-a.
129 %package example-clients
130 Summary: Example clients that use JACK
131 Summary(pl.UTF-8): Przykładowe programy klienckie używające JACK-a
133 Group: Applications/Sound
134 Requires: %{name} = %{version}-%{release}
136 %description example-clients
137 Small example clients that use the JACK Audio Connection Kit.
139 %description example-clients -l pl.UTF-8
140 Małe, przykładowe programy klienckie, które używają zestawu do
143 %package example-jackrec
144 Summary: Example JACK client: jackrec
145 Summary(pl.UTF-8): Przykładowy klient zestawu JACK: jackrec
147 Group: Applications/Sound
148 Requires: %{name} = %{version}-%{release}
150 %description example-jackrec
151 Example JACK client: jackrec. It's separated because it uses
154 %description example-jackrec -l pl.UTF-8
155 Przykładowy klient zestawu JACK: jackrec. Jest wydzielony, ponieważ
156 wymaga biblioteki libsndfile.
159 %setup -q -n jack2-%{version}
163 export CFLAGS="%{rpmcflags} -I/usr/include/ncurses"
164 export CXXFLAGS="%{rpmcxxflags} -I/usr/include/ncurses"
165 export CPPFLAGS="%{rpmcxxflags} -I/usr/include/ncurses"
166 export LINKFLAGS="%{rpmldflags}"
168 ./waf configure -j1 \
171 --prefix=%{_prefix} \
172 --libdir=%{_libdir} \
173 --htmldir=%{_gtkdocdir}/%{name}/reference \
175 %{?with_classic:--classic} \
177 %{?with_apidocs:--doxygen} \
178 %{?with_ffado:--firewire}
180 ./waf build %{?_smp_mflags} -v
183 rm -rf $RPM_BUILD_ROOT
186 --destdir=$RPM_BUILD_ROOT
188 %{!?with_apidocs:rm -rf $RPM_BUILD_ROOT%{_gtkdocdir}}
190 # For compatibility with jack1
191 %{__mv} $RPM_BUILD_ROOT%{_bindir}/jack_rec $RPM_BUILD_ROOT%{_bindir}/jackrec
193 # not built or packaged
194 %{__rm} $RPM_BUILD_ROOT%{_mandir}/man1/jack_impulse_grabber.1 \
195 %{!?with_classic:$RPM_BUILD_ROOT%{_mandir}/man1/jackd.1}
197 # fix perms (needed for autorequires/provides)
198 chmod a+x $RPM_BUILD_ROOT%{_libdir}/lib*.so*
199 chmod a+x $RPM_BUILD_ROOT%{_libdir}/jack/*.so
202 rm -rf $RPM_BUILD_ROOT
204 %post libs -p /sbin/ldconfig
205 %postun libs -p /sbin/ldconfig
208 if ! grep -q -s '^[^ ]* /dev/shm tmpfs ' /proc/mounts ; then
209 echo "/dev/shm is not mounted, but JACK requires it"
213 %defattr(644,root,root,755)
214 %doc AUTHORS.rst ChangeLog.rst README*
215 %attr(755,root,root) %{_bindir}/jack_alias
216 %attr(755,root,root) %{_bindir}/jack_control
217 %attr(755,root,root) %{_bindir}/jack_cpu
218 %attr(755,root,root) %{_bindir}/jack_evmon
219 %attr(755,root,root) %{_bindir}/jack_iodelay
220 %attr(755,root,root) %{_bindir}/jack_load
221 %attr(755,root,root) %{_bindir}/jack_midi_dump
222 %attr(755,root,root) %{_bindir}/jack_net_master
223 %attr(755,root,root) %{_bindir}/jack_net_slave
224 %attr(755,root,root) %{_bindir}/jack_server_control
225 %attr(755,root,root) %{_bindir}/jack_session_notify
226 %attr(755,root,root) %{_bindir}/jack_simdtests
227 %attr(755,root,root) %{_bindir}/jack_test
228 %attr(755,root,root) %{_bindir}/jack_unload
229 %{?with_classic:%attr(755,root,root) %{_bindir}/jackd}
230 %attr(755,root,root) %{_bindir}/jackdbus
232 %attr(755,root,root) %{_libdir}/jack/audioadapter.so
233 %attr(755,root,root) %{_libdir}/jack/jack_alsa.so
234 %attr(755,root,root) %{_libdir}/jack/jack_alsarawmidi.so
235 %attr(755,root,root) %{_libdir}/jack/jack_dummy.so
236 %attr(755,root,root) %{_libdir}/jack/jack_loopback.so
237 %attr(755,root,root) %{_libdir}/jack/jack_netone.so
238 %attr(755,root,root) %{_libdir}/jack/jack_net.so
239 %attr(755,root,root) %{_libdir}/jack/jack_proxy.so
240 %attr(755,root,root) %{_libdir}/jack/netadapter.so
241 %attr(755,root,root) %{_libdir}/jack/netmanager.so
242 %attr(755,root,root) %{_libdir}/jack/profiler.so
243 %{_datadir}/dbus-1/services/org.jackaudio.service
244 %{?with_classic:%{_mandir}/man1/jackd.1*}
245 %{_mandir}/man1/jack_iodelay.1*
246 %{_mandir}/man1/jack_load.1*
247 %{_mandir}/man1/jack_unload.1*
250 %defattr(644,root,root,755)
251 %attr(755,root,root) %{_libdir}/libjack.so.*.*.*
252 %attr(755,root,root) %ghost %{_libdir}/libjack.so.0
253 %attr(755,root,root) %{_libdir}/libjacknet.so.*.*.*
254 %attr(755,root,root) %ghost %{_libdir}/libjacknet.so.0
255 %attr(755,root,root) %{_libdir}/libjackserver.so.*.*.*
256 %attr(755,root,root) %ghost %{_libdir}/libjackserver.so.0
259 %defattr(644,root,root,755)
260 %attr(755,root,root) %{_libdir}/libjack.so
261 %attr(755,root,root) %{_libdir}/libjacknet.so
262 %attr(755,root,root) %{_libdir}/libjackserver.so
264 %{_pkgconfigdir}/jack.pc
268 %defattr(644,root,root,755)
269 %{_gtkdocdir}/%{name}
273 %files driver-firewire
274 %defattr(644,root,root,755)
275 %attr(755,root,root) %{_libdir}/jack/jack_firewire.so
278 %files example-clients
279 %defattr(644,root,root,755)
280 %attr(755,root,root) %{_bindir}/alsa_in
281 %attr(755,root,root) %{_bindir}/alsa_out
282 %attr(755,root,root) %{_bindir}/jack_bufsize
283 %attr(755,root,root) %{_bindir}/jack_connect
284 %attr(755,root,root) %{_bindir}/jack_cpu_load
285 %attr(755,root,root) %{_bindir}/jack_disconnect
286 %attr(755,root,root) %{_bindir}/jack_freewheel
287 %attr(755,root,root) %{_bindir}/jack_latent_client
288 %attr(755,root,root) %{_bindir}/jack_lsp
289 %attr(755,root,root) %{_bindir}/jack_metro
290 %attr(755,root,root) %{_bindir}/jack_midi_latency_test
291 %attr(755,root,root) %{_bindir}/jack_midiseq
292 %attr(755,root,root) %{_bindir}/jack_midisine
293 %attr(755,root,root) %{_bindir}/jack_monitor_client
294 %attr(755,root,root) %{_bindir}/jack_multiple_metro
295 %attr(755,root,root) %{_bindir}/jack_netsource
296 %attr(755,root,root) %{_bindir}/jack_property
297 %attr(755,root,root) %{_bindir}/jack_samplerate
298 %attr(755,root,root) %{_bindir}/jack_showtime
299 %attr(755,root,root) %{_bindir}/jack_simple_client
300 %attr(755,root,root) %{_bindir}/jack_simple_session_client
301 %attr(755,root,root) %{_bindir}/jack_thru
302 %attr(755,root,root) %{_bindir}/jack_transport
303 %attr(755,root,root) %{_bindir}/jack_wait
304 %attr(755,root,root) %{_bindir}/jack_zombie
305 %attr(755,root,root) %{_libdir}/jack/inprocess.so
306 %{_mandir}/man1/alsa_in.1*
307 %{_mandir}/man1/alsa_out.1*
308 %{_mandir}/man1/jack_bufsize.1*
309 %{_mandir}/man1/jack_connect.1*
310 %{_mandir}/man1/jack_disconnect.1*
311 %{_mandir}/man1/jack_freewheel.1*
312 %{_mandir}/man1/jack_lsp.1*
313 %{_mandir}/man1/jack_metro.1*
314 %{_mandir}/man1/jack_monitor_client.1*
315 %{_mandir}/man1/jack_netsource.1*
316 %{_mandir}/man1/jack_property.1*
317 %{_mandir}/man1/jack_samplerate.1*
318 %{_mandir}/man1/jack_showtime.1*
319 %{_mandir}/man1/jack_simple_client.1*
320 %{_mandir}/man1/jack_transport.1*
321 %{_mandir}/man1/jack_wait.1*
323 %files example-jackrec
324 %defattr(644,root,root,755)
325 %attr(755,root,root) %{_bindir}/jackrec
326 %{_mandir}/man1/jackrec.1*