From c4082d4289d51220cb10ecba81cadb24be0e5f5f Mon Sep 17 00:00:00 2001 From: Nils Philippsen Date: Mon, 19 Nov 2012 17:59:08 +0100 Subject: [PATCH] explicitly link libsuitesparseconfig where necessary --- suitesparse.spec | 47 ++++++++++++++++++++++++++++------------------- 1 file 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 - 4.0.2-2 +- explicitly link libsuitesparseconfig where necessary + * Fri Nov 16 2012 Deji Akingunola - 4.0.2-1 - Update to 4.0.2