]> git.pld-linux.org Git - packages/fftw3.git/blob - fftw3.spec
d7e972c1523c4b9d8c5c85dc3adc101809e04b61
[packages/fftw3.git] / fftw3.spec
1 # TODO: move single and long-double libs to subpackages
2 Summary:        Fast Fourier transform library
3 Summary(pl):    Biblioteka z funkacjami szybkiej transformaty Fouriera
4 Summary(pt_BR): biblioteca fast fourier transform
5 Name:           fftw3
6 Version:        3.0
7 Release:        1
8 License:        GPL
9 Group:          Libraries
10 Source0:        ftp://ftp.fftw.org/pub/fftw/fftw-%{version}.tar.gz
11 # Source0-md5:  6b09e3b141a9f1aae8b3a1d64fff6982
12 Patch0:         %{name}-info.patch
13 Icon:           fftw-logo-thumb.gif
14 URL:            http://www.fftw.org/
15 BuildRequires:  autoconf
16 BuildRequires:  automake
17 BuildRequires:  libtool
18 BuildRoot:      %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
19
20 %description
21 FFTW is a collection of fast C routines for computing the Discrete
22 Fourier Transform in one or more dimensions. It includes complex,
23 real, and parallel transforms, and can handle arbitrary array sizes
24 efficiently. This RPM package includes the double precision FFTW
25 uniprocessor and threads libraries.
26
27 %description -l pl
28 FFTW jest zbiorem szybkich funkcji C do obliczania dyskretnych
29 transformat Fouriera w jednym lub wiêcej wymiarach. Zawiera równie¿
30 zespolone, rzeczywiste oraz równoleg³e transformaty i potrafi wydajnie
31 radziæ sobie z tablicami o dowolnych rozmiarach. Ten pakiet RPM
32 zawiera wersje FFTW o podwójnej precyzji dla architektur
33 jednoprocesorowych oraz z obs³ug± w±tków.
34
35 %description -l pt_BR
36 FFTW é uma coleção de rotinas rápidas em C para computar a Discrete
37 Fourier Transform em uma ou mais dimensões. Incluindo transformações
38 complexas, reais e paralelas, também pode manipular vetores de tamanho
39 arbitrário eficientemente. Esse pacote RPM inclui bibliotecas FFTW com
40 suporte a threads, normal e dupla precisão (Os arquivos de precisão
41 normal tem um prefixo "s").
42
43 %package devel
44 Summary:        Header files and documentation for fftw
45 Summary(pl):    Pliki nag³ówkowe oraz dokumentacja do fftw
46 Summary(pt_BR): Headers e documentação do pacote FFTW
47 Group:          Development/Libraries
48 Requires:       %{name} = %{version}
49
50 %description devel
51 This package contains the header files and documentation you need to
52 develop programs using the FFTW (fast fourier transform library).
53
54 %description devel -l pl
55 Ten pakiet zawiera pliki nag³ówkowe oraz dokumetacjê potrzebne do
56 tworzenia programów u¿ywaj±cych biblioteki FFTW (wykonuj±cej szybk±
57 transformatê Fouriera).
58
59 %description devel -l pt_BR
60 Este pacote contém documentação e headers adicionais para desenvolver
61 programas usando a FFTW.
62
63 %package static
64 Summary:        Static fftw libraries
65 Summary(pl):    Statyczne biblioteki fftw
66 Summary(pt_BR): Bibliotecas estáticas do pacote FFTW
67 Group:          Development/Libraries
68 Requires:       %{name}-devel = %{version}
69
70 %description static
71 Static fftw libraries.
72
73 %description static -l pl
74 Statyczne biblioteki fftw.
75
76 %description static -l pt_BR
77 Este pacote contém as bibliotecas estáticas do pacote FFTW.
78
79 %prep
80 %setup -q -n fftw-%{version}
81 %patch -p1
82
83 %build
84 %{__libtoolize}
85 %{__aclocal}
86 %{__autoconf}
87 %{__automake}
88 # it seems to be safe because of runtime CPU detection
89 for ver in single double long-double ; do
90         OPTS=""
91         # k7,SSE,3dnow,altivec only for single
92         if [ "$ver" = "single" ]; then
93                 OPTS="
94 %ifarch athlon
95                 --enable-k7
96 %endif
97 %ifarch i686 athlon
98         --enable-sse
99 %endif
100 %ifarch i586 k6
101         --enable-3dnow
102 %endif
103 %ifarch ppc
104         --enable-altivec
105 %endif
106                 "
107         fi
108 %ifarch i686
109         # SSE2 only for double
110         if [ "$ver" = "double" ]; then
111                 OPTS="--enable-sse2"
112         endif
113 %endif
114 %configure \
115         --enable-shared \
116         --enable-threads \
117         --enable-$ver \
118         $OPTS \
119         --%{!?debug:dis}%{?debug:en}able-debug
120
121 %{__make}
122 %{__make} install \
123         DESTDIR=`pwd`/inst-$ver
124
125         if [ "$ver" != "long-double" ]; then
126 %{__make} clean
127         fi
128 done
129
130 # remake docs removed by make clean
131 %{__make} fftw-faq.html -C doc/FAQ
132
133 %install
134 rm -rf $RPM_BUILD_ROOT
135
136 # this installs last configured version (long-double)
137 %{__make} install \
138         DESTDIR=$RPM_BUILD_ROOT
139
140 # duplicates
141 rm -rf inst-*{%{_bindir}/fftw-wisdom-to-conf,%{_includedir}} \
142         inst-*{%{_infodir},%{_mandir}/man1/fftw-wisdom-to-conf.1}
143
144 # install prepared remaining versions
145 tar cf - -C inst-single . | tar xf - -C $RPM_BUILD_ROOT
146 tar cf - -C inst-double . | tar xf - -C $RPM_BUILD_ROOT
147
148 %clean
149 rm -rf $RPM_BUILD_ROOT
150
151 %post   -p /sbin/ldconfig
152 %postun -p /sbin/ldconfig
153
154 %post devel
155 [ ! -x /usr/sbin/fix-info-dir ] || /usr/sbin/fix-info-dir -c %{_infodir} >/dev/null 2>&1
156
157 %postun devel
158 [ ! -x /usr/sbin/fix-info-dir ] || /usr/sbin/fix-info-dir -c %{_infodir} >/dev/null 2>&1
159
160 %files
161 %defattr(644,root,root,755)
162 %doc AUTHORS COPYRIGHT ChangeLog NEWS README TODO
163 %attr(755,root,root) %{_bindir}/fftw*-wisdom*
164 %attr(755,root,root) %{_libdir}/libfftw3*.so.*.*.*
165 %{_mandir}/man1/fftw*-wisdom*.1*
166
167 %files devel
168 %defattr(644,root,root,755)
169 %doc doc/html doc/FAQ/fftw-faq.html
170 %attr(755,root,root) %{_libdir}/libfftw3*.so
171 %{_libdir}/libfftw3*.la
172 %{_includedir}/fftw3.*
173 %{_infodir}/fftw3.info*
174 %{_pkgconfigdir}/fftw3*.pc
175
176 %files static
177 %defattr(644,root,root,755)
178 %{_libdir}/libfftw3*.a
This page took 0.073568 seconds and 2 git commands to generate.