Skip site navigation (1)Skip section navigation (2)
Date:      Mon, 11 Jun 2001 04:16:29 +0200 (CEST)
From:      Anders Nordby <anders@fix.no>
To:        FreeBSD-gnats-submit@freebsd.org
Subject:   ports/28025: New port: net/spread
Message-ID:  <20010611021629.3CB2E3C8E@totem.fix.no>

next in thread | raw e-mail | index | archive | help

>Number:         28025
>Category:       ports
>Synopsis:       New port: net/spread
>Confidential:   no
>Severity:       non-critical
>Priority:       low
>Responsible:    freebsd-ports
>State:          open
>Quarter:        
>Keywords:       
>Date-Required:
>Class:          change-request
>Submitter-Id:   current-users
>Arrival-Date:   Sun Jun 10 19:20:01 PDT 2001
>Closed-Date:
>Last-Modified:
>Originator:     Anders Nordby
>Release:        FreeBSD 4.3-STABLE i386
>Organization:
Fluxpod Information eXchange
>Environment:

kern.osreldate: 430000 (4.3-STABLE)
kern.osreldate: 500018 (5.0-20010420-CURRENT)

>Description:

New port of spread, aka The Spread Wide Area Group Communication System, a
network toolkit.

>How-To-Repeat:

	<Code/input/activities to reproduce the problem (multiple lines)>

