Dominique Leuenberger 2017-07-21 20:35:38 +00:00 committed by Git OBS Bridge
commit b3ad24fa06
2 changed files with 94 additions and 91 deletions

View File

@ -1,3 +1,11 @@
-------------------------------------------------------------------
Mon Jul 10 23:33:01 UTC 2017 - jengelh@inai.de
- Fix RPM groups.
- Trim pointless trailing line whitespace from descriptions.
% must be encoded as %%.
- Trim past-time history from suistesparse_config description.
-------------------------------------------------------------------
Sun Jun 11 01:49:03 UTC 2017 - toddrme2178@gmail.com

View File

@ -19,7 +19,7 @@
Name: suitesparse
Summary: A collection of sparse matrix libraries
License: GPL-2.0+ and LGPL-2.1+
Group: Development/Libraries
Group: Development/Libraries/C and C++
Version: 4.5.5
Release: 0
Url: http://faculty.cse.tamu.edu/davis/SuiteSparse/
@ -30,9 +30,9 @@ BuildRoot: %{_tmppath}/%{name}-%{version}-build
BuildRequires: gcc-c++
BuildRequires: gcc-fortran
BuildRequires: lapack-devel
BuildRequires: openmpi-devel
BuildRequires: openblas-devel
BuildRequires: metis-devel
BuildRequires: openblas-devel
BuildRequires: openmpi-devel
%define amdver 2.4.6
%define amdso 2_4_6
%define btfver 1.2.6
@ -82,13 +82,10 @@ BuildRequires: metis-devel
suitesparse is a collection of libraries for computations involving sparse
matrices.
%package devel
%package devel
Summary: Development headers for SuiteSparse
License: GPL-2.0+ and LGPL-2.1+
Group: Development/Libraries
Requires: openmpi-devel
Requires: openblas-devel
Requires: metis-devel
Group: Development/Libraries/C and C++
Requires: %{amdlib} = %{amdver}
Requires: %{btflib} = %{btfver}
Requires: %{camdlib} = %{camdver}
@ -104,6 +101,9 @@ Requires: %{ldllib} = %{ldlver}
Requires: %{rbiolib} = %{rbiover}
Requires: %{spqrlib} = %{spqrver}
Requires: %{umfpacklib} = %{umfpackver}
Requires: metis-devel
Requires: openblas-devel
Requires: openmpi-devel
# make sure developers can find these packages
Provides: suitesparse-common-devel = %{version}
Obsoletes: suitesparse-common-devel < %{version}
@ -145,30 +145,16 @@ Provides: UFconfig-devel = %{configver}
Obsoletes: UFconfig-devel < %{configver}
%description devel
suitesparse is a collection of libraries for computations involving
suitesparse is a collection of libraries for computations involving
sparse matrices.
The suitesparse-devel package contains files needed for developing
applications which use the suitesparse libraries.
It also includes SuiteSparse_config, which is required by nearly all
sparse matrix packages that I author or co-author. These include
SuiteSparseQR, AMD, COLAMD, CCOLAMD, CHOLMOD, KLU, BTF, LDL,
CXSparse, RBio, and UMFPACK. It is not required by CSparse, which is
a stand-alone package. SuiteSparse_config (prior to version 4.0.0)
was named UFconfig.
SuiteSparse_config contains a configuration file for "make"
(SuiteSparse_config.mk) and an include file (SuiteSparse_config.h).
Also included in SuiteSparse_config is a replacement for the
BLAS/LAPACK xerbla routine that does not print a warning message
(helpful if you don't want to link the entire Fortran I/O library
into a C application).
%package devel-static
Summary: Static version of SuiteSparse libraries
License: GPL-2.0+ and LGPL-2.1+
Group: Development/Libraries
Group: Development/Libraries/C and C++
Requires: %{name}-devel = %{version}
%description devel-static
@ -180,12 +166,12 @@ Version: %{amdver}
Release: 0
Summary: Symmetric Approximate Minimum Degree
License: LGPL-2.1+
Group: Development/Libraries
Group: System/Libraries
%description -n %{amdlib}
AMD is a set of routines for ordering a sparse matrix prior to
Cholesky factorization (or for LU factorization with diagonal
pivoting). There are versions in both C and Fortran. A MATLAB
AMD is a set of routines for ordering a sparse matrix prior to
Cholesky factorization (or for LU factorization with diagonal
pivoting). There are versions in both C and Fortran. A MATLAB
interface is provided.
Note that this software has nothing to do with AMD the company.
@ -197,10 +183,10 @@ Version: %{btfver}
Release: 0
Summary: Permutation to Block Triangular Form
License: LGPL-2.1+
Group: Development/Libraries
Group: System/Libraries
%description -n %{btflib}
BTF permutes an unsymmetric matrix (square or rectangular) into its
BTF permutes an unsymmetric matrix (square or rectangular) into its
block upper triangular form (more precisely, it computes a Dulmage-
Mendelsohn decomposition).
@ -211,12 +197,12 @@ Version: %{camdver}
Release: 0
Summary: Symmetric Approximate Minimum Degree
License: LGPL-2.1+
Group: Development/Libraries
Group: System/Libraries
%description -n %{camdlib}
CAMD is a set of routines for ordering a sparse matrix prior to
Cholesky factorization (or for LU factorization with diagonal
pivoting). There are versions in both C and Fortran. A MATLAB
CAMD is a set of routines for ordering a sparse matrix prior to
Cholesky factorization (or for LU factorization with diagonal
pivoting). There are versions in both C and Fortran. A MATLAB
interface is provided.
CAMD is part of the SuiteSparse sparse matrix suite.
@ -226,10 +212,10 @@ Version: %{ccolamdver}
Release: 0
Summary: Constrained Column Approximate Minimum Degree
License: LGPL-2.1+
Group: Development/Libraries
Group: System/Libraries
%description -n %{ccolamdlib}
CCOLAMD computes an column approximate minimum degree ordering
CCOLAMD computes an column approximate minimum degree ordering
algorithm, (like COLAMD), but it can also be given a set of ordering
constraints. CCOLAMD is required by the CHOLMOD package.
@ -239,26 +225,26 @@ CCOLAMD is part of the SuiteSparse sparse matrix suite.
Version: %{cholmodver}
Release: 0
Summary: Supernodal Sparse Cholesky Factorization and Update/Downdate
License: GPL-2.0 and LGPL-2.1
Group: Development/Libraries
#bnc746867 cholmod from suitesparse should be GPL-2.0 and/or LGPL-2.0 licensed
License: GPL-2.0 and LGPL-2.1
Group: System/Libraries
%description -n %{cholmodlib}
CHOLMOD is a set of ANSI C routines for sparse Cholesky factorization
and update/downdate. A MATLAB interface is provided.
The performance of CHOLMOD was compared with 10 other codes in a
The performance of CHOLMOD was compared with 10 other codes in a
paper by Nick Gould, Yifan Hu, and Jennifer Scott. see also their raw
data. Comparing BCSLIB-EXT, CHOLMOD, MA57, MUMPS, Oblio, PARDISO,
SPOOLES, SPRSBLKLLT, TAUCS, UMFPACK, and WSMP, on 87 large symmetric
positive definite matrices, they found CHOLMOD to be fastest for 42
of the 87 matrices. Its run time is either fastest or within 10% of
the fastest for 73 out of 87 matrices. Considering just the larger
matrices, it is either the fastest or within 10% of the fastest for
40 out of 42 matrices. It uses the least amount of memory (or within
10% of the least) for 35 of the 42 larger matrices. Jennifer Scott
and Yifan Hu also discuss the design considerations for a sparse
direct code.
data. Comparing BCSLIB-EXT, CHOLMOD, MA57, MUMPS, Oblio, PARDISO,
SPOOLES, SPRSBLKLLT, TAUCS, UMFPACK, and WSMP, on 87 large symmetric
positive definite matrices, they found CHOLMOD to be fastest for 42
of the 87 matrices. Its run time is either fastest or within 10%% of
the fastest for 73 out of 87 matrices. Considering just the larger
matrices, it is either the fastest or within 10%% of the fastest for
40 out of 42 matrices. It uses the least amount of memory (or within
10%% of the least) for 35 of the 42 larger matrices. Jennifer Scott
and Yifan Hu also discuss the design considerations for a sparse
direct code.
CHOLMOD is part of the SuiteSparse sparse matrix suite.
@ -267,19 +253,19 @@ Version: %{colamdver}
Release: 0
Summary: Column Approximate Minimum Degree
License: LGPL-2.1+
Group: Development/Libraries
Group: System/Libraries
%description -n %{colamdlib}
The COLAMD column approximate minimum degree ordering algorithm
computes a permutation vector P such that the LU factorization of
A (:,P) tends to be sparser than that of A. The Cholesky
factorization of (A (:,P))'*(A (:,P)) will also tend to be sparser
than that of A'*A. SYMAMD is a symmetric minimum degree ordering
than that of A'*A. SYMAMD is a symmetric minimum degree ordering
method based on COLAMD, available as a MATLAB-callable function. It
constructs a matrix M such that M'*M has the same pattern as A, and
then uses COLAMD to compute a column ordering of M. Colamd and symamd
tend to be faster and generate better orderings than their MATLAB
counterparts, colmmd and symmmd.
counterparts, colmmd and symmmd.
COLAMD is part of the SuiteSparse sparse matrix suite.
@ -288,24 +274,24 @@ Version: %{csparsever}
Release: 0
Summary: Instructional Sparse Matrix Package
License: LGPL-2.1+
Group: Development/Libraries
Group: System/Libraries
%description -n %{csparselib}
CSparse is a small yet feature-rich sparse matrix package written
specifically for a book. The purpose of the package is to demonstrate
a wide range of sparse matrix algorithms in as concise a code as
possible. CSparse is about 2,200 lines long (excluding its MATLAB
interface, demo codes, and test codes), yet it contains algorithms
(either asympotical optimal or fast in practice) for all of the
following functions described below. A MATLAB interface is included.
interface, demo codes, and test codes), yet it contains algorithms
(either asympotical optimal or fast in practice) for all of the
following functions described below. A MATLAB interface is included.
Note that the LU and Cholesky factorization algorithms are not as
fast as UMFPACK or CHOLMOD. Other functions have comparable
performance as their MATLAB equivalents (some are faster).
performance as their MATLAB equivalents (some are faster).
Documentation is very terse in the code; it is fully documented in
the book. Some indication of how to call the C functions in CSparse
is given by the CSparse/MATLAB/*.m help files.
is given by the CSparse/MATLAB/*.m help files.
CSparse is part of the SuiteSparse sparse matrix suite.
@ -314,7 +300,7 @@ Version: %{cxsparsever}
Release: 0
Summary: An extended version of CSparse
License: LGPL-2.1+
Group: Development/Libraries
Group: System/Libraries
%description -n %{cxsparselib}
CXSparse is an extended version of CSparse, with support for double
@ -327,7 +313,7 @@ Version: %{kluver}
Release: 0
Summary: Sparse LU Factorization, for Circuit Simulation
License: LGPL-2.1+
Group: Development/Libraries
Group: System/Libraries
%description -n %{klulib}
KLU is a sparse LU factorization algorithm well-suited for use in
@ -342,18 +328,18 @@ Version: %{ldlver}
Release: 0
Summary: A Simple LDL^T Factorization
License: LGPL-2.1+
Group: Development/Libraries
Group: System/Libraries
%description -n %{ldllib}
LDL is a set of concise routines for factorizing symmetric positive-
definite sparse matrices, with some applicability to symmetric
definite sparse matrices, with some applicability to symmetric
indefinite matrices. Its primary purpose is to illustrate much of the
basic theory of sparse matrix algorithms in as concise a code as
possible, including an elegant new method of sparse symmetric
factorization that computes the factorization row-by-row but stores
it column-by-column. The entire symbolic and numeric factorization
consists of a total of only 49 lines of code. The package is written
in C, and includes a MATLAB interface.
basic theory of sparse matrix algorithms in as concise a code as
possible, including an elegant new method of sparse symmetric
factorization that computes the factorization row-by-row but stores
it column-by-column. The entire symbolic and numeric factorization
consists of a total of only 49 lines of code. The package is written
in C, and includes a MATLAB interface.
LDL is part of the SuiteSparse sparse matrix suite.
@ -362,13 +348,13 @@ Version: %{rbiover}
Release: 0
Summary: MATLAB Toolbox for Reading/Writing Sparse Matrices
License: GPL-2.0+
Group: Development/Libraries
Group: System/Libraries
%description -n %{rbiolib}
RBio is a MATLAB toolbox for reading/writing sparse matrices in the
Rutherford/Boeing format, and for reading/writing problems in the UF
Sparse Matrix Collection from/to a set of files in a directory.
Version 2.0+ is written in C.
RBio is a MATLAB toolbox for reading/writing sparse matrices in the
Rutherford/Boeing format, and for reading/writing problems in the UF
Sparse Matrix Collection from/to a set of files in a directory.
Version 2.0+ is written in C.
RBio is part of the SuiteSparse sparse matrix suite.
@ -377,16 +363,16 @@ Version: %{spqrver}
Release: 0
Summary: Multifrontal Sparse QR
License: GPL-2.0+
Group: Development/Libraries
Group: System/Libraries
%description -n %{spqrlib}
SuiteSparseQR is an implementation of the multifrontal sparse QR
factorization method. Parallelism is exploited both in the BLAS and
across different frontal matrices using Intel's Threading Building
Blocks, a shared-memory programming model for modern multicore
architectures. It can obtain a substantial fraction of the
theoretical peak performance of a multicore computer. The package is
written in C++ with user interfaces for MATLAB, C, and C++.
SuiteSparseQR is an implementation of the multifrontal sparse QR
factorization method. Parallelism is exploited both in the BLAS and
across different frontal matrices using Intel's Threading Building
Blocks, a shared-memory programming model for modern multicore
architectures. It can obtain a substantial fraction of the
theoretical peak performance of a multicore computer. The package is
written in C++ with user interfaces for MATLAB, C, and C++.
SuiteSparseQR is part of the SuiteSparse sparse matrix suite.
@ -395,16 +381,16 @@ Version: %{umfpackver}
Release: 0
Summary: Sparse Multifrontal LU Factorization
License: GPL-2.0+
Group: Development/Libraries
Group: System/Libraries
%description -n %{umfpacklib}
UMFPACK is a set of routines for solving unsymmetric sparse linear
systems, Ax=b, using the Unsymmetric MultiFrontal method. Written in
ANSI/ISO C, with a MATLAB (Version 6.0 and later) interface. Appears
UMFPACK is a set of routines for solving unsymmetric sparse linear
systems, Ax=b, using the Unsymmetric MultiFrontal method. Written in
ANSI/ISO C, with a MATLAB (Version 6.0 and later) interface. Appears
as a built-in routine (for lu, backslash, and forward slash) in M
ATLAB. Includes a MATLAB interface, a C-callable interface, and a
Fortran-callable interface. Note that "UMFPACK" is pronounced in two
syllables, "Umph Pack". It is not "You Em Ef Pack".
ATLAB. Includes a MATLAB interface, a C-callable interface, and a
Fortran-callable interface. Note that "UMFPACK" is pronounced in two
syllables, "Umph Pack". It is not "You Em Ef Pack".
UMFPACK is part of the SuiteSparse sparse matrix suite.
@ -413,15 +399,24 @@ Version: %{configver}
Release: 0
Summary: Common configurations for all packages in SuiteSparse
License: GPL-2.0+
Group: Development/Libraries
Group: System/Libraries
Provides: libufconfig = %{configver}
Obsoletes: libufconfig < %{configver}
Provides: libUFconfig = %{configver}
Obsoletes: libUFconfig < %{configver}
%description -n %{configlib}
SuiteSparse_config is required by nearly all sparse matrix packages that I author or co-author. These include SuiteSparseQR, AMD, COLAMD, CCOLAMD, CHOLMOD, KLU, BTF, LDL, CXSparse, RBio, and UMFPACK. It is not required by CSparse, which is a stand-alone package. SuiteSparse_config (prior to version 4.0.0) was named UFconfig.
SuiteSparse_config contains a configuration file for "make" (SuiteSparse_config.mk) and an include file (SuiteSparse_config.h). Also included in SuiteSparse_config is a replacement for the BLAS/LAPACK xerbla routine that does not print a warning message (helpful if you don't want to link the entire Fortran I/O library into a C application).
SuiteSparse_config is required by a number of sparse matrix packages,
including SuiteSparseQR, AMD, COLAMD, CCOLAMD, CHOLMOD, KLU, BTF,
LDL, CXSparse, RBio, and UMFPACK. It is not required by CSparse,
which is a stand-alone package.
SuiteSparse_config contains a configuration file for "make"
(SuiteSparse_config.mk) and an include file (SuiteSparse_config.h).
Also included in SuiteSparse_config is a replacement for the
BLAS/LAPACK xerbla routine that does not print a warning message
(helpful if you don't want to link the entire Fortran I/O library
into a C application).
SuiteSparse_config is part of the SuiteSparse sparse matrix suite.