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 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.orig/make.inc 2011-10-27 21:49:47.000000000 +0200
+++ SuperLU_4.3/make.inc 2012-12-20 22:21:26.422475039 +0100 +++ SuperLU_4.3/make.inc 2013-01-08 21:28:11.755985160 +0100
@@ -21,14 +21,14 @@ @@ -21,14 +21,15 @@
# #
# The name of the libraries to be created/linked to # 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 -SUPERLULIB = $(SuperLUroot)/lib/libsuperlu_4.2.a
+SuperLUroot = ../ +SuperLUroot = ../
+SUPERLULIB = $(SuperLUroot)/lib/libsuperlu_4.3.a +SUPERLULIB = $(SuperLUroot)/lib/libsuperlu_4.3.a
+SUPERLUSLIB = -L../lib -lsuperlu
TMGLIB = libtmglib.a TMGLIB = libtmglib.a
## BLASLIB = $(SuperLUroot)/lib/libblas.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 ## ATLAS BLAS causes single-precision to fail
#BLASLIB = -L/usr/lib/atlas -lblas #BLASLIB = -L/usr/lib/atlas -lblas
@@ -46,12 +46,19 @@ @@ -46,12 +47,19 @@
RANLIB = ranlib RANLIB = ranlib
CC = gcc 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 # C preprocessor defs for compilation for the Fortran interface
@@ -61,5 +68,5 @@ @@ -61,5 +69,5 @@
# #
# The directory in which Matlab is installed # The directory in which Matlab is installed
# #
-MATLAB = /usr/sww/matlab -MATLAB = /usr/sww/matlab
+#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 Tue Dec 18 22:21:27 UTC 2012 - scorot@free.fr

View File

@ -1,7 +1,7 @@
# #
# spec file for package superlu # 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 # All modifications and additions to the file contributed by third parties
# remain the property of their copyright owners, unless otherwise agreed # remain the property of their copyright owners, unless otherwise agreed
@ -22,14 +22,20 @@ License: BSD-3-Clause
Group: Development/Libraries/C and C++ Group: Development/Libraries/C and C++
Version: 4.3 Version: 4.3
Release: 0 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 Source1: superlu_ug.pdf
Source2: README.SUSE
# PATCH-FEATURE-OPENSUSE superlu-4.3.diff : add compiler and build flags in make.inc # PATCH-FEATURE-OPENSUSE superlu-4.3.diff : add compiler and build flags in make.inc
Patch: superlu-4.3.diff Patch: superlu-4.3.diff
# PATCH-FIX-UPSTREAM superlu-4.3-include.patch : avoid implicit declaration warnings # PATCH-FIX-UPSTREAM superlu-4.3-include.patch : avoid implicit declaration warnings
Patch1: superlu-4.3-include.patch Patch1: superlu-4.3-include.patch
# PATCH-FIX-UPSTREAM superlu-4.3-dont-opt-away.diff # PATCH-FIX-UPSTREAM superlu-4.3-dont-opt-away.diff
Patch2: 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/ Url: http://crd.lbl.gov/~xiaoye/SuperLU/
BuildRequires: blas BuildRequires: blas
BuildRequires: fdupes BuildRequires: fdupes
@ -71,21 +77,22 @@ developing applications that use %{name}.
%patch -p1 %patch -p1
%patch1 -p1 %patch1 -p1
%patch2 -p1 %patch2 -p1
%patch3 -p1
# superlu_ug.pdf in %%doc # superlu_ug.pdf in %%doc
cp %SOURCE1 ./ cp %SOURCE1 %SOURCE2 ./
%build %build
make make lib
mkdir tmp mkdir tmp
(cd tmp; ar -x ../lib/libsuperlu_%{version}.a) (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 %install
mkdir -p %{buildroot}%{_libdir} mkdir -p %{buildroot}%{_libdir}
mkdir -p %{buildroot}%{_includedir} mkdir -p %{buildroot}%{_includedir}
install -m644 SRC/*.h %{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.%{version} %{buildroot}%{_libdir}/libsuperlu.so.4
ln -s %{_libdir}/libsuperlu.so.4 %{buildroot}%{_libdir}/libsuperlu.so ln -s %{_libdir}/libsuperlu.so.4 %{buildroot}%{_libdir}/libsuperlu.so
@ -102,10 +109,13 @@ cp FORTRAN/README README.fortran
%fdupes -s examples %fdupes -s examples
%check %check
cd TESTING ln -s examples/ EXAMPLE
./stest export LD_LIBRARY_PATH=%{buildroot}%{_libdir}
./ztest make testing
cd .. echo -ne "\nTest results\n"
for i in stest dtest ctest ztest; do
cat TESTING/$i.out
done
%post -n libsuperlu4 -p /sbin/ldconfig %post -n libsuperlu4 -p /sbin/ldconfig
@ -113,7 +123,7 @@ cd ..
%files -n libsuperlu4 %files -n libsuperlu4
%defattr(-,root,root,-) %defattr(-,root,root,-)
%doc README MATLAB %doc README MATLAB README.SUSE
%{_libdir}/*.so.* %{_libdir}/*.so.*
%files devel %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