f5ad38
%global amd_version_major 2
f5ad38
%global btf_version_major 1
f5ad38
%global camd_version_major 2
f5ad38
%global ccolamd_version_major 2
f5ad38
%global cholmod_version_major 3
f5ad38
%global colamd_version_major 2
f5ad38
%global csparse_version_major 3
f5ad38
%global cxsparse_version_major 3
f5ad38
%global klu_version_major 1
f5ad38
%global ldl_version_major 2
f5ad38
%global rbio_version_major 2
f5ad38
%global spqr_version_major 2
f5ad38
%global SuiteSparse_config_major 5
f5ad38
%global umfpack_version_major 5
f5ad38
f5ad38
### CXSparse is a superset of CSparse, and the two share common header
f5ad38
### names, so it does not make sense to build both. CXSparse is built
f5ad38
### by default, but CSparse can be built instead by defining
f5ad38
### enable_csparse as 1 below.
f5ad38
%global enable_csparse 0
f5ad38
f5ad38
# Whether to build a separate version of libraries linked against an ILP64 BLAS
f5ad38
%if 0%{?__isa_bits} == 64
f5ad38
%global build64 1
f5ad38
%endif
f5ad38
f5ad38
%if 0%{?fedora} >= 33
f5ad38
%global blaslib flexiblas
f5ad38
%else
f5ad38
%global blaslib openblas
f5ad38
%endif
f5ad38
 
f5ad38
Name:           suitesparse
f5ad38
Version:        5.4.0
f055b7
Release:        10%{?dist}
f5ad38
Summary:        A collection of sparse matrix libraries
f5ad38
f5ad38
License:        (LGPLv2+ or BSD) and LGPLv2+ and GPLv2+
f5ad38
URL:            http://faculty.cse.tamu.edu/davis/suitesparse.html
f5ad38
Source0:        http://faculty.cse.tamu.edu/davis/SuiteSparse/SuiteSparse-%{version}.tar.gz
f5ad38
f5ad38
BuildRequires: make
f5ad38
BuildRequires:  gcc
f5ad38
BuildRequires:  gcc-c++
f5ad38
f5ad38
#BuildRequires:  metis-devel
f5ad38
BuildRequires:  %{blaslib}-devel
f5ad38
# openblas is still required for 64-bit suffixed versions
f5ad38
BuildRequires:  openblas-devel
f5ad38
BuildRequires:  tbb-devel
f5ad38
BuildRequires:  hardlink
f5ad38
f5ad38
Obsoletes:      umfpack <= 5.0.1
f5ad38
Obsoletes:      ufsparse <= 2.1.1
f5ad38
Provides:       ufsparse = %{version}-%{release}
f5ad38
f055b7
Patch0001:      0001-build-don-t-set-RPATH-on-Linux.patch
f055b7
f5ad38
%description
f5ad38
suitesparse is a collection of libraries for computations involving sparse
f5ad38
matrices.  The package includes the following libraries:
f5ad38
  AMD                 approximate minimum degree ordering
f5ad38
  BTF                 permutation to block triangular form (beta)
f5ad38
  CAMD                constrained approximate minimum degree ordering
f5ad38
  COLAMD              column approximate minimum degree ordering
f5ad38
  CCOLAMD             constrained column approximate minimum degree ordering
f5ad38
  CHOLMOD             sparse Cholesky factorization
f5ad38
  CSparse             a concise sparse matrix package
f5ad38
  CXSparse            CSparse extended: complex matrix, int and long int support
f5ad38
  KLU                 sparse LU factorization, primarily for circuit simulation
f5ad38
  LDL                 a simple LDL factorization
f5ad38
  SQPR                a multithread, multifrontal, rank-revealing sparse QR
f5ad38
                      factorization method
f5ad38
  UMFPACK             sparse LU factorization
f5ad38
  SuiteSparse_config  configuration file for all the above packages.
f5ad38
  RBio                read/write files in Rutherford/Boeing format
