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 /_/ \.__/_.__/_/ [EMAIL PROTECTED] http://ee-staff.ethz.ch/~oetiker -- * To unsubscribe from the rrd-developers mailing list, send a message with the subject: unsubscribe to [EMAIL PROTECTED]
