1
0
mirror of https://git.FreeBSD.org/ports.git synced 2025-01-12 07:27:57 +00:00

Update to 4.1.

Use CBLAS from ATLAS instead of the unaccelarated BLAS.

PR:		ports/53563
Submitted by:	Pedro F. Giffuni <giffunip@yahoo.com>
This commit is contained in:
Norikatsu Shigemura 2003-06-20 20:04:56 +00:00
parent 8a2e74a4ce
commit 5fcf88e50c
Notes: svn2git 2021-03-31 03:12:20 +00:00
svn path=/head/; revision=83378
9 changed files with 143 additions and 155 deletions

View File

@ -6,25 +6,33 @@
#
PORTNAME= umfpack
PORTVERSION= 2.2.1
PORTVERSION= 4.1
CATEGORIES= math
MASTER_SITES= ftp://ftp.cise.ufl.edu/pub/faculty/davis/umfpack/
DISTNAME= UMFPACK${PORTVERSION}
DISTNAME= UMFPACKv${PORTVERSION}
MAINTAINER= ports@FreeBSD.org
COMMENT= Unsymmetric-pattern Multifrontal Package
COMMENT= Unsymmetric-pattern MultiFrontal Package
BUILD_DEPENDS= ${LOCALBASE}/lib/libblas.a:${PORTSDIR}/math/blas
BUILD_DEPENDS= ${LOCALBASE}/lib/libcblas.a:${PORTSDIR}/math/atlas
NO_CDROM= 'Must not be sold'
ALL_TARGET= libumfpack.a
WRKSRC= ${WRKDIR}/${DISTNAME}/UMFPACK
ALL_TARGET= lib
post-extract:
${CP} ${FILESDIR}/Make.freebsd ${WRKDIR}/${DISTNAME}/AMD/Make
do-install:
${INSTALL_DATA} ${WRKSRC}/libumfpack.a ${PREFIX}/lib
${INSTALL_DATA} ${WRKDIR}/${DISTNAME}/AMD/Lib/libamd.a ${PREFIX}/lib
${INSTALL_DATA} ${WRKSRC}/Lib/libumfpack.a ${PREFIX}/lib
.if !defined(NOPORTDOCS)
@${MKDIR} ${PREFIX}/share/doc/umfpack
${INSTALL_DATA} ${WRKSRC}/README ${PREFIX}/share/doc/umfpack
${GZIP_CMD} ${PREFIX}/share/doc/umfpack/README
@${MKDIR} ${DOCSDIR}
${INSTALL_DATA} ${WRKDIR}/${DISTNAME}/AMD/Doc/*.pdf ${DOCSDIR}
${INSTALL_DATA} ${WRKSRC}/README ${DOCSDIR}
${GZIP_CMD} ${DOCSDIR}/README
${INSTALL_DATA} ${WRKSRC}/*.pdf ${DOCSDIR}
${CP} -R ${WRKDIR}/${DISTNAME}/Papers ${DOCSDIR}
.endif
.include <bsd.port.mk>

View File

@ -1 +1 @@
MD5 (UMFPACK2.2.1.tar.gz) = b8668f68715929be9c7e30400c1cd6f7
MD5 (UMFPACKv4.1.tar.gz) = 871dd16ea2b699f6f181ee212170ec63

View File

@ -0,0 +1,45 @@
#-------------------------------------------------------------------------------
# FreeBSD configuration (for both AMD and UMFPACK)
#-------------------------------------------------------------------------------
# Using GNU gcc and f77 compilers:
CC ?= gcc
CFLAGS ?= -O3 -fPIC
# Using Intel's icc and ifc compilers:
# F77 = ifc
# CC = icc
# CFLAGS = -ansi -O3 -ip -tpp7 -xW -vec_report0
# CFLAGS = -pg -g
# Using gcc compiler with picky tests
# CC = gcc
# CFLAGS = -ansi -pedantic -W -Wall -Wno-parentheses -Wshadow -Wcast-align -Winline -Wstrict-prototypes -Wno-unknown-pragmas -O3 -fPIC
# for gcc and gcov:
# CC = gcc
# CFLAGS = -pg -ftest-coverage -fprofile-arcs
# Running splint
# CC = - splint
# CFLAGS = -weak -fixedformalarray -badflag -fileextensions +relaxtypes +posixlib -unrecog
#-------------------------------------------------------------------------------
# BLAS options (for UMFPACK only)
#-------------------------------------------------------------------------------
# 1: with no BLAS (this will be slow)
# CONFIG = -DNBLAS
# LIB = -lm
# 2: with the ATLAS C-BLAS (http://www.netlib.org/atlas).
CONFIG = -DCBLAS -I../ATLAS/include -I${LOCALBASE}/include
LIB = -L${LOCALBASE}/lib -lcblas -latlas -lm
# 3: with Fortran interface to the ATLAS BLAS
# CONFIG = -I${LOCALBASE}/include
# LIB = -L${LOCALBASE}/lib -lf77blas -latlas -lg2c -lm
# 4: with Fortran interface to the BLAS, and Goto's BLAS (untested)
# CONFIG =
# LIB = -lgoto -lxerbla -lfrtbegin -lg2c -lm -lunwind -lcprts

View File

@ -0,0 +1,31 @@
--- Make/Make.include.orig Wed Apr 23 14:08:18 2003
+++ Make/Make.include Thu Jun 19 14:01:42 2003
@@ -10,15 +10,15 @@
# AMD, or both AMD and UMFPACK, you only need to edit this one file (and
# optionaly, one of the ../Make/Make.<arch> files below).
-CFLAGS = -O
+CFLAGS ?= -O
RANLIB = ranlib
LIB = -lm
RM = rm -f
MV = mv -f
-F77 = f77
-F77FLAGS = -O
-F77LIB =
-AR = ar
+F77 ?= f77
+F77FLAGS = ${FFLAGS}
+#F77LIB =
+AR ?= ar
#-------------------------------------------------------------------------------
# for the AMD and UMFPACK mexFunctions (-DNBLAS and -DNUTIL for UMFPACK only)
@@ -49,6 +49,7 @@
# CC = ... to redefine the name of your C compiler, for example. Without
# any specific changes, this Makefile should work on nearly all systems.
+include ../Make/Make.freebsd
# include ../Make/Make.linux
# include ../Make/Make.sgi
# include ../Make/Make.solaris

View File

@ -1,19 +0,0 @@
*** Makefile.orig Mon Jul 7 12:03:46 1997
--- Makefile Sun Dec 14 15:18:13 1997
***************
*** 19,25 ****
umz2er.o umz2p1.o umz2p2.o \
umz2rf.o umz2ra.o umz2r0.o umz2r2.o umz2rg.o umz21i.o
! HARWELL = mc21b.o mc13e.o
BLASLIB = libblas.a
UMFPACKLIB = libumfpack.a
--- 19,25 ----
umz2er.o umz2p1.o umz2p2.o \
umz2rf.o umz2ra.o umz2r0.o umz2r2.o umz2rg.o umz21i.o
! #HARWELL = mc21b.o mc13e.o
BLASLIB = libblas.a
UMFPACKLIB = libumfpack.a

View File

@ -1,84 +0,0 @@
Note: Although the Harwell routines are available in Netlib, they are a
commercial product. This patch disables their use.
*** umc2fb.f.orig Fri Nov 7 11:32:20 1997
--- umc2fb.f Fri Nov 7 11:43:14 1997
***************
*** 168,173 ****
--- 168,177 ----
C if (MC21B and MC13E not available during installation) return
C=======================================================================
+ RETURN
+ C=======================================================================
+ C The rest will be ignored !!!!!!!! (We are not using Harwell)
+ C=======================================================================
NZDIA = NZ
NZOFF = 0
*** umd2fb.f.orig Fri Nov 7 11:32:30 1997
--- umd2fb.f Fri Nov 7 11:44:14 1997
***************
*** 167,173 ****
C EXECUTABLE STATEMENTS:
C if (MC21B and MC13E not available during installation) return
C=======================================================================
!
NZDIA = NZ
NZOFF = 0
--- 167,176 ----
C EXECUTABLE STATEMENTS:
C if (MC21B and MC13E not available during installation) return
C=======================================================================
! RETURN
! C=======================================================================
! C The rest will be ignored !!!!!!!! (We are not using Harwell)
! C=======================================================================
NZDIA = NZ
NZOFF = 0
*** ums2fb.f.orig Fri Nov 7 11:32:44 1997
--- ums2fb.f Fri Nov 7 11:44:54 1997
***************
*** 167,173 ****
C EXECUTABLE STATEMENTS:
C if (MC21B and MC13E not available during installation) return
C=======================================================================
!
NZDIA = NZ
NZOFF = 0
--- 167,176 ----
C EXECUTABLE STATEMENTS:
C if (MC21B and MC13E not available during installation) return
C=======================================================================
! RETURN
! C=======================================================================
! C The rest will be ignored !!!!!!!! (We are not using Harwell)
! C=======================================================================
NZDIA = NZ
NZOFF = 0
*** umz2fb.f.orig Fri Nov 7 11:32:57 1997
--- umz2fb.f Fri Nov 7 11:45:42 1997
***************
*** 167,173 ****
C EXECUTABLE STATEMENTS:
C if (MC21B and MC13E not available during installation) return
C=======================================================================
!
NZDIA = NZ
NZOFF = 0
--- 167,176 ----
C EXECUTABLE STATEMENTS:
C if (MC21B and MC13E not available during installation) return
C=======================================================================
! RETURN
! C=======================================================================
! C The rest will be ignored !!!!!!!! (We are not using Harwell)
! C=======================================================================
NZDIA = NZ
NZOFF = 0

View File

@ -1,12 +1,20 @@
UMFPACK Version 2.2 is a package for solving systems of sparse linear systems,
Ax=b, where A is sparse and can be unsymmetric. It is written in ANSI Fortran
77. There are options for choosing a good pivot order, factorizing a
subsequent matrix with the same pivot order and nonzero pattern as a
previously factorized matrix, and solving systems of linear equations with
the factors (with A, L, or U; or with their transposes in the single/double
precision versions). Iterative refinement, with sparse backward error
estimates, can be performed. Single and double precision, complex, and
complex double precision (complex*16) routines are available. (Note that
complex*16 is not ANSI Fortran-77, but is a common extension to it).
A package for solving systems of sparse linear systems Ax=b, where A is
sparse and can be unsymmetric. There are options for choosing a good
pivot order, factorizing a subsequent matrix with the same pivot order and
nonzero pattern as a previously factorized matrix, and solving systems of
linear equations with the factors (with A, L, or U; or with their
transposes in the single/double precision versions). Iterative
refinement, with sparse backward error estimates, can be performed.
Single and double precision, complex, and complex double precision
(complex*16) routines are available.
WWW: http://www.cise.ufl.edu/~davis/umfpack.html
WWW: http://www.cise.ufl.edu/research/sparse/umfpack/
This package also includes AMD, a set of routines for pre-ordering sparse
matrices prior to Cholesky or LU factorization using the aproximate
minimum degree ordering algorithm:
http://www.cise.ufl.edu/research/sparse/amd/
_________
Note: By default this port builds the C-callable interface using the CBLAS
interface from ATLAS, but other versions of BLAS could be used and there
is also a FORTRAN interface available.

View File

@ -1,29 +1,16 @@
**********************************************************************
* NOTICE: "The UMFPACK Package may be used SOLELY for educational, *
* research, and benchmarking purposes by non-profit organizations and *
* the U.S. government. Commercial and other organizations may make *
* use of UMFPACK SOLELY for benchmarking purposes only. UMFPACK may *
* be modified by or on behalf of the User for such use but at no time *
* shall UMFPACK or any such modified version of UMFPACK become the *
* property of the User. UMFPACK is provided without warranty of any *
* kind, either expressed or implied. Neither the Authors nor their *
* employers shall be liable for any direct or consequential loss or *
* damage whatsoever arising out of the use or misuse of UMFPACK by *
* the User. UMFPACK must not be sold. You may make copies of *
* UMFPACK, but this NOTICE and the Copyright notice must appear in *
* all copies. Any other use of UMFPACK requires written permission. *
* Your use of UMFPACK is an implicit agreement to these conditions." *
* *
* The MA38 Package in Release 12 of the Harwell Subroutine Library *
* (HSL) has equivalent functionality (and identical calling interface)*
* as UMFPACK (the HSL has single and double precision versions only, *
* however). It is available for commercial use. Technical reports, *
* information on HSL, and matrices are available via the World Wide *
* Web at http://www.cis.rl.ac.uk/struct/ARCD/NUM.html, or by *
* anonymous ftp at seamus.cc.rl.ac.uk/pub. Also contact Dr. Scott *
* Roberts, Harwell Subroutine Library, B 552, AEA Technology, *
* Harwell, Didcot, Oxon OX11 0RA, England. *
* telephone (44) 1235 434988, fax (44) 1235 434136 *
* email Scott.Roberts@aeat.co.uk, who will provide details of price *
* and conditions of use. *
***********************************************************************
Your use or distribution of UMFPACK or any modified version of
UMFPACK implies that you agree to this License.
THIS MATERIAL IS PROVIDED AS IS, WITH ABSOLUTELY NO WARRANTY
EXPRESSED OR IMPLIED. ANY USE IS AT YOUR OWN RISK.
Permission is hereby granted to use or copy this program, provided
that the Copyright, this License, and the Availability of the original
version is retained on all copies. User documentation of any code that
uses UMFPACK or any modified version of UMFPACK code must cite the
Copyright, this License, the Availability note, and "Used by permission."
Permission to modify the code and to distribute modified code is granted,
provided the Copyright, this License, and the Availability note are
retained, and a notice that the code was modified is included. This
software was developed with support from the National Science Foundation,
and is provided to you free of charge.

View File

@ -1,3 +1,15 @@
lib/libamd.a
lib/libumfpack.a
%%PORTDOCS%%share/doc/umfpack/README.gz
%%PORTDOCS%%%%DOCSDIR%%/AMD_userguide.pdf
%%PORTDOCS%%%%DOCSDIR%%/QuickStart.pdf
%%PORTDOCS%%%%DOCSDIR%%/UserGuide.pdf
%%PORTDOCS%%%%DOCSDIR%%/Papers/amadalgo.pdf
%%PORTDOCS%%%%DOCSDIR%%/Papers/amadalgo.ps
%%PORTDOCS%%%%DOCSDIR%%/Papers/amf4.pdf
%%PORTDOCS%%%%DOCSDIR%%/Papers/amf4.ps
%%PORTDOCS%%%%DOCSDIR%%/Papers/amf4algo.pdf
%%PORTDOCS%%%%DOCSDIR%%/Papers/amf4algo.ps
%%PORTDOCS%%%%DOCSDIR%%/README.gz
%%PORTDOCS%%@dirrm share/doc/umfpack/Papers
%%PORTDOCS%%@dirrm share/doc/umfpack