[rrd-developers] Re: Preliminary libtooled version of RRDtool available

Tobias Oetiker oetiker at ee.ethz.ch
Sat Aug 7 03:02:05 MEST 1999


Yesterday you sent me mail regarding [rrd-developers] Preliminary libtooled...:

*> I spent some time retooling the autoconf stuff in RRDtool to support
*> automake and libtool so that RRDtool can now generate a single shared
*> library containing all of the png, z, gd libraries.  This should help
*> RRDtool compile and build shared libraries on many more platforms.
*> Personally, I'll be using this shared library to attach to SE programs,
*> which can do a dlopen.
*> 
*> This work is not completed, but it does do the most important part,
*> which is build rrdtool, rrdcgi and the perl-shared library.  I have
*> only checked it on Solaris hosts and it works great.  I wanted to
*> get this out so other people can try it.
*> 
*> Here are some quick notes on what I did.
*> 
*> I stole many ideas from Amanda's (www.amanda.org) automake/libtool
*> configuration.  Any design flaws in RRDtool are due to the way
*> automake/libtool is set up in Amanda.  I have set up RRdtool to
*> not compile static libraries by default.  This seems to be ok, since
*> so many people link against the shared library to get the Perl
*> RRDs.pm module, so there's no point in a static library.  In any
*> case, if the host does not support shared libraries, then it will
*> build a static library.  If the perl-shared module does not
*> find the archive of PIC compiled object files, then Make breaks.
*> This should probably fail nicer.
*> 
*> rrdtool and rrdcgi now get installed as linked to a shared library.
*> 
*> In the src directory I create librrd.la and librrd_private.la.  The
*> first is what gets installed in $prefix/lib and the second is used
*> to create RRDs.so.  Libtool does not create an archive of PIC compiled
*> object files to create librrd.so, so librrd_private is created as
*> a convenience library, and here libtool creates a
*> src/.libs/librrd_private.al file that contains all of the PIC compiled
*> object files.
*> 
*> All of the Makefile.am's that compile something redefine COMPILE,
*> LTCOMPILE and LINK to include CFLAGS_EXTRA in the compile.  This
*> has warnings appear in cgilib.
*> 
*> I have not done the following things:
*> 
*> 1) Made sure all the RRdtool pieces get installed in the correct place
*>    with a make install.
*> 2) Added all files to the Makefile.am's such that a make dist can
*>    be performed to create a RRDtool distribution.
*> 3) docs/Makefile has not been touched.  This could also probably be
*>    automake'd.
*> 4) I have not figured out how to put perl-shared and perl-piped
*>    inside the automake structure nicely, but it works.  Look at the
*>    top level Makefile.am to see how I do it.
*> 
*> Since this work has a lot of changes, I'm just leaving the new tar file
*> up at
*> 
*> ftp://ftp.gps.caltech.edu/pub/blair/rrdtool-1.0.3a.tar.gz
*> 
*> The diffs between this and pure 1.0.3 are 165 k in size.
*> 
*> If you do any developing on this, please make sure to download and
*> install the latest autoconf (2.13), automake (1.4), and libtool
*> (1.3.3) from ftp.gnu.org.

cool ... it builds on linux ... will integrate this in 1.0.4 ... which means
this will not be a wide release. It will only get announced on the
developers list ... 

cheers
tobi
*> 
*> Good luck,
*> Blair

-- 
 ______    __   _
/_  __/_  / /  (_) Oetiker, Timelord & SysMgr @ EE-Dept ETH-Zurich
 / // _ \/ _ \/ / TEL: +41(0)1-6325286  FAX:...1517  ICQ: 10419518 
/_/ \.__/_.__/_/ oetiker at ee.ethz.ch http://ee-staff.ethz.ch/~oetiker

--
* To unsubscribe from the rrd-developers mailing list, send a message with the
  subject: unsubscribe to rrd-developers-request at list.ee.ethz.ch



More information about the rrd-developers mailing list