On Tuesday 05 December 2006 12:05, Han-Wen Nienhuys wrote: > Erik Sandberg escreveu: > > Hi, > > > > I've decided to write a howto for setting up GUB for developing lily, > > mostly because I need to learn how to work efficiently with GUB (too much > > of my dev time is wasted because I use gub in the wrong way). I will put > > the howto on the lilypond wiki; an initial stub is available at: > > http://lilypondwiki.tuxfamily.org/index.php?title=Development_with_GUB > > > > The target audience is people who (like me) are not very familiar with > > git or gub, and want to hack lily. > > > > I think there will be a few steps in the howto: > > 0. set up GUB initially (I don't have to write anything, the gub README > > is sufficient) > > 1. create an alternative git branch master-foo, for developing a new > > feature. 2. set up gub to generate an additional binary lilypond-foo in > > addition to the normal lilypond binary. lilypond-foo is built from the > > lilypond-foo branch, and uses the --enable-debugging and > > --disable-optimisation parameters to ./configure. > > Configure with --enable-config=foo ; this will produce config-foo.make and > output in out-foo/ files
ok, thanks > > 3. everyday development process: modify source, make; test, debug; commit > > locally; make download, git-rebase. > > I'm not sure that this is an easy approach. I mostly do development > (compile + debug) in a normal tree and use GUB for building the website and > output-distance measurements That's what I did previously too; it's however problematic since around 2.11 because lily can't find some fonts (=> line-art PDFs). I have already spent too much of my development time trying to synchronise my system with the build dependencies of lily, and I thought that the final solution to the problem would be to only use GUB for development. AFAIU, git is powerful to do anything you can think of, so it SHOULD be possible to do this practically, shouldn't it? > However target/PLATFORM/src/lilypond-master-foo/ contains a GIT repo, so > you could do development there. I don't like the idea of committing changes to a git repo in target/; IIRC target/ is removed by one of the make *clean commands, and I don't want it to be that easy to kill stuff that I committed locally. > > 4. how to submit changes: git-diff / git-push > > you'll want to use git-show iso. git-diff. ok, thanks -- Erik _______________________________________________ lilypond-devel mailing list lilypond-devel@gnu.org http://lists.gnu.org/mailman/listinfo/lilypond-devel