]> git.pld-linux.org Git - packages/fftw3.git/blob - fftw3.spec
- md5
[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 DESTDIR=`pwd`/inst-$ver
123         if [ "$ver" != "long-double" ]; then
124 %{__make} clean
125         fi
126 done
127
128 # remake docs removed by make clean
129 %{__make} fftw-faq.html -C doc/FAQ
130
131 %install
132 rm -rf $RPM_BUILD_ROOT
133
134 # this installs last configured version (long-double)
135 %{__make} install DESTDIR=$RPM_BUILD_ROOT
136
137 # duplicates
138 rm -rf inst-*{%{_bindir}/fftw-wisdom-to-conf,%{_includedir}} \
139         inst-*{%{_infodir},%{_mandir}/man1/fftw-wisdom-to-conf.1}
140
141 # install prepared remaining versions
142 tar cf - -C inst-single . | tar xf - -C $RPM_BUILD_ROOT
143 tar cf - -C inst-double . | tar xf - -C $RPM_BUILD_ROOT
144
145 %clean
146 rm -rf $RPM_BUILD_ROOT
147
148 %post   -p /sbin/ldconfig
149 %postun -p /sbin/ldconfig
150
151 %post devel
152 [ ! -x /usr/sbin/fix-info-dir ] || /usr/sbin/fix-info-dir -c %{_infodir} >/dev/null 2>&1
153
154 %postun devel
155 [ ! -x /usr/sbin/fix-info-dir ] || /usr/sbin/fix-info-dir -c %{_infodir} >/dev/null 2>&1
156
157 %files
158 %defattr(644,root,root,755)
159 %doc AUTHORS COPYRIGHT ChangeLog NEWS README TODO
160 %attr(755,root,root) %{_bindir}/fftw*-wisdom*
161 %attr(755,root,root) %{_libdir}/libfftw3*.so.*.*.*
162 %{_mandir}/man1/fftw*-wisdom*.1*
163
164 %files devel
165 %defattr(644,root,root,755)
166 %doc doc/html doc/FAQ/fftw-faq.html
167 %attr(755,root,root) %{_libdir}/libfftw3*.so
168 %{_libdir}/libfftw3*.la
169 %{_includedir}/fftw3.*
170 %{_infodir}/fftw3.info*
171 %{_pkgconfigdir}/fftw3*.pc
172
173 %files static
174 %defattr(644,root,root,755)
175 %{_libdir}/libfftw3*.a
This page took 0.040608 seconds and 3 git commands to generate.