SuiteSparse:moved into main for pisi 2.0
This commit is contained in:
@@ -0,0 +1,263 @@
|
||||
#!/usr/bin/python
|
||||
# -*- coding: utf-8 -*-
|
||||
#
|
||||
# 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"
|
||||
|
||||
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")
|
||||
|
||||
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)
|
||||
@@ -0,0 +1,80 @@
|
||||
<?xml version="1.0" ?>
|
||||
<!DOCTYPE PISI SYSTEM "http://www.pisilinux.org/projeler/pisi/pisi-spec.dtd">
|
||||
<PISI>
|
||||
<Source>
|
||||
<Name>SuiteSparse</Name>
|
||||
<Homepage>http://www.cise.ufl.edu/research/sparse</Homepage>
|
||||
<Packager>
|
||||
<Name>PisiLinux Community</Name>
|
||||
<Email>admins@pisilinux.org</Email>
|
||||
</Packager>
|
||||
<License>LGPLv2.1</License>
|
||||
<License>GPLv2</License>
|
||||
<IsA>library</IsA>
|
||||
<Summary>Sparse matrix library</Summary>
|
||||
<Description>SuiteSparse is a single archive that contains sparse matrix libraries.</Description>
|
||||
<Archive sha1sum="13f5d8caa8df92a4d704426781365e55c09baf01" type="targz">http://faculty.cse.tamu.edu/davis/SuiteSparse/SuiteSparse-4.4.4.tar.gz</Archive>
|
||||
<BuildDependencies>
|
||||
<Dependency>lapack-devel</Dependency>
|
||||
<Dependency>blas-devel</Dependency>
|
||||
<Dependency>libgcc</Dependency>
|
||||
</BuildDependencies>
|
||||
<Patches>
|
||||
</Patches>
|
||||
</Source>
|
||||
|
||||
<Package>
|
||||
<Name>SuiteSparse</Name>
|
||||
<RuntimeDependencies>
|
||||
<Dependency>lapack</Dependency>
|
||||
<Dependency>blas</Dependency>
|
||||
<Dependency>libgcc</Dependency>
|
||||
</RuntimeDependencies>
|
||||
<Files>
|
||||
<Path fileType="library">/usr/lib</Path>
|
||||
<Path fileType="doc">/usr/share/doc</Path>
|
||||
</Files>
|
||||
</Package>
|
||||
|
||||
<Package>
|
||||
<Name>SuiteSparse-devel</Name>
|
||||
<Summary>Development files for SuiteSparse</Summary>
|
||||
<RuntimeDependencies>
|
||||
<Dependency release="current">SuiteSparse</Dependency>
|
||||
</RuntimeDependencies>
|
||||
<Files>
|
||||
<Path fileType="header">/usr/include</Path>
|
||||
</Files>
|
||||
</Package>
|
||||
|
||||
<History>
|
||||
<Update release="4">
|
||||
<Date>2015-08-11</Date>
|
||||
<Version>4.4.4</Version>
|
||||
<Comment>Version bump</Comment>
|
||||
<Name>Ayhan Yalçınsoy</Name>
|
||||
<Email>ayhanyalcinsoy@pisilinux.org</Email>
|
||||
</Update>
|
||||
<Update release="3">
|
||||
<Date>2014-05-31</Date>
|
||||
<Version>4.2.1</Version>
|
||||
<Comment>Rebuild.</Comment>
|
||||
<Name>Alihan Öztürk</Name>
|
||||
<Email>alihan@pisilinux.org</Email>
|
||||
</Update>
|
||||
<Update release="2">
|
||||
<Date>2014-01-17</Date>
|
||||
<Version>4.2.1</Version>
|
||||
<Comment>Version Bump</Comment>
|
||||
<Name>Stefan Gronewold(groni)</Name>
|
||||
<Email>groni@pisilinux.org</Email>
|
||||
</Update>
|
||||
<Update release="1">
|
||||
<Date>2012-12-08</Date>
|
||||
<Version>4.0.2</Version>
|
||||
<Comment>First release</Comment>
|
||||
<Name>Marcin Bojara</Name>
|
||||
<Email>marcin@pisilinux.org</Email>
|
||||
</Update>
|
||||
</History>
|
||||
</PISI>
|
||||
@@ -0,0 +1,14 @@
|
||||
<?xml version="1.0" ?>
|
||||
<PISI>
|
||||
<Source>
|
||||
<Name>SuiteSparse</Name>
|
||||
<Summary xml:lang="tr">Sparse matrix kütüphanesi</Summary>
|
||||
<Description xml:lang="tr">Sparse matrix kütüphanesi.</Description>
|
||||
<Description xml:lang="fr">Librairie de matrices Sparse.</Description>
|
||||
</Source>
|
||||
|
||||
<Package>
|
||||
<Name>SuiteSparse-devel</Name>
|
||||
<Summary xml:lang="tr">SuiteSparse için geliştirme dosyaları</Summary>
|
||||
</Package>
|
||||
</PISI>
|
||||
Reference in New Issue
Block a user