Skip site navigation (1)Skip section navigation (2)
Date:      Wed, 17 Oct 2001 15:02:24 -0700
From:      "Crist J. Clark" <cristjc@earthlink.net>
To:        Micke Josefsson <mj@isy.liu.se>
Cc:        freebsd-questions@FreeBSD.ORG
Subject:   Re: Recursive diff? How?
Message-ID:  <20011017150223.A373@blossom.cjclark.org>
In-Reply-To: <XFMail.20011017105859.mj@isy.liu.se>; from mj@isy.liu.se on Wed, Oct 17, 2001 at 10:58:59AM %2B0200
References:  <20011016234237.B6985@blossom.cjclark.org> <XFMail.20011017105859.mj@isy.liu.se>

next in thread | previous in thread | raw e-mail | index | archive | help
On Wed, Oct 17, 2001 at 10:58:59AM +0200, Micke Josefsson wrote:
> 
> On 17-Oct-2001 Crist J. Clark wrote:
> > On Wed, Oct 17, 2001 at 07:57:24AM +0200, Micke Josefsson wrote:
> >> In my attempt to port uClinux development environment to FreeBSD I have
> >> edited
> >> many files down the uClinux source directory. Is there anyway of doing a
> >> recursive diff so that it would also be easy to patch a newly installed
> >> source?
> >> 
> >> diff -r seems ok, but when I patch with the result it wants me to specify the
> >> exact filenames. Is there a better way? CVS?
> > 
> > The 'diff -r' should handle this fine. Are you running the 'diff -r'
> > in the same relative location to where you are running the 'patch'
> > command or using the -p option correctly? Are your running the diff(1)
> > command someplace where you have different directory name in between
> > the pwd and the source files than on the machine you run patch(1)?
> 
> 
> Thanks for bothering with this but I just can't seem to get it right.
> 
> Lets get down to cases (I've tried every combination I can think of:).
> 
> in my ~/tmp I have two source trees. One original and one modified:
> 
>         src src.orig
> 
> I make a diff as per man page of diff:
> 
>         diff -crN src.orig src > src.diff
> 
> How do I apply that src.diff onto the 'real' original sources at
> /opt/uClinux/src?
> 
> A simple 'cd /opt/uClinux; patch < src.diff' wont do it. Nor any combination of
> -p[1-7].
> 
> 
> 
> I have also tried going down into /opt/uClinux/src etc to no avail.

I would expect if the 'src.orig' and 'src' trees are structured like
'/opt/uClinux/src', that,

  $ cd /opt/uClinux
  $ patch < src.diff

Should work.

What does the prompting from patch(1) look like? What does the top of
one of the diff's look like; the first two lines with the pathnames?
How does it compare to the file structure as seen from
/opt/uClinux/src.
-- 
Crist J. Clark                     |     cjclark@alum.mit.edu
                                   |     cjclark@jhu.edu
http://people.freebsd.org/~cjc/    |     cjc@freebsd.org

To Unsubscribe: send mail to majordomo@FreeBSD.org
with "unsubscribe freebsd-questions" in the body of the message




Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20011017150223.A373>