[suitesparse] explicitly link libsuitesparseconfig where necessary
Nils Philippsen
nphilipp at fedoraproject.org
Mon Nov 19 16:59:28 UTC 2012
commit c4082d4289d51220cb10ecba81cadb24be0e5f5f
Author: Nils Philippsen <nils at redhat.com>
Date: Mon Nov 19 17:59:08 2012 +0100
explicitly link libsuitesparseconfig where necessary
suitesparse.spec | 47 ++++++++++++++++++++++++++++-------------------
1 files changed, 28 insertions(+), 19 deletions(-)
---
diff --git a/suitesparse.spec b/suitesparse.spec
index 2cfc409..bdba0ed 100644
--- a/suitesparse.spec
+++ b/suitesparse.spec
@@ -1,6 +1,6 @@
Name: suitesparse
Version: 4.0.2
-Release: 1%{?dist}
+Release: 2%{?dist}
Summary: A collection of sparse matrix libraries
Group: System Environment/Libraries
@@ -116,6 +116,20 @@ This package contains documentation files for %{name}.
mkdir -p Doc/{AMD,BTF,CAMD,CCOLAMD,CHOLMOD,COLAMD,KLU,LDL,UMFPACK,SPQR,RBio} Lib Include
+# SuiteSparse_config needs to come first
+pushd SuiteSparse_config
+ make CFLAGS="$RPM_OPT_FLAGS -fPIC"
+ ar x libsuitesparseconfig.a
+ pushd ../Lib
+ gcc -shared -Wl,-soname,libsuitesparseconfig.so.%{SuiteSparse_config_major} -o \
+ libsuitesparseconfig.so.%{SuiteSparse_config_ver} ../SuiteSparse_config/*.o
+ ln -sf libsuitesparseconfig.so.%{SuiteSparse_config_ver} libsuitesparseconfig.so.%{SuiteSparse_config_major}
+ ln -sf libsuitesparseconfig.so.%{SuiteSparse_config_ver} libsuitesparseconfig.so
+ cp -p ../SuiteSparse_config/*.a ./
+ popd
+ cp -p *.h ../Include
+popd
+
pushd AMD
pushd Lib
make CFLAGS="$RPM_OPT_FLAGS -fPIC"
@@ -205,7 +219,8 @@ pushd CHOLMOD
libcholmod.so.%{cholmod_version} ../CHOLMOD/Lib/*.o \
-L%{_libdir}/atlas -lcblas -llapack libamd.so.%{amd_version_major} \
libcamd.so.%{camd_version_major} libcolamd.so.%{colamd_version_major} \
- libccolamd.so.%{ccolamd_version_major} -lm
+ libccolamd.so.%{ccolamd_version_major} \
+ libsuitesparseconfig.so.%{SuiteSparse_config_major} -lm
ln -sf libcholmod.so.%{cholmod_version} libcholmod.so.%{cholmod_version_major}
ln -sf libcholmod.so.%{cholmod_version} libcholmod.so
cp -p ../CHOLMOD/Lib/*.a ./
@@ -262,7 +277,8 @@ pushd KLU
gcc -shared -Wl,-soname,libklu.so.%{klu_version_major} -o \
libklu.so.%{klu_version} ../KLU/Lib/*.o \
libamd.so.%{amd_version_major} libcolamd.so.%{colamd_version_major} \
- libbtf.so.%{btf_version_major} libcholmod.so.%{cholmod_version_major}
+ libbtf.so.%{btf_version_major} libcholmod.so.%{cholmod_version_major} \
+ libsuitesparseconfig.so.%{SuiteSparse_config_major}
ln -sf libklu.so.%{klu_version} libklu.so.%{klu_version_major}
ln -sf libklu.so.%{klu_version} libklu.so
cp -p ../KLU/Lib/*.a ./
@@ -294,7 +310,8 @@ pushd UMFPACK
gcc -shared -Wl,-soname,libumfpack.so.%{umfpack_version_major} -o \
libumfpack.so.%{umfpack_version} ../UMFPACK/Lib/*.o \
-L%{_libdir}/atlas -lcblas -llapack libamd.so.%{amd_version_major} \
- libcholmod.so.%{cholmod_version_major} -lm
+ libcholmod.so.%{cholmod_version_major} \
+ libsuitesparseconfig.so.%{SuiteSparse_config_major} -lm
ln -sf libumfpack.so.%{umfpack_version} libumfpack.so.%{umfpack_version_major}
ln -sf libumfpack.so.%{umfpack_version} libumfpack.so
cp -p ../UMFPACK/Lib/*.a ./
@@ -311,7 +328,8 @@ pushd SPQR
g++ -shared -Wl,-soname,libspqr.so.%{spqr_version_major} -o \
libspqr.so.%{spqr_version} ../SPQR/Lib/*.o \
-L%{_libdir}/atlas -L%{_libdir} -lcblas -llapack %{?with_tbb:-ltbb -ltbbmalloc} \
- libcholmod.so.%{cholmod_version_major} -lm
+ libcholmod.so.%{cholmod_version_major} \
+ libsuitesparseconfig.so.%{SuiteSparse_config_major} -lm
ln -sf libspqr.so.%{spqr_version} libspqr.so.%{spqr_version_major}
ln -sf libspqr.so.%{spqr_version} libspqr.so
cp -p ../SPQR/Lib/*.a ./
@@ -321,26 +339,14 @@ pushd SPQR
cp -p README_SPQR.txt Doc/* ../Doc/SPQR
popd
-pushd SuiteSparse_config
- make CFLAGS="$RPM_OPT_FLAGS -fPIC"
- ar x libsuitesparseconfig.a
- pushd ../Lib
- gcc -shared -Wl,-soname,libsuitesparseconfig.so.%{SuiteSparse_config_ver_major} -o \
- libsuitesparseconfig.so.%{SuiteSparse_config_ver} ../SuiteSparse_config/*.o
- ln -sf libsuitesparseconfig.so.%{SuiteSparse_config_ver} libsuitesparseconfig.so.%{SuiteSparse_config_major}
- ln -sf libsuitesparseconfig.so.%{SuiteSparse_config_ver} libsuitesparseconfig.so
- cp -p ../SuiteSparse_config/*.a ./
- popd
- cp -p *.h ../Include
-popd
-
pushd RBio
pushd Lib
make CFLAGS="$RPM_OPT_FLAGS -fPIC"
popd
pushd ../Lib
gcc -shared -Wl,-soname,librbio.so.%{rbio_version_major} -o \
- librbio.so.%{rbio_version} ../RBio/Lib/*.o
+ librbio.so.%{rbio_version} ../RBio/Lib/*.o \
+ libsuitesparseconfig.so.%{SuiteSparse_config_major}
ln -sf librbio.so.%{rbio_version} librbio.so.%{rbio_version_major}
ln -sf librbio.so.%{rbio_version} librbio.so
cp -p ../RBio/Lib/*.a ./
@@ -391,6 +397,9 @@ rm -rf ${RPM_BUILD_ROOT}
%doc Doc/*
%changelog
+* Mon Nov 19 2012 Nils Philippsen <nils at redhat.com> - 4.0.2-2
+- explicitly link libsuitesparseconfig where necessary
+
* Fri Nov 16 2012 Deji Akingunola <dakingun at gmail.com> - 4.0.2-1
- Update to 4.0.2
More information about the scm-commits
mailing list