Sisyphus repository
Last update: 1 october 2023 | SRPMs: 18631 | Visits: 37537518
en ru br
ALT Linux repos
S:2.20.0-alt2
5.0: 2.4.0b-alt1.M50.1

Group :: Sciences/Mathematics
RPM: hypre

 Main   Changelog   Spec   Patches   Sources   Download   Gear   Bugs and FR  Repocop 

%define mpiimpl mvapich2
%define mpidir %_libexecdir/%mpiimpl

Name: hypre
Version: 2.4.0b
Release: alt1.M50.1
Summary: Scalable algorithms for solving linear systems of equations
License: LGPL v2.1
Group: Sciences/Mathematics
Url: http://www.llnl.gov/casc/hypre/
Packager: Eugeny A. Rostovtsev (REAL) <real at altlinux.org>

Source: %name-%version.tar.gz
Source1: babel_files

Requires: lib%name-devel = %version-%release

BuildRequires(pre): rpm-build-compat rpm-build-python rpm-build-java /proc
BuildPreReq: gcc-fortran gcc-c++ %mpiimpl-devel /usr/bin/emacs
BuildPreReq: libatlas-devel-static liblapack-devel-static w3c-libwww-devel
BuildPreReq: babel >= 1.4.0-alt2.1
BuildPreReq: java-devel-default libchasm-devel chasm libbabel-devel-static
BuildPreReq: python-devel = %__python_version
BuildPreReq: python-module-numpy libxml2-devel python-module-libxml2
BuildPreReq: libltdl-devel-static

%description
The goal of the Scalable Linear Solvers project is to develop scalable
algorithms and software for solving large, sparse linear systems of equations on
parallel computers. The primary software product is Hypre, a library of high
performance preconditioners that features parallel multigrid methods for both
structured and unstructured grid problems. The problems of interest arise in the
simulation codes being developed at LLNL and elsewhere to study physical
phenomena in the defense, environmental, energy, and biological sciences.

%package -n lib%name-devel
Summary: Development file for Hypre
Group: Development/Other
Requires: libbabel-devel libltdl-devel-static libsuperlu-devel

%description -n lib%name-devel
The goal of the Scalable Linear Solvers project is to develop scalable
algorithms and software for solving large, sparse linear systems of equations on
parallel computers. The primary software product is Hypre, a library of high
performance preconditioners that features parallel multigrid methods for both
structured and unstructured grid problems. The problems of interest arise in the
simulation codes being developed at LLNL and elsewhere to study physical
phenomena in the defense, environmental, energy, and biological sciences.

This package contains static libraries and headers for Hepre.

%package -n lib%name-devel-doc
Summary: Development documentation for Hypre
Group: Development/Documentation
BuildArch: noarch

%description -n lib%name-devel-doc
The goal of the Scalable Linear Solvers project is to develop scalable
algorithms and software for solving large, sparse linear systems of equations on
parallel computers. The primary software product is Hypre, a library of high
performance preconditioners that features parallel multigrid methods for both
structured and unstructured grid problems. The problems of interest arise in the
simulation codes being developed at LLNL and elsewhere to study physical
phenomena in the defense, environmental, energy, and biological sciences.

This package contains development documentation for Hepre.

%prep
%setup

%build
ln -s %mpidir/bin/mpicxx mpiCC
export PATH=$PATH:%mpidir/bin:$PWD
export includedir=%_includedir
export JNI_INCLUDES="%_libexecdir/jvm/java/include"
cd src

%configure \
--with-MPI-include=%mpidir/include \
--with-MPI-libs="mpichf90 fmpich mpich mpichcxx" \
--with-MPI-lib-dirs="%mpidir/lib" \
--with-timing \
--without-examples \
--with-fei \
--with-superlu \
--with-mli \
--with-blas \
--with-lapack \
--with-babel \
--with-chasm=%prefix \
--with-MPI
sed -i 's|^\(HYPRE_INSTALL_DIR\).*|\1 = %buildroot%prefix|' \
config/Makefile.config
sed -i 's|^\(HYPRE_LIB_INSTALL\).*|\1 = %buildroot%_libdir|' \
config/Makefile.config
sed -i 's|^\(HYPRE_INC_INSTALL\).*|\1 = %buildroot%_includedir/%name|' \
config/Makefile.config
%make_build all

%install
export PATH=$PATH:%mpidir/bin:$PWD
pushd src
%make_install_std

install -d %buildroot%_docdir/lib%name-devel-doc
rm -f ../src/docs/Makefile
cp -fR ../src/docs/* %buildroot%_docdir/lib%name-devel-doc/
rm -f %buildroot%_libdir/libsidl*
popd

%files
%doc CHANGELOG COPYING.LESSER COPYRIGHT

%files -n lib%name-devel
%_libdir/*
%_includedir/*

%files -n lib%name-devel-doc
%_docdir/lib%name-devel-doc

%changelog

Full changelog you can see here

 
design & coding: Vladimir Lettiev aka crux © 2004-2005, Andrew Avramenko aka liks © 2007-2008
current maintainer: Michael Shigorin