X-Git-Url: https://git.donarmstrong.com/?a=blobdiff_plain;f=PATCHES.txt;h=55e1a71ea74b41882defb681f37b3a9d5e60feb6;hb=refs%2Ftags%2Frelease%2F1.1.64;hp=424a9b233257d6708cd1dc74467a1e0ea2e57840;hpb=c844072722a39a5fcd20372b0497d9130bd41dd7;p=lilypond.git diff --git a/PATCHES.txt b/PATCHES.txt index 424a9b2332..55e1a71ea7 100644 --- a/PATCHES.txt +++ b/PATCHES.txt @@ -1,198 +1,144 @@ - - -PATCHES(1) LilyPond documentation PATCHES(1) - - NAME - PATCHES - track and distribute your code changes + + PATCHES - track and distribute your code changes DESCRIPTION - This page documents how to distribute your changes to GNU - LilyPond + + 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 + We would like to have unified context diffs with full +pathnames. A script automating supplied with Lily. Dis- +tributing a change normally goes like this: + +o make your fix/add your code - o Add changes to NEWS, and add yourself to - Documentation/AUTHORS.pod +o Add changes to NEWS, and add yourself to Documenta- + tion/AUTHORS.yo - o generate a patch, +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 +o e-mail your patch to one of the mailing lists gnu- + music-discuss@gnu.org or bug-gnu-music@gnu.org GENERATING A PATCH - In VERSION, set TOPLEVEL_MY_PATCH_LEVEL: - VERSION: - ... - TOPLEVEL_MY_PATCH_LEVEL = jcn1 + In VERSION, set MY_PATCH_LEVEL: - In NEWS, enter a summary of changes: + VERSION: + ... + MY_PATCH_LEVEL=jcn1 - NEWS: - pl 0.1.48.jcn1 - - added PATCHES.pod +In NEWS, enter a summary of changes: - Then, from the top of Lily's source tree, type + NEWS: + pl 0.1.73.jcn1 + - added PATCHES.yo - make-patch +Then, from the top of Lily's source tree, type - which leaves your patch as ./patch-0.1.48.jcn1. + make dist + make diff - If you didn't configure Lily using --srcdir, you can do: +which rolls the tarball ../releases/lilypond-0.1.73.tar.gz +and leaves your patch as ./lilypond-0.1.73.jcn1.diff. [1] +We assume that there is a tarball lilypond-0.1.73.tar.gz in +the directory ../releases. - release +If you didn't configure Lily using --srcdir, you can do: - tar-ball: ../patches/patch-0.1.48.jcn1.gz - patch: ../patches/patch-0.1.48.jcn1.gz - updeet: ../test/updeet + make release + tar-ball: ../patches/lilypond-0.1.73.jcn1.gz + patch: ../patches/lilypond-0.1.73.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? - - +For creating a patch you need -12/May/98 LilyPond 0.1.63 1 +o All items mentioned in INSTALL. You're not going to + send a patch that you haven't even built, right? +o GNU diff +o Python (version 1.5 or newer). You can of course make + a patch by hand, which would go something like: +----------- +[1] 'Make diff' generates a patch between two tar- +balls. For more info type 'make diff help=='. + make distclean + cd .. + diff -urN lilypond-0.1.73 lilypond-0.1.73.jcn1 > lilypond-0.1.73.jcn1 -PATCHES(1) LilyPond documentation PATCHES(1) + 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: - o GNU Diff + doos/ # gnu/windows32 build and binary releases + harmonia -> harmonia-x.y.z + harmonia-x.y.z/ + lilypond -> lilypond-x.y.z # symlink to development directory + lilypond-x.y.z/ # current development + patches/ # patches between different releases + RedHat/BUILD # RedHat build and binary releases + RedHat/RPMS + RedHat/SPECS + releases/ # .tar.gz releases + test/ # tarballs and diffs from current version + yodl -> yodl-1.30.17 + yodl-1.30.17 - o Python (version 1.4 or newer). You can of course - make a patch by hand, which would go something like: + with prefix $HOME/usr/src and (for building rpms only) + in $HOME/.rpmrc: - make distclean - cd .. - diff -urN lilypond-0.1.48 lilypond-0.1.48.jcn1 > patch-0.1.48.jcn1 + topdir: /home/fred/usr/src/RedHat - but there are handy python scripts available. If - you're doing development, you'll need Python for - other LilyPond scripts anyway. +APPLYING PATCHES - o The Lily directory structure, which looks like: +If you're following LilyPond development regularly, you +probably want to download just the patch for each subsequent +release. After downloading the patch (into the patches +directory, of course), simply apply it: - lilypond-0.1.48/ - patches/ - releases/ - test/ + gzip -dc ../patches/lilypond-0.1.74.diff.gz | patch -p1 -E +and don't forget to make automatically generated files: - If you're following LilyPond development regularly, you - probably want to download just the patch for each - subsequent release. After downloading the patch (into the - patches directory, of course), simply apply it: - - gzip -dc ../patches/patch-0.1.49.gz | patch -p1 -E - - and don't forget to make automatically generated files: - - autoconf 1) - configure + autoconf footnote(patches don't include automatically generated files, + i.e. file(configure) and files generated by file(configure).) + configure SYNCHRONISE - 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 - gzip -dc ../patches/patch-0.1.48.jcn1.gz | patch -p1 -E - autoconf 1) - configure - - Then, make a patch as shown above. - - 1) patches don't include automatically generated files, - i.e. configure - and files generated by configure. - - - -12/May/98 LilyPond 0.1.63 2 +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, 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.74 + gzip -dc ../patches/lilypond-0.1.73.jcn1.diff.gz | patch -p1 -E + autoconf + configure +Then, make a patch as shown above. +SEE ALSO - -PATCHES(1) LilyPond documentation PATCHES(1) - +stepmake/INSTALL.txt MAINTAINER - Han-Wen Nienhuys - - Just keep on sending those patches! - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -12/May/98 LilyPond 0.1.63 3 +Han-Wen Nienhuys +Just keep on sending those patches!