]> git.donarmstrong.com Git - lilypond.git/blob - PATCHES.txt
release: 0.1.57
[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 distclean  # if you don't use --srcdir configure
41            make-patch
42
43        which leaves your patch as ./patch-0.1.48.jcn1.
44
45        If you didn't configure Lily using --srcdir, you can do:
46
47            release
48
49            tar-ball: ../patches/patch-0.1.48.jcn1.gz
50            patch: ../patches/patch-0.1.48.jcn1.gz
51            updeet: ../test/updeet
52
53
54 PREREQUISITES
55        For creating a patch you need
56
57        o    All items mentioned in INSTALL.  You're not going to
58             send a patch that you haven't even built, right?
59
60
61
62
63
64 2/Apr/98                 LilyPond 0.1.57                        1
65
66
67
68
69
70 PATCHES(1)            LilyPond documentation           PATCHES(1)
71
72
73        o    GNU Diff
74
75        o    Python (version 1.4 or newer).  You can of course
76             make a patch by hand, which would go something like:
77
78                 make distclean
79                 cd ..
80                 diff -urN lilypond-0.1.48 lilypond-0.1.48.jcn1 > patch-0.1.48.jcn1
81
82             but there are handy python scripts available.  If
83             you're doing development, you'll need Python for
84             other LilyPond scripts anyway.
85
86        o    The Lily directory structure, which looks like:
87
88                 lilypond-0.1.48/
89                 patches/
90                 releases/
91                 test/
92
93
94        If you're not very quick with sending your patch, there's
95        a good chance that an new release of LilyPond comes
96        available.  In such a case (and sometimes for other unkown
97        reasons :-), the maintainer will probably ask you to make
98        a new patch against the latest release.  Your best bet is
99        to download the latest release, and apply your patch
100        against this new source tree:
101
102            cd lilypond-0.1.49
103            zpatch -p0 -E < ../patches/patch-0.1.48.jcn1.gz
104
105        Then, make a patch as shown above.
106
107 MAINTAINER
108        Han-Wen Nienhuys <hanwen@cs.ruu.nl>
109
110        Just keep on sending those patches!  =head1 NAME
111
112        PATCHES - track and distribute your code changes
113
114 DESCRIPTION
115        This page documents how to distribute your changes to GNU
116        LilyPond
117
118 ABSTRACT
119        Distributing a change normally goes like this:
120
121        o    make your fix/add your code
122
123        o    generate a patch,
124
125        o    e-mail your patch to one of the mailing lists gnu-
126             music-discuss@gnu.org or bug-gnu-music@gnu.org (or if
127
128
129
130 2/Apr/98                 LilyPond 0.1.57                        2
131
132
133
134
135
136 PATCHES(1)            LilyPond documentation           PATCHES(1)
137
138
139             you're a bit shy, to the maintainer).
140
141 GENERATING A PATCH
142        In VERSION, set TOPLEVEL_MY_PATCH_LEVEL:
143
144            VERSION:
145                ...
146                TOPLEVEL_MY_PATCH_LEVEL = jcn1
147
148        In NEWS, enter a summary of changes:
149
150            NEWS:
151                pl 0.1.48.jcn1
152                        - added PATCHES.pod
153
154        Then, type something like
155
156            make-dist
157            mv out/lilypond-0.1.48.jcn1.tar.gz ../releases
158            make-patch
159
160        which leaves your patch as ./patch-0.1.48.jcn1.
161
162        or even simpler:
163
164            release
165
166            tar-ball: ../patches/patch-0.1.48.jcn1.gz
167            patch: ../patches/patch-0.1.48.jcn1.gz
168            updeet: ../test/updeet
169
170
171 PREREQUISITES
172        For creating a patch you need
173
174        o    All items mentioned in INSTALL.  You're not going to
175             send a patch that you haven't even built, right?
176
177        o    GNU Diff
178
179        o    Python (version 1.4 or newer).  You can of course
180             make a patch by hand, which would go something like:
181
182                 make distclean
183                 cd ..
184                 diff -urN lilypond-0.1.48 lilypond-0.1.48.jcn1 > patch-0.1.48.jcn1
185
186             but there are handy python scripts available.  If
187             you're doing development, you'll need Python for
188             other LilyPond scripts anyway.
189
190        o    The Lily directory structure, which looks like:
191
192
193
194
195
196 2/Apr/98                 LilyPond 0.1.57                        3
197
198
199
200
201
202 PATCHES(1)            LilyPond documentation           PATCHES(1)
203
204
205                 lilypond-0.1.48/
206                 patches/
207                 releases/
208                 test/
209
210
211        If you're not very quick with sending your patch, there's
212        a good chance that an new release of LilyPond comes
213        available.  In such a case (and sometimes for other unkown
214        reasons :-), the maintainer will probably ask you to make
215        a new patch against the latest release.  Your best bet is
216        to download the latest release, and apply your patch
217        against this new source tree:
218
219            cd lilypond-0.1.49
220            zpatch -p0 -E < ../patches/patch-0.1.48.jcn1.gz
221
222        Then, make a patch as shown above.
223
224 MAINTAINER
225        Han-Wen Nienhuys <hanwen@cs.ruu.nl>
226
227        Just keep on sending those patches!
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262 2/Apr/98                 LilyPond 0.1.57                        4
263
264