aboutsummaryrefslogtreecommitdiff
path: root/math/spooles
diff options
context:
space:
mode:
authorMaho Nakata <maho@FreeBSD.org>2003-05-05 01:37:11 +0000
committerMaho Nakata <maho@FreeBSD.org>2003-05-05 01:37:11 +0000
commit4f8f7aedd2efaacc50e3887628815382a16361ae (patch)
tree39fd77866658bf0ccce7d063e5776cb5938e16aa /math/spooles
parent4da7820445d24671e41ab57ab7a63bd7918f044e (diff)
downloadports-4f8f7aedd2efaacc50e3887628815382a16361ae.tar.gz
ports-4f8f7aedd2efaacc50e3887628815382a16361ae.zip
SPOOLES is a library for solving sparse real and complex linear
systems of equations. Submitted by: Pedro Giffuni <giffunip@asme.org>
Notes
Notes: svn path=/head/; revision=80138
Diffstat (limited to 'math/spooles')
-rw-r--r--math/spooles/Makefile136
-rw-r--r--math/spooles/distinfo8
-rw-r--r--math/spooles/files/patch-Make.inc57
-rw-r--r--math/spooles/files/patch-Tree+src+makeGlobalLib12
-rw-r--r--math/spooles/files/patch-makefile333
-rw-r--r--math/spooles/pkg-descr20
-rw-r--r--math/spooles/pkg-plist147
7 files changed, 713 insertions, 0 deletions
diff --git a/math/spooles/Makefile b/math/spooles/Makefile
new file mode 100644
index 000000000000..8024f6331b3b
--- /dev/null
+++ b/math/spooles/Makefile
@@ -0,0 +1,136 @@
+# New ports collection makefile for: Spooles
+# Date created: 26 Jan 2002
+# Whom: Pedro Giffuni <giffunip@asme.org>
+#
+# $FreeBSD$
+#
+
+PORTNAME= spooles
+PORTVERSION= 2.2
+CATEGORIES= math
+MASTER_SITES= http://www.netlib.org/linalg/spooles/
+DISTNAME= ${PORTNAME}.${PORTVERSION}
+EXTRACT_SUFX= .tgz
+.if !defined(NOPORTDOCS)
+DISTFILES+= ${DISTNAME}${EXTRACT_SUFX} AllInOne.ps.gz Eigen.ps.gz \
+ Install.ps.gz LinSol.ps.gz Ordering.ps.gz \
+ PP99.ps.gz ReferenceManual.ps.gz
+.endif
+DIST_SUBDIR= spooles
+EXTRACT_ONLY= ${DISTNAME}${EXTRACT_SUFX}
+
+MAINTAINER= ports@FreeBSD.org
+COMMENT= SParse Object Oriented Linear Equations Solver
+
+USE_GMAKE= yes #BSD make gives problems here
+USE_REINPLACE= yes
+NO_WRKSUBDIR= yes
+MAKEFILE= makefile
+ALL_TARGET= global
+
+.if !defined(USE_MPI)
+PLIST_SUB+= MPI="@comment "
+.else
+PLIST_SUB+= MPI=""
+.endif
+
+post-patch:
+
+.if defined(USE_MPI)
+ @${REINPLACE_CMD} -e 's+%%LOCALBASE%%+${LOCALBASE}+g;' ${WRKSRC}/Make.inc
+.endif
+
+post-build:
+.if defined(USE_MPI)
+ @(cd ${WRKSRC}/MPI/src; $(MAKE) -f makeGlobalLib)
+.else
+ @(cd ${WRKSRC}/MT/src; $(MAKE) -f makeGlobalLib)
+.endif
+
+do-install:
+ ${INSTALL} ${WRKSRC}/spooles.a ${PREFIX}/lib/libspooles.a
+ ${MKDIR} ${PREFIX}/include/spooles
+.if defined(USE_MPI)
+ ${MKDIR} ${PREFIX}/include/spooles/MPI
+ ${INSTALL_DATA} ${WRKSRC}/MPI/*.h ${PREFIX}/include/spooles/MPI
+.endif
+ ${INSTALL_DATA} ${WRKSRC}/*.h ${PREFIX}/include/spooles/
+ ${MKDIR} ${PREFIX}/include/spooles/A2
+ ${INSTALL_DATA} ${WRKSRC}/A2/*.h ${PREFIX}/include/spooles/A2
+ ${MKDIR} ${PREFIX}/include/spooles/BPG
+ ${INSTALL_DATA} ${WRKSRC}/BPG/*.h ${PREFIX}/include/spooles/BPG
+ ${MKDIR} ${PREFIX}/include/spooles/Chv
+ ${INSTALL_DATA} ${WRKSRC}/Chv/*.h ${PREFIX}/include/spooles/Chv
+ ${MKDIR} ${PREFIX}/include/spooles/ChvList
+ ${INSTALL_DATA} ${WRKSRC}/ChvList/*.h ${PREFIX}/include/spooles/ChvList
+ ${MKDIR} ${PREFIX}/include/spooles/ChvManager
+ ${INSTALL_DATA} ${WRKSRC}/ChvManager/*.h ${PREFIX}/include/spooles/ChvManager
+ ${MKDIR} ${PREFIX}/include/spooles/Coords
+ ${INSTALL_DATA} ${WRKSRC}/Coords/*.h ${PREFIX}/include/spooles/Coords
+ ${MKDIR} ${PREFIX}/include/spooles/DenseMtx
+ ${INSTALL_DATA} ${WRKSRC}/DenseMtx/*.h ${PREFIX}/include/spooles/DenseMtx
+ ${MKDIR} ${PREFIX}/include/spooles/DSTree
+ ${INSTALL_DATA} ${WRKSRC}/DSTree/*.h ${PREFIX}/include/spooles/DSTree
+ ${MKDIR} ${PREFIX}/include/spooles/Drand
+ ${INSTALL_DATA} ${WRKSRC}/Drand/*.h ${PREFIX}/include/spooles/Drand
+ ${MKDIR} ${PREFIX}/include/spooles/DV
+ ${INSTALL_DATA} ${WRKSRC}/DV/*.h ${PREFIX}/include/spooles/DV
+ ${MKDIR} ${PREFIX}/include/spooles/ETree
+ ${INSTALL_DATA} ${WRKSRC}/ETree/*.h ${PREFIX}/include/spooles/ETree
+ ${MKDIR} ${PREFIX}/include/spooles/FrontMtx
+ ${INSTALL_DATA} ${WRKSRC}/FrontMtx/*.h ${PREFIX}/include/spooles/FrontMtx
+ ${MKDIR} ${PREFIX}/include/spooles/GPart
+ ${INSTALL_DATA} ${WRKSRC}/GPart/*.h ${PREFIX}/include/spooles/GPart
+ ${MKDIR} ${PREFIX}/include/spooles/Graph
+ ${INSTALL_DATA} ${WRKSRC}/Graph/*.h ${PREFIX}/include/spooles/Graph
+ ${MKDIR} ${PREFIX}/include/spooles/I2Ohash
+ ${INSTALL_DATA} ${WRKSRC}/I2Ohash/*.h ${PREFIX}/include/spooles/I2Ohash
+ ${MKDIR} ${PREFIX}/include/spooles/IIheap
+ ${INSTALL_DATA} ${WRKSRC}/IIheap/*.h ${PREFIX}/include/spooles/IIheap
+ ${MKDIR} ${PREFIX}/include/spooles/IV
+ ${INSTALL_DATA} ${WRKSRC}/IV/*.h ${PREFIX}/include/spooles/IV
+ ${MKDIR} ${PREFIX}/include/spooles/IVL
+ ${INSTALL_DATA} ${WRKSRC}/IVL/*.h ${PREFIX}/include/spooles/IVL
+ ${MKDIR} ${PREFIX}/include/spooles/Ideq
+ ${INSTALL_DATA} ${WRKSRC}/Ideq/*.h ${PREFIX}/include/spooles/Ideq
+ ${MKDIR} ${PREFIX}/include/spooles/InpMtx
+ ${INSTALL_DATA} ${WRKSRC}/InpMtx/*.h ${PREFIX}/include/spooles/InpMtx
+ ${MKDIR} ${PREFIX}/include/spooles/Lock
+ ${INSTALL_DATA} ${WRKSRC}/Lock/*.h ${PREFIX}/include/spooles/Lock
+ ${MKDIR} ${PREFIX}/include/spooles/MSMD
+ ${INSTALL_DATA} ${WRKSRC}/MSMD/*.h ${PREFIX}/include/spooles/MSMD
+ ${MKDIR} ${PREFIX}/include/spooles/MT
+ ${INSTALL_DATA} ${WRKSRC}/MT/*.h ${PREFIX}/include/spooles/MT
+ ${MKDIR} ${PREFIX}/include/spooles/PatchAndGoInfo
+ ${INSTALL_DATA} ${WRKSRC}/PatchAndGoInfo/*.h ${PREFIX}/include/spooles/PatchAndGoInfo
+ ${MKDIR} ${PREFIX}/include/spooles/Pencil
+ ${INSTALL_DATA} ${WRKSRC}/Pencil/*.h ${PREFIX}/include/spooles/Pencil
+ ${MKDIR} ${PREFIX}/include/spooles/SolveMap
+ ${INSTALL_DATA} ${WRKSRC}/SolveMap/*.h ${PREFIX}/include/spooles/SolveMap
+ ${MKDIR} ${PREFIX}/include/spooles/SubMtx
+ ${INSTALL_DATA} ${WRKSRC}/SubMtx/*.h ${PREFIX}/include/spooles/SubMtx
+ ${MKDIR} ${PREFIX}/include/spooles/SubMtxList
+ ${INSTALL_DATA} ${WRKSRC}/SubMtxList/*.h ${PREFIX}/include/spooles/SubMtxList
+ ${MKDIR} ${PREFIX}/include/spooles/SubMtxManager
+ ${INSTALL_DATA} ${WRKSRC}/SubMtxManager/*.h ${PREFIX}/include/spooles/SubMtxManager
+ ${MKDIR} ${PREFIX}/include/spooles/SymbFac
+ ${INSTALL_DATA} ${WRKSRC}/SymbFac/*.h ${PREFIX}/include/spooles/SymbFac
+ ${MKDIR} ${PREFIX}/include/spooles/Tree
+ ${INSTALL_DATA} ${WRKSRC}/Tree/*.h ${PREFIX}/include/spooles/Tree
+ ${MKDIR} ${PREFIX}/include/spooles/Utilities
+ ${INSTALL_DATA} ${WRKSRC}/Utilities/*.h ${PREFIX}/include/spooles/Utilities
+ ${MKDIR} ${PREFIX}/include/spooles/ZV/
+ ${INSTALL_DATA} ${WRKSRC}/ZV/*.h ${PREFIX}/include/spooles/ZV
+ ${MKDIR} ${PREFIX}/include/spooles/misc
+ ${INSTALL_DATA} ${WRKSRC}/misc/*.h ${PREFIX}/include/spooles/misc
+.if !defined(NOPORTDOCS)
+ @${MKDIR} ${DOCSDIR}
+ ${INSTALL_DATA} ${DISTDIR}/${DIST_SUBDIR}/AllInOne.ps.gz ${DOCSDIR}
+ ${INSTALL_DATA} ${DISTDIR}/${DIST_SUBDIR}/Eigen.ps.gz ${DOCSDIR}
+ ${INSTALL_DATA} ${DISTDIR}/${DIST_SUBDIR}/Install.ps.gz ${DOCSDIR}
+ ${INSTALL_DATA} ${DISTDIR}/${DIST_SUBDIR}/LinSol.ps.gz ${DOCSDIR}
+ ${INSTALL_DATA} ${DISTDIR}/${DIST_SUBDIR}/Ordering.ps.gz ${DOCSDIR}
+ ${INSTALL_DATA} ${DISTDIR}/${DIST_SUBDIR}/PP99.ps.gz ${DOCSDIR}
+ ${INSTALL_DATA} ${DISTDIR}/${DIST_SUBDIR}/ReferenceManual.ps.gz ${DOCSDIR}
+.endif
+.include <bsd.port.mk>
diff --git a/math/spooles/distinfo b/math/spooles/distinfo
new file mode 100644
index 000000000000..acd477319d7a
--- /dev/null
+++ b/math/spooles/distinfo
@@ -0,0 +1,8 @@
+MD5 (spooles/spooles.2.2.tgz) = 5789ca60d1ae565a4eaef6d03ca837af
+MD5 (spooles/AllInOne.ps.gz) = a34fe650c54d1595534c4332837c4681
+MD5 (spooles/Eigen.ps.gz) = f8d467d8288d11b4451538572500d2ac
+MD5 (spooles/Install.ps.gz) = 17e8084adb5c2842be0173f85c7d2a28
+MD5 (spooles/LinSol.ps.gz) = 91dfa232d5f2371c52e22540e8cef42a
+MD5 (spooles/Ordering.ps.gz) = a6e4e5bad20822328785e64cbd8c47a0
+MD5 (spooles/PP99.ps.gz) = 880a6c3262aabb72f082e3f2931617b8
+MD5 (spooles/ReferenceManual.ps.gz) = 9e5e32828f59c4cf066fdb34218705e7
diff --git a/math/spooles/files/patch-Make.inc b/math/spooles/files/patch-Make.inc
new file mode 100644
index 000000000000..931ce210efd4
--- /dev/null
+++ b/math/spooles/files/patch-Make.inc
@@ -0,0 +1,57 @@
+--- Make.inc.orig Tue Jan 19 06:48:55 1999
++++ Make.inc Mon May 5 09:59:52 2003
+@@ -12,7 +12,7 @@
+ # for solaris
+ #
+ # CC = gcc
+- CC = /usr/lang-4.0/bin/cc
++# CC = cc
+ #
+ # for sgi
+ #
+@@ -28,14 +28,14 @@
+ #
+ # OPTLEVEL =
+ # OPTLEVEL = -g -v
+- OPTLEVEL = -O
++# OPTLEVEL = -O
+ # OPTLEVEL = -xO5 -v
+ # OPTLEVEL = -O3
+ # OPTLEVEL = -O4
+ # CFLAGS = -Wall -g
+ # CFLAGS = -Wall -pg
+ # CFLAGS = $(OPTLEVEL) -D_POSIX_C_SOURCE=199506L
+- CFLAGS = $(OPTLEVEL)
++# CFLAGS += $(OPTLEVEL)
+ # CFLAGS = -Wall $(OPTLEVEL)
+ #
+ #----------------------------------------
+@@ -79,8 +79,8 @@
+ # set the ranlib environment
+ # (if ranlib is not needed, we echo the library name)
+ #
+-# RANLIB = ranlib
+- RANLIB = echo
++ RANLIB = ranlib
++# RANLIB = echo
+ #
+ #---------------------------------------------------------------------
+ #
+@@ -103,7 +103,7 @@
+ # MPI install library
+ #
+ # MPI_INSTALL_DIR =
+- MPI_INSTALL_DIR = /usr/local/mpich-1.0.13
++MPI_INSTALL_DIR = %%LOCALBASE%%/mpich
+ #
+ #---------------------------------------------------------------------
+ #
+@@ -115,7 +115,7 @@
+ #
+ # for solaris
+ #
+- MPI_LIB_PATH = -L$(MPI_INSTALL_DIR)/lib/solaris/ch_p4
++MPI_LIB_PATH = -L$(MPI_INSTALL_DIR)/lib
+ #
+ # for hp
+ #
diff --git a/math/spooles/files/patch-Tree+src+makeGlobalLib b/math/spooles/files/patch-Tree+src+makeGlobalLib
new file mode 100644
index 000000000000..37a9c12bbd97
--- /dev/null
+++ b/math/spooles/files/patch-Tree+src+makeGlobalLib
@@ -0,0 +1,12 @@
+--- Tree/src/makeGlobalLib.orig Fri Sep 18 04:26:35 1998
++++ Tree/src/makeGlobalLib Mon May 5 08:30:58 2003
+@@ -6,7 +6,8 @@
+
+ SRC = basics.c \
+ compress.c \
+- drawTree.c \
++ draw.c \
++ subtree.c \
+ init.c \
+ instance.c \
+ IO.c \
diff --git a/math/spooles/files/patch-makefile b/math/spooles/files/patch-makefile
new file mode 100644
index 000000000000..e61342cc3600
--- /dev/null
+++ b/math/spooles/files/patch-makefile
@@ -0,0 +1,333 @@
+--- makefile.orig Tue Jan 26 05:39:39 1999
++++ makefile Mon May 5 08:30:58 2003
+@@ -1,169 +1,169 @@
+ drivers :
+- cd A2 ; make all_drivers
+- cd BKL ; make all_drivers
+- cd BPG ; make all_drivers
+- cd Chv ; make all_drivers
+- cd ChvList ; make all_drivers
+- cd ChvManager ; make all_drivers
+- cd Coords ; make all_drivers
+- cd DSTree ; make all_drivers
+- cd DV ; make all_drivers
+- cd DenseMtx ; make all_drivers
+- cd Drand ; make all_drivers
+- cd EGraph ; make all_drivers
+- cd ETree ; make all_drivers
+- cd FrontMtx ; make all_drivers
+- cd GPart ; make all_drivers
+- cd Graph ; make all_drivers
+- cd I2Ohash ; make all_drivers
+- cd IIheap ; make all_drivers
+- cd IV ; make all_drivers
+- cd IVL ; make all_drivers
+- cd Ideq ; make all_drivers
+- cd InpMtx ; make all_drivers
+- cd Lock ; make all_drivers
+- cd MPI ; make all_drivers
+- cd MSMD ; make all_drivers
+- cd MT ; make all_drivers
+- cd Network ; make all_drivers
+- cd PatchAndGoInfo ; make all_drivers
+- cd Pencil ; make all_drivers
+- cd Perm ; make all_drivers
+- cd SemiImplMtx ; make all_drivers
+- cd SolveMap ; make all_drivers
+- cd SubMtx ; make all_drivers
+- cd SubMtxList ; make all_drivers
+- cd SubMtxManager ; make all_drivers
+- cd SymbFac ; make all_drivers
+- cd Tree ; make all_drivers
+- cd Utilities ; make all_drivers
+- cd ZV ; make all_drivers
+- cd misc ; make all_drivers
++ cd A2 ; $(MAKE) all_drivers
++ cd BKL ; $(MAKE) all_drivers
++ cd BPG ; $(MAKE) all_drivers
++ cd Chv ; $(MAKE) all_drivers
++ cd ChvList ; $(MAKE) all_drivers
++ cd ChvManager ; $(MAKE) all_drivers
++ cd Coords ; $(MAKE) all_drivers
++ cd DSTree ; $(MAKE) all_drivers
++ cd DV ; $(MAKE) all_drivers
++ cd DenseMtx ; $(MAKE) all_drivers
++ cd Drand ; $(MAKE) all_drivers
++ cd EGraph ; $(MAKE) all_drivers
++ cd ETree ; $(MAKE) all_drivers
++ cd FrontMtx ; $(MAKE) all_drivers
++ cd GPart ; $(MAKE) all_drivers
++ cd Graph ; $(MAKE) all_drivers
++ cd I2Ohash ; $(MAKE) all_drivers
++ cd IIheap ; $(MAKE) all_drivers
++ cd IV ; $(MAKE) all_drivers
++ cd IVL ; $(MAKE) all_drivers
++ cd Ideq ; $(MAKE) all_drivers
++ cd InpMtx ; $(MAKE) all_drivers
++ cd Lock ; $(MAKE) all_drivers
++ cd MPI ; $(MAKE) all_drivers
++ cd MSMD ; $(MAKE) all_drivers
++ cd MT ; $(MAKE) all_drivers
++ cd Network ; $(MAKE) all_drivers
++ cd PatchAndGoInfo ; $(MAKE) all_drivers
++ cd Pencil ; $(MAKE) all_drivers
++ cd Perm ; $(MAKE) all_drivers
++ cd SemiImplMtx ; $(MAKE) all_drivers
++ cd SolveMap ; $(MAKE) all_drivers
++ cd SubMtx ; $(MAKE) all_drivers
++ cd SubMtxList ; $(MAKE) all_drivers
++ cd SubMtxManager ; $(MAKE) all_drivers
++ cd SymbFac ; $(MAKE) all_drivers
++ cd Tree ; $(MAKE) all_drivers
++ cd Utilities ; $(MAKE) all_drivers
++ cd ZV ; $(MAKE) all_drivers
++ cd misc ; $(MAKE) all_drivers
+
+ clean :
+- cd A2 ; make clean
+- cd BKL ; make clean
+- cd BPG ; make clean
+- cd Chv ; make clean
+- cd ChvList ; make clean
+- cd ChvManager ; make clean
+- cd Coords ; make clean
+- cd DSTree ; make clean
+- cd DV ; make clean
+- cd DenseMtx ; make clean
+- cd Drand ; make clean
+- cd EGraph ; make clean
+- cd ETree ; make clean
+- cd FrontMtx ; make clean
+- cd GPart ; make clean
+- cd Graph ; make clean
+- cd I2Ohash ; make clean
+- cd IIheap ; make clean
+- cd IV ; make clean
+- cd IVL ; make clean
+- cd Ideq ; make clean
+- cd InpMtx ; make clean
+- cd Lock ; make clean
+- cd MPI ; make clean
+- cd MSMD ; make clean
+- cd MT ; make clean
+- cd Network ; make clean
+- cd PatchAndGoInfo ; make clean
+- cd Pencil ; make clean
+- cd Perm ; make clean
+- cd SemiImplMtx ; make clean
+- cd SolveMap ; make clean
+- cd SubMtx ; make clean
+- cd SubMtxList ; make clean
+- cd SubMtxManager ; make clean
+- cd SymbFac ; make clean
+- cd Tree ; make clean
+- cd Utilities ; make clean
+- cd ZV ; make clean
+- cd misc ; make clean
+- cd documentation ; make clean
++ cd A2 ; $(MAKE) clean
++ cd BKL ; $(MAKE) clean
++ cd BPG ; $(MAKE) clean
++ cd Chv ; $(MAKE) clean
++ cd ChvList ; $(MAKE) clean
++ cd ChvManager ; $(MAKE) clean
++ cd Coords ; $(MAKE) clean
++ cd DSTree ; $(MAKE) clean
++ cd DV ; $(MAKE) clean
++ cd DenseMtx ; $(MAKE) clean
++ cd Drand ; $(MAKE) clean
++ cd EGraph ; $(MAKE) clean
++ cd ETree ; $(MAKE) clean
++ cd FrontMtx ; $(MAKE) clean
++ cd GPart ; $(MAKE) clean
++ cd Graph ; $(MAKE) clean
++ cd I2Ohash ; $(MAKE) clean
++ cd IIheap ; $(MAKE) clean
++ cd IV ; $(MAKE) clean
++ cd IVL ; $(MAKE) clean
++ cd Ideq ; $(MAKE) clean
++ cd InpMtx ; $(MAKE) clean
++ cd Lock ; $(MAKE) clean
++ cd MPI ; $(MAKE) clean
++ cd MSMD ; $(MAKE) clean
++ cd MT ; $(MAKE) clean
++ cd Network ; $(MAKE) clean
++ cd PatchAndGoInfo ; $(MAKE) clean
++ cd Pencil ; $(MAKE) clean
++ cd Perm ; $(MAKE) clean
++ cd SemiImplMtx ; $(MAKE) clean
++ cd SolveMap ; $(MAKE) clean
++ cd SubMtx ; $(MAKE) clean
++ cd SubMtxList ; $(MAKE) clean
++ cd SubMtxManager ; $(MAKE) clean
++ cd SymbFac ; $(MAKE) clean
++ cd Tree ; $(MAKE) clean
++ cd Utilities ; $(MAKE) clean
++ cd ZV ; $(MAKE) clean
++ cd misc ; $(MAKE) clean
++ cd documentation ; $(MAKE) clean
+ - rm -f *.o *.a
+
+ lib :
+- cd A2 ; make lib
+- cd BKL ; make lib
+- cd BPG ; make lib
+- cd Chv ; make lib
+- cd ChvList ; make lib
+- cd ChvManager ; make lib
+- cd Coords ; make lib
+- cd DSTree ; make lib
+- cd DV ; make lib
+- cd DenseMtx ; make lib
+- cd Drand ; make lib
+- cd EGraph ; make lib
+- cd ETree ; make lib
+- cd FrontMtx ; make lib
+- cd GPart ; make lib
+- cd Graph ; make lib
+- cd I2Ohash ; make lib
+- cd IIheap ; make lib
+- cd IV ; make lib
+- cd IVL ; make lib
+- cd Ideq ; make lib
+- cd InpMtx ; make lib
+- cd Lock ; make lib
+- cd MSMD ; make lib
+- cd Network ; make lib
+- cd PatchAndGoInfo ; make lib
+- cd Pencil ; make lib
+- cd Perm ; make lib
+- cd SemiImplMtx ; make lib
+- cd SolveMap ; make lib
+- cd SubMtx ; make lib
+- cd SubMtxList ; make lib
+- cd SubMtxManager ; make lib
+- cd SymbFac ; make lib
+- cd Tree ; make lib
+- cd Utilities ; make lib
+- cd ZV ; make lib
+- cd misc ; make lib
+-#cd MPI ; make lib
+-#cd MT ; make lib
++ cd A2 ; $(MAKE) lib
++ cd BKL ; $(MAKE) lib
++ cd BPG ; $(MAKE) lib
++ cd Chv ; $(MAKE) lib
++ cd ChvList ; $(MAKE) lib
++ cd ChvManager ; $(MAKE) lib
++ cd Coords ; $(MAKE) lib
++ cd DSTree ; $(MAKE) lib
++ cd DV ; $(MAKE) lib
++ cd DenseMtx ; $(MAKE) lib
++ cd Drand ; $(MAKE) lib
++ cd EGraph ; $(MAKE) lib
++ cd ETree ; $(MAKE) lib
++ cd FrontMtx ; $(MAKE) lib
++ cd GPart ; $(MAKE) lib
++ cd Graph ; $(MAKE) lib
++ cd I2Ohash ; $(MAKE) lib
++ cd IIheap ; $(MAKE) lib
++ cd IV ; $(MAKE) lib
++ cd IVL ; $(MAKE) lib
++ cd Ideq ; $(MAKE) lib
++ cd InpMtx ; $(MAKE) lib
++ cd Lock ; $(MAKE) lib
++ cd MSMD ; $(MAKE) lib
++ cd Network ; $(MAKE) lib
++ cd PatchAndGoInfo ; $(MAKE) lib
++ cd Pencil ; $(MAKE) lib
++ cd Perm ; $(MAKE) lib
++ cd SemiImplMtx ; $(MAKE) lib
++ cd SolveMap ; $(MAKE) lib
++ cd SubMtx ; $(MAKE) lib
++ cd SubMtxList ; $(MAKE) lib
++ cd SubMtxManager ; $(MAKE) lib
++ cd SymbFac ; $(MAKE) lib
++ cd Tree ; $(MAKE) lib
++ cd Utilities ; $(MAKE) lib
++ cd ZV ; $(MAKE) lib
++ cd misc ; $(MAKE) lib
++#cd MPI ; $(MAKE) lib
++#cd MT ; $(MAKE) lib
+
+ global :
+- cd A2/src ; make -f makeGlobalLib
+- cd BKL/src ; make -f makeGlobalLib
+- cd BPG/src ; make -f makeGlobalLib
+- cd Chv/src ; make -f makeGlobalLib
+- cd ChvList/src ; make -f makeGlobalLib
+- cd ChvManager/src ; make -f makeGlobalLib
+- cd Coords/src ; make -f makeGlobalLib
+- cd DSTree/src ; make -f makeGlobalLib
+- cd DV/src ; make -f makeGlobalLib
+- cd DenseMtx/src ; make -f makeGlobalLib
+- cd Drand/src ; make -f makeGlobalLib
+- cd EGraph/src ; make -f makeGlobalLib
+- cd ETree/src ; make -f makeGlobalLib
+- cd FrontMtx/src ; make -f makeGlobalLib
+- cd GPart/src ; make -f makeGlobalLib
+- cd Graph/src ; make -f makeGlobalLib
+- cd I2Ohash/src ; make -f makeGlobalLib
+- cd IIheap/src ; make -f makeGlobalLib
+- cd IV/src ; make -f makeGlobalLib
+- cd IVL/src ; make -f makeGlobalLib
+- cd Ideq/src ; make -f makeGlobalLib
+- cd InpMtx/src ; make -f makeGlobalLib
+- cd Lock/src ; make -f makeGlobalLib
+- cd MSMD/src ; make -f makeGlobalLib
+- cd Network/src ; make -f makeGlobalLib
+- cd PatchAndGoInfo/src ; make -f makeGlobalLib
+- cd Pencil/src ; make -f makeGlobalLib
+- cd Perm/src ; make -f makeGlobalLib
+- cd SemiImplMtx/src ; make -f makeGlobalLib
+- cd SolveMap/src ; make -f makeGlobalLib
+- cd SubMtx/src ; make -f makeGlobalLib
+- cd SubMtxList/src ; make -f makeGlobalLib
+- cd SubMtxManager/src ; make -f makeGlobalLib
+- cd SymbFac/src ; make -f makeGlobalLib
+- cd Tree/src ; make -f makeGlobalLib
+- cd Utilities/src ; make -f makeGlobalLib
+- cd ZV/src ; make -f makeGlobalLib
+- cd misc/src ; make -f makeGlobalLib
+-#cd MPI/src ; make -f makeGlobalLib
+-#cd MT/src ; make -f makeGlobalLib
++ cd A2/src ; $(MAKE) -f makeGlobalLib
++ cd BKL/src ; $(MAKE) -f makeGlobalLib
++ cd BPG/src ; $(MAKE) -f makeGlobalLib
++ cd Chv/src ; $(MAKE) -f makeGlobalLib
++ cd ChvList/src ; $(MAKE) -f makeGlobalLib
++ cd ChvManager/src ; $(MAKE) -f makeGlobalLib
++ cd Coords/src ; $(MAKE) -f makeGlobalLib
++ cd DSTree/src ; $(MAKE) -f makeGlobalLib
++ cd DV/src ; $(MAKE) -f makeGlobalLib
++ cd DenseMtx/src ; $(MAKE) -f makeGlobalLib
++ cd Drand/src ; $(MAKE) -f makeGlobalLib
++ cd EGraph/src ; $(MAKE) -f makeGlobalLib
++ cd ETree/src ; $(MAKE) -f makeGlobalLib
++ cd FrontMtx/src ; $(MAKE) -f makeGlobalLib
++ cd GPart/src ; $(MAKE) -f makeGlobalLib
++ cd Graph/src ; $(MAKE) -f makeGlobalLib
++ cd I2Ohash/src ; $(MAKE) -f makeGlobalLib
++ cd IIheap/src ; $(MAKE) -f makeGlobalLib
++ cd IV/src ; $(MAKE) -f makeGlobalLib
++ cd IVL/src ; $(MAKE) -f makeGlobalLib
++ cd Ideq/src ; $(MAKE) -f makeGlobalLib
++ cd InpMtx/src ; $(MAKE) -f makeGlobalLib
++ cd Lock/src ; $(MAKE) -f makeGlobalLib
++ cd MSMD/src ; $(MAKE) -f makeGlobalLib
++ cd Network/src ; $(MAKE) -f makeGlobalLib
++ cd PatchAndGoInfo/src ; $(MAKE) -f makeGlobalLib
++ cd Pencil/src ; $(MAKE) -f makeGlobalLib
++ cd Perm/src ; $(MAKE) -f makeGlobalLib
++ cd SemiImplMtx/src ; $(MAKE) -f makeGlobalLib
++ cd SolveMap/src ; $(MAKE) -f makeGlobalLib
++ cd SubMtx/src ; $(MAKE) -f makeGlobalLib
++ cd SubMtxList/src ; $(MAKE) -f makeGlobalLib
++ cd SubMtxManager/src ; $(MAKE) -f makeGlobalLib
++ cd SymbFac/src ; $(MAKE) -f makeGlobalLib
++ cd Tree/src ; $(MAKE) -f makeGlobalLib
++ cd Utilities/src ; $(MAKE) -f makeGlobalLib
++ cd ZV/src ; $(MAKE) -f makeGlobalLib
++ cd misc/src ; $(MAKE) -f makeGlobalLib
++#cd MPI/src ; $(MAKE) -f makeGlobalLib
++#cd MT/src ; $(MAKE) -f makeGlobalLib
diff --git a/math/spooles/pkg-descr b/math/spooles/pkg-descr
new file mode 100644
index 000000000000..0c421d8d1125
--- /dev/null
+++ b/math/spooles/pkg-descr
@@ -0,0 +1,20 @@
+ SPOOLES is a library for solving sparse real and complex linear
+ systems of equations, written in the C language using object oriented
+ design. At present, there is the following functionality:
+ 1. Compute multiple minimum degree, generalized nested dissection and
+ multisection orderings of matrices with symmetric structure.
+ 2. Factor and solve square linear systems of equations with symmetric
+ structure, with or without pivoting for stability. The
+ factorization can be symmetric LDLT, Hermitian LDLH, or
+ nonsymmetric LDU. A direct factorization or a drop tolerance
+ factorization can be computed. The factors and solve can be done
+ in serial mode, multithreaded with Solaris or POSIX threads, or
+ with MPI.
+ 3. Factor and solve overdetermined full rank systems of equations
+ using a multifrontal QR factorization, in serial or using POSIX
+ threads.
+ 4. Solve square linear systems using a variety of Krylov iterative
+ methods. The preconditioner is a drop tolerance factorization,
+ with or without pivoting for stability.
+
+WWW: http://netlib.bell-labs.com/netlib/linalg/spooles/spooles.2.2.html
diff --git a/math/spooles/pkg-plist b/math/spooles/pkg-plist
new file mode 100644
index 000000000000..8c4cdc0e1988
--- /dev/null
+++ b/math/spooles/pkg-plist
@@ -0,0 +1,147 @@
+include/spooles/A2.h
+include/spooles/A2/A2.h
+include/spooles/BKL.h
+include/spooles/BPG.h
+include/spooles/BPG/BPG.h
+include/spooles/Chv.h
+include/spooles/Chv/Chv.h
+include/spooles/ChvList.h
+include/spooles/ChvList/ChvList.h
+include/spooles/ChvManager.h
+include/spooles/ChvManager/ChvManager.h
+include/spooles/Coords.h
+include/spooles/Coords/Coords.h
+include/spooles/DSTree.h
+include/spooles/DSTree/DSTree.h
+include/spooles/DV.h
+include/spooles/DV/DV.h
+include/spooles/DenseMtx.h
+include/spooles/DenseMtx/DenseMtx.h
+include/spooles/Drand.h
+include/spooles/Drand/Drand.h
+include/spooles/EGraph.h
+include/spooles/ETree.h
+include/spooles/ETree/ETree.h
+include/spooles/FrontMtx.h
+include/spooles/FrontMtx/FrontMtx.h
+include/spooles/GPart.h
+include/spooles/GPart/DDsepInfo.h
+include/spooles/GPart/GPart.h
+include/spooles/Graph.h
+include/spooles/Graph/Graph.h
+include/spooles/I2Ohash.h
+include/spooles/I2Ohash/I2Ohash.h
+include/spooles/IIheap.h
+include/spooles/IIheap/IIheap.h
+include/spooles/ILUMtx.h
+include/spooles/IV.h
+include/spooles/IV/IV.h
+include/spooles/IVL.h
+include/spooles/IVL/IVL.h
+include/spooles/Ideq.h
+include/spooles/Ideq/Ideq.h
+include/spooles/InpMtx.h
+include/spooles/InpMtx/InpMtx.h
+include/spooles/Lock.h
+include/spooles/Lock/Lock.h
+include/spooles/MPI.h
+include/spooles/MSMD.h
+include/spooles/MSMD/MSMD.h
+include/spooles/MT.h
+include/spooles/MT/spoolesMT.h
+include/spooles/Network.h
+include/spooles/PatchAndGoInfo/PatchAndGoInfo.h
+include/spooles/PatchAndGoInfo.h
+include/spooles/Pencil.h
+include/spooles/Pencil/Pencil.h
+include/spooles/Perm.h
+include/spooles/SPOOLES.h
+include/spooles/SolveMap.h
+include/spooles/SolveMap/SolveMap.h
+include/spooles/SubMtx.h
+include/spooles/SubMtx/SubMtx.h
+include/spooles/SubMtxList.h
+include/spooles/SubMtxList/SubMtxList.h
+include/spooles/SubMtxManager.h
+include/spooles/SubMtxManager/SubMtxManager.h
+include/spooles/SymbFac.h
+include/spooles/SymbFac/SymbFac.h
+include/spooles/Tree.h
+include/spooles/Tree/Tree.h
+include/spooles/Utilities.h
+include/spooles/Utilities/util.h
+include/spooles/Utilities/CV.h
+include/spooles/Utilities/DLIST.h
+include/spooles/Utilities/DV.h
+include/spooles/Utilities/DVsort.h
+include/spooles/Utilities/FV.h
+include/spooles/Utilities/FileType.h
+include/spooles/Utilities/I2OP.h
+include/spooles/Utilities/IP.h
+include/spooles/Utilities/IV.h
+include/spooles/Utilities/IVsort.h
+include/spooles/Utilities/MM.h
+include/spooles/Utilities/ND.h
+include/spooles/Utilities/PCV.h
+include/spooles/Utilities/PDV.h
+include/spooles/Utilities/PFV.h
+include/spooles/Utilities/PIV.h
+include/spooles/Utilities/Utilities.h
+include/spooles/Utilities/ZV.h
+include/spooles/Utilities/axpy.h
+include/spooles/Utilities/iohb.h
+include/spooles/Utilities/mdot.h
+include/spooles/Utilities/misc.h
+include/spooles/Utilities/newsort.h
+include/spooles/ZV.h
+include/spooles/ZV/ZV.h
+include/spooles/cfiles.h
+include/spooles/misc.h
+include/spooles/misc/misc.h
+include/spooles/timings.h
+lib/libspooles.a
+%%MPI%%include/spooles/MPI/spoolesMPI.h
+%%MPI%%@dirrm include/spooles/MPI
+@dirrm include/spooles/A2
+@dirrm include/spooles/BPG
+@dirrm include/spooles/Chv
+@dirrm include/spooles/ChvList
+@dirrm include/spooles/ChvManager
+@dirrm include/spooles/Coords
+@dirrm include/spooles/DenseMtx
+@dirrm include/spooles/Drand
+@dirrm include/spooles/DSTree
+@dirrm include/spooles/DV
+@dirrm include/spooles/ETree
+@dirrm include/spooles/FrontMtx
+@dirrm include/spooles/GPart
+@dirrm include/spooles/Graph
+@dirrm include/spooles/I2Ohash
+@dirrm include/spooles/IIheap
+@dirrm include/spooles/IV
+@dirrm include/spooles/IVL
+@dirrm include/spooles/Ideq
+@dirrm include/spooles/InpMtx
+@dirrm include/spooles/Lock
+@dirrm include/spooles/MSMD
+@dirrm include/spooles/MT
+@dirrm include/spooles/PatchAndGoInfo
+@dirrm include/spooles/Pencil
+@dirrm include/spooles/SolveMap
+@dirrm include/spooles/SubMtx
+@dirrm include/spooles/SubMtxList
+@dirrm include/spooles/SubMtxManager
+@dirrm include/spooles/SymbFac
+@dirrm include/spooles/Tree
+@dirrm include/spooles/Utilities
+@dirrm include/spooles/ZV
+@dirrm include/spooles/misc
+@dirrm include/spooles
+%%PORTDOCS%%share/doc/spooles/AllInOne.ps.gz
+%%PORTDOCS%%share/doc/spooles/Eigen.ps.gz
+%%PORTDOCS%%share/doc/spooles/Install.ps.gz
+%%PORTDOCS%%share/doc/spooles/LinSol.ps.gz
+%%PORTDOCS%%share/doc/spooles/Ordering.ps.gz
+%%PORTDOCS%%share/doc/spooles/PP99.ps.gz
+%%PORTDOCS%%share/doc/spooles/ReferenceManual.ps.gz
+%%PORTDOCS%%@dirrm share/doc/spooles