aboutsummaryrefslogtreecommitdiff
path: root/math/arpack
diff options
context:
space:
mode:
authorNorikatsu Shigemura <nork@FreeBSD.org>2003-07-11 20:08:49 +0000
committerNorikatsu Shigemura <nork@FreeBSD.org>2003-07-11 20:08:49 +0000
commitc3cd01bd6e2ec5f81c7c01b896c7a50699fab334 (patch)
tree3469439be113c20f55575ef2f03a5930699ea923 /math/arpack
parent3cb93e47ca7d8e5c7f6e8d73eba660c4e2a7d4ed (diff)
downloadports-c3cd01bd6e2ec5f81c7c01b896c7a50699fab334.tar.gz
ports-c3cd01bd6e2ec5f81c7c01b896c7a50699fab334.zip
Don't build a subset of BLAS and ARPACK2 and Use external ones.
PR: ports/52789 Submitted by; Pedro F. Giffuni <giffunip@yahoo.com>
Notes
Notes: svn path=/head/; revision=84713
Diffstat (limited to 'math/arpack')
-rw-r--r--math/arpack/Makefile31
-rw-r--r--math/arpack/distinfo3
-rw-r--r--math/arpack/files/patch-ARmake.inc60
-rw-r--r--math/arpack/pkg-descr42
-rw-r--r--math/arpack/pkg-plist11
5 files changed, 109 insertions, 38 deletions
diff --git a/math/arpack/Makefile b/math/arpack/Makefile
index bb60b213b614..5bcdc74ddfe2 100644
--- a/math/arpack/Makefile
+++ b/math/arpack/Makefile
@@ -9,32 +9,38 @@ PORTNAME= arpack
PORTVERSION= 96
CATEGORIES= math
MASTER_SITES= http://www.caam.rice.edu/software/ARPACK/SRC/
-DISTFILES= ${PORTNAME}${PORTVERSION}.tar.gz patch.tar.Z
+DISTFILES= ${PORTNAME}${PORTVERSION}.tar.gz patch.tar.gz
+.ifndef NOPORTDOCS
+DISTFILES+= ug.ps.gz
+.endif
+DIST_SUBDIR= arpack
+EXTRACT_ONLY= ${PORTNAME}${PORTVERSION}.tar.gz
PATCH_SITES= http://www.caam.rice.edu/software/ARPACK/SRC/
MAINTAINER= ports@FreeBSD.org
-COMMENT= Argand Library (serial version)
+COMMENT= Argand Library: large eigenvalue subroutines (serial version)
-BUILD_DEPENDS= ${LOCALBASE}/bin/f2c:${PORTSDIR}/lang/f2c
-
-DIST_SUBDIR= arpack
+BUILD_DEPENDS= ${LOCALBASE}/bin/f2c:${PORTSDIR}/lang/f2c \
+ ${LOCALBASE}/lib/libf77blas.a:${PORTSDIR}/math/atlas
WRKSRC= ${WRKDIR}/ARPACK
ALL_TARGET= lib
-MAKE_ENV= HOME=${WRKSRC}
+BLAS_LIBS= ${LOCALBASE}/lib/libf77blas.a ${LOCALBASE}/lib/libatlas.a
+
INSTALLS_SHLIB= yes
-USE_REINPLACE= yes
+USE_REINPLACE= yes
.include <bsd.port.pre.mk>
pre-patch:
@(cd ${WRKSRC}; tar -xzf ${DISTDIR}/${DIST_SUBDIR}/patch.tar.Z)
-post-patch:
- @${REINPLACE_CMD} -e 's+%FC%+${FC}+g;' ${WRKSRC}/ARmake.inc
- @${REINPLACE_CMD} -e 's+%FFLAGS%+${FFLAGS}+g;' ${WRKSRC}/ARmake.inc
+pre-build:
+ @${REINPLACE_CMD} -e 's+%FC%+${FC}+g ; s+%FFLAGS%+${FFLAGS}+g ; \
+ s+%%WRKDIR%%+${WRKDIR}+ ; \
+ s+%%BLAS_LIBS%%+${BLAS_LIBS}+' ${WRKSRC}/ARmake.inc
do-install:
${INSTALL} ${WRKSRC}/libarpack.a ${PREFIX}/lib
@@ -48,9 +54,10 @@ do-install:
post-install:
.if !defined(NOPORTDOCS)
- ${MKDIR} $(PREFIX)/share/doc/arpack
+ ${MKDIR} ${DOCSDIR}
-${GZIP_CMD} ${GZIP} ${WRKSRC}/DOCUMENTS/ex-*.doc
- ${CP} $(WRKSRC)/DOCUMENTS/ex-*.doc.gz $(PREFIX)/share/doc/arpack/
+ ${CP} ${WRKSRC}/DOCUMENTS/ex-*.doc.gz ${DOCSDIR}
+ ${INSTALL_DATA} ${DISTDIR}/${DIST_SUBDIR}/ug.ps.gz ${DOCSDIR}
.endif
.include <bsd.port.post.mk>
diff --git a/math/arpack/distinfo b/math/arpack/distinfo
index 62beba3e4e3c..a80ef72a54de 100644
--- a/math/arpack/distinfo
+++ b/math/arpack/distinfo
@@ -1,2 +1,3 @@
MD5 (arpack/arpack96.tar.gz) = fffaa970198b285676f4156cebc8626e
-MD5 (arpack/patch.tar.Z) = f323dafc1610d45fb98987cf76a7d344
+MD5 (arpack/patch.tar.gz) = 14830d758f195f272b8594a493501fa2
+MD5 (arpack/ug.ps.gz) = 79cc51e4812c75873adafcad2185842e
diff --git a/math/arpack/files/patch-ARmake.inc b/math/arpack/files/patch-ARmake.inc
new file mode 100644
index 000000000000..82162e1562db
--- /dev/null
+++ b/math/arpack/files/patch-ARmake.inc
@@ -0,0 +1,60 @@
+--- ARmake.inc.orig Fri Apr 26 14:12:57 1996
++++ ARmake.inc Thu May 29 09:36:26 2003
+@@ -25,14 +25,14 @@
+ # | other than your home directory. |
+ # %--------------------------------------%
+ #
+-home = $(HOME)/ARPACK
++home = %%WRKDIR%%/ARPACK
+ #
+ # %--------------------------------------%
+ # | The platform identifier to suffix to |
+ # | the end of library names |
+ # %--------------------------------------%
+ #
+-PLAT = SUN4
++PLAT = FBSD
+ #
+ # %------------------------------------------------------%
+ # | The directories to find the various pieces of ARPACK |
+@@ -43,7 +43,7 @@
+ UTILdir = $(home)/UTIL
+ SRCdir = $(home)/SRC
+ #
+-DIRS = $(BLASdir) $(LAPACKdir) $(UTILdir) $(SRCdir)
++DIRS = $(LAPACKdir) $(UTILdir) $(SRCdir)
+ #
+ # %-------------------------------------------------------------------%
+ # | Comment out the previous line and uncomment the following |
+@@ -57,9 +57,9 @@
+ # | The name of the libraries to be created/linked to |
+ # %---------------------------------------------------%
+ #
+-ARPACKLIB = $(home)/libarpack_$(PLAT).a
++ARPACKLIB = $(home)/libarpack.a
+ LAPACKLIB =
+-BLASLIB =
++BLASLIB = %%BLAS_LIBS%%
+ #
+ ALIBS = $(ARPACKLIB) $(LAPACKLIB) $(BLASLIB)
+ #
+@@ -101,8 +101,8 @@
+ # | for your system. |
+ # %-----------------------------------------%
+ #
+-FC = f77
+-FFLAGS = -O -cg89
++FC = %FC%
++FFLAGS = %FFLAGS%
+
+ LDFLAGS =
+ CD = cd
+@@ -112,7 +112,7 @@
+ LN = ln
+ LNFLAGS = -s
+
+-MAKE = /bin/make
++MAKE ?= /usr/bin/make
+
+ RM = rm
+ RMFLAGS = -f
diff --git a/math/arpack/pkg-descr b/math/arpack/pkg-descr
index 54629b06b161..5b3c2569023e 100644
--- a/math/arpack/pkg-descr
+++ b/math/arpack/pkg-descr
@@ -1,22 +1,24 @@
-ARPACK is a collection of Fortran77 subroutines designed to solve large
-scale eigenvalue problems.
-
The package is designed to compute a few eigenvalues and corresponding
eigenvectors of a general n by n matrix A. It is most appropriate for large
-sparse or structured matrices A where structured means that a matrix-vector
-product w <- Av requires order n rather than the usual order n**2 floating
-point operations. This software is based upon an algorithmic variant of the
-Arnoldi process called the Implicitly Restarted Arnoldi Method (IRAM). When
-the matrix A is symmetric it reduces to a variant of the Lanczos process
-called the Implicitly Restarted Lanczos Method (IRLM). These variants may be
-viewed as a synthesis of the Arnoldi/Lanczos process with the Implicitly
-Shifted QR technique that is suitable for large scale problems. For many
-standard problems, a matrix factorization is not required. Only the action
-of the matrix on a vector is needed. ARPACK software is capable of solving
-large scale symmetric, nonsymmetric, and generalized eigenproblems from
-significant application areas. The software is designed to compute a few (k)
-eigenvalues with user specified features such as those of largest real part
-or largest magnitude. Storage requirements are on the order of n*k locations.
-No auxiliary storage is required. A set of Schur basis vectors for the desired
-k-dimensional eigen-space is computed which is numerically orthogonal to working
-precision. Numerically accurate eigenvectors are available on request.
+sparse or structured matrices A where structured means that a matrix-vector
+product w <- Av requires order n rather than the usual order n2 floating point
+operations. This software is based upon an algorithmic variant of the Arnoldi
+process called the Implicitly Restarted Arnoldi Method (IRAM). When the matrix
+A is symmetric it reduces to a variant of the Lanczos process called the
+Implicitly Restarted Lanczos Method (IRLM). These variants may be viewed as a
+synthesis of the Arnoldi/Lanczos process with the Implicitly Shifted QR
+technique that is suitable for large scale problems. For many standard
+problems, a matrix factorization is not required. Only the action of the matrix
+on a vector is needed.
+ARPACK software is capable of solving large scale symmetric, nonsymmetric,
+and generalized eigenproblems from significant application areas. The software
+is designed to compute a few (k) eigenvalues with user specified features
+such as those of largest real part or largest magnitude. Storage requirements
+are on the order of n*k locations. No auxiliary storage is required. A set
+of Schur basis vectors for the desired k-dimensional eigen-space is computed
+which is numerically orthogonal to working precision. Numerically accurate
+eigenvectors are available on request.
+
+ WWW: http://www.caam.rice.edu/ARPACK/
+
+NOTE: You MUST link with BLAS library or a replacement like ATLAS.
diff --git a/math/arpack/pkg-plist b/math/arpack/pkg-plist
index 471adb3849f9..db4fb2434c60 100644
--- a/math/arpack/pkg-plist
+++ b/math/arpack/pkg-plist
@@ -1,6 +1,7 @@
-include/arpack.h
+include/arpack.h
lib/libarpack.a
-share/doc/arpack/ex-complex.doc.gz
-share/doc/arpack/ex-nonsym.doc.gz
-share/doc/arpack/ex-sym.doc.gz
-@dirrm share/doc/arpack
+%%PORTDOCS%%share/doc/arpack/ex-complex.doc.gz
+%%PORTDOCS%%share/doc/arpack/ex-nonsym.doc.gz
+%%PORTDOCS%%share/doc/arpack/ex-sym.doc.gz
+%%PORTDOCS%%share/doc/arpack/ug.ps.gz
+%%PORTDOCS%%@dirrm share/doc/arpack