


PATCHES(1)            LilyPond documentation           PATCHES(1)


NAME
       PATCHES - track and distribute your code changes

DESCRIPTION
       This page documents how to distribute your changes to GNU
       LilyPond

ABSTRACT
       Distributing a change normally goes like this:

       o    make your fix/add your code

       o    generate a patch,

       o    e-mail your patch to one of the mailing lists gnu-
            music-discuss@gnu.org or bug-gnu-music@gnu.org (or if
            you're a bit shy, to the maintainer).

GENERATING A PATCH
       In VERSION, set TOPLEVEL_MY_PATCH_LEVEL:

           VERSION:
               ...
               TOPLEVEL_MY_PATCH_LEVEL = jcn1

       In NEWS, enter a summary of changes:

           NEWS:
               pl 0.1.48.jcn1
                       - added PATCHES.pod

       Then, from the top of Lily's source tree, type

           make-patch

       which leaves your patch as ./patch-0.1.48.jcn1.

       If you didn't configure Lily using --srcdir, you can do:

           release

           tar-ball: ../patches/patch-0.1.48.jcn1.gz
           patch: ../patches/patch-0.1.48.jcn1.gz
           updeet: ../test/updeet


PREREQUISITES
       For creating a patch you need

       o    All items mentioned in INSTALL.  You're not going to
            send a patch that you haven't even built, right?

       o    GNU Diff




20/Apr/98                LilyPond 0.1.59                        1





PATCHES(1)            LilyPond documentation           PATCHES(1)


       o    Python (version 1.4 or newer).  You can of course
            make a patch by hand, which would go something like:

                make distclean
                cd ..
                diff -urN lilypond-0.1.48 lilypond-0.1.48.jcn1 > patch-0.1.48.jcn1

            but there are handy python scripts available.  If
            you're doing development, you'll need Python for
            other LilyPond scripts anyway.

       o    The Lily directory structure, which looks like:

                lilypond-0.1.48/
                patches/
                releases/
                test/


       If you're not very quick with sending your patch, there's
       a good chance that an new release of LilyPond comes
       available.  In such a case (and sometimes for other unkown
       reasons :-), the maintainer will probably ask you to make
       a new patch against the latest release.  Your best bet is
       to download the latest release, and apply your patch
       against this new source tree:

           cd lilypond-0.1.49
           zpatch -p0 -E < ../patches/patch-0.1.48.jcn1.gz

       Then, make a patch as shown above.

MAINTAINER
       Han-Wen Nienhuys <hanwen@cs.ruu.nl>

       Just keep on sending those patches!





















20/Apr/98                LilyPond 0.1.59                        2


