|
From: | Ben |
Subject: | double check |
Date: | Thu, 05 Oct 2000 19:11:57 -0700 |
Could one of you autoconf masters please take a look at the current lpr source tree that I am working on. To make some of the advanced printing capabilities more accessible to the masses we bundled a whole bunch printing related software that we have been working on into one giant tarball. This turned out to be quite a challenge for me with regards to autoconf and automake and I had to do many things that I had never tried before to get it working. I would just like someone to look over the things that I have done to make sure that I did things the "right" way and that I didn't overlook any major gotcha's. You can check out the whole CVS repository by doing: cvs -z3 -d:pserver:address@hidden:/cvsroot/lpr login cvs -z3 -d:pserver:address@hidden:/cvsroot/lpr co \ -r bens_dev_branch lpr If you want to just look at the configure.in scripts: http://cvs.sourceforge.net/cgi-bin/cvsweb.cgi/~checkout~/lpr/configure.in?rev=1.10.2.5&cvsroot=lpr The thing that I am not sure about in this one is the way I deal with tdb not being installed starting at line 24. The effect that I want to achieve is that tdb is compiled if it is not already installed on the system. http://cvs.sourceforge.net/cgi-bin/cvsweb.cgi/~checkout~/lpr/libppd/Attic/configure.in?rev=1.14.2.1&content-type=text/plain&cvsroot=lpr http://cvs.sourceforge.net/cgi-bin/cvsweb.cgi/~checkout~/lpr/gpr/Attic/configure.in?rev=1.2&content-type=text/plain&cvsroot=lpr One thing that I need to do with gpr's configure script is make it add logic to make it depend on libppd being installed. This is a little different than the situation with tdb and lpr. Since lpr is the main project and I am bundling tdb with it and so I can guarentee that tdb will be in the subdirectory. However, libppd and gpr are both guest projects and they are both designed to be able to be built independantly. Therefore when I am building gpr I cannot assume that libppd will always be in "../libppd". So how do I make this test: if [ libppd exists on the system ] then use the system version else if [ libppd is in ../libppd ] then use the version bundled with lpr else error out The other problem is how do I guarentee that headers and libraries are in sync. Say for example a GNU/Linux distro vendor breaks libppd up into two packages libppd (the shared libraries) and libppd-dev (the header files) and someone has installed libppd but not libppd-dev. So then I test for libppd and see that it is there. Then I check for libppd.h and it isn't there and so I use the one that is bundled with lpr. However, these version don't match and there are some incompatabilities. http://cvs.sourceforge.net/cgi-bin/cvsweb.cgi/~checkout~/lpr/snmpkit/Attic/configure.in?rev=1.3.2.1&content-type=text/plain&cvsroot=lpr http://cvs.sourceforge.net/cgi-bin/cvsweb.cgi/~checkout~/lpr/printerconf/Attic/configure.in?rev=1.1.2.1&content-type=text/plain&cvsroot=lpr I tried to solve some of the problems listed above in printerconf's configure.in around line 23. Would someone please take a look at this piece of code and make comments on it. One thing that I really don't like is line 32 where I embed a `pwd` when I set a variable. There has got to be a better way to do this but I couldn't figure it out. I fear that the "pwd" trick will not work if someone tries to build the software outside of the source directories. http://cvs.sourceforge.net/cgi-bin/cvsweb.cgi/~checkout~/lpr/printfilters/Attic/configure.in?rev=1.1.2.1&content-type=text/plain&cvsroot=lpr http://cvs.sourceforge.net/cgi-bin/cvsweb.cgi/~checkout~/lpr/printtool/Attic/configure.in?rev=1.1.2.1&content-type=text/plain&cvsroot=lpr http://cvs.sourceforge.net/cgi-bin/cvsweb.cgi/~checkout~/lpr/tdb/Attic/configure.in?rev=1.2.2.1&content-type=text/plain&cvsroot=lpr http://cvs.sourceforge.net/cgi-bin/cvsweb.cgi/~checkout~/lpr/npadmin/Attic/configure.in?rev=1.16&content-type=text/plain&cvsroot=lpr The associated Makefile.am files are: lpr http://cvs.sourceforge.net/cgi-bin/cvsweb.cgi/~checkout~/lpr/Makefile.am?rev=1.17.2.3&content-type=text/plain&cvsroot=lpr http://cvs.sourceforge.net/cgi-bin/cvsweb.cgi/~checkout~/lpr/doc/Attic/Makefile.am?rev=1.1.2.1&content-type=text/plain&cvsroot=lpr http://cvs.sourceforge.net/cgi-bin/cvsweb.cgi/~checkout~/lpr/src/Attic/Makefile.am?rev=1.1.2.2&content-type=text/plain&cvsroot=lpr gpr http://cvs.sourceforge.net/cgi-bin/cvsweb.cgi/~checkout~/lpr/gpr/Attic/Makefile.am?rev=1.2&content-type=text/plain&cvsroot=lpr http://cvs.sourceforge.net/cgi-bin/cvsweb.cgi/~checkout~/lpr/gpr/src/Attic/Makefile.am?rev=1.1.1.1&content-type=text/plain&cvsroot=lpr http://cvs.sourceforge.net/cgi-bin/cvsweb.cgi/~checkout~/lpr/gpr/macros/Attic/Makefile.am?rev=1.1.1.1&content-type=text/plain&cvsroot=lpr libppd http://cvs.sourceforge.net/cgi-bin/cvsweb.cgi/~checkout~/lpr/libppd/Attic/Makefile.am?rev=1.21&content-type=text/plain&cvsroot=lpr http://cvs.sourceforge.net/cgi-bin/cvsweb.cgi/~checkout~/lpr/libppd/src/Attic/Makefile.am?rev=1.6.2.1&content-type=text/plain&cvsroot=lpr http://cvs.sourceforge.net/cgi-bin/cvsweb.cgi/~checkout~/lpr/libppd/doc/Attic/Makefile.am?rev=1.1&content-type=text/plain&cvsroot=lpr npadmin http://cvs.sourceforge.net/cgi-bin/cvsweb.cgi/~checkout~/lpr/npadmin/Attic/Makefile.am?rev=1.10&content-type=text/plain&cvsroot=lpr printerconf http://cvs.sourceforge.net/cgi-bin/cvsweb.cgi/~checkout~/lpr/printerconf/Attic/Makefile.am?rev=1.1&content-type=text/plain&cvsroot=lpr http://cvs.sourceforge.net/cgi-bin/cvsweb.cgi/~checkout~/lpr/printerconf/common/Attic/Makefile.am?rev=1.1.1.1&content-type=text/plain&cvsroot=lpr http://cvs.sourceforge.net/cgi-bin/cvsweb.cgi/~checkout~/lpr/printerconf/src/Attic/Makefile.am?rev=1.1.2.1&content-type=text/plain&cvsroot=lpr http://cvs.sourceforge.net/cgi-bin/cvsweb.cgi/~checkout~/lpr/printerconf/src/parport/Attic/Makefile.am?rev=1.1.2.1&content-type=text/plain&cvsroot=lpr printfilters http://cvs.sourceforge.net/cgi-bin/cvsweb.cgi/~checkout~/lpr/printfilters/Attic/Makefile.am?rev=1.1.2.1&content-type=text/plain&cvsroot=lpr printtool http://cvs.sourceforge.net/cgi-bin/cvsweb.cgi/~checkout~/lpr/printtool/Attic/Makefile.am?rev=1.1.2.1&content-type=text/plain&cvsroot=lpr snmpkit http://cvs.sourceforge.net/cgi-bin/cvsweb.cgi/~checkout~/lpr/snmpkit/Attic/Makefile.am?rev=1.12.2.1&content-type=text/plain&cvsroot=lpr tdb http://cvs.sourceforge.net/cgi-bin/cvsweb.cgi/~checkout~/lpr/tdb/Attic/Makefile.am?rev=1.2.2.1&content-type=text/plain&cvsroot=lpr -ben
[Prev in Thread] | Current Thread | [Next in Thread] |