Coda File System

Re: Partial success with Mac OS X coda client

From: Jan Harkes <jaharkes_at_cs.cmu.edu>
Date: Mon, 16 Aug 2004 13:10:39 -0400
On Thu, Aug 12, 2004 at 03:05:04PM +0900, Stephen J. Turnbull wrote:
> Index: coda-src/auth2/Makefile.in
...
> -LIBS := $(LIBRPC2) $(LIBLWP) $(LIBCRYPTO) $(LIBS)
> +LIBS := $(LIBRPC2) $(LIBLWP) $(LIBCRYPTO) $(LIBS) -lresolv

I'd rather find a better way to add this dependency.

> Index: coda-src/kerndep/pioctl.h
...
> +#if defined(DJGPP) || (defined(__APPLE__) && defined(__MACH__))
> +/*
> + * Windows+GCC or Darwin
> + * These are absent from Darwin's <sys/ioccom.h>.
> + */
>  #define _IOC_NRBITS	8

Are these found in any other header? Maybe we can replace this with some
AC_CHECK_HEADER test, I want to get rid of the DJGPP stuff at some
point. The DJGPP code builds a DOS executable to run in a virtual
machine under Win95 to handle the fact that the Win95 kernel isn't
reentrant. I don't really see the point in trying to keep support for
Win95/98/ME since that is pretty much a dead branch which Microsoft
isn't even supporting anymore.

> Index: coda-src/util/proc.cc
>  // This is the NetBSD way to do this.
> +// It should also work on Darwin, but may need some massaging to get at
> +// "internal" and/or "unstable" Apple APIs.  It's not clear how to catch
> +// Darwin; neither __BSD44__ nor __FreeBSD__ is #defined that I can find,
> +// but BSD4_4 is #defined.  Is this function used?

This function is used by code that itself doesn't seem to be used...
so I'm taking it out.

> Index: coda-src/venus/worker.h
> +/* #### Nasty hack, but what's the right thing to do here? */
> +#if defined(__APPLE__) && defined(__MACH__)
> +#define __BSD44__
> +#endif

I guess this is to cover all the places in coda-src/venus where we rely
on #ifdef __BSD44__. Don't like that all that much in the first place.
I guess we could either try to replace those with proper autoconf tests,
or have configure add -D__BSD44__ whenever we're building on a Darwin
platform.

> Index: configs/Makerules
> -	-$(RM) -r include
> +	-$(RM) -r include autom4te.cache

Not sure if this is the right thing to do, but I'll apply it.
Why is the automake cache a problem?

Jan
Received on 2004-08-16 13:12:40