Date: Sun, 10 Nov 2002 11:36:31 +1100 (EST) From: Joshua Goodall <joshua@roughtrade.net> To: FreeBSD-gnats-submit@FreeBSD.org Subject: ports/45178: Maintainer update: net/spread Message-ID: <20021110003631.145C03F6C@green.shallow.net>
next in thread | raw e-mail | index | archive | help
>Number: 45178 >Category: ports >Synopsis: Maintainer update: net/spread >Confidential: no >Severity: non-critical >Priority: low >Responsible: freebsd-ports >State: open >Quarter: >Keywords: >Date-Required: >Class: maintainer-update >Submitter-Id: current-users >Arrival-Date: Sat Nov 09 16:40:01 PST 2002 >Closed-Date: >Last-Modified: >Originator: Joshua Goodall >Release: FreeBSD 4.7-STABLE i386 >Organization: >Environment: System: FreeBSD green.shallow.net 4.7-STABLE FreeBSD 4.7-STABLE #0: Mon Nov 4 00:26:59 EST 2002 root@green.shallow.net:/usr/obj/usr/src/sys/GREEN i386 >Description: This is the long-awaited maintainer update of the net/spread port. * Following upstream release 3.17.0 (bugfixes and autoconf'd) * Installs a shlib rather than a .a * Tools now dynamically linked * New rc.d script * Java library split out into a new port (to follow shortly) * 3.17.0 library is not backwards compatible with 3.16.2 Structurally a great deal has changed. I'm therefore sending this as a sharball rather than a diff (the diff would be larger and harder to read). Committer please note: the following files are added (A) or removed (R) R files/patch-FreeBSD_makefile R files/patch-arch.h R files/patch-data_link.c R files/patch-session.c A files/patch-Makefile.in A files/patch-auth-ip.c A files/patch-auth-pword.c A files/patch-spread.c A files/spread.sh Please also put the source distribution in a MASTER_SITE_LOCAL subdir and update the Makefile (around XXX) appropriately. The upstream does not prohibit distribution; unfortunately their standard download requires a click-through. Committing this also closes PR ports/44002. TIA Joshua. >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: # # spread # spread/Makefile # spread/distinfo # spread/pkg-descr # spread/pkg-comment # spread/pkg-install # spread/pkg-plist # spread/files # spread/files/patch-auth-ip.c # spread/files/patch-auth-pword.c # spread/files/patch-Makefile.in # spread/files/patch-spread.c # spread/files/spread.sh # echo c - spread mkdir -p spread > /dev/null 2>&1 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.17.0 XPORTREVISION= 1 XCATEGORIES= net perl5 X# XXX XMASTER_SITES= http://www.roughtrade.net/distfiles/ XDISTNAME= ${PORTNAME}-src-${PORTVERSION} X XMAINTAINER= joshua@roughtrade.net X XGNU_CONFIGURE= yes X XMAN1= spflooder.1 spmonitor.1 spread.1 sptuser.1 spuser.1 XMAN3= libsp.3 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 XINSTALLS_SHLIB= yes XPKGMESSAGE= ${WRKSRC}/license.txt X XMAKE_ARGS+= PTHREAD_CFLAGS=${PTHREAD_CFLAGS} PTHREAD_LIBS=${PTHREAD_LIBS} X X.include <bsd.port.pre.mk> X Xpost-build: X (cd ${WRKSRC}/perl/Spread; ${PERL} Makefile.PL; ${MAKE}) X Xpre-install: X ${SH} ${PKGINSTALL} ${PKGNAME} PRE-INSTALL X Xpost-install: X ${INSTALL_SCRIPT} ${FILESDIR}/spread.sh ${PREFIX}/etc/rc.d/spread.sh.sample X ${INSTALL_DATA} ${WRKSRC}/sp.h ${PREFIX}/include X ${INSTALL_DATA} ${WRKSRC}/sp_func.h ${PREFIX}/include X ${INSTALL_DATA} ${WRKSRC}/sp_events.h ${PREFIX}/include X ${INSTALL_DATA} ${WRKSRC}/sample.spread.conf ${PREFIX}/etc/spread.conf.sample X ${INSTALL_DATA} ${WRKSRC}/sample.spread.access_ip ${PREFIX}/etc/spread.access_ip.sample X (cd ${WRKSRC}/perl/Spread && ${MAKE} install) X ${GZIP_CMD} ${GZIP} ${LOCALBASE}/lib/perl5/${PERL_VERSION}/man/man3/Spread.3 X.if !defined(NOPORTDOCS) X ${INSTALL} -d -o root -g wheel -m 0755 ${DOCSDIR} X ${INSTALL_DATA} ${WRKSRC}/Readme.txt ${DOCSDIR} X ${INSTALL_DATA} ${WRKSRC}/license.txt ${DOCSDIR}/LICENSE X ${INSTALL} -d -o root -g wheel -m 0755 ${DOCSDIR}/perl X ${INSTALL_DATA} ${WRKSRC}/perl/Spread/README ${DOCSDIR}/perl X ${INSTALL_DATA} ${WRKSRC}/perl/Spread/test.pl ${DOCSDIR}/perl X.endif X @${CAT} ${PKGMESSAGE} X ${SH} ${PKGINSTALL} ${PKGNAME} POST-INSTALL 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.17.0.tar.gz) = 77d927584e66cb09472f5e9a1613e274 END-of-spread/distinfo echo x - spread/pkg-descr sed 's/^X//' >spread/pkg-descr << 'END-of-spread/pkg-descr' XCopyright (c) 1993-2002 Spread Concepts LLC. All rights reserved. XThis product uses software developed by Spread Concepts LLC for use in the XSpread toolkit. For more information about Spread see http://www.spread.org/ X 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- Joshua Xjoshua@roughtrade.net END-of-spread/pkg-descr echo x - spread/pkg-comment sed 's/^X//' >spread/pkg-comment << 'END-of-spread/pkg-comment' XThe Spread Group Communication System, a network toolkit END-of-spread/pkg-comment echo x - spread/pkg-install sed 's/^X//' >spread/pkg-install << 'END-of-spread/pkg-install' X#!/bin/sh X XPATH=/sbin:/bin:/usr/sbin:/usr/bin XUSER=spread XUSER_HOMEDIR=/nonexistent XGROUP=spread XRUNDIR=/var/run/spread XNOLOGIN=/sbin/nologin X Xcase $2 in XPRE-INSTALL) X if pw group show "${GROUP}" 2>/dev/null; then X echo "You already have a group \"${GROUP}\", so I will use it." X else X if pw groupadd ${GROUP}; then X echo "Added group \"${GROUP}\"." X else X echo "Adding group \"${GROUP}\" failed..." X exit 1 X fi X fi X X if 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 X else X if pw useradd ${USER} -g ${GROUP} -h - \ X -d ${USER_HOMEDIR} -s ${NOLOGIN} -c "Spread User" X then X echo "Added user \"${USER}\"." X else X echo "Adding user \"${USER}\" failed..." X exit 1 X fi X fi X ;; XPOST-INSTALL) X if [ ! -d ${RUNDIR} ]; then X install -d -o ${USER} -g ${GROUP} -m 0750 ${RUNDIR} X fi X ;; X*) X echo 'unexpect argument to pkg-install' X ;; Xesac END-of-spread/pkg-install echo x - spread/pkg-plist sed 's/^X//' >spread/pkg-plist << 'END-of-spread/pkg-plist' Xbin/spflooder Xbin/spmonitor Xbin/sptuser Xbin/spuser Xetc/rc.d/spread.sh.sample Xetc/spread.access_ip.sample Xetc/spread.conf.sample Xinclude/sp.h Xinclude/sp_events.h Xinclude/sp_func.h Xlib/libspread.a Xlib/libspread.so Xlib/libspread.so.1 Xlib/libtspread.a Xlib/libtspread.so Xlib/libtspread.so.1 Xlib/perl5/%%PERL_VERSION%%/man/man3/Spread.3.gz Xlib/perl5/site_perl/%%PERL_VER%%/%%PERL_ARCH%%/Spread.pm Xlib/perl5/site_perl/%%PERL_VER%%/%%PERL_ARCH%%/auto/Spread/.packlist Xlib/perl5/site_perl/%%PERL_VER%%/%%PERL_ARCH%%/auto/Spread/Spread.bs Xlib/perl5/site_perl/%%PERL_VER%%/%%PERL_ARCH%%/auto/Spread/Spread.so Xlib/perl5/site_perl/%%PERL_VER%%/%%PERL_ARCH%%/auto/Spread/autosplit.ix Xsbin/spread X%%PORTDOCS%%share/doc/spread/perl/README X%%PORTDOCS%%share/doc/spread/perl/test.pl X%%PORTDOCS%%share/doc/spread/LICENSE X%%PORTDOCS%%share/doc/spread/Readme.txt X@unexec rmdir /var/run/spread 2>/dev/null || true X@unexec rmdir %D/lib/perl5/site_perl/%%PERL_VER%%/%%PERL_ARCH%%/auto/Spread 2>/dev/null || true X%%PORTDOCS%%@dirrm share/doc/spread/perl X%%PORTDOCS%%@dirrm share/doc/spread END-of-spread/pkg-plist echo c - spread/files mkdir -p spread/files > /dev/null 2>&1 echo x - spread/files/patch-auth-ip.c sed 's/^X//' >spread/files/patch-auth-ip.c << 'END-of-spread/files/patch-auth-ip.c' X--- auth-ip.c Sun Sep 22 12:56:52 2002 X+++ auth-ip.c Wed Nov 6 02:39:28 2002 X@@ -94,8 +94,8 @@ X if (NULL != (fp = fopen("./spread.access_ip", "r")) ) X Alarm( PRINT, "ip_init: using file: ./spread.access_ip\n"); X if (fp == NULL) X- if (NULL != (fp = fopen("/etc/spread.access_ip", "r")) ) X- Alarm( PRINT, "ip_init: using file: /etc/spread.access_ip\n"); X+ if (NULL != (fp = fopen(SPREAD_ETCDIR "/spread.access_ip", "r")) ) X+ Alarm( PRINT, "ip_init: using file: " SPREAD_ETCDIR "/spread.access_ip\n"); X if (fp == NULL) X { X Alarm( PRINT, "ip_init: IP access control file not found.\nIf you are using IP based access controls, please make sure the file exists.\n"); END-of-spread/files/patch-auth-ip.c echo x - spread/files/patch-auth-pword.c sed 's/^X//' >spread/files/patch-auth-pword.c << 'END-of-spread/files/patch-auth-pword.c' X--- auth-pword.c Sun Sep 22 12:56:52 2002 X+++ auth-pword.c Wed Nov 6 02:40:23 2002 X@@ -122,8 +122,8 @@ X if (NULL != (fp = fopen("./spread.access_pword", "r")) ) X Alarm( PRINT, "pword_init: using file: ./spread.access_pword\n"); X if (fp == NULL) X- if (NULL != (fp = fopen("/etc/spread.access_pword", "r")) ) X- Alarm( PRINT, "pword_init: using file: /etc/spread.access_pword\n"); X+ if (NULL != (fp = fopen(SPREAD_ETCDIR "/spread.access_pword", "r")) ) X+ Alarm( PRINT, "pword_init: using file: " SPREAD_ETCDIR "/spread.access_pword\n"); X if (fp == NULL) X Alarm( EXIT, "pword_init: error opening config file %s in any of the standard locations. Please make sure the file exists\n", file_name); X END-of-spread/files/patch-auth-pword.c echo x - spread/files/patch-Makefile.in sed 's/^X//' >spread/files/patch-Makefile.in << 'END-of-spread/files/patch-Makefile.in' X--- Makefile.in.orig Sat Sep 28 08:38:59 2002 X+++ Makefile.in Wed Nov 6 07:41:33 2002 X@@ -25,7 +25,7 @@ X #Rules: major -- inc for incompatible change X # : minor -- inc for bugfix or forward compatible change X X-LIBVERSION=1.0 X+LIBVERSION=1 X X PATHS= X X@@ -34,7 +34,7 @@ X CFLAGS=@CFLAGS@ X CPPFLAGS=-I. -I$(srcdir) @CPPFLAGS@ $(PATHS) @DEFS@ X LDFLAGS=@LDFLAGS@ X-LIBS=@LIBS@ X+LIBS=-L. @LIBS@ X THLDFLAGS=@THLDFLAGS@ X THLIBS=@THLIBS@ X AR=@AR@ X@@ -51,8 +51,10 @@ X PERL=@PERL@ X ENT=@ENT@ X EXEEXT=@EXEEXT@ X+SHLDSONAME=-Wl,-soname,libspread.so.$(LIBVERSION) X+TSHLDSONAME=-Wl,-soname,libtspread.so.$(LIBVERSION) X X-TARGETS=spread$(EXEEXT) spuser$(EXEEXT) spflooder$(EXEEXT) spmonitor$(EXEEXT) sptuser${EXEEXT} @LIBSPSO@ @LIBTSPSO@ X+TARGETS=spread$(EXEEXT) spuser$(EXEEXT) spflooder$(EXEEXT) spmonitor$(EXEEXT) sptuser${EXEEXT} @LIBSPSO@ @LIBTSPSO@ libspread.a libtspread.a X X LIBSP_OBJS= alarm.o events.o memory.o sp.o X X@@ -123,8 +125,11 @@ X $(INSTALL) -m 0755 libspread.$(LIBVERSION).dylib $(DESTDIR)$(libdir)/libspread.$(LIBVERSION).dylib X (cd $(DESTDIR)$(libdir); $(SOFTLINK) libspread.$(LIBVERSION).dylib libspread.dylib) X X-libspread.so: $(LIBSP_SHOBJS) X- $(SHLD) -o $@ $(LIBSP_SHOBJS) $(SHLDFLAGS) $(SHLIBS) X+libspread.so: $@.$(LIBVERSION) X+ $(SOFTLINK) $@.$(LIBVERSION) $@ X+ X+libspread.so.$(LIBVERSION): $(LIBSP_SHOBJS) X+ $(SHLD) -o $@ $(LIBSP_SHOBJS) $(SHLDSONAME) $(SHLDFLAGS) $(SHLIBS) X X install-libspread.so: libspread.so X $(INSTALL) -m 0755 libspread.so $(DESTDIR)$(libdir)/libspread.so.$(LIBVERSION) X@@ -142,8 +147,11 @@ X $(INSTALL) -m 0755 libtspread.$(LIBVERSION).dylib $(DESTDIR)$(libdir)/libtspread.$(LIBVERSION).dylib X (cd $(DESTDIR)$(libdir); $(SOFTLINK) libtspread.$(LIBVERSION).dylib libtspread.dylib) X X-libtspread.so: $(LIBTSP_SHOBJS) X- $(SHLD) -o $@ $(LIBTSP_SHOBJS) $(SHLDFLAGS) $(SHLIBS) $(THLIBS) X+libtspread.so: $@.$(LIBVERSION) X+ $(SOFTLINK) $@.$(LIBVERSION) $@ X+ X+libtspread.so.$(LIBVERSION): $(LIBTSP_SHOBJS) X+ $(SHLD) -o $@ $(LIBTSP_SHOBJS) $(TSHLDSONAME) $(SHLDFLAGS) $(SHLIBS) $(THLIBS) X X install-libtspread.so: libtspread.so X $(INSTALL) -m 0755 libtspread.so $(DESTDIR)$(libdir)/libtspread.so.$(LIBVERSION) X@@ -152,17 +160,17 @@ X spread$(EXEEXT): $(SPREADOBJS) X $(LD) -o $@ $(SPREADOBJS) $(LDFLAGS) $(LIBS) X X-spuser$(EXEEXT): libspread.a user.o X- $(LD) -o $@ user.o $(LDFLAGS) libspread.a $(LIBS) X+spuser$(EXEEXT): libspread.so user.o X+ $(LD) -o $@ user.o $(LDFLAGS) -lspread $(LIBS) X X-spflooder$(EXEEXT): libspread.a flooder.o X- $(LD) -o $@ flooder.o $(LDFLAGS) libspread.a $(LIBS) X+spflooder$(EXEEXT): libspread.so flooder.o X+ $(LD) -o $@ flooder.o $(LDFLAGS) -lspread $(LIBS) X X spmonitor$(EXEEXT): $(MONITOROBJS) X $(LD) -o $@ $(MONITOROBJS) $(LDFLAGS) $(LIBS) X X-sptuser$(EXEEXT): user.to libtspread.a X- $(LD) $(THLDFLAGS) -o $@ user.to libtspread.a $(LDFLAGS) $(LIBS) $(THLIBS) X+sptuser$(EXEEXT): user.to libtspread.so X+ $(LD) $(THLDFLAGS) -o $@ user.to -ltspread $(LDFLAGS) $(LIBS) $(THLIBS) X X spsimple_user$(EXEEXT): simple_user.o libspread.a X $(LD) -o $@ simple_user.o $(LDFLAGS) libspread.a $(LIBS) X@@ -234,11 +242,6 @@ X done X if [ ! -d $(DESTDIR)$(sysconfdir) ]; then \ X $(buildtoolsdir)/mkinstalldirs $(DESTDIR)$(sysconfdir); \ X- fi X- if [ ! -f $(DESTDIR)$(sysconfdir)/spread.conf ]; then \ X- $(INSTALL) -m 644 $(srcdir)/sample.spread.conf $(DESTDIR)$(sysconfdir)/spread.conf; \ X- else \ X- echo "$(DESTDIR)$(sysconfdir)/spread.conf already exists, install will not overwrite"; \ X fi X X uninstallall: uninstall END-of-spread/files/patch-Makefile.in echo x - spread/files/patch-spread.c sed 's/^X//' >spread/files/patch-spread.c << 'END-of-spread/files/patch-spread.c' X--- spread.c Sun Nov 10 00:17:59 2002 X+++ spread.c Sun Nov 10 00:18:42 2002 X@@ -65,6 +65,7 @@ X X static void Invalid_privilege_decrease(char *user, char *group); X static void Usage(int argc, char *argv[]); X+static void writepidfile(); X X /* auth-null.c: */ X void null_init(void); X@@ -144,6 +145,8 @@ X X #endif /* ARCH_PC_WIN95 */ X X+ writepidfile(); X+ X /* initialize each valid authentication protocol */ X null_init(); X ip_init(); X@@ -193,6 +196,20 @@ X E_handle_events(); X X return 0; X+} X+ X+static void X+writepidfile() X+{ X+ char pidbuf[11]; X+ int pidfd; X+ X+ if ((pidfd = open(_PATH_SPREAD_PIDDIR "/spread.pid", O_RDWR | O_CREAT, 0644)) == -1) X+ Alarm( EXIT, "Spread: couldn't open pidfile for writing" ); X+ X+ snprintf(pidbuf, sizeof(pidbuf), "%ld\n", (long)getpid()); X+ write(pidfd, pidbuf, strlen(pidbuf)); X+ close(pidfd); X } X X static void Print_help(void) END-of-spread/files/patch-spread.c echo x - spread/files/spread.sh sed 's/^X//' >spread/files/spread.sh << 'END-of-spread/files/spread.sh' X#!/bin/sh X# X# $FreeBSD$ X Xif ! prefix=$(expr $0 : "\(/.*\)/etc/rc\.d/$(basename $0)\$"); then X echo "$0: Cannot determine the prefix" >&2 X exit 1 Xfi Xspread=${prefix}/sbin/spread Xpidfile=/var/run/spread.pid Xout=/var/log/spread.out Xdaemon=/usr/sbin/daemon X Xcase "$1" in Xstart) X if [ -x ${spread} ]; then X echo -n ' spread' X ${daemon} -c ${spread} >${out} 2>&1 <&- X fi X ;; Xstop) X if [ -f ${pidfile} ]; then X kill `cat ${pidfile}` X echo -n ' spread' X rm ${pidfile} X else X echo ' spread: not running' X fi X ;; X*) X echo "Usage: `basename $0` {start|stop}" >&2 X exit 64 X ;; Xesac X Xexit 0 END-of-spread/files/spread.sh 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?20021110003631.145C03F6C>