lilypond-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: writing a 'development with gub' howto


From: Erik Sandberg
Subject: Re: writing a 'development with gub' howto
Date: Tue, 5 Dec 2006 17:23:10 +0100
User-agent: KMail/1.9.5

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




reply via email to

[Prev in Thread] Current Thread [Next in Thread]