f5ad38
f5ad38
f5ad38
%package devel
f5ad38
Summary:        Development headers for SuiteSparse
f5ad38
Requires:       %{name} = %{version}-%{release}
f5ad38
Obsoletes:      umfpack-devel <= 5.0.1
f5ad38
Obsoletes:      ufsparse-devel <= 2.1.1
f5ad38
Provides:       ufsparse-devel = %{version}-%{release}
f5ad38
f5ad38
%description devel
f5ad38
The suitesparse-devel package contains files needed for developing
f5ad38
applications which use the suitesparse libraries.
f5ad38
f5ad38
f5ad38
%package static
f5ad38
Summary:        Static version of SuiteSparse libraries
f5ad38
Requires:       %{name}-devel = %{version}-%{release}
f5ad38
Provides:       ufsparse-static = %{version}-%{release}
f5ad38
f5ad38
%description static
f5ad38
The suitesparse-static package contains the statically linkable
f5ad38
version of the suitesparse libraries.
f5ad38
f5ad38
f5ad38
%if 0%{?build64}
f5ad38
%package -n %{name}64
f5ad38
Summary:        A collection of sparse matrix libraries (ILP64 version)
f5ad38
f5ad38
%description -n %{name}64
f5ad38
The suitesparse collection compiled against an ILP64 BLAS library.
f5ad38
f5ad38
f5ad38
%package -n %{name}64-devel
f5ad38
Summary:        Development headers for SuiteSparse (ILP64 version)
f5ad38
Requires:       %{name}-devel = %{version}-%{release}
f5ad38
Requires:       %{name}64 = %{version}-%{release}
f5ad38
f5ad38
%description -n %{name}64-devel
f5ad38
The suitesparse64-devel package contains files needed for developing
f5ad38
applications which use the suitesparse libraries (ILP64 version).
f5ad38
f5ad38
f5ad38
%package -n %{name}64-static
f5ad38
Summary:        Static version of SuiteSparse libraries (ILP64 version)
f5ad38
Requires:       %{name}-devel = %{version}-%{release}
f5ad38
f5ad38
%description -n %{name}64-static
f5ad38
The suitesparse64-static package contains the statically linkable
f5ad38
version of the suitesparse libraries (ILP64 version).
f5ad38
f5ad38
f5ad38
%package -n %{name}64_
f5ad38
Summary:        A collection of sparse matrix libraries (ILP64 version)
f5ad38
f5ad38
%description -n %{name}64_
f5ad38
The suitesparse collection compiled against an ILP64 BLAS library.
f5ad38
f5ad38
f5ad38
%package -n %{name}64_-devel
f5ad38
Summary:        Development headers for SuiteSparse (ILP64 version)
f5ad38
Requires:       %{name}-devel = %{version}-%{release}
f5ad38
Requires:       %{name}64_ = %{version}-%{release}
f5ad38
f5ad38
%description -n %{name}64_-devel
f5ad38
The suitesparse64_-devel package contains files needed for developing
f5ad38
applications which use the suitesparse libraries (ILP64 version) compiled
f5ad38
against a BLAS library with the "64_" symbol name suffix (see openblas-*64_
f5ad38
packages).
f5ad38
f5ad38
f5ad38
%package -n %{name}64_-static
f5ad38
Summary:        Static version of SuiteSparse libraries (ILP64 version)
f5ad38
Requires:       %{name}-devel = %{version}-%{release}
f5ad38
f5ad38
%description -n %{name}64_-static
f5ad38
The suitesparse64_-static package contains the statically linkable
f5ad38
version of the suitesparse libraries (ILP64 version) compiled against a
f5ad38
BLAS library with the "64_" symbol name suffix (see openblas-*64_ packages).
f5ad38
%endif
f5ad38
f5ad38
f5ad38
%package doc
f5ad38
Summary:        Documentation files for SuiteSparse
f5ad38
BuildArch:      noarch
f5ad38
Requires:       %{name} = %{version}-%{release}
f5ad38
f5ad38
%description doc
f5ad38
This package contains documentation files for %{name}.
f5ad38
f5ad38
f5ad38
%prep
f5ad38
%setup -c -q
f055b7
f055b7
%patch1 -p1
f055b7
f5ad38
pushd SuiteSparse
f5ad38
  # Remove bundled metis
f5ad38
  rm -r metis*
f5ad38
  # Makefiles look for metis.h specifically
f5ad38
  #ln -s %%{_includedir}/metis/*.h include/
f5ad38
f5ad38
  # Fix pragma ivdep so gcc understands it.
f5ad38
  for fil in $(grep -Frl 'pragma ivdep' .); do
f5ad38
    sed -i.orig 's/pragma ivdep/pragma GCC ivdep/' $fil
f5ad38
    touch -r ${fil}.orig $fil
f5ad38
    rm -f ${fil}.orig
f5ad38
  done
f5ad38
f5ad38
  # drop non-standard -O3 and duplicate -fexceptions from default CFLAGS
f5ad38
  sed -i -e '/^  CF =/ s/ -O3 -fexceptions//' SuiteSparse_config/SuiteSparse_config.mk
f5ad38
f5ad38
  # Allow adding a suffix to the library name
f5ad38
  sed -i -e '/SO.*=/s/$(LIBRARY).so/$(LIBRARY)$(LIBRARY_SUFFIX).so/' \
f5ad38
         -e '/AR_TARGET *=/s/$(LIBRARY).a/$(LIBRARY)$(LIBRARY_SUFFIX).a/' SuiteSparse_config/SuiteSparse_config.mk
f5ad38
  sed -i -e 's/-l\(amd\|btf\|camd\|ccolamd\|cholmod\|colamd\|csparse\|cxsparse\|klu\|ldl\|rbio\|spqr\|suitesparseconfig\|umfpack\)/-l\1$(LIBRARY_SUFFIX)/g' \
f5ad38
    $(find -name Makefile\* -o -name \*.mk)
f5ad38
popd
f5ad38
%if 0%{?build64}
f5ad38
cp -a SuiteSparse SuiteSparse64
f5ad38
cp -a SuiteSparse SuiteSparse64_
f5ad38
%endif
f5ad38
f5ad38
%build
f5ad38
export AUTOCC=no
f5ad38
export CC=gcc
f5ad38
f5ad38
for build in SuiteSparse %{?build64:SuiteSparse64 SuiteSparse64_}
f5ad38
do
f5ad38
  pushd $build
f5ad38
f5ad38
  # TODO - Try to use upstream makefile - will build more components
f5ad38
  mkdir -p Doc/{AMD,BTF,CAMD,CCOLAMD,CHOLMOD,COLAMD,KLU,LDL,UMFPACK,SPQR,RBio} Include
f5ad38
f5ad38
  export CFLAGS="$RPM_OPT_FLAGS"
f055b7
  export LDFLAGS="-Wl,-z,now"
f5ad38
  export LAPACK=""
f5ad38
  # Set flags for ILP64 build
f5ad38
  if [ $build = SuiteSparse64 ]
f5ad38
  then
f5ad38
     export CFLAGS="$CFLAGS -DBLAS64"
f5ad38
     export BLAS=-l%{blaslib}64
f5ad38
     export LIBRARY_SUFFIX=64
f5ad38
  elif [ $build = SuiteSparse64_ ]
f5ad38
  then
f5ad38
     export CFLAGS="$CFLAGS -DBLAS64 -DSUN64"
f5ad38
     export BLAS=-lopenblas64_
f5ad38
     export LIBRARY_SUFFIX=64_
f5ad38
  else
f5ad38
     export BLAS=-l%{blaslib}
f5ad38
  fi   
f5ad38
   
f5ad38
  # SuiteSparse_config needs to come first
f5ad38
  pushd SuiteSparse_config
