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