From bf328b70e31e26c8cdf2265647904d1a5b38412a Mon Sep 17 00:00:00 2001 From: blue-devil Date: Wed, 10 Jun 2020 00:23:51 +0300 Subject: [PATCH] suitesparse : ver bump --- science/mathematics/SuiteSparse/actions.py | 258 +----------------- .../files/suitesparse-no-demo.patch | 11 + science/mathematics/SuiteSparse/pspec.xml | 43 +-- .../mathematics/SuiteSparse/translations.xml | 5 +- 4 files changed, 48 insertions(+), 269 deletions(-) create mode 100644 science/mathematics/SuiteSparse/files/suitesparse-no-demo.patch diff --git a/science/mathematics/SuiteSparse/actions.py b/science/mathematics/SuiteSparse/actions.py index d91f45e4f3..bc98c49fb3 100644 --- a/science/mathematics/SuiteSparse/actions.py +++ b/science/mathematics/SuiteSparse/actions.py @@ -4,260 +4,20 @@ # Licensed under the GNU General Public License, version 3. # See the file http://www.gnu.org/licenses/gpl.txt -from pisi.actionsapi import autotools from pisi.actionsapi import get from pisi.actionsapi import pisitools from pisi.actionsapi import shelltools -amd_version = "2.3.1" -amd_version_major = "2" -btf_version = "1.2.0" -btf_version_major = "1" -camd_version = "2.3.1" -camd_version_major = "2" -ccolamd_version = "2.8.0" -ccolamd_version_major = "2" -cholmod_version = "2.0.1" -cholmod_version_major = "2" -colamd_version = "2.8.0" -colamd_version_major = "2" -csparse_version = "3.1.1" -csparse_version_major = "3" -klu_version = "1.2.1" -klu_version_major = "1" -ldl_version = "2.1.0" -ldl_version_major = "2" -umfpack_version = "5.6.1" -umfpack_version_major = "5" -spqr_version = "1.3.1" -spqr_version_major = "1" -rbio_version = "2.1.1" -rbio_version_major = "2" -SuiteSparse_config_ver = "4.2.0" -SuiteSparse_config_major = "4" +shelltools.export("JOBS", get.makeJOBS().replace("-j", "")) def build(): - shelltools.export("CFLAGS","%s -fPIC -O3" % get.CFLAGS()) - - for d in ("AMD", "BTF", "CAMD", "CCOLAMD", "CHOLMOD", "COLAMD", "CSparse", "KLU", "LDL", "UMFPACK", "SPQR", "RBio"): - shelltools.makedirs("Doc/%s" % d) - shelltools.makedirs("Include") - shelltools.makedirs("Lib") - - shelltools.cd("SuiteSparse_config") - autotools.make() - shelltools.system("ar x libsuitesparseconfig.a") - shelltools.cd("../Lib") - shelltools.system("gcc -shared -Wl,-soname,libsuitesparseconfig.so.%s -o \ - libsuitesparseconfig.so.%s ../SuiteSparse_config/*.o" % (SuiteSparse_config_major, SuiteSparse_config_ver)) - shelltools.sym("libsuitesparseconfig.so.%s" % SuiteSparse_config_ver, "libsuitesparseconfig.so.%s" % SuiteSparse_config_major) - shelltools.sym("libsuitesparseconfig.so.%s" % SuiteSparse_config_ver, "libsuitesparseconfig.so") - shelltools.copy("../SuiteSparse_config/*.a", ".") - shelltools.cd("../SuiteSparse_config") - shelltools.copy("*.h", "../Include") - - shelltools.cd("../AMD/Lib") - autotools.make() - shelltools.cd("../../Lib") - shelltools.system("gcc -shared -Wl,-soname,libamd.so.%s -o \ - libamd.so.%s ../AMD/Lib/*.o -lm -lrt" % (amd_version_major, amd_version)) - shelltools.sym("libamd.so.%s" % amd_version, "libamd.so.%s" % amd_version_major) - shelltools.sym("libamd.so.%s" % amd_version, "libamd.so") - shelltools.copy("../AMD/Lib/*.a", ".") - shelltools.cd("../AMD") - shelltools.copy("Include/*.h", "../Include") - for d in ("README.txt", "Doc/License", "Doc/ChangeLog", "Doc/*.pdf"): - shelltools.copy(d, "../Doc/AMD") - - shelltools.cd("../BTF/Lib") - autotools.make() - shelltools.cd("../../Lib") - shelltools.system("gcc -shared -Wl,-soname,libbtf.so.%s -o \ - libbtf.so.%s ../BTF/Lib/*.o" % (btf_version_major, btf_version)) - shelltools.sym("libbtf.so.%s" % btf_version, "libbtf.so.%s" % btf_version_major) - shelltools.sym("libbtf.so.%s" % btf_version, "libbtf.so") - shelltools.copy("../BTF/Lib/*.a", ".") - shelltools.cd("../BTF") - shelltools.copy("Include/*.h", "../Include") - for d in ("README.txt", "Doc/*"): - shelltools.copy(d, "../Doc/BTF") - - shelltools.cd("../CAMD/Lib") - autotools.make() - shelltools.cd("../../Lib") - shelltools.system("gcc -shared -Wl,-soname,libcamd.so.%s -o \ - libcamd.so.%s ../CAMD/Lib/*.o -lm" % (camd_version_major, camd_version)) - shelltools.sym("libcamd.so.%s" % camd_version, "libcamd.so.%s" % camd_version_major) - shelltools.sym("libcamd.so.%s" % camd_version, "libcamd.so") - shelltools.copy("../CAMD/Lib/*.a", ".") - shelltools.cd("../CAMD") - shelltools.copy("Include/*.h", "../Include") - for d in ("README.txt", "Doc/ChangeLog", "Doc/License", "Doc/*.pdf"): - shelltools.copy(d, "../Doc/CAMD") - - shelltools.cd("../CCOLAMD/Lib") - autotools.make() - shelltools.cd("../../Lib") - shelltools.system("gcc -shared -Wl,-soname,libccolamd.so.%s -o \ - libccolamd.so.%s ../CCOLAMD/Lib/*.o -lm" % (ccolamd_version_major, ccolamd_version)) - shelltools.sym("libccolamd.so.%s" % ccolamd_version, "libccolamd.so.%s" % ccolamd_version_major) - shelltools.sym("libccolamd.so.%s" % ccolamd_version, "libccolamd.so") - shelltools.copy("../CCOLAMD/Lib/*.a", ".") - shelltools.cd("../CCOLAMD") - shelltools.copy("Include/*.h", "../Include") - for d in ("README.txt", "Doc/*"): - shelltools.copy(d, "../Doc/CCOLAMD") - - shelltools.cd("../COLAMD/Lib") - autotools.make() - shelltools.cd("../../Lib") - shelltools.system("gcc -shared -Wl,-soname,libcolamd.so.%s -o \ - libcolamd.so.%s ../COLAMD/Lib/*.o -lm" % (colamd_version_major, colamd_version)) - shelltools.sym("libcolamd.so.%s" % colamd_version, "libcolamd.so.%s" % colamd_version_major) - shelltools.sym("libcolamd.so.%s" % colamd_version, "libcolamd.so") - shelltools.copy("../COLAMD/Lib/*.a", ".") - shelltools.cd("../COLAMD") - shelltools.copy("Include/*.h", "../Include") - for d in ("README.txt", "Doc/*"): - shelltools.copy(d, "../Doc/COLAMD") - - shelltools.cd("../CHOLMOD/Lib") - autotools.make("-I/usr/include/metis") - shelltools.cd("../../Lib") - shelltools.system("gcc -shared -Wl,-soname,libcholmod.so.%s -o \ - libcholmod.so.%s ../CHOLMOD/Lib/*.o \ - -L/usr/lib/atlas -llapack libamd.so.%s \ - libcamd.so.%s libcolamd.so.%s \ - libccolamd.so.%s \ - libsuitesparseconfig.so.%s \ - -lm" % (cholmod_version_major, - cholmod_version, - amd_version_major, - camd_version_major, colamd_version_major, - ccolamd_version_major, - SuiteSparse_config_major)) - shelltools.sym("libcholmod.so.%s" % cholmod_version, "libcholmod.so.%s" % cholmod_version_major) - shelltools.sym("libcholmod.so.%s" % cholmod_version, "libcholmod.so") - shelltools.copy("../CHOLMOD/Lib/*.a", ".") - shelltools.cd("../CHOLMOD") - shelltools.copy("Include/*.h", "../Include") - shelltools.copy("README.txt", "../Doc/CHOLMOD") - shelltools.copy("Doc/*.pdf", "../Doc/CHOLMOD") - shelltools.copy("Cholesky/License.txt", "../Doc/CHOLMOD/Cholesky_License.txt") - shelltools.copy("Core/License.txt", "../Doc/CHOLMOD/Core_License.txt") - shelltools.copy("MatrixOps/License.txt", "../Doc/CHOLMOD/MatrixOps_License.txt") - shelltools.copy("Partition/License.txt", "../Doc/CHOLMOD/Partition_License.txt") - shelltools.copy("Supernodal/License.txt", "../Doc/CHOLMOD/Supernodal_License.txt") - - shelltools.cd("../CSparse/Include") - shelltools.copy("cs.h", "../../Include") - shelltools.cd("../Lib") - autotools.make() - shelltools.cd("../../Lib") - shelltools.system("gcc -shared -Wl,-soname,libcsparse.so.%s -o \ - libcsparse.so.%s ../CSparse/Lib/*.o -lm" % (csparse_version_major, csparse_version)) - shelltools.sym("libcsparse.so.%s" % csparse_version, "libcsparse.so.%s" % csparse_version_major) - shelltools.sym("libcsparse.so.%s" % csparse_version, "libcsparse.so") - shelltools.copy("../CSparse/Lib/*.a", ".") - shelltools.cd("../CSparse") - shelltools.copy("Doc/*", "../Doc/CSparse") - - shelltools.cd("../KLU/Lib") - autotools.make() - shelltools.cd("../../Lib") - shelltools.system("gcc -shared -Wl,-soname,libklu.so.%s -o \ - libklu.so.%s ../KLU/Lib/*.o \ - libamd.so.%s libcolamd.so.%s \ - libbtf.so.%s libcholmod.so.%s \ - libsuitesparseconfig.so.%s \ - " % (klu_version_major, - klu_version, - amd_version_major, colamd_version_major, - btf_version_major, cholmod_version_major, - SuiteSparse_config_major)) - shelltools.sym("libklu.so.%s" % klu_version, "libklu.so.%s" % klu_version_major) - shelltools.sym("libklu.so.%s" % klu_version, "libklu.so") - shelltools.copy("../KLU/Lib/*.a", ".") - shelltools.cd("../KLU") - shelltools.copy("Include/*.h", "../Include") - for d in "README.txt Doc/lesser.txt".split(" "): - shelltools.copy(d, "../Doc/KLU") - - shelltools.cd("../LDL/Lib") - autotools.make() - shelltools.cd("../../Lib") - shelltools.system("gcc -shared -Wl,-soname,libldl.so.%s -o \ - libldl.so.%s ../LDL/Lib/*.o" % (ldl_version_major, ldl_version)) - shelltools.sym("libldl.so.%s" % ldl_version, "libldl.so.%s" % ldl_version_major) - shelltools.sym("libldl.so.%s" % ldl_version, "libldl.so") - shelltools.copy("../LDL/Lib/*.a", ".") - shelltools.cd("../LDL") - shelltools.copy("Include/*.h", "../Include") - for d in "README.txt Doc/ChangeLog Doc/lesser.txt Doc/*.pdf".split(" "): - shelltools.copy(d, "../Doc/LDL") - - shelltools.cd("../UMFPACK/Lib") - autotools.make() - shelltools.cd("../../Lib") - shelltools.system("gcc -shared -Wl,-soname,libumfpack.so.%s -o \ - libumfpack.so.%s ../UMFPACK/Lib/*.o \ - -L/usr/lib/atlas -llapack libamd.so.%s \ - libcholmod.so.%s \ - libsuitesparseconfig.so.%s \ - -lm" % (umfpack_version_major, - umfpack_version, - amd_version_major, - cholmod_version_major, - SuiteSparse_config_major)) - shelltools.sym("libumfpack.so.%s" % umfpack_version, "libumfpack.so.%s" % umfpack_version_major) - shelltools.sym("libumfpack.so.%s" % umfpack_version, "libumfpack.so") - shelltools.copy("../UMFPACK/Lib/*.a", ".") - shelltools.cd("../UMFPACK") - shelltools.copy("Include/*.h", "../Include") - for d in "README.txt Doc/License Doc/ChangeLog Doc/gpl.txt Doc/*.pdf".split(" "): - shelltools.copy(d, "../Doc/UMFPACK") - - shelltools.cd("../SPQR/Lib") - autotools.make('CXXFLAS="%s -DNPARTITION -fPIC -O3"' % get.CXXFLAGS()) - shelltools.cd("../../Lib") - shelltools.system("g++ -shared -Wl,-soname,libspqr.so.%s -o \ - libspqr.so.%s ../SPQR/Lib/*.o \ - -L/usr/lib/atlas -L/usr/lib -llapack \ - libcholmod.so.%s \ - libsuitesparseconfig.so.%s \ - -lm" % (spqr_version_major, - spqr_version, - cholmod_version_major, - SuiteSparse_config_major)) - shelltools.sym("libspqr.so.%s" % spqr_version, "libspqr.so.%s" % spqr_version_major) - shelltools.sym("libspqr.so.%s" % spqr_version, "libspqr.so") - shelltools.copy("../SPQR/Lib/*.a", ".") - shelltools.cd("../SPQR") - shelltools.copy("Include/*.h*", "../Include") - shelltools.copy("README.txt", "README_SPQR.txt") - shelltools.copy("README_SPQR.txt", "../Doc/SPQR") - shelltools.copy("Doc/*", "../Doc/SPQR") - - shelltools.cd("../RBio/Lib") - autotools.make() - shelltools.cd("../../Lib") - shelltools.system("gcc -shared -Wl,-soname,librbio.so.%s -o \ - librbio.so.%s ../RBio/Lib/*.o \ - libsuitesparseconfig.so.%s" % (rbio_version_major, rbio_version, SuiteSparse_config_major)) - shelltools.sym("librbio.so.%s" % rbio_version, "librbio.so.%s" % rbio_version_major) - shelltools.sym("librbio.so.%s" % rbio_version, "librbio.so") - shelltools.copy("../RBio/Lib/*.a", ".") - shelltools.cd("../RBio") - shelltools.copy("Include/*.h", "../Include") - for d in "README.txt Doc/ChangeLog Doc/License.txt".split(" "): - shelltools.copy(d, "../Doc/RBio") + shelltools.system("BLAS=-lblas LAPACK=-llapack TBB=-ltbb SPQR_CONFIG=-DHAVE_TBB MY_METIS_LIB=/usr/lib/libmetis.so make") def install(): - pisitools.insinto("/usr/include/%s" % get.srcNAME().lower(), "Include/*.h") - pisitools.dodoc("README.txt") - shelltools.copy("Doc/*", "%s/usr/share/doc/%s" % (get.installDIR(), get.srcNAME())) - shelltools.cd("Lib") - for l in shelltools.ls("*.so*"): - pisitools.insinto("/usr/lib", l) - for l in shelltools.ls("*.a"): - pisitools.insinto("/usr/lib", l) + shelltools.system("BLAS=-lblas LAPACK=-llapack TBB=-ltbb SPQR_CONFIG=-DHAVE_TBB MY_METIS_LIB=/usr/lib/libmetis.so \ + make INSTALL_LIB=%s/usr/lib INSTALL_INCLUDE=%s/usr/include install" % (get.installDIR(), get.installDIR())) + + # fix rpath + shelltools.system("chrpath -d %s/usr/lib/*" % get.installDIR()) + + pisitools.dodoc("LICENSE*", "README*") \ No newline at end of file diff --git a/science/mathematics/SuiteSparse/files/suitesparse-no-demo.patch b/science/mathematics/SuiteSparse/files/suitesparse-no-demo.patch new file mode 100644 index 0000000000..936cdf97ac --- /dev/null +++ b/science/mathematics/SuiteSparse/files/suitesparse-no-demo.patch @@ -0,0 +1,11 @@ +--- SuiteSparse-5.6.0/Makefile.orig 2019-11-05 22:37:26.086135974 +0000 ++++ SuiteSparse-5.6.0/Makefile 2019-11-05 22:37:37.549632429 +0000 +@@ -12,7 +12,7 @@ + # Compile the default rules for each package + go: metis + ( cd SuiteSparse_config && $(MAKE) ) +- ( cd Mongoose && $(MAKE) CMAKE_OPTIONS='$(CMAKE_OPTIONS)' ) ++ ( cd Mongoose && $(MAKE) library CMAKE_OPTIONS='$(CMAKE_OPTIONS)' ) + ( cd AMD && $(MAKE) ) + ( cd BTF && $(MAKE) ) + ( cd CAMD && $(MAKE) ) diff --git a/science/mathematics/SuiteSparse/pspec.xml b/science/mathematics/SuiteSparse/pspec.xml index 0f84993585..8c63a059a6 100644 --- a/science/mathematics/SuiteSparse/pspec.xml +++ b/science/mathematics/SuiteSparse/pspec.xml @@ -1,34 +1,41 @@ - + SuiteSparse - http://www.cise.ufl.edu/research/sparse + http://faculty.cse.tamu.edu/davis/suitesparse.html - PisiLinux Community - admins@pisilinux.org + Pisi Linux Community + admin@pisilinux.org - LGPLv2.1 - GPLv2 + science.mathematics + GPL library - Sparse matrix library + SuiteSparse, a suite of Sparse matrix software SuiteSparse is a single archive that contains sparse matrix libraries. - http://faculty.cse.tamu.edu/davis/SuiteSparse/SuiteSparse-4.4.4.tar.gz + https://github.com/DrTimothyAldenDavis/SuiteSparse/archive/v5.7.2.tar.gz - lapack-devel + cmake blas-devel - libgcc + metis-devel + libquadmath + lapack-devel + intel-tbb-devel + suitesparse-no-demo.patch SuiteSparse + SuiteSparse, a suite of Sparse matrix software - lapack blas - libgcc + metis + lapack + libgomp + intel-tbb /usr/lib @@ -49,11 +56,11 @@ - 2018-09-07 - 4.4.4 - Rebuild with new toolchain - Pisi Linux Community - admin@pisilinux.org + 2020-05-24 + 5.7.2 + Major Version Bump + Blue Devil + bluedevil@sctzine.com 2017-04-24 @@ -77,4 +84,4 @@ ayhanyalcinsoy@pisilinux.org - + \ No newline at end of file diff --git a/science/mathematics/SuiteSparse/translations.xml b/science/mathematics/SuiteSparse/translations.xml index e9923c01a5..d7337ab13b 100644 --- a/science/mathematics/SuiteSparse/translations.xml +++ b/science/mathematics/SuiteSparse/translations.xml @@ -3,12 +3,13 @@ SuiteSparse Sparse matrix kütüphanesi - Sparse matrix kütüphanesi. + SuiteSparse, Sparse matrix kütüphanesi içerir. Librairie de matrices Sparse. SuiteSparse-devel SuiteSparse için geliştirme dosyaları + SuiteSparse-devel, SuiteSparse için geliştirme dosyalarını içerir. - + \ No newline at end of file