f5ad38
    %make_build CFLAGS="$CFLAGS" BLAS="$BLAS" LIBRARY_SUFFIX="$LIBRARY_SUFFIX"
f5ad38
    cp -p *.h ../Include
f5ad38
  popd
f5ad38
f5ad38
  pushd AMD
f5ad38
    pushd Lib
f5ad38
      %make_build CFLAGS="$CFLAGS" BLAS="$BLAS" LIBRARY_SUFFIX="$LIBRARY_SUFFIX"
f5ad38
    popd
f5ad38
    cp -p Include/*.h ../Include
f5ad38
    cp -p README.txt Doc/License.txt Doc/lesser.txt Doc/ChangeLog Doc/*.pdf ../Doc/AMD
f5ad38
  popd
f5ad38
f5ad38
  pushd BTF
f5ad38
    pushd Lib
f5ad38
      %make_build CFLAGS="$CFLAGS" BLAS="$BLAS" LIBRARY_SUFFIX="$LIBRARY_SUFFIX"
f5ad38
    popd
f5ad38
    cp -p Include/*.h ../Include
f5ad38
    cp -p README.txt Doc/* ../Doc/BTF
f5ad38
  popd
f5ad38
f5ad38
  pushd CAMD
f5ad38
    pushd Lib
f5ad38
      %make_build CFLAGS="$CFLAGS" BLAS="$BLAS" LIBRARY_SUFFIX="$LIBRARY_SUFFIX"
f5ad38
    popd
f5ad38
    cp -p Include/*.h ../Include
f5ad38
    cp -p README.txt Doc/ChangeLog Doc/License.txt Doc/*.pdf ../Doc/CAMD
f5ad38
  popd
f5ad38
f5ad38
  pushd CCOLAMD
f5ad38
    pushd Lib
f5ad38
      %make_build CFLAGS="$CFLAGS" BLAS="$BLAS" LIBRARY_SUFFIX="$LIBRARY_SUFFIX"
f5ad38
    popd
f5ad38
    cp -p Include/*.h ../Include
f5ad38
    cp -p README.txt Doc/* ../Doc/CCOLAMD
f5ad38
  popd
f5ad38
f5ad38
  pushd COLAMD
f5ad38
    pushd Lib
f5ad38
      %make_build CFLAGS="$CFLAGS" BLAS="$BLAS" LIBRARY_SUFFIX="$LIBRARY_SUFFIX"
f5ad38
    popd
f5ad38
    cp -p Include/*.h ../Include
f5ad38
    cp -p README.txt Doc/* ../Doc/COLAMD
f5ad38
  popd
f5ad38
f5ad38
  pushd CHOLMOD
f5ad38
    pushd Lib
f5ad38
      %make_build CFLAGS="$CFLAGS" BLAS="$BLAS" LIBRARY_SUFFIX="$LIBRARY_SUFFIX"
f5ad38
    popd
f5ad38
    cp -p Include/*.h ../Include
f5ad38
    cp -p README.txt Doc/*.pdf ../Doc/CHOLMOD
f5ad38
    cp -p Cholesky/lesser.txt ../Doc/CHOLMOD/Cholesky_License.txt
f5ad38
    cp -p Core/lesser.txt ../Doc/CHOLMOD/Core_License.txt
f5ad38
    cp -p MatrixOps/gpl.txt ../Doc/CHOLMOD/MatrixOps_License.txt
f5ad38
    cp -p Partition/lesser.txt ../Doc/CHOLMOD/Partition_License.txt
f5ad38
    cp -p Supernodal/gpl.txt ../Doc/CHOLMOD/Supernodal_License.txt
f5ad38
  popd
f5ad38
f5ad38
  %if "%{?enable_csparse}" == "1"
f5ad38
  pushd CSparse
f5ad38
    pushd Source
f5ad38
      %make_build CFLAGS="$CFLAGS" BLAS="$BLAS" LIBRARY_SUFFIX="$LIBRARY_SUFFIX"
f5ad38
      cp -p cs.h ../../Include
f5ad38
    popd
f5ad38
    mkdir ../Doc/CSparse/
f5ad38
    cp -p Doc/* ../Doc/CSparse
f5ad38
  popd
f5ad38
f5ad38
  %else
f5ad38
  pushd CXSparse
f5ad38
    pushd Lib
f5ad38
      %make_build CFLAGS="$CFLAGS" BLAS="$BLAS" LIBRARY_SUFFIX="$LIBRARY_SUFFIX"
f5ad38
    popd
f5ad38
    cp -p Include/cs.h ../Include
f5ad38
    mkdir ../Doc/CXSparse/
f5ad38
    cp -p Doc/* ../Doc/CXSparse
f5ad38
  popd
f5ad38
  %endif
f5ad38
f5ad38
  pushd KLU
f5ad38
    pushd Lib
f5ad38
      %make_build CFLAGS="$CFLAGS" BLAS="$BLAS" LIBRARY_SUFFIX="$LIBRARY_SUFFIX"
f5ad38
    popd
f5ad38
    cp -p Include/*.h ../Include
f5ad38
    cp -p README.txt Doc/lesser.txt ../Doc/KLU
f5ad38
  popd
f5ad38
f5ad38
  pushd LDL
f5ad38
    pushd Lib
f5ad38
      %make_build CFLAGS="$CFLAGS" BLAS="$BLAS" LIBRARY_SUFFIX="$LIBRARY_SUFFIX"
f5ad38
    popd
f5ad38
    cp -p Include/*.h ../Include
f5ad38
    cp -p README.txt Doc/ChangeLog Doc/lesser.txt Doc/*.pdf ../Doc/LDL
f5ad38
  popd
f5ad38
f5ad38
  pushd UMFPACK
f5ad38
    pushd Lib
f5ad38
      %make_build CFLAGS="$CFLAGS" BLAS="$BLAS" LIBRARY_SUFFIX="$LIBRARY_SUFFIX"
f5ad38
    popd
f5ad38
    cp -p Include/*.h ../Include
f5ad38
    cp -p README.txt Doc/License.txt Doc/ChangeLog Doc/gpl.txt Doc/*.pdf ../Doc/UMFPACK
f5ad38
  popd
f5ad38
f5ad38
  pushd SPQR
f5ad38
    pushd Lib
f5ad38
      %make_build CFLAGS="$CFLAGS -DHAVE_TBB -DNPARTITION" TBB=-ltbb BLAS="$BLAS" LIBRARY_SUFFIX="$LIBRARY_SUFFIX"
f5ad38
    popd
f5ad38
    cp -p Include/*.h* ../Include
f5ad38
    cp -p README{,_SPQR}.txt
f5ad38
    cp -p README_SPQR.txt Doc/* ../Doc/SPQR
f5ad38
  popd
f5ad38
f5ad38
  pushd RBio
f5ad38
    pushd Lib
f5ad38
      %make_build CFLAGS="$CFLAGS" BLAS="$BLAS" LIBRARY_SUFFIX="$LIBRARY_SUFFIX"
f5ad38
    popd
f5ad38
    cp -p Include/*.h ../Include
f5ad38
    cp -p README.txt Doc/ChangeLog Doc/License.txt ../Doc/RBio
f5ad38
  popd
f5ad38
f5ad38
  popd
f5ad38
done
f5ad38
f5ad38
%install
f5ad38
mkdir -p ${RPM_BUILD_ROOT}%{_libdir}
f5ad38
mkdir -p ${RPM_BUILD_ROOT}%{_includedir}/%{name}
f5ad38
cp -a SuiteSparse/Include/*.{h,hpp} ${RPM_BUILD_ROOT}%{_includedir}/%{name}/
f5ad38
for build in SuiteSparse %{?build64:SuiteSparse64 SuiteSparse64_}
f5ad38
do
f5ad38
  pushd $build
f5ad38
    cp -a */Lib/*.a lib/*.so* ${RPM_BUILD_ROOT}%{_libdir}/
f5ad38
    chmod 755 ${RPM_BUILD_ROOT}%{_libdir}/*.so.*
f5ad38
f5ad38
    # collect licenses in one place to ship as base package documentation
f5ad38
    rm -rf Licenses
f5ad38
    mkdir Licenses
f5ad38
    find */ -iname lesser.txt -o -iname license.txt -o -iname gpl.txt -o \
