source: projects/specs/trunk/l/lapack/lapack-vl.spec @ 521

Revision 521, 12.8 KB checked in by daisuke, 14 years ago (diff)

import VineSeed package specs

Line 
1Summary: The LAPACK libraries for numerical linear algebra.
2Name:    lapack
3Version: 3.2.1
4Release: 1%{?_dist_release}
5License: Freely distributable
6Group:   Development/Libraries
7URL:     http://www.netlib.org/lapack/
8Source0: http://www.netlib.org/lapack/lapack-%{version}.tgz
9Source1: http://www.netlib.org/lapack/manpages.tgz
10Source2: Makefile.blas
11Source3: Makefile.lapack
12Source4: http://www.netlib.org/lapack/lapackqref.ps
13Source5: http://www.netlib.org/blas/blasqr.ps
14# for g77
15Source102: Makefile.blas.g77
16Source103: Makefile.lapack.g77
17
18Patch3:  lapack-3.1.1-make.inc.patch
19# for g77
20Patch4:  lapack-3.1.1-make.inc.g77.patch
21
22Obsoletes: lapack-man
23%if %{?_dist_release} != "vl4"
24BuildRequires: gcc-gfortran
25%else
26BuildRequires: gcc-g77
27%endif
28BuildRequires: coreutils findutils
29
30BuildRoot: %{_tmppath}/%{name}-%{version}-root
31
32Vendor: Project Vine
33Distribution: Vine Linux
34
35%description
36LAPACK (Linear Algebra PACKage) is a standard library for numerical
37linear algebra. LAPACK provides routines for solving systems of
38simultaneous linear equations, least-squares solutions of linear
39systems of equations, eigenvalue problems, and singular value problems.
40Associated matrix factorizations (LU, Cholesky, QR, SVD, Schur, and
41generalized Schur) and related computations (i.e., reordering of
42Schur factorizations and estimating condition numbers) are also
43included. LAPACK can handle dense and banded matrices, but not general
44sparse matrices. Similar functionality is provided for real and complex
45matrices in both single and double precision. LAPACK is coded in
46Fortran77 and built with gcc.
47
48%description -l ja
49LAPACK(Linear Algebra PACKage)は線形代数用数値計算の標準ライブラリです。
50LAPACKには、連立一次方程式、線形最小二乗解、固有値問題、特異値問題を解く
51ためのルーチンがあります。関連する行列因子分解(LU、Cholesky、QR、SVD、
52Schur、一般化Schur)と、それに関連する計算処理 (つまりSchur分解の再配列
53およびコンディションナンバーの推定)も含まれます。LAPACKは密なbanded行列は
54処理できますが、一般的な疎行列は処理できません。同じ計算機能が、実行列
55および複素行列の単制度および倍精度で利用できます。LAPACKはFortran 77で
56記述され、gccでビルドされています。
57
58%package devel
59Summary: LAPACK development libraries
60Group: Development/Libraries
61Requires: %{name} = %{version}-%{release}
62Requires: blas-devel = %{version}-%{release}
63
64%description devel
65LAPACK development libraries for applications that link statically.
66
67%package static
68Summary: LAPACK static libraries
69Group: Development/Libraries
70
71%description static
72LAPACK static libraries.
73
74%package -n blas
75Summary: The BLAS (Basic Linear Algebra Subprograms) library.
76Group: Development/Libraries
77Obsoletes: lapack-blas blas-man
78
79%description -n blas
80BLAS (Basic Linear Algebra Subprograms) is a standard library which
81provides a number of basic algorithms for numerical algebra. Man
82pages for blas are available in the blas-man package.
83
84%description -n blas -l ja
85BLAS(Basic Linear Algebra Subprograms)は数値代数計算の標準ライブラリです。BLASでは、線形代数計算における多くの基本アルゴリズムを利用できます。Blasの計算は高速で十分テストされているFORTRAN 77のプログラムで、gccでビルドされています。Blasのマニュアルページはblas-manパッケージにあります。
86
87%description -n blas
88BLAS (Basic Linear Algebra Subprograms) is a standard library which
89provides a number of basic algorithms for numerical algebra. Man
90pages for blas are available in the blas-man package.
91
92%package -n blas-devel
93Summary: LAPACK development libraries
94Group: Development/Libraries
95Requires: blas = %{version}-%{release}
96%if %{?_dist_release} != "vl4"
97Requires: gcc-gfortran
98%else
99Requires: gcc-g77
100%endif
101
102%description -n blas-devel
103BLAS development libraries for applications that link statically.
104
105%package -n blas-static
106Summary: BLAS static libraries
107Group: Development/Libraries
108
109%description -n blas-static
110BLAS static libraries.
111
112#package -n blas-man
113#Summary: Man pages for BLAS (Basic Linear Algebra Subprograms) routines.
114#Group: Applications/Documentation
115#Obsoletes: lapack-blas-man
116
117#description -n blas-man
118#The blas-man package contains documentation for BLAS (Basic Linear
119#Algebra Subprograms) routines in the form of man pages.
120
121#description -n blas-man -l ja
122#blas-manパッケージは、man ページ形式のBLAS (Basic Linear Algebra Subprograms)ルーチンのマニュアルです。
123
124#package man
125#Summary: Documentation for the LAPACK numerical linear algebra libraries.
126#Group: Applications/Documentation
127
128#description man
129#Documentation, in the form of man pages, for the LAPACK numerical
130#linear algebra libraries.
131
132#description man -l ja
133#Manページ形式の線型代数用数値計算ライブラリLAPACKのマニュアルです。
134
135%prep
136%setup -q
137%setup -q -D -T -a1
138%if %{?_dist_release} != "vl4"
139# using gfortran
140%patch3 -p1
141cp -f INSTALL/make.inc.gfortran make.inc
142cp -f %{SOURCE2} BLAS/SRC/Makefile
143cp -f %{SOURCE3} SRC/Makefile
144%else
145# using g77
146%patch4 -p1
147cp -f %{SOURCE102} BLAS/SRC/Makefile
148cp -f %{SOURCE103} SRC/Makefile
149%endif
150
151mv lapack-3.2.0/manpages/ manpages/
152
153#Empty
154rm -f manpages/man/manl/zbcon.l
155
156%build
157RPM_OPT_O_FLAGS=$(echo $RPM_OPT_FLAGS | sed 's|-O2|-O0|')
158%if %{?_dist_release} != "vl4"
159# using gfortran
160export FC=gfortran
161%else
162# using g77
163export FC=g77
164%endif
165
166# Build BLAS
167pushd BLAS/SRC
168FFLAGS="$RPM_OPT_O_FLAGS" make dcabs1.o
169FFLAGS="$RPM_OPT_FLAGS" CFLAGS="$RPM_OPT_FLAGS" make static
170cp libblas.a ${RPM_BUILD_DIR}/%{name}-%{version}/
171make clean
172FFLAGS="$RPM_OPT_O_FLAGS -fPIC" make dcabs1.o
173FFLAGS="$RPM_OPT_FLAGS -fPIC" CFLAGS="$RPM_OPT_FLAGS -fPIC" make shared
174cp libblas.so.%{version} ${RPM_BUILD_DIR}/%{name}-%{version}/
175popd
176
177ln -s libblas.so.%{version} libblas.so
178
179# Build the static dlamch, dsecnd, lsame, second, slamch bits
180pushd INSTALL
181make NOOPT="$RPM_OPT_O_FLAGS" OPTS="$RPM_OPT_FLAGS"
182popd
183
184# Build the static lapack library
185pushd SRC
186make FFLAGS="$RPM_OPT_FLAGS" CFLAGS="$RPM_OPT_FLAGS" static
187cp liblapack.a ${RPM_BUILD_DIR}/%{name}-%{version}/
188popd
189
190# Build the static with pic dlamch, dsecnd, lsame, second, slamch bits
191pushd INSTALL
192make clean
193make NOOPT="$RPM_OPT_O_FLAGS -fPIC" OPTS="$RPM_OPT_FLAGS -fPIC"
194popd
195
196# Build the static with pic lapack library
197pushd SRC
198make clean
199make FFLAGS="$RPM_OPT_FLAGS -fPIC" CFLAGS="$RPM_OPT_FLAGS -fPIC" static
200cp liblapack.a ${RPM_BUILD_DIR}/%{name}-%{version}/liblapack_pic.a
201popd
202
203# Build the shared dlamch, dsecnd, lsame, second, slamch bits
204pushd INSTALL
205make clean
206make NOOPT="$RPM_OPT_O_FLAGS -fPIC" OPTS="$RPM_OPT_FLAGS -fPIC"
207popd
208
209# Build the shared lapack library
210pushd SRC
211make clean
212make FFLAGS="$RPM_OPT_FLAGS -fPIC" CFLAGS="$RPM_OPT_FLAGS -fPIC" shared
213cp liblapack.so.%{version} ${RPM_BUILD_DIR}/%{name}-%{version}/
214popd
215
216cp -p %{SOURCE4} lapackqref.ps
217cp -p %{SOURCE5} blasqr.ps
218
219%install
220rm -fr $RPM_BUILD_ROOT
221mkdir -p $RPM_BUILD_ROOT%{_libdir}
222mkdir -p $RPM_BUILD_ROOT%{_mandir}/manl
223
224for f in liblapack.so.%{version} libblas.so.%{version} libblas.a liblapack.a liblapack_pic.a; do
225  cp -f $f ${RPM_BUILD_ROOT}%{_libdir}/$f
226done
227
228find manpages/blas/man/manl -type f -printf "%{_mandir}/manl/%f*\n" > blasmans
229
230# These are also in the BLAS package
231rm -f manpages/man/manl/lsame.l*
232rm -f manpages/man/manl/xerbla.l*
233find manpages/man/manl -type f -printf "%{_mandir}/manl/%f*\n" > lapackmans
234
235cp -f manpages/blas/man/manl/* ${RPM_BUILD_ROOT}%{_mandir}/manl
236cp -f manpages/man/manl/* ${RPM_BUILD_ROOT}%{_mandir}/manl
237
238cd ${RPM_BUILD_ROOT}%{_libdir}
239ln -sf liblapack.so.%{version} liblapack.so
240ln -sf liblapack.so.%{version} liblapack.so.3
241ln -sf liblapack.so.%{version} liblapack.so.3.2
242ln -sf libblas.so.%{version} libblas.so
243ln -sf libblas.so.%{version} libblas.so.3
244ln -sf libblas.so.%{version} libblas.so.3.2
245
246%post -p /sbin/ldconfig
247
248%postun -p /sbin/ldconfig
249
250%post -n blas -p /sbin/ldconfig
251
252%postun -n blas -p /sbin/ldconfig
253
254%clean
255rm -fr $RPM_BUILD_ROOT
256
257%files -f lapackmans
258%defattr(-,root,root)
259%doc README lapackqref.ps
260%{_libdir}/liblapack.so.*
261
262%files devel
263%defattr(-,root,root,-)
264%{_libdir}/liblapack.so
265
266%files static
267%defattr(-,root,root,-)
268%{_libdir}/liblapack*.a
269
270%files -n blas -f blasmans
271%defattr(-,root,root)
272%doc blasqr.ps
273%{_libdir}/libblas.so.*
274
275%files -n blas-devel
276%defattr(-,root,root,-)
277%{_libdir}/libblas.so
278
279%files -n blas-static
280%defattr(-,root,root,-)
281%{_libdir}/libblas*.a
282
283#%files -n blas-man -f blasmans
284#%defattr(-,root,root)
285
286#%files man -f lapackmans
287#%defattr(-,root,root)
288
289%changelog
290* Fri Feb 19 2010 Ryoichi INAGAKI <ryo1@bc.wakwak.com> 3.2.1-1
291- new upstream release
292- built with new toolchain
293- added SOURCE1
294
295* Wed Sep 24 2008 Ryoichi INAGAKI <ryo1@bc.wakwak.com> 3.1.1-2
296- applied new versioning policy
297- spec in UTF-8
298
299* Wed Aug 15 2007 Ryoichi INAGAKI <ryo1@bc.wakwak.com> 3.1.1-1vl3
300- rebuilt for VineSeed
301
302* Wed Aug 15 2007 Ryoichi INAGAKI <ryo1@bc.wakwak.com> 3.1.1-1vl2
303- rebuilt for VinePlus/4.0
304- added Patch4, Source102 and Source103 for compiling in g77
305- added BuildRequires: coreutils, findutils
306
307* Tue Aug  7 2007 Ryoichi INAGAKI <ryo1@bc.wakwak.com> 3.1.1-1vl1
308- new upstream release based on Fedora packages
309  * Wed Sep 14 2005 Tom "spot" Callaway <tcallawa@redhat.com> 3.0-30
310  - make -devel packages
311  - make liblapack_pic.a package
312  * Wed Aug 20 2003 Jeremy Katz <katzj@redhat.com> 3.0-22
313  - nuke -man subpackages (#97506)
314- rebuilt with gfortran
315
316* Thu Dec 26 2003 Ryoichi INAGAKI <ryo1@bc.wakwak.com> 3.0-17vl3
317- rebuild with new toolchains
318
319* Mon Oct 13 2003 Ryoichi INAGAKI <ryo1@bc.wakwak.com> 3.0-17vl2
320- rebuild with new toolchains
321
322* Thu Jul 18 2002 KOBAYASHI R. Taizo <tkoba@vinelinux.org> 3.0-17vl1
323- modified for Vine.
324
325* Fri Jun 21 2002 Tim Powers <timp@redhat.com>
326- automated rebuild
327
328* Thu May 23 2002 Tim Powers <timp@redhat.com>
329- automated rebuild
330
331* Wed May  1 2002 Trond Eivind Glomsr� <teg@redhat.com> 3.0-15
332- Rebuild
333
334* Wed Feb 27 2002 Fuhito Suguri <bitwalk@jcom.home.ne.jp>       3.0-14bw
335- rebuild for RH7.2.
336
337* Wed Jan 09 2002 Tim Powers <timp@redhat.com>
338- automated rebuild
339
340* Mon Aug 13 2001 Trond Eivind Glomsrod <teg@redhat.com> 3.0-12
341- The man-pages for xerbla and lsame were in blas-man and lapack-man (#51605)
342
343* Fri Jun  8 2001 Trond Eivind Glomsrod <teg@redhat.com>
344- Reenable optimization for IA64
345
346* Fri May 25 2001 Trond Eivind Glomsrod <teg@redhat.com>
347- Add all patches from the LAPACK site as of 2001-05-25
348- Use this workaround for IA64 instead
349- Remove SPARC workaround
350- Don't exclude IA64
351
352* Thu Dec 07 2000 Trond Eivind Glomsrod <teg@redhat.com>
353- rebuild for main distribution
354
355* Mon Nov 20 2000 Trond Eivind Glomsrod <teg@redhat.com>
356- add the LAPACK Quick Reference Guide to the docs
357- add the BLAS Quick Reference Guide to the docs
358
359* Tue Aug 01 2000 Trond Eivind Glomsrod <teg@redhat.com>
360- fix lack of ldconfig in postuninstall script
361
362* Mon Jul 24 2000 Prospector <prospector@redhat.com>
363- rebuilt
364
365* Mon Jul 10 2000 Trond Eivind Glomsrod <teg@redhat.com>
366- updated with the latest updates (new tarfile..) from netlib
367
368* Thu Jun 15 2000 Trond Eivind Glomsrod <teg@redhat.com>
369- use %%{_mandir}
370- added some flags to work around SPARC compiler bug
371
372* Wed Jan 19 2000 Tim Powers <timp@redhat.com>
373- bzipped sources to conserve space
374
375* Tue Jan  4 2000 Jeff Johnson <jbj@redhat.com>
376- build for PowerTools 6.2.
377
378* Sat Dec 25 1999 Joachim Frieben <jfrieben@hotmail.com>
379- updated to version v3.0 + update as of Tue Nov 30 1999
380
381* Sat Oct 23 1999 Joachim Frieben <jfrieben@hotmail.com>
382- updated Red Hat makefiles to v3.0
383
384* Mon Aug 2 1999 Tim Powers <timp@redhat.com>
385- updated to v3.0
386- built for 6.1
387
388* Mon Apr 12 1999 Michael Maher <mike@redhat.com>
389- built package for 6.0
390
391* Sat Oct 24 1998 Jeff Johnson <jbj@redhat.com>
392- new description/summary text.
393
394* Fri Jul 17 1998 Jeff Johnson <jbj@redhat.com>
395- repackage for powertools.
396
397* Sun Feb 15 1998 Trond Eivind Glomsrod <teg@pvv.ntnu.no>
398 [lapack-2.0-9]
399 - No code updates, just built with a customized rpm -
400   this should make dependencies right.
401
402* Sat Feb 07 1998 Trond Eivind Glomsrod <teg@pvv.ntnu.no>
403 [lapack-2.0-8]
404 - Total rewrite of the spec file
405 - Added my own makefiles - libs should build better,
406   static libs should work (and be faster than they
407        would be if they had worked earlier ;)
408 - No patch necessary anymore.
409 - Renamed lapack-blas and lapack-blas-man to
410   blas and blas-man. "Obsoletes:" tag added.
411   (oh - and as always: Dedicated to the girl I
412   love, Eline Skirnisdottir)
413
414* Sat Dec 06 1997 Trond Eivind Glomsrod <teg@pvv.ntnu.no>
415 [lapack-2.0-7]
416  - added a dependency to glibc, so people don't try with libc5
417
418* Thu Nov 20 1997 Trond Eivind Glomsrod <teg@pvv.ntnu.no>
419  [lapack-2.0-6]
420  - removed etime.c
421  - compiled with egcs, and for glibc 2.0
422
423* Sun Oct 12 1997 Trond Eivind Glomsrod <teg@pvv.ntnu.no>
424  [lapack-2.0-5]
425  - added a changelog
426  - cleaned up building of shared libs
427  - now uses a BuildRoot
428  - cleaned up the specfile
Note: See TracBrowser for help on using the repository browser.