]>
Commit | Line | Data |
---|---|---|
2508a369 JB |
1 | # |
2 | # Conditional build: | |
56404c6a | 3 | %bcond_without java # JNI library |
c8fbe83c | 4 | %bcond_with fftw3 # fftw3 for FFT (default is builtin) |
56404c6a | 5 | %bcond_with libsamplerate # libsamplerate for resampling (default is builtin) |
2508a369 | 6 | |
e291abb8 | 7 | Summary: An audio time-stretching and pitch-shifting library and utility program |
ff525031 | 8 | Summary(pl.UTF-8): Biblioteka i narzędzie do rozciągania i harmonizowania dźwięku |
e291abb8 | 9 | Name: rubberband |
c8fbe83c | 10 | Version: 3.2.1 |
2508a369 | 11 | Release: 1 |
ff525031 | 12 | License: GPL v2+ |
e291abb8 | 13 | Group: Applications/Sound |
2508a369 | 14 | Source0: https://breakfastquay.com/files/releases/%{name}-%{version}.tar.bz2 |
c8fbe83c | 15 | # Source0-md5: 722f5687d5e020874b865d87c41e03e9 |
ff525031 | 16 | Patch0: %{name}-pc.patch |
56404c6a | 17 | Patch1: %{name}-update.patch |
6a803cf6 | 18 | URL: https://www.breakfastquay.com/rubberband/ |
c8fbe83c JB |
19 | # also kissfft, sleef >= 3.3.0, ipp possible |
20 | %{?with_fftw3:BuildRequires: fftw3-devel >= 3.0.0} | |
2508a369 | 21 | %{?with_jni:BuildRequires: jdk} |
e291abb8 | 22 | BuildRequires: ladspa-devel |
c8fbe83c | 23 | # also speexdsp >= 1.0.0 possible |
56404c6a | 24 | %{?with_libsamplerate:BuildRequires: libsamplerate-devel >= 0.1.8} |
8ef19e9b JB |
25 | BuildRequires: libsndfile-devel >= 1.0.16 |
26 | BuildRequires: libstdc++-devel >= 6:5 | |
56404c6a | 27 | BuildRequires: lv2-devel |
8ef19e9b JB |
28 | BuildRequires: meson >= 0.53.0 |
29 | BuildRequires: ninja >= 1.5 | |
ff525031 | 30 | BuildRequires: pkgconfig |
8ef19e9b JB |
31 | BuildRequires: rpmbuild(macros) >= 1.736 |
32 | BuildRequires: vamp-devel >= 2.9 | |
e291abb8 | 33 | Requires: %{name}-libs = %{version}-%{release} |
8ef19e9b | 34 | Requires: libsndfile >= 1.0.16 |
e291abb8 SS |
35 | BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n) |
36 | ||
37 | %description | |
38 | Rubber Band is a library and utility program that permits you to | |
39 | change the tempo and pitch of an audio recording independently of one | |
40 | another. | |
41 | ||
50242447 | 42 | %description -l pl.UTF-8 |
ff525031 JB |
43 | Rubber Band to biblioteka i program narzędziowy, który pozwala na |
44 | zmianę tempa i wysokości tonu nagrywanego dźwięku niezależnie. | |
50242447 | 45 | |
e291abb8 | 46 | %package libs |
ff525031 JB |
47 | Summary: Shared rubberband library |
48 | Summary(pl.UTF-8): Biblioteka współdzielona rubberband | |
e291abb8 | 49 | Group: Libraries |
56404c6a | 50 | %{?with_libsamplerate:Requires: libsamplerate >= 0.1.8} |
e291abb8 SS |
51 | |
52 | %description libs | |
ff525031 | 53 | Shared rubberband library. |
e291abb8 SS |
54 | |
55 | %description libs -l pl.UTF-8 | |
ff525031 | 56 | Biblioteka współdzielona rubberband. |
e291abb8 SS |
57 | |
58 | %package devel | |
59 | Summary: Header files for rubberband library | |
60 | Summary(pl.UTF-8): Pliki nagłówkowe biblioteki rubberband | |
61 | Group: Development/Libraries | |
62 | Requires: %{name}-libs = %{version}-%{release} | |
56404c6a | 63 | %{?with_libsamplerate:Requires: libsamplerate-devel >= 0.1.8} |
e291abb8 SS |
64 | |
65 | %description devel | |
66 | Header files for rubberband library. | |
67 | ||
68 | %description devel -l pl.UTF-8 | |
69 | Pliki nagłówkowe biblioteki rubberband. | |
70 | ||
71 | %package static | |
72 | Summary: Static rubberband library | |
73 | Summary(pl.UTF-8): Statyczna biblioteka rubberband | |
74 | Group: Development/Libraries | |
75 | Requires: %{name}-devel = %{version}-%{release} | |
76 | ||
77 | %description static | |
78 | Static rubberband library. | |
79 | ||
80 | %description static -l pl.UTF-8 | |
81 | Statyczna biblioteka rubberband. | |
82 | ||
2508a369 JB |
83 | %package -n java-rubberband |
84 | Summary: Java JNI interface for rubberband | |
85 | Summary(pl.UTF-8): Interfejs Javy JNI do rubberband | |
86 | Group: Libraries/Java | |
87 | Requires: jre | |
56404c6a | 88 | %{?with_libsamplerate:Requires: libsamplerate >= 0.1.8} |
2508a369 JB |
89 | |
90 | %description -n java-rubberband | |
91 | Java JNI interface for rubberband. | |
92 | ||
93 | %description -n java-rubberband -l pl.UTF-8 | |
94 | Interfejs Javy JNI do rubberband. | |
95 | ||
e291abb8 | 96 | %package -n ladspa-rubberband-plugins |
ff525031 JB |
97 | Summary: rubberband LADSPA plugin |
98 | Summary(pl.UTF-8): Wtyczka LADSPA rubberband | |
e291abb8 | 99 | Group: Applications/Sound |
ff525031 | 100 | Requires: ladspa-common |
56404c6a | 101 | %{?with_libsamplerate:Requires: libsamplerate >= 0.1.8} |
e291abb8 SS |
102 | |
103 | %description -n ladspa-rubberband-plugins | |
ff525031 JB |
104 | rubberband LADSPA plugin. |
105 | ||
106 | %description -n ladspa-rubberband-plugins -l pl.UTF-8 | |
107 | Wtyczka LADSPA rubberband. | |
e291abb8 | 108 | |
56404c6a JB |
109 | %package -n lv2-rubberband |
110 | Summary: rubberband LV2 plugin | |
111 | Summary(pl.UTF-8): Wtyczka LV2 rubberband | |
112 | Group: Applications/Sound | |
113 | Requires: lv2 | |
114 | %{?with_libsamplerate:Requires: libsamplerate >= 0.1.8} | |
115 | ||
116 | %description -n lv2-rubberband | |
117 | rubberband LV2 plugin. | |
118 | ||
119 | %description -n lv2-rubberband -l pl.UTF-8 | |
120 | Wtyczka LV2 rubberband. | |
121 | ||
e291abb8 | 122 | %package -n vamp-plugins-rubberband |
ff525031 JB |
123 | Summary: rubberband Vamp plugin |
124 | Summary(pl.UTF-8): Wtyczka Vamp rubberband | |
e291abb8 | 125 | Group: Applications/Sound |
56404c6a | 126 | %{?with_libsamplerate:Requires: libsamplerate >= 0.1.8} |
8ef19e9b | 127 | Requires: vamp >= 2.9 |
e291abb8 SS |
128 | |
129 | %description -n vamp-plugins-rubberband | |
ff525031 JB |
130 | rubberband Vamp plugin. |
131 | ||
132 | %description -n vamp-plugins-rubberband -l pl.UTF-8 | |
133 | Wtyczka Vamp rubberband. | |
e291abb8 SS |
134 | |
135 | %prep | |
136 | %setup -q | |
ff525031 | 137 | %patch0 -p1 |
56404c6a | 138 | %patch1 -p1 |
e291abb8 SS |
139 | |
140 | %build | |
c8fbe83c JB |
141 | %if %{with java} |
142 | # required for meson javac detection (at least meson 1.0.1 / openjdk8 combo) | |
143 | export CLASSPATH=. | |
144 | %endif | |
145 | ||
8ef19e9b | 146 | %meson build \ |
56404c6a | 147 | %{?with_java:-Dextra_include_dirs="%{_jvmdir}/java/include,%{_jvmdir}/java/include/linux"} \ |
c8fbe83c JB |
148 | %{?with_fft:-Dfft=fftw} \ |
149 | -Djni=%{__enabled_disabled java} \ | |
56404c6a | 150 | %{?with_libsamplerate:-Dresampler=libsamplerate} |
8ef19e9b JB |
151 | |
152 | %ninja_build -C build | |
e291abb8 SS |
153 | |
154 | %install | |
155 | rm -rf $RPM_BUILD_ROOT | |
156 | ||
8ef19e9b | 157 | %ninja_install -C build |
e291abb8 | 158 | |
2508a369 JB |
159 | %if %{with java} |
160 | install -d $RPM_BUILD_ROOT%{_javadir} | |
8ef19e9b | 161 | cp -p build/rubberband.jar $RPM_BUILD_ROOT%{_javadir} |
2508a369 JB |
162 | %endif |
163 | ||
e291abb8 SS |
164 | %clean |
165 | rm -rf $RPM_BUILD_ROOT | |
166 | ||
167 | %post libs -p /sbin/ldconfig | |
168 | %postun libs -p /sbin/ldconfig | |
169 | ||
2508a369 JB |
170 | %post -n java-rubberband -p /sbin/ldconfig |
171 | %postun -n java-rubberband -p /sbin/ldconfig | |
172 | ||
e291abb8 SS |
173 | %files |
174 | %defattr(644,root,root,755) | |
6a803cf6 | 175 | %doc CHANGELOG README.md |
346f97e8 | 176 | %attr(755,root,root) %{_bindir}/rubberband |
56404c6a | 177 | %attr(755,root,root) %{_bindir}/rubberband-r3 |
e291abb8 SS |
178 | |
179 | %files libs | |
180 | %defattr(644,root,root,755) | |
181 | %attr(755,root,root) %{_libdir}/librubberband.so.*.*.* | |
5abf6277 | 182 | %attr(755,root,root) %ghost %{_libdir}/librubberband.so.2 |
e291abb8 SS |
183 | |
184 | %files devel | |
185 | %defattr(644,root,root,755) | |
346f97e8 | 186 | %attr(755,root,root) %{_libdir}/librubberband.so |
8ef19e9b | 187 | %{_includedir}/rubberband |
e291abb8 SS |
188 | %{_pkgconfigdir}/rubberband.pc |
189 | ||
190 | %files static | |
191 | %defattr(644,root,root,755) | |
346f97e8 | 192 | %{_libdir}/librubberband.a |
e291abb8 | 193 | |
2508a369 JB |
194 | %if %{with java} |
195 | %files -n java-rubberband | |
196 | %defattr(644,root,root,755) | |
197 | %attr(755,root,root) %{_libdir}/librubberband-jni.so | |
198 | %{_javadir}/rubberband.jar | |
199 | %endif | |
200 | ||
e291abb8 SS |
201 | %files -n ladspa-rubberband-plugins |
202 | %defattr(644,root,root,755) | |
346f97e8 | 203 | %attr(755,root,root) %{_libdir}/ladspa/ladspa-rubberband.so |
e291abb8 | 204 | %{_libdir}/ladspa/ladspa-rubberband.cat |
e291abb8 SS |
205 | %{_datadir}/ladspa/rdf/ladspa-rubberband.rdf |
206 | ||
56404c6a JB |
207 | %files -n lv2-rubberband |
208 | %defattr(644,root,root,755) | |
209 | %dir %{_libdir}/lv2/rubberband.lv2 | |
210 | %attr(755,root,root) %{_libdir}/lv2/rubberband.lv2/lv2-rubberband.so | |
211 | %{_libdir}/lv2/rubberband.lv2/lv2-rubberband.ttl | |
212 | %{_libdir}/lv2/rubberband.lv2/manifest.ttl | |
213 | ||
e291abb8 SS |
214 | %files -n vamp-plugins-rubberband |
215 | %defattr(644,root,root,755) | |
346f97e8 | 216 | %attr(755,root,root) %{_libdir}/vamp/vamp-rubberband.so |
e291abb8 | 217 | %{_libdir}/vamp/vamp-rubberband.cat |