libcircle/libcircle.spec

144 lines
3.6 KiB
RPMSpec
Raw Normal View History

2017-12-07 18:31:21 +00:00
Name: libcircle
Version: 0.2.1
Release: 0.3rc1%{?dist}
%global myversion 0.2.1-rc.1
Source: https://github.com/hpc/libcircle/releases/download/%{myversion}/%{name}-%{myversion}.tar.gz
URL: http://hpc.github.io/libcircle/
Summary: A library used to distribute workloads
License: BSD
BuildRequires: check-devel
BuildRequires: doxygen
BuildRequires: graphviz
%description
A simple interface for processing workloads using an automatically
distributed global queue.
%package openmpi
Summary: Libcircle Open MPI libraries
BuildRequires: openmpi-devel
%description openmpi
A simple interface for processing workloads using an automatically
distributed global queue.
libcircle compiled with Open MPI
%package mpich
Summary: Libcircle MPICH libraries
BuildRequires: mpich-devel
%description mpich
A simple interface for processing workloads using an automatically
distributed global queue.
libcircle compiled with MPICH
%package doc
Summary: Documuation for libcircle
BuildArch: noarch
%description doc
A simple interface for processing workloads using an automatically
distributed global queue.
This package contain documenation for libcircle
%package openmpi-devel
Summary: Development headers and libraries for Open MPI libcircle
Requires: %{name}-openmpi%{?_isa} = %{version}-%{release}
%description openmpi-devel
A simple interface for processing workloads using an automatically
distributed global queue.
This package contains development headers and libraries for Open
MPI ibcircle
%package mpich-devel
Summary: Development headers and libraries for MPICH libcircle
Requires: %{name}-mpich%{?_isa} = %{version}-%{release}
%description mpich-devel
A simple interface for processing workloads using an automatically
distributed global queue.
This package contains development headers and libraries for
MPICH ibcircle
%prep
%setup -q -n %{name}-%{myversion}
%build
mkdir openmpi mpich
%global dconfigure %(printf %%s '%configure' | sed 's!\./configure!../configure!g')
pushd openmpi
%{_openmpi_load}
%dconfigure --enable-doxygen --enable-tests --disable-static --libdir="${MPI_LIB}" --includedir="${MPI_INCLUDE}"
%make_build
%{_openmpi_unload}
popd
pushd mpich
%{_mpich_load}
%dconfigure --enable-tests --disable-static --libdir="${MPI_LIB}" --includedir="${MPI_INCLUDE}"
%make_build
%{_mpich_unload}
popd
%install
%make_install -C openmpi
%make_install -C mpich
rm %{buildroot}%{_libdir}/*mpi*/lib/*.la
cd openmpi
mkdir -p %{buildroot}%{_docdir}/%{name}
cp -r doc/html/* %{buildroot}%{_docdir}/%{name}
%check
%{_openmpi_load}
make -C openmpi check
%{_openmpi_unload}
%{_mpich_load}
make -C mpich check
%{_mpich_unload}
# MPI subpackages don't need the ldconfig magic. They are hidden by
# default, in MPI back-end-specific directory, and only show to the
# user after the relevant environment module has been loaded.
# rpmlint will report that as errors, but it is fine.
%files openmpi
%license COPYING AUTHORS
%{_libdir}/openmpi*/lib/%{name}.so.*
%files mpich
%license COPYING AUTHORS
%{_libdir}/mpich*/lib/%{name}.so.*
%files openmpi-devel
%{_libdir}/openmpi*/lib/%{name}.so
%{_libdir}/openmpi*/lib/pkgconfig/%{name}.pc
%{_includedir}/openmpi*/%{name}.h
%files mpich-devel
%{_libdir}/mpich*/lib/%{name}.so
%{_libdir}/mpich*/lib/pkgconfig/%{name}.pc
%{_includedir}/mpich*/%{name}.h
%doc
%{_docdir}/%{name}
%changelog
* Tue Dec 05 2017 Christoph Junghans <junghans@votca.org> - 0.2.1-0.3rc1
- Comments from #1513733
* Wed Nov 15 2017 Christoph Junghans <junghans@votca.org> - 0.2.1-0.2rc1
- Split devel pacakge
* Wed Nov 15 2017 Christoph Junghans <junghans@votca.org> - 0.2.1-0.1rc1
- First release.