Date: Sun, 23 Jul 2006 18:26:01 +0200 (CEST) From: Thierry Thomas <thierry@pompo.net> To: FreeBSD-gnats-submit@FreeBSD.org Cc: Maho Nakata <maho@FreeBSD.org> Subject: ports/100756: math/scalapack: switch to MPICH2. Message-ID: <20060723162601.0F52811453@graf.pompo.net> Resent-Message-ID: <200607231630.k6NGUH2l011654@freefall.freebsd.org>
next in thread | raw e-mail | index | archive | help
>Number: 100756 >Category: ports >Synopsis: math/scalapack: switch to MPICH2. >Confidential: no >Severity: non-critical >Priority: medium >Responsible: freebsd-ports-bugs >State: open >Quarter: >Keywords: >Date-Required: >Class: change-request >Submitter-Id: current-users >Arrival-Date: Sun Jul 23 16:30:15 GMT 2006 >Closed-Date: >Last-Modified: >Originator: Thierry Thomas >Release: FreeBSD 6.1-STABLE i386 >Organization: Kabbale Eros >Environment: System: FreeBSD graf.pompo.net 6.1-STABLE FreeBSD 6.1-STABLE #0: Tue Jun 27 06:04:37 CEST 2006 thierry@graf.pompo.net:/usr/obj/usr/src/sys/GRAF060511 i386 >Description: I'm switching Code_Aster and MUMPS to MPICH2, and I'd like to apply this update to BLACS and SCALAPACK in the same process. - Switch to net/mpich2; - Fix BLASLIB; - Use SUB_FILES and remove pkg-message. >How-To-Repeat: N/A. >Fix: Please apply the following patch: --- scalapack.diff begins here --- diff -urN math/scalapack.orig/Makefile math/scalapack/Makefile --- math/scalapack.orig/Makefile Tue Jul 11 23:17:49 2006 +++ math/scalapack/Makefile Sun Jul 23 14:17:29 2006 @@ -7,7 +7,7 @@ PORTNAME= scalapack PORTVERSION= 1.7 -PORTREVISION= 1 +PORTREVISION= 2 CATEGORIES= math MASTER_SITES= ftp://ftp.netlib.org/scalapack/ DISTNAME= SCALAPACK @@ -23,7 +23,7 @@ MAINTAINER= maho@FreeBSD.org COMMENT= The ScaLAPACK Scalable LAPACK library -BUILD_DEPENDS= ${LOCALBASE}/mpich/lib/libmpich.a:${PORTSDIR}/net/mpich \ +BUILD_DEPENDS= ${LOCALBASE}/mpich2/lib/libmpich.a:${PORTSDIR}/net/mpich2 \ ${LOCALBASE}/lib/libblacs.a:${PORTSDIR}/math/blacs \ ${LOCALBASE}/bin/f2c:${PORTSDIR}/lang/f2c LIB_DEPENDS= lapack:${PORTSDIR}/math/lapack \ @@ -40,6 +40,7 @@ DATADIR= ${PREFIX}/share/${PORTNAME:U} EXAMPLESDIR= ${PREFIX}/share/examples/${PORTNAME:U} PKGMESSAGE= ${WRKDIR}/pkg-message +SUB_FILES= pkg-message .include "files/manpages" @@ -57,8 +58,9 @@ CFLAGS+= -O3 -ffast-math -finline-functions -fomit-frame-pointer -funroll-loops -fexpensive-optimizations -Wno-multichar .endif .endif + post-patch: - ${REINPLACE_CMD} -e 's,@BLAS@,${BLAS},g; s,@WRKSRC@,${WRKSRC},g ; s,@PREFIX@,${PREFIX},g ; s,@CC@,${CC},g ; s,@CFLAGS@,${CFLAGS},g ; s,@F77@,${F77},g ; s,@FFLAGS@,${FFLAGS},g ; s,@F77EXTRAFLAGS@,${F77EXTRAFLAGS},g ; s,^ARCH *.= ar,ARCMD = ar,' ${WRKSRC}/SLmake.inc + ${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,@F77EXTRAFLAGS@,${F77EXTRAFLAGS},g ; s,^ARCH *.= ar,ARCMD = ar,' ${WRKSRC}/SLmake.inc .for mkf in ${ARCH2FIX} ${REINPLACE_CMD} -e 's|\$$(ARCH)|$$(ARCMD)|' ${WRKSRC}/${mkf}/Makefile .endfor @@ -98,8 +100,6 @@ .endif post-install: - @${SED} -e 's,/usr/local,${PREFIX},g' ${FILESDIR}/pkg-message.in \ - > ${PKGMESSAGE} @${CAT} ${PKGMESSAGE} .include <bsd.port.post.mk> diff -urN math/scalapack.orig/files/patch-SLmake.inc math/scalapack/files/patch-SLmake.inc --- math/scalapack.orig/files/patch-SLmake.inc Tue Jul 11 23:17:49 2006 +++ math/scalapack/files/patch-SLmake.inc Sun Jul 23 16:33:04 2006 @@ -17,7 +17,7 @@ # BLACSDBGLVL = 0 -BLACSdir = /usr/local/lib -+BLACSdir = @PREFIX@/lib ++BLACSdir = @LOCALBASE@/lib # # MPI setup; tailor to your system if using MPIBLACS # Will need to comment out these 6 lines if using PVM @@ -27,7 +27,7 @@ -BLACSFINIT = $(BLACSdir)/libmpiblacsF77init-p4.a -BLACSCINIT = $(BLACSdir)/libmpiblacsCinit-p4.a -BLACSLIB = $(BLACSdir)/libmpiblacs-p4.a -+SMPLIB = @PREFIX@/mpich/lib/libmpich.a @PREFIX@/mpich/lib/libpmpich.a ++SMPLIB = @LOCALBASE@/mpich2/lib/libmpich.a +BLACSFINIT = $(BLACSdir)/libblacsf77.a +BLACSCINIT = $(BLACSdir)/libblacsc.a +BLACSLIB = $(BLACSdir)/libblacs.a @@ -56,7 +56,7 @@ # SCALAPACKLIB = $(home)/libscalapack.a -BLASLIB = /usr/local/lib/libf77blas.a /usr/local/lib/libatlas.a -+BLASLIB = -L@PREFIX@/lib @BLAS% ++BLASLIB = -L@LOCALBASE@/lib @BLAS@ # PBLIBS = $(SCALAPACKLIB) $(FBLACSLIB) $(BLASLIB) $(SMPLIB) PRLIBS = $(SCALAPACKLIB) $(CBLACSLIB) $(SMPLIB) diff -urN math/scalapack.orig/files/pkg-message.in math/scalapack/files/pkg-message.in --- math/scalapack.orig/files/pkg-message.in Sat Oct 2 22:16:39 2004 +++ math/scalapack/files/pkg-message.in Sun Jul 23 14:23:13 2006 @@ -1,21 +1,25 @@ *********************************************************************** Please test your scalapack installation - Example programs are located at /usr/local/share/SCALAPACK/examples + Example programs are located at %%EXAMPLESDIR%% - Test programs are located at /usr/local/share/SCALAPACK/TESTING + Test programs are located at %%DATADIR%%/TESTING Example: - % cd /usr/local/share/SCALAPACK/TESTING - % /usr/local/mpich/bin/mpirun -np 4 xcbrd - % /usr/local/mpich/bin/mpirun -np 4 xcdblu + % cd %%DATADIR%%/TESTING + % %%LOCALBASE%%/mpich2/bin/mpd & + % %%LOCALBASE%%/mpich2/bin/mpirun -np 4 ./xcbrd + % %%LOCALBASE%%/mpich2/bin/mpirun -np 4 ./xcdblu etc., etc. ... to perform all the tests, - % cd /usr/local/share/SCALAPACK/TESTING + % cd %%DATADIR%%/TESTING + % %%LOCALBASE%%/mpich2/bin/mpd & % csh % foreach i (x*) - ? /usr/local/mpich/bin/mpirun -np 4 $i >& ~/$i.log + ? %%LOCALBASE%%/mpich2/bin/mpirun -np 4 ./$i >& ~/$i.log ? end + % %%LOCALBASE%%/mpich2/bin/mpdallexit + You can change -np 4 to any number to meet your environment. -See files at /usr/local/share/doc/scalapack for detail. +See files at %%DOCSDIR%% for detail. ********************************************************************** diff -urN math/scalapack.orig/pkg-message math/scalapack/pkg-message --- math/scalapack.orig/pkg-message Mon May 5 05:33:39 2003 +++ math/scalapack/pkg-message Thu Jan 1 01:00:00 1970 @@ -1,21 +0,0 @@ -*********************************************************************** - Please test your blacs installation - Example programs are located at /usr/local/share/SCALAPACK/examples - - Test programs are located at /usr/local/share/SCALAPACK/TESTING - - Example: - % cd /usr/local/share/SCLAPACK/TESTING - % mpirun -np 4 xcbrd - % mpirun -np 4 xcdblu - etc., etc. ... - - to perform all the tests, - % cd /usr/local/share/SCLAPACK/TESTING - % csh - % foreach i (x*) - ? mpirun -np 4 $i >& ~/$i.log - ? end -You can change -np 4 to any number to meet your environment. -See files at /usr/local/share/doc/scalapack for detail. -********************************************************************** --- scalapack.diff ends here --- >Release-Note: >Audit-Trail: >Unformatted:
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20060723162601.0F52811453>