[reSIProcate] Autotools Update
- From: Alan Hawrylyshen <alan@xxxxxxxxxx>
- Date: Mon, 21 Jun 2004 19:49:07 -0600
All;
There is now preliminary support for using the autotools build system
that we were using prior to the migration to Subversion.
To use the autotools build system, simply check out a recent main
subversion release and do the following:
sh use-autotools.sh
sh autogen.sh
NOTE: Some files will be removed and others will be overwritten (those
that are parts of the old AND new systems)
It is the responsibility of the developer to AVOID checking in any
derived autotools files. Hopefully svn won't try to, but if
it appears to be trying -- let me know and I'll improve the
use-autotools.sh script.
Unlike before, it is safe to run use-autotools.sh multiple times.
Some recent changes to the configure script that this generates:
o You can suppress Content types with (for example --without-SipFrag
or --without-PlainContents)
Use this at your own peril / discretion.
o The shared library revision number is no longer related to the
resiprocate release number.
The library revision will be changed as we break backward
compatibility in the API/ABI.
o configure can take a specification for Data's local stack buffer
size. Default remains at 128 bytes.
--enable-data-local-size=32 (for example)
o Old build system has RESIP_DATA_LOCAL_SIZE var in Makefile.pkg and
Makefile.conf
Apologies if this isn't implemented to 'old spec' Please IRAN.
Hints:
o You can really speed up the autotools build with the following (as
applicable):
o --disable-shared or --disable-static -- if you only need on or the
other.
o --with-pic -- if you want both, but don't mind PIC code in your
static library
o --disable-dependency-tracking (for one-off builds)
o --disable-libtool-lock -- on uniprocessor machines doing serial
builds
o The autotools allow you to have multiple compile trees for a single
source tree.
I typically do this:
svn co https://scm.sipfoundry.org/rep/resiprocate/main
cd sip
sh use-autotools.sh
sh autogen.sh
mkdir compile
cd compile
../configure --enable-ipv6 --disable-static --disable-elog
make
#YMMV
Next steps:
o I will be testing that useful tarballs can be made and posting an
updated tarball to the site.
o Start to look at changing things so that it is 'safe' to install
resiprocate using make install.
PRESENTLY: it is not considered safe to do a 'make install' and we
STRONGLY recommend linking against
your in-situ libraries in <build_path>resiprocate/.libs
Alan Hawrylyshen
reSIProcate Project Administrator
http://sipfoundry.org/reSIProcate/
a l a n a t j a s o m i d o t c o m