]> git.pld-linux.org Git - packages/fftw3.git/blob - fftw3.spec
- release 2
[packages/fftw3.git] / fftw3.spec
1 Summary:        Fast Fourier Transform library
2 Summary(pl):    Biblioteka z funkcjami szybkiej transformaty Fouriera
3 Summary(pt_BR): biblioteca fast fourier transform
4 Name:           fftw3
5 Version:        3.0.1
6 Release:        2
7 License:        GPL
8 Group:          Libraries
9 Source0:        ftp://ftp.fftw.org/pub/fftw/fftw-%{version}.tar.gz
10 # Source0-md5:  76cd21ecc9a7bed6343566c473c36477
11 Patch0:         %{name}-info.patch
12 Patch1:         %{name}-link.patch
13 Icon:           fftw-logo-thumb.gif
14 URL:            http://www.fftw.org/
15 BuildRequires:  autoconf
16 BuildRequires:  automake
17 BuildRequires:  gcc-g77
18 BuildRequires:  libtool
19 Requires:       %{name}-common = %{version}-%{release}
20 BuildRoot:      %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
21
22 %description
23 FFTW is a collection of fast C routines for computing the Discrete
24 Fourier Transform in one or more dimensions. It includes complex,
25 real, and parallel transforms, and can handle arbitrary array sizes
26 efficiently. This RPM package includes the double precision FFTW
27 uniprocessor and threads libraries.
28
29 %description -l pl
30 FFTW jest zbiorem szybkich funkcji C do obliczania dyskretnych
31 transformat Fouriera w jednym lub wiêcej wymiarach. Zawiera równie¿
32 zespolone, rzeczywiste oraz równoleg³e transformaty i potrafi wydajnie
33 radziæ sobie z tablicami o dowolnych rozmiarach. Ten pakiet RPM
34 zawiera wersje FFTW o podwójnej precyzji dla architektur
35 jednoprocesorowych oraz z obs³ug± w±tków.
36
37 %description -l pt_BR
38 FFTW é uma coleção de rotinas rápidas em C para computar a Discrete
39 Fourier Transform em uma ou mais dimensões. Incluindo transformações
40 complexas, reais e paralelas, também pode manipular vetores de tamanho
41 arbitrário eficientemente. Esse pacote RPM inclui bibliotecas FFTW com
42 suporte a threads, normal e dupla precisão (Os arquivos de precisão
43 normal tem um prefixo "s").
44
45 %package devel
46 Summary:        Development files for fftw
47 Summary(pl):    Pliki programistyczne do fftw
48 Summary(pt_BR): Headers e documentação do pacote FFTW
49 Group:          Development/Libraries
50 Requires:       %{name} = %{version}-%{release}
51 Requires:       %{name}-common-devel = %{version}-%{release}
52
53 %description devel
54 This package contains the files you need to develop programs using the
55 FFTW (fast fourier transform library).
56
57 %description devel -l pl
58 Ten pakiet zawiera pliki potrzebne do tworzenia programów u¿ywaj±cych
59 biblioteki FFTW (wykonuj±cej szybk± transformatê Fouriera).
60
61 %description devel -l pt_BR
62 Este pacote contém documentação e headers adicionais para desenvolver
63 programas usando a FFTW.
64
65 %package static
66 Summary:        Static fftw libraries
67 Summary(pl):    Statyczne biblioteki fftw
68 Summary(pt_BR): Bibliotecas estáticas do pacote FFTW
69 Group:          Development/Libraries
70 Requires:       %{name}-devel = %{version}-%{release}
71
72 %description static
73 Static fftw libraries.
74
75 %description static -l pl
76 Statyczne biblioteki fftw.
77
78 %description static -l pt_BR
79 Este pacote contém as bibliotecas estáticas do pacote FFTW.
80
81 %package single
82 Summary:        Fast Fourier Transform library - single precision
83 Summary(pl):    Biblioteka z funkcjami szybkiej transformaty Fouriera - pojedynczej precyzji
84 Group:          Libraries
85 Requires:       %{name}-common = %{version}-%{release}
86
87 %description single
88 FFTW is a collection of fast C routines for computing the Discrete
89 Fourier Transform in one or more dimensions. It includes complex,
90 real, and parallel transforms, and can handle arbitrary array sizes
91 efficiently. This RPM package includes the single precision FFTW
92 uniprocessor and threads libraries.
93
94 %description single -l pl
95 FFTW jest zbiorem szybkich funkcji C do obliczania dyskretnych
96 transformat Fouriera w jednym lub wiêcej wymiarach. Zawiera równie¿
97 zespolone, rzeczywiste oraz równoleg³e transformaty i potrafi wydajnie
98 radziæ sobie z tablicami o dowolnych rozmiarach. Ten pakiet RPM
99 zawiera wersje FFTW o pojedynczej precyzji dla architektur
100 jednoprocesorowych oraz z obs³ug± w±tków.
101
102 %package single-devel
103 Summary:        Development files for single precision fftw
104 Summary(pl):    Pliki programistyczne do fftw pojedynczej precyzji
105 Group:          Development/Libraries
106 Requires:       %{name}-common-devel = %{version}-%{release}
107 Requires:       %{name}-single = %{version}-%{release}
108
109 %description single-devel
110 This package contains the files you need to develop programs using the
111 single precision FFTW (fast fourier transform library).
112
113 %description single-devel -l pl
114 Ten pakiet zawiera pliki potrzebne do tworzenia programów u¿ywaj±cych
115 biblioteki FFTW pojedynczej precyzji (wykonuj±cej szybk± transformatê
116 Fouriera).
117
118 %package single-static
119 Summary:        Static fftw single precision libraries
120 Summary(pl):    Statyczne biblioteki fftw pojedynczej precyzji
121 Group:          Development/Libraries
122 Requires:       %{name}-single-devel = %{version}-%{release}
123
124 %description single-static
125 Static fftw single precision libraries.
126
127 %description single-static -l pl
128 Statyczne biblioteki fftw pojedynczej precyzji.
129
130 %package long
131 Summary:        Fast Fourier Transform library - long double precision
132 Summary(pl):    Biblioteka z funkcjami szybkiej transformaty Fouriera - rozszerzonej precyzji
133 Group:          Libraries
134 Requires:       %{name}-common = %{version}-%{release}
135
136 %description long
137 FFTW is a collection of fast C routines for computing the Discrete
138 Fourier Transform in one or more dimensions. It includes complex,
139 real, and parallel transforms, and can handle arbitrary array sizes
140 efficiently. This RPM package includes the long double precision FFTW
141 uniprocessor and threads libraries.
142
143 %description long -l pl
144 FFTW jest zbiorem szybkich funkcji C do obliczania dyskretnych
145 transformat Fouriera w jednym lub wiêcej wymiarach. Zawiera równie¿
146 zespolone, rzeczywiste oraz równoleg³e transformaty i potrafi wydajnie
147 radziæ sobie z tablicami o dowolnych rozmiarach. Ten pakiet RPM
148 zawiera wersje FFTW o rozszerzonej precyzji dla architektur
149 jednoprocesorowych oraz z obs³ug± w±tków.
150
151 %package long-devel
152 Summary:        Development files for long double precision fftw
153 Summary(pl):    Pliki programistyczne do fftw rozszerzonej precyzji
154 Group:          Development/Libraries
155 Requires:       %{name}-common-devel = %{version}-%{release}
156 Requires:       %{name}-long = %{version}-%{release}
157
158 %description long-devel
159 This package contains the files you need to develop programs using the
160 long double precision FFTW (fast fourier transform library).
161
162 %description long-devel -l pl
163 Ten pakiet zawiera pliki potrzebne do tworzenia programów u¿ywaj±cych
164 biblioteki FFTW rozszerzonej precyzji (wykonuj±cej szybk± transformatê
165 Fouriera).
166
167 %package long-static
168 Summary:        Static fftw long double precision libraries
169 Summary(pl):    Statyczne biblioteki fftw rozszerzonej precyzji
170 Group:          Development/Libraries
171 Requires:       %{name}-long-devel = %{version}-%{release}
172
173 %description long-static
174 Static fftw long double precision libraries.
175
176 %description long-static -l pl
177 Statyczne biblioteki fftw rozszerzonej precyzji.
178
179 %package common
180 Summary:        Files common for all versions of fftw libraries
181 Summary(pl):    Pliki wspólne dla wszystkich wersji bibliotek fftw
182 Group:          Libraries
183
184 %description common
185 Files common for all versions of fftw libraries (basic documentation,
186 fftw-wisdom-to-conf utility).
187
188 %description common -l pl
189 Pliki wspólne dla wszystkich wersji bibliotek fftw (podstawowa
190 dokumentacja, narzêdzie fftw-wisdom-to-conf).
191
192 %package common-devel
193 Summary:        Development files common for all versions of fftw libraries
194 Summary(pl):    Pliki programistyczne wspólne dla wszystkich wersji bibliotek fftw
195 Group:          Development/Libraries
196 Requires:       %{name}-common = %{version}-%{release}
197
198 %description common-devel
199 Development files common for all versions of fftw libraries (header
200 files, development documentation).
201
202 %description common-devel -l pl
203 Pliki programistyczne wspólne dla wszystkich wersji bibliotek fftw
204 (pliki nag³ówkowe, dokumentacja programisty).
205
206 %prep
207 %setup -q -n fftw-%{version}
208 %patch0 -p1
209 %patch1 -p1
210
211 %build
212 %{__libtoolize}
213 %{__aclocal}
214 %{__autoconf}
215 %{__automake}
216
217 # prepare three trees (for single, double, long-double precision)
218 echo * > files.list
219 install -d single long-double
220 cp -a `cat files.list` single
221 cp -a `cat files.list` long-double
222 ln -sf . double
223
224 # MMX/SSE/etc. seem to be safe because of runtime CPU detection
225 for ver in single double long-double ; do
226         OPTS=""
227         # k7,SSE,3dnow,altivec only for single
228         if [ "$ver" = "single" ]; then
229 %ifarch i586 k6
230                 OPTS="--enable-3dnow"
231 %endif
232 %ifarch i686
233                 OPTS="--enable-sse"
234 %endif
235 %ifarch athlon
236                 OPTS="--enable-sse" # "--enable-k7" disabled - causes SEGV on athlons
237 %endif
238 %ifarch ppc
239                 OPTS="--enable-altivec"
240 %endif
241 %ifnarch i586 i686 k6 athlon ppc
242                 :       # keep sh happy about syntax
243 %endif
244         fi
245 %ifarch i686
246         # SSE2 only for double
247         if [ "$ver" = "double" ]; then
248                 OPTS="--enable-sse2"
249         fi
250 %endif
251 cd $ver
252 %configure \
253         --enable-shared \
254         --enable-threads \
255         --enable-$ver \
256         $OPTS \
257         --%{!?debug:dis}%{?debug:en}able-debug
258
259 %{__make}
260
261 cd ..
262 done
263
264 %install
265 rm -rf $RPM_BUILD_ROOT
266
267 %{__make} install \
268         DESTDIR=$RPM_BUILD_ROOT
269
270 %{__make} install -C single \
271         DESTDIR=$RPM_BUILD_ROOT
272
273 %{__make} install -C long-double\
274         DESTDIR=$RPM_BUILD_ROOT
275
276 %clean
277 rm -rf $RPM_BUILD_ROOT
278
279 %post   -p /sbin/ldconfig
280 %postun -p /sbin/ldconfig
281
282 %post common-devel
283 [ ! -x /usr/sbin/fix-info-dir ] || /usr/sbin/fix-info-dir -c %{_infodir} >/dev/null 2>&1
284
285 %postun common-devel
286 [ ! -x /usr/sbin/fix-info-dir ] || /usr/sbin/fix-info-dir -c %{_infodir} >/dev/null 2>&1
287
288 %files
289 %defattr(644,root,root,755)
290 %attr(755,root,root) %{_bindir}/fftw-wisdom
291 %attr(755,root,root) %{_libdir}/libfftw3.so.*.*.*
292 %attr(755,root,root) %{_libdir}/libfftw3_threads.so.*.*.*
293 %{_mandir}/man1/fftw-wisdom.1*
294
295 %files devel
296 %defattr(644,root,root,755)
297 %attr(755,root,root) %{_libdir}/libfftw3.so
298 %attr(755,root,root) %{_libdir}/libfftw3_threads.so
299 %{_libdir}/libfftw3.la
300 %{_libdir}/libfftw3_threads.la
301 %{_pkgconfigdir}/fftw3.pc
302
303 %files static
304 %defattr(644,root,root,755)
305 %{_libdir}/libfftw3.a
306 %{_libdir}/libfftw3_threads.a
307
308 %files single
309 %defattr(644,root,root,755)
310 %attr(755,root,root) %{_bindir}/fftwf-wisdom
311 %attr(755,root,root) %{_libdir}/libfftw3f.so.*.*.*
312 %attr(755,root,root) %{_libdir}/libfftw3f_threads.so.*.*.*
313 %{_mandir}/man1/fftwf-wisdom.1*
314
315 %files single-devel
316 %defattr(644,root,root,755)
317 %attr(755,root,root) %{_libdir}/libfftw3f.so
318 %attr(755,root,root) %{_libdir}/libfftw3f_threads.so
319 %{_libdir}/libfftw3f.la
320 %{_libdir}/libfftw3f_threads.la
321 %{_pkgconfigdir}/fftw3f.pc
322
323 %files single-static
324 %defattr(644,root,root,755)
325 %{_libdir}/libfftw3f.a
326 %{_libdir}/libfftw3f_threads.a
327
328 %files long
329 %defattr(644,root,root,755)
330 %attr(755,root,root) %{_bindir}/fftwl-wisdom
331 %attr(755,root,root) %{_libdir}/libfftw3l.so.*.*.*
332 %attr(755,root,root) %{_libdir}/libfftw3l_threads.so.*.*.*
333 %{_mandir}/man1/fftwl-wisdom.1*
334
335 %files long-devel
336 %defattr(644,root,root,755)
337 %attr(755,root,root) %{_libdir}/libfftw3l.so
338 %attr(755,root,root) %{_libdir}/libfftw3l_threads.so
339 %{_libdir}/libfftw3l.la
340 %{_libdir}/libfftw3l_threads.la
341 %{_pkgconfigdir}/fftw3l.pc
342
343 %files long-static
344 %defattr(644,root,root,755)
345 %{_libdir}/libfftw3l.a
346 %{_libdir}/libfftw3l_threads.a
347
348 %files common
349 %defattr(644,root,root,755)
350 %doc AUTHORS COPYRIGHT ChangeLog NEWS README TODO
351 %attr(755,root,root) %{_bindir}/fftw-wisdom-to-conf
352 %{_mandir}/man1/fftw-wisdom-to-conf.1*
353
354 %files common-devel
355 %defattr(644,root,root,755)
356 %doc doc/html doc/FAQ/fftw-faq.html
357 %{_includedir}/fftw3.*
358 %{_infodir}/fftw3.info*
This page took 0.101696 seconds and 4 git commands to generate.