Ethereal-dev: Re: [ethereal-dev] Targets dependent on proto.h

Note: This archive is from the project's previous web site, ethereal.com. This list is no longer active.

From: Guy Harris <gharris@xxxxxxxxxxxx>
Date: Wed, 12 Apr 2000 10:54:10 -0700
> Checked out source, honest.
> 
> If you could give me a clue as to which file is faulty (differs between
> distribution & CVS), I will fix it.

"Makefile.in" differs, in that it exists in the distribution but does
not exist in CVS (as it's a file generated from source, i.e. from
"Makefile.am").

Perhaps you're using a different version of automake - the version I
have installed here:

  % automake --version
  automake (GNU automake) 1.4

  Copyright (C) 1999 Free Software Foundation, Inc.
  This is free software; see the source for copying conditions.  There is NO
  warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.

  Written by Tom Tromey <tromey@xxxxxxxxxx>

generates, from our "Makefile.am" file, a "Makefile.in" that does not
have any dependencies built in, but, instead, includes rules of the form

	%.o: %.c
	        @echo '$(COMPILE) -c $<'; \
	        $(COMPILE) -Wp,-MD,.deps/$(*F).pp -c $<
	        @-cp .deps/$(*F).pp .deps/$(*F).P; \
	        tr ' ' '\012' < .deps/$(*F).pp \ 
	          | sed -e 's/^\\$$//' -e '/^$$/ d' -e '/:$$/ d' -e 's/$$/ :/' \
	            >> .deps/$(*F).P; \
	        rm .deps/$(*F).pp
          
	%.lo: %.c
	        @echo '$(LTCOMPILE) -c $<'; \
	        $(LTCOMPILE) -Wp,-MD,.deps/$(*F).pp -c $<
	        @-sed -e 's/^\([^:]*\)\.o[      ]*:/\1.lo \1.o :/' \
	          < .deps/$(*F).pp > .deps/$(*F).P; \
	        tr ' ' '\012' < .deps/$(*F).pp \
	          | sed -e 's/^\\$$//' -e '/^$$/ d' -e '/:$$/ d' -e 's/$$/ :/' \
	            >> .deps/$(*F).P; \
	        rm -f .deps/$(*F).pp

or perhaps automake decides, based on a test of your compiler, whether
that will work or not, in which case it may be confused about which
compiler you're using, or may not know the mechanism your particular
compiler uses for generating dependencies (which I'd expect to be the
same as the one my compiler uses, if you're using a GCC-family compiler
- "GCC-family compiler" includes EGCS and the recent versions of GCC
that EGCS became - as I'm using GCC 2.7.2.3 here).