aboutsummaryrefslogtreecommitdiff
path: root/math/sdpara
diff options
context:
space:
mode:
Diffstat (limited to 'math/sdpara')
-rw-r--r--math/sdpara/Makefile132
-rw-r--r--math/sdpara/distinfo9
-rw-r--r--math/sdpara/files/patch-Makefile76
-rw-r--r--math/sdpara/files/patch-extraqualification13
-rw-r--r--math/sdpara/files/patch-mumps+Makefile21
-rw-r--r--math/sdpara/files/patch-rsdpa_include.h19
-rw-r--r--math/sdpara/pkg-plist3
7 files changed, 127 insertions, 146 deletions
diff --git a/math/sdpara/Makefile b/math/sdpara/Makefile
index 6348b9555118..5853af7e62e9 100644
--- a/math/sdpara/Makefile
+++ b/math/sdpara/Makefile
@@ -6,96 +6,98 @@
#
PORTNAME= sdpara
-PORTVERSION= 1.0.1
-PORTREVISION= 4
+PORTVERSION= 7.2.1
CATEGORIES= math parallel
MASTER_SITES= http://sdpa.indsys.chuo-u.ac.jp/sdpa/files/
-DISTFILES= ${PORTNAME}.${PORTVERSION}.src.tar.gz
-.if !defined(NOPORTDOCS)
-DISTFILES+= ${PORTNAME}.1.0.0.install.txt
-.endif
-DIST_SUBDIR= sdpara
-EXTRACT_ONLY= ${PORTNAME}.${PORTVERSION}.src.tar.gz
+DISTFILES= ${SRCFILE}#${MANUALFILE}
+DIST_SUBDIR= sdpa
+EXTRACT_ONLY= ${SRCFILE}
MAINTAINER= maho@FreeBSD.org
COMMENT= SDPARA paralell version of SDPA (math/sdpa)
-LIB_DEPENDS= atlas:${PORTSDIR}/math/atlas \
- scalapack:${PORTSDIR}/math/scalapack \
- blacs:${PORTSDIR}/math/blacs \
- mpich:${PORTSDIR}/net/mpich2
+.include <bsd.port.pre.mk>
+SRCDATE= 20090109
+MANDATE= 20080618
+MANUALVER= 7.1.1
+SRCFILE= ${PORTNAME}.${PORTVERSION}.src.${SRCDATE}.tar.gz
+#MANUALFILE= ${PORTNAME}.${MANUALVER}.manual.${MANDATE}.pdf
USE_FORTRAN= yes
USE_GMAKE= yes
-WRKSRC= ${WRKDIR}/${PORTNAME}
+WRKSRC= ${WRKDIR}/${PORTNAME}.${PORTVERSION}
+USE_BLAS?= reference
+
+LIB_DEPENDS= scalapack:${PORTSDIR}/math/scalapack \
+ blacs:${PORTSDIR}/math/blacs \
+ mpich:${PORTSDIR}/net/mpich2
+
+.if exists(${LOCALBASE}/lib/libgoto.so)
+USE_BLAS= gotoblas
+.elif exists(${LOCALBASE}/lib/libatlas_r.so)
+USE_BLAS= atlas
+.endif
-#Atlas is always required as lapack.h and blas.h is required.
-#no blaswarp.h at the moment.
-LIB_DEPENDS+= atlas.2:${PORTSDIR}/math/atlas
-WITH_ATLAS= yes
-.if defined(WITH_ATLAS)
-BLAS= -lcblas -lf77blas -latlas
-LAPACK= -lalapack
-CXXFLAGS+= -DNON_ATLAS_SDPA=0
-.else
-LIB_DEPENDS+= blas.2:${PORTSDIR}/math/blas
-LIB_DEPENDS+= lapack.4:${PORTSDIR}/math/lapack
+. if ${USE_BLAS} == reference
+LIB_DEPENDS+= blas.2:${PORTSDIR}/math/blas
+LIB_DEPENDS+= lapack.4:${PORTSDIR}/math/lapack
BLAS= -lblas
LAPACK= -llapack
-CXXFLAGS+= -DNON_ATLAS_SDPA=1
+.elif ${USE_BLAS} == gotoblas
+LIB_DEPENDS+= goto:${PORTSDIR}/math/gotoblas
+LIB_DEPENDS+= lapack.4:${PORTSDIR}/math/lapack
+BLAS= -lgotop
+LAPACK= -lgotop -llapack
+.elif ${USE_BLAS} == atlas
+LIB_DEPENDS+= atlas:${PORTSDIR}/math/atlas
+BLAS= -lptf77blas -lptcblas -latlas_r
+LAPACK= -lalapack_r
.endif
-FORTRANLIBS= -lgfortranbegin -lgfortran
-GCCLIBDIR= -L`${CAT} ${WRKSRC}/LIBDIR` -L`${CAT} ${WRKSRC}/LIBDIR`/../../..
-PLIST_SUB+= PORTVERSION="${PORTVERSION}"
-.include <bsd.port.pre.mk>
+#PLIST_SUB+= MANUALFILE=${MANUALFILE}
-.if defined(WITH_OPTIMIZED_FLAGS)
-.if ${ARCH} == "amd64"
-FFLAGS+= -pipe -O3 -ffast-math -funroll-all-loops -fpeel-loops -ftracer -funswitch-loops -funit-at-a-time
-CFLAGS+= -pipe -O3 -ffast-math -funroll-all-loops -fpeel-loops -ftracer -funswitch-loops -funit-at-a-time
-.elif ${ARCH} == "i386"
-FFLAGS+= -O3 -ffast-math -finline-functions -fomit-frame-pointer -funroll-loops -fexpensive-optimizations -malign-double -mcpu=i686 -march=i686 -mfancy-math-387 -mpreferred-stack-boundary=3
-CFLAGS+= -O3 -ffast-math -finline-functions -fomit-frame-pointer -funroll-loops -fexpensive-optimizations -malign-double -mcpu=i686 -march=i686 -mfancy-math-387 -mpreferred-stack-boundary=3
-.else
-FFLAGS+= -O3 -ffast-math -finline-functions -fomit-frame-pointer -funroll-loops -fexpensive-optimizations -Wno-multichar
-CFLAGS+= -O3 -ffast-math -finline-functions -fomit-frame-pointer -funroll-loops -fexpensive-optimizations -Wno-multichar
-.endif
-.endif
+SCALAPACK = -L/usr/local/lib -lscalapack -lblacs -lblacsc
+FORTRAN_LIBS= -lgfortran
+GCCLIBDIR = -L`${CAT} ${WRKSRC}/LIBDIR` -L`${CAT} ${WRKSRC}/LIBDIR`/../../..
-pre-build:
+pre-patch:
${DIRNAME} `${F77} -print-libgcc-file-name` > ${WRKSRC}/LIBDIR
post-patch:
- @${REINPLACE_CMD} -e 's|%%PREFIX%%|${PREFIX}|g ; \
- s|%%LOCALBASE%%|${LOCALBASE}|g ; \
- s|%%CXXFLAGS%%|${CXXFLAGS}|g ; \
- s|%%FFLAGS%%|${FFLAGS}|g ; \
- s|%%LAPACK%%|${LAPACK}|g ; \
- s|%%BLAS%%|${BLAS}|g ; \
- s|%%GCCLIBDIR%%|${GCCLIBDIR}|g ; \
- s|%%FORTRANLIBS%%|${FORTRANLIBS}|g ' ${WRKSRC}/Makefile
-.if !defined(WITH_OPTIMIZED_FLAGS)
- @${ECHO} "You can optimize by setting WITH_OPTIMIZED_FLAGS=yes."
-.endif
+ @${REINPLACE_CMD} -e 's|%%MPICC%%|mpicc|g ; \
+ s|%%MPICXX%%|mpicxx|g ; \
+ s|%%MPIF77%%|mpif77|g ; \
+ s|%%CFLAGS%%|${CFLAGS}|g ; \
+ s|%%CXXFLAGS%%|${CXXFLAGS}|g ; \
+ s|%%FFLAGS%%|${FFLAGS}|g ; \
+ s|%%BLAS%%|${BLAS}|g ; \
+ s|%%LAPACK%%|${LAPACK}|g ; \
+ s|%%SCALAPACK%%|${SCALAPACK}|g ; \
+ s|%%PTHREAD_LIBS%%|${PTHREAD_LIBS}|g ; \
+ s|%%FORTRAN_LIBS%%|${GCCLIBDIR} ${FORTRAN_LIBS}|g ' ${WRKSRC}/Makefile
+ @${REINPLACE_CMD} -e 's|%%MPICC%%|mpicc|g ; \
+ s|%%MPICXX%%|mpicxx|g ; \
+ s|%%MPIF77%%|mpif77|g ; \
+ s|%%CFLAGS%%|${CFLAGS}|g ; \
+ s|%%CXXFLAGS%%|${CXXFLAGS}|g ; \
+ s|%%FFLAGS%%|${FFLAGS}|g ; \
+ s|%%BLAS%%|${BLAS}|g ; \
+ s|%%LAPACK%%|${LAPACK}|g ' ${WRKSRC}/mumps/Makefile
+
+do-build:
+ cd ${WRKSRC} ; ${GMAKE} mumps
+ cd ${WRKSRC} ; ${GMAKE}
do-install:
${INSTALL_PROGRAM} ${WRKSRC}/sdpara ${PREFIX}/bin
@${MKDIR} ${DATADIR}
${INSTALL_DATA} ${WRKSRC}/param.sdpa ${DATADIR}
-.if !defined(NOPORTDOCS)
- @${MKDIR} ${DOCSDIR}
-.for i in sdpara.1.0.0.install.txt
- ${INSTALL_DATA} ${DISTDIR}/${DIST_SUBDIR}/${i} ${DOCSDIR}
-.endfor
@${MKDIR} ${EXAMPLESDIR}
-
-.for i in example1.dat example1.dat-s example1.ini \
- example1.ini-s example2.dat
- ${INSTALL_DATA} ${WRKSRC}/${i} ${EXAMPLESDIR}
-.endfor
+ ${INSTALL_DATA} ${WRKSRC}/example* ${EXAMPLESDIR}
${INSTALL_DATA} ${WRKSRC}/param.sdpa ${EXAMPLESDIR}
-
-.endif
+#.if !defined(NOPORTDOCS)
+# @${MKDIR} ${DOCSDIR}
+# ${INSTALL_DATA} ${DISTDIR}/${DIST_SUBDIR}/${MANUALFILE} ${DOCSDIR}
+#.endif
.include <bsd.port.post.mk>
diff --git a/math/sdpara/distinfo b/math/sdpara/distinfo
index f7c632291611..f51aab479d18 100644
--- a/math/sdpara/distinfo
+++ b/math/sdpara/distinfo
@@ -1,6 +1,3 @@
-MD5 (sdpara/sdpara.1.0.1.src.tar.gz) = 3770d42202eb35abb335631b874fa5da
-SHA256 (sdpara/sdpara.1.0.1.src.tar.gz) = a61798f59f4f93ded740d52091e6d86641a077abc8562158fbd9a5dec1a8bb1c
-SIZE (sdpara/sdpara.1.0.1.src.tar.gz) = 78055
-MD5 (sdpara/sdpara.1.0.0.install.txt) = a4ed5a22253569b35e565b4a145e3407
-SHA256 (sdpara/sdpara.1.0.0.install.txt) = 771fc8b914cc12e10241701696294f128860a6cef5f3ffa01d618b4724c4270d
-SIZE (sdpara/sdpara.1.0.0.install.txt) = 4212
+MD5 (sdpa/sdpara.7.2.1.src.20090109.tar.gz) = 62cfc091baff52580c816e721e05aa83
+SHA256 (sdpa/sdpara.7.2.1.src.20090109.tar.gz) = ee4cdff5f207246bacf8e0e4e3f0d1a607206c19ee762fe410b78d0463ed0206
+SIZE (sdpa/sdpara.7.2.1.src.20090109.tar.gz) = 2080623
diff --git a/math/sdpara/files/patch-Makefile b/math/sdpara/files/patch-Makefile
index f5c363278af8..8923ea82a9a1 100644
--- a/math/sdpara/files/patch-Makefile
+++ b/math/sdpara/files/patch-Makefile
@@ -1,43 +1,37 @@
---- Makefile.orig Fri Oct 8 15:08:59 2004
-+++ Makefile Thu May 12 14:02:57 2005
-@@ -18,11 +18,10 @@
- # This file is Makefile of SDPARA
- # $Id: Makefile,v 1.2 2004/10/08 05:57:48 makoto Exp $
+--- Makefile.orig 2009-01-09 11:26:29.000000000 +0900
++++ Makefile 2009-02-17 14:11:48.000000000 +0900
+@@ -4,20 +4,20 @@
+ # you edit here along your environment
+ ############################################################
--LAPACK = $(HOME)/lapack
-+LAPACK = %%LOCALBASE%%
- RSDPA = .
+-CC = mpicc
+-CXX = mpicxx
+-FC = mpif77
+-CFLAGS = -O3
+-CXXFLAGS = -O3
+-FFLAGS = -O3
+-
+-LAPACK_LIBS = /usr/local/lapack/lib/liblapack.a
+-BLAS_LIBS = /usr/local/lapack/lib/libblas.a
+-
+-SCALAPACK_LIBS = /usr/local/scalapack/lib/libscalapack.a /usr/local/BLACS/LIB/blacs_MPI-LINUX-0.a /usr/local/BLACS/LIB/blacsCinit_MPI-LINUX-0.a /usr/local/BLACS/LIB/blacs_MPI-LINUX-0.a
+-
+-FORTRAN_LIBS = -lgfortran
+-PTHERAD_LIBS = -lpthread
++CC = %%MPICC%%
++CXX = %%MPICXX%%
++F77 = %%MPIF77%%
++CFLAGS = %%CFLAGS%%
++CXXFLAGS = %%CXXFLAGS%%
++F77FLAGS = %%FFLAGS%%
++
++LAPACK_LIBS = %%LAPACK%%
++BLAS_LIBS = %%BLAS%%
++
++SCALAPACK_LIBS = %%SCALAPACK%%
++
++FORTRAN_LIBS = %%FORTRAN_LIBS%%
++PTHERAD_LIBS = %%PTHREAD_LIBS%%
--LAPACK_LIB = -llapack -lcblaswr -lcblas \
-- -lf77blas -lI77 -lF77 -latlas
-+LAPACK_LIB = %%LAPACK%% %%BLAS%% %%GCCLIBDIR%% %%FORTRANLIBS%%
-
- # if you use BLAS in clapack.tgz, use next line
- # and set NON_ATLAS_SDPA in rsdpa_include.h to 1.
-@@ -36,10 +35,12 @@
- #RSDPA_LIB_NAME = rsdpa
- RSDPA_LIB = -l$(RSDPA_LIB_NAME)
-
--MPIBIN=
--CC = $(MPIBIN)mpicxx
-+MPIBIN= %%LOCALBASE%%/mpich2/bin/
-+CC = $(MPIBIN)mpicxx
- F77 = $(MPIBIN)mpif77
- OPTION = -O3 #-g
-+FFLAGS = %%FFLAGS%%
-+CXXFLAGS = %%CXXFLAGS%% -DMPICH_IGNORE_CXX_SEEK
-
- TARGET_EXE = $(RSDPA_LIB_NAME)
- #TARGET_EXE = rsdpa_main.exe
-@@ -60,9 +61,9 @@
- -L$(LAPACK)/lib $(SCALAPACK_LIB) $(LAPACK_LIB)
-
- .cpp.o:
-- $(CC) $(OPTION) -c -I$(RSDPA) -I$(LAPACK)/include $<
-+ $(CC) $(CXXFLAGS) -c -I$(RSDPA) -I$(LAPACK)/include $<
- .f.o:
-- $(F77) $(OPTION) -c $<
-+ $(F77) $(FFLAGS) -c $<
-
- force: clean now
- forceall: clean all
+ # F77_FUNC
+ DEF_F77_FUNC = -DF77_FUNC\(name,NAME\)=name\ \#\#\ _
diff --git a/math/sdpara/files/patch-extraqualification b/math/sdpara/files/patch-extraqualification
deleted file mode 100644
index 2d440337376c..000000000000
--- a/math/sdpara/files/patch-extraqualification
+++ /dev/null
@@ -1,13 +0,0 @@
---- rsdpa_cg.h~ Thu Sep 2 13:32:37 2004
-+++ rsdpa_cg.h Thu Jan 11 17:09:35 2007
-@@ -40,8 +40,8 @@
- int descr[DLEN1_];
-
-
-- rCg::rCg();
-- rCg::~rCg();
-+ rCg();
-+ ~rCg();
- int initialize(int m, double* A, int* descA,
- double* x, int* descx);
-
diff --git a/math/sdpara/files/patch-mumps+Makefile b/math/sdpara/files/patch-mumps+Makefile
new file mode 100644
index 000000000000..bb428bc0715b
--- /dev/null
+++ b/math/sdpara/files/patch-mumps+Makefile
@@ -0,0 +1,21 @@
+--- mumps/Makefile~ 2009-02-17 14:12:26.000000000 +0900
++++ mumps/Makefile 2009-02-17 14:12:54.000000000 +0900
+@@ -6,12 +6,12 @@
+ # The following variables are set from SDPA_MAKEFILE
+ ###################################################################
+
+-CC = ${shell grep "^CC" ${SDPA_MAKEFILE} | cut -f2- -d=}
+-CFLAGS = ${shell grep "^CFLAGS" ${SDPA_MAKEFILE} | cut -f2- -d=}
+-CXX = ${shell grep "^CXX" ${SDPA_MAKEFILE} | cut -f2- -d=}
+-CXXFLAGS = ${shell grep "^CXXFLAGS" ${SDPA_MAKEFILE} | cut -f2- -d=}
+-FC = ${shell grep "^FC" ${SDPA_MAKEFILE} | cut -f2- -d=}
+-FFLAGS = ${shell grep "^FFLAGS" ${SDPA_MAKEFILE} | cut -f2- -d=}
++CC = %%MPICC%%
++CFLAGS = %%CFLAGS%%
++CXX = %%MPICXX%%
++CXXFLAGS = %%CXXFLAGS%%
++FC = %%MPIF77%%
++FFLAGS = %%FFLAGS%%
+
+ ###################################################################
+
diff --git a/math/sdpara/files/patch-rsdpa_include.h b/math/sdpara/files/patch-rsdpa_include.h
deleted file mode 100644
index fd8d39bd5a09..000000000000
--- a/math/sdpara/files/patch-rsdpa_include.h
+++ /dev/null
@@ -1,19 +0,0 @@
---- rsdpa_include.h.orig Sat Nov 2 11:10:59 2002
-+++ rsdpa_include.h Sun Aug 3 09:07:52 2003
-@@ -21,13 +21,13 @@
- #include <cstring>
-
- extern "C" {
--#include <f2c.h>
-+#include <g2c.h>
- #if NON_ATLAS_SDPA
- #include <blaswrap.h>
- #endif
--#include <fblaswr.h>
- #include <cblas.h>
--#include <clapack.h>
-+#include <blas.h>
-+#include <lapack.h>
- };
-
- using namespace std;
diff --git a/math/sdpara/pkg-plist b/math/sdpara/pkg-plist
index 3a398cb8ab42..36ac58ddef8e 100644
--- a/math/sdpara/pkg-plist
+++ b/math/sdpara/pkg-plist
@@ -8,5 +8,4 @@ share/examples/sdpara/param.sdpa
share/sdpara/param.sdpa
@dirrm share/sdpara
@dirrm share/examples/sdpara
-%%PORTDOCS%%%%DOCSDIR%%/sdpara.1.0.0.install.txt
-%%PORTDOCS%%@dirrm %%DOCSDIR%%
+