File parmetis.spec of Package parmetis
# vim: set sw=4 ts=4 et nu:
# norootforbuild
Name: parmetis
Version: 3.1.1
Release: 0
Summary: Parallel Library for Partitioning
# http://glaros.dtc.umn.edu/gkhome/fetch/sw/parmetis/ParMetis-%{version}.tar.gz
Source: ParMetis-%{version}.tar.bz2
URL: http://glaros.dtc.umn.edu/gkhome/metis/parmetis/
Group: Productivity/Scientific/Physics
License: Other; see package
BuildRoot: %{_tmppath}/build-%{name}-%{version}
BuildRequires: openmpi-devel >= 1.4.1
BuildRequires: gcc make glibc-devel pkgconfig
%description
ParMETIS is an MPI-based parallel library that implements a variety of
algorithms for partitioning unstructured graphs, meshes, and for computing
fill-reducing orderings of sparse matrices.
ParMETIS extends the functionality provided by METIS and includes routines that
are especially suited for parallel AMR computations and large scale numerical
simulations.
The algorithms implemented in ParMETIS are based on the parallel multilevel
k-way graph-partitioning, adaptive repartitioning, and parallel
multi-constrained partitioning schemes developed in our lab.
%package doc
Summary: Parallel Library for Partitioning
Group: Productivity/Scientific/Physics
%description doc
ParMETIS is an MPI-based parallel library that implements a variety of
algorithms for partitioning unstructured graphs, meshes, and for computing
fill-reducing orderings of sparse matrices.
%package devel
Summary: Parallel Library for Partitioning
Group: Development/Libraries/C and C++
Requires: openmpi-devel >= 1.4.1
%description devel
ParMETIS is an MPI-based parallel library that implements a variety of
algorithms for partitioning unstructured graphs, meshes, and for computing
fill-reducing orderings of sparse matrices.
%prep
%setup -q -n "ParMetis-%{version}"
%build
for d in METISLib ParMETISLib Programs; do
%__make %{?jobs:-j%{jobs}} \
CC="mpicc" \
OPTFLAGS="%{optflags}" \
LIBDIR="-L%{_libdir}" \
-C "$d"
done
%install
%__install -d "%{buildroot}%{_bindir}"
%__install -m0755 Graphs/{parmetis,pometis} "%{buildroot}%{_bindir}/"
%__install -d "%{buildroot}%{_libdir}"
%__install -m0644 lib*.a "%{buildroot}%{_libdir}/"
%__install -d "%{buildroot}%{_includedir}"
%__install -m0644 parmetis.h "%{buildroot}%{_includedir}/"
%__install -d "%{buildroot}%{_docdir}/%{name}"
%__install -m0644 CHANGES COPYRIGHT README Manual/*.pdf "%{buildroot}%{_docdir}/%{name}/"
%clean
%{?buildroot:%__rm -rf "%{buildroot}"}
%files
%defattr(-,root,root)
%dir %{_docdir}/%{name}
%doc %{_docdir}/%{name}/CHANGES
%doc %{_docdir}/%{name}/COPYRIGHT
%doc %{_docdir}/%{name}/README
%{_bindir}/parmetis
%{_bindir}/pometis
%files devel
%defattr(-,root,root)
%{_includedir}/parmetis.h
%{_libdir}/libmetis.a
%{_libdir}/libparmetis.a
%files doc
%defattr(-,root,root)
%dir %{_docdir}/%{name}
%doc %{_docdir}/%{name}/*.pdf