f5ad38
        -iname license | while read f; do
f5ad38
            b="${f%%/*}"
f5ad38
            r="${f#$b}"
f5ad38
            x="$(echo "$r" | sed 's|/doc/|/|gi')"
f5ad38
            install -m0644 -D "$f" "./Licenses/$b/$x"
f5ad38
        done
f5ad38
f5ad38
    # hardlink duplicate documentation files
f5ad38
    hardlink -cv Docs/ Licenses/
f5ad38
  popd
f5ad38
done
f5ad38
f5ad38
f5ad38
%check
f5ad38
export AUTOCC=no
f5ad38
export CC=gcc
f5ad38
TESTDIRS="AMD CAMD CCOLAMD CHOLMOD COLAMD KLU LDL SPQR RBio UMFPACK"
f5ad38
%if "%{?enable_csparse}" == "1"
f5ad38
TESTDIRS="$TESTDIRS CSparse"
f5ad38
%else
f5ad38
TESTDIRS="$TESTDIRS CXSparse"
f5ad38
%endif
f5ad38
for build in SuiteSparse %{?build64:SuiteSparse64 SuiteSparse64_}
f5ad38
do
f5ad38
  pushd $build
f5ad38
    export CFLAGS="$RPM_OPT_FLAGS"
f5ad38
    export LAPACK=""
f5ad38
    # Set flags for ILP64 build
f5ad38
    if [ $build = SuiteSparse64 ]
f5ad38
    then
f5ad38
       export CFLAGS="$CFLAGS -DBLAS64"
f5ad38
       export BLAS=-l%{blaslib}64
f5ad38
       export LIBRARY_SUFFIX=64
f5ad38
    elif [ $build = SuiteSparse64_ ]
f5ad38
    then
f5ad38
       export CFLAGS="$CFLAGS -DBLAS64 -DSUN64"
f5ad38
       export BLAS=-lopenblas64_
f5ad38
       export LIBRARY_SUFFIX=64_
f5ad38
    else
f5ad38
       export BLAS=-l%{blaslib}
f5ad38
    fi   
f5ad38
f5ad38
    for d in $TESTDIRS ; do
f055b7
        LD_LIBRARY_PATH=${RPM_BUILD_ROOT}%{_libdir}/ %make_build -C $d/Demo CFLAGS="$CFLAGS" LIB="%{?__global_ldflags} -lm -lrt" BLAS="$BLAS" LIBRARY_SUFFIX="$LIBRARY_SUFFIX" SPQR_CONFIG=-DHAVE_TBB TBB=-ltbb
f5ad38
    done
f5ad38
  popd
