3 %bcond_without apidocs # Doxygen API documentation
4 %bcond_with tbb # Intel Threading Building Blocks atomic types
6 Summary: Blitz++ - a C++ class library for scientific computing
7 Summary(pl.UTF-8): Blitz++ - biblioteka klas C++ do obliczeń naukowych
11 License: Artistic v2.0, BSD or LGPL v3
13 #Source0Download: https://github.com/blitzpp/blitz/releases
14 Source0: https://github.com/blitzpp/blitz/archive/%{version}/%{name}-%{version}.tar.gz
15 # Source0-md5: 195873ba25ae4c10b9cd374bf42c67c2
16 Patch0: %{name}-DESTDIR.patch
17 Patch1: %{name}-doc.patch
18 Patch2: %{name}-infopage.patch
19 URL: https://github.com/blitzpp/blitz/wiki/
20 BuildRequires: autoconf >= 2.59
21 BuildRequires: automake >= 1:1.9
22 BuildRequires: blas-devel
23 BuildRequires: boost-devel
24 BuildRequires: doxygen
25 BuildRequires: fonts-TTF-bitstream-vera
26 BuildRequires: gcc-fortran
27 BuildRequires: libstdc++-devel
28 BuildRequires: libtool >= 2:1.5
29 %{?with_tbb:BuildRequires: tbb-devel}
30 BuildRequires: texinfo
31 BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
34 Blitz++ is a C++ class library for scientific computing which provides
35 performance on par with Fortran 77/90. It uses template techniques to
36 achieve high performance. The current versions provide dense arrays
37 and vectors, random number generators, and small vectors and matrices.
39 %description -l pl.UTF-8
40 Blitz++ jest biblioteką klas C++ do obliczeń naukowych o wydajności
41 dorównującej Fortranowi 77/90. Do osiągnięcia dużej wydajności używa
42 rozwiązań opartych na szablonach. Dostarcza gęstych tablic i wektorów,
43 generatorów liczb losowych oraz małych wektorów i macierzy.
46 Summary: Header files for Blitz++ library
47 Summary(pl.UTF-8): Pliki nagłówkowe biblioteki Blitz++
48 Group: Development/Libraries
49 Requires: %{name} = %{version}-%{release}
50 Requires: libstdc++-devel
53 Header files for Blitz++ library.
55 %description devel -l pl.UTF-8
56 Pliki nagłówkowe biblioteki Blitz++.
59 Summary: Static Blitz++ library
60 Summary(pl.UTF-8): Statyczna biblioteka Blitz++
61 Group: Development/Libraries
62 Requires: %{name}-devel = %{version}-%{release}
65 Static Blitz++ library.
67 %description static -l pl.UTF-8
68 Statyczna biblioteka Blitz++.
71 Summary: Documentation for Blitz++ library
72 Summary(pl.UTF-8): Dokumentacja Blitz++
76 Documentation for Blitz++ library.
78 %description doc -l pl.UTF-8
79 Dokumentacja biblioteki Blitz++.
82 Summary: Examples for Blitz++ library
83 Summary(pl.UTF-8): Przykłady Blitz++
87 Examples for Blitz++ library.
89 %description examples -l pl.UTF-8
104 # here papi is ptools-perfapi library, not the one from papi.spec
106 ac_cv_lib_papi_main=no \
107 --disable-cxx-flags-preset \
108 %{?with_apidocs:--enable-doxygen --enable-html-docs} \
109 --enable-serialization \
111 --with-boost-libdir=%{_libdir} \
112 %{?with_tbb:--with-tbb}
119 rm -rf $RPM_BUILD_ROOT
120 install -d $RPM_BUILD_ROOT%{_examplesdir}/%{name}-%{version}
122 %{__make} install install-info \
123 DESTDIR=$RPM_BUILD_ROOT
125 cp -af examples/* $RPM_BUILD_ROOT%{_examplesdir}/%{name}-%{version}
127 %{__rm} -r $RPM_BUILD_ROOT%{_docdir}/%{name}-doc-%{version}
129 # obsoleted by pkg-config
130 %{__rm} $RPM_BUILD_ROOT%{_libdir}/libblitz.la
133 rm -rf $RPM_BUILD_ROOT
135 %post -p /sbin/ldconfig
136 %postun -p /sbin/ldconfig
138 %post devel -p /sbin/postshell
139 -/usr/sbin/fix-info-dir -c %{_infodir}
141 %postun devel -p /sbin/postshell
142 -/usr/sbin/fix-info-dir -c %{_infodir}
145 %defattr(644,root,root,755)
146 %doc AUTHORS COPYRIGHT ChangeLog* LEGAL NEWS README.md
147 %attr(755,root,root) %{_libdir}/libblitz.so.*.*.*
148 %attr(755,root,root) %ghost %{_libdir}/libblitz.so.0
151 %defattr(644,root,root,755)
152 %attr(755,root,root) %{_libdir}/libblitz.so
154 %{_includedir}/random
155 %{_pkgconfigdir}/blitz.pc
156 %{_infodir}/blitz.info*
159 %defattr(644,root,root,755)
160 %{_libdir}/libblitz.a
164 %defattr(644,root,root,755)
165 %doc doc/doxygen/html/{search,*.css,*.html,*.js,*.png}
169 %defattr(644,root,root,755)
170 %{_examplesdir}/%{name}-%{version}