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