Accepting request 148856 from home:scorot:branches:devel:libraries:c_c++

- repackage original source tarball in order to remove the HSL mc64ad routine that cannot be redistributed [bnc#796236]
- add README.SUSE file in the %%doc in order to explain that change

OBS-URL: https://build.opensuse.org/request/show/148856
OBS-URL: https://build.opensuse.org/package/show/devel:libraries:c_c++/superlu?expand=0&rev=7
This commit is contained in:
Ismail Dönmez 2013-01-17 19:16:01 +00:00 committed by Git OBS Bridge
parent 849e606914
commit 60f3971640
7 changed files with 140 additions and 18 deletions

7
README.SUSE Normal file
View File

@ -0,0 +1,7 @@
This version of SuperLU is slightly different form the original SuperLU
available on http://crd.lbl.gov/~xiaoye/SuperLU/. For legal reasons the
routine mc64ad from the Harwell Subroutine Library cannot be redistributed
by openSUSE and have been removed form the sources.
However the SuperLU library provided by openSUSE is fully functionnal
except that the mc64ad routine is not used.

View File

@ -0,0 +1,48 @@
diff -aruN SuperLU_4.3.orig/SRC/Makefile SuperLU_4.3/SRC/Makefile
--- SuperLU_4.3.orig/SRC/Makefile 2011-10-27 21:49:47.000000000 +0200
+++ SuperLU_4.3/SRC/Makefile 2013-01-08 21:59:19.495919213 +0100
@@ -51,7 +51,7 @@
sp_coletree.o sp_preorder.o sp_ienv.o relax_snode.o \
heap_relax_snode.o colamd.o \
ilu_relax_snode.o ilu_heap_relax_snode.o mark_relax.o \
- mc64ad.o qselect.o
+ qselect.o
SLUSRC = \
sgssv.o sgssvx.o \
@@ -63,7 +63,7 @@
sreadhb.o sreadrb.o sreadtriple.o \
scolumn_dfs.o scolumn_bmod.o spivotL.o spruneL.o \
smemory.o sutil.o smyblas2.o \
- sgsisx.o sgsitrf.o sldperm.o \
+ sgsitrf.o \
ilu_sdrop_row.o ilu_ssnode_dfs.o \
ilu_scolumn_dfs.o ilu_spanel_dfs.o ilu_scopy_to_ucol.o \
ilu_spivotL.o sdiagonal.o
@@ -77,7 +77,7 @@
dreadhb.o dreadrb.o dreadtriple.o \
dcolumn_dfs.o dcolumn_bmod.o dpivotL.o dpruneL.o \
dmemory.o dutil.o dmyblas2.o \
- dgsisx.o dgsitrf.o dldperm.o \
+ dgsitrf.o \
ilu_ddrop_row.o ilu_dsnode_dfs.o \
ilu_dcolumn_dfs.o ilu_dpanel_dfs.o ilu_dcopy_to_ucol.o \
ilu_dpivotL.o ddiagonal.o
@@ -92,7 +92,7 @@
creadhb.o creadrb.o creadtriple.o \
ccolumn_dfs.o ccolumn_bmod.o cpivotL.o cpruneL.o \
cmemory.o cutil.o cmyblas2.o \
- cgsisx.o cgsitrf.o cldperm.o \
+ cgsitrf.o \
ilu_cdrop_row.o ilu_csnode_dfs.o \
ilu_ccolumn_dfs.o ilu_cpanel_dfs.o ilu_ccopy_to_ucol.o \
ilu_cpivotL.o cdiagonal.o
@@ -106,7 +106,7 @@
zreadhb.o zreadrb.o zreadtriple.o \
zcolumn_dfs.o zcolumn_bmod.o zpivotL.o zpruneL.o \
zmemory.o zutil.o zmyblas2.o \
- zgsisx.o zgsitrf.o zldperm.o \
+ zgsitrf.o \
ilu_zdrop_row.o ilu_zsnode_dfs.o \
ilu_zcolumn_dfs.o ilu_zpanel_dfs.o ilu_zcopy_to_ucol.o \
ilu_zpivotL.o zdiagonal.o

View File

@ -1,7 +1,7 @@
diff -aruN SuperLU_4.3.orig/make.inc SuperLU_4.3/make.inc
--- SuperLU_4.3.orig/make.inc 2011-10-27 21:49:47.000000000 +0200
+++ SuperLU_4.3/make.inc 2012-12-20 22:21:26.422475039 +0100
@@ -21,14 +21,14 @@
+++ SuperLU_4.3/make.inc 2013-01-08 21:28:11.755985160 +0100
@@ -21,14 +21,15 @@
#
# The name of the libraries to be created/linked to
#
@ -9,6 +9,7 @@ diff -aruN SuperLU_4.3.orig/make.inc SuperLU_4.3/make.inc
-SUPERLULIB = $(SuperLUroot)/lib/libsuperlu_4.2.a
+SuperLUroot = ../
+SUPERLULIB = $(SuperLUroot)/lib/libsuperlu_4.3.a
+SUPERLUSLIB = -L../lib -lsuperlu
TMGLIB = libtmglib.a
## BLASLIB = $(SuperLUroot)/lib/libblas.a
@ -19,7 +20,7 @@ diff -aruN SuperLU_4.3.orig/make.inc SuperLU_4.3/make.inc
## ATLAS BLAS causes single-precision to fail
#BLASLIB = -L/usr/lib/atlas -lblas
@@ -46,12 +46,19 @@
@@ -46,12 +47,19 @@
RANLIB = ranlib
CC = gcc
@ -45,10 +46,49 @@ diff -aruN SuperLU_4.3.orig/make.inc SuperLU_4.3/make.inc
#
# C preprocessor defs for compilation for the Fortran interface
@@ -61,5 +68,5 @@
@@ -61,5 +69,5 @@
#
# The directory in which Matlab is installed
#
-MATLAB = /usr/sww/matlab
+#MATLAB = /usr/sww/matlab
diff -aruN SuperLU_4.3.orig/TESTING/Makefile SuperLU_4.3/TESTING/Makefile
--- SuperLU_4.3.orig/TESTING/Makefile 2011-10-27 21:49:47.000000000 +0200
+++ SuperLU_4.3/TESTING/Makefile 2013-01-08 21:12:51.444017656 +0100
@@ -54,7 +54,7 @@
./stest: $(SLINTST) $(ALINTST) $(SUPERLULIB) $(TMGLIB)
$(LOADER) $(LOADOPTS) $(SLINTST) $(ALINTST) \
- $(TMGLIB) $(SUPERLULIB) $(BLASLIB) -lm -o $@
+ $(TMGLIB) $(SUPERLUSLIB) $(BLASLIB) -lm -o $@
stest.out: stest stest.csh
@echo Testing SINGLE PRECISION linear equation routines
@@ -64,7 +64,7 @@
./dtest: $(DLINTST) $(ALINTST) $(SUPERLULIB) $(TMGLIB)
$(LOADER) $(LOADOPTS) $(DLINTST) $(ALINTST) \
- $(TMGLIB) $(SUPERLULIB) $(BLASLIB) -lm -o $@
+ $(TMGLIB) $(SUPERLUSLIB) $(BLASLIB) -lm -o $@
dtest.out: dtest dtest.csh
@echo Testing DOUBLE PRECISION linear equation routines
@@ -74,7 +74,7 @@
./ctest: $(CLINTST) $(ALINTST) $(SUPERLULIB) $(TMGLIB)
$(LOADER) $(LOADOPTS) $(CLINTST) $(ALINTST) \
- $(TMGLIB) $(SUPERLULIB) $(BLASLIB) -lm -o $@
+ $(TMGLIB) $(SUPERLUSLIB) $(BLASLIB) -lm -o $@
ctest.out: ctest ctest.csh
@echo Testing SINGLE COMPLEX linear equation routines
@@ -84,7 +84,7 @@
./ztest: $(ZLINTST) $(ALINTST) $(SUPERLULIB) $(TMGLIB)
$(LOADER) $(LOADOPTS) $(ZLINTST) $(ALINTST) \
- $(TMGLIB) $(SUPERLULIB) $(BLASLIB) -lm -o $@
+ $(TMGLIB) $(SUPERLUSLIB) $(BLASLIB) -lm -o $@
ztest.out: ztest ztest.csh
@echo Testing DOUBLE COMPLEX linear equation routines

View File

@ -1,3 +1,20 @@
-------------------------------------------------------------------
Tue Jan 15 21:14:51 UTC 2013 - scorot@free.fr
- repackage original source tarball in order to remove the
HSL mc64ad routine that caonnt be redistributed bnc#796236
- add README.SUSE file in the %%doci in order to explain
that change
-------------------------------------------------------------------
Tue Jan 8 20:47:13 UTC 2013 - scorot@free.fr
- add patch superlu-4.3-disable-hsl.patch in order to disable HSL
code from the library
- update patch superlu-4.3.diff so that test routines are run
against the shared library
- build tests routines in %%check section
-------------------------------------------------------------------
Tue Dec 18 22:21:27 UTC 2012 - scorot@free.fr

View File

@ -1,7 +1,7 @@
#
# spec file for package superlu
#
# Copyright (c) 2012 SUSE LINUX Products GmbH, Nuernberg, Germany.
# Copyright (c) 2013 SUSE LINUX Products GmbH, Nuernberg, Germany.
#
# All modifications and additions to the file contributed by third parties
# remain the property of their copyright owners, unless otherwise agreed
@ -22,14 +22,20 @@ License: BSD-3-Clause
Group: Development/Libraries/C and C++
Version: 4.3
Release: 0
Source: ftp://ftp.netlib.org/scalapack/prototype/superlu_%{version}.tar.bz2
Source: ftp://ftp.netlib.org/scalapack/prototype/superlu_%{version}-bsd.tar.bz2
Source1: superlu_ug.pdf
Source2: README.SUSE
# PATCH-FEATURE-OPENSUSE superlu-4.3.diff : add compiler and build flags in make.inc
Patch: superlu-4.3.diff
# PATCH-FIX-UPSTREAM superlu-4.3-include.patch : avoid implicit declaration warnings
Patch1: superlu-4.3-include.patch
# PATCH-FIX-UPSTREAM superlu-4.3-dont-opt-away.diff
Patch2: superlu-4.3-dont-opt-away.diff
# PATCH-FIX-OPENSUSE superlu-4.3-remove-hsl.patch [bnc#796236]
# The Harwell Subroutine Library (HSL) routine m64ad.c have been removed
# from the original sources for legal reasons. This patch disables the inclusion of
# this routine in the library which, however, remains fully functionnal
Patch3: superlu-4.3-disable-hsl.patch
Url: http://crd.lbl.gov/~xiaoye/SuperLU/
BuildRequires: blas
BuildRequires: fdupes
@ -71,21 +77,22 @@ developing applications that use %{name}.
%patch -p1
%patch1 -p1
%patch2 -p1
%patch3 -p1
# superlu_ug.pdf in %%doc
cp %SOURCE1 ./
cp %SOURCE1 %SOURCE2 ./
%build
make
make lib
mkdir tmp
(cd tmp; ar -x ../lib/libsuperlu_%{version}.a)
gfortran -shared -Wl,-soname,libsuperlu.so.4 -o libsuperlu.so.%{version} tmp/*.o
gfortran -shared -Wl,-soname,libsuperlu.so.4 -o lib/libsuperlu.so tmp/*.o
%install
mkdir -p %{buildroot}%{_libdir}
mkdir -p %{buildroot}%{_includedir}
install -m644 SRC/*.h %{buildroot}%{_includedir}
install -m755 *.so.* %{buildroot}%{_libdir}
install -m755 lib/libsuperlu.so %{buildroot}%{_libdir}/libsuperlu.so.%{version}
ln -s %{_libdir}/libsuperlu.so.%{version} %{buildroot}%{_libdir}/libsuperlu.so.4
ln -s %{_libdir}/libsuperlu.so.4 %{buildroot}%{_libdir}/libsuperlu.so
@ -102,10 +109,13 @@ cp FORTRAN/README README.fortran
%fdupes -s examples
%check
cd TESTING
./stest
./ztest
cd ..
ln -s examples/ EXAMPLE
export LD_LIBRARY_PATH=%{buildroot}%{_libdir}
make testing
echo -ne "\nTest results\n"
for i in stest dtest ctest ztest; do
cat TESTING/$i.out
done
%post -n libsuperlu4 -p /sbin/ldconfig
@ -113,7 +123,7 @@ cd ..
%files -n libsuperlu4
%defattr(-,root,root,-)
%doc README MATLAB
%doc README MATLAB README.SUSE
%{_libdir}/*.so.*
%files devel

3
superlu_4.3-bsd.tar.bz2 Normal file
View File

@ -0,0 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:7147d51d0218ada61ef190397595f77df7de42ff4f84087b81918ec6a2564039
size 2159982

View File

@ -1,3 +0,0 @@
version https://git-lfs.github.com/spec/v1
oid sha256:9f6df0c9dd5025c6ff695cc274c76eedceb90b0feddabafc6ce6379145e00681
size 2227499