summaryrefslogtreecommitdiff
path: root/math
diff options
context:
space:
mode:
authorMaho Nakata <maho@FreeBSD.org>2007-10-07 08:13:43 +0000
committerMaho Nakata <maho@FreeBSD.org>2007-10-07 08:13:43 +0000
commitbdcb9f0e58f826441a8e077b50812580898b5ae1 (patch)
treec69f31f8d51f3661f6fa53759239e70ba6e4eb1a /math
parent. Update to 4.2.2. (diff)
Update to 1.8.0. Openmpi part is not updated at the moment.
Notes
Notes: svn path=/head/; revision=201035
Diffstat (limited to 'math')
-rw-r--r--math/scalapack/Makefile31
-rw-r--r--math/scalapack/distinfo12
-rw-r--r--math/scalapack/files/SLmake.inc-mpich.diff31
-rw-r--r--math/scalapack/files/SLmake.inc-openmpi.diff4
4 files changed, 45 insertions, 33 deletions
diff --git a/math/scalapack/Makefile b/math/scalapack/Makefile
index af64db4fef9b..6d940c135129 100644
--- a/math/scalapack/Makefile
+++ b/math/scalapack/Makefile
@@ -6,15 +6,12 @@
#
PORTNAME= scalapack
-PORTVERSION= 1.7.5
-PORTREVISION= 1
+PORTVERSION= 1.8.0
CATEGORIES= math
-MASTER_SITES= ftp://ftp.netlib.org/scalapack/ \
- ${MASTER_SITE_LOCAL:S/$/:install_ps/}
-MASTER_SITE_SUBDIR+= maho/scalapack/:install_ps
+MASTER_SITES= ftp://ftp.netlib.org/scalapack/
DISTFILES= scalapack-${PORTVERSION}.tgz manpages.tgz
.if !defined(NOPORTDOCS)
-DISTFILES+= scalapack_install.ps:install_ps scalapackqref.ps \
+DISTFILES+= scalapack_install.ps scalapackqref.ps \
lawn100.ps pblasqref.ps manual.ps design.ps \
pumma_refmanual.ps trans.ps
.endif
@@ -24,7 +21,7 @@ EXTRACT_ONLY= scalapack-${PORTVERSION}.tgz manpages.tgz
MAINTAINER= maho@FreeBSD.org
COMMENT= The ScaLAPACK Scalable LAPACK library
-BUILD_DEPENDS= ${LOCALBASE}/bin/f2c:${PORTSDIR}/lang/f2c
+BUILD_DEPENDS= f2c:${PORTSDIR}/lang/f2c
LIB_DEPENDS= blacs.1:${PORTSDIR}/math/blacs
CONFLICTS= elmer-mathlibs-1*
@@ -50,10 +47,12 @@ WITH_ATLAS= yes
.if defined(WITH_ATLAS)
LIB_DEPENDS+= atlas.2:${PORTSDIR}/math/atlas
BLAS= -lf77blas -latlas
+LAPACK= -lalapack -lcblas
.else
LIB_DEPENDS+= blas.2:${PORTSDIR}/math/blas
LIB_DEPENDS+= lapack.4:${PORTSDIR}/math/lapack
BLAS= -lblas
+LAPACK= -llapack
.endif
.if exists(${LOCALBASE}/mpi/openmpi/bin/mpirun)
@@ -65,7 +64,9 @@ BUILD_DEPENDS+= ${LOCALBASE}/mpi/openmpi/lib/libmpi.so:${PORTSDIR}/net/openmpi
RUN_DEPENDS+= ${LOCALBASE}/mpi/openmpi/bin/mpirun:${PORTSDIR}/net/openmpi
EXTRA_PATCHES+= ${FILESDIR}/SLmake.inc-openmpi.diff
.else
-LIB_DEPENDS+= mpich:${PORTSDIR}/net/mpich2
+#LIB_DEPENDS+= mpich:${PORTSDIR}/net/mpich2
+BUILD_DEPENDS+= ${LOCALBASE}/mpich2/bin/mpicc:${PORTSDIR}/net/mpich2
+RUN_DEPENDS+= ${LOCALBASE}/mpich2/bin/mpirun:${PORTSDIR}/net/mpich2
EXTRA_PATCHES+= ${FILESDIR}/SLmake.inc-mpich.diff
.endif
@@ -93,10 +94,20 @@ CFLAGS+= -O3 -ffast-math -finline-functions -fomit-frame-pointer -funroll-loops
.endif
.endif
+NOOPT= -O0
+.if defined(WITH_OPENMPI)
+MPIF77= ${LOCALBASE}/mpi/openmpi/bin/mpif77
+MPICC= ${LOCALBASE}/mpi/openmpi/bin/mpicc
+.else
+MPIF77= ${LOCALBASE}/mpich2/bin/mpif77
+MPICC= ${LOCALBASE}/mpich2/bin/mpicc
+.endif
+
post-patch:
+ ${CP} ${WRKSRC}/SLmake.inc.example ${WRKSRC}/SLmake.inc
${CP} -r ${WRKSRC} ${WRKSRC_SHARED}
- @${REINPLACE_CMD} -e 's,@BLAS@,${BLAS},g; s,@WRKSRC@,${WRKSRC},g ; s,@LOCALBASE@,${LOCALBASE},g ; s,@CC@,${CC},g ; s,@CFLAGS@,${CFLAGS},g ; s,@F77@,${F77},g ; s,@FFLAGS@,${FFLAGS},g ; s,@NOOPT@,,g ; s,@F77EXTRAFLAGS@,${F77EXTRAFLAGS},g ; s,^ARCH *.= ar,ARCMD = ar,' ${WRKSRC}/SLmake.inc
- @${REINPLACE_CMD} -e 's,@BLAS@,${BLAS},g; s,@WRKSRC@,${WRKSRC_SHARED},g ; s,@LOCALBASE@,${LOCALBASE},g ; s,@CC@,${CC},g ; s,@CFLAGS@,${CFLAGS_SHARED},g ; s,@F77@,${F77},g ; s,@FFLAGS@,${FFLAGS_SHARED},g ; s,@NOOPT@,${FPIC},g ; s,@F77EXTRAFLAGS@,${F77EXTRAFLAGS},g ; s,^ARCH *.= ar,ARCMD = ar,' ${WRKSRC_SHARED}/SLmake.inc
+ @${REINPLACE_CMD} -e 's,@BLAS@,${BLAS},g; s,@LAPACK@,${LAPACK},g;s,@LAPACK@,${LAPACK},g;s,@LAPACK@,${LAPACK},g;s,@LAPACK@,${LAPACK},g; s,@WRKSRC@,${WRKSRC},g ; s,@LOCALBASE@,${LOCALBASE},g ; s,@CC@,${CC},g ; s,@CFLAGS@,${CFLAGS},g ; s,@F77@,${F77},g ; s,@MPIF77@,${MPIF77},g ; s,@MPICC@,${MPICC},g ; s,@FFLAGS@,${FFLAGS},g ; s,@NOOPT@,${NOOPT},g ; s,@F77EXTRAFLAGS@,${F77EXTRAFLAGS},g ; s,^ARCH *.= ar,ARCMD = ar,' ${WRKSRC}/SLmake.inc
+ @${REINPLACE_CMD} -e 's,@BLAS@,${BLAS},g; s,@LAPACK@,${LAPACK},g; s,@WRKSRC@,${WRKSRC_SHARED},g ; s,@LOCALBASE@,${LOCALBASE},g ; s,@CC@,${CC},g ; s,@CFLAGS@,${CFLAGS_SHARED},g ; s,@F77@,${F77},g ; s,@MPIF77@,${MPIF77},g ; s,@MPICC@,${MPICC},g ; s,@FFLAGS@,${FFLAGS_SHARED},g ; s,@NOOPT@,${NOOPT} ${FPIC},g ; s,@F77EXTRAFLAGS@,${F77EXTRAFLAGS},g ; s,^ARCH *.= ar,ARCMD = ar,' ${WRKSRC_SHARED}/SLmake.inc
.for mkf in ${ARCH2FIX}
@${REINPLACE_CMD} -e 's|\$$(ARCH)|$$(ARCMD)|' ${WRKSRC}/${mkf}/Makefile
@${REINPLACE_CMD} -e 's|\$$(ARCH)|$$(ARCMD)|' ${WRKSRC_SHARED}/${mkf}/Makefile
diff --git a/math/scalapack/distinfo b/math/scalapack/distinfo
index 87d41b3463ce..bb51aa55ebda 100644
--- a/math/scalapack/distinfo
+++ b/math/scalapack/distinfo
@@ -1,12 +1,12 @@
-MD5 (scalapack/scalapack-1.7.5.tgz) = 122226d32ce02e2651988f905367a6f8
-SHA256 (scalapack/scalapack-1.7.5.tgz) = 115c7441b848b61d7d8087cfeec892d061e7b38003213ea2d4289b13c1bb3770
-SIZE (scalapack/scalapack-1.7.5.tgz) = 5024316
+MD5 (scalapack/scalapack-1.8.0.tgz) = f4a3f3d7ef32029bd79ab8abcc026624
+SHA256 (scalapack/scalapack-1.8.0.tgz) = e378dbedf67102cb7cc1a7991bb02bbe163aa91710dbeae2868ec781d3fc7a05
+SIZE (scalapack/scalapack-1.8.0.tgz) = 5006143
MD5 (scalapack/manpages.tgz) = a536ab4837ec68addff0a3ec99427a10
SHA256 (scalapack/manpages.tgz) = a745c9f367d65e3c7611c126597a4681094b002552e47b621964d30a966aac7b
SIZE (scalapack/manpages.tgz) = 379541
-MD5 (scalapack/scalapack_install.ps) = 72e99a64a7fd917793bca0425bd35c7d
-SHA256 (scalapack/scalapack_install.ps) = 1dcd52a058844ed5b10221ce8e20e446bf3ec6ae4125751527d7bdcfe703c232
-SIZE (scalapack/scalapack_install.ps) = 295578
+MD5 (scalapack/scalapack_install.ps) = c465212c2bc77808411ec31d214f7007
+SHA256 (scalapack/scalapack_install.ps) = bbf0b2c60289bf34580f57f8fa25aa71ba902fc72f2a665bf351ebb63ed320a0
+SIZE (scalapack/scalapack_install.ps) = 419092
MD5 (scalapack/scalapackqref.ps) = 3e4c1d66839d8dcaef80f0ebf39318d4
SHA256 (scalapack/scalapackqref.ps) = 89a9c16dcda4393568e3cb5dbd7ecfaecebdb8db7576bae1646ec0088ccd6140
SIZE (scalapack/scalapackqref.ps) = 173805
diff --git a/math/scalapack/files/SLmake.inc-mpich.diff b/math/scalapack/files/SLmake.inc-mpich.diff
index f2cc9fae9916..e24f66bd150a 100644
--- a/math/scalapack/files/SLmake.inc-mpich.diff
+++ b/math/scalapack/files/SLmake.inc-mpich.diff
@@ -1,5 +1,5 @@
---- SLmake.inc.old Wed Mar 7 14:01:14 2007
-+++ SLmake.inc Wed Mar 7 14:01:29 2007
+--- SLmake.inc.example 2007-04-04 13:24:52.000000000 +0900
++++ SLmake.inc.example 2007-10-06 18:47:01.000000000 +0900
@@ -19,26 +19,26 @@
# The complete path to the top level of ScaLAPACK directory, usually
# $(HOME)/SCALAPACK
@@ -27,32 +27,31 @@
-BLACSFINIT = $(BLACSdir)/libmpiblacsF77init-p4.a
-BLACSCINIT = $(BLACSdir)/libmpiblacsCinit-p4.a
-BLACSLIB = $(BLACSdir)/libmpiblacs-p4.a
-+SMPLIB = @LOCALBASE@/mpich2/lib/libmpich.a
-+BLACSFINIT = $(BLACSdir)/libblacsf77.a
-+BLACSCINIT = $(BLACSdir)/libblacsc.a
-+BLACSLIB = $(BLACSdir)/libblacs.a
++SMPLIB = -L@LOCALBASE@/mpich2 -lmpich
++BLACSFINIT = $(BLACSdir)/libblacsf77.a #-L$(BLACSdir) -lblacsf77
++BLACSCINIT = $(BLACSdir)/libblacsc.a #-L$(BLACSdir) -lblacsc
++BLACSLIB = $(BLACSdir)/libblacs.a #-L$(BLACSdir) -lblacs
TESTINGdir = $(home)/TESTING
#
-@@ -67,12 +67,12 @@
+@@ -67,11 +67,11 @@
#
# The fortran and C compilers, loaders, and their flags
#
--F77 = g77
-+F77 = @F77@
- #F77 = /usr/local/pgi/linux86/bin/pgf77
--CC = gcc
+-F77 = mpif77
+-CC = mpicc
-NOOPT =
-F77FLAGS = -O3 $(NOOPT)
-CCFLAGS = -O4
-+CC = @CC@
++F77 = @MPIF77@
++CC = @MPICC@
+NOOPT = @NOOPT@
+F77FLAGS = @FFLAGS@
+CCFLAGS = @CFLAGS@
SRCFLAG =
F77LOADER = $(F77)
CCLOADER = $(CC)
-@@ -82,7 +82,7 @@
+@@ -81,7 +81,7 @@
# C preprocessor defs for compilation
# (-DNoChange, -DAdd_, -DUpCase, or -Df77IsF2C)
#
@@ -61,12 +60,14 @@
#
# The archiver and the flag(s) to use when building archive (library)
# Also the ranlib routine. If your system has no ranlib, set RANLIB = echo
-@@ -94,7 +94,7 @@
+@@ -93,8 +93,8 @@
# The name of the libraries to be created/linked to
#
SCALAPACKLIB = $(home)/libscalapack.a
-BLASLIB = /usr/local/lib/libf77blas.a /usr/local/lib/libatlas.a
+-LAPACKLIB = /usr/local/lib/liblapack.a
+BLASLIB = -L@LOCALBASE@/lib @BLAS@
++LAPACKLIB = -L@LOCALBASE@/lib @LAPACK@
#
- PBLIBS = $(SCALAPACKLIB) $(FBLACSLIB) $(BLASLIB) $(SMPLIB)
+ PBLIBS = $(SCALAPACKLIB) $(FBLACSLIB) $(LAPACKLIB) $(BLASLIB) $(SMPLIB)
PRLIBS = $(SCALAPACKLIB) $(CBLACSLIB) $(SMPLIB)
diff --git a/math/scalapack/files/SLmake.inc-openmpi.diff b/math/scalapack/files/SLmake.inc-openmpi.diff
index cb749f023bd9..33a7eb1d873d 100644
--- a/math/scalapack/files/SLmake.inc-openmpi.diff
+++ b/math/scalapack/files/SLmake.inc-openmpi.diff
@@ -1,5 +1,5 @@
---- SLmake.inc.orig Thu Jan 19 06:36:03 2006
-+++ SLmake.inc Wed Mar 7 14:03:20 2007
+--- SLmake.inc.example Thu Jan 19 06:36:03 2006
++++ SLmake.inc.example Wed Mar 7 14:03:20 2007
@@ -19,26 +19,26 @@
# The complete path to the top level of ScaLAPACK directory, usually
# $(HOME)/SCALAPACK