source: projects/specs/trunk/f/fftw3/fftw3-vl.spec @ 1990

Revision 1990, 7.8 KB checked in by inagaki, 14 years ago (diff)

update: fftw, fftw3

Line 
1%define name fftw3
2%define version 3.2.2
3%define release 1%{?_dist_release}
4
5Name: %{name}
6Summary:   C subroutines for computing the Discrete Fourier Transform.
7Version:   %{version}
8Release:   %{release}
9
10Group:     System Environment/Libraries
11License:   GPLv2
12URL:       http://www.fftw.org/
13
14Source:    fftw-%{version}.tar.gz
15BuildRoot: %{_tmppath}/%{name}-%{version}-root
16BuildRequires: gcc-gfortran
17
18Vendor: Project Vine
19Distribution: Vine Linux
20
21%description
22FFTW is a collection of fast C routines for computing the Discrete Fourier Transform in one or more dimensions.  It includes complex, real, and parallel transforms, and can handle arbitrary array sizes efficiently. This RPM package includes both the double- and single-precision FFTW uniprocessor and threads libraries.  (The single-precision files have an "f" postfix.)
23
24%description -l ja
25FFTW は1次元または多次元の離散フーリエ変換(DFT)を計算する高速なCルーチンのコレクションです.FFTW は複素数、実数、並列変換ができ、任意のサイズの配列を効果的に扱うことができます.このパッケージには、倍精度と単精度の単一CPUとスレッドに対応した FFTW のライブラリが収められています。(単精度用のファイル名にはfが最後に付けられています。)
26
27%package devel
28Summary:   Headers, libraries and docs for the FFTW library
29Group:     Development/Libraries
30Requires:  %{name} = %{version}-%{release}
31Requires(post): install-info
32Requires(preun): install-info
33
34%description devel
35This package contains header files and development libraries needed to
36develop programs using the FFTW fast Fourier transform library.
37
38%description devel -l ja
39このパッケージには、高速フーリエ変換のライブラリである FFTW を使ってプログラムを開発する際に必要となるヘッダーファイルやドキュメント、ライブラリが収められています.
40
41%package        static
42Summary:        Static version of the FFTW library
43Group:          Development/Libraries
44Requires:       %{name}-devel = %{version}-%{release}
45
46%description    static
47This package contains the statically linkable version of
48the FFTW fast Fourier transform library.
49
50
51%prep
52# We will be compiling three copies of FFTW, one for double precision, another
53# one for single precision and the other for long double precision. During the
54# build process, these copies will be stored in fftw-%{version}/double, single
55# and long
56
57# Unpack the tar archive, first (-c) creating a fftw-%{version}
58# directory and then unpacking in there.
59
60%setup -q -c -n fftw-%{version}
61
62for dir in single double long; do
63  cp -a fftw-%{version} $dir
64done
65rm -rf fftw-%{version}
66
67%build
68# Configure and build the double, single and long double precision versions.
69# Notes:
70#  (1) We install into ${RPM_BUILD_ROOT}, which is set either
71#      by the BuildRoot option above or by --buildroot at build-time.
72#      This allows you to build the RPM without blowing away your existing
73#      FFTW installation, and even without being root.
74#  (2) The double-precision version is installed with the normal library
75#      names, while the single-precision version is installed with an "f"
76#      postfix.
77
78# Configure uses g77 by default, if present on system
79export F77=gfortran
80
81%ifarch x86_64
82CONFIG_FLAGS="--enable-sse --enable-sse2 --enable-shared --disable-dependency-tracking --enable-threads"
83%else
84CONFIG_FLAGS="--enable-shared --disable-dependency-tracking --enable-threads"
85%endif
86
87pushd double
88        %configure $CONFIG_FLAGS
89        sed -i 's|^hardcode_libdir_flag_spec=.*|hardcode_libdir_flag_spec=""|g' libtool
90        sed -i 's|^runpath_var=LD_RUN_PATH|runpath_var=DIE_RPATH_DIE|g' libtool
91        make %{?_smp_mflags}
92popd
93pushd single
94        %configure $CONFIG_FLAGS --enable-single
95        sed -i 's|^hardcode_libdir_flag_spec=.*|hardcode_libdir_flag_spec=""|g' libtool
96        sed -i 's|^runpath_var=LD_RUN_PATH|runpath_var=DIE_RPATH_DIE|g' libtool
97        make %{?_smp_mflags}
98popd
99pushd long
100        %configure $CONFIG_FLAGS --enable-long-double
101        sed -i 's|^hardcode_libdir_flag_spec=.*|hardcode_libdir_flag_spec=""|g' libtool
102        sed -i 's|^runpath_var=LD_RUN_PATH|runpath_var=DIE_RPATH_DIE|g' libtool
103        make %{?_smp_mflags}
104popd
105
106%install
107rm -rf $RPM_BUILD_ROOT doc
108pushd double
109        make install DESTDIR=${RPM_BUILD_ROOT}
110        cp -a AUTHORS COPYING COPYRIGHT ChangeLog NEWS README* TODO ../
111        cp -a doc/ ../
112popd
113pushd single
114        make install DESTDIR=${RPM_BUILD_ROOT}
115popd
116pushd long
117        make install DESTDIR=${RPM_BUILD_ROOT}
118popd
119
120## remove unuse files
121rm -f ${RPM_BUILD_ROOT}%{_infodir}/dir
122rm -f ${RPM_BUILD_ROOT}%{_libdir}/*.la
123
124
125%clean
126rm -rf $RPM_BUILD_ROOT
127
128%post -p /sbin/ldconfig
129
130%postun -p /sbin/ldconfig
131
132%post devel
133/sbin/install-info --section="Math" %{_infodir}/%{name}.info.gz %{_infodir}/dir  2>/dev/null || :
134
135%preun devel
136if [ "$1" = 0 ]; then
137  /sbin/install-info --delete %{_infodir}/%{name}.info.gz %{_infodir}/dir 2>/dev/null || :
138fi
139
140
141%files
142%defattr (-,root,root)
143%doc AUTHORS COPYING COPYRIGHT ChangeLog NEWS README* TODO
144%{_bindir}/fftw*
145%{_libdir}/libfftw3*.so.*
146%{_mandir}/man1/fftw*
147
148%files devel
149%defattr (-,root,root)
150%doc doc/html/ doc/FAQ/fftw-faq.html/ doc/*.pdf
151%{_includedir}/fftw3.*
152%{_libdir}/libfftw3*.so
153%{_libdir}/pkgconfig/fftw3*.pc
154%{_infodir}/fftw3*
155
156%files static
157%defattr (-,root,root)
158%{_libdir}/libfftw3*.a
159
160%changelog
161* Sun Oct 03 2010 Ryoichi INAGAKI <ryo1@bc.wakwak.com> 3.2.2-1
162- updated to 3.2.2
163- added long double precision support
164- split static libraries
165
166* Sat Sep 20 2008 Shu KONNO <owa@bg.wakwak.com> 3.1.2-1vl5
167- applied new versioning policy, spec in utf-8
168- removed *.la
169- moved *.pc file to devel
170
171* Thu Jan 03 2008 Satoshi MACHINO <machino@vinelinux.org> 3.1.2-0vl1
172- new upstream release
173
174* Tue Nov 27 2007 Shu KONNO <owa@bg.wakwak.com> 3.1.1-0vl2
175- s/gcc-g77/gcc-gfortran/
176- x86_64 support
177
178* Tue May 30 2006 Seiya Nishizawa <seiya@kugi.kyoto-u.ac.jp> 3.1.1-0vl1
179- source version up
180
181* Thu Jan 29 2004 Seiya Nishizawa <seiya@kugi.kyoto-u.ac.jp> 3.0.1-0vl1
182- source version up to 3
183- package name to fftw3
184- enable sse2 for double and sse for single
185
186* Thu Jul 18 2002 KOBAYASHI R. Taizo <tkoba@vinelinux.org> 2.1.3-0vl1
187- modified for Vine.
188
189* Mon Feb 25 2002 Fuhito Suguri <bitwalk@jcom.home.ne.jp> 2.1.3-12bw
190- rebuild for RH72.
191
192* Tue Oct 09 2001 Fuhito Suguri <bitwalk@nyc.odn.ne.jp> 2.1.3-11bw
193- corrected some wrong descriptions in this spec for RH71
194
195* Tue Oct 09 2001 Fuhito Suguri <bitwalk@nyc.odn.ne.jp> 2.1.3-10bw
196- corrected some wrong descriptions in this spec
197
198* Mon Oct 08 2001 Fuhito Suguri <bitwalk@nyc.odn.ne.jp> 2.1.3-9bw
199- rebuilt for Vine Linux 2.1.5
200
201* Thu Jun 14 2001 Lenny Cartier <lenny@mandrakesoft.com> 2.1.3-8mdk
202- fixed by Mika Korhonen <mikak@ee.oulu.fi> :
203- removed broken ld.so.conf test (/usr/lib is not listed there anyways)
204- made install-info work with RPM macros shipping with newer Mandrakes
205  and actually add an entry to the top dir file
206
207* Tue Jan 09 2001 Lenny Cartier <lenny@mandrakesoft.com> 2.1.3-7mdk
208- rebuild
209
210* Tue Aug 31 2000 Lenny Cartier <lenny@mandrakesoft.com> 2.1.3-6mdk
211- add installinfo
212
213* Wed Aug 30 2000 Alexander Skwar <ASkwar@DigitalProjects.com> 2.1.3-5mdk
214- Actually used macros
215- Added %doc files
216- Shortened %files section of the SPEC file a lot
217- Provide libfftw as eXtace requires it
218- Obsolote libfftw package
219- Optimized for Pentium builds per README.hacks
220
221* Wed Aug 30 2000 Lenny Cartier <lenny@mandrakesoft.com> 2.1.3-4mdk
222- BM
223- macros
224
225* Wed Apr 26 2000 Lenny Cartier <lenny@mandrakesoft.com> 2.1.3-3mdk
226- fix group
227- spec helper fixes
228
229* Tue Jan 25 2000 Lenny Cartier <lenny@mandrakesoft.com>
230- updated, installs in /usr instead of /usr/local by Dara Hazeghi
231  <dara@pacbell.net>
232
233* Thu Dec 16 1999 Lenny Cartier <lenny@mandrakesoft.com>
234- new in contribs
235- bz2 archive
236- add defattr
Note: See TracBrowser for help on using the repository browser.