diff options
author | Maho Nakata <maho@FreeBSD.org> | 2004-03-18 12:20:30 +0000 |
---|---|---|
committer | Maho Nakata <maho@FreeBSD.org> | 2004-03-18 12:20:30 +0000 |
commit | 9bda8c30279c22dd287fc185c3ac9d3107730fd3 (patch) | |
tree | caa629db01b458eb934f1f469a1b57fe716a0257 /math | |
parent | Add SIZE into distinfo. (diff) |
The SDPARA (SemiDefinite Programming Algorithm PARAllel version)
is a parallel version of the SDPA (math/sdpa).
solving SDPs in parallel with the help of MPI
(Message Passing Interface) and ScaLAPACK (Scalable LAPACK).
Notes
Notes:
svn path=/head/; revision=104439
Diffstat (limited to 'math')
-rw-r--r-- | math/Makefile | 1 | ||||
-rw-r--r-- | math/sdpara/Makefile | 78 | ||||
-rw-r--r-- | math/sdpara/distinfo | 4 | ||||
-rw-r--r-- | math/sdpara/files/patch-Makefile | 39 | ||||
-rw-r--r-- | math/sdpara/files/patch-rsdpa_include.h | 19 | ||||
-rw-r--r-- | math/sdpara/pkg-descr | 9 | ||||
-rw-r--r-- | math/sdpara/pkg-plist | 12 |
7 files changed, 162 insertions, 0 deletions
diff --git a/math/Makefile b/math/Makefile index f78df834d3e5..4132fe7ccd35 100644 --- a/math/Makefile +++ b/math/Makefile @@ -188,6 +188,7 @@ SUBDIR += scigraphica SUBDIR += scilab SUBDIR += sdpa + SUBDIR += sdpara SUBDIR += slsc SUBDIR += snns SUBDIR += solitaire diff --git a/math/sdpara/Makefile b/math/sdpara/Makefile new file mode 100644 index 000000000000..ecb756f6ad67 --- /dev/null +++ b/math/sdpara/Makefile @@ -0,0 +1,78 @@ +# New ports collection makefile for: sdpara +# Date created: March 17 2003 +# Whom: NAKATA, Maho <maho@FreeBSD.org> +# +# $FreeBSD$ +# + +PORTNAME= sdpara +PORTVERSION= 0.90 +CATEGORIES= math paralell +MASTER_SITES= http://sdpa.is.titech.ac.jp/ +DISTFILES= ${PORTNAME}.${PORTVERSION}.src.tar.gz +.if !defined(NOPORTDOCS) +DISTFILES+= ${PORTNAME}.${PORTVERSION}.install.txt +.endif +DIST_SUBDIR= sdpara +EXTRACT_ONLY= ${PORTNAME}.${PORTVERSION}.src.tar.gz + +MAINTAINER= maho@FreeBSD.org +COMMENT= SDPARA paralell version of SDPA (math/sdpa) + +LIB_DEPENDS= atlas:${PORTSDIR}/math/atlas +BUILD_DEPENDS= ${LOCALBASE}/lib/libscalapack.a:${PORTSDIR}/math/scalapack + +RESTRICTED= "unsure distribution condition" + +USE_REINPLACE= yes +USE_GMAKE= yes +USE_REINPLACE= yes +WRKSRC= ${WRKDIR}/${PORTNAME} +LAPACK= -lalapack +CBLAS= -lcblas -lf77blas -latlas -lg2c + +.if defined(WITH_OPTIMIZED_FLAGS) +FFLAGS+= -O3 -ffast-math -finline-functions -fomit-frame-pointer -funroll-loops -fexpensive-optimizations -malign-double +CXXFLAGS+= -O3 -ffast-math -finline-functions -fomit-frame-pointer -funroll-loops -fexpensive-optimizations -malign-double -Wno-multichar +.if (${MACHINE_ARCH} == "i386") +FFLAGS+= -mfancy-math-387 -mpreferred-stack-boundary=3 +CXXFLAGS+= -mfancy-math-387 -mpreferred-stack-boundary=3 +.endif # i386 +.endif + +pre-build: + ${CP} ${FILESDIR}/Makefile ${WRKDIR} + @${REINPLACE_CMD} -e 's|%%PREFIX%%|${PREFIX}|g ; \ + s|%%LAPACK%%|${LAPACK}|g ; \ + s|%%LOCALBASE%%|${LOCALBASE}|g ; \ + s|%%CBLAS%%|${CBLAS}|g' ${WRKDIR}/Makefile + @${REINPLACE_CMD} -e 's|%%PREFIX%%|${PREFIX}|g ; \ + s|%%LOCALBASE%%|${LOCALBASE}|g ; \ + s|%%CXXFLAGS%%|${CXXFLAGS}|g ; \ + s|%%FFLAGS%%|${FFLAGS}|g ; \ + s|%%LAPACK%%|${LAPACK}|g ; \ + s|%%CBLAS%%|${CBLAS}|g' ${WRKSRC}/Makefile +.if !defined(WITH_OPTIMIZED_FLAGS) + @${ECHO} "You can optimize by setting WITH_OPTIMIZED_FLAGS=yes." +.endif + +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.0.90.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}/param.sdpa ${EXAMPLESDIR} + +.endif + +.include <bsd.port.mk> diff --git a/math/sdpara/distinfo b/math/sdpara/distinfo new file mode 100644 index 000000000000..623ceddd20f7 --- /dev/null +++ b/math/sdpara/distinfo @@ -0,0 +1,4 @@ +MD5 (sdpara/sdpara.0.90.src.tar.gz) = cdcdf52e2226dd5e477141da10272461 +SIZE (sdpara/sdpara.0.90.src.tar.gz) = 71394 +MD5 (sdpara/sdpara.0.90.install.txt) = cdafeaeb3c897c8a52a5ee9959f2a0d8 +SIZE (sdpara/sdpara.0.90.install.txt) = 3794 diff --git a/math/sdpara/files/patch-Makefile b/math/sdpara/files/patch-Makefile new file mode 100644 index 000000000000..feee9d9f0d3b --- /dev/null +++ b/math/sdpara/files/patch-Makefile @@ -0,0 +1,39 @@ +--- Makefile.orig Fri Jun 6 17:43:02 2003 ++++ Makefile Thu Mar 18 20:25:55 2004 +@@ -1,8 +1,7 @@ +-LAPACK = $(HOME)/lib/b/lapack ++LAPACK = %%LOCALBASE%% + RSDPA = . + +-LAPACK_LIB = -llapack -lcblaswr -lcblas \ +- -lf77blas -lI77 -lF77 -latlas ++LAPACK_LIB = -lalapack -lcblas -lf77blas -latlas -lg2c + + # if you use BLAS in clapack.tgz, use next line + # and set NON_ATLAS_SDPA in rsdpa_include.h to 1. +@@ -17,10 +16,11 @@ + RSDPA_LIB = -l$(RSDPA_LIB_NAME) + + # CC = /home/yamashi9/lib/b/mpich/bin/mpiCC +-MPIBIN= ++MPIBIN= %%LOCALBASE%%/mpich/bin/ + CC = $(MPIBIN)mpiCC + F77 = $(MPIBIN)mpif77 +-OPTION = -O3 #-Wall # -g ++FFLAGS = %%FFLAGS%% ++CXXFLAGS = %%CXXFLAGS%% + + TARGET_EXE = $(RSDPA_LIB_NAME) + #TARGET_EXE = rsdpa_main.exe +@@ -41,9 +41,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 diff --git a/math/sdpara/files/patch-rsdpa_include.h b/math/sdpara/files/patch-rsdpa_include.h new file mode 100644 index 000000000000..fd8d39bd5a09 --- /dev/null +++ b/math/sdpara/files/patch-rsdpa_include.h @@ -0,0 +1,19 @@ +--- 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-descr b/math/sdpara/pkg-descr new file mode 100644 index 000000000000..e03e775a304a --- /dev/null +++ b/math/sdpara/pkg-descr @@ -0,0 +1,9 @@ +The SDPARA (SemiDefinite Programming Algorithm PARAllel version) is a parallel +version of the SDPA. C++ source codes of the SDPARA are available in +this homepage. They form a stand-alone software package for solving SDPs in +parallel with the help of MPI (Message Passing Interface) and ScaLAPACK +(Scalable LAPACK). However callable libraries of the SDPARA, which could be +used combinedly with other C++ programs, are not available. +We assume that you know how to use the latest version of the SDPA and MPICH. + +WWW: http://sdpa.is.titech.ac.jp/sdpara.index.html. diff --git a/math/sdpara/pkg-plist b/math/sdpara/pkg-plist new file mode 100644 index 000000000000..fd330f91115f --- /dev/null +++ b/math/sdpara/pkg-plist @@ -0,0 +1,12 @@ +bin/sdpara +share/examples/sdpara/example1.dat +share/examples/sdpara/example1.dat-s +share/examples/sdpara/example1.ini +share/examples/sdpara/example1.ini-s +share/examples/sdpara/example2.dat +share/examples/sdpara/param.sdpa +share/sdpara/param.sdpa +@dirrm share/sdpara +@dirrm share/examples/sdpara +%%PORTDOCS%%%%DOCSDIR%%/sdpara.0.90.install.txt +%%PORTDOCS%%@dirrm %%DOCSDIR%% |