]> git.donarmstrong.com Git - lilypond.git/blob - PATCHES.txt
70d234cbd706774963c572326b064e43eb7efe46
[lilypond.git] / PATCHES.txt
1
2
3
4 PATCHES(1)            LilyPond documentation           PATCHES(1)
5
6
7 NAME
8        PATCHES - track and distribute your code changes
9
10 DESCRIPTION
11        This page documents how to distribute your changes to GNU
12        LilyPond
13
14 ABSTRACT
15        Distributing a change normally goes like this:
16
17        o    make your fix/add your code
18
19        o    generate a patch,
20
21        o    e-mail your patch to one of the mailing lists gnu-
22             music-discuss@gnu.org or bug-gnu-music@gnu.org (or if
23             you're a bit shy, to the maintainer).
24
25 GENERATING A PATCH
26        In VERSION, set TOPLEVEL_MY_PATCH_LEVEL:
27
28            VERSION:
29                ...
30                TOPLEVEL_MY_PATCH_LEVEL = jcn1
31
32        In NEWS, enter a summary of changes:
33
34            NEWS:
35                pl 0.1.48.jcn1
36                        - added PATCHES.pod
37
38        Then, from the top of Lily's source tree, type
39
40            make-patch
41
42        which leaves your patch as ./patch-0.1.48.jcn1.
43
44        If you didn't configure Lily using --srcdir, you can do:
45
46            release
47
48            tar-ball: ../patches/patch-0.1.48.jcn1.gz
49            patch: ../patches/patch-0.1.48.jcn1.gz
50            updeet: ../test/updeet
51
52
53 PREREQUISITES
54        For creating a patch you need
55
56        o    All items mentioned in INSTALL.  You're not going to
57             send a patch that you haven't even built, right?
58
59        o    GNU Diff
60
61
62
63
64 28/Apr/98                LilyPond 0.1.60                        1
65
66
67
68
69
70 PATCHES(1)            LilyPond documentation           PATCHES(1)
71
72
73        o    Python (version 1.4 or newer).  You can of course
74             make a patch by hand, which would go something like:
75
76                 make distclean
77                 cd ..
78                 diff -urN lilypond-0.1.48 lilypond-0.1.48.jcn1 > patch-0.1.48.jcn1
79
80             but there are handy python scripts available.  If
81             you're doing development, you'll need Python for
82             other LilyPond scripts anyway.
83
84        o    The Lily directory structure, which looks like:
85
86                 lilypond-0.1.48/
87                 patches/
88                 releases/
89                 test/
90
91
92        If you're following LilyPond development regularly, you
93        probably want to download just the patch for each
94        subsequent release.  After downloading the patch (into the
95        patches directory, of course), simply apply it:
96
97            gzip -dc ../patches/patch-0.1.49.gz | patch -p1 -E
98
99        and don't forget to make automatically generated files:
100
101            autoconf 1)
102            configure
103
104
105 SYNCHRONISE
106        If you're not very quick with sending your patch, there's
107        a good chance that an new release of LilyPond comes
108        available.  In such a case (and sometimes for other unkown
109        reasons :-), the maintainer will probably ask you to make
110        a new patch against the latest release.  Your best bet is
111        to download the latest release, and apply your patch
112        against this new source tree:
113
114            cd lilypond-0.1.49
115            gzip -dc ../patches/patch-0.1.48.jcn1.gz | patch -p1 -E
116            autoconf 1)
117            configure
118
119        Then, make a patch as shown above.
120
121        1) patches don't include automatically generated files,
122        i.e. configure
123           and files generated by configure.
124
125 MAINTAINER
126        Han-Wen Nienhuys <hanwen@cs.ruu.nl>
127
128
129
130 28/Apr/98                LilyPond 0.1.60                        2
131
132
133
134
135
136 PATCHES(1)            LilyPond documentation           PATCHES(1)
137
138
139        Just keep on sending those patches!
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196 28/Apr/98                LilyPond 0.1.60                        3
197
198