Summary: Subroutines to solve a sparse linear system A*X=B
Summary(pl.UTF-8): Procedury do rozwiązywania rzadkich układów równań liniowych A*X=B
Name: SuperLU
-Version: 4.3
-Release: 2
+Version: 5.3.0
+Release: 1
License: BSD
Group: Libraries
-Source0: http://crd-legacy.lbl.gov/~xiaoye/SuperLU/superlu_%{version}.tar.gz
-# Source0-md5: b72c6309f25e9660133007b82621ba7c
-Patch0: %{name}-format.patch
-Patch1: %{name}-shared.patch
-URL: http://crd-legacy.lbl.gov/~xiaoye/SuperLU/
+#Source0Download: https://github.com/xiaoyeli/superlu/releases
+Source0: https://github.com/xiaoyeli/superlu/archive/v%{version}/superlu-%{version}.tar.gz
+# Source0-md5: 3a5123b86bd517fe28c830ae7d12cb25
+Patch0: %{name}-shared.patch
+URL: https://portal.nersc.gov/project/sparse/superlu/
BuildRequires: blas-devel
-BuildRequires: libtool >= 2:1.5
+BuildRequires: cmake >= 2.8.12
+BuildRequires: gcc-fortran
+BuildRequires: rpm-build >= 4.6
+BuildRequires: rpmbuild(macros) >= 1.752
BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
%description
Group: Development/Libraries
Requires: %{name} = %{version}-%{release}
Requires: blas-devel
+Obsoletes: SuperLU-static < 5
%description devel
Header files for SuperLU library.
%description devel -l pl.UTF-8
Pliki nagłówkowe biblioteki SuperLU.
-%package static
-Summary: Static SuperLU library
-Summary(pl.UTF-8): Statyczna biblioteka SuperLU
-Group: Development/Libraries
-Requires: %{name}-devel = %{version}-%{release}
-
-%description static
-Static SuperLU library.
-
-%description static -l pl.UTF-8
-Statyczna biblioteka SuperLU.
-
%package apidocs
Summary: SuperLU API documentation
Summary(pl.UTF-8): Dokumentacja API biblioteki SuperLU
Group: Documentation
+BuildArch: noarch
%description apidocs
API documentation for SuperLU library.
Dokumentacja API biblioteki SuperLU.
%prep
-%setup -q -n SuperLU_%{version}
+%setup -q -n superlu-%{version}
%patch0 -p1
-%patch1 -p1
%build
-%{__make} -C SRC \
- SuperLUroot=$(pwd) \
- BLASLIB="-lblas" \
- CC="%{__cc}" \
- CFLAGS="%{rpmcflags} -DPRNTlevel=0" \
- FFLAGS="%{rpmcflags}" \
- LDFLAGS="%{rpmldflags}" \
- libdir=%{_libdir}
+install -d build
+cd build
+# .pc file generation expects relative CMAKE_INSTALL_{INCLUDE,LIB}DIR
+%cmake .. \
+ -DCMAKE_INSTALL_INCLUDEDIR=include/superlu \
+ -DCMAKE_INSTALL_LIBDIR=%{_lib} \
+ -Denable_internal_blaslib=OFF
+
+%{__make}
%install
rm -rf $RPM_BUILD_ROOT
-install -d $RPM_BUILD_ROOT{%{_libdir},%{_includedir}/superlu}
-libtool --mode=install install lib/libsuperlu.la $RPM_BUILD_ROOT%{_libdir}
-cp -p SRC/slu_*.h SRC/super*.h $RPM_BUILD_ROOT%{_includedir}/superlu
+%{__make} -C build install \
+ DESTDIR=$RPM_BUILD_ROOT
%clean
rm -rf $RPM_BUILD_ROOT
%files
%defattr(644,root,root,755)
-%doc README
+%doc License.txt README
%attr(755,root,root) %{_libdir}/libsuperlu.so.*.*.*
-%attr(755,root,root) %ghost %{_libdir}/libsuperlu.so.0
+%attr(755,root,root) %ghost %{_libdir}/libsuperlu.so.5
%files devel
%defattr(644,root,root,755)
%doc DOC/ug.pdf
%attr(755,root,root) %{_libdir}/libsuperlu.so
-%{_libdir}/libsuperlu.la
%{_includedir}/superlu
-
-%files static
-%defattr(644,root,root,755)
-%{_libdir}/libsuperlu.a
+%{_pkgconfigdir}/superlu.pc
+%{_libdir}/cmake/superlu
%files apidocs
%defattr(644,root,root,755)