- Rearrange the spec
- Link in necessary libs when making shared CHOLMOD lib (BZ #475411) - Link with ATLAS' blas and lapack libs Wed Dec 17 2008 Deji Akingunola <dakingun@gmail.com> - 3.2.0-2 - Rebuild for updated atlas
This commit is contained in:
parent
6c40aea2f1
commit
03ab4d8daf
216
suitesparse.spec
216
suitesparse.spec
@ -1,6 +1,6 @@
|
||||
Name: suitesparse
|
||||
Version: 3.2.0
|
||||
Release: 2%{?dist}
|
||||
Release: 3%{?dist}
|
||||
Summary: A collection of sparse matrix libraries
|
||||
|
||||
Group: System Environment/Libraries
|
||||
@ -9,7 +9,7 @@ URL: http://www.cise.ufl.edu/research/sparse/SuiteSparse
|
||||
Source0: http://www.cise.ufl.edu/research/sparse/SuiteSparse/SuiteSparse-%{version}.tar.gz
|
||||
BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n)
|
||||
|
||||
BuildRequires: blas-devel
|
||||
BuildRequires: atlas-devel
|
||||
Obsoletes: umfpack <= 5.0.1
|
||||
Obsoletes: ufsparse <= 2.1.1
|
||||
Provides: ufsparse = %{version}-%{release}
|
||||
@ -99,45 +99,78 @@ mkdir Devel Devel/AMD Devel/CHOLMOD Devel/KLU Devel/LDL Devel/UMFPACK \
|
||||
pushd AMD
|
||||
pushd Lib
|
||||
make CFLAGS="$RPM_OPT_FLAGS -fPIC"
|
||||
gcc -shared -Wl,-soname,libamd.so.%{amd_version_major} -o ../Lib/libamd.so.%{amd_version} `ls *.o`
|
||||
popd
|
||||
cp Lib/*.a Lib/*.so* ../Lib
|
||||
cp Include/*.h ../Include
|
||||
cp README.txt Doc/License Doc/ChangeLog ../Doc/AMD
|
||||
cp Doc/*.pdf ../Devel/AMD
|
||||
pushd ../Lib
|
||||
gcc -shared -Wl,-soname,libamd.so.%{amd_version_major} -o \
|
||||
libamd.so.%{amd_version} ../AMD/Lib/*.o
|
||||
ln -sf libamd.so.%{amd_version} libamd.so.%{amd_version_major}
|
||||
ln -sf libamd.so.%{amd_version} libamd.so
|
||||
cp -p ../AMD/Lib/*.a ./
|
||||
popd
|
||||
cp -p Include/*.h ../Include
|
||||
cp -p README.txt Doc/License Doc/ChangeLog ../Doc/AMD
|
||||
cp -p Doc/*.pdf ../Devel/AMD
|
||||
popd
|
||||
|
||||
pushd BTF
|
||||
pushd Lib
|
||||
make CFLAGS="$RPM_OPT_FLAGS -fPIC"
|
||||
gcc -shared -Wl,-soname,libbtf.so.%{btf_version_major} -o libbtf.so.%{btf_version} `ls *.o`
|
||||
popd
|
||||
cp Lib/*.a Lib/*.so* ../Lib
|
||||
cp Include/*.h ../Include
|
||||
cp README.txt Doc/* ../Doc/BTF
|
||||
pushd ../Lib
|
||||
gcc -shared -Wl,-soname,libbtf.so.%{btf_version_major} -o \
|
||||
libbtf.so.%{btf_version} ../BTF/Lib/*.o
|
||||
ln -sf libbtf.so.%{btf_version} libbtf.so.%{btf_version_major}
|
||||
ln -sf libbtf.so.%{btf_version} libbtf.so
|
||||
cp -p ../BTF/Lib/*.a ./
|
||||
popd
|
||||
cp -p Include/*.h ../Include
|
||||
cp -p README.txt Doc/* ../Doc/BTF
|
||||
popd
|
||||
|
||||
pushd CAMD
|
||||
pushd Lib
|
||||
make CFLAGS="$RPM_OPT_FLAGS -fPIC"
|
||||
gcc -shared -Wl,-soname,libcamd.so.%{camd_version_major} -o ../Lib/libcamd.so.%{camd_version} `ls *.o`
|
||||
popd
|
||||
cp Lib/*.a Lib/*.so* ../Lib
|
||||
cp Include/*.h ../Include
|
||||
cp README.txt Doc/ChangeLog Doc/License ../Doc/CAMD
|
||||
cp Doc/*.pdf ../Devel/CAMD
|
||||
pushd ../Lib
|
||||
gcc -shared -Wl,-soname,libcamd.so.%{camd_version_major} -o \
|
||||
libcamd.so.%{camd_version} ../CAMD/Lib/*.o
|
||||
ln -sf libcamd.so.%{camd_version} libcamd.so.%{camd_version_major}
|
||||
ln -sf libcamd.so.%{camd_version} libcamd.so
|
||||
cp -p ../CAMD/Lib/*.a ./
|
||||
popd
|
||||
cp -p Include/*.h ../Include
|
||||
cp -p README.txt Doc/ChangeLog Doc/License ../Doc/CAMD
|
||||
cp -p Doc/*.pdf ../Devel/CAMD
|
||||
popd
|
||||
|
||||
pushd CCOLAMD
|
||||
pushd Lib
|
||||
make CFLAGS="$RPM_OPT_FLAGS -fPIC"
|
||||
gcc -shared -Wl,-soname,libccolamd.so.%{ccolamd_version_major} -o libccolamd.so.%{ccolamd_version} `ls *.o`
|
||||
popd
|
||||
cp Lib/*.a Lib/*.so* ../Lib
|
||||
cp Include/*.h ../Include
|
||||
cp README.txt Doc/* ../Doc/CCOLAMD
|
||||
pushd ../Lib
|
||||
gcc -shared -Wl,-soname,libccolamd.so.%{ccolamd_version_major} -o \
|
||||
libccolamd.so.%{ccolamd_version} ../CCOLAMD/Lib/*.o
|
||||
ln -sf libccolamd.so.%{ccolamd_version} libccolamd.so.%{ccolamd_version_major}
|
||||
ln -sf libccolamd.so.%{ccolamd_version} libccolamd.so
|
||||
cp -p ../CCOLAMD/Lib/*.a ./
|
||||
popd
|
||||
cp -p Include/*.h ../Include
|
||||
cp -p README.txt Doc/* ../Doc/CCOLAMD
|
||||
popd
|
||||
pushd Lib
|
||||
|
||||
pushd COLAMD
|
||||
pushd Lib
|
||||
make CFLAGS="$RPM_OPT_FLAGS -fPIC"
|
||||
popd
|
||||
pushd ../Lib
|
||||
gcc -shared -Wl,-soname,libcolamd.so.%{colamd_version_major} -o \
|
||||
libcolamd.so.%{colamd_version} ../COLAMD/Lib/*.o
|
||||
ln -sf libcolamd.so.%{colamd_version} libcolamd.so.%{colamd_version_major}
|
||||
ln -sf libcolamd.so.%{colamd_version} libcolamd.so
|
||||
cp -p ../COLAMD/Lib/*.a ./
|
||||
popd
|
||||
cp -p Include/*.h ../Include
|
||||
cp -p README.txt Doc/* ../Doc/COLAMD
|
||||
popd
|
||||
|
||||
%if "%{?enable_metis}" == "1"
|
||||
@ -148,115 +181,111 @@ CHOLMOD_FLAGS="$RPM_OPT_FLAGS -DNPARTITION -fPIC"
|
||||
pushd CHOLMOD
|
||||
pushd Lib
|
||||
make CFLAGS="$CHOLMOD_FLAGS"
|
||||
gcc -shared -Wl,-soname,libcholmod.so.%{cholmod_version_major} -o ../Lib/libcholmod.so.%{cholmod_version} `ls *.o`
|
||||
popd
|
||||
cp Lib/*.a Lib/*.so* ../Lib
|
||||
cp Include/*.h ../Include
|
||||
cp README.txt ../Doc/CHOLMOD
|
||||
cp Cholesky/License.txt ../Doc/CHOLMOD/Cholesky_License.txt
|
||||
cp Core/License.txt ../Doc/CHOLMOD/Core_License.txt
|
||||
cp MatrixOps/License.txt ../Doc/CHOLMOD/MatrixOps_License.txt
|
||||
cp Partition/License.txt ../Doc/CHOLMOD/Partition_License.txt
|
||||
cp Supernodal/License.txt ../Doc/CHOLMOD/Supernodal_License.txt
|
||||
cp Doc/*.pdf ../Devel/CHOLMOD
|
||||
popd
|
||||
|
||||
pushd COLAMD
|
||||
pushd Lib
|
||||
make CFLAGS="$RPM_OPT_FLAGS -fPIC"
|
||||
gcc -shared -Wl,-soname,libcolamd.so.%{colamd_version_major} -o libcolamd.so.%{colamd_version} `ls *.o`
|
||||
pushd ../Lib
|
||||
gcc -shared -Wl,-soname,libcholmod.so.%{cholmod_version_major} -o \
|
||||
libcholmod.so.%{cholmod_version} ../CHOLMOD/Lib/*.o \
|
||||
-L%{_libdir}/atlas -lcblas -lclapack libamd.so.%{amd_version_major} \
|
||||
libcamd.so.%{camd_version_major} libcolamd.so.%{colamd_version_major} \
|
||||
libccolamd.so.%{ccolamd_version_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 ./
|
||||
popd
|
||||
cp Lib/*.a Lib/*.so* ../Lib
|
||||
cp Include/*.h ../Include
|
||||
cp README.txt Doc/* ../Doc/COLAMD
|
||||
cp -p Include/*.h ../Include
|
||||
cp -p README.txt ../Doc/CHOLMOD
|
||||
cp -p Cholesky/License.txt ../Doc/CHOLMOD/Cholesky_License.txt
|
||||
cp -p Core/License.txt ../Doc/CHOLMOD/Core_License.txt
|
||||
cp -p MatrixOps/License.txt ../Doc/CHOLMOD/MatrixOps_License.txt
|
||||
cp -p Partition/License.txt ../Doc/CHOLMOD/Partition_License.txt
|
||||
cp -p Supernodal/License.txt ../Doc/CHOLMOD/Supernodal_License.txt
|
||||
cp -p Doc/*.pdf ../Devel/CHOLMOD
|
||||
popd
|
||||
|
||||
%if "%{?enable_csparse}" == "1"
|
||||
pushd CSparse
|
||||
pushd Source
|
||||
make CFLAGS="$RPM_OPT_FLAGS -fPIC"
|
||||
gcc -shared -Wl,-soname,libcsparse.so.%{csparse_version_major} -o libcsparse.so.%{csparse_version} `ls *.o`
|
||||
cp *.a *.so* ../../Lib
|
||||
cp cs.h ../../Include
|
||||
cp -p cs.h ../../Include
|
||||
popd
|
||||
pushd ../Lib
|
||||
gcc -shared -Wl,-soname,libcsparse.so.%{csparse_version_major} -o \
|
||||
libcsparse.so.%{csparse_version} ../CSparse/Source/*.o
|
||||
ln -sf libcsparse.so.%{csparse_version} libcsparse.so.%{csparse_version_major}
|
||||
ln -sf libcsparse.so.%{csparse_version} libcsparse.so
|
||||
cp -p ../CSparse/Source/*.a ./
|
||||
popd
|
||||
mkdir ../Doc/CSparse/
|
||||
cp Doc/* ../Doc/CSparse
|
||||
cp -p Doc/* ../Doc/CSparse
|
||||
popd
|
||||
|
||||
%else
|
||||
pushd CXSparse
|
||||
pushd Lib
|
||||
make CFLAGS="$RPM_OPT_FLAGS -fPIC"
|
||||
gcc -shared -Wl,-soname,libcxsparse.so.%{cxsparse_version_major} -o libcxsparse.so.%{cxsparse_version} `ls *.o`
|
||||
popd
|
||||
cp Lib/*.a Lib/*.so* ../Lib
|
||||
cp Include/cs.h ../Include
|
||||
pushd ../Lib
|
||||
gcc -shared -Wl,-soname,libcxsparse.so.%{cxsparse_version_major} -o \
|
||||
libcxsparse.so.%{cxsparse_version} ../CXSparse/Lib/*.o
|
||||
ln -sf libcxsparse.so.%{cxsparse_version} libcxsparse.so.%{cxsparse_version_major}
|
||||
ln -sf libcxsparse.so.%{cxsparse_version} libcxsparse.so
|
||||
cp -p ../CXSparse/Lib/*.a ./
|
||||
popd
|
||||
cp -p Include/cs.h ../Include
|
||||
mkdir ../Doc/CXSparse/
|
||||
cp Doc/* ../Doc/CXSparse
|
||||
cp -p Doc/* ../Doc/CXSparse
|
||||
popd
|
||||
%endif
|
||||
|
||||
pushd KLU
|
||||
pushd Lib
|
||||
make CFLAGS="$RPM_OPT_FLAGS -fPIC"
|
||||
gcc -shared -Wl,-soname,libklu.so.%{klu_version_major} -o libklu.so.%{klu_version} `ls *.o`
|
||||
popd
|
||||
cp Lib/*.a Lib/*.so* ../Lib
|
||||
cp Include/*.h ../Include
|
||||
cp README.txt Doc/lesser.txt ../Doc/KLU
|
||||
pushd ../Lib
|
||||
gcc -shared -Wl,-soname,libklu.so.%{klu_version_major} -o \
|
||||
libklu.so.%{klu_version} ../KLU/Lib/*.o
|
||||
ln -sf libklu.so.%{klu_version} libklu.so.%{klu_version_major}
|
||||
ln -sf libklu.so.%{klu_version} libklu.so
|
||||
cp -p ../KLU/Lib/*.a ./
|
||||
popd
|
||||
cp -p Include/*.h ../Include
|
||||
cp -p README.txt Doc/lesser.txt ../Doc/KLU
|
||||
popd
|
||||
|
||||
pushd LDL
|
||||
pushd Lib
|
||||
make CFLAGS="$RPM_OPT_FLAGS -fPIC"
|
||||
gcc -shared -Wl,-soname,libldl.so.%{ldl_version_major} -o libldl.so.%{ldl_version} `ls *.o`
|
||||
popd
|
||||
cp Lib/*.a Lib/*.so* ../Lib
|
||||
cp Include/*.h ../Include
|
||||
cp README.txt Doc/ChangeLog Doc/lesser.txt ../Doc/LDL
|
||||
cp Doc/*.pdf ../Devel/LDL
|
||||
pushd ../Lib
|
||||
gcc -shared -Wl,-soname,libldl.so.%{ldl_version_major} -o \
|
||||
libldl.so.%{ldl_version} ../LDL/Lib/*.o
|
||||
ln -sf libldl.so.%{ldl_version} libldl.so.%{ldl_version_major}
|
||||
ln -sf libldl.so.%{ldl_version} libldl.so
|
||||
cp -p ../LDL/Lib/*.a ./
|
||||
popd
|
||||
cp -p Include/*.h ../Include
|
||||
cp -p README.txt Doc/ChangeLog Doc/lesser.txt ../Doc/LDL
|
||||
cp -p Doc/*.pdf ../Devel/LDL
|
||||
popd
|
||||
|
||||
pushd UMFPACK
|
||||
pushd Lib
|
||||
make CFLAGS="$RPM_OPT_FLAGS -fPIC"
|
||||
gcc -shared -Wl,-soname,libumfpack.so.%{umfpack_version_major} -o ../Lib/libumfpack.so.%{umfpack_version} `ls *.o` -lblas -lm
|
||||
popd
|
||||
cp Lib/*.a Lib/*.so* ../Lib
|
||||
cp Include/*.h ../Include
|
||||
cp README.txt Doc/License Doc/ChangeLog Doc/gpl.txt ../Doc/UMFPACK
|
||||
cp Doc/*.pdf ../Devel/UMFPACK
|
||||
pushd ../Lib
|
||||
gcc -shared -Wl,-soname,libumfpack.so.%{umfpack_version_major} -o \
|
||||
libumfpack.so.%{umfpack_version} ../UMFPACK/Lib/*.o \
|
||||
-L%{_libdir}/atlas -lcblas -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 ./
|
||||
popd
|
||||
cp -p Include/*.h ../Include
|
||||
cp -p README.txt Doc/License Doc/ChangeLog Doc/gpl.txt ../Doc/UMFPACK
|
||||
cp -p Doc/*.pdf ../Devel/UMFPACK
|
||||
popd
|
||||
|
||||
pushd Lib
|
||||
ln -sf libamd.so.%{amd_version} libamd.so.%{amd_version_major}
|
||||
ln -sf libamd.so.%{amd_version} libamd.so
|
||||
ln -sf libbtf.so.%{btf_version} libbtf.so.%{btf_version_major}
|
||||
ln -sf libbtf.so.%{btf_version} libbtf.so
|
||||
ln -sf libcamd.so.%{camd_version} libcamd.so.%{camd_version_major}
|
||||
ln -sf libcamd.so.%{camd_version} libcamd.so
|
||||
ln -sf libccolamd.so.%{ccolamd_version} libccolamd.so.%{ccolamd_version_major}
|
||||
ln -sf libccolamd.so.%{ccolamd_version} libccolamd.so
|
||||
ln -sf libcholmod.so.%{cholmod_version} libcholmod.so.%{cholmod_version_major}
|
||||
ln -sf libcholmod.so.%{cholmod_version} libcholmod.so
|
||||
ln -sf libcolamd.so.%{colamd_version} libcolamd.so.%{colamd_version_major}
|
||||
ln -sf libcolamd.so.%{colamd_version} libcolamd.so
|
||||
%if "%{?enable_csparse}" == "1"
|
||||
ln -sf libcsparse.so.%{csparse_version} libcsparse.so.%{csparse_version_major}
|
||||
ln -sf libcsparse.so.%{csparse_version} libcsparse.so
|
||||
%else
|
||||
ln -sf libcxsparse.so.%{cxsparse_version} libcxsparse.so.%{cxsparse_version_major}
|
||||
ln -sf libcxsparse.so.%{cxsparse_version} libcxsparse.so
|
||||
%endif
|
||||
ln -sf libklu.so.%{klu_version} libklu.so.%{klu_version_major}
|
||||
ln -sf libklu.so.%{klu_version} libklu.so
|
||||
ln -sf libldl.so.%{ldl_version} libldl.so.%{ldl_version_major}
|
||||
ln -sf libldl.so.%{ldl_version} libldl.so
|
||||
ln -sf libumfpack.so.%{umfpack_version} libumfpack.so.%{umfpack_version_major}
|
||||
ln -sf libumfpack.so.%{umfpack_version} libumfpack.so
|
||||
popd
|
||||
|
||||
cp UFconfig/UFconfig.h Include
|
||||
cp -p UFconfig/UFconfig.h Include
|
||||
|
||||
%install
|
||||
rm -rf ${RPM_BUILD_ROOT}
|
||||
@ -298,6 +327,11 @@ rm -rf ${RPM_BUILD_ROOT}
|
||||
%{_libdir}/lib*.a
|
||||
|
||||
%changelog
|
||||
* Wed Dec 17 2008 Deji Akingunola <dakingun@gmail.com> - 3.2.0-3
|
||||
- Rearrange the spec
|
||||
- Link in necessary libs when making shared CHOLMOD lib (BZ #475411)
|
||||
- Link with ATLAS' blas and lapack libs
|
||||
|
||||
* Wed Dec 17 2008 Deji Akingunola <dakingun@gmail.com> - 3.2.0-2
|
||||
- Rebuild for updated atlas
|
||||
|
||||
|
||||
Loading…
Reference in New Issue
Block a user