ports/80310: New port: net/ruby-mpi MPI binding for Ruby

Michael Neumann mneumann at ntecs.de
Sun Apr 24 21:50:10 UTC 2005


>Number:         80310
>Category:       ports
>Synopsis:       New port: net/ruby-mpi MPI binding for Ruby
>Confidential:   no
>Severity:       non-critical
>Priority:       low
>Responsible:    freebsd-ports-bugs
>State:          open
>Quarter:        
>Keywords:       
>Date-Required:
>Class:          change-request
>Submitter-Id:   current-users
>Arrival-Date:   Sun Apr 24 21:50:09 GMT 2005
>Closed-Date:
>Last-Modified:
>Originator:     Michael Neumann
>Release:        FreeBSD 5.4-RC2 i386
>Organization:
>Environment:
FreeBSD miya.intranet.ntecs.de 5.4-RC2 FreeBSD 5.4-RC2 #0: Sun Apr 17 14:57:33 CEST 2005     mneumann at miya.intranet.ntecs.de:/usr/src/sys/i386/compile/LAPTOP_MIYA  i386
>Description:

>How-To-Repeat:

>Fix:
# This is a shell archive.  Save it in a file, remove anything before
# this line, and then unpack it by entering "sh file".  Note, it may
# create directories; files and directories will be owned by you and
# have default permissions.
#
# This archive contains:
#
#	net/ruby-mpi
#	net/ruby-mpi/files
#	net/ruby-mpi/files/patch-aa
#	net/ruby-mpi/Makefile
#	net/ruby-mpi/pkg-descr
#	net/ruby-mpi/distinfo
#	net/ruby-mpi/pkg-plist
#
echo c - net/ruby-mpi
mkdir -p net/ruby-mpi > /dev/null 2>&1
echo c - net/ruby-mpi/files
mkdir -p net/ruby-mpi/files > /dev/null 2>&1
echo x - net/ruby-mpi/files/patch-aa
sed 's/^X//' >net/ruby-mpi/files/patch-aa << 'END-of-net/ruby-mpi/files/patch-aa'
X--- configure-orig	Sun Apr 24 22:32:31 2005
X+++ configure	Sun Apr 24 22:32:47 2005
X@@ -2778,7 +2778,7 @@
X 	{ echo "$as_me:$LINENO: WARNING: Could not find Config Ruby module.  Assuming CFLAGS and LIBS for Ruby are in standard path..." >&5
X echo "$as_me: WARNING: Could not find Config Ruby module.  Assuming CFLAGS and LIBS for Ruby are in standard path..." >&2;}
X 	RUBY_CFLAGS=""
X-	RUBY_LIBS="-lruby"
X+	RUBY_LIBS="-lruby18"
X else
X 	echo "$as_me:$LINENO: result: yes" >&5
X echo "${ECHO_T}yes" >&6
X@@ -2792,7 +2792,7 @@
X 	echo "$as_me:$LINENO: checking ruby LIBS" >&5
X echo $ECHO_N "checking ruby LIBS... $ECHO_C" >&6
X 	RB_LIB_DIR=`$RUBY -e 'require "rbconfig"; puts Config::CONFIG["libdir"]'`
X-	RUBY_LIBS="-lruby -L$RB_LIB_DIR"
X+	RUBY_LIBS="-lruby18 -L$RB_LIB_DIR"
X 	echo "$as_me:$LINENO: result: $RUBY_LIBS" >&5
X echo "${ECHO_T}$RUBY_LIBS" >&6
X fi
END-of-net/ruby-mpi/files/patch-aa
echo x - net/ruby-mpi/Makefile
sed 's/^X//' >net/ruby-mpi/Makefile << 'END-of-net/ruby-mpi/Makefile'
X# New ports collection makefile for:	ruby-mpi
X# Date created:		2005 Apr 24
X# Whom:			mneumann at ntecs.de
X#
X# $FreeBSD:$
X#
X
XPORTNAME=	mpi
XPORTVERSION=	0.4
XCATEGORIES=	net ruby
XMASTER_SITES=	${MASTER_SITE_SOURCEFORGE}
XMASTER_SITE_SUBDIR=${PORTNAME}ruby
XPKGNAMEPREFIX=	${RUBY_PKGNAMEPREFIX}
XDISTNAME=	${PORTNAME}_ruby-${PORTVERSION}
XDIST_SUBDIR=	ruby
X
XMAINTAINER=	mneumann at ntecs.de
XCOMMENT=	Ruby binding of MPI (Message Passing Interface)
X
XBUILD_DEPENDS=	${LOCALBASE}/mpich/lib/libmpich.a:${PORTSDIR}/net/mpich
X
XUSE_BZIP2=	yes
XUSE_RUBY=	yes
XHAS_CONFIGURE=	yes
XCONFIGURE_ARGS+= --with-mpi-path=${LOCALBASE}/mpich
X
XMAN1=mpi_ruby.1
XMAN3=MPI_Comm.3 MPI_Exception.3 MPI_Group.3 MPI_Keyval.3 MPI_Op.3 MPI_Request.3 \
X	MPI_Ruby.3 MPI_Status.3
X
Xdo-install:
X	${INSTALL_PROGRAM} ${WRKSRC}/src/mpi_ruby ${PREFIX}/bin
X	${INSTALL_MAN} ${WRKSRC}/docs/man/man1/*.1 ${PREFIX}/man/man1
X	${INSTALL_MAN} ${WRKSRC}/docs/man/man3/*.3 ${PREFIX}/man/man3
X.if !defined(NOPORTDOCS)
X	${MKDIR} ${RUBY_MODEXAMPLESDIR}
X	${MKDIR} ${RUBY_MODDOCDIR}
X	${MKDIR} ${RUBY_MODDOCDIR}/html
X	${MKDIR} ${RUBY_MODDOCDIR}/rd
X
X	${CP} ${WRKSRC}/examples/*.rb ${RUBY_MODEXAMPLESDIR}/
X	${INSTALL_DATA} ${WRKSRC}/ChangeLog ${WRKSRC}/README ${WRKSRC}/docs/MPI \
X		${RUBY_MODDOCDIR}/
X	${INSTALL_DATA} ${WRKSRC}/docs/html/*.html ${RUBY_MODDOCDIR}/html/
X	${INSTALL_DATA} ${WRKSRC}/docs/rd/*.rd ${RUBY_MODDOCDIR}/rd/
X.endif
X
X.include <bsd.port.mk>
END-of-net/ruby-mpi/Makefile
echo x - net/ruby-mpi/pkg-descr
sed 's/^X//' >net/ruby-mpi/pkg-descr << 'END-of-net/ruby-mpi/pkg-descr'
XMPI Ruby is a Ruby binding of MPI. The primary goal in making this binding was
Xto make the power of MPI available to Ruby users in a way that fits into the
Xlanguage's object oriented model.  In order to do this, the buffer and datatype
Xmanagement necessary in the C, C++, and Fortran bindings have been removed.
XWhat this means is that MPI Ruby allows you to treat objects as messages. 
X
XMPI Ruby also aims to be a complete binding to MPI in that it offers access to
Xnearly all functionality of MPI. While there is not a one-to-one correspondence
Xto functions and constants in the Ruby and C/C++/Fortran bindings, all of the
Xcommunication and topology features are available. There are fewer methods in
Xthe Ruby binding than there are functions in the C/C++/Fortran bindings, but
Xthis is mainly due to the fact that the programmer no longer needs to deal with
Xbuffers and datatypes.
X
XAuthor: Emil Ong
XWWW:    http://www-unix.mcs.anl.gov/mpi/mpi_ruby/	
END-of-net/ruby-mpi/pkg-descr
echo x - net/ruby-mpi/distinfo
sed 's/^X//' >net/ruby-mpi/distinfo << 'END-of-net/ruby-mpi/distinfo'
XMD5 (ruby/mpi_ruby-0.4.tar.bz2) = b8d3b5e0cf7544903fdaf54a72e44b33
XSIZE (ruby/mpi_ruby-0.4.tar.bz2) = 102687
END-of-net/ruby-mpi/distinfo
echo x - net/ruby-mpi/pkg-plist
sed 's/^X//' >net/ruby-mpi/pkg-plist << 'END-of-net/ruby-mpi/pkg-plist'
Xbin/mpi_ruby
X%%PORTDOCS%%%%RUBY_MODEXAMPLESDIR%%/allgather.rb
X%%PORTDOCS%%%%RUBY_MODEXAMPLESDIR%%/allreduce.rb
X%%PORTDOCS%%%%RUBY_MODEXAMPLESDIR%%/basic.rb
X%%PORTDOCS%%%%RUBY_MODEXAMPLESDIR%%/bcast.rb
X%%PORTDOCS%%%%RUBY_MODEXAMPLESDIR%%/gather.rb
X%%PORTDOCS%%%%RUBY_MODEXAMPLESDIR%%/hello.rb
X%%PORTDOCS%%%%RUBY_MODEXAMPLESDIR%%/irecv.rb
X%%PORTDOCS%%%%RUBY_MODEXAMPLESDIR%%/op.rb
X%%PORTDOCS%%%%RUBY_MODEXAMPLESDIR%%/red.rb
X%%PORTDOCS%%%%RUBY_MODEXAMPLESDIR%%/redhalt.rb
X%%PORTDOCS%%%%RUBY_MODEXAMPLESDIR%%/redsubmit.rb
X%%PORTDOCS%%%%RUBY_MODEXAMPLESDIR%%/reduce.rb
X%%PORTDOCS%%%%RUBY_MODEXAMPLESDIR%%/rpi.rb
X%%PORTDOCS%%%%RUBY_MODDOCDIR%%/ChangeLog
X%%PORTDOCS%%%%RUBY_MODDOCDIR%%/README
X%%PORTDOCS%%%%RUBY_MODDOCDIR%%/MPI
X%%PORTDOCS%%%%RUBY_MODDOCDIR%%/html/index.html
X%%PORTDOCS%%%%RUBY_MODDOCDIR%%/html/mpi.html
X%%PORTDOCS%%%%RUBY_MODDOCDIR%%/html/mpi_comm.html
X%%PORTDOCS%%%%RUBY_MODDOCDIR%%/html/mpi_exception.html
X%%PORTDOCS%%%%RUBY_MODDOCDIR%%/html/mpi_group.html
X%%PORTDOCS%%%%RUBY_MODDOCDIR%%/html/mpi_keyval.html
X%%PORTDOCS%%%%RUBY_MODDOCDIR%%/html/mpi_op.html
X%%PORTDOCS%%%%RUBY_MODDOCDIR%%/html/mpi_request.html
X%%PORTDOCS%%%%RUBY_MODDOCDIR%%/html/mpi_status.html
X%%PORTDOCS%%%%RUBY_MODDOCDIR%%/rd/mpi.rd
X%%PORTDOCS%%%%RUBY_MODDOCDIR%%/rd/mpi_comm.rd
X%%PORTDOCS%%%%RUBY_MODDOCDIR%%/rd/mpi_exception.rd
X%%PORTDOCS%%%%RUBY_MODDOCDIR%%/rd/mpi_group.rd
X%%PORTDOCS%%%%RUBY_MODDOCDIR%%/rd/mpi_keyval.rd
X%%PORTDOCS%%%%RUBY_MODDOCDIR%%/rd/mpi_op.rd
X%%PORTDOCS%%%%RUBY_MODDOCDIR%%/rd/mpi_request.rd
X%%PORTDOCS%%%%RUBY_MODDOCDIR%%/rd/mpi_status.rd
X%%PORTDOCS%%@dirrm %%RUBY_MODEXAMPLESDIR%%
X%%PORTDOCS%%@dirrm %%RUBY_MODDOCDIR%%/html
X%%PORTDOCS%%@dirrm %%RUBY_MODDOCDIR%%/rd
X%%PORTDOCS%%@dirrm %%RUBY_MODDOCDIR%%
END-of-net/ruby-mpi/pkg-plist
exit


>Release-Note:
>Audit-Trail:
>Unformatted:



More information about the freebsd-ports-bugs mailing list