Coda File System

lwp and includes, and an rpc2/tcpdump question

From: Greg Troxel <gdt_at_fnord.ir.bbn.com>
Date: 23 Dec 1999 10:49:47 -0500


The sources from www.tcpdump.org don't have rpc2 in them, it seems. This appears to be the heir-apparent of the 'current' distribution of tcpdump. The maintainer (mcr_at_sandelman.ottawa.on.ca) seems willing to take patches.

I am trying to build coda for the first time since the lwp split. I built and installed lwp with --prefix=/usr/local/coda with no problems.
When I ./configure'd coda with the same prefix, it didn't find lwp. This is really an autoconf issue, but IMHO when a package needs another package, a user who wants them both in the same oddball prefix shouldn't need to do special work. I see that there are --with-lwp-includes and --with-lwp-dir options, but it would be cool if the configure script found it in $(prefix)/{include,lib}.

I think this just needs a small change to coda_macros.m4 in CODA_FIND_LIBWLP, adding $(prefix) to the search path, and adding modifications to CFLAGS as well. Well, this patch seems to work for me. I think it isn't right; the path found was /usr, but that's because the -I/-L args are already present in CFLAGS/LDFLAGS, which is really what has to work out. Thus, I'm not sure why it didn't work earlier.
I'm not 100% certain of this, but I did
do a build after a gmake distclean.

As an aside, I'd vote for removing configure from cvs, and adding a bootstrap.sh. People already need autoconf/automake installed for building lwp from cvs, and while automake/libtool might be a bit much, autoconf is getting to be normal enough these days (IMHO, of course).

(all this was on freebsd-3.3+kame/i386)

Index: coda_macros.m4



RCS file: /coda-src/coda/configs/coda_macros.m4,v retrieving revision 4.5
diff -u -u -r4.5 coda_macros.m4
--- coda_macros.m4	1999/12/14 05:41:45	4.5
+++ coda_macros.m4	1999/12/23 15:42:09

@@ -252,13 +252,16 @@
 AC_DEFUN(CODA_FIND_LIBLWP,
   [AC_CACHE_CHECK(location of liblwp, coda_cv_lwppath,     [saved_LDFLAGS="${LDFLAGS}" ; saved_LIBS="${LIBS}" + saved_CFLAGS="${CFLAGS}" ;

     coda_cv_lwppath=none ; LIBS="-llwp" - for path in /usr /usr/local /usr/pkg ; do + for path in /usr /usr/local /usr/pkg $(prefix); do

       LDFLAGS="${LDFLAGS} -L${path}/lib"
+      CFLAGS="${CFLAGS} -I${path}/include"
       AC_TRY_LINK([], [int main(){return 0;}],
 	          [coda_cv_lwppath=${path} ; break])
     done

- LDFLAGS="${saved_LDFLAGS}" ; LIBS="${saved_LIBS}"]) + LDFLAGS="${saved_LDFLAGS}" ; LIBS="${saved_LIBS}" + CFLAGS="${saved_CFLAGS}"])

   case $coda_cv_lwppath in

     none) AC_MSG_ERROR("Cannot determine the location of liblwp")
           ;;

        Greg Troxel <gdt_at_ir.bbn.com>
Received on 1999-12-23 10:52:26