diff options
author | Sebastien Fabbro <bicatali@gentoo.org> | 2009-03-14 12:19:25 +0000 |
---|---|---|
committer | Sebastien Fabbro <bicatali@gentoo.org> | 2009-03-14 12:19:25 +0000 |
commit | 0536d40c0bdcb194b028642eba6ec606371c6594 (patch) | |
tree | e9a771b203dc8a6d410b7a6fa204117f93d7d1cc /sci-libs/spqr | |
parent | amd64/x86 stable, bug #262418 (diff) | |
download | gentoo-2-0536d40c0bdcb194b028642eba6ec606371c6594.tar.gz gentoo-2-0536d40c0bdcb194b028642eba6ec606371c6594.tar.bz2 gentoo-2-0536d40c0bdcb194b028642eba6ec606371c6594.zip |
Initial import
(Portage version: 2.2_rc25/cvs/Linux x86_64)
Diffstat (limited to 'sci-libs/spqr')
-rw-r--r-- | sci-libs/spqr/ChangeLog | 11 | ||||
-rw-r--r-- | sci-libs/spqr/files/spqr-1.1.0-autotools.patch | 207 | ||||
-rw-r--r-- | sci-libs/spqr/files/spqr-1.1.0-gcc43.patch | 10 | ||||
-rw-r--r-- | sci-libs/spqr/metadata.xml | 18 | ||||
-rw-r--r-- | sci-libs/spqr/spqr-1.1.0.ebuild | 45 |
5 files changed, 291 insertions, 0 deletions
diff --git a/sci-libs/spqr/ChangeLog b/sci-libs/spqr/ChangeLog new file mode 100644 index 000000000000..16f667b4e0b3 --- /dev/null +++ b/sci-libs/spqr/ChangeLog @@ -0,0 +1,11 @@ +# ChangeLog for sci-libs/spqr +# Copyright 1999-2009 Gentoo Foundation; Distributed under the GPL v2 +# $Header: /var/cvsroot/gentoo-x86/sci-libs/spqr/ChangeLog,v 1.1 2009/03/14 12:19:25 bicatali Exp $ + +*spqr-1.1.0 (14 Mar 2009) + + 14 Mar 2009; Sébastien Fabbro <bicatali@gentoo.org> + +files/spqr-1.1.0-autotools.patch, +files/spqr-1.1.0-gcc43.patch, + +metadata.xml, +spqr-1.1.0.ebuild: + Initial import + diff --git a/sci-libs/spqr/files/spqr-1.1.0-autotools.patch b/sci-libs/spqr/files/spqr-1.1.0-autotools.patch new file mode 100644 index 000000000000..599fa64a36a4 --- /dev/null +++ b/sci-libs/spqr/files/spqr-1.1.0-autotools.patch @@ -0,0 +1,207 @@ +diff -Nur SPQR.orig/configure.ac SPQR/configure.ac +--- SPQR.orig/configure.ac 1970-01-01 01:00:00.000000000 +0100 ++++ SPQR/configure.ac 2009-03-14 11:20:10.319915444 +0000 +@@ -0,0 +1,54 @@ ++AC_PREREQ(2.59) ++AC_INIT(spqr, 1.1.0, davis@cise.ufl.edu) ++AM_INIT_AUTOMAKE([foreign]) ++AC_CONFIG_SRCDIR([Source/spqr_kernel.cpp]) ++AM_INIT_AUTOMAKE([foreign]) ++ ++AC_PROG_LIBTOOL ++AC_PROG_CXX ++AC_LANG(C++) ++ ++AC_CHECK_LIB(m, sqrt) ++AC_CHECK_HEADERS(UFconfig.h) ++AC_CHECK_HEADERS(cholmod.h) ++AC_CHECK_LIB(cholmod, cholmod_solve, [], \ ++ [AC_MSG_ERROR([Cannot find libcholmod])]) ++ ++AC_ARG_WITH(metis, ++ [AC_HELP_STRING([--with-metis], ++ [Use METIS for partitioning])], ++ [with_metis=$withval], ++ [with_metis="yes"]) ++if test x$with_metis = xyes; then ++ PKG_PROG_PKG_CONFIG ++ if test -n "$PKG_CONFIG"; then ++ PKG_CHECK_MODULES([metis], [metis]) ++ else ++ AC_CHECK_HEADERS(metis.h) ++ AC_CHECK_LIB(metis, METIS_NodeND, [METIS_LIBS=-lmetis], \ ++ [AC_MSG_ERROR([Cannot find libmetis])]) ++ fi ++ AC_DEFINE(NPARTITION) ++fi ++AM_CONDITIONAL([METIS], [test x$with_metis = xyes]) ++ ++AC_ARG_WITH(tbb, ++ [AC_HELP_STRING([--with-tbb], ++ [Use Intel Threading Building Block for multithreading])], ++ [with_tbb=$withval], ++ [with_tbb="yes"]) ++if test x$with_tbb = xyes; then ++ AC_CHECK_HEADERS(tbb/task.h) ++ TBB_CFLAGS="" ++ TBB_LIBS="-ltbb" ++ AC_SUBST(TBB_CFLAGS) ++ AC_SUBST(TBB_LIBS) ++ AC_DEFINE(HAVE_TBB) ++fi ++AM_CONDITIONAL([WITH_TBB], [test x$with_tbb = xyes]) ++ ++AC_CONFIG_FILES([Makefile ++ Source/Makefile ++ Include/Makefile ++ Demo/Makefile]) ++AC_OUTPUT +diff -Nur SPQR.orig/Demo/Makefile.am SPQR/Demo/Makefile.am +--- SPQR.orig/Demo/Makefile.am 1970-01-01 01:00:00.000000000 +0100 ++++ SPQR/Demo/Makefile.am 2009-03-14 11:03:44.580364074 +0000 +@@ -0,0 +1,78 @@ ++AM_CPPFLAGS = -I$(top_srcdir)/Include ++ ++LDADD = $(top_builddir)/Source/libspqr.la \ ++ $(CHOLMOD_LIBS) $(AMD_LIBS) $(CAMD_LIBS) \ ++ $(COLAMD_LIBS) $(CCOLAMD_LIBS) \ ++ $(METIS_LIBS) $(BLAS_LIBS) $(LAPACK_LIBS) $(TBB_LIBS) ++ ++check_PROGRAMS = \ ++ qrsimple qrsimplec \ ++ qrdemo qrdemoc ++ ++qrsimple_SOURCES = qrsimple.cpp ++qrsimplec = qrsimplec.c ++qrsimplec_CFLAGS = -ansi ++qrdemo_SOURCES = qrdemo.cpp ++qrdemoc_SOURCES = qrdemoc.c ++qrdemoc_CFLAGS = -ansi ++ ++ ++check-local: $(check_PROGRAMS) ++ ./qrsimple < ../Matrix/ash219.mtx || exit 1 ++ ./qrsimplec < ../Matrix/ash219.mtx || exit 1 ++ ./qrsimple < ../Matrix/west0067.mtx || exit 1 ++ ./qrsimplec < ../Matrix/west0067.mtx || exit 1 ++ ./qrdemo < ../Matrix/a2.mtx || exit 1 ++ ./qrdemo < ../Matrix/r2.mtx || exit 1 ++ ./qrdemo < ../Matrix/a04.mtx || exit 1 ++ ./qrdemo < ../Matrix/a2.mtx || exit 1 ++ ./qrdemo < ../Matrix/west0067.mtx || exit 1 ++ ./qrdemo < ../Matrix/c2.mtx || exit 1 ++ ./qrdemo < ../Matrix/a0.mtx || exit 1 ++ ./qrdemo < ../Matrix/lfat5b.mtx || exit 1 ++ ./qrdemo < ../Matrix/bfwa62.mtx || exit 1 ++ ./qrdemo < ../Matrix/LFAT5.mtx || exit 1 ++ ./qrdemo < ../Matrix/b1_ss.mtx || exit 1 ++ ./qrdemo < ../Matrix/bcspwr01.mtx || exit 1 ++ ./qrdemo < ../Matrix/lpi_galenet.mtx || exit 1 ++ ./qrdemo < ../Matrix/lpi_itest6.mtx || exit 1 ++ ./qrdemo < ../Matrix/ash219.mtx || exit 1 ++ ./qrdemo < ../Matrix/a4.mtx || exit 1 ++ ./qrdemo < ../Matrix/s32.mtx || exit 1 ++ ./qrdemo < ../Matrix/c32.mtx || exit 1 ++ ./qrdemo < ../Matrix/lp_share1b.mtx || exit 1 ++ ./qrdemo < ../Matrix/a1.mtx || exit 1 ++ ./qrdemo < ../Matrix/GD06_theory.mtx || exit 1 ++ ./qrdemo < ../Matrix/GD01_b.mtx || exit 1 ++ ./qrdemo < ../Matrix/Tina_AskCal_perm.mtx || exit 1 ++ ./qrdemo < ../Matrix/Tina_AskCal.mtx || exit 1 ++ ./qrdemo < ../Matrix/GD98_a.mtx || exit 1 ++ ./qrdemo < ../Matrix/Ragusa16.mtx || exit 1 ++ ./qrdemo < ../Matrix/young1c.mtx || exit 1 ++ ./qrdemoc < ../Matrix/a2.mtx || exit 1 ++ ./qrdemoc < ../Matrix/r2.mtx || exit 1 ++ ./qrdemoc < ../Matrix/a04.mtx || exit 1 ++ ./qrdemoc < ../Matrix/a2.mtx || exit 1 ++ ./qrdemoc < ../Matrix/west0067.mtx || exit 1 ++ ./qrdemoc < ../Matrix/c2.mtx || exit 1 ++ ./qrdemoc < ../Matrix/a0.mtx || exit 1 ++ ./qrdemoc < ../Matrix/lfat5b.mtx || exit 1 ++ ./qrdemoc < ../Matrix/bfwa62.mtx || exit 1 ++ ./qrdemoc < ../Matrix/LFAT5.mtx || exit 1 ++ ./qrdemoc < ../Matrix/b1_ss.mtx || exit 1 ++ ./qrdemoc < ../Matrix/bcspwr01.mtx || exit 1 ++ ./qrdemoc < ../Matrix/lpi_galenet.mtx || exit 1 ++ ./qrdemoc < ../Matrix/lpi_itest6.mtx || exit 1 ++ ./qrdemoc < ../Matrix/ash219.mtx || exit 1 ++ ./qrdemoc < ../Matrix/a4.mtx || exit 1 ++ ./qrdemoc < ../Matrix/s32.mtx || exit 1 ++ ./qrdemoc < ../Matrix/c32.mtx || exit 1 ++ ./qrdemoc < ../Matrix/lp_share1b.mtx || exit 1 ++ ./qrdemoc < ../Matrix/a1.mtx || exit 1 ++ ./qrdemoc < ../Matrix/GD06_theory.mtx || exit 1 ++ ./qrdemoc < ../Matrix/GD01_b.mtx || exit 1 ++ ./qrdemoc < ../Matrix/Tina_AskCal_perm.mtx || exit 1 ++ ./qrdemoc < ../Matrix/Tina_AskCal.mtx || exit 1 ++ ./qrdemoc < ../Matrix/GD98_a.mtx || exit 1 ++ ./qrdemoc < ../Matrix/Ragusa16.mtx || exit 1 ++ ./qrdemoc < ../Matrix/young1c.mtx || exit 1 +diff -Nur SPQR.orig/Include/Makefile.am SPQR/Include/Makefile.am +--- SPQR.orig/Include/Makefile.am 1970-01-01 01:00:00.000000000 +0100 ++++ SPQR/Include/Makefile.am 2009-03-14 10:56:08.933594972 +0000 +@@ -0,0 +1,5 @@ ++include_HEADERS = \ ++ spqr.hpp \ ++ SuiteSparseQR_C.h \ ++ SuiteSparseQR_definitions.h \ ++ SuiteSparseQR.hpp +diff -Nur SPQR.orig/Makefile.am SPQR/Makefile.am +--- SPQR.orig/Makefile.am 1970-01-01 01:00:00.000000000 +0100 ++++ SPQR/Makefile.am 2009-03-14 10:27:25.415020632 +0000 +@@ -0,0 +1,2 @@ ++SUBDIRS = Include Source Demo ++EXTRA_DIST = README.txt +diff -Nur SPQR.orig/Source/Makefile.am SPQR/Source/Makefile.am +--- SPQR.orig/Source/Makefile.am 1970-01-01 01:00:00.000000000 +0100 ++++ SPQR/Source/Makefile.am 2009-03-14 10:10:07.617029851 +0000 +@@ -0,0 +1,48 @@ ++AM_CPPFLAGS=-I$(top_srcdir)/Include ++ ++lib_LTLIBRARIES = libspqr.la ++ ++libspqr_la_SOURCES = \ ++ spqr_rmap.cpp \ ++ SuiteSparseQR_C.cpp \ ++ SuiteSparseQR_expert.cpp \ ++ spqr_parallel.cpp \ ++ spqr_kernel.cpp \ ++ spqr_analyze.cpp \ ++ spqr_assemble.cpp \ ++ spqr_cpack.cpp \ ++ spqr_csize.cpp \ ++ spqr_fcsize.cpp \ ++ spqr_debug.cpp \ ++ spqr_front.cpp \ ++ spqr_factorize.cpp \ ++ spqr_freenum.cpp \ ++ spqr_freesym.cpp \ ++ spqr_freefac.cpp \ ++ spqr_fsize.cpp \ ++ spqr_maxcolnorm.cpp \ ++ spqr_rconvert.cpp \ ++ spqr_rcount.cpp \ ++ spqr_rhpack.cpp \ ++ spqr_rsolve.cpp \ ++ spqr_stranspose1.cpp \ ++ spqr_stranspose2.cpp \ ++ spqr_hpinv.cpp \ ++ spqr_1fixed.cpp \ ++ spqr_1colamd.cpp \ ++ SuiteSparseQR.cpp \ ++ spqr_1factor.cpp \ ++ spqr_cumsum.cpp \ ++ spqr_shift.cpp \ ++ spqr_happly.cpp \ ++ spqr_panel.cpp \ ++ spqr_happly_work.cpp \ ++ SuiteSparseQR_qmult.cpp \ ++ spqr_trapezoidal.cpp \ ++ spqr_larftb.cpp \ ++ spqr_append.cpp \ ++ spqr_type.cpp \ ++ spqr_tol.cpp ++ ++libspqr_la_CPPFLAGS = $(AM_CPPFLAGS) $(METIS_CFLAGS) $(TBB_CFLAGS) ++libspqr_la_LIBADD = $(METIS_LIBS) $(TBB_LIBS) diff --git a/sci-libs/spqr/files/spqr-1.1.0-gcc43.patch b/sci-libs/spqr/files/spqr-1.1.0-gcc43.patch new file mode 100644 index 000000000000..d9adb2093bb8 --- /dev/null +++ b/sci-libs/spqr/files/spqr-1.1.0-gcc43.patch @@ -0,0 +1,10 @@ +--- SPQR.orig/Source/spqr_factorize.cpp 2009-03-09 15:12:47.091289398 +0000 ++++ SPQR/Source/spqr_factorize.cpp 2009-03-14 09:30:18.570989288 +0000 +@@ -30,6 +30,7 @@ + // === macros ================================================================== + // ============================================================================= + ++#include <cstring> + #include "spqr.hpp" + + #define FCHUNK 32 // FUTURE: make a parameter; Householder block size diff --git a/sci-libs/spqr/metadata.xml b/sci-libs/spqr/metadata.xml new file mode 100644 index 000000000000..1173b0ece1d7 --- /dev/null +++ b/sci-libs/spqr/metadata.xml @@ -0,0 +1,18 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd"> +<pkgmetadata> +<herd>sci</herd> +<longdescription lang="en"> + SuiteSparseQR is an implementation of the multifrontal sparse QR + factorization method. Parallelism is exploited both in the BLAS and + across different frontal matrices using Intel's Threading Building + Blocks. It can obtain a substantial fraction of the theoretical + peak performance of a multicore computer. +</longdescription> +<use> + <flag name='metis'>Use METIS (<pkg>sci-libs/metis</pkg> + or <pkg>sci-libs/parmetis</pkg>) for partitioning</flag> + <flag name='tbb'>Enable multithreading with the Intel Threads Building Block + (needs <pkg>dev-cpp/tbb</pkg>)</flag> +</use> +</pkgmetadata> diff --git a/sci-libs/spqr/spqr-1.1.0.ebuild b/sci-libs/spqr/spqr-1.1.0.ebuild new file mode 100644 index 000000000000..ce9d12acc037 --- /dev/null +++ b/sci-libs/spqr/spqr-1.1.0.ebuild @@ -0,0 +1,45 @@ +# Copyright 1999-2009 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Header: /var/cvsroot/gentoo-x86/sci-libs/spqr/spqr-1.1.0.ebuild,v 1.1 2009/03/14 12:19:25 bicatali Exp $ + +EAPI=2 +inherit eutils autotools + +MY_PN=SPQR +DESCRIPTION="Multithreaded multifrontal sparse QR factorization library" +HOMEPAGE="http://www.cise.ufl.edu/research/sparse/SPQR" +SRC_URI="http://www.cise.ufl.edu/research/sparse/${MY_PN}/${MY_PN}-${PV}.tar.gz" + +LICENSE="GPL-2" +SLOT="0" +KEYWORDS="~amd64 ~x86" +IUSE="doc metis tbb" +RDEPEND="tbb? ( dev-cpp/tbb ) + metis? ( >=sci-libs/cholmod-1.7.0-r1[metis] )" +DEPEND="${RDEPEND} + dev-util/pkgconfig" + +S="${WORKDIR}/${MY_PN}" + +src_prepare() { + cd "${WORKDIR}" + epatch "${FILESDIR}"/${P}-autotools.patch + epatch "${FILESDIR}"/${P}-gcc43.patch + cd "${S}" + eautoreconf +} + +src_configure() { + econf \ + $(use_with metis) \ + $(use_with tbb) +} + +src_install() { + emake DESTDIR="${D}" install || die "emake install failed" + dodoc README.txt Doc/ChangeLog || die "dodoc failed" + if use doc; then + insinto /usr/share/doc/${PF} + doins Doc/*.pdf || die + fi +} |