fftw-vl.spec 7.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221
  1. %define name fftw
  2. %define version 2.1.5
  3. %define release 2%{?_dist_release}
  4. Name: %{name}
  5. Summary: C subroutines for computing the Discrete Fourier Transform.
  6. Version: %{version}
  7. Release: %{release}
  8. Group: System Environment/Libraries
  9. License: GPLv2
  10. URL: http://www.fftw.org/
  11. Source: %{name}-%{version}.tar.gz
  12. %{?nosrc:NoSource: 0}
  13. Patch0: %{name}-%{version}-pentium.patch
  14. Icon: fftw-logo-thumb.gif
  15. BuildRoot: %{_tmppath}/%{name}-%{version}-root
  16. BuildRequires: gcc-gfortran
  17. Vendor: Project Vine
  18. Distribution: Vine Linux
  19. %description
  20. FFTW 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 "s" prefix.)
  21. %description -l ja
  22. FFTW は1次元または多次元の離散フーリエ変換(DFT)を計算する高速なCルーチンのコレクションです.FFTW は複素数、実数、並列変換ができ、任意のサイズの配列を効果的に扱うことができます.このパッケージには、倍精度と単精度の単一CPUとスレッドに対応した FFTW のライブラリが収められています。(単精度用のファイル名にはfが最後に付けられています。)
  23. %package devel
  24. Summary: Headers, libraries, & docs for FFTW fast fourier transform library
  25. Group: Development/Libraries
  26. Requires: %{name} = %{version}-%{release}
  27. Requires(post): install-info
  28. Requires(preun): install-info
  29. %description devel
  30. This package contains the additional header files, documentation, and
  31. libraries you need to develop programs using the FFTW fast fourier
  32. transform library.
  33. %description devel -l ja
  34. このパッケージには、高速フーリエ変換のライブラリであるFFTWを使ってプログラムを開発する際に必要となるヘッダーファイルやドキュメント、ライブラリが収められています。
  35. %package static
  36. Summary: Static version of the FFTW library
  37. Group: Development/Libraries
  38. Requires: %{name}-devel = %{version}-%{release}
  39. %description static
  40. This package contains the statically linkable version of
  41. the FFTW fast Fourier transform library.
  42. %prep
  43. # We will be compiling two copies of FFTW, one for double precision and
  44. # one for single precision. During the build process, these copies
  45. # will be stored in fftw-%{version}/double and fftw-%{version}/single
  46. # Unpack the tar archive, first (-c) creating a fftw-%{version}
  47. # directory and then unpacking in there.
  48. %setup -q -c
  49. # Now, rename the unpacked FFTW directory to "double":
  50. mv ${RPM_PACKAGE_NAME}-${RPM_PACKAGE_VERSION} double
  51. # Apply patch to enable pentium optimizations
  52. pushd double
  53. %patch0 -p1
  54. popd
  55. # Last, make a copy of this directory in "single":
  56. cp -r double single
  57. %build
  58. # Configure and build the double and single precision versions.
  59. # Notes:
  60. # (1) We install into ${RPM_BUILD_ROOT}, which is set either
  61. # by the BuildRoot option above or by --buildroot at build-time.
  62. # This allows you to build the RPM without blowing away your existing
  63. # FFTW installation, and even without being root.
  64. # (2) The double-precision version is installed with the normal library
  65. # names, while the single-precision version is installed with an "s"
  66. # prefix.
  67. # Configure uses g77 by default, if present on system
  68. export F77=gfortran
  69. pushd double
  70. %ifarch i386
  71. %configure --enable-shared --enable-threads --infodir=$RPM_BUILD_ROOT%{_infodir} --enable-i386-hacks
  72. %else
  73. %configure --enable-shared --enable-threads --infodir=$RPM_BUILD_ROOT%{_infodir}
  74. %endif
  75. make %{?_smp_mflags}
  76. popd
  77. pushd single
  78. %ifarch i386
  79. %configure --enable-shared --enable-threads --infodir=$RPM_BUILD_ROOT%{_infodir} --enable-i386-hacks --enable-float --enable-type-prefix
  80. %else
  81. %configure --enable-shared --enable-threads --infodir=$RPM_BUILD_ROOT%{_infodir} --enable-float --enable-type-prefix
  82. %endif
  83. make %{?_smp_mflags}
  84. popd
  85. %install
  86. rm -rf $RPM_BUILD_ROOT doc
  87. pushd double
  88. %makeinstall
  89. cp -a AUTHORS COPYING COPYRIGHT ChangeLog NEWS README* TODO ../
  90. cp -a FAQ/fftw-faq.html/ doc/ ../
  91. popd
  92. pushd single
  93. %makeinstall
  94. popd
  95. rm -f doc/Makefile*
  96. ## remove unuse files
  97. rm -f $RPM_BUILD_ROOT%{_infodir}/dir
  98. rm -f $RPM_BUILD_ROOT%{_libdir}/*.la
  99. %clean
  100. rm -rf $RPM_BUILD_ROOT
  101. %post -p /sbin/ldconfig
  102. %postun -p /sbin/ldconfig
  103. %post devel
  104. /sbin/install-info --section="Math" %{_infodir}/%{name}.info.gz %{_infodir}/dir 2>/dev/null || :
  105. %preun devel
  106. if [ "$1" = 0 ]; then
  107. /sbin/install-info --delete %{_infodir}/%{name}.info.gz %{_infodir}/dir 2>/dev/null || :
  108. fi
  109. %files
  110. %defattr (-,root,root)
  111. %doc AUTHORS COPYING COPYRIGHT ChangeLog NEWS README* TODO
  112. %{_libdir}/lib*fftw*.so.2*
  113. %files devel
  114. %defattr (-,root,root)
  115. %doc doc/
  116. %{_includedir}/*fftw*.h
  117. %doc %{_infodir}/*
  118. %{_libdir}/lib*fftw*.so
  119. %files static
  120. %defattr (-,root,root)
  121. %{_libdir}/lib*fftw*.a
  122. %changelog
  123. * Sun Oct 03 2010 Ryoichi INAGAKI <ryo1@bc.wakwak.com> 2.1.5-2
  124. - rebuilt with new toolchain
  125. - split static libraries
  126. * Sat Sep 20 2008 Shu KONNO <owa@bg.wakwak.com> 2.1.5-1vl5
  127. - applied new versioning policy, spec in utf-8
  128. - removed *.la
  129. * Wed Dec 19 2007 Shu KONNO <owa@bg.wakwak.com> 2.1.5-0vl2
  130. - s/gcc-f77/gcc-gfortran/
  131. - updated library file names in %%files section (for x86_64)
  132. * Wed Mar 03 2004 Seiya Nishizawa <seiya@kugi.kyoto-u.ac.jp> 2.1.5-0vl1
  133. - source update.
  134. * Thu Jul 18 2002 KOBAYASHI R. Taizo <tkoba@vinelinux.org> 2.1.3-0vl1
  135. - modified for Vine.
  136. * Mon Feb 25 2002 Fuhito Suguri <bitwalk@jcom.home.ne.jp> 2.1.3-12bw
  137. - rebuild for RH72.
  138. * Tue Oct 09 2001 Fuhito Suguri <bitwalk@nyc.odn.ne.jp> 2.1.3-11bw
  139. - corrected some wrong descriptions in this spec for RH71
  140. * Tue Oct 09 2001 Fuhito Suguri <bitwalk@nyc.odn.ne.jp> 2.1.3-10bw
  141. - corrected some wrong descriptions in this spec
  142. * Mon Oct 08 2001 Fuhito Suguri <bitwalk@nyc.odn.ne.jp> 2.1.3-9bw
  143. - rebuilt for Vine Linux 2.1.5
  144. * Thu Jun 14 2001 Lenny Cartier <lenny@mandrakesoft.com> 2.1.3-8mdk
  145. - fixed by Mika Korhonen <mikak@ee.oulu.fi> :
  146. - removed broken ld.so.conf test (/usr/lib is not listed there anyways)
  147. - made install-info work with RPM macros shipping with newer Mandrakes
  148. and actually add an entry to the top dir file
  149. * Tue Jan 09 2001 Lenny Cartier <lenny@mandrakesoft.com> 2.1.3-7mdk
  150. - rebuild
  151. * Tue Aug 31 2000 Lenny Cartier <lenny@mandrakesoft.com> 2.1.3-6mdk
  152. - add installinfo
  153. * Wed Aug 30 2000 Alexander Skwar <ASkwar@DigitalProjects.com> 2.1.3-5mdk
  154. - Actually used macros
  155. - Added %doc files
  156. - Shortened %files section of the SPEC file a lot
  157. - Provide libfftw as eXtace requires it
  158. - Obsolote libfftw package
  159. - Optimized for Pentium builds per README.hacks
  160. * Wed Aug 30 2000 Lenny Cartier <lenny@mandrakesoft.com> 2.1.3-4mdk
  161. - BM
  162. - macros
  163. * Wed Apr 26 2000 Lenny Cartier <lenny@mandrakesoft.com> 2.1.3-3mdk
  164. - fix group
  165. - spec helper fixes
  166. * Tue Jan 25 2000 Lenny Cartier <lenny@mandrakesoft.com>
  167. - updated, installs in /usr instead of /usr/local by Dara Hazeghi
  168. <dara@pacbell.net>
  169. * Thu Dec 16 1999 Lenny Cartier <lenny@mandrakesoft.com>
  170. - new in contribs
  171. - bz2 archive
  172. - add defattr