diff options
author | Sebastien Fabbro <bicatali@gentoo.org> | 2008-01-29 18:49:40 +0000 |
---|---|---|
committer | Sebastien Fabbro <bicatali@gentoo.org> | 2008-01-29 18:49:40 +0000 |
commit | ac1d6667afe3bd73c6f94e5924e56b170b85e3d6 (patch) | |
tree | eab2bbf6a14152e66871cec4f026c17d6d291cba /sci-libs/umfpack | |
parent | alpha/ia64/sparc stable wrt #207634 (diff) | |
download | gentoo-2-ac1d6667afe3bd73c6f94e5924e56b170b85e3d6.tar.gz gentoo-2-ac1d6667afe3bd73c6f94e5924e56b170b85e3d6.tar.bz2 gentoo-2-ac1d6667afe3bd73c6f94e5924e56b170b85e3d6.zip |
Version bump. Updated description, udpated patch.
(Portage version: 2.1.4)
Diffstat (limited to 'sci-libs/umfpack')
-rw-r--r-- | sci-libs/umfpack/ChangeLog | 10 | ||||
-rw-r--r-- | sci-libs/umfpack/files/digest-umfpack-5.2.0 | 3 | ||||
-rw-r--r-- | sci-libs/umfpack/files/umfpack-5.2.0-autotools.patch | 532 | ||||
-rw-r--r-- | sci-libs/umfpack/metadata.xml | 10 | ||||
-rw-r--r-- | sci-libs/umfpack/umfpack-5.2.0.ebuild | 45 |
5 files changed, 592 insertions, 8 deletions
diff --git a/sci-libs/umfpack/ChangeLog b/sci-libs/umfpack/ChangeLog index 141b78354b45..a093eb3b60b4 100644 --- a/sci-libs/umfpack/ChangeLog +++ b/sci-libs/umfpack/ChangeLog @@ -1,6 +1,12 @@ # ChangeLog for sci-libs/umfpack -# Copyright 1999-2007 Gentoo Foundation; Distributed under the GPL v2 -# $Header: /var/cvsroot/gentoo-x86/sci-libs/umfpack/ChangeLog,v 1.3 2007/09/09 14:25:47 josejx Exp $ +# Copyright 1999-2008 Gentoo Foundation; Distributed under the GPL v2 +# $Header: /var/cvsroot/gentoo-x86/sci-libs/umfpack/ChangeLog,v 1.4 2008/01/29 18:49:39 bicatali Exp $ + +*umfpack-5.2.0 (29 Jan 2008) + + 29 Jan 2008; Sébastien Fabbro <bicatali@gentoo.org> + +files/umfpack-5.2.0-autotools.patch, metadata.xml, +umfpack-5.2.0.ebuild: + Version bump. Updated description, udpated patch. 09 Sep 2007; Joseph Jezak <josejx@gentoo.org> umfpack-5.1.0.ebuild: Marked ~ppc for bug #191600. diff --git a/sci-libs/umfpack/files/digest-umfpack-5.2.0 b/sci-libs/umfpack/files/digest-umfpack-5.2.0 new file mode 100644 index 000000000000..f6c445ef30e1 --- /dev/null +++ b/sci-libs/umfpack/files/digest-umfpack-5.2.0 @@ -0,0 +1,3 @@ +MD5 8ad2d68c7c49dfcdd8321e806e6c611c UMFPACK-5.2.0.tar.gz 1122066 +RMD160 98cb8c6f3d62d0f78018f82714b063e9a4aaa4c0 UMFPACK-5.2.0.tar.gz 1122066 +SHA256 cdf1061c551625f7d572f6f887bad978b4e0e90c6e448a08013ba72c95691c1c UMFPACK-5.2.0.tar.gz 1122066 diff --git a/sci-libs/umfpack/files/umfpack-5.2.0-autotools.patch b/sci-libs/umfpack/files/umfpack-5.2.0-autotools.patch new file mode 100644 index 000000000000..1056a89b5604 --- /dev/null +++ b/sci-libs/umfpack/files/umfpack-5.2.0-autotools.patch @@ -0,0 +1,532 @@ +--- Makefile.am 1970-01-01 01:00:00.000000000 +0100 ++++ Makefile.am 2008-01-29 18:25:24.000000000 +0000 +@@ -0,0 +1,2 @@ ++SUBDIRS = Source Include Demo ++EXTRA_DIST = README.txt +--- configure.ac 1970-01-01 01:00:00.000000000 +0100 ++++ configure.ac 2008-01-29 18:25:24.000000000 +0000 +@@ -0,0 +1,21 @@ ++# -*- Autoconf -*- ++AC_PREREQ(2.59) ++AC_INIT(umfpack, 5.2.0, davis@cise.ufl.edu) ++AC_CONFIG_SRCDIR([Source/umf_solve.c]) ++AC_CONFIG_HEADER([config.h]) ++AM_INIT_AUTOMAKE([foreign]) ++AC_PROG_INSTALL ++AC_PROG_F77 ++AC_PROG_LIBTOOL ++AC_CHECK_LIB(m, sqrt) ++sinclude(acx_blas.m4) ++ACX_BLAS ++if test x"$BLAS_LIBS" = x; then ++ AC_MSG_ERROR([Cannot find blas libraries]) ++fi ++AC_CHECK_LIB(amd, amd_aat) ++AC_CONFIG_FILES([Source/Makefile ++ Include/Makefile ++ Demo/Makefile ++ Makefile]) ++AC_OUTPUT +--- acx_blas.m4 1970-01-01 01:00:00.000000000 +0100 ++++ acx_blas.m4 2008-01-29 18:25:24.000000000 +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 +--- Include/Makefile.am 1970-01-01 01:00:00.000000000 +0100 ++++ Include/Makefile.am 2008-01-29 18:25:24.000000000 +0000 +@@ -0,0 +1,34 @@ ++include_HEADERS = \ ++ umfpack.h \ ++ umfpack_col_to_triplet.h \ ++ umfpack_defaults.h \ ++ umfpack_free_numeric.h \ ++ umfpack_free_symbolic.h \ ++ umfpack_get_determinant.h \ ++ umfpack_get_lunz.h \ ++ umfpack_get_numeric.h \ ++ umfpack_get_symbolic.h \ ++ umfpack_global.h \ ++ umfpack_load_numeric.h \ ++ umfpack_load_symbolic.h \ ++ umfpack_numeric.h \ ++ umfpack_qsymbolic.h \ ++ umfpack_report_control.h \ ++ umfpack_report_info.h \ ++ umfpack_report_matrix.h \ ++ umfpack_report_numeric.h \ ++ umfpack_report_perm.h \ ++ umfpack_report_status.h \ ++ umfpack_report_symbolic.h \ ++ umfpack_report_triplet.h \ ++ umfpack_report_vector.h \ ++ umfpack_save_numeric.h \ ++ umfpack_save_symbolic.h \ ++ umfpack_scale.h \ ++ umfpack_solve.h \ ++ umfpack_symbolic.h \ ++ umfpack_tictoc.h \ ++ umfpack_timer.h \ ++ umfpack_transpose.h \ ++ umfpack_triplet_to_col.h \ ++ umfpack_wsolve.h +--- Source/Makefile.am 1970-01-01 01:00:00.000000000 +0100 ++++ Source/Makefile.am 2008-01-29 18:25:24.000000000 +0000 +@@ -0,0 +1,221 @@ ++AM_CPPFLAGS = -I$(top_srcdir)/Include ++lib_LTLIBRARIES = libumfpack.la ++ ++# non-user-callable umf_*.[ch] files: ++UMFCH = umf_assemble umf_blas3_update umf_build_tuples umf_create_element \ ++ umf_dump umf_extend_front umf_garbage_collection umf_get_memory \ ++ umf_init_front umf_kernel umf_kernel_init umf_kernel_wrapup \ ++ umf_local_search umf_lsolve umf_ltsolve umf_mem_alloc_element \ ++ umf_mem_alloc_head_block umf_mem_alloc_tail_block \ ++ umf_mem_free_tail_block umf_mem_init_memoryspace \ ++ umf_report_vector umf_row_search umf_scale_column \ ++ umf_set_stats umf_solve umf_symbolic_usage umf_transpose \ ++ umf_tuple_lengths umf_usolve umf_utsolve umf_valid_numeric \ ++ umf_valid_symbolic umf_grow_front umf_start_front umf_2by2 \ ++ umf_store_lu umf_scale ++ ++# non-user-callable umf_*.[ch] files, int/UF_long versions only (no real/complex): ++UMFINT = umf_analyze umf_apply_order umf_colamd umf_free umf_fsize \ ++ umf_is_permutation umf_malloc umf_realloc umf_report_perm \ ++ umf_singletons ++ ++# non-user-callable, created from umf_ltsolve.c, umf_utsolve.c, ++# umf_triplet.c, and umf_assemble.c , with int/UF_long and real/complex versions: ++UMF_CREATED = umf_lhsolve umf_uhsolve umf_triplet_map_nox \ ++ umf_triplet_nomap_x umf_triplet_nomap_nox umf_triplet_map_x \ ++ umf_assemble_fixq umf_store_lu_drop ++ ++# non-user-callable, int/UF_long and real/complex versions: ++UMF = $(UMF_CREATED) $(UMFCH) ++ ++# user-callable umfpack_*.[ch] files (int/UF_long and real/complex): ++UMFPACK = umfpack_col_to_triplet umfpack_defaults umfpack_free_numeric \ ++ umfpack_free_symbolic umfpack_get_numeric umfpack_get_lunz \ ++ umfpack_get_symbolic umfpack_get_determinant umfpack_numeric \ ++ umfpack_qsymbolic umfpack_report_control umfpack_report_info \ ++ umfpack_report_matrix umfpack_report_numeric umfpack_report_perm \ ++ umfpack_report_status umfpack_report_symbolic umfpack_report_triplet \ ++ umfpack_report_vector umfpack_solve umfpack_symbolic \ ++ umfpack_transpose umfpack_triplet_to_col umfpack_scale \ ++ umfpack_load_numeric umfpack_save_numeric \ ++ umfpack_load_symbolic umfpack_save_symbolic ++ ++# user-callable, created from umfpack_solve.c (umfpack_wsolve.h exists, though): ++# with int/UF_long and real/complex versions: ++UMFPACKW = umfpack_wsolve ++ ++USER = $(UMFPACKW) $(UMFPACK) ++ ++# user-callable, only one version for int/UF_long, real/complex, *.[ch] files: ++GENERIC = umfpack_timer umfpack_tictoc umfpack_global ++ ++ ++#------------------------------------------------------------------------------- ++# object files for each version ++#------------------------------------------------------------------------------- ++ ++DI = $(addsuffix .lo, $(subst umf_,umf_di_,$(UMF)) $(subst umfpack_,umfpack_di_,$(USER))) ++DL = $(addsuffix .lo, $(subst umf_,umf_dl_,$(UMF)) $(subst umfpack_,umfpack_dl_,$(USER))) ++ZI = $(addsuffix .lo, $(subst umf_,umf_zi_,$(UMF)) $(subst umfpack_,umfpack_zi_,$(USER))) ++ZL = $(addsuffix .lo, $(subst umf_,umf_zl_,$(UMF)) $(subst umfpack_,umfpack_zl_,$(USER))) ++II = $(addsuffix .lo, $(subst umf_,umf_i_,$(UMFINT))) ++LL = $(addsuffix .lo, $(subst umf_,umf_l_,$(UMFINT))) ++GN = $(addsuffix .lo, $(subst umfpack_,umfpack_gn_,$(GENERIC))) ++ ++#------------------------------------------------------------------------------- ++# compile each int and UF_long routine (with no real/complex version) ++#------------------------------------------------------------------------------- ++ ++umf_i_%.lo: umf_%.c $(INC) ++ $(LTCOMPILE) -DDINT -c $< -o $@ ++ ++umf_l_%.lo: umf_%.c $(INC) ++ $(LTCOMPILE) -DDLONG -c $< -o $@ ++ ++#------------------------------------------------------------------------------- ++# compile each routine in the DI version ++#------------------------------------------------------------------------------- ++ ++umf_di_%.lo: umf_%.c $(INC) ++ $(LTCOMPILE) -DDINT -c $< -o $@ ++ ++umf_di_%hsolve.lo: umf_%tsolve.c $(INC) ++ $(LTCOMPILE) -DDINT -DCONJUGATE_SOLVE -c $< -o $@ ++ ++umf_di_triplet_map_x.lo: umf_triplet.c $(INC) ++ $(LTCOMPILE) -DDINT -DDO_MAP -DDO_VALUES -c $< -o $@ ++ ++umf_di_triplet_map_nox.lo: umf_triplet.c $(INC) ++ $(LTCOMPILE) -DDINT -DDO_MAP -c $< -o $@ ++ ++umf_di_triplet_nomap_x.lo: umf_triplet.c $(INC) ++ $(LTCOMPILE) -DDINT -DDO_VALUES -c $< -o $@ ++ ++umf_di_triplet_nomap_nox.lo: umf_triplet.c $(INC) ++ $(LTCOMPILE) -DDINT -c $< -o $@ ++ ++umf_di_assemble_fixq.lo: umf_assemble.c $(INC) ++ $(LTCOMPILE) -DDINT -DFIXQ -c $< -o $@ ++ ++umf_di_store_lu_drop.lo: umf_store_lu.c $(INC) ++ $(LTCOMPILE) -DDINT -DDROP -c $< -o $@ ++ ++umfpack_di_wsolve.lo: umfpack_solve.c $(INC) ++ $(LTCOMPILE) -DDINT -DWSOLVE -c $< -o $@ ++ ++umfpack_di_%.lo: umfpack_%.c $(INC) ++ $(LTCOMPILE) -DDINT -c $< -o $@ ++ ++#------------------------------------------------------------------------------- ++# compile each routine in the DL version ++#------------------------------------------------------------------------------- ++ ++umf_dl_%.lo: umf_%.c $(INC) ++ $(LTCOMPILE) -DDLONG -c $< -o $@ ++ ++umf_dl_%hsolve.lo: umf_%tsolve.c $(INC) ++ $(LTCOMPILE) -DDLONG -DCONJUGATE_SOLVE -c $< -o $@ ++ ++umf_dl_triplet_map_x.lo: umf_triplet.c $(INC) ++ $(LTCOMPILE) -DDLONG -DDO_MAP -DDO_VALUES -c $< -o $@ ++ ++umf_dl_triplet_map_nox.lo: umf_triplet.c $(INC) ++ $(LTCOMPILE) -DDLONG -DDO_MAP -c $< -o $@ ++ ++umf_dl_triplet_nomap_x.lo: umf_triplet.c $(INC) ++ $(LTCOMPILE) -DDLONG -DDO_VALUES -c $< -o $@ ++ ++umf_dl_triplet_nomap_nox.lo: umf_triplet.c $(INC) ++ $(LTCOMPILE) -DDLONG -c $< -o $@ ++ ++umf_dl_assemble_fixq.lo: umf_assemble.c $(INC) ++ $(LTCOMPILE) -DDLONG -DFIXQ -c $< -o $@ ++ ++umf_dl_store_lu_drop.lo: umf_store_lu.c $(INC) ++ $(LTCOMPILE) -DDLONG -DDROP -c $< -o $@ ++ ++umfpack_dl_wsolve.lo: umfpack_solve.c $(INC) ++ $(LTCOMPILE) -DDLONG -DWSOLVE -c $< -o $@ ++ ++umfpack_dl_%.lo: umfpack_%.c $(INC) ++ $(LTCOMPILE) -DDLONG -c $< -o $@ ++ ++#------------------------------------------------------------------------------- ++# compile each routine in the ZI version ++#------------------------------------------------------------------------------- ++ ++umf_zi_%.lo: umf_%.c $(INC) ++ $(LTCOMPILE) -DZINT -c $< -o $@ ++ ++umf_zi_%hsolve.lo: umf_%tsolve.c $(INC) ++ $(LTCOMPILE) -DZINT -DCONJUGATE_SOLVE -c $< -o $@ ++ ++umf_zi_triplet_map_x.lo: umf_triplet.c $(INC) ++ $(LTCOMPILE) -DZINT -DDO_MAP -DDO_VALUES -c $< -o $@ ++ ++umf_zi_triplet_map_nox.lo: umf_triplet.c $(INC) ++ $(LTCOMPILE) -DZINT -DDO_MAP -c $< -o $@ ++ ++umf_zi_triplet_nomap_x.lo: umf_triplet.c $(INC) ++ $(LTCOMPILE) -DZINT -DDO_VALUES -c $< -o $@ ++ ++umf_zi_triplet_nomap_nox.lo: umf_triplet.c $(INC) ++ $(LTCOMPILE) -DZINT -c $< -o $@ ++ ++umf_zi_assemble_fixq.lo: umf_assemble.c $(INC) ++ $(LTCOMPILE) -DZINT -DFIXQ -c $< -o $@ ++ ++umf_zi_store_lu_drop.lo: umf_store_lu.c $(INC) ++ $(LTCOMPILE) -DZINT -DDROP -c $< -o $@ ++ ++umfpack_zi_wsolve.lo: umfpack_solve.c $(INC) ++ $(LTCOMPILE) -DZINT -DWSOLVE -c $< -o $@ ++ ++umfpack_zi_%.lo: umfpack_%.c $(INC) ++ $(LTCOMPILE) -DZINT -c $< -o $@ ++ ++#------------------------------------------------------------------------------- ++# compile each routine in the ZL version ++#------------------------------------------------------------------------------- ++ ++umf_zl_%.lo: umf_%.c $(INC) ++ $(LTCOMPILE) -DZLONG -c $< -o $@ ++ ++umf_zl_%hsolve.lo: umf_%tsolve.c $(INC) ++ $(LTCOMPILE) -DZLONG -DCONJUGATE_SOLVE -c $< -o $@ ++ ++umf_zl_triplet_map_x.lo: umf_triplet.c $(INC) ++ $(LTCOMPILE) -DZLONG -DDO_MAP -DDO_VALUES -c $< -o $@ ++ ++umf_zl_triplet_map_nox.lo: umf_triplet.c $(INC) ++ $(LTCOMPILE) -DZLONG -DDO_MAP -c $< -o $@ ++ ++umf_zl_triplet_nomap_x.lo: umf_triplet.c $(INC) ++ $(LTCOMPILE) -DZLONG -DDO_VALUES -c $< -o $@ ++ ++umf_zl_triplet_nomap_nox.lo: umf_triplet.c $(INC) ++ $(LTCOMPILE) -DZLONG -c $< -o $@ ++ ++umf_zl_assemble_fixq.lo: umf_assemble.c $(INC) ++ $(LTCOMPILE) -DZLONG -DFIXQ -c $< -o $@ ++ ++umf_zl_store_lu_drop.lo: umf_store_lu.c $(INC) ++ $(LTCOMPILE) -DZLONG -DDROP -c $< -o $@ ++ ++umfpack_zl_wsolve.lo: umfpack_solve.c $(INC) ++ $(LTCOMPILE) -DZLONG -DWSOLVE -c $< -o $@ ++ ++umfpack_zl_%.lo: umfpack_%.c $(INC) ++ $(LTCOMPILE) -DZLONG -c $< -o $@ ++ ++#------------------------------------------------------------------------------- ++# Create the generic routines (GN) using a generic rule ++#------------------------------------------------------------------------------- ++ ++umfpack_gn_%.lo: umfpack_%.c $(INC) ++ $(LTCOMPILE) -c $< -o $@ ++ ++ ++libumfpack_la_SOURCES = ++libumfpack_la_LIBADD = $(BLAS_LIBS) -lamd -lm \ ++ $(II) $(LL) $(GN) $(DI) $(DL) $(ZI) $(ZL) +--- Demo/Makefile.am 1970-01-01 01:00:00.000000000 +0100 ++++ Demo/Makefile.am 2008-01-29 18:38:19.000000000 +0000 +@@ -0,0 +1,45 @@ ++AM_CPPFLAGS = -I$(top_srcdir)/Include ++LDADD = $(top_builddir)/Source/libumfpack.la ++ ++check_PROGRAMS = umfpack_simple \ ++ umfpack_di_demo \ ++ umfpack_dl_demo \ ++ umfpack_zi_demo \ ++ umfpack_zl_demo ++ ++umfpack_%_demo.c: umfpack_xx_demo.c umfpack_%_demo.sed ++ - sed -f umfpack_$*_demo.sed < umfpack_xx_demo.c > umfpack_$*_demo.c ++ ++umfpack_simple_SOURCES = umfpack_simple.c ++umfpack_di_demo_SOURCES = umfpack_di_demo.c ++umfpack_dl_demo_SOURCES = umfpack_dl_demo.c ++umfpack_zi_demo_SOURCES = umfpack_zi_demo.c ++umfpack_zl_demo_SOURCES = umfpack_zl_demo.c ++ ++check-local: $(check_PROGRAMS) ++ @total=0; failed=0; \ ++ ./umfpack_simple; \ ++ if [ "x$$?" = "x0" ]; then \ ++ echo "Test umfpack_simple PASSED."; \ ++ else \ ++ echo "Test umfpack_simple FAILED!!!"; \ ++ failed=$$(($$failed + 1)); \ ++ fi; \ ++ total=$$(($$total + 1)); \ ++ for i in *demo; do \ ++ echo "--- Testing $i ---"; \ ++ ./$$i$(EXEEXT) > my_$$i.out; \ ++ diff $$i.out my_$$i.out; \ ++ if [ "x$$?" = "x0" ]; then \ ++ echo "Test \`$$i' PASSED."; \ ++ else \ ++ echo "Test \`$$i' FAILED!!!"; \ ++ failed=$$(($$failed + 1)); \ ++ fi; \ ++ total=$$(($$total + 1)); \ ++ done; \ ++ if [ $$failed -gt 0 ]; then \ ++ echo "*** ERROR: $$failed/$$total tests failed!!!"; \ ++ echo ""; \ ++ exit 1; \ ++ fi diff --git a/sci-libs/umfpack/metadata.xml b/sci-libs/umfpack/metadata.xml index d81f6309e314..05599ed9de7d 100644 --- a/sci-libs/umfpack/metadata.xml +++ b/sci-libs/umfpack/metadata.xml @@ -3,11 +3,9 @@ <pkgmetadata> <herd>sci</herd> <longdescription lang="en"> -UMFPACK is a set of routines for solving unsymmetric sparse linear -systems, Ax=b, using the Unsymmetric MultiFrontal method. Written -in ANSI/ISO C, with a MATLAB (Version 6.0 and later) interface. -Appears as a built-in routine (for lu, backslash, and forward -slash) in MATLAB. Includes a MATLAB interface, a C-callable -interface, and a Fortran-callable interface. + UMFPACK is a set of routines for solving unsymmetric sparse linear + systems, Ax=b, using the Unsymmetric MultiFrontal method. + Includes a C-callable interface, and a Fortran-callable interface. + MATLAB routines are not included in the Gentoo package. </longdescription> </pkgmetadata> diff --git a/sci-libs/umfpack/umfpack-5.2.0.ebuild b/sci-libs/umfpack/umfpack-5.2.0.ebuild new file mode 100644 index 000000000000..b4196c60cd2e --- /dev/null +++ b/sci-libs/umfpack/umfpack-5.2.0.ebuild @@ -0,0 +1,45 @@ +# Copyright 1999-2008 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Header: /var/cvsroot/gentoo-x86/sci-libs/umfpack/umfpack-5.2.0.ebuild,v 1.1 2008/01/29 18:49:39 bicatali Exp $ + +inherit autotools eutils + +MY_PN=UMFPACK + +DESCRIPTION="Unsymmetric multifrontal sparse LU factorization library" +HOMEPAGE="http://www.cise.ufl.edu/research/sparse/umfpack" +SRC_URI="http://www.cise.ufl.edu/research/sparse/${PN}/${MY_PN}-${PV}.tar.gz" + +LICENSE="GPL-2" +SLOT="0" +KEYWORDS="~amd64 ~ppc ~x86" +IUSE="doc" +RDEPEND="virtual/blas + sci-libs/amd" +DEPEND="${RDEPEND} + dev-util/pkgconfig" + +S="${WORKDIR}/${MY_PN}" + +src_unpack() { + unpack ${A} + cd "${S}" + epatch "${FILESDIR}"/${P}-autotools.patch + eautoreconf +} + +src_compile() { + econf \ + --with-blas="$(pkg-config --libs blas)" \ + || die "econf failed" + emake || die "emake failed" +} + +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 "doins failed" + fi +} |