SuperLU: Package init

This commit is contained in:
gnaygnil 2020-03-06 18:27:21 +08:00
parent da1f408785
commit 70d948c271
7 changed files with 2757 additions and 73 deletions

View File

@ -1,36 +0,0 @@
# SuperLU
#### Description
Subroutines to solve sparse linear systems.
#### Software Architecture
Software architecture description
#### Installation
1. xxxx
2. xxxx
3. xxxx
#### Instructions
1. xxxx
2. xxxx
3. xxxx
#### Contribution
1. Fork the repository
2. Create Feat_xxx branch
3. Commit your code
4. Create Pull Request
#### Gitee Feature
1. You can use Readme\_XXX.md to support different languages, such as Readme\_en.md, Readme\_zh.md
2. Gitee blog [blog.gitee.com](https://blog.gitee.com)
3. Explore open source project [https://gitee.com/explore](https://gitee.com/explore)
4. The most valuable open source project [GVP](https://gitee.com/gvp)
5. The manual of Gitee [https://gitee.com/help](https://gitee.com/help)
6. The most popular members [https://gitee.com/gitee-stars/](https://gitee.com/gitee-stars/)

View File

@ -1,37 +0,0 @@
# SuperLU
#### 介绍
Subroutines to solve sparse linear systems.
#### 软件架构
软件架构说明
#### 安装教程
1. xxxx
2. xxxx
3. xxxx
#### 使用说明
1. xxxx
2. xxxx
3. xxxx
#### 参与贡献
1. Fork 本仓库
2. 新建 Feat_xxx 分支
3. 提交代码
4. 新建 Pull Request
#### 码云特技
1. 使用 Readme\_XXX.md 来支持不同的语言,例如 Readme\_en.md, Readme\_zh.md
2. 码云官方博客 [blog.gitee.com](https://blog.gitee.com)
3. 你可以 [https://gitee.com/explore](https://gitee.com/explore) 这个地址来了解码云上的优秀开源项目
4. [GVP](https://gitee.com/gvp) 全称是码云最有价值开源项目,是码云综合评定出的优秀开源项目
5. 码云官方提供的使用手册 [https://gitee.com/help](https://gitee.com/help)
6. 码云封面人物是一档用来展示码云会员风采的栏目 [https://gitee.com/gitee-stars/](https://gitee.com/gitee-stars/)

View File

@ -0,0 +1,11 @@
--- a/SRC/CMakeLists.orig.txt 2018-04-25 15:17:39.786715000 +0200
+++ b/SRC/CMakeLists.txt 2018-04-25 15:25:00.253317607 +0200
@@ -230,7 +230,7 @@
target_link_libraries(superlu ${BLAS_LIB} m)
set_target_properties(superlu PROPERTIES
- VERSION ${PROJECT_VERSION} SOVERSION ${VERSION_MAJOR}
+ VERSION ${PROJECT_VERSION} SOVERSION ${VERSION_MAJOR}.${VERSION_MINOR}
)
include(GNUInstallDirs)

75
SuperLU.spec Normal file
View File

@ -0,0 +1,75 @@
Name: SuperLU
Version: 5.2.1
Release: 6
Summary: Library for the direct solution of large, sparse, nonsymmetric systems of linear equations
License: BSD and GPLv2+
URL: http://crd-legacy.lbl.gov/~xiaoye/SuperLU/
Source0: http://crd-legacy.lbl.gov/~xiaoye/SuperLU/superlu_%{version}.tar.gz
BuildRequires: openblas-devel openblas-srpm-macros atlas-devel cmake3 gcc-gfortran csh
# Fixed include path for building
Patch0000: superlu-cmake-includedir.patch
# Remove MC64 functionality
Patch0001: superlu-removemc64.patch
# Add minor version for target properties
Patch0002: SuperLU-5.2.1-set_soname.patch
%description
The library is written in C and is callable from either C or Fortran program. It uses MPI, OpenMP and
CUDA to support various forms of parallelism. It supports both real and complex datatypes, both single
and double precision, and 64-bit integer indexing. The library routines performs an LU decomposition
with partial pivoting and triangular system solves through forward and back substitution.
%package devel
Summary: Files for SuperLU development
Requires: SuperLU = %{version}-%{release}
%description devel
The package contains the header files and libraries for SuperLU development.
%package help
Summary: Documentation for SuperLU
Provides: SuperLU-doc = %{version}-%{release}
Obsoletes: SuperLU-doc < %{version}-%{release}
Requires: SuperLU = %{version}-%{release}
%description help
The package contains all the help documentation along with C and FORTRAN examples.
%prep
%autosetup -n SuperLU_%{version} -p1
rm -fr SRC/mc64ad.f.bak
find . -type f | sed -e "/TESTING/d" | xargs chmod a-x
find EXAMPLE -type f | while read file; do [ "$(file $file | awk '{print $2}')" = ELF ] && rm $file || : ; done
sed -i.bak '/NOOPTS/d' make.inc.in
sed -e 's|-O0|-O2|g' -i SRC/CMakeLists.txt
%build
mkdir -p build && cd build
%cmake3 -Denable_blaslib:BOOL=OFF -DCMAKE_BUILD_TYPE:STRING=Release ..
%make_build
%install
%make_install -C build
%check
cd build
ctest3 -V %{?_smp_mflags}
cd -
%post -p /sbin/ldconfig
%postun -p /sbin/ldconfig
%files
%doc License.txt
%{_libdir}/libsuperlu.so.5*
%files devel
%{_includedir}/SuperLU/
%{_libdir}/libsuperlu.so
%files help
%doc DOC EXAMPLE FORTRAN
%changelog
* Thu Mar 5 2020 Ling Yang <lingyang2@huawei.com> - 5.2.1-6
- Package Init

View File

@ -0,0 +1,9 @@
--- SuperLU_5.2.1/SRC/CMakeLists.txt 2018-04-13 17:01:44.007761121 +0200
+++ CMakeLists.txt 2018-04-13 17:01:30.573718261 +0200
@@ -242,5 +242,5 @@
install(FILES ${headers}
# DESTINATION ${CMAKE_INSTALL_PREFIX}/include
- DESTINATION ${CMAKE_INSTALL_INCLUDEDIR}
+ DESTINATION ${CMAKE_INSTALL_INCLUDEDIR}/SuperLU
)

2662
superlu-removemc64.patch Normal file

File diff suppressed because it is too large Load Diff

BIN
superlu_5.2.1.tar.gz Normal file

Binary file not shown.