ports/68963: Update net/jabberd to 2.0.3
Kirk Strauser
kirk at strauser.com
Mon Jul 12 22:20:38 UTC 2004
>Number: 68963
>Category: ports
>Synopsis: Update net/jabberd to 2.0.3
>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: Mon Jul 12 22:20:28 GMT 2004
>Closed-Date:
>Last-Modified:
>Originator: Kirk Strauser
>Release: FreeBSD 5.2-CURRENT i386
>Organization:
The Day Companies
>Environment:
System: FreeBSD kanga.honeypot.net 5.2-CURRENT FreeBSD 5.2-CURRENT #0: Thu Apr 8 15:37:48 CDT 2004 root at kanga.honeypot.net:/usr/obj/usr/src/sys/NEW_KANGA i386
>Description:
This is an update of the net/jabberd port to version 2.0.3 (vendor string
"2.0s3") which fixes some serious memory leaks and other significant bugs.
This update also replaces the rc.d script with a new version that uses the
rc.subr framework.
I was able to successfully compile the port with all of the WITH_* knobs,
but only have the means to test WITH_POSTGRESQL (which worked as expected).
>How-To-Repeat:
>Fix:
--- jabberd.port begins here ---
# 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/jabberd
# net/jabberd/files
# net/jabberd/files/patch-util.h
# net/jabberd/files/jabberd.sh
# net/jabberd/files/patch-configure
# net/jabberd/Makefile
# net/jabberd/distinfo
# net/jabberd/pkg-deinstall
# net/jabberd/pkg-descr
# net/jabberd/pkg-install
# net/jabberd/pkg-plist
#
echo c - net/jabberd
mkdir -p net/jabberd > /dev/null 2>&1
echo c - net/jabberd/files
mkdir -p net/jabberd/files > /dev/null 2>&1
echo x - net/jabberd/files/patch-util.h
sed 's/^X//' >net/jabberd/files/patch-util.h << 'END-of-net/jabberd/files/patch-util.h'
X--- util/util.h.orig Mon May 31 16:31:06 2004
X+++ util/util.h Mon Jul 12 10:29:58 2004
X@@ -30,6 +30,7 @@
X #include <time.h>
X #include <errno.h>
X #include <assert.h>
X+#include <sys/socket.h>
X
X #ifdef HAVE_NETINET_IN_H
X # include <netinet/in.h>
END-of-net/jabberd/files/patch-util.h
echo x - net/jabberd/files/jabberd.sh
sed 's/^X//' >net/jabberd/files/jabberd.sh << 'END-of-net/jabberd/files/jabberd.sh'
X#!/bin/sh
X
X# Start or stop jabberd
X# $FreeBSD: $
X
X# PROVIDE: jabberd
X# REQUIRE: DAEMON
X# BEFORE: LOGIN
X# KEYWORD: FreeBSD shutdown
X#
Xprefix=/usr/local
X
X# Define these jabberd_* variables in one of these files:
X# /etc/rc.conf
X# /etc/rc.conf.local
X# /etc/rc.conf.d/gkrellmd
X#
X# DO NOT CHANGE THESE DEFAULT VALUES HERE
X#
Xjabberd_chdir="/var/jabberd/pid"
Xjabberd_enable="NO"
Xjabberd_flags=""
Xjabberd_user="jabber"
X
X. /etc/rc.subr
X
Xname="jabberd"
Xrcvar=`set_rcvar`
Xcommand="/usr/local/bin/jabberd"
Xcommand_args="&"
Xprocname="/usr/local/bin/router"
X
Xload_rc_config $name
X
Xpidfile="${jabberd_chdir}/router.pid"
X
Xcase "$1" in
X stop)
X echo "Stopping Jabber2"
X killall -u ${jabberd_user} jabberd c2s resolver router s2s sm
X for file in c2s resolver router s2s sm; do
X rm -f ${jabberd_chdir}/$file.pid
X done
X ;;
X *)
X run_rc_command "$1"
X ;;
Xesac
END-of-net/jabberd/files/jabberd.sh
echo x - net/jabberd/files/patch-configure
sed 's/^X//' >net/jabberd/files/patch-configure << 'END-of-net/jabberd/files/patch-configure'
X--- configure.orig Mon Jul 12 10:15:17 2004
X+++ configure Mon Jul 12 10:15:26 2004
X@@ -20575,7 +20575,7 @@
X done
X
X if test "x-$ac_cv_header_db_h" = "x-yes" ; then
X- for lib in db-4.2 db-4.1 db-4 db4 db ; do
X+ for lib in db-4.2 db-4.1 db-4 db4 db41 ; do
X if test "x-$have_db_version" != "x-yes" ; then
X echo "$as_me:$LINENO: checking for db_create in -l$lib" >&5
X echo $ECHO_N "checking for db_create in -l$lib... $ECHO_C" >&6
END-of-net/jabberd/files/patch-configure
echo x - net/jabberd/Makefile
sed 's/^X//' >net/jabberd/Makefile << 'END-of-net/jabberd/Makefile'
X# New ports collection makefile for: jabberd
X# Date created: 29 December 2003
X# Whom: Dmitry Sivachenko <demon at FreeBSD.org>
X#
X# $FreeBSD: ports/net/jabberd/Makefile,v 1.15 2004/06/14 10:01:47 demon Exp $
X#
X
XPORTNAME= jabberd
XPORTVERSION= 2.0.3
XCATEGORIES= net
XMASTER_SITES= http://www.jabberstudio.org/files/jabberd2/
XDISTNAME= ${PORTNAME}-2.0s3
XDIST_SUBDIR= jabber
X
XMAINTAINER= demon at FreeBSD.org
XCOMMENT= Online presence and instant messaging server
X
XGNU_CONFIGURE= yes
XUSE_OPENSSL= yes
XUSE_ICONV= yes
XUSE_RC_SUBR= yes
XCONFIGURE_ARGS= --localstatedir=/var \
X --enable-ssl \
X --with-extra-include-path=${LOCALBASE}/include:${LOCALBASE}/include/mysql \
X --with-extra-library-path=${LOCALBASE}/lib:${LOCALBASE}/lib/mysql
X
XCONFIGURE_ARGS+=--enable-fs
X
X.if !defined(WITHOUT_DEBUG)
XCONFIGURE_ARGS+=--enable-debug
X.endif
X
X.if defined(WITH_POSTGRESQL)
XLIB_DEPENDS+= pq.3:${PORTSDIR}/databases/postgresql7
XCONFIGURE_ARGS+=--enable-pgsql
X.endif
X
X.if defined(WITH_MYSQL)
XUSE_MYSQL= yes
XCONFIGURE_ARGS+=--enable-mysql
X.else
XCONFIGURE_ARGS+=--disable-mysql
X.endif
X
X.if defined(WITH_BDB)
XLIB_DEPENDS+= db41.1:${PORTSDIR}/databases/db41
XCONFIGURE_ARGS+=--enable-db
X.endif
X
X.if defined(WITH_LDAP)
XUSE_OPENLDAP= yes
XCONFIGURE_ARGS+=--enable-ldap
X.endif
X
X.if defined(WITH_PAM)
XCONFIGURE_ARGS+=--enable-pam
X.endif
X
XMAN8= c2s.8 jabberd.8 resolver.8 router.8 s2s.8 sm.8
X
Xpre-everything::
X @${ECHO}
X @${ECHO} "You can build Jabber with the following options:"
X @${ECHO} "WITH_POSTGRESQL use PostgreSQL for storage and authentication"
X @${ECHO} "WITH_BDB use Berkeley DB for storage and authentication"
X @${ECHO} "WITH_MYSQL use MySQL for storage and authentication"
X @${ECHO} "WITH_LDAP use LDAP for authentication"
X @${ECHO} "WITH_PAM use PAM for authentication"
X @${ECHO}
X
Xpre-install:
X PKG_PREFIX=${PREFIX} ${SH} ${PKGINSTALL} ${PKGNAME} PRE-INSTALL
X
Xpost-install:
X ${ECHO} "Installing ${PREFIX}/etc/rc.d/jabberd.sh startup file."; \
X ${INSTALL_SCRIPT} ${FILESDIR}/jabberd.sh ${PREFIX}/etc/rc.d/jabberd.sh; \
X @${CHOWN} -R jabber:jabber ${PREFIX}/etc/jabberd
X @${FIND} ${PREFIX}/etc/jabberd -type d | ${XARGS} ${CHMOD} 750
X @${FIND} ${PREFIX}/etc/jabberd -type f | ${XARGS} ${CHMOD} 660
X @${MKDIR} ${PREFIX}/share/jabberd
X @${INSTALL_DATA} ${WRKSRC}/tools/db-setup.mysql ${PREFIX}/share/jabberd
X @${INSTALL_DATA} ${WRKSRC}/tools/db-setup.pgsql ${PREFIX}/share/jabberd
X
X.include <bsd.port.mk>
END-of-net/jabberd/Makefile
echo x - net/jabberd/distinfo
sed 's/^X//' >net/jabberd/distinfo << 'END-of-net/jabberd/distinfo'
XMD5 (jabber/jabberd-2.0s3.tar.gz) = c15f8f07cb2ee499cd21c0b883b9f353
XSIZE (jabber/jabberd-2.0s3.tar.gz) = 705819
END-of-net/jabberd/distinfo
echo x - net/jabberd/pkg-deinstall
sed 's/^X//' >net/jabberd/pkg-deinstall << 'END-of-net/jabberd/pkg-deinstall'
X#!/bin/sh
X# $FreeBSD: ports/net/jabberd/pkg-deinstall,v 1.3 2004/01/01 13:21:15 demon Exp $
X#
X
Xif [ "$2" != "POST-DEINSTALL" ]; then
X exit 0
Xfi
X
XUSER=jabber
X
Xif pw usershow "${USER}" 2>/dev/null 1>&2; then
X echo "To delete Jabber user permanently, use 'pw userdel ${USER}'"
Xfi
X
Xif pw groupshow "${USER}" 2>/dev/null 1>&2; then
X echo "To delete Jabber group permanently, use 'pw groupdel ${USER}'"
Xfi
X
Xecho "If you wish to delete jabber data files, remove '/var/jabberd' directory."
X
Xexit 0
END-of-net/jabberd/pkg-deinstall
echo x - net/jabberd/pkg-descr
sed 's/^X//' >net/jabberd/pkg-descr << 'END-of-net/jabberd/pkg-descr'
XThe Jabber server (jabberd) is a daemon for Jabber clients to connect
Xand communicate with.
X
XWWW: http://jabberd.jabberstudio.org/
END-of-net/jabberd/pkg-descr
echo x - net/jabberd/pkg-install
sed 's/^X//' >net/jabberd/pkg-install << 'END-of-net/jabberd/pkg-install'
X#!/bin/sh
X# $FreeBSD: ports/net/jabberd/pkg-install,v 1.3 2004/01/09 11:30:09 demon Exp $
X#
X
Xif [ "$2" != "PRE-INSTALL" ]; then
X exit 0
Xfi
X
XUSER=jabber
XGROUP=${USER}
XUID=93
XGID=${UID}
X
Xif ! pw groupshow "${GROUP}" 2>/dev/null 1>&2; then
X if pw groupadd ${GROUP} -g ${GID}; then
X echo "Added group \"${GROUP}\"."
X else
X echo "Adding group \"${GROUP}\" failed..."
X exit 1
X fi
Xfi
X
Xif ! pw usershow "${USER}" 2>/dev/null 1>&2; then
X if pw useradd ${USER} -u ${UID} -g ${GROUP} -h - \
X -s "/sbin/nologin" -d "/nonexistent" \
X -c "Jabber Daemon"; \
X then
X echo "Added user \"${USER}\"."
X else
X echo "Adding user \"${USER}\" failed..."
X exit 1
X fi
Xfi
X
Xmkdir -m 750 /var/jabberd /var/jabberd/db /var/jabberd/pid /var/jabberd/log
Xchown jabber:jabber /var/jabberd /var/jabberd/db /var/jabberd/pid /var/jabberd/log
X
Xexit 0
END-of-net/jabberd/pkg-install
echo x - net/jabberd/pkg-plist
sed 's/^X//' >net/jabberd/pkg-plist << 'END-of-net/jabberd/pkg-plist'
Xbin/c2s
Xbin/jabberd
Xbin/resolver
Xbin/router
Xbin/s2s
Xbin/sm
X at unexec if cmp -s %D/etc/jabberd/c2s.xml %D/etc/jabberd/c2s.xml.dist; then rm -f %D/etc/jabberd/c2s.xml; fi
Xetc/jabberd/c2s.xml.dist
X at unexec if cmp -s %D/etc/jabberd/jabberd.cfg %D/etc/jabberd/jabberd.cfg.dist; then rm -f %D/etc/jabberd/jabberd.cfg; fi
Xetc/jabberd/jabberd.cfg.dist
X at unexec if cmp -s %D/etc/jabberd/resolver.xml %D/etc/jabberd/resolver.xml.dist; then rm -f %D/etc/jabberd/resolver.xml; fi
Xetc/jabberd/resolver.xml.dist
X at unexec if cmp -s %D/etc/jabberd/router-users.xml %D/etc/jabberd/router-users.xml.dist; then rm -f %D/etc/jabberd/router-users.xml; fi
Xetc/jabberd/router-users.xml.dist
X at unexec if cmp -s %D/etc/jabberd/router.xml %D/etc/jabberd/router.xml.dist; then rm -f %D/etc/jabberd/router.xml; fi
Xetc/jabberd/router.xml.dist
X at unexec if cmp -s %D/etc/jabberd/s2s.xml %D/etc/jabberd/s2s.xml.dist; then rm -f %D/etc/jabberd/s2s.xml; fi
Xetc/jabberd/s2s.xml.dist
X at unexec if cmp -s %D/etc/jabberd/sm.xml %D/etc/jabberd/sm.xml.dist; then rm -f %D/etc/jabberd/sm.xml; fi
Xetc/jabberd/sm.xml.dist
X at unexec if cmp -s %D/etc/jabberd/templates/roster.xml %D/etc/jabberd/templates/roster.xml.dist; then rm -f %D/etc/jabberd/templates/roster.xml; fi
Xetc/jabberd/templates/roster.xml.dist
X at unexec if cmp -s %D/etc/rc.d/jabberd.sh %D/etc/rc.d/jabberd.sh; then rm -f %D/etc/rc.d/jabberd.sh; fi
Xetc/rc.d/jabberd.sh
Xshare/jabberd/db-setup.mysql
Xshare/jabberd/db-setup.pgsql
X at dirrm share/jabberd
X at dirrm etc/jabberd/templates
X at dirrm etc/jabberd
END-of-net/jabberd/pkg-plist
exit
--- jabberd.port ends here ---
>Release-Note:
>Audit-Trail:
>Unformatted:
More information about the freebsd-ports-bugs
mailing list