File blitz.spec of Package blitz
#
# spec file for package blitz
#
# Copyright (c) 2011 SUSE LINUX Products GmbH, Nuernberg, Germany.
#
# All modifications and additions to the file contributed by third parties
# remain the property of their copyright owners, unless otherwise agreed
# upon. The license for this file, and modifications and additions to the
# file, is the same license as for the pristine package itself (unless the
# license for the pristine package is not an Open Source License, in which
# case the license is the MIT License). An "Open Source License" is a
# license that conforms to the Open Source Definition (Version 1.9)
# published by the Open Source Initiative.
# Please submit bugfixes or comments via http://bugs.opensuse.org/
#
Name: blitz
Version: 0.9
Release: 1
License: GPLv2
Summary: C++ template class library providing array objects for scientific computing
Url: http://www.oonumerics.org/blitz/
Group: Development/Libraries/C and C++
Source: %{name}-%{version}.tar.bz2
# PATCH-FIX-UPSTREAM blitz-gcc-4.3.patch badshah400@gmail.com --Fix compilation with gcc>=4.3
# (patch taken from fedora)
Patch0: blitz-gcc-4.3.patch
BuildRequires: gcc-c++
BuildRequires: pkgconfig
BuildRequires: texlive-latex
BuildRoot: %{_tmppath}/%{name}-%{version}-build
Requires(post): /sbin/install-info
Requires(preun):/sbin/install-info
%description
Blitz++ is a C++ class library for scientific computing which provides
performance on par with Fortran 77/90. It uses template techniques to achieve
high performance. Blitz++ provides dense arrays and vectors, random number
generators, and small vectors.
%package -n libblitz0
License: GPLv2
Summary: Shared libraries for blitz
Group: Development/Libraries/C and C++
%description -n libblitz0
Blitz++ is a C++ class library for scientific computing which provides
performance on par with Fortran 77/90. It uses template techniques to achieve
high performance. Blitz++ provides dense arrays and vectors, random number
generators, and small vectors.
This package provides shared libraries with blitz.
%package devel
License: GPLv2
Summary: Libraries, includes, etc. used to develop an application with %{name}
Group: Development/Libraries/C and C++
Requires: libblitz0 = %{version}
Requires: pkgconfig
%description devel
Blitz++ is a C++ class library for scientific computing which provides
performance on par with Fortran 77/90. It uses template techniques to achieve
high performance. Blitz++ provides dense arrays and vectors, random number
generators, and small vectors.
This package provides the header files and libraries needed to develop a blitz
application.
%package doc
License: GPLv2
Summary: The Blitz html docs
Group: Documentation/HTML
BuildArch: noarch
%description doc
Blitz++ is a C++ class library for scientific computing which provides
performance on par with Fortran 77/90. It uses template techniques to achieve
high performance. Blitz++ provides dense arrays and vectors, random number
generators, and small vectors.
This package provides HTML documentation files for the Blitz Library.
%prep
%setup -q
%patch0 -p1
%build
%configure --enable-shared --disable-static --disable-fortran \
--disable-dependency-tracking --disable-cxx-flags-preset
make
%install
make DESTDIR=%{buildroot} install
#Remove empty dirs and example files from the documnetation
rm -rf doc/doxygen/html/installdox
rm -rf examples/.deps
rm -rf examples/Makefile*
%clean
%{?buildroot:%__rm -rf %{buildroot}}
%post -n libblitz0 -p /sbin/ldconfig
%postun -n libblitz0 -p /sbin/ldconfig
%post devel
/sbin/install-info %{_infodir}/%{name}.info %{_infodir}/dir || :
%preun devel
if [ $1 = 0 ]; then
/sbin/install-info --delete %{_infodir}/%{name}.info %{_infodir}/dir || :
fi
%files -n libblitz0
%defattr(-,root,root)
%doc AUTHORS LEGAL COPYING README LICENSE
%{_libdir}/*so.*
%files devel
%defattr(-,root,root)
%doc examples
%{_libdir}/*.so
%{_libdir}/pkgconfig/*
%{_includedir}/*
%{_infodir}/*
%exclude %{_libdir}/*.la
%exclude %{_infodir}/dir
%exclude %{_libdir}/pkgconfig/blitz-uninstalled.pc
%files doc
%defattr(-,root,root,-)
%doc %{_datadir}/doc/%{name}-%{version}
%changelog