lilypond-devel
[Top][All Lists]

## Re: GOP-PROP 5: build system output (probable 2?)

 From: Reinhold Kainhofer Subject: Re: GOP-PROP 5: build system output (probable 2?) Date: Fri, 29 Jul 2011 12:30:24 +0200 User-agent: KMail/1.13.6 (Linux/2.6.38-11-generic; KDE/4.6.5; i686; ; )

```Am Donnerstag 28 Juli 2011, 08:25:25 schrieb Jan Nieuwenhuizen:
> Graham Percival writes:
> > You mean, like
> >
> >   23cdda9506931d5b9a1e75ee8be8b74f9084a7c0
> >
> > ?
>
> Yes (I would have called the option --log).
>
> > I'd call it 20% rather than 90%, but yes, Phil's work on
> > lilypond-book will certainly be valuable!
>
> Assuming that --redirect-lilypond-output is used during build now, you
> mention 500,000 and 370,000 lines of output for make doc.  Am I assuming
> correctly that currently make doc prints 130,000 lines?  Which programs
> are responsible for that?

Currently, the doc build is calling lilypond in verbose mode, creating
thousands of unnecessary lines like

[/home/reinhold/lilypond/out/share/lilypond/current/ly/init.ly
[/home/reinhold/lilypond/out/share/lilypond/current/ly/declarations-init.ly
[/home/reinhold/lilypond/out/share/lilypond/current/ly/music-functions-
init.ly]
[/home/reinhold/lilypond/out/share/lilypond/current/ly/toc-init.ly]
Using `nederlands' note names...
[/home/reinhold/lilypond/out/share/lilypond/current/ly/drumpitch-init.ly]
[/home/reinhold/lilypond/out/share/lilypond/current/ly/chord-modifiers-
init.ly]
[/home/reinhold/lilypond/out/share/lilypond/current/ly/script-init.ly]
[/home/reinhold/lilypond/out/share/lilypond/current/ly/chord-repetition-
init.ly]
[/home/reinhold/lilypond/out/share/lilypond/current/ly/scale-definitions-
init.ly]
[/home/reinhold/lilypond/out/share/lilypond/current/ly/dynamic-scripts-
init.ly]
[/home/reinhold/lilypond/out/share/lilypond/current/ly/spanners-init.ly]
[/home/reinhold/lilypond/out/share/lilypond/current/ly/predefined-fretboards-
init.ly]
[/home/reinhold/lilypond/out/share/lilypond/current/ly/string-tunings-
init.ly
Using `nederlands' note names...
[<string>]
[<string>]
[<string>]
[<string>]
[<string>]
[<string>]
[<string>]
[<string>]
[<string>]
[<string>]
[<string>]
[<string>]
[<string>]
[<string>]
[<string>]
[<string>]
[<string>]

As a very simple solution, a first step would be not to run lilypond in verbose
mode. You only need that debug output if a problem occurs. And then you
normally want to see where the problem is, not so much what lilypond does
internally. Once you know where the problem lies, you usually investigate just
this one problematic file. So providing full debug output for the slim chance
that there is some nasty error in the lilypond binary sounds like overkill.

On the other hand, this way all warnings are buried inside thousands of debug
output lines.

The other thing is that all commands called by make are echoed on the console,
always including several lines of include pathes.  While this might sound
useful, in fact it isn't because the exact command does not help you. make
seems to set some env variables, too, so exactly duplicating the command
called in make does not work. In particular, the Python includes cannot be
found.
I encountered this when trying to debug musicxml support in lilypond book:
calling lilypond-book exactly as printed by make does NOT find lilylib!

And most of the other output comes from lilypond-book.

> > I don't agree.  Log files are cheap; I think we should always
> > write the logfiles

They might be cheap, unless you are running backups on the lilypond tree...

Cheers,
Reinhold
--
------------------------------------------------------------------
Reinhold Kainhofer, Vienna University of Technology, Austria