[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