xref: /patch/
Name Date Size

..13-Jul-20204 KiB

.gitignoreH A D13-Aug-2017382

.gitmodulesH A D13-Aug-201775

AUTHORSH A D13-Aug-2017335

bootstrapH A D14-May-202032.8 KiB

bootstrap.confH A D14-May-20202.7 KiB

cfg.mkH A D13-Aug-20171.3 KiB

ChangeLog-2011H A D13-Aug-2017138.9 KiB

configure.acH A D23-Jan-20185.6 KiB

COPYINGH A D13-Aug-201734.3 KiB

gnulib/H13-Aug-20174 KiB

lib/H13-Aug-20174 KiB

m4/H14-May-20204 KiB

Makefile.amH A D03-Feb-20181.6 KiB

NEWSH A D03-Feb-201815.6 KiB

patch.manH A D06-Sep-201733.9 KiB

pc/H13-Aug-20174 KiB

READMEH A D03-Feb-20182.7 KiB

README-alphaH A D13-Aug-2017102

README-hackingH A D13-Aug-20173.5 KiB

src/H14-May-20204 KiB

tests/H23-Dec-20194 KiB

README

1This is GNU patch, which applies diff files to original files.
2
3This version of patch has many changes made by the Free Software Foundation.
4They add support for:
5 * handling arbitrary binary data and large files
6 * the unified context diff format that GNU diff can produce
7 * merging into files instead of creating reject files
8 * making GNU Emacs-style backup files
9 * improved interaction with RCS and SCCS
10 * the GNU conventions for option parsing and configuring and compilation.
11 * better POSIX compliance
12They also fix some bugs.
13
14If you obtained this file as part of a "git clone", then see the
15README-hacking file.  If this file came to you as part of a tar archive,
16then see the file INSTALL for compilation and installation instructions.
17
18See the file NEWS for a list of major changes in the current release.
19A more detailed description of all changes can be found in the file ChangeLog
20in tar archives, and with "git log" which shows the version control history.
21
22Tutorial-style documentation for patch is included in the GNU
23Diffutils package; get GNU Diffutils 2.8 or later for up-to-date
24documentation for patch.
25
26Use `configure --disable-largefile' to disable large file support;
27this is reportedly necessary on Red Hat GNU/Linux 6.0 to avoid a C library bug.
28For MS-DOS using DJGPP tools, see the file pc/djgpp/README.
29For other systems, copy config.hin to config.h and change
30#undef statements in it to #define as appropriate for your system,
31and copy Makefile.in to Makefile and set the variables that are
32enclosed in @ signs as appropriate for your system.
33
34Please send bug reports for this version of patch to
35<bug-patch@gnu.org>.
36
37The Free Software Foundation is distributing this version of patch
38independently because as of this writing, Larry Wall has not released a
39new version of patch since mid-1988.  We have heard that he has been
40too busy working on other things, like Perl.  He has graciously agreed
41to let GNU `patch' be distributed under the terms of the GNU General
42Public License.
43
44------
45
46Copyright (C) 1984, 1985, 1986, 1987, 1988 Larry Wall
47
48Copyright (C) 1989-1993, 1997, 1999, 2002, 2009, 2011-2012 Free Software
49Foundation, Inc.
50
51This program is free software: you can redistribute it and/or modify
52it under the terms of the GNU General Public License as published by
53the Free Software Foundation, either version 3 of the License, or
54(at your option) any later version.
55
56This program is distributed in the hope that it will be useful,
57but WITHOUT ANY WARRANTY; without even the implied warranty of
58MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
59GNU General Public License for more details.
60
61You should have received a copy of the GNU General Public License
62along with this program.  If not, see <http://www.gnu.org/licenses/>.
63

README-alpha

1This is a test release of GNU patch.
2Please send comments and problem reports to <bug-patch@gnu.org>.
3

README-hacking

1-*- outline -*-
2
3These notes intend to help people working on the checked-out sources.
4These requirements do not apply when building from a distribution tarball.
5
6* Requirements
7
8We've opted to keep only the highest-level sources in the GIT repository.
9This eases our maintenance burden, (fewer merges etc.), but imposes more
10requirements on anyone wishing to build from the just-checked-out sources.
11For example, you have to use the latest stable versions of the maintainer
12tools we depend upon, including:
13
14- Automake <http://www.gnu.org/software/automake/>
15- Autoconf <http://www.gnu.org/software/autoconf/>
16- Gettext <http://www.gnu.org/software/gettext/>
17- Gzip <http://www.gnu.org/software/gzip/>
18- M4 <http://www.gnu.org/software/m4/>
19- Tar <http://www.gnu.org/software/tar/>
20- Wget <http://www.gnu.org/software/wget/>
21
22Valgrind <http://valgrind.org/> is also highly recommended, if
23Valgrind supports your architecture.
24
25While building from a just-cloned source tree may require installing a
26few prerequisites, later, a plain `git pull && make' should be sufficient.
27
28* First GIT checkout
29
30You can get a copy of the source repository like this:
31
32        $ git clone git://git.sv.gnu.org/patch
33        $ cd patch
34
35As an optional step, if you already have a copy of the gnulib git
36repository on your hard drive, then you can use it as a reference to
37reduce download time and disk space requirements:
38
39        $ export GNULIB_SRCDIR=/path/to/gnulib
40
41The next step is to get and check other files needed to build,
42which are extracted from other source packages:
43
44        $ ./bootstrap
45
46To use the most-recent gnulib (as opposed to the gnulib version that
47the package last synchronized to), do this next:
48
49        $ git submodule foreach git pull origin master
50        $ git commit -m 'build: update gnulib submodule to latest' gnulib
51
52And there you are!  Just
53
54        $ ./configure --quiet
55        $ make
56        $ make check
57
58At this point, there should be no difference between your local copy,
59and the GIT master copy:
60
61        $ git diff
62
63should output no difference.
64
65Enjoy!
66
67* Submitting patches
68
69If you develop a fix or a new feature, please send it to the
70appropriate bug-reporting address as reported by the --help option of
71each program.  One way to do this is to use vc-dwim
72<http://www.gnu.org/software/vc-dwim/>), as follows.
73
74  Run the command "vc-dwim --help", copy its definition of the
75  "git-changelog-symlink-init" function into your shell, and then run
76  this function at the top-level directory of the package.
77
78  Edit the ChangeLog file that this command creates, creating a
79  properly-formatted entry according to the GNU coding standards
80  <http://www.gnu.org/prep/standards/html_node/Change-Logs.html>.
81
82  Run the command "vc-dwim" and make sure its output looks good.
83
84  Run "vc-dwim --commit".
85
86  Run the command "git format-patch --stdout -1", and email its output
87  in, using the output's subject line.
88
89-----
90
91Copyright (C) 2002-2007, 2009-2012 Free Software Foundation, Inc.
92
93This program is free software: you can redistribute it and/or modify
94it under the terms of the GNU General Public License as published by
95the Free Software Foundation, either version 3 of the License, or
96(at your option) any later version.
97
98This program is distributed in the hope that it will be useful,
99but WITHOUT ANY WARRANTY; without even the implied warranty of
100MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
101GNU General Public License for more details.
102
103You should have received a copy of the GNU General Public License
104along with this program.  If not, see <http://www.gnu.org/licenses/>.
105