>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:
#
#	spread
#	spread/files
#	spread/files/patch-FreeBSD_makefile
#	spread/Makefile
#	spread/distinfo
#	spread/pkg-comment
#	spread/pkg-descr
#	spread/pkg-plist
#	spread/scripts
#	spread/scripts/createusergroup
#
echo c - spread
mkdir -p spread > /dev/null 2>&1
echo c - spread/files
mkdir -p spread/files > /dev/null 2>&1
echo x - spread/files/patch-FreeBSD_makefile
sed 's/^X//' >spread/files/patch-FreeBSD_makefile << 'END-of-spread/files/patch-FreeBSD_makefile'
X--- FreeBSD_makefile.orig	Mon Oct  2 16:09:34 2000
X+++ FreeBSD_makefile	Mon Jun 11 02:10:13 2001
X@@ -1,4 +1,3 @@
X-CC=gcc
X MAKEFILE=FreeBSD_makefile
X YACC = bison -y
X LEX = flex
X@@ -8,8 +7,8 @@
X #SRCDIRS= dir1 dir2
X #INCL=$(SRCDIRS:%=-I%)
X #CFLAGS =  -O does not always work on BSDI pc
X-CFLAGS = -ansi -c -Wall -O3
X-TCFLAGS = $(CFLAGS) -pthread
X+CFLAGS+= -ansi -c
X+TCFLAGS = $(CFLAGS) $(PTHREAD_LIBS)
X 
X COBJS = lex.yy.o y.tab.o configuration.o skiplist.o
X OBJS =  alarm.o events.o memory.o membership.o data_link.o network.o status.o log.o flow_control.o message.o
X@@ -28,7 +27,7 @@
X 	$(CC) -o user user.o libsp.a
X 
X tuser : user.to libtsp.a 
X-	$(CC) -pthread -o tuser user.to libtsp.a
X+	$(CC) $(PTHREAD_LIBS) -o tuser user.to libtsp.a
X 
X simple_user : simple_user.o libsp.a
X 	$(CC) -o simple_user simple_user.o libsp.a 
X@@ -64,7 +63,7 @@
X 	$(CC) $(CFLAGS) $*.c
X 
X .c.to:	
X-	$(CC) $(TCFLAGS) -D_THREAD_SAFE -D_REENTRANT $*.c -o $*.to
X+	$(CC) $(TCFLAGS) $(PTHREAD_CFLAGS) -D_REENTRANT $*.c -o $*.to
X 
X depend:
X 	cp $(MAKEFILE) $(MAKEFILE).bak \
END-of-spread/files/patch-FreeBSD_makefile
echo x - spread/Makefile
sed 's/^X//' >spread/Makefile << 'END-of-spread/Makefile'
X# New ports collection makefile for:    spread
X# Date created:		11 June 2001
X# Whom:			Anders Nordby <anders@fix.no>
X#
X# $FreeBSD$
X#
X
XPORTNAME=	spread
XPORTVERSION=	3.15.2
XCATEGORIES=	net perl5 java
XMASTER_SITES=
XDISTNAME=	${PORTNAME}-src-${PORTVERSION}
X
XMAINTAINER=	anders@fix.no
X
X.if defined(WITH_JAVA_LIB)
XBUILD_DEPENDS=	${LOCALBASE}/jdk1.1.8/bin/javac:${PORTSDIR}/java/jdk
X.endif
X
XMAKEFILE=	FreeBSD_makefile
X
XMAN1=	spread.1
XMAN3=	SP_connect.3 SP_disconnect.3 SP_equal_group_ids.3 SP_error.3 \
X	SP_join.3 SP_leave.3 SP_multicast.3 SP_multigroup_multicast.3 \
X	SP_multigroup_scat_multicast.3 SP_poll.3 SP_receive.3 \
X	SP_scat_multicast.3 SP_scat_receive.3
X
XUSE_PERL5=	yes
XNO_CDROM=	"See the license: http://www.spread.org/license/"
XNO_PACKAGE=	"User and group needs to be created"
XRESTRICTED=	"See the license: http://www.spread.org/license/"
X
XJAVASUBDIR=	jdk1.1.8
XJAVADIR=	${PREFIX}/${JAVASUBDIR}
XJAVALIBDIR=	${JAVADIR}/lib
XDOCDIR=		${PREFIX}/share/doc/${PORTNAME}
X
X.if defined(WITH_JAVA_LIB)
XPLIST_SUB+=	JAVALIB='' JAVALIBDIR=${JAVASUBDIR}/lib
X.if defined(NOPORTDOCS)
XPLIST_SUB+=	JAVALIB_DOCS='@comment '
X.else
XPLIST_SUB+=	JAVALIB_DOCS=''
X.endif
X.else
XPLIST_SUB+=	JAVALIB='@comment ' JAVALIB_DOCS='@comment ' JAVALIBDIR=''
X.endif
X
XMAKE_ARGS+=	PTHREAD_CFLAGS=${PTHREAD_CFLAGS} PTHREAD_LIBS=${PTHREAD_LIBS}
X
X.include <bsd.port.pre.mk>
X
X.if !exists(${DISTDIR}/${DISTNAME}${EXTRACT_SUFX})
XIGNORE='You must fetch the source manually from http://www.cnds.jhu.edu/download/download_spread.cgi and copy the file to ${DISTDIR}. Then run make again.'
X.endif
X
Xpost-build:
X	(cd ${WRKSRC}/perl/Spread-3.15.2-1.03; ${PERL} Makefile.PL; ${MAKE})
X.if defined(WITH_JAVA_LIB)
X	(cd ${WRKSRC}/java; ${JAVADIR}/bin/javac \
X	splib_src/*.java -d ./)
X.endif
X
Xdo-install:
X	@${SH} ${SCRIPTDIR}/createusergroup
X	${INSTALL_PROGRAM} ${WRKSRC}/spread ${PREFIX}/sbin
X	${INSTALL_PROGRAM} ${WRKSRC}/flooder ${PREFIX}/bin
X	${INSTALL_PROGRAM} ${WRKSRC}/monitor ${PREFIX}/bin
X	${INSTALL_PROGRAM} ${WRKSRC}/user ${PREFIX}/bin
X	${INSTALL_PROGRAM} ${WRKSRC}/tuser ${PREFIX}/bin
X	${INSTALL_DATA} ${WRKSRC}/libsp.a ${PREFIX}/lib
X	${INSTALL_DATA} ${WRKSRC}/libtsp.a ${PREFIX}/lib
X	${INSTALL_DATA} ${WRKSRC}/sp.h ${PREFIX}/include
X	${INSTALL_DATA} ${WRKSRC}/sample.spread.conf ${PREFIX}/etc/spread.conf.example
X	${INSTALL_MAN} ${WRKSRC}/docs/spread.1 ${PREFIX}/man/man1
X	(cd ${WRKSRC}/perl/Spread-3.15.2-1.03 && ${MAKE} install)
X	${GZIP_CMD} ${GZIP} ${LOCALBASE}/lib/perl5/${PERL_VERSION}/man/man3/Spread.3
X.if defined(WITH_JAVA_LIB)
X	${INSTALL} -d -o root -g wheel -m 0755 ${JAVALIBDIR}/${PORTNAME}
X	${INSTALL_DATA} ${WRKSRC}/java/spread/*.class ${JAVALIBDIR}/${PORTNAME}
X.endif
X.for f in ${MAN3}
X	${INSTALL_MAN} ${WRKSRC}/docs/${f} ${PREFIX}/man/man3
X.endfor
X.if !defined(NOPORTDOCS)
X	${INSTALL} -d -o root -g wheel -m 0755 ${DOCDIR}
X	${INSTALL_DATA} ${WRKSRC}/Readme.txt ${DOCDIR}
X	${INSTALL} -d -o root -g wheel -m 0755 ${DOCDIR}/perl
X	${INSTALL_DATA} ${WRKSRC}/perl/Spread-3.15.2-1.03/README ${DOCDIR}/perl
X	${INSTALL_DATA} ${WRKSRC}/perl/Spread-3.15.2-1.03/test.pl ${DOCDIR}/perl
X.if defined(WITH_JAVA_LIB)
X	${INSTALL} -d -o root -g wheel -m 0755 ${DOCDIR}/java
X	${INSTALL_DATA} ${WRKSRC}/java/readme.txt ${DOCDIR}/java
X	${INSTALL_DATA} ${WRKSRC}/java/Flooder.java ${DOCDIR}/java
X	${INSTALL_DATA} ${WRKSRC}/java/User.java ${DOCDIR}/java
X	${INSTALL} -d -o root -g wheel -m 0755 ${DOCDIR}/java/html
X	${INSTALL} -d -o root -g wheel -m 0755 ${DOCDIR}/java/html/spread
X	${INSTALL_DATA} ${WRKSRC}/java/docs/*.html ${DOCDIR}/java/html
X	${INSTALL_DATA} ${WRKSRC}/java/docs/stylesheet.css ${DOCDIR}/java/html
X	${INSTALL_DATA} ${WRKSRC}/java/docs/spread/*.html ${DOCDIR}/java/html/spread
X.endif
X.endif
X	@${ECHO} "================================================================================"
X	@${ECHO} "NB: Create the directory /var/run/spread, with write permissions for the spread"
X	@${ECHO} "user/group. The spread daemon will chroot there, and fail if it can't."
X	@${ECHO} "================================================================================"
X
X.include <bsd.port.post.mk>
END-of-spread/Makefile
echo x - spread/distinfo
sed 's/^X//' >spread/distinfo << 'END-of-spread/distinfo'
XMD5 (spread-src-3.15.2.tar.gz) = 41a974ba00496362ce3bc733af41dc46
END-of-spread/distinfo
echo x - spread/pkg-comment
sed 's/^X//' >spread/pkg-comment << 'END-of-spread/pkg-comment'
XThe Spread Wide Area Group Communication System, a network toolkit
END-of-spread/pkg-comment
echo x - spread/pkg-descr
sed 's/^X//' >spread/pkg-descr << 'END-of-spread/pkg-descr'
XSpread is a toolkit and daemon that provide multicast and group communications
Xsupport to applications across local and wide area networks. Spread is designed
Xto make it easy to write groupware, networked multimedia, reliable server, and
Xcollaborative work applications.
X
XSpread consists of a library that user applications are linked with, a binary
Xdaemon which runs on each computer that is part of the processor group, and
Xvarious utility and demonstration programs.
X
XWWW: http://www.spread.org/
X
X- Anders Nordby <anders@fix.no>
END-of-spread/pkg-descr
echo x - spread/pkg-plist
sed 's/^X//' >spread/pkg-plist << 'END-of-spread/pkg-plist'
Xsbin/spread
Xbin/flooder
Xbin/monitor
Xbin/user
Xbin/tuser
Xinclude/sp.h
Xetc/spread.conf.example
Xlib/libsp.a
Xlib/libtsp.a
Xlib/perl5/site_perl/%%PERL_VER%%/%%PERL_ARCH%%/auto/Spread/Spread.so
Xlib/perl5/site_perl/%%PERL_VER%%/%%PERL_ARCH%%/auto/Spread/Spread.bs
Xlib/perl5/site_perl/%%PERL_VER%%/%%PERL_ARCH%%/auto/Spread/autosplit.ix       
Xlib/perl5/site_perl/%%PERL_VER%%/%%PERL_ARCH%%/auto/Spread/.packlist
Xlib/perl5/site_perl/%%PERL_VER%%/%%PERL_ARCH%%/Spread.pm
X@unexec rmdir %D/lib/perl5/site_perl/%%PERL_VER%%/%%PERL_ARCH%%/auto/Spread 2>/dev/null || true
Xlib/perl5/%%PERL_VERSION%%/man/man3/Spread.3.gz
X%%JAVALIB%%%%JAVALIBDIR%%/spread/AdvancedMessageListener.class
X%%JAVALIB%%%%JAVALIBDIR%%/spread/BasicMessageListener.class
X%%JAVALIB%%%%JAVALIBDIR%%/spread/GroupID.class
X%%JAVALIB%%%%JAVALIBDIR%%/spread/MembershipInfo.class
X%%JAVALIB%%%%JAVALIBDIR%%/spread/MessageFactory.class
X%%JAVALIB%%%%JAVALIBDIR%%/spread/SpreadConnection$Listener.class
X%%JAVALIB%%%%JAVALIBDIR%%/spread/SpreadConnection.class
X%%JAVALIB%%%%JAVALIBDIR%%/spread/SpreadException.class
X%%JAVALIB%%%%JAVALIBDIR%%/spread/SpreadGroup.class
X%%JAVALIB%%%%JAVALIBDIR%%/spread/SpreadMessage.class
X%%JAVALIB%%%%JAVALIBDIR%%/spread/SpreadVersion.class
X%%JAVALIB%%@dirrm %%JAVALIBDIR%%/spread
X%%JAVALIB_DOCS%%share/doc/spread/java/readme.txt
X%%JAVALIB_DOCS%%share/doc/spread/java/Flooder.java
X%%JAVALIB_DOCS%%share/doc/spread/java/User.java
X%%JAVALIB_DOCS%%share/doc/spread/java/html/allclasses-frame.html
X%%JAVALIB_DOCS%%share/doc/spread/java/html/deprecated-list.html
X%%JAVALIB_DOCS%%share/doc/spread/java/html/help-doc.html
X%%JAVALIB_DOCS%%share/doc/spread/java/html/index-all.html
X%%JAVALIB_DOCS%%share/doc/spread/java/html/index.html
X%%JAVALIB_DOCS%%share/doc/spread/java/html/java.html
X%%JAVALIB_DOCS%%share/doc/spread/java/html/overview-tree.html
X%%JAVALIB_DOCS%%share/doc/spread/java/html/packages.html
X%%JAVALIB_DOCS%%share/doc/spread/java/html/serialized-form.html
X%%JAVALIB_DOCS%%share/doc/spread/java/html/stylesheet.css
X%%JAVALIB_DOCS%%share/doc/spread/java/html/spread/AdvancedMessageListener.html
X%%JAVALIB_DOCS%%share/doc/spread/java/html/spread/BasicMessageListener.html
X%%JAVALIB_DOCS%%share/doc/spread/java/html/spread/GroupID.html
X%%JAVALIB_DOCS%%share/doc/spread/java/html/spread/MembershipInfo.html
X%%JAVALIB_DOCS%%share/doc/spread/java/html/spread/MessageFactory.html
X%%JAVALIB_DOCS%%share/doc/spread/java/html/spread/SpreadConnection.html
X%%JAVALIB_DOCS%%share/doc/spread/java/html/spread/SpreadException.html
X%%JAVALIB_DOCS%%share/doc/spread/java/html/spread/SpreadGroup.html
X%%JAVALIB_DOCS%%share/doc/spread/java/html/spread/SpreadMessage.html
X%%JAVALIB_DOCS%%share/doc/spread/java/html/spread/SpreadVersion.html
X%%JAVALIB_DOCS%%@dirrm share/doc/spread/java/html/spread
X%%JAVALIB_DOCS%%@dirrm share/doc/spread/java/html
X%%JAVALIB_DOCS%%@dirrm share/doc/spread/java
X%%PORTDOCS%%share/doc/spread/perl/README
X%%PORTDOCS%%share/doc/spread/perl/test.pl
X%%PORTDOCS%%share/doc/spread/Readme.txt
X%%PORTDOCS%%@dirrm share/doc/spread/perl
X%%PORTDOCS%%@dirrm share/doc/spread
END-of-spread/pkg-plist
echo c - spread/scripts
mkdir -p spread/scripts > /dev/null 2>&1
echo x - spread/scripts/createusergroup
sed 's/^X//' >spread/scripts/createusergroup << 'END-of-spread/scripts/createusergroup'
X#!/bin/sh
X
XPATH=/bin:/usr/sbin
X
XUSER=spread
XUSER_HOMEDIR=/nonexistent
XGROUP=spread
X
Xif pw group show "${GROUP}" 2>/dev/null; then
X	echo "You already have a group \"${GROUP}\", so I will use it."
Xelse
X	if pw groupadd ${GROUP}; then
X		echo "Added group \"${GROUP}\"."
X	else
X		echo "Adding group \"${GROUP}\" failed..."
X		exit 1
X	fi
Xfi
X
Xif pw user show "${USER}" 2>/dev/null; then
X	echo "You already have a user \"${USER}\", so I will use it."
X	if pw usermod ${USER} -d ${USER_HOMEDIR}
X	then
X		echo "Changed home directory of \"${USER}\" to \"${USER_HOMEDIR}\"."
X	else
X		echo "Changing home directory of \"${USER}\" to \"${USER_HOMEDIR}\" failed."
X		exit 1
X	fi
Xelse
X	if pw useradd ${USER} -g ${GROUP} -h - \
X		-d ${USER_HOMEDIR} -s /sbin/nologin -c "Spread User"
X	then
X		echo "Added user \"${USER}\"."
X	else
X		echo "Adding user \"${USER}\" failed..."
X	fi
Xfi
END-of-spread/scripts/createusergroup
exit

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

To Unsubscribe: send mail to majordomo@FreeBSD.org
with "unsubscribe freebsd-ports" in the body of the message




Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20010611021629.3CB2E3C8E>