Ingo Schwarze [2007-04-30, 00:24:32]:
> Hi Jasper, hi Steven, hi Wijnand,
>
> i reworked jasper@'s version of the net/jabberd14 port in two
> respects. Hopefully, this is now final...
>
> 1. To clean up the {SYS,J_}CONFDIR havoc, i have
> - added "--sysconfdir=${J_CONFDIR}" to CONFIGURE_ARGS
> to make ${WRKSRC}/Makefile and ${WRKSRC}/config.h happy
> - added "old" to CONFIGURE_STYLE in order to prevent gnu.port.mk
> from appending --sysconfdir=${SYSCONFDIR} to CONFIGURE_ARGS,
> thus overriding my beautiful --sysconfdir=${J_CONFDIR}
> (this idea shamelessly stolen from the mail/mutt port)
> - added "--mandir=${PREFIX}/man" to CONFIGURE_ARGS
> to compensate for a side effect of CONFIGURE_STYLE=old
> - added "SUBST_VARS= J_CONFDIR"
> - changed ${SYSCONFDIR} to ${J_CONFDIR} in ${PKGDIR}/PLIST
>
> 2. To use xenocara expat, i have
> - added "expat" to WANTLIB
> - removed "expat::textproc/expat" from LIB_DEPENDS
> - added "--with-libexpat=/usr/X11R6" to CONFIGURE_ARGS
Use X11BASE here instead of hardcoding /usr/X11R6.
> After that, all four jabberd14 flavors build fine when the
> expat package is not installed.
> When the expat package is installed, the port picks it up,
> ignoring xenocara. No idea how to avoid that while at the
> same time linking against idn, popt and pth. No idea whether
> this is any problem at all. The expat port will go away anyway,
> so nobody ought to have it installed during bulk builds, right?
>
> This is what i kept:
> - Wijnand's patch to detect snprintf by autoconf
> - Jasper's improvements to README.OpenBSD and MESSAGE
>
> Please cross-check once more and commit.
Let's try to improve it some more first.
- If I use sudo -u _jabberd14 /usr/local/bin/jabberd14 -D
I see an error occurring here:
Mon Apr 30 09:09:11 2007 log.c:232 <log xmlns='jabber:server'
type='alert' from='inject.localhost'>could not open directory
/var/spool/jabberd/inject.localhost for reading</log>
- It would be less confusing if you modify the jabber.xml config file with
the defaults you mention in README.OpenBSD, e.g. user/database for mysql.
If you use wrong credentials here, jabberd14 terminates with a
segmentation fault if you try to register a new user (at least on amd64).
- Maybe it would be good to have it use /var/run/jabberd14/ instead of
/var/run/jabberd/ ? especially if this is used by the other jabberd
port, I haven't checked.
- Use J_CONFDIR in README.OpenBSD as well
- Use PREFIX instead of LOCALBASE in MESSAGE
- In this line in README.OpenBSD, you want to drop the '>'
$ mysql -u jabberd14 -p jabberd14 \
> < /usr/local/share/examples/jabberd14/mysql.sql
- A segmentation fault also occurs when pressing ^C a couple of times
(when it's running in the foreground, amd64), trace below
#0 _xhasher (s=0x409d426b <Address 0x409d426b out of bounds>) at xhash.c:64
#1 0x000000004e5c5e33 in xhash_zap (h=0x482be000,
key=0x409d426b <Address 0x409d426b out of bounds>) at xhash.c:276
#2 0x000000004e5c5c23 in _xhash_cleaner_walk (hash=0x409d426b,
key=0x409d426b <Address 0x409d426b out of bounds>, value=0x49899aa0,
arg=0x0) at xhash.c:129
#3 0x000000004e5c5f30 in xhash_walk (h=0x482be000,
w=0x4e5c5c10 <_xhash_cleaner_walk>, arg=0x0) at xhash.c:332
#4 0x000000004e5c5c47 in _xhash_cleaner (arg=0x409d426b) at xhash.c:146
#5 0x000000004e5c72ec in pool_free (p=0x4073e320) at pool.c:411
#6 0x000000004e5c5eb1 in xhash_free (h=0x409d426b) at xhash.c:308
#7 0x000000004e5c2c29 in deliver_shutdown () at deliver.c:680
#8 0x0000000000404fc9 in _jabberd_atexit () at jabberd.cc:463
#9 0x000000004d109da9 in exit (status=0) at
/usr/src/lib/libc/stdlib/exit.c:61
#10 0x0000000000404f4c in _jabberd_shutdown () at jabberd.cc:435
#11 0x000000000040503d in jabberd_signal_handler (arg=0x409d426b)
at jabberd.cc:509
#12 0x000000004e5bce4f in heartbeat (arg=0x409d426b) at heartbeat.c:82
#13 0x00000000462b182b in pth_spawn_trampoline ()
from /usr/local/lib/libpth.so.20.25
...
steven
Disclaimer: http://www.kuleuven.be/cwis/email_disclaimer.htm