diff options
author | Justin Lecher <jlec@gentoo.org> | 2010-06-09 08:18:58 +0000 |
---|---|---|
committer | Justin Lecher <jlec@gentoo.org> | 2010-06-09 08:18:58 +0000 |
commit | c49afaa6453bd0232b782370c0801d7df868ee6a (patch) | |
tree | 537a0e761c2308bfbc8202f91aba2cdb2bde77a3 /sci-libs/superlu | |
parent | Version bump. (diff) | |
download | historical-c49afaa6453bd0232b782370c0801d7df868ee6a.tar.gz historical-c49afaa6453bd0232b782370c0801d7df868ee6a.tar.bz2 historical-c49afaa6453bd0232b782370c0801d7df868ee6a.zip |
Moved from sci overlay to tree
Package-Manager: portage-2.2_rc67/cvs/Linux x86_64
Diffstat (limited to 'sci-libs/superlu')
-rw-r--r-- | sci-libs/superlu/ChangeLog | 11 | ||||
-rw-r--r-- | sci-libs/superlu/Manifest | 17 | ||||
-rw-r--r-- | sci-libs/superlu/files/4.0-test.patch | 52 | ||||
-rw-r--r-- | sci-libs/superlu/files/superlu-4.0-autotools.patch | 298 | ||||
-rw-r--r-- | sci-libs/superlu/files/superlu-examples.patch | 13 | ||||
-rw-r--r-- | sci-libs/superlu/metadata.xml | 21 | ||||
-rw-r--r-- | sci-libs/superlu/superlu-4.0-r1.ebuild | 77 |
7 files changed, 489 insertions, 0 deletions
diff --git a/sci-libs/superlu/ChangeLog b/sci-libs/superlu/ChangeLog new file mode 100644 index 000000000000..de289c455bb0 --- /dev/null +++ b/sci-libs/superlu/ChangeLog @@ -0,0 +1,11 @@ +# ChangeLog for sci-libs/superlu +# Copyright 1999-2010 Gentoo Foundation; Distributed under the GPL v2 +# $Header: /var/cvsroot/gentoo-x86/sci-libs/superlu/ChangeLog,v 1.1 2010/06/09 08:18:58 jlec Exp $ + +*superlu-4.0-r1 (09 Jun 2010) + + 09 Jun 2010; Justin Lecher <jlec@gentoo.org> +files/4.0-test.patch, + +superlu-4.0-r1.ebuild, +files/superlu-4.0-autotools.patch, + +files/superlu-examples.patch, +metadata.xml: + Moved from sci overlay to tree + diff --git a/sci-libs/superlu/Manifest b/sci-libs/superlu/Manifest new file mode 100644 index 000000000000..cd4ed7a67ed3 --- /dev/null +++ b/sci-libs/superlu/Manifest @@ -0,0 +1,17 @@ +-----BEGIN PGP SIGNED MESSAGE----- +Hash: SHA1 + +AUX 4.0-test.patch 1868 RMD160 861585be2d9cc3da505c0e8c0dd6e83e6e2708de SHA1 d9294695af21d725fdfbf2e48dc31c2aca6dd410 SHA256 263e24c1e502a28541b180b50ffaf98a49de7ee450386bf2660f6ab20e72c3d0 +AUX superlu-4.0-autotools.patch 9827 RMD160 fba6b4734a89a341c53f102e10194782b71ba04b SHA1 126a90a2d5b3de562d0a5117ed580fc0d5b97352 SHA256 b26bbb56501aca742442abf0d768a756f49a6e040dea9acdd7f10f2cb8768c50 +AUX superlu-examples.patch 454 RMD160 32a005e27e90005bc0053f1b4b99288a0493c0f5 SHA1 2c35bf54da5d62ed7ec703abadaf6dc5f0c4f61f SHA256 b708ff850f37a4c2b1196ec33b96146490d3ce259178d3f981587d3021b9eb11 +DIST superlu_4.0.tar.gz 2163874 RMD160 79a1b3ac9c5aa02a0f16ab170dff5802c1cfb410 SHA1 f6caa9a7324d68e9bce7f315bad6062a1326710f SHA256 2f160235ef702da77782a21f201f320c71e5be492fdd53b22564f5195e3309e6 +EBUILD superlu-4.0-r1.ebuild 1788 RMD160 b0998e24622339de3c21fb085da4e1e6f3ad2511 SHA1 6a977253a28afd1653aeb1964cc4ee61da7cbb34 SHA256 41593f3e2c9a839e8494cd80037b7134fa7f66cb96e815ea3ee9aa05935911ef +MISC ChangeLog 448 RMD160 e50afb480760e2673ae71d8dc07755ffed127486 SHA1 06700b60129cd3fd776a31fc440083c6ed508a5d SHA256 901cd851eebd9dd4374a6d93d1102c33924a6e84b99ab248820a351ca25742ad +MISC metadata.xml 1183 RMD160 90584eb7b02f392d8dcf1f7593d00532575fb2e7 SHA1 1f4720b37a9547af2f81d9eb9c72b0031ede1f6d SHA256 1086830fe855bba67b44bf4862464d8ecb88495e5242a7a06a97eb284dc5657c +-----BEGIN PGP SIGNATURE----- +Version: GnuPG v2.0.15 (GNU/Linux) + +iEYEARECAAYFAkwPTngACgkQgAnW8HDreRa8qQCfUTbg+G7HK+slOgZXjuIM9WGA +n6YAn3pTE8RZ168ztVa5p5q57QCyT1mt +=aJM8 +-----END PGP SIGNATURE----- diff --git a/sci-libs/superlu/files/4.0-test.patch b/sci-libs/superlu/files/4.0-test.patch new file mode 100644 index 000000000000..c697acfd892e --- /dev/null +++ b/sci-libs/superlu/files/4.0-test.patch @@ -0,0 +1,52 @@ +diff --git a/TESTING/cdrive.c b/TESTING/cdrive.c +index 0ff08e1..6c5cd36 100644 +--- a/TESTING/cdrive.c ++++ b/TESTING/cdrive.c +@@ -78,7 +78,7 @@ main(int argc, char *argv[]) + trans_t trans; + SuperLUStat_t stat; + static char matrix_type[8]; +- static char equed[1], path[3], sym[1], dist[1]; ++ static char equed[1], path[4], sym[1], dist[1]; + + /* Fixed set of parameters */ + int iseed[] = {1988, 1989, 1990, 1991}; +diff --git a/TESTING/ddrive.c b/TESTING/ddrive.c +index 587dd59..d2b12f3 100644 +--- a/TESTING/ddrive.c ++++ b/TESTING/ddrive.c +@@ -78,7 +78,7 @@ main(int argc, char *argv[]) + trans_t trans; + SuperLUStat_t stat; + static char matrix_type[8]; +- static char equed[1], path[3], sym[1], dist[1]; ++ static char equed[1], path[4], sym[1], dist[1]; + + /* Fixed set of parameters */ + int iseed[] = {1988, 1989, 1990, 1991}; +diff --git a/TESTING/sdrive.c b/TESTING/sdrive.c +index b209ae6..d44ff4b 100644 +--- a/TESTING/sdrive.c ++++ b/TESTING/sdrive.c +@@ -78,7 +78,7 @@ main(int argc, char *argv[]) + trans_t trans; + SuperLUStat_t stat; + static char matrix_type[8]; +- static char equed[1], path[3], sym[1], dist[1]; ++ static char equed[1], path[4], sym[1], dist[1]; + + /* Fixed set of parameters */ + int iseed[] = {1988, 1989, 1990, 1991}; +diff --git a/TESTING/zdrive.c b/TESTING/zdrive.c +index 5844f6a..33bd22e 100644 +--- a/TESTING/zdrive.c ++++ b/TESTING/zdrive.c +@@ -78,7 +78,7 @@ main(int argc, char *argv[]) + trans_t trans; + SuperLUStat_t stat; + static char matrix_type[8]; +- static char equed[1], path[3], sym[1], dist[1]; ++ static char equed[1], path[4], sym[1], dist[1]; + + /* Fixed set of parameters */ + int iseed[] = {1988, 1989, 1990, 1991}; diff --git a/sci-libs/superlu/files/superlu-4.0-autotools.patch b/sci-libs/superlu/files/superlu-4.0-autotools.patch new file mode 100644 index 000000000000..5e14f263d3b5 --- /dev/null +++ b/sci-libs/superlu/files/superlu-4.0-autotools.patch @@ -0,0 +1,298 @@ +--- configure.ac 1970-01-01 01:00:00.000000000 +0100 ++++ configure.ac 2008-02-01 10:58:41.238020847 +0000 +@@ -0,0 +1,14 @@ ++# -*- Autoconf -*- ++AC_PREREQ(2.59) ++AC_INIT(superlu, 3.0, xsli@lbl.gov) ++AM_INIT_AUTOMAKE([foreign]) ++AC_CONFIG_HEADER([config.h]) ++AC_PROG_INSTALL ++AC_PROG_LIBTOOL ++sinclude(acx_blas.m4) ++ACX_BLAS ++if test x"$BLAS_LIBS" = x; then ++ AC_MSG_ERROR([Cannot find blas libraries]) ++fi ++AC_CONFIG_FILES([Makefile SRC/Makefile]) ++AC_OUTPUT +--- acx_blas.m4 1970-01-01 01:00:00.000000000 +0100 ++++ acx_blas.m4 2008-02-01 10:58:19.428778009 +0000 +@@ -0,0 +1,191 @@ ++##### http://autoconf-archive.cryp.to/acx_blas.html ++# ++# SYNOPSIS ++# ++# ACX_BLAS([ACTION-IF-FOUND[, ACTION-IF-NOT-FOUND]]) ++# ++# DESCRIPTION ++# ++# This macro looks for a library that implements the BLAS ++# linear-algebra interface (see http://www.netlib.org/blas/). On ++# success, it sets the BLAS_LIBS output variable to hold the ++# requisite library linkages. ++# ++# To link with BLAS, you should link with: ++# ++# $BLAS_LIBS $LIBS $FLIBS ++# ++# in that order. FLIBS is the output variable of the ++# AC_F77_LIBRARY_LDFLAGS macro (called if necessary by ACX_BLAS), and ++# is sometimes necessary in order to link with F77 libraries. Users ++# will also need to use AC_F77_DUMMY_MAIN (see the autoconf manual), ++# for the same reason. ++# ++# Many libraries are searched for, from ATLAS to CXML to ESSL. The ++# user may also use --with-blas=<lib> in order to use some specific ++# BLAS library <lib>. In order to link successfully, however, be ++# aware that you will probably need to use the same Fortran compiler ++# (which can be set via the F77 env. var.) as was used to compile the ++# BLAS library. ++# ++# ACTION-IF-FOUND is a list of shell commands to run if a BLAS ++# library is found, and ACTION-IF-NOT-FOUND is a list of commands to ++# run it if it is not found. If ACTION-IF-FOUND is not specified, the ++# default action will define HAVE_BLAS. ++# ++# This macro requires autoconf 2.50 or later. ++# ++# LAST MODIFICATION ++# ++# 2007-07-29 ++# ++# COPYLEFT ++# ++# Copyright (c) 2007 Steven G. Johnson <stevenj@alum.mit.edu> ++# ++# This program is free software: you can redistribute it and/or ++# modify it under the terms of the GNU General Public License as ++# published by the Free Software Foundation, either version 3 of the ++# License, or (at your option) any later version. ++# ++# This program is distributed in the hope that it will be useful, but ++# WITHOUT ANY WARRANTY; without even the implied warranty of ++# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU ++# General Public License for more details. ++# ++# You should have received a copy of the GNU General Public License ++# along with this program. If not, see ++# <http://www.gnu.org/licenses/>. ++# ++# As a special exception, the respective Autoconf Macro's copyright ++# owner gives unlimited permission to copy, distribute and modify the ++# configure scripts that are the output of Autoconf when processing ++# the Macro. You need not follow the terms of the GNU General Public ++# License when using or distributing such scripts, even though ++# portions of the text of the Macro appear in them. The GNU General ++# Public License (GPL) does govern all other use of the material that ++# constitutes the Autoconf Macro. ++# ++# This special exception to the GPL applies to versions of the ++# Autoconf Macro released by the Autoconf Macro Archive. When you ++# make and distribute a modified version of the Autoconf Macro, you ++# may extend this special exception to the GPL to apply to your ++# modified version as well. ++ ++AC_DEFUN([ACX_BLAS], [ ++AC_PREREQ(2.50) ++AC_REQUIRE([AC_F77_LIBRARY_LDFLAGS]) ++acx_blas_ok=no ++ ++AC_ARG_WITH(blas, ++ [AC_HELP_STRING([--with-blas=<lib>], [use BLAS library <lib>])]) ++case $with_blas in ++ yes | "") ;; ++ no) acx_blas_ok=disable ;; ++ -* | */* | *.a | *.so | *.so.* | *.o) BLAS_LIBS="$with_blas" ;; ++ *) BLAS_LIBS="-l$with_blas" ;; ++esac ++ ++# Get fortran linker names of BLAS functions to check for. ++AC_F77_FUNC(sgemm) ++AC_F77_FUNC(dgemm) ++ ++acx_blas_save_LIBS="$LIBS" ++LIBS="$LIBS $FLIBS" ++ ++# First, check BLAS_LIBS environment variable ++if test $acx_blas_ok = no; then ++if test "x$BLAS_LIBS" != x; then ++ save_LIBS="$LIBS"; LIBS="$BLAS_LIBS $LIBS" ++ AC_MSG_CHECKING([for $sgemm in $BLAS_LIBS]) ++ AC_TRY_LINK_FUNC($sgemm, [acx_blas_ok=yes], [BLAS_LIBS=""]) ++ AC_MSG_RESULT($acx_blas_ok) ++ LIBS="$save_LIBS" ++fi ++fi ++ ++# BLAS linked to by default? (happens on some supercomputers) ++if test $acx_blas_ok = no; then ++ save_LIBS="$LIBS"; LIBS="$LIBS" ++ AC_CHECK_FUNC($sgemm, [acx_blas_ok=yes]) ++ LIBS="$save_LIBS" ++fi ++ ++# BLAS in ATLAS library? (http://math-atlas.sourceforge.net/) ++if test $acx_blas_ok = no; then ++ AC_CHECK_LIB(atlas, ATL_xerbla, ++ [AC_CHECK_LIB(f77blas, $sgemm, ++ [AC_CHECK_LIB(cblas, cblas_dgemm, ++ [acx_blas_ok=yes ++ BLAS_LIBS="-lcblas -lf77blas -latlas"], ++ [], [-lf77blas -latlas])], ++ [], [-latlas])]) ++fi ++ ++# BLAS in PhiPACK libraries? (requires generic BLAS lib, too) ++if test $acx_blas_ok = no; then ++ AC_CHECK_LIB(blas, $sgemm, ++ [AC_CHECK_LIB(dgemm, $dgemm, ++ [AC_CHECK_LIB(sgemm, $sgemm, ++ [acx_blas_ok=yes; BLAS_LIBS="-lsgemm -ldgemm -lblas"], ++ [], [-lblas])], ++ [], [-lblas])]) ++fi ++ ++# BLAS in Alpha CXML library? ++if test $acx_blas_ok = no; then ++ AC_CHECK_LIB(cxml, $sgemm, [acx_blas_ok=yes;BLAS_LIBS="-lcxml"]) ++fi ++ ++# BLAS in Alpha DXML library? (now called CXML, see above) ++if test $acx_blas_ok = no; then ++ AC_CHECK_LIB(dxml, $sgemm, [acx_blas_ok=yes;BLAS_LIBS="-ldxml"]) ++fi ++ ++# BLAS in Sun Performance library? ++if test $acx_blas_ok = no; then ++ if test "x$GCC" != xyes; then # only works with Sun CC ++ AC_CHECK_LIB(sunmath, acosp, ++ [AC_CHECK_LIB(sunperf, $sgemm, ++ [BLAS_LIBS="-xlic_lib=sunperf -lsunmath" ++ acx_blas_ok=yes],[],[-lsunmath])]) ++ fi ++fi ++ ++# BLAS in SCSL library? (SGI/Cray Scientific Library) ++if test $acx_blas_ok = no; then ++ AC_CHECK_LIB(scs, $sgemm, [acx_blas_ok=yes; BLAS_LIBS="-lscs"]) ++fi ++ ++# BLAS in SGIMATH library? ++if test $acx_blas_ok = no; then ++ AC_CHECK_LIB(complib.sgimath, $sgemm, ++ [acx_blas_ok=yes; BLAS_LIBS="-lcomplib.sgimath"]) ++fi ++ ++# BLAS in IBM ESSL library? (requires generic BLAS lib, too) ++if test $acx_blas_ok = no; then ++ AC_CHECK_LIB(blas, $sgemm, ++ [AC_CHECK_LIB(essl, $sgemm, ++ [acx_blas_ok=yes; BLAS_LIBS="-lessl -lblas"], ++ [], [-lblas $FLIBS])]) ++fi ++ ++# Generic BLAS library? ++if test $acx_blas_ok = no; then ++ AC_CHECK_LIB(blas, $sgemm, [acx_blas_ok=yes; BLAS_LIBS="-lblas"]) ++fi ++ ++AC_SUBST(BLAS_LIBS) ++ ++LIBS="$acx_blas_save_LIBS" ++ ++# Finally, execute ACTION-IF-FOUND/ACTION-IF-NOT-FOUND: ++if test x"$acx_blas_ok" = xyes; then ++ ifelse([$1],,AC_DEFINE(HAVE_BLAS,1,[Define if you have a BLAS library.]),[$1]) ++ : ++else ++ acx_blas_ok=no ++ $2 ++fi ++])dnl ACX_BLAS +--- Makefile.am 1970-01-01 01:00:00.000000000 +0100 ++++ Makefile.am 2008-02-01 10:58:19.428778009 +0000 +@@ -0,0 +1 @@ ++SUBDIRS = SRC +--- SRC/Makefile.am 1970-01-01 01:00:00.000000000 +0100 ++++ SRC/Makefile.am 2008-02-01 10:58:19.428778009 +0000 +@@ -0,0 +1,80 @@ ++AM_CPPFLAGS = -DAdd_ ++### LAPACK ++LAAUX = lsame.c xerbla.c ++SLASRC = slacon.c ++DLASRC = dlacon.c ++CLASRC = clacon.c scsum1.c icmax1.c ++ZLASRC = zlacon.c dzsum1.c izmax1.c ++SCLAUX = slamch.c ++DZLAUX = dlamch.c ++ ++### SuperLU ++ALLAUX = superlu_timer.c util.c memory.c get_perm_c.c mmd.c \ ++ sp_coletree.c sp_preorder.c sp_ienv.c relax_snode.c \ ++ heap_relax_snode.c colamd.c ++ ++SLUSRC = \ ++ sgssv.c sgssvx.c \ ++ ssp_blas2.c ssp_blas3.c sgscon.c \ ++ slangs.c sgsequ.c slaqgs.c spivotgrowth.c \ ++ sgsrfs.c sgstrf.c sgstrs.c scopy_to_ucol.c \ ++ ssnode_dfs.c ssnode_bmod.c \ ++ spanel_dfs.c spanel_bmod.c sreadhb.c \ ++ scolumn_dfs.c scolumn_bmod.c spivotL.c spruneL.c \ ++ smemory.c sutil.c smyblas2.c ++ ++DLUSRC = \ ++ dgssv.c dgssvx.c \ ++ dsp_blas2.c dsp_blas3.c dgscon.c \ ++ dlangs.c dgsequ.c dlaqgs.c dpivotgrowth.c \ ++ dgsrfs.c dgstrf.c dgstrs.c dcopy_to_ucol.c \ ++ dsnode_dfs.c dsnode_bmod.c \ ++ dpanel_dfs.c dpanel_bmod.c dreadhb.c \ ++ dcolumn_dfs.c dcolumn_bmod.c dpivotL.c dpruneL.c \ ++ dmemory.c dutil.c dmyblas2.c ++ ++CLUSRC = \ ++ scomplex.c cgssv.c cgssvx.c csp_blas2.c csp_blas3.c cgscon.c \ ++ clangs.c cgsequ.c claqgs.c cpivotgrowth.c \ ++ cgsrfs.c cgstrf.c cgstrs.c ccopy_to_ucol.c \ ++ csnode_dfs.c csnode_bmod.c \ ++ cpanel_dfs.c cpanel_bmod.c creadhb.c \ ++ ccolumn_dfs.c ccolumn_bmod.c cpivotL.c cpruneL.c \ ++ cmemory.c cutil.c cmyblas2.c ++ ++ZLUSRC = \ ++ dcomplex.c zgssv.c zgssvx.c zsp_blas2.c zsp_blas3.c zgscon.c \ ++ zlangs.c zgsequ.c zlaqgs.c zpivotgrowth.c \ ++ zgsrfs.c zgstrf.c zgstrs.c zcopy_to_ucol.c \ ++ zsnode_dfs.c zsnode_bmod.c \ ++ zpanel_dfs.c zpanel_bmod.c zreadhb.c \ ++ zcolumn_dfs.c zcolumn_bmod.c zpivotL.c zpruneL.c \ ++ zmemory.c zutil.c zmyblas2.c ++ ++lib_LTLIBRARIES = libsuperlu.la ++libsuperlu_la_SOURCES = \ ++ $(ALLAUX) $(LAAUX) \ ++ $(SCLAUX) $(DZLAUX) \ ++ $(SLUSRC) $(SLASRC) \ ++ $(DLUSRC) $(DLASRC) \ ++ $(CLUSRC) $(CLASRC) \ ++ $(ZLUSRC) $(ZLASRC) ++libsuperlu_la_LIBADD = $(BLAS_LIBS) ++libsuperlu_la_LDFLAGS = -no-undefined -version-info 3:0:0 ++ ++ ++ ++################################## ++# Do not optimize these routines # ++################################## ++LTCOMPILE_NOOPT = $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) \ ++ --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) \ ++ $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) ++ ++slamch.lo: slamch.c ++ $(LTCOMPILE_NOOPT) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ $< ++dlamch.lo: dlamch.c ++ $(LTCOMPILE_NOOPT) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ $< ++superlu_timer.lo: superlu_timer.c ++ $(LTCOMPILE_NOOPT) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ $< ++################################## diff --git a/sci-libs/superlu/files/superlu-examples.patch b/sci-libs/superlu/files/superlu-examples.patch new file mode 100644 index 000000000000..a585c1a01b71 --- /dev/null +++ b/sci-libs/superlu/files/superlu-examples.patch @@ -0,0 +1,13 @@ +--- EXAMPLE/Makefile.orig 2008-01-31 17:16:16.008471873 +0000 ++++ EXAMPLE/Makefile 2008-01-31 17:20:16.581889615 +0000 +@@ -19,4 +19,9 @@ +-include ../make.inc ++SUPERLULIB = -lsuperlu ++BLASLIB = $(BLAS_LIBS) ++FORTRAN = $(F77) ++LOADER = $(LD) ++LOADOPTS = $(LDFLAGS) ++CDEFS = -DAdd_ + + ####################################################################### + # This makefile creates the example programs for the linear equation diff --git a/sci-libs/superlu/metadata.xml b/sci-libs/superlu/metadata.xml new file mode 100644 index 000000000000..101acb6868f3 --- /dev/null +++ b/sci-libs/superlu/metadata.xml @@ -0,0 +1,21 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd"> +<pkgmetadata> +<herd>sci</herd> +<longdescription lang="en"> + SuperLU is a general purpose library for the direct solution of large, + sparse, nonsymmetric systems of linear equations on high performance + machines. The library is written in C and is callable from either C or + Fortran. The library routines will perform an LU decomposition with + partial pivoting and triangular system solves through forward and back + substitution. The LU factorization routines can handle non-square + matrices but the triangular solves are performed only for square + matrices. The matrix columns may be preordered (before factorization) + either through library or user supplied routines. This preordering for + sparsity is completely separate from the factorization. Working + precision iterative refinement subroutines are provided for improved + backward stability. Routines are also provided to equilibrate the + system, estimate the condition number, calculate the relative backward + error, and estimate error bounds for the refined solutions. +</longdescription> +</pkgmetadata> diff --git a/sci-libs/superlu/superlu-4.0-r1.ebuild b/sci-libs/superlu/superlu-4.0-r1.ebuild new file mode 100644 index 000000000000..2e9f7255e654 --- /dev/null +++ b/sci-libs/superlu/superlu-4.0-r1.ebuild @@ -0,0 +1,77 @@ +# Copyright 1999-2010 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Header: /var/cvsroot/gentoo-x86/sci-libs/superlu/superlu-4.0-r1.ebuild,v 1.1 2010/06/09 08:18:58 jlec Exp $ + +EAPI="2" + +inherit autotools eutils toolchain-funcs + +MY_PN=SuperLU + +DESCRIPTION="Sparse LU factorization library" +HOMEPAGE="http://crd.lbl.gov/~xiaoye/SuperLU/" +SRC_URI="${HOMEPAGE}/${PN}_${PV}.tar.gz" + +LICENSE="BSD" +SLOT="0" +KEYWORDS="~amd64 ~x86 ~amd64-linux ~x86-linux" +IUSE="doc examples static-libs test" + +RDEPEND="virtual/blas" +DEPEND="${RDEPEND} + dev-util/pkgconfig + test? ( app-shells/tcsh )" + +S="${WORKDIR}/${MY_PN}_${PV}" + +src_prepare() { + epatch "${FILESDIR}"/${P}-autotools.patch + epatch "${FILESDIR}"/${PN}-examples.patch + epatch "${FILESDIR}"/${PV}-test.patch + eautoreconf +} + +src_configure() { + econf \ + --with-blas="$(pkg-config --libs blas)" \ + $(use_enable static-libs static) +} + +src_test() { + cd TESTING/MATGEN + emake -j1 \ + FORTRAN="$(tc-getFC)" \ + LOADER="$(tc-getCC)" \ + CFLAGS="${CFLAGS}" \ + FFLAGS="${FFLAGS}" \ + LOADOPTS="${LDFLAGS}" \ + SUPERLULIB="../SRC/.libs/libsuperlu.a" \ + BLASLIB="$(pkg-config --libs blas)" \ + CC="$(tc-getCC)" \ + || die "emake matrix generation failed" + cd .. + emake -j1 \ + CC="$(tc-getCC)" \ + FORTRAN="$(tc-getFC)" \ + LOADER="$(tc-getCC)" \ + CFLAGS="${CFLAGS}" \ + FFLAGS="${FFLAGS}" \ + LOADOPTS="${LDFLAGS}" \ + SUPERLULIB="../SRC/.libs/libsuperlu.so" \ + BLASLIB="$(pkg-config --libs blas)" \ + || die "emake test failed" +} + +src_install() { + emake DESTDIR="${D}" install || die "emake install failed" + + insinto /usr/include/${PN} + doins SRC/*.h || die + + dodoc README + use doc && newdoc INSTALL/ug.ps userguide.ps + if use examples; then + insinto /usr/share/doc/${PF} + newins -r EXAMPLE examples + fi +} |