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