[BACK]Return to README CVS log [TXT][DIR] Up to [local] / src / usr.bin / patch

Annotation of src/usr.bin/patch/README, Revision 1.1.1.1

1.1       deraadt     1: this version modified to fit in with the 386bsd release.
                      2: this isn't gnu software, so we're not obligated to give
                      3: you the original sources -- if you want them, get them
                      4: from prep.ai.mit.edu:pub/gnu/patch-2.0.12u8.tar.z
                      5:
                      6:                                        -- cgd
                      7:
                      8: #######################################################################
                      9:
                     10:
                     11: This version of patch contains modifications made by the Free Software
                     12: Foundation, summarized in the file ChangeLog.  Primarily they are to
                     13: support the unified context diff format that GNU diff can produce, and
                     14: to support making GNU Emacs-style backup files.  They also include
                     15: fixes for some bugs.
                     16:
                     17: There are two GNU variants of patch: this one, which retains Larry
                     18: Wall's interactive Configure script and has patchlevels starting with
                     19: `12u'; and another one that has a GNU-style non-interactive configure
                     20: script and accepts long-named options, and has patchlevels starting
                     21: with `12g'.  Unlike the 12g variant, the 12u variant contains no
                     22: copylefted code, for the paranoid.  The two variants are otherwise the
                     23: same.  They should be available from the same places.
                     24:
                     25: The FSF is distributing this version of patch independently because as
                     26: of this writing, Larry Wall has not released a new version of patch
                     27: since mid-1988.  I have heard that he has been too busy working on
                     28: other things, like Perl.
                     29:
                     30: Here is a wish list of some projects to improve patch:
                     31:
                     32: 1.  Correctly handle files and patchfiles that contain NUL characters.
                     33: This is hard to do straightforwardly; it would be less work to
                     34: adopt a kind of escape encoding internally.
                     35: Let ESC be a "control prefix".  ESC @ stands for NUL.  ESC [ stands for ESC.
                     36: You need to crunch this when reading input (replace fgets),
                     37: and when writing the output file (replace fputs),
                     38: but otherwise everything can go along as it does now.
                     39: Be careful to handle reject files correctly;
                     40: I think they are currently created using `write', not `fputs'.
                     41:
                     42: 2.  Correctly handle patches produced by GNU diff for files that do
                     43: not end with a newline.
                     44:
                     45: Please send bug reports for this version of patch to
                     46: bug-gnu-utils@prep.ai.mit.edu as well as to Larry Wall (lwall@netlabs.com).
                     47:  --djm@gnu.ai.mit.edu (David MacKenzie)
                     48:
                     49:                        Patch Kit, Version 2.0
                     50:
                     51:                    Copyright (c) 1988, Larry Wall
                     52:
                     53: You may copy the patch kit in whole or in part as long as you don't try to
                     54: make money off it, or pretend that you wrote it.
                     55: --------------------------------------------------------------------------
                     56:
                     57: Please read all the directions below before you proceed any further, and
                     58: then follow them carefully.  Failure to do so may void your warranty. :-)
                     59:
                     60: After you have unpacked your kit, you should have all the files listed
                     61: in MANIFEST.
                     62:
                     63: Installation
                     64:
                     65: 1)  Run Configure.  This will figure out various things about your system.
                     66:     Some things Configure will figure out for itself, other things it will
                     67:     ask you about.  It will then proceed to make config.h, config.sh, and
                     68:     Makefile.
                     69:
                     70:     You might possibly have to trim # comments from the front of Configure
                     71:     if your sh doesn't handle them, but all other # comments will be taken
                     72:     care of.
                     73:
                     74:     If you don't have sh, you'll have to rip the prototype of config.h out
                     75:     of Configure and generate the defines by hand.
                     76:
                     77: 2)  Glance through config.h to make sure system dependencies are correct.
                     78:     Most of them should have been taken care of by running the
                     79:     Configure script.
                     80:
                     81:     If you have any additional changes to make to the C definitions, they
                     82:     can be done in the Makefile, or in config.h.  Bear in mind that they may
                     83:     get undone next time you run Configure.
                     84:
                     85: 3)  make
                     86:
                     87:     This will attempt to make patch in the current directory.
                     88:
                     89: 4)  make install
                     90:
                     91:     This will put patch into a public directory (normally /usr/local/bin).
                     92:     It will also try to put the man pages in a reasonable place.  It will not
                     93:     nroff the man page, however.
                     94:
                     95: 5)  Read the manual entry before running patch.
                     96:
                     97: 6)  IMPORTANT!  Help save the world!  Communicate any problems and
                     98:     suggested patches to me, lwall@netlabs.com (Larry Wall),
                     99:     so we can keep the world in sync.  If you have a problem, there's
                    100:     someone else out there who either has had or will have the same problem.
                    101:
                    102:     If possible, send in patches such that the patch program will apply them.
                    103:     Context diffs are the best, then normal diffs.  Don't send ed scripts--
                    104:     I've probably changed my copy since the version you have.
                    105:
                    106:     Watch for patch patches in comp.sources.bugs.  Patches will generally be
                    107:     in a form usable by the patch program.  Your current patch level
                    108:     is shown in patchlevel.h.