f5ad38
done
f5ad38
f5ad38
%files
f5ad38
%license SuiteSparse/Licenses
f5ad38
%{_libdir}/libamd.so.%{amd_version_major}*
f5ad38
%{_libdir}/libbtf.so.%{btf_version_major}*
f5ad38
%{_libdir}/libcamd.so.%{camd_version_major}*
f5ad38
%{_libdir}/libccolamd.so.%{ccolamd_version_major}*
f5ad38
%{_libdir}/libcholmod.so.%{cholmod_version_major}*
f5ad38
%{_libdir}/libcolamd.so.%{colamd_version_major}*
f5ad38
%if "%{?enable_csparse}" == "1"
f5ad38
%{_libdir}/libcsparse.so.%{csparse_version_major}*
f5ad38
%endif
f5ad38
%{_libdir}/libcxsparse.so.%{cxsparse_version_major}*
f5ad38
%{_libdir}/libklu.so.%{klu_version_major}*
f5ad38
%{_libdir}/libldl.so.%{ldl_version_major}*
f5ad38
%{_libdir}/librbio.so.%{rbio_version_major}*
f5ad38
%{_libdir}/libspqr.so.%{spqr_version_major}*
f5ad38
%{_libdir}/libsuitesparseconfig.so.%{SuiteSparse_config_major}*
f5ad38
%{_libdir}/libumfpack.so.%{umfpack_version_major}*
f5ad38
f5ad38
%files devel
f5ad38
%{_includedir}/%{name}
f5ad38
%{_libdir}/lib*.so
f5ad38
%exclude %{_libdir}/lib*64*.so
f5ad38
f5ad38
%files static
f5ad38
%{_libdir}/lib*.a
f5ad38
%exclude %{_libdir}/lib*64*.a
f5ad38
f5ad38
%if 0%{?build64}
f5ad38
%files -n %{name}64
f5ad38
%license SuiteSparse64/Licenses
f5ad38
%{_libdir}/libamd64.so.%{amd_version_major}*
f5ad38
%{_libdir}/libbtf64.so.%{btf_version_major}*
f5ad38
%{_libdir}/libcamd64.so.%{camd_version_major}*
f5ad38
%{_libdir}/libccolamd64.so.%{ccolamd_version_major}*
f5ad38
%{_libdir}/libcholmod64.so.%{cholmod_version_major}*
f5ad38
%{_libdir}/libcolamd64.so.%{colamd_version_major}*
f5ad38
%if "%{?enable_csparse}" == "1"
f5ad38
%{_libdir}/libcsparse64.so.%{csparse_version_major}*
f5ad38
%endif
f5ad38
%{_libdir}/libcxsparse64.so.%{cxsparse_version_major}*
f5ad38
%{_libdir}/libklu64.so.%{klu_version_major}*
f5ad38
%{_libdir}/libldl64.so.%{ldl_version_major}*
f5ad38
%{_libdir}/librbio64.so.%{rbio_version_major}*
f5ad38
%{_libdir}/libspqr64.so.%{spqr_version_major}*
f5ad38
%{_libdir}/libsuitesparseconfig64.so.%{SuiteSparse_config_major}*
f5ad38
%{_libdir}/libumfpack64.so.%{umfpack_version_major}*
f5ad38
f5ad38
%files -n %{name}64-devel
f5ad38
%{_libdir}/lib*64.so
f5ad38
f5ad38
%files -n %{name}64-static
f5ad38
%{_libdir}/lib*64.a
f5ad38
f5ad38
%files -n %{name}64_
f5ad38
%license SuiteSparse64_/Licenses
f5ad38
%{_libdir}/libamd64_.so.%{amd_version_major}*
f5ad38
%{_libdir}/libbtf64_.so.%{btf_version_major}*
f5ad38
%{_libdir}/libcamd64_.so.%{camd_version_major}*
f5ad38
%{_libdir}/libccolamd64_.so.%{ccolamd_version_major}*
f5ad38
%{_libdir}/libcholmod64_.so.%{cholmod_version_major}*
f5ad38
%{_libdir}/libcolamd64_.so.%{colamd_version_major}*
f5ad38
%if "%{?enable_csparse}" == "1"
f5ad38
%{_libdir}/libcsparse64_.so.%{csparse_version_major}*
f5ad38
%endif
f5ad38
%{_libdir}/libcxsparse64_.so.%{cxsparse_version_major}*
f5ad38
%{_libdir}/libklu64_.so.%{klu_version_major}*
f5ad38
%{_libdir}/libldl64_.so.%{ldl_version_major}*
f5ad38
%{_libdir}/librbio64_.so.%{rbio_version_major}*
f5ad38
%{_libdir}/libspqr64_.so.%{spqr_version_major}*
f5ad38
%{_libdir}/libsuitesparseconfig64_.so.%{SuiteSparse_config_major}*
f5ad38
%{_libdir}/libumfpack64_.so.%{umfpack_version_major}*
f5ad38
f5ad38
%files -n %{name}64_-devel
f5ad38
%{_libdir}/lib*64_.so
f5ad38
f5ad38
%files -n %{name}64_-static
f5ad38
%{_libdir}/lib*64_.a
f5ad38
%endif
f5ad38
f5ad38
%files doc
f5ad38
%doc SuiteSparse/Doc/*
f5ad38
f5ad38
%changelog
f055b7
* Mon Feb 21 2022 Michal Sekletar <msekleta@redhat.com> - 5.4.0-10
f055b7
- Disable lazy binding (#2044892)
f055b7
- Remove RPATH (#2056604)
f055b7
f5ad38
* Tue Aug 10 2021 Mohan Boddu <mboddu@redhat.com> - 5.4.0-9
f5ad38
- Rebuilt for IMA sigs, glibc 2.34, aarch64 flags
f5ad38
  Related: rhbz#1991688
f5ad38
f5ad38
* Fri Jul 09 2021 Lukas Nykryn <lnykryn@redhat.com> - 5.4.0-8
f5ad38
- drop metis
f5ad38
Resolves: #1977815
f5ad38
f5ad38
* Fri Apr 16 2021 Mohan Boddu <mboddu@redhat.com> - 5.4.0-7
f5ad38
- Rebuilt for RHEL 9 BETA on Apr 15th 2021. Related: rhbz#1947937
f5ad38
f5ad38
* Wed Jan 27 2021 Fedora Release Engineering <releng@fedoraproject.org> - 5.4.0-6
f5ad38
- Rebuilt for https://fedoraproject.org/wiki/Fedora_34_Mass_Rebuild
f5ad38
f5ad38
* Thu Aug 13 2020 Iñaki Úcar <iucar@fedoraproject.org> - 5.4.0-5
f5ad38
- https://fedoraproject.org/wiki/Changes/FlexiBLAS_as_BLAS/LAPACK_manager
f5ad38
f5ad38
* Wed Jul 29 2020 Fedora Release Engineering <releng@fedoraproject.org> - 5.4.0-4
f5ad38
- Rebuilt for https://fedoraproject.org/wiki/Fedora_33_Mass_Rebuild
f5ad38
f5ad38
* Fri Jan 31 2020 Fedora Release Engineering <releng@fedoraproject.org> - 5.4.0-3
f5ad38
- Rebuilt for https://fedoraproject.org/wiki/Fedora_32_Mass_Rebuild
f5ad38
f5ad38
* Mon Oct 14 2019 Orion Poplawski <orion@nwra.com> - 5.4.0-2
f5ad38
- Build ILP64 version (bugz#1294200)
f5ad38
f5ad38
* Sun Sep 29 2019 Orion Poplawski <orion@nwra.com> - 5.4.0-1
f5ad38
- Update to 5.4.0
f5ad38
- Use upstream shared library builds
f5ad38
- Build with metis
f5ad38
- Explicitly list libraries and soname versions
f5ad38
f5ad38
* Sat Jul 27 2019 Fedora Release Engineering <releng@fedoraproject.org> - 4.4.6-20
f5ad38
- Rebuilt for https://fedoraproject.org/wiki/Fedora_31_Mass_Rebuild
f5ad38
f5ad38
* Thu Jun 13 2019 Kalev Lember <klember@redhat.com> - 4.4.6-19
f5ad38
- Use __global_ldflags when building tests
f5ad38
f5ad38
* Sun Feb 03 2019 Fedora Release Engineering <releng@fedoraproject.org> - 4.4.6-18
f5ad38
- Rebuilt for https://fedoraproject.org/wiki/Fedora_30_Mass_Rebuild
f5ad38
f5ad38
* Sat Oct 13 2018 Jerry James <loganjerry@gmail.com> - 4.4.6-17
f5ad38
- Rebuild for tbb 2019_U1
f5ad38
f5ad38
* Tue Jul 31 2018 Florian Weimer <fweimer@redhat.com> - 4.4.6-16
f5ad38
- Rebuild with fixed binutils
f5ad38
f5ad38
* Fri Jul 27 2018 Igor Gnatenko <ignatenkobrain@fedoraproject.org> - 4.4.6-15
f5ad38
- Rebuild for new binutils
f5ad38
f5ad38
* Mon Jul 16 2018 Dominik Mierzejewski <rpm@greysector.net> - 4.4.6-14
f5ad38
- use openblas instead of atlas (#1506933)
f5ad38
- enable parallel make for faster builds and drop duplicate -fPIC
f5ad38
- drop non-standard -O3 and duplicate -fexceptions from default CFLAGS
f5ad38
- build and run demos in check section
f5ad38
- drop redundant ldconfig scriptlets
f5ad38
f5ad38
* Sat Jul 14 2018 Fedora Release Engineering <releng@fedoraproject.org> - 4.4.6-13
f5ad38
- Rebuilt for https://fedoraproject.org/wiki/Fedora_29_Mass_Rebuild
f5ad38
f5ad38
* Tue Feb 20 2018 Nils Philippsen <nils@tiptoe.de> - 4.4.6-12
f5ad38
- require gcc, gcc-c++ for building
f5ad38
f5ad38
* Fri Feb 09 2018 Fedora Release Engineering <releng@fedoraproject.org> - 4.4.6-11
f5ad38
- Rebuilt for https://fedoraproject.org/wiki/Fedora_28_Mass_Rebuild
f5ad38
f5ad38
* Thu Aug 03 2017 Fedora Release Engineering <releng@fedoraproject.org> - 4.4.6-10
f5ad38
- Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Binutils_Mass_Rebuild
f5ad38
f5ad38
* Thu Jul 27 2017 Fedora Release Engineering <releng@fedoraproject.org> - 4.4.6-9
f5ad38
- Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Mass_Rebuild
f5ad38
f5ad38
* Sat Feb 11 2017 Fedora Release Engineering <releng@fedoraproject.org> - 4.4.6-8
f5ad38
- Rebuilt for https://fedoraproject.org/wiki/Fedora_26_Mass_Rebuild
f5ad38
f5ad38
* Fri Oct 07 2016 Dan Horák <dan[at]danny.cz> - 4.4.6-7
f5ad38
- Rebuild with fixed tbb on s390x (#1379632)
f5ad38
f5ad38
* Thu Sep 22 2016 Jerry James <loganjerry@gmail.com> - 4.4.6-6
f5ad38
- Rebuild for tbb 2017
f5ad38
- tbb is available for all arches now
f5ad38
f5ad38
* Fri Feb 05 2016 Fedora Release Engineering <releng@fedoraproject.org> - 4.4.6-5
f5ad38
- Rebuilt for https://fedoraproject.org/wiki/Fedora_24_Mass_Rebuild
f5ad38
f5ad38
* Fri Jan 15 2016 Jerry James <loganjerry@gmail.com> - 4.4.6-4
f5ad38
- Rebuild for tbb 4.4u2
f5ad38
f5ad38
* Mon Jan 4 2016 Orion Poplawski <orion@cora.nwra.com> - 4.4.6-3
f5ad38
- Use %%{?__global_ldflags} when linking
f5ad38
f5ad38
* Mon Jan 4 2016 Orion Poplawski <orion@cora.nwra.com> - 4.4.6-2
f5ad38
- Update to 4.4.6
f5ad38
f5ad38
* Wed Aug 26 2015 Nils Philippsen <nils@redhat.com> - 4.4.5-2
f5ad38
- AMD is dual-licensed (LGPLv2+ or BSD)
f5ad38
f5ad38
* Wed Aug 26 2015 Nils Philippsen <nils@redhat.com> - 4.4.5-1
f5ad38
- version 4.4.5
f5ad38
- use %%license for licenses
f5ad38
f5ad38
* Fri Jun 19 2015 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 4.4.4-2
f5ad38
- Rebuilt for https://fedoraproject.org/wiki/Fedora_23_Mass_Rebuild
f5ad38
f5ad38
* Thu Jun 11 2015 Nils Philippsen <nils@redhat.com> - 4.4.4-1
f5ad38
- update component versions
f5ad38
f5ad38
* Wed Jun 10 2015 Nils Philippsen <nils@redhat.com> - 4.4.4-1
f5ad38
- version 4.4.4
f5ad38
- fix URLs
f5ad38
- remove obsolete patches
f5ad38
- drop specifying and cleaning of buildroot
f5ad38
f5ad38
* Sat May 02 2015 Kalev Lember <kalevlember@gmail.com> - 4.3.1-5
f5ad38
- Rebuilt for GCC 5 C++11 ABI change
f5ad38
f5ad38
* Tue Oct 14 2014 Peter Robinson <pbrobinson@fedoraproject.org> 4.3.1-4
f5ad38
- Only s390 doesn't have tbb
f5ad38
f5ad38
* Mon Sep 15 2014 Orion Poplawski <orion@cora.nwra.com> - 4.3.1-3
f5ad38
- Change patch to move math.h include into SuiteSparse_config.c
f5ad38
- Fix linkage and library file permission issues
f5ad38
f5ad38
* Sat Sep 13 2014 Orion Poplawski <orion@cora.nwra.com> - 4.3.1-2
f5ad38
- Add patch to allow octave compilation
f5ad38
f5ad38
* Mon Sep 08 2014 Clément David <c.david86@gmail.com> - 4.3.1-1
f5ad38
- Update to release 4.3.1. 
f5ad38
f5ad38
* Mon Aug 18 2014 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 4.2.1-4
f5ad38
- Rebuilt for https://fedoraproject.org/wiki/Fedora_21_22_Mass_Rebuild
f5ad38
f5ad38
* Sun Jun 08 2014 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 4.2.1-3
f5ad38
- Rebuilt for https://fedoraproject.org/wiki/Fedora_21_Mass_Rebuild
f5ad38
f5ad38
* Mon Feb 10 2014 Nils Philippsen <nils@redhat.com> - 4.2.2-2
f5ad38
- ship licenses as documentation in the base package
f5ad38
- hardlink duplicate documentation/license files
f5ad38
f5ad38
* Thu Dec 05 2013 Nils Philippsen <nils@redhat.com> - 4.2.1-1
f5ad38
- version 4.2.1
f5ad38
f5ad38
* Fri Sep 20 2013 Nils Philippsen <nils@redhat.com> - 4.0.2-7
f5ad38
- build against atlas 3.10.x
f5ad38
f5ad38
* Tue Sep 03 2013 Nils Philippsen <nils@redhat.com> - 4.0.2-6
f5ad38
- include C++ headers (#1001943)
f5ad38
- fix bogus dates in changelog
f5ad38
f5ad38
* Sun Aug 04 2013 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 4.0.2-5
f5ad38
- Rebuilt for https://fedoraproject.org/wiki/Fedora_20_Mass_Rebuild
f5ad38
f5ad38
* Fri May 24 2013 Petr Machata <pmachata@redhat.com> - 4.0.2-4
f5ad38
- Rebuild for TBB memory barrier bug
f5ad38
f5ad38
* Fri Feb 15 2013 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 4.0.2-3
f5ad38
- Rebuilt for https://fedoraproject.org/wiki/Fedora_19_Mass_Rebuild
f5ad38
f5ad38
* Mon Nov 19 2012 Nils Philippsen <nils@redhat.com> - 4.0.2-2
f5ad38
- explicitly link libsuitesparseconfig where necessary
f5ad38
f5ad38
* Fri Nov 16 2012 Deji Akingunola <dakingun@gmail.com> - 4.0.2-1
f5ad38
- Update to 4.0.2
f5ad38
f5ad38
* Sat Jul 21 2012 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 3.6.1-4
f5ad38
- Rebuilt for https://fedoraproject.org/wiki/Fedora_18_Mass_Rebuild
f5ad38
f5ad38
* Sat Jan 14 2012 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 3.6.1-3
f5ad38
- Rebuilt for https://fedoraproject.org/wiki/Fedora_17_Mass_Rebuild
f5ad38
f5ad38
* Tue Oct 11 2011 Dan Horák <dan[at]danny.cz> - 3.6.1-2
f5ad38
- fix build without TBB
f5ad38
f5ad38
* Fri Sep 23 2011 Deji Akingunola <dakingun@gmail.com> - 3.6.1-1
f5ad38
- Update to 3.6.1
f5ad38
- Fix undefine symbols in libspqr
f5ad38
f5ad38
* Sun Feb 13 2011 Deji Akingunola <dakingun@gmail.com> - 3.6.0-3
f5ad38
- Fix a couple of undefined reference errors in umfpack and Rbio (#677061)
f5ad38
f5ad38
* Wed Feb 09 2011 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 3.6.0-2
f5ad38
- Rebuilt for https://fedoraproject.org/wiki/Fedora_15_Mass_Rebuild
f5ad38
f5ad38
* Fri Feb 04 2011 Deji Akingunola <dakingun@gmail.com> - 3.6.0-1
f5ad38
- Update to 3.6.0
f5ad38
f5ad38
* Sun Jul 26 2009 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 3.4.0-2
f5ad38
- Rebuilt for https://fedoraproject.org/wiki/Fedora_12_Mass_Rebuild
f5ad38
f5ad38
* Thu May 28 2009 Deji Akingunola <dakingun@gmail.com> - 3.4.0-1
f5ad38
- Update to version 3.4.0.
f5ad38
f5ad38
* Tue May 19 2009 Milos Jakubicek <xjakub@fi.muni.cz> - 3.3.0-2
f5ad38
- Split documentation into separate -doc subpackage (resolves BZ#492451).
f5ad38
f5ad38
* Mon Apr 27 2009 Deji Akingunola <dakingun@gmail.com> - 3.3.0-1
f5ad38
- Update to release 3.3.0.
f5ad38
f5ad38
* Wed Feb 25 2009 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 3.2.0-6
f5ad38
- Rebuilt for https://fedoraproject.org/wiki/Fedora_11_Mass_Rebuild
f5ad38
f5ad38
* Fri Jan 16 2009 Deji Akingunola <dakingun@gmail.com> - 3.2.0-5
f5ad38
- More fixes for the undefined symbol issue (BZ #475411)
f5ad38
f5ad38
* Sat Dec 20 2008 Deji Akingunola <dakingun@gmail.com> - 3.2.0-4
f5ad38
- Also build SPQR
f5ad38
- Further fixes for BZ #475411
f5ad38
f5ad38
* Wed Dec 17 2008 Deji Akingunola <dakingun@gmail.com> - 3.2.0-3
f5ad38
- Rearrange the spec
f5ad38
- Link in necessary libs when making shared CHOLMOD lib (BZ #475411)
f5ad38
- Link with ATLAS' blas and lapack libs
f5ad38
f5ad38
* Wed Dec 17 2008 Deji Akingunola <dakingun@gmail.com> - 3.2.0-2
f5ad38
- Rebuild for updated atlas
f5ad38
f5ad38
* Mon Dec 15 2008 Deji Akingunola <dakingun@gmail.com> - 3.2.0-1
f5ad38
- New upstream version
f5ad38
f5ad38
* Mon Mar  3 2008 Quentin Spencer <qspencer@users.sourceforge.net> 3.1.0-1
f5ad38
- Update to release 3.1.0. 
f5ad38
f5ad38
* Tue Feb 19 2008 Fedora Release Engineering <rel-eng@fedoraproject.org> - 3.0.0-4
f5ad38
- Autorebuild for GCC 4.3
f5ad38
f5ad38
* Tue Oct 16 2007 Quentin Spencer <qspencer@users.sourceforge.net> 3.0.0-3
f5ad38
- Update license tag. Fix minor issues found by rpmlint.
f5ad38
f5ad38
* Fri Aug 24 2007 Quentin Spencer <qspencer@users.sourceforge.net> 3.0.0-2
f5ad38
- Rebuild for F8.
f5ad38
f5ad38
* Tue Jul  3 2007 Quentin Spencer <qspencer@users.sourceforge.net> 3.0.0-1
f5ad38
- Change package name to match upstream, including provides and obsoletes.
f5ad38
- New release. Numerous changes in build to reflect source reorganization.
f5ad38
- Moved static libs into separate package.
f5ad38
f5ad38
* Mon Oct 16 2006 Quentin Spencer <qspencer@users.sourceforge.net> 2.1.1-1
f5ad38
- New release, and package name change from UFsparse to SuiteSparse. Fixes
f5ad38
  bug #210846. Keep the ufsparse package name for now.
f5ad38
f5ad38
* Thu Sep  7 2006 Quentin Spencer <qspencer@users.sourceforge.net> 2.1.0-1
f5ad38
- New release. Increment versions of some libraries.
f5ad38
- Rearrange and clean up spec file so all definitions are in one place.
f5ad38
f5ad38
* Mon Aug  7 2006 Quentin Spencer <qspencer@users.sourceforge.net> 2.0.0-1
f5ad38
- New release.
f5ad38
- Build newly added CAMD library.
f5ad38
- Misc minor spec changes.
f5ad38
f5ad38
* Tue Mar  7 2006 Quentin Spencer <qspencer@users.sourceforge.net> 1.2-1
f5ad38
- New release.
f5ad38
- Build newly added library CXSparse (but not CSparse--see comments
f5ad38
  in build section).
f5ad38
f5ad38
* Wed Feb 15 2006 Quentin Spencer <qspencer@users.sourceforge.net> 0.93-2
f5ad38
- Rebuild for Fedora Extras 5.
f5ad38
f5ad38
* Thu Feb  9 2006 Quentin Spencer <qspencer@users.sourceforge.net> 0.93-1
f5ad38
- New release. Remove old patch.
f5ad38
f5ad38
* Wed Dec 14 2005 Quentin Spencer <qspencer@users.sourceforge.net> 0.92-2
f5ad38
- Add patch0--fixes LDL/Makefile so CFLAGS are used when compiling ldl.a.
f5ad38
f5ad38
* Wed Dec 14 2005 Quentin Spencer <qspencer@users.sourceforge.net> 0.92-1
f5ad38
- Update to Dec 8 2005 version.
f5ad38
f5ad38
* Tue Oct 25 2005 Quentin Spencer <qspencer@users.sourceforge.net> 0.91-2
f5ad38
- Rebuild.
f5ad38
f5ad38
* Tue Oct 18 2005 Quentin Spencer <qspencer@users.sourceforge.net> 0.91-1
f5ad38
- New upstream release, incorporating previous patches
f5ad38
- chmod the build directory to ensure all headers are world readable
f5ad38
f5ad38
* Fri Oct 07 2005 Quentin Spencer <qspencer@users.sourceforge.net> 0.9-3
f5ad38
- Build cholmod, but disable METIS using -DNPARTITION flag.
f5ad38
f5ad38
* Sat Oct 01 2005 Quentin Spencer <qspencer@users.sourceforge.net> 0.9-2
f5ad38
- Modify description, other modifications for import into FE.
f5ad38
- Add dist tag, cosmetic changes.
f5ad38
f5ad38
* Thu Sep 08 2005 David Bateman <dbateman@free.fr> 0.9-1
f5ad38
- First version.