[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: Dependency problem?
From: |
Andrew Moise |
Subject: |
Re: Dependency problem? |
Date: |
Fri, 11 Jul 2003 15:04:41 -0400 |
User-agent: |
Mutt/1.5.4i |
On Fri, Jul 11, 2003 at 02:27:54PM -0400, Larry Jones wrote:
> Andrew Moise writes:
> >
> > So I just noticed that when I apply the context-diff patch that I sent
> > to the list a couple of days ago (which changes a handful of files in
> > diff/), the cvs binary isn't rebuilt until I do 'make clean' or
> > 'rm src/cvs'. Changing a file in src/ (commit.c, at least) _does_
> > result in the executable being rebuilt, of course.
>
> It's always worked fine for me -- are you sure you were running make in
> the top-level directory rather than in the src subdirectory?
Yep.
> The
> Makefile in the src directory should define a cvs_DEPENDENCIES variable
> that includes the ancillary libraries (including the diff library) which
> is then referenced as a dependency for cvs$(EXEEXT), so the binary
> should be rebuilt if it's older than the diff library.
Ah. In that case, I've discovered the problem. From src/Makefile:
cvs$(EXEEXT): $(cvs_OBJECTS) $(cvs_DEPENDENCIES)
(... good ...)
cvs_DEPENDENCIES = $(cvs_client_objects)
(... uh-huh ...)
cvs_client_objects =
(... oh dear.)
Does configure make your Makefile like this, too? A little poking
around in the autoconf stuff enlightened me not at all.
> > (BTW, I can't help but notice the silence which greeted my earlier
> > mail... this is the right list to send patches to, no? Or was that patch
> > so offensive that no one felt the need to comment on it? :-)
>
> Right place, but the diff code is imported from GNU diff, so we usually
> avoid touching it (or even understanding it). Hopefully, the GNU diff
> maintainer (who is known to hang around here) will eventually get around
> to looking at it and have some words of wisdom for us.
That's a sensible approach, yes. The patch I sent is the wrong
thing (TM), since it adds a bit of special-case nonsense to the diff
code, but as I said I don't have a sufficient understanding of the code
to remove the newline-addition hackery, and the current behavior is
definitely problematic.
The problem _is_ specific to cvs; diff is not affected.