[xmppd-dev] jabberd14 on Solaris 10 (patch and build script)

Mick Weiss mweiss at building-b.com
Tue Feb 12 21:21:28 UTC 2008


Hi everyone,

My name is Mick Weiss and I'm submitting a patch to the latest version 
of jabberd14 (at the time of this writing that is jabberd14-1.6.1.1). I 
probably should have done a diff against svn (sorry). I am working on 
packaging jabberd14 for Solaris (in blastwave). I'm under the guidance 
of Mike Arnold (who packaged an older version) and my sponsor is 
trygvel. Thanks go to my coworker Bill Mooney who helped me out with 
this (and my employer for allowing me to work on this). :-)

Currently this is what I do to compile it (I'm using gcc4 on Solaris sparc):

Build script:

#########################################
### Build.sh -- calls Build2.sh to setup jabberd14 on Solaris10
#########################################
#!/bin/sh

rm -f Build.Log

./Build2.sh 1>Build.Log 2>&1
STATUS=$?
exit $STATUS


########################################
### Build2.sh -- build jabberd14 under /opt/jabberd14/...   
########################################
#!/bin/sh
set -x

echo "The current time is `date`."

# configure for this project
PROJECT=jabberd14;export PROJECT

# note that much is from Blastwave under /opt/csw
PATH=/opt/${PROJECT}/bin:/opt/csw/bin:/opt/csw/gcc4/bin:/opt/bin:/usr/ccs/bin:/usr/ucb:${PATH};export 
PATH

# configure for GCC
CC="gcc";export CC
CXX="g++";export CXX

CFLAGS="-I/opt/${PROJECT}/include -I/opt/csw/include 
-I/opt/csw/gcc4/include -I/usr/include";export CFLAGS
CPPFLAGS="${CFLAGS}";export CPPFLAGS
CXXFLAGS="${CFLAGS}";export CXXFLAGS

LDFLAGS="-L/opt/${PROJECT}/lib -L/opt/csw/lib -L/opt/csw/gcc4/lib 
-L/usr/lib -L/lib";export LDFLAGS

# shared resolver libraries (from solaris /usr/lib)
LIBS="-lresolv -lsocket -lnsl ";export LIBS

# clean out any previous stuff
rm -f config.cache
if [ -f Makefile ]
then
   make distclean
   make clean
fi

./configure --verbose \
       --prefix=/opt/${PROJECT}  \
       --exec_prefix=/opt/${PROJECT}  \
       --bindir=/opt/${PROJECT}/bin   \
       --sbindir=/opt/${PROJECT}/sbin   \
       --libexecdir=/opt/${PROJECT}/libexec  \
       --includedir=/opt/${PROJECT}/include   \
       --mandir=/opt/${PROJECT}/man  \
       --sysconfdir=/etc/opt/${PROJECT}  \
       --localstatedir=/var/opt/${PROJECT} \
       --sharedstatedir=/var/opt/${PROJECT} \
       --datadir=/var/opt/${PROJECT}/share \
       --with-libidn=/opt/csw/lib \
       --with-libpth=/opt/csw/lib

STATUS=$?
if [ $STATUS -ne 0 ] ; then date ; exit 1 ; fi

make
STATUS=$?
if [ $STATUS -ne 0 ] ; then date ; exit 1 ; fi

make install
STATUS=$?
if [ $STATUS -ne 0 ] ; then date ; exit 1 ; fi

echo "The current time is `date`."

exit


###########################

This build script was just used to get it to work (since GAR takes care 
of these things -- I won't need to do this again). I'll keep the list 
updated with the status of the package. Please let me know if you have 
any comments or questions.

You can find me in #jdev on conference.jabber.org (mick_home)

Hopefully someone will find this post useful. :-)

- Mick
-------------- next part --------------
A non-text attachment was scrubbed...
Name: base_accept.patch
Type: text/x-patch
Size: 2734 bytes
Desc: not available
Url : http://lists.xmppd.org/pipermail/dev/attachments/20080212/ccc50c14/attachment.bin 
-------------- next part --------------
base_accept.patch

This patch is for /jabberd14-1.6.1.1/jabberd/base -- the problem was that the developer used a datatype that is internal to Solaris (called "queue"). This patch renames it to "jqueue" to fix it.
The author knows about it and it should be fixed in another release. 

 - Mick

sessions.patch

This patch modifies jsm/sessions.c to variant for funtions peculiar to glibc, so would compile on Solaris 10. Also submitted upstream. 

- BillM
-------------- next part --------------
A non-text attachment was scrubbed...
Name: sessions.patch
Type: text/x-patch
Size: 209 bytes
Desc: not available
Url : http://lists.xmppd.org/pipermail/dev/attachments/20080212/ccc50c14/attachment-0001.bin 


More information about the dev mailing list