Hi,
On Sun, Apr 18, 1999 at 00:08 -0400, dizzy73 wrote:
> Im having a hell of a time applying a color patch for pine.
> Ive managed to ./build lnx a fresh version of pine4.02 so I could have the
> source to apply against. I was able to apply the suse .dif patch but the
> color dosnt to want to take
[...]
> I take it I should apply the color patch *before* ./building lnx ?
Usually one would apply patches before building. But in this
case you should build pine once, then apply the patch and build
again (this is btw. described on website you mentioned).
Otherwise patch will complain about missing files.
> the patch I have came from http://www.softwolves.pp.se/pine.shtml
> and there is a little how to apply the patch at the bottom of the page
> any Ideas..? Ive tried to apply the patch in just about every conceivable
> format. Im really appoaching insanity (err ummm high FUN status with this
> one)
Have a look at the patch file. The first two lines look like
--- mailcmd.c.orig Thu Jul 9 15:54:17 1998
+++ mailcmd.c Thu Jul 9 15:59:23 1998
This means the file mailcmd.c will be copied to mailcmd.c.orig
and then be patched. Because there is no path given (nothing
like pine/mailcmd.c), mailcmd.c is searched for in the current
directory. So all you have to do is find the dir with that file
(should be pine4.xx/pine), cd to it and start patch like this:
patch -p0 </path/to/the/patch/file/pine4-colour.patch
The -p0 option tells patch not to touch the path given in the
patch file.
Lets assume you had the pine source in /tmp/pine4.10 and a patch
file that starts like
--- pine4.05/pine/mailcmd.c.orig Thu Jul 9 15:54:17 1998
+++ pine4.05/pine/mailcmd.c Thu Jul 9 15:59:23 1998
If cd'd to /tmp and invoked patch like
patch -p0 </path/to/the/patch/file/pine4-colour.patch
it would search the current directory for the file
pine4.05/pine/mailcmd.c. But it wouldn't find anything because
mailcmd.c resides in /tmp/pine4.10/pine.
How could you fix this? The first option would be to rename
/tmp/pine4.10 to /tmp/pine4.05. The second (and IMHO better) one
would be to cd to /tmp/pine4.10 and invoke patch like this
patch -p1 </path/to/the/patch/file/pine4-colour.patch
Now -p1 makes patch strip the first directory of
pine4.05/pine/mailcmd.c. So it will look for pine/mailcmd.c,
find it and apply the patch.
A -p2 would strip the first two directories (pine4.05/pine) and
look for mailcmd.c and so on (you guessed it, you would have to
be in /tmp/pine4.10/pine then).
Hope this helped a little. Btw. after patching you should do a
find -name \*.rej
If this finds anything, not all patches could be applied.
Ciao,
Stefan
--
To get out of this list, please send email to [EMAIL PROTECTED] with
this text in its body: unsubscribe suse-linux-e
Check out the SuSE-FAQ at http://www.suse.com/Support/Doku/FAQ/ and the
archive at http://www.suse.com/Mailinglists/suse-linux-